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_percentageis not equal to zero, thenopen_setmust take theopenvalue. And, vice versa, if the value ofopen_setisopen,open_percentagemust be more than zero. - If
open_percentageis equal to zero, thenopen_setmust take theclosevalue. And, vice versa, if the value ofopen_setisclose,open_percentagemust 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_rate | Device opening speed | |
| open_right_percentage | Device's right side opening, in percent | |
| open_right_set | ||
| open_right_state | Device's right side opening status | |
| open_set | ✔︎* | Device opening. For the device, the opening method must be described: |
| 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"
},
}