问题描述
我正在尝试使用 Alexa android 应用打开 Alexa 电源控制器设备。 但是每个 lambda 事件我都会得到这个。
{
"directive": {
"header": {
"namespace": "Alexa","name": "ReportState","payloadVersion": "3","messageId": "c985c301-1ae8-4013-8a5d-c975e9ddf31f","correlationToken": "AAAAAAAAAADb0ZCBEV1S7hhRZkAeNare/AEAAAAAAAAd5ANtHk2G5dYhON0vwxOERWFAqWB7HXUXUCTg1AvS2d4WsQkTdOltpM1JbiBh/LtQTAlphKyhSGt2fSI0Bgoiif6C7nxAvIzAQHkhE+SgK/+wUiq3azaVetTtF6maWY2sQxYr6DC6aL5ItvgpM+AavI9RQhwtF5yqr/aT2adHRQr3cVmILnNYzbGSwvTz73fLVgMVxDDma3EAhJDNFVTKXm1+dCVXu7185aQpIzWIn67l2Mh+3oKdJrkdKl9ey06V621u1g8yKGI2thnBb1xz+FHoistYfMSH2wU6puWR5jt8bUTl3aWIkhCnqKoo6KxJ8UR6KpzVdv25XBiE+HDI4cvcjsI4oBn4yJ2RBe0lJ9Bz5jP+Atu0k3wtUN7AG72q3onshTykvdSJNt+T2D6obEASmixHfW5dbnanvgrpo5sQzx8vcVDMrRosTmOcl9p+fpawJm0E9uuaav/Z/krHkf99bFB13BTpCBgHvAeTCmcF9hx5w7Pzz7VxOf+mL9ksUFU3AYz+UW0Ac3Fr/wSP4oK9lJYS1rJepEWy8P/TW/8uoQL5NP9QpXXsaGfJo4txwIMbCGiU+P4SXFRC4qPsRaGihlJeUsl4dZedng34kFqbFg0JPUG8CXDTt7dBw+5P3E0IVC2F3yOUkzsif3JKfETfn0YDbklC1GM/"
},"endpoint": {
"scope": {
"type": "BearerToken","token": "eyJraWQiOiI2SXp5OTROeGUxVXloUWlIampLVmpNaTJqTUZhbGtBcnFTS3ZtYUoyQ3JRPSIsImFsZyI6IlJTMjU2In0.eyJzdWIiOiI3ZWMxMTZjZi01MjUzLTQyMjctYTE4NC0wYTM0YTIzZdhlNWUiLCJldmVudF9pZCI6ImJhNWI2NDI3LWZhYTItNDhhMC04NjE0LTM1Y2NhNjMyMWVmNiIsInRva2VuX3VzZSI6ImFjY2VzcyIsInNjb3BlIjoib3BlbmlkIHByb2ZpbGUgZW1haWwiLCJhdXRoX3RpbWUiOjE2MTUyOtixNTksImlzcyI6Imh0dHBzOlwvXC9jb2duaXRvLWlkcC51cy1lYXN0LTIuYW1hem9uYXdzLmNvbVwvdXMtZWFzdC0yXzJ4ZHJMZWdIMyIsImV4cCI6MTYxNTM3NjkwOCwiaWF0IjoxNjE1MzczMzA4LCJ2ZXJzaW9uIjoyLCJqdGkiOiIyYmYzZWNjMS01NGVhLTQwM2ItYjhmOS0yNDdlYjFmNjdjNDIiLCJjbGllbnRfaWQiOiI2bWpzcWNmbzZoaThpdnRoMmtlMWplY3UwciIsInVzZXJuYW1lIjoiN2VjMTE2Y2YtNTI1My00MjI3LWExODQtMGEzNGEyM2Q4ZTVlIn0.N0Vppx-nkFO6fbddMyzef7zutVR9YiBO1hK6H5jVo4rNMwYbXhM_DH6l5nhwsuSmhhtzJjjwBCvB2hm2yJ9ZgYuIQPRttoPZZVsiVF_YQoMsOA08W1C3vJTXjIn5n1-NwHunegtiMHcqpMwvErJOg_fKE388dos2y-38rDmTTTwxKilSL1uU6NLoTcUbaPdKRlUkExqaaP_mGITGy7pviNk-tgCPQXdh3pf8kw9l1Jk_eWQDLT0lrAtUoWOhVtML5JKgGzysOU963mKQLgU-fcsWnrCwftrL5dGA57wJUzm9O5LIWwahzpdispv5KisIQxk0QcV7Qan27xnv8XD8VA"
},"endpointId": "endpoint-001","cookie": {
"detail1": "For simplicity,this is the only appliance","detail2": "that has some values in the additionalApplianceDetails"
}
},"payload": {}
}
}
看看它显示的命名空间字段只显示 Alexa 而不是 Alexa.PowerController here is the official v3 sample。
我仍然可以通过使用 name 字段来做到这一点,但我怀疑在使用某些 Alexa 设备时,即使它显示 v3,它也会回到文档中。
我该如何处理这种情况。 使用节点 14.x。
解决方法
您正在获取 ReportState 指令。它不是代替 PowerController。这是一个额外的指令。您假设发送 StateReport 作为响应。
通常,当移动应用打开时,此指令每隔几秒发送一次,因此如果您的设备状态发生变化(例如与设备进行物理交互),它会正确显示在应用中。