智能家居浴缸指南
action.devices.types.BATHTUB - 浴缸可以注水和排水,如果浴缸支持,可以将水位保持在特定水平。
此类型表示设备会获得浴缸图标以及一些相关的同义词和别名。
设备功能
如需了解实现细节(例如服务应支持的属性和状态,以及如何构建 EXECUTE 和 QUERY 响应),请参阅相应的功能特征文档。
推荐的特征
如果这些特征适用于您的设备,建议您实现它们。 不过,您可以随意组合所有可用的特征,以最符合您现有产品的功能。
示例设备:简单浴缸
本部分包含示例 intent 载荷,这些载荷表示基于上述设备类型和特征的常见“浴缸”。如果您在实现中添加或移除了特征,请相应地修改响应以反映这些变化。
SYNC 响应示例
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.BATHTUB", "traits": [ "action.devices.traits.Fill", "action.devices.traits.TemperatureControl", "action.devices.traits.OnOff", "action.devices.traits.StartStop" ], "name": { "name": "Simple bathtub" }, "willReportState": true, "attributes": { "availableFillLevels": { "levels": [ { "level_name": "half_key", "level_values": [ { "level_synonym": [ "Half", "Halfway", "One half" ], "lang": "en" } ] } ], "ordered": false }, "temperatureRange": { "minThresholdCelsius": 25, "maxThresholdCelsius": 100 }, "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": false, "currentFillLevel": "half_key", "isFilled": true, "temperatureSetpointCelsius": 30, "isRunning": true, "isPaused": false } } } }
EXECUTE 命令示例
填充
如需详细了解命令参数,请参阅
action.devices.traits.Fill 参考文档。
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Fill", "params": { "fill": true, "fillLevel": "half_key" } } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "on": true, "currentFillLevel": "half_key" } } ] } }
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": 40 } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "temperatureSetpointCelsius": 40 } } ] } }
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 } } ] } }
StartStop
如需详细了解命令参数,请参阅
action.devices.traits.StartStop 参考文档。
{ "requestId": "6894439706274654522", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.StartStop", "params": { "start": true } } ] } ] } } ] }
{ "requestId": "6894439706274654522", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "isRunning": true, "isPaused": false } } ] } }
PauseUnpause
如需详细了解命令参数,请参阅
action.devices.traits.StartStop 参考文档。
{ "requestId": "6894439706274654524", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.PauseUnpause", "params": { "pause": true } } ] } ] } } ] }
{ "requestId": "6894439706274654524", "payload": { "commands": [ { "ids": [ "123" ], "status": "PENDING", "states": { "online": true, "isRunning": false, "isPaused": true } } ] } }