智能家居烤箱指南
action.devices.types.OVEN
- 与烤箱的交互涉及到在特定温度下烘焙或烘烤的功能。烤箱内部的物理温度随着烤箱的加热会出现差异,因此也可以对其进行监控。烤箱具有对烘焙时间进行限制的烹饪时间。
此类型表示设备会获取“烤箱”图标以及一些相关的同义词和别名。
Ovens 针对action.devices.traits.OnOff
和 action.devices.traits.TemperatureControl
提供了基于类型的语法:
- 如果设备支持
OnOff
,预热烤箱将发送action.devices.commands.OnOff
命令。 - 如果设备支持
TemperatureControl
,将烤箱预热到 350 度将发送一个命令,将烤箱设为该温度。
设备功能
如需了解实现详情(例如您的服务应支持的属性和状态,以及如何构建 EXECUTE 和 QUERY 响应),请参阅相应的 trait 文档。
必需的特征
这些 trait 和命令是必需的,前提是它们适用于您的设备。如果您的设备不支持这些 trait,请在 QUERY 或 EXECUTE 响应中输入 functionNotSupported
错误代码。如需了解详情,请参阅错误和异常。
建议的特征
建议您使用以下 trait(如果适用于您的设备)。 不过,您可以自由组合使用所有可用的 trait,以便尽可能匹配现有的产品功能。
质量要求
- 延迟时间:必须小于或等于 3000 毫秒。
- 可靠性:必须大于或等于 97%。
设备示例:简单的烤箱
本部分包含基于上述设备类型和 trait 的常见“烤箱”intent 载荷示例。如果您在实现中添加或移除 trait,请相应地修改响应以反映这些更改。
SYNC 响应示例
{ "requestId": "6894439706274654512", "inputs": [ { "intent": "action.devices.SYNC" } ] }
{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.OVEN", "traits": [ "action.devices.traits.Cook", "action.devices.traits.OnOff", "action.devices.traits.TemperatureControl", "action.devices.traits.Timer", "action.devices.traits.StartStop" ], "name": { "name": "Simple oven" }, "willReportState": true, "attributes": { "supportedCookingModes": [ "BAKE", "CONVECTION_BAKE", "ROAST" ], "maxTimerLimitSec": 3600, "temperatureRange": { "minThresholdCelsius": 65, "maxThresholdCelsius": 288 }, "temperatureUnitForUX": "F" }, "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, "on": true, "isRunning": true, "temperatureSetpointCelsius": 175, "currentCookingMode": "BAKE", "timerRemainingSec": -1 } } } }
EXECUTE 命令示例
Cook
如需详细了解命令参数,请参阅
action.devices.traits.Cook
参考文档。
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Cook", "params": { "start": true, "cookingMode": "ROAST" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "currentCookingMode": "ROAST" } } ] } }
OnOff
如需详细了解命令参数,请参阅
action.devices.traits.OnOff
参考文档。
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.OnOff", "params": { "on": true } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "on": true } } ] } }
SetTemperature
如需详细了解命令参数,请参阅
action.devices.traits.TemperatureControl
参考文档。
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.SetTemperature", "params": { "temperature": 200 } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "temperatureSetpointCelsius": 200, "temperatureAmbientCelsius": 100 } } ] } }
TimerStart
如需详细了解命令参数,请参阅
action.devices.traits.Timer
参考文档。
{ "requestId": "6894439706274654522", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerStart", "params": { "timerTimeSec": 300 } } ] } ] } } ] }
{ "requestId": "6894439706274654522", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 300 } } ] } }
TimerAdjust
如需详细了解命令参数,请参阅
action.devices.traits.Timer
参考文档。
{ "requestId": "6894439706274654524", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerAdjust", "params": { "timerTimeSec": -10 } } ] } ] } } ] }
{ "requestId": "6894439706274654524", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 290 } } ] } }
TimerPause
如需详细了解命令参数,请参阅
action.devices.traits.Timer
参考文档。
{ "requestId": "6894439706274654526", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerPause" } ] } ] } } ] }
{ "requestId": "6894439706274654526", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 300, "timerPaused": true } } ] } }
TimerResume
如需详细了解命令参数,请参阅
action.devices.traits.Timer
参考文档。
{ "requestId": "6894439706274654528", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerResume" } ] } ] } } ] }
{ "requestId": "6894439706274654528", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": 300, "timerPaused": false } } ] } }
TimerCancel
如需详细了解命令参数,请参阅
action.devices.traits.Timer
参考文档。
{ "requestId": "6894439706274654530", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TimerCancel" } ] } ] } } ] }
{ "requestId": "6894439706274654530", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "timerRemainingSec": -1 } } ] } }
StartStop
如需详细了解命令参数,请参阅
action.devices.traits.StartStop
参考文档。
{ "requestId": "6894439706274654532", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.StartStop", "params": { "start": true } } ] } ] } } ] }
{ "requestId": "6894439706274654532", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "isRunning": true } } ] } }