智能家居路由器指南
action.devices.types.ROUTER - 路由器可以重新启动、更新其软件,具有处理服务质量 (QoS) 控制和家长限制的模式,可以执行网络特定操作(例如启用访客网络和报告当前互联网吞吐率等网络特定信息)。
此类型表示设备会获得路由器图标以及一些相关的同义词和别名。
设备功能
如需了解实现详情(例如服务应支持的属性和状态),以及如何构建 EXECUTE 和 QUERY 响应,请参阅相应特征的文档。
必需特征
如果这些特征和命令适用于您的设备,则必须实现它们。如果设备不支持这些特征,请在 QUERY 或 EXECUTE 响应中输入错误代码 functionNotSupported。如需了解详情,请参阅错误和异常。
推荐的特征
如果这些特征适用于您的设备,建议您实现它们。 不过,您可以随意组合所有可用的特征,以最贴合您现有的产品功能。
示例设备:简单路由器
本部分包含表示常见“路由器”的 intent 载荷示例,这些示例基于上述设备类型和特征。如果您在实现中添加或移除了特征,请相应地修改响应以反映这些变化。
SYNC 响应示例
{
"requestId": "6894439706274654512",
"inputs": [
{
"intent": "action.devices.SYNC"
}
]
}{ "requestId": "6894439706274654512", "payload": { "agentUserId": "user123", "devices": [ { "id": "123", "type": "action.devices.types.ROUTER", "traits": [ "action.devices.traits.Reboot", "action.devices.traits.NetworkControl" ], "name": { "name": "Simple router" }, "willReportState": true, "attributes": { "supportsEnablingNetworkProfile": true, "supportsDisablingNetworkProfile": true, "supportsNetworkDownloadSpeedTest": true, "supportsNetworkUploadSpeedTest": true, "networkProfiles": [ "kids" ] }, "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, "networkEnabled": true, "networkSettings": { "ssid": "home-network-123" }, "numConnectedDevices": 4, "networkUsageMB": 100.8 } } } }
EXECUTE 命令示例
重新启动
如需详细了解命令参数,请参阅
action.devices.traits.Reboot 参考文档。
{ "requestId": "6894439706274654516", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.Reboot" } ] } ] } } ] }
{ "requestId": "6894439706274654516", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true } } ] } }
EnableDisableNetworkProfile
如需详细了解命令参数,请参阅
action.devices.traits.NetworkControl 参考文档。
{ "requestId": "6894439706274654518", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.EnableDisableNetworkProfile", "params": { "profile": "kids", "enable": false } } ] } ] } } ] }
{ "requestId": "6894439706274654518", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true, "networkEnabled": true, "networkSettings": { "ssid": "home-network-123" } } } ] } }
TestNetworkSpeed
如需详细了解命令参数,请参阅
action.devices.traits.NetworkControl 参考文档。
{ "requestId": "6894439706274654520", "inputs": [ { "intent": "action.devices.EXECUTE", "payload": { "commands": [ { "devices": [ { "id": "123" } ], "execution": [ { "command": "action.devices.commands.TestNetworkSpeed", "params": { "testDownloadSpeed": true, "testUploadSpeed": true, "followUpToken": "123" } } ] } ] } } ] }
{ "requestId": "6894439706274654520", "payload": { "commands": [ { "ids": [ "123" ], "status": "SUCCESS", "states": { "online": true } } ] } }