当我请求“打开所有设备”时,我遇到了 Google Assistant 问题。即使我为某些设备发送“失败”状态,Google Assistant 也会回复“好的,打开 x 个东西”,而没有任何失败指示。这是我为 action.devices.EXECUTE 操作发送的 JSON 响应:
{
"requestId": "617XXX27787XXX16813",
"payload": {
"devices": {
"1081614XXX": {
"on": false,
"online": true,
"status": "SUCCESS"
},
// ... (other device entries)
"4153991XXX": {
"on": false,
"online": true,
"status": "FAILED"
}
}
}
}
以下是我的系统工作原理的概述:
我有几个问题:
Google Assistant 是否会对处于“失败”状态的设备(例如“无法打开/关闭设备”)提供否定响应?我没有收到这样的回复。
我尝试启动默认状态为“待处理”和“失败”的单个设备,但我仍然收到相同的响应(“好的,打开
我发送给 Google Assistant 的回复中是否有可能遗漏的内容?
当我在 5 秒的时间限制内要处理超过 20 个设备时,我面临着挑战。目前,我正在为已成功启动但需要时间的设备发送“PENDING”。有没有更好的方法来处理这个问题而不发送“FAILED”?
我感谢任何改善这种情况的见解或建议。谢谢!
问题在于
status
键本身,它应该是 ERROR
而不是 FAILED
这是一个例子:
{
"requestId": "617XXX27787XXX16813",
"payload": {
"devices": {
"1081614XXX": {
"on": false,
"online": true,
"status": "SUCCESS"
},
// ... (other device entries)
"4153991XXX": {
"on": false,
"online": true,
"status": "ERROR",
"errorCode": "Timeout"
}
}
}
}