10

我根据 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。我给了它一个小时,以防它只需要时间传播到某个地方,但它仍然给出相同的响应。

所以这是一个相当模糊的死胡同。有没有人遇到过这个?有什么想法可以尝试吗?

4

1 回答 1

12

我注意到你没有提到设置你的事件源。这是此处文档的摘录。

添加 Alexa Skills Kit 事件源

将 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.

此外,请随时查看 Alexa Skills Kit 知识库子论坛,查看此处的常见问答列表。

谢谢!

于 2015-06-29T22:40:54.340 回答