每次我执行“{light} 是否开启?”时,Google Home 都不会针对我们的集成进行 QUERY。它总是使用来自 ReportState 的缓存结果。
即使 ReportState 发送“online”: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 匹配,但 online: false 始终被忽略。