我最近购买了 Amazon Echo Dot,并且正在考虑为其创建自定义技能。
我已经有了一个可供任何客户端使用的网络服务,无论是移动、桌面还是网络,我希望 Echo 也能够通过发布和处理响应并将结果返回给用户来利用该服务。
我唯一能找到的就是创建一个 Alexa Web 服务,但据我所知,它只允许 Echo 访问,没有其他任何东西,并且必须遵循某些安全条款,例如需要 Amazon 证书。
创建一个 Web 服务来将我自己的 Web 服务包装在其中似乎有点矫枉过正,这是唯一的方法,还是有一种方法可以 POST/GET 到我自己的 Web 服务处理结果然后返回以适合回声的方式得到结果。
最佳答案
正如您所发现的,是的,您可以将 Alexa 技能指向任何 Web 服务,但它必须符合 Amazon 的证书和端口要求,以及实现 ASK 接口(interface)。
您可以将您的 Alexa 技能指向 AWS Lambda(它有内置选项),然后将请求代理到您现有的服务,但我认为这与您的“将现有的 Web 服务包装在其中”属于同一类别ASK Web 服务选项,不过设置起来更容易一些。
总体而言,我想说的是,将现有的 Web 服务调整为 ASK 界面并实现 ASK 技能所需的新功能将比解决此问题做更多的工作。
IMO,您不妨创建一个包装服务(或 lambda),因为这样您就可以将其余的 ASK 处理放在那里,而不必弄乱您现有的工作服务。
关于api - 使用现有的 Web 服务来实现 Alexa 技能,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42176921/