curtain
Curtains.
Available device functions
The device can have all the functions listed below or some of them. E.g. if the device cannot be opened at the set percentage, there is no need in including the open_percentage
function in its model description.
The device has mandatory functions: online
, open_state
. In addition, the opening method must be described: open_set
, open_percentage
, or both.
When using open_set
and open_percentage
simultaneously, the following rule must be complied with:
- If
open_percentage
is not equal to zero, thenopen_set
must take theopen
value. And, vice versa, if the value ofopen_set
isopen
,open_percentage
must be more than zero. - If
open_percentage
is equal to zero, thenopen_set
must take theclose
value. And, vice versa, if the value ofopen_set
isclose
,open_percentage
must be equal to zero.
When changing the values of the open_left_state
, open_left_percentage
, open_right_state
, open_right_percentage
functions, those of the open_state
, open_percentage
functions must change respectively.
Function | Mandatory? | Description |
battery_low_power | Battery low or not | |
battery_percentage | Batter charge level | |
online | ✔︎ | Device availability: offline or online |
open_left_percentage | Device's left side opening, in percent | |
open_left_set | Device's left side opening | |
open_left_state | Device's left side opening status | |
open_percentage | ✔︎* | Device opening, in percent. For the device, the opening method must be described: open_percentage , open_set , or both |
open_rate | Device opening speed | |
open_right_percentage | Device's right side opening, in percent | |
open_right_set | Device's right side opening status | |
open_right_state | Device's right side opening | |
open_set | ✔︎* | Device opening. For the device, the opening method must be described: open_set , open_percentage , or both |
open_state | ✔︎ | Device opening status |
signal_strength | Signal strength |
Curtains model description example
The model shall be described in accordance with the model structure. The example describes curtains equipped with all functions except for the ability to be opened at a set percentage.
Besides, allowed values for the open_rate
function (device opening speed) of the model are changed: it can be opened at only three speeds; the medium
speed is not supported and therefore deleted.
{
"id": "QWERTY124",
"manufacturer": "Xiaqara",
"model": "SM1123456789",
"hw_version": "3.1",
"sw_version": "5.6",
"description": "Smart curtains Xiaqara",
"category": "curtain",
"features": [
"battery_low_power",
"battery_percentage",
"online",
"open_left_percentage",
"open_rate",
"open_right_percentage",
"open_right_set",
"open_right_state",
"open_set",
"open_state",
"signal_strength"
],
"allowed_values": {
"open_rate": {
"type": "ENUM",
"enum_values": {
"values": [
"auto",
"low",
"high"
]
}
}
}
}
User's curtains description example
The device shall be describe in accordance with the device structure. The example contains no curtains model description as we believe that models are described independently and the model ID will be enough (in this case, QWERTY124).
{
"id": "ABCD_004",
"name": "My curtains",
"default_name": "Smart curtains",
"nicknames": ["Clever curtains", "Manageable curtains"],
"home": "My home",
"room": "Living room",
"groups": ["Sun", "Shadow curtains"],
"model_id": "QWERTY124",
"hw_version": "3.1",
"sw_version": "5.6",
"partner_meta": {
"internal-id": 1234,
"specificity": "microchip 2A"
},
}