智能家居场景指南
action.devices.types.SCENE
- 对于场景,类型与 trait 的映射为 1:1,因为场景不会与其他 trait 组合以形成复合设备。场景应始终使用用户提供的名称。每个场景都是自己的虚拟设备,具有自己的名称。
此类型表示设备会获取场景图标以及一些相关的近义词和别名。
如需了解详情,请参阅场景 trait。
设备功能
如需了解实现详情(例如您的服务应支持的属性和状态,以及如何构建 EXECUTE 和 QUERY 响应),请参阅相应的 trait 文档。
必需的特征
这些 trait 和命令是必需的(如果适用于您的设备)。如果您的设备不支持这些 trait,请在 QUERY 或 EXECUTE 响应中输入 functionNotSupported
错误代码。如需了解详情,请参阅错误和异常。
质量要求
- 延迟时间:必须小于或等于 3000 毫秒。
- 可靠性:必须大于或等于 97%。
设备示例:简单场景
本部分包含基于上述设备类型和特征的代表常见“场景”的 intent 载荷示例。如果您在实现中添加或移除 trait,请相应地修改响应以反映这些更改。
SYNC 响应示例
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.SCENE", "traits": [ "action.devices.traits.Scene" ], "name": { "name": "Simple scene" }, "willReportState": true, "attributes": { "sceneReversible": true }, "deviceInfo": { "manufacturer": "smart-home-inc", "model": "hs1234", "hwVersion": "3.2", "swVersion": "11.4" } } ] } }
QUERY 响应示例
{ "requestId": "6894439706274654514", "inputs": [ { "intent": "action.devices.QUERY", "payload": { "devices": [ { "id": "123" } ] } } ] }
{ "requestId": "6894439706274654514", "payload": { "devices": { "123": { "status": "SUCCESS", "online": true } } } }
EXECUTE 命令示例
ActivateScene
如需详细了解命令参数,请参阅
action.devices.traits.Scene
参考文档。
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.ActivateScene", "params": { "deactivate": false } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true } } ] } }