智能家居 - 更正 JSON 以在设备离线时响应 EXECUTE
Smart Home - Correct JSON to respond to EXECUTE when device is offline
当我尝试执行命令并且设备处于离线状态时,助手仍然告诉我命令已成功完成。
当它是 QUERY 请求时,我没有遇到这个问题,但是对于 EXECUTE...
这是我退回的 JSON:
{
"requestId": "XXXXXX",
"payload": {
"commands": [
{
"ids": [123],
"status": "ERROR",
"errorCode": "deviceTurnedOff",
"online": false
}
]
}
}
我也试过这个:
{
"requestId": "XXXXXX",
"payload": {
"commands": [
{
"ids": [123],
"status": "OFFLINE",
"errorCode": "deviceTurnedOff",
"online": false
}
]
}
}
我希望当我尝试在离线设备上执行命令时,google 助手告诉我该设备不可用,但我有一个 Ok, i turn the light on
。
所以如果你有任何想法,因为我已经检查了我的 JSON 回复 100 万次并多次阅读文档但我找不到我的错误。
文档 here 有点令人困惑,因为该示例显示了 QUERY 意图的响应负载。
EXECUTE 意图的响应负载略有不同,并记录在案 here。
使用正确引用的 JSON EXECUTE 响应负载将如下所示:
{
"requestId": "XXXXXX",
"payload": {
"commands": [{
"ids": ["123"],
"status": "OFFLINE",
"errorCode": "deviceTurnedOff"
}]
}
}
注意:deviceId 应该是一个字符串,如 EXECUTE 响应负载详细信息中所述。
引用文档:
ids: Array. Required. Partner device IDs of the response
当我尝试执行命令并且设备处于离线状态时,助手仍然告诉我命令已成功完成。
当它是 QUERY 请求时,我没有遇到这个问题,但是对于 EXECUTE...
这是我退回的 JSON:
{
"requestId": "XXXXXX",
"payload": {
"commands": [
{
"ids": [123],
"status": "ERROR",
"errorCode": "deviceTurnedOff",
"online": false
}
]
}
}
我也试过这个:
{
"requestId": "XXXXXX",
"payload": {
"commands": [
{
"ids": [123],
"status": "OFFLINE",
"errorCode": "deviceTurnedOff",
"online": false
}
]
}
}
我希望当我尝试在离线设备上执行命令时,google 助手告诉我该设备不可用,但我有一个 Ok, i turn the light on
。
所以如果你有任何想法,因为我已经检查了我的 JSON 回复 100 万次并多次阅读文档但我找不到我的错误。
文档 here 有点令人困惑,因为该示例显示了 QUERY 意图的响应负载。
EXECUTE 意图的响应负载略有不同,并记录在案 here。
使用正确引用的 JSON EXECUTE 响应负载将如下所示:
{
"requestId": "XXXXXX",
"payload": {
"commands": [{
"ids": ["123"],
"status": "OFFLINE",
"errorCode": "deviceTurnedOff"
}]
}
}
注意:deviceId 应该是一个字符串,如 EXECUTE 响应负载详细信息中所述。
引用文档:
ids: Array. Required. Partner device IDs of the response