Alexa找不到我的技能

Sub*_*ion 9 aws-lambda alexa-skill alexa-skills-kit

我基于Alexa Skills Kit中提供的示例之一创建了我的Alexa Skill作为AWS Lambda Node.js应用程序.我按照所有说明操作:

  1. 我的Echo使用与AWS上的开发者帐户相同的帐户注册
  2. 我在亚马逊开发者控制台上配置了我的技能
  3. 我将应用程序ID从控制台放入我的应用程序代码中
  4. 我将我的代码上传到AWS Lambda服务(根据指示设置为N. Virginia)
  5. 我测试了我的服务,它返回了预期的JSON
  6. 我在开发人员控制台中输入了我的ARN作为端点
  7. 在控制台的下一步,它告诉我通过说"Alexa,问问HelloWorld"来测试Echo的技能.

当我这样做时,她回答说"与所请求的应用程序进行通信时出现问题." 在Echo应用程序中它说:

意外通信问题HelloWorld请求标识符:amzn1.echo-api.request.e2d17280-592a-474f-a6b1-d1a9d8ff816d与请求的应用程序通信时出现问题

我可以从我的AWS Lambda函数列表中看到没有请求到达服务.我重新启动了Echo.我给了它一个小时,以防它需要时间在某处传播,但它仍然给出相同的响应.

所以这是一个非常模糊的死胡同.有没有人碰到这个?任何想法尝试什么?

Jus*_*zon 12

我注意到你没有提到设置你的事件来源.这是这里文档的片段.

添加Alexa技能套件事件源

将Alexa Skills Kit事件源添加到您的函数可以为Alexa授予函数所需的调用权限.

Log in to the AWS Management Console and navigate to AWS Lambda.
Select your function in the list.
Click Actions and then select Add event source.
Select Alexa Skills Kit from the Event source type.
Click Submit.
Run Code Online (Sandbox Code Playgroud)

此外,随时检查出Alexa的技能套件知识库分论坛常见Q&A的列表在这里.

谢谢!