问题标签 [alexa-account-linking]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
102 浏览

alexa-skills-kit - 使用应用程序帐户链接选项查询 Alexa 技能的注册认证

我已经从两个应用程序(来自 Alexa 应用程序和我的应用程序)和网站创建了一个 Alexa 技能(阶段 - 开发)和帐户链接选项。我检查了那些帐户链接选项,一切正常。这是我用我的 uat 网站和 uat 移动应用程序(Android 和 iOS)完成的。在提交认证时,我可以在亚马逊测试人员的测试说明中提供带有登录凭据的网站 URL,以检查帐户链接过程。但是我们如何向亚马逊测试人员提供我们的 uat 移动应用程序以检查帐户链接过程?

同时,如果没有亚马逊认证,我无法将此帐户链接选项集成到我的实时移动应用程序中。如何进行认证。

请帮我解决一下这个。

谢谢

0 投票
0 回答
68 浏览

amazon-web-services - 错误 400:启用 Alexa 技能时帐户链接凭据无效

我正在尝试使用我的应用程序实现 Alexa 技能的应用程序到应用程序帐户链接。

我已按照此处找到的指南https://developer.amazon.com/en-US/docs/alexa/account-linking/app-to-app-account-linking-starting-from-your-app.html并有达到第六步:开启技能,完成账号绑定。此时,我正在使用 axios 在 AWS lambda 函数中创建最终发布请求。请求格式如下:

并且我将发布请求发送到每个可能的区域端点并使用成功的一个调用,如指南的示例代码所示。

但是,问题在于对每个端点的三个调用中的每一个都返回错误代码 400,并带有消息:“无效的帐户链接凭据”。我完全无法解决这个问题。前面的每个步骤都运行得很好,我正在从第 5 步发送 Amazon 访问令牌,技能阶段是“开发”(技能未发布),redirectUri 是第 4 步中使用的 uri,当时我获得了一个亚马逊授权码来重定向用户返回应用程序,我发送的用户 authCode 是从指示用户登录我们的身份验证服务 (Cognito) 中返回的,并且我在 axios 发布请求中使用的 url 中发送技能 ID。我正在测试的帐户是我的亚马逊开发人员帐户,可以访问该技能(虽然我没有创建该技能),我正在使用在技能的帐户链接和权限选项卡中找到的 Alexa 客户端 ID 和密码。最后,每次我测试时,它都会运行整个过程,给我一个新的授权码,交换一个新的令牌,登录一个新的用户授权码,然后将所有需要的东西发送到这个 lambda 函数。

我还在这里看到了Alexa Account Linking - "Invalid account linking credentials"的帖子,从我上面写的内容来看,我认为我没有犯任何 4 个错误。

我怎样才能解决这个问题?

0 投票
0 回答
43 浏览

amazon - 获取用户的亚马逊授权码 Alexa Account Linking

我在尝试获取授权码以设置与 Alexa 链接的应用程序到应用程序帐户时遇到问题。(我使用此说明:https ://developer.amazon.com/en-US/docs/alexa/account-linking/app-to-app-account-linking-starting-from-your-app.html#urls-和端点

我已经在开发者控制台中添加了帐号关联设置: 在此处输入图像描述

当我尝试通过 Postman 发送请求以检查来自 LWA 服务器的请求时:

我得到这个回应:

那么,我需要使用什么范围来代替alexa::skills:account_linking?我的方法可能还有另一个问题吗?

先感谢您。

0 投票
0 回答
34 浏览

java - Alexa SkillSetup 与 Keycloak Oauth Provider for Custom Identity Provider

我们有带有自己数据库的应用程序,但这不支持 Oauth 标准流程。我们只是使用 JWT 访问令牌和刷新令牌进行用户身份验证和授权。现在我们想要语音与 Alexa 智能家居技能集成,因为我正在我的 Alexa 开发者控制台上创建一个 SmartHome 技能,现在我需要一个 OAuth 2.0 提供程序来为我的应用程序用户激活此技能。对于 Oauth 服务器,我们将使用 keycloak,我在其中创建了一个用户,该用户与使用该用户的 alexa 登录电子邮件具有相同的电子邮件,我能够启用我的技能,但对于其他用户,我无法启用该技能。我得到以下错误..

有没有办法管理这个错误?

现在接下来有什么办法不用在keycloak中创建用户我需要使用我的数据库进行身份验证,而技能激活用户将从我的自定义数据库中获得授权,它将从我的应用程序返回refreshtoken和accesstoken。这可能与keycloak吗?

如果是,那么是否有任何参考或没有,那么是否有任何其他 OAuth 提供将帮助我摆脱这种情况?

谢谢。

0 投票
0 回答
18 浏览

oauth-2.0 - Alexa 帐户链接 - 处理服务器未发送刷新令牌

我尝试连接的服务器有一个不刷新令牌策略(数据不敏感,但一般访问没有用)。在 Alexa 文档中说明(1)

在最典型的场景(授权码授予类型)中,客户端必须首先获取授权码,然后将其交换为访问令牌和可选的刷新令牌,以便在旧访问令牌过期时它可以请求新的访问令牌.

因此,似乎没有刷新令牌是一个有效的选项。然而,交换凭据后帐户链接失败。文档中也未涵盖此选项。例如,如果没有发送刷新令牌,Alexa 中配置的过期时间是否适用于访问令牌?有人成功了他的案子吗?