每次我执行一次:“ {light}是否打开?”时,Google Home不会针对我们的集成进行查询。它始终使用ReportState的缓存结果。
即使ReportState发送“在线”:false,响应仍为“ {light}为“,而不是{light}现在不可用”。
以下是我们的报告状态的示例:
{
"requestId":"fecfa392-5bdc-4054-bc70-e4499bc4a733”,
"agent_user_id":"2”,
"payload":{
"devices":{
"states":{
"60dcd8a06472":{
"online":false,
"color":{
"spectrumRGB":16711680
},
"on":false,
"brightness":0
}
}
}
}
}
Google Home Graph API会成功响应,并且如果我们进行此操作并询问:“ {light}是否打开?”,则来自Google的响应会匹配最新的ReportState,但始终会忽略在线:false。