从Google Home Simulator

时间:2017-01-05 17:35:51

标签: actions-on-google google-home api-ai

我正在开发一个帐户,用于将“Google on Google”集成的集成与API.AI相关联,以便与Google Home一起使用。当我在模拟器(https://developers.google.com/actions/tools/web-simulator

中测试此代理时

正如所料,这是我的回答:

{
    "response": "It looks like your conference manager account is not linked yet. You can link conference manager to your Google Account from the Google Home app.",
    "audioResponse": "//NExAARC..."content_copy,
    "debugInfo": {
        "sharedDebugInfo": [
            {
                "name": "Account Linking Url",
                "debugInfo": "https://assistant.google.com/services/auth/handoffs/auth/start?provider={project-id}_dev&return_url=https://www.google.com/"
            }
        ]
    }
}

然而,当我按照

res.debugInfo.sharedDebugInfo[0].debugInfo

链接,我收到了标准的 redirect_uri_mismatch 错误页面,其中包含详细信息:

  

请求中的重定向URI,   https://oauth-redirect.googleusercontent.com/r/ 我的项目-ID   与OAuth客户端授权的不匹配。访问   https://console.developers.google.com/apis/credentials/oauthclient/ 我的客户端-ID ?项目= 我的客户端-ID   更新授权的重定向URI。

     

当然无法将 googleusercontent 域添加到   重定向,这不是我在我指定的重定向   适用于Google集成的API.AI操作。

在API.AI方面,我的Auth Url是标准的Google: https://accounts.google.com/o/oauth2/v2/auth

我的令牌网址是: https://myendpoint.com/google-home-token-endpoint 范围填写为calendar

在google开发者控制台上,我将令牌网址设置为与API.AI相同,并且项目ID /客户端ID与请求中的引用相同。

这是一个已知问题吗?我可以尝试额外的调试工作吗?

3 个答案:

答案 0 :(得分:1)

莱昂,你能再扩展一下你的答案吗?那对于动作开发者来说意味着什么呢?作为谷歌行动开发者,我们可以进行帐户关联吗?

答案 1 :(得分:1)

我也不知道为什么你不能通过Google登录来管理Google上的操作帐号。

但是,我使用Login With Amazon完成了这项工作,方法如下:

  1. 在api.ai中,选择集成 - >谷歌上的行动。
  2. 选择一个调用名称,在google developers console
  3. 中创建一个项目
  4. 输入相应的Google项目ID
  5. 选择您的欢迎意图
  6. 转到the amazon developers console under login with amazon
  7. 根据允许的来源,添加https://accounts.google.com/
  8. 在允许的返回网址下,添加https://oauth-redirect.googleusercontent.com/r/my-project-id(带有 你上面的google项目ID)
  9. 返回Google弹出窗口中的操作,输入在亚马逊开发人员控制台中创建的客户端ID和客户端密钥。
  10. 设置grant type = implicit
  11. 设置授权网址= https://www.amazon.com/ap/oa

  12. 设置范围=个人资料

  13. 授权和预览,并按照问题中的说明继续,将res.debugInfo.sharedDebugInfo [0] .debugInfo中的链接粘贴到浏览器会话中。它将成功链接到相关的亚马逊帐户。
  14. 问题是 - 在设置与Google上的操作相关联的帐户时,为什么我可以使用亚马逊作为OAuth2的身份提供商使用网络联盟而不是谷歌?

答案 2 :(得分:0)

见Leon对我原来问题的评论。

目前无法为您不拥有的API执行帐户关联操作。