Toggle
devices.capabilities.toggle
Управление параметрами устройства, которые могут находиться только в одном из двух состояний. Например, кнопки, тумблеры и подобные им элементы управления, которые включают или выключают какую-либо дополнительную функцию устройства.
Общие голосовые команды
Алиса, включи ионизатор на увлажнителе.
Алиса, выключи звук на телеке.
Алиса, включи подсветку чайника.
Описание умения
Структура используется в ответе операции Информация об устройствах пользователя.
Параметры умения
Параметр | Тип | Описание | Обязательный |
---|---|---|---|
type | String | Тип умения. | Да |
retrievable | Boolean | Доступен ли для данного умения устройства запрос состояния. Допустимые значения:
| Нет |
reportable | Boolean | Признак включенного оповещения об изменении состояния умения при помощи сервиса уведомлений. Допустимые значения:
| Нет |
parameters | Object | Объект parameters . | Да |
Объект parameters | |||
instance | String | Название функции для данного умения. Допустимые значения можно посмотреть в разделе Список функций. | Да |
Параметр | Тип | Описание | Обязательный |
---|---|---|---|
type | String | Тип умения. | Да |
retrievable | Boolean | Доступен ли для данного умения устройства запрос состояния. Допустимые значения:
| Нет |
reportable | Boolean | Признак включенного оповещения об изменении состояния умения при помощи сервиса уведомлений. Допустимые значения:
| Нет |
parameters | Object | Объект parameters . | Да |
Объект parameters | |||
instance | String | Название функции для данного умения. Допустимые значения можно посмотреть в разделе Список функций. | Да |
Пример использования
Платформа умного дома отправляет провайдеру запрос на получение информации об устройствах пользователя. Провайдер в ответ передает информацию о том, что у пользователя есть увлажнитель с ионизатором.
curl -i -X GET 'https://example.com/v1.0/user/devices' \ -H 'Authorization: Bearer 123qwe456a...' \ -H 'X-Request-Id: ff36a3cc-ec...'
Скопировано
HTTP/1.1 200 OK { "request_id": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "user_id": "user-001", "devices": [ { "id": "humidifier-001-xdh", "name": "увлажнитель", "description": "умный увлажнитель xdh", "room": "спальня", "type": "devices.types.humidifier", "custom_data": { "api_location": "rus" }, "capabilities": [ { "type": "devices.capabilities.toggle" "retrievable": true, "reportable": false, "parameters": { "instance": "ionization" } } ], "device_info": { "manufacturer": "Provider-01", "model": "xdh 1", "hw_version": "1.2", "sw_version": "5.4" } } ] } }
Скопировано
Текущее состояние умения
Структура используется в ответе операции Информация о состояниях устройств пользователя и в теле запроса операции Уведомление об изменении состояний устройств.
Параметры умения
Параметр | Тип | Описание | Обязательный |
---|---|---|---|
type | String | Тип умения. | Да |
state | Object | Параметры состояния умения. | Да |
Объект state | |||
instance | String | Название функции для данного умения. Допустимые значения можно посмотреть в разделе Список функций. | Да |
value | Boolean | Значение функции для данного умения. Допустимые значения:
| Да |
Параметр | Тип | Описание | Обязательный |
---|---|---|---|
type | String | Тип умения. | Да |
state | Object | Параметры состояния умения. | Да |
Объект state | |||
instance | String | Название функции для данного умения. Допустимые значения можно посмотреть в разделе Список функций. | Да |
value | Boolean | Значение функции для данного умения. Допустимые значения:
| Да |
Пример использования
Платформа умного дома отправляет провайдеру запрос о состоянии устройств пользователя. Провайдер в ответ передает информацию о состоянии устройств пользователя.
curl -i -X POST 'https://example.com/v1.0/user/devices/query' \ -H 'Authorization: Bearer 123qwe456a...' \ -H 'X-Request-Id: ff36a3cc-ec...' \ -H 'Content-Type: application/json' \ -d '{ "devices": [ { "id": "humidifier-001-xdh", "custom_data": { "api_location": "rus" } } ] }'
Скопировано
HTTP/1.1 200 OK { "request_id": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "devices": [ { "id": "humidifier-001-xdh", "capabilities": [ { "type": "devices.capabilities.toggle", "state": { "instance": "ionization", "value": true } } ] } ] } }
Скопировано
Изменение состояния умения у устройства
Структура используется в ответе операции Изменение состояния у устройств.
Параметры умения
Параметр | Тип | Описание | Обязательный |
---|---|---|---|
type | String | Тип умения. | Да |
state | Object | Объект, который описывает результат изменения состояния умения. | Да |
Объект state | |||
instance | String | Название функции для данного умения. Допустимые значения можно посмотреть в разделе Список функций. | Да |
action_result | Object | Результат изменения состояния умения устройства. | Нет |
Объект action_result | |||
status | String | Статус изменения состояния умения устройства. Допустимые значения:
| Да |
error_code | String | Код возможной ошибки из списка ошибок. Если status:"ERROR" , параметр является обязательным. | Нет |
error_message | String | Расширенное человекочитаемое описание возможной ошибки. Отображается только в разделе Тестирование в консоли разработчика. | Нет |
Параметр | Тип | Описание | Обязательный |
---|---|---|---|
type | String | Тип умения. | Да |
state | Object | Объект, который описывает результат изменения состояния умения. | Да |
Объект state | |||
instance | String | Название функции для данного умения. Допустимые значения можно посмотреть в разделе Список функций. | Да |
action_result | Object | Результат изменения состояния умения устройства. | Нет |
Объект action_result | |||
status | String | Статус изменения состояния умения устройства. Допустимые значения:
| Да |
error_code | String | Код возможной ошибки из списка ошибок. Если status:"ERROR" , параметр является обязательным. | Нет |
error_message | String | Расширенное человекочитаемое описание возможной ошибки. Отображается только в разделе Тестирование в консоли разработчика. | Нет |
Пример использования
Платформа умного дома отправляет провайдеру запрос на изменение состояния у устройств пользователя. Провайдер в ответ передает результат изменения состояния у устройств пользователя.
curl -i -X POST 'https://endpoint_url/v1.0/user/devices/action' \ -H 'Authorization: Bearer 123qwe456a...' \ -H 'X-Request-Id: ff36a3cc-ec...' \ -H 'Content-Type: application/json' \ -d '{ "payload": { "devices": [{ "id": "humidifier-001-xdh", "custom_data": { "api_location": "rus" }, "capabilities": [{ "type": "devices.capabilities.toggle", "state": { "instance": "ionization", "value": false } }] }] } }'
Скопировано
HTTP/1.1 200 OK { "request_id": "ff36a3cc-ec34-11e6-b1a0-64510650abcf", "payload": { "devices": [ { "id": "humidifier-001-xdh", "capabilities": [ { "type": "devices.capabilities.toggle", "state": { "instance": "ionization", "action_result": { "status": "DONE" } } } ] } ] } }
Скопировано