如何为 Alexa 技能调用配置 MQTT (AWS IoT) 测试控制台?
Posted
技术标签:
【中文标题】如何为 Alexa 技能调用配置 MQTT (AWS IoT) 测试控制台?【英文标题】:How do configure the MQTT (AWS IoT) test console for an Alexa skill invocation? 【发布时间】:2021-11-14 08:44:33 【问题描述】:除了使用 AWS IoT Core 进行测试(订阅主题)之外,我已成功遵循以下指南
Implement a Connected Building with Amazon Alexa and AWS IoT
在文档末尾附近,它说要转到 AWS IoT Core,然后选择“测试”选项卡。订阅 setTemp 主题。
我这样做了,但我看不到来自 Alexa 控制台的消息(导航回 AWS IoT Core 测试控制台以查看消息)
我了解配置 AWS IoT 涉及创建对象和添加策略,但同样不起作用。
我觉得文档不完整,我必须做其他事情。
欢迎任何cmets或建议
【问题讨论】:
【参考方案1】:(1) 第一步是查看 Cloud Watch 日志。会有关于调用失败的线索。
(2) 我不确定您是否在 lambda 授权器中启用了自定义逻辑功能。如果你有,那么你引用的教程的代码中存在一个错误:在声明自定义逻辑函数的行之后,应该有一个 return 语句或至少一个'pass'语句。没有这个,如果你启用该功能,程序会崩溃。
def customLogicFunction(token):
return True
(3) 本教程混合了 Python 和 javascript 代码。发送 MQTT 消息的 lambda 函数在 JS 中,而所有其他部分在 Python 中。您在创建 lambda 时是否正确配置了语言?!
(4) 验证您的 AWS 区域。智能家居技能仅适用于某些地区。如果区域不匹配,调用将静默失败。有关允许的区域,请参见此链接:
https://developer.amazon.com/en-US/docs/alexa/smarthome/develop-smart-home-skills-in-multiple-languages.html
【讨论】:
以上是关于如何为 Alexa 技能调用配置 MQTT (AWS IoT) 测试控制台?的主要内容,如果未能解决你的问题,请参考以下文章
alexa 在技能调用时发送 SessionEndedRequest
Alexa 技能未在 Amazon Alexa 应用程序中调用,但可在开发控制台中使用