我有一个使用Cognito进行身份验证的ios应用。当我深入研究亚马逊所提供的内容时,我遇到了亚马逊的Alexa语音服务和Alexa Skills Kit。通过亚马逊的文档,有人提到我必须使用Login-With-Amazon SDK进行身份验证,然后我才能访问Alexa语音服务。我真的需要知道是否有解决方法。在检查用户名和密码是否已在我的dynamoDB表中注册后,我允许从我的应用程序进行未经身份验证的访问。我是否还必须使用Login-With-Amazon SDK?没有它,我可以让Alexa工作吗?
答案 0 :(得分:1)
用户必须使用Login With Amazon SDK(LWA)登录其亚马逊帐户,无论他们是否使用Alexa语音服务(AVS)通过mobile app授权的设备,{{3调用a website,或者需要来自LWA的访问令牌。认证流程的一个很好的概述在REST API directly。因此,您将无法允许未经身份验证的(即匿名用户)呼叫AVS。 Getting Started Guide以及您现有的未经身份验证的代码,但您的用户必须先使用Amazon登录才能使用AVS。
有关为什么要这样做的解释由亚马逊人在Cognito has a documented way to integrate LWA中明确说明:
对于AVS,我们需要用户的许可才能访问他们的帐户数据。这意味着您需要通过LWA SDK获取访问令牌。
答案 1 :(得分:0)
您可以将Amazon添加为Cognito身份池的提供者,然后您可以将其与Amazon帐户配合使用。
答案 2 :(得分:0)
值得注意的是,Alexa语音服务旨在被Alexa设备使用,而非移动应用。例如,echosim.io使用语音服务。
如果您仍想在您的iOS应用中添加Alexa风格的技能,我建议您查看Amazon Lex(通过AWS),该问题自您的原始问题以来已经可用。您可以创建利用Alexa技术的语音或文本聊天机器人,并且您的用户可以使用Cognito登录。