我最近在 Amazon Alexa 上开发了一个用于智能家居技能 API 的项目,我们使用异步方法进行开发。在 Alexa 中,有事件网关用于异步进行后调用,并有延迟响应以保持事件网关打开。我知道 Action on Google 有 homegraph。 HomeGraph 和 EventGateway 的工作原理是一样的吗? 我还想知道如何使 Google 上的操作异步执行? 根据我的理解,我需要为此目的向 Homegraph 进行后期调用。
是的,一旦状态完全改变,您可以向主页图发送 POST。
对于某些类型的设备,可能需要一段时间才能完成,您可以返回带有 PENDING 的执行响应:
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"payload": {
"commands": [{
"ids": ["123"],
"status": "PENDING",
"states": {
"on": false,
"online": true
}
}]
}
}
稍后,一旦状态正确,您就可以使用 Report State API:
{
"requestId": "ff36a3cc-ec34-11e6-b1a0-64510650abcf",
"agentUserId": "1234",
"payload": {
"devices": {
"states": {
"123": {
"on": true
},
}
}
}
}