开发和测试 alexa 技能(经授权)

developing and testing alexa skill (with authorization)

我即将为 Alexa 开发我的第一个自定义技能。我没有有 Echo 设备。

我所做的是使用亚马逊开发人员控制台 (Alexa Skill + Lambda) 创建和测试一项基本技能。

现在我有一些一般的(nooby)问题:

1) 这真的是您开发和测试自定义技能的方式吗?我的意思是它不是可以测试的真实用户体验。您必须输入文本并分析 JSON request/responses。所以,不可能有现实的端到端测试?

2) 在亚马逊开发者控制台完成开发阶段后会发生什么?我目前处于测试步骤,但我可以看到接下来的步骤是关于发布信息(图像、文本等),我还可以看到按钮 "Submit for Certification"。所以对我来说,似乎我的自定义技能会在某种市场上发布给其他 Alexa 用户?这个对吗?有没有办法仅将此技能用于我的个人用途 - 就像 APK 文件 Android 应用程序一样?

3) 我正在开发一项需要某种授权(用户)的自定义技能。我看到有一篇关于它的大文章,似乎智能手机上需要对 Alexa 应用程序进行一些操作。现在我的问题来了,如何在没有真实设备的情况下进行测试?真的可以吗?

  1. 我建议,首先在本地测试,然后使用测试控制台和 最后,您可以使用 https://echosim.io 这将为您提供 与 Echo 交互时得到的结果非常接近测试台 (更准确地说,Echo Tap,你必须点击按钮才能 听)。
  2. 如果你只是想要自己的技能,那就算了 任何通过测试步骤的东西。该额外信息仅供 "store" 如您所料。
  3. 如果您只需要识别个人 用户,那么你不需要使用用户身份验证的东西。 每个请求中都提供了一个唯一的用户标识符。如果你 想要使用第三方类似 Oauth 的方案对用户进行身份验证, 然后阅读该文档。

Big Nerd Ranch 有一个关于使用 NodeJS 在本地开发技能的非常有用的系列:https://www.bignerdranch.com/blog/developing-alexa-skills-locally-with-nodejs-setting-up-your-local-environment/. They use alexa-app, mocha, chai, and alexa-app-server