Схема заполнения характеристик умного дома
action.devices.traits.Fill — эта черта применяется к устройствам, поддерживающим наполнение, например к ваннам.
АТРИБУТЫ УСТРОЙСТВА
Устройства с этой характеристикой могут сообщать следующие атрибуты в рамках операции SYNC . Подробнее об обработке намерений SYNC см. в разделе «Выполнение намерений» .
| Атрибуты | Тип | Описание |
|---|---|---|
availableFillLevels | Объект | Описывает различные уровни наполнения устройства. |
levels | Множество | Необходимый. Список названий уровней и синонимов, специфичных для конкретного языка. |
[ item, ... ] | Объект | Название уровня и его синонимы, специфичные для конкретного языка. |
level_name | Нить | Необходимый. Внутреннее название уровня. Оно может быть неудобным для пользователя и будет использоваться на всех языках. |
level_values | Множество | Необходимый. Синонимы уровня на каждом поддерживаемом языке. |
[ item, ... ] | Объект | Синонимы уровня на заданном языке. Для обеспечения резервного языка требуется хотя бы один элемент со значением |
level_synonym | Множество | Необходимый. Синоним уровня. Первая строка в этом списке используется как каноническое название уровня на данном языке. |
[ item, ... ] | Нить | Имя-синоним. Для обеспечения резервного языка требуется хотя бы один элемент со |
lang | Нить | Необходимый. Код языка (ISO 639-1). См. поддерживаемые языки . |
ordered | Булевое значение | Необходимый. Если значение true, устройство обрабатывает дополнительную грамматику для логики увеличения или уменьшения, представленной массивом |
supportsFillPercent | Булевое значение | (По умолчанию: Если true, принимать команды для регулировки уровня в процентах. |
Примеры
Устройство с базовыми возможностями наполнения или слива, не поддерживающее дискретные уровни наполнения.
{}Устройство, поддерживающее дискретные уровни заполнения.
{
"availableFillLevels": {
"levels": [
{
"level_name": "half_level",
"level_values": [
{
"level_synonym": [
"Half",
"Half way",
"One half"
],
"lang": "en"
}
]
},
{
"level_name": "full_level",
"level_values": [
{
"level_synonym": [
"Full",
"All the way",
"Complete"
],
"lang": "en"
}
]
}
],
"ordered": true
}
}СОСТОЯНИЯ УСТРОЙСТВА
Сущности с этой характеристикой могут сообщать о следующих состояниях в рамках операции QUERY . Подробнее об обработке намерений QUERY см. в разделе Выполнение намерений .
| Штаты | Тип | Описание |
|---|---|---|
isFilled | Булевое значение | Необходимый. True, если устройство заполнено до любого уровня. False, если устройство полностью опустошено. |
currentFillLevel | Нить | Обязательно, если задан атрибут |
currentFillPercent | Число | Обязательно, если задан атрибут |
Примеры
Ванна наполнена?
{
"isFilled": true
}Наполнена ли ванна? (с уровнями).
{
"isFilled": true,
"currentFillLevel": "half_level"
}КОМАНДЫ устройства
Устройства с этой функцией могут реагировать на следующие команды в рамках операции EXECUTE . Подробнее об обработке намерений EXECUTE см. в разделе «Выполнение намерений» .
action.devices.commands.Fill
Заполните или слейте воду из устройства.
Параметры
| Параметры | Тип | Описание |
|---|---|---|
fill | Булевое значение | Необходимый. True для заполнения, false для слива. |
fillLevel | Нить | Указывает |
fillPercent | Число | Указывает запрошенный процент уровня. |
Примеры
Наполните ванну.
{
"command": "action.devices.commands.Fill",
"params": {
"fill": true
}
}Слейте воду из ванны.
{
"command": "action.devices.commands.Fill",
"params": {
"fill": false
}
}Наполните ванну наполовину.
{
"command": "action.devices.commands.Fill",
"params": {
"fill": true,
"fillLevel": "half_level"
}
} Увеличьте уровень наполнения ванны на единицу (требуется, чтобы ordered атрибут имел значение true ).
{
"command": "action.devices.commands.Fill",
"params": {
"fill": true,
"fillLevel": "full_level"
}
}