Руководство по выбору «умного» домашнего дымового извещателя
action.devices.types.SMOKE_DETECTOR - Детекторы дыма могут сообщать, обнаружен ли в данный момент дым, высок ли уровень дыма и текущий уровень дыма в частях на миллион.
Этот тип указывает на то, что устройство получает значок дымового извещателя, а также некоторые связанные с ним синонимы и псевдонимы.
Возможности устройства
Для получения подробной информации о реализации, такой как атрибуты и состояния, которые должна поддерживать ваша служба, а также о том, как формировать ответы EXECUTE и QUERY, обратитесь к соответствующей документации по трейту.
Необходимые характеристики
Эти параметры и команды необходимы, если они применимы к вашему устройству. Если ваше устройство не поддерживает эти параметры, введите код ошибки functionNotSupported в ответ на запрос или команду EXECUTE. Дополнительную информацию см. в разделе «Ошибки и исключения» .
Пример устройства: Простой дымовой извещатель
В этом разделе приведены примеры полезных нагрузок для целевых запросов, представляющих собой типичный «детектор дыма» на основе типа устройства и указанных выше характеристик. Если вы добавляете или удаляете характеристики в своей реализации, внесите соответствующие изменения в свои ответы.
Пример ответа SYNC
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.SMOKE_DETECTOR", "traits": [ "action.devices.traits.SensorState" ], "name": { "name": "Simple smoke detector" }, "willReportState": true, "attributes": { "sensorStatesSupported": [ { "name": "SmokeLevel", "descriptiveCapabilities": { "availableStates": [ "smoke detected", "high", "no smoke detected" ] }, "numericCapabilities": { "rawValueUnit": "PARTS_PER_MILLION" } } ] }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
Пример ответа на запрос
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true, "currentSensorStateData": [ { "name": "SmokeLevel", "currentSensorState": "high", "rawValue": 200 } ] } } } }