【问题标题】:Google Home actionsGoogle Home 操作
【发布时间】:2017-02-17 14:06:41
【问题描述】:

我尝试为 Google Home 创建操作。对于我的新操作,我需要在我的网站中询问用户授权,我需要识别用户。对于此用户,应该在 Google Home 应用中找到我的操作,链接到我的网站并登录。 我的问题在下。我有机会仅使用模拟器创建所有这些吗?还是没有 Google Home 设备我什么都做不了?

【问题讨论】:

    标签: actions-on-google google-home


    【解决方案1】:

    您肯定能够仅使用模拟器来实现和测试它,尽管它不会像您拥有一个实际设备那样顺畅地工作。该过程称为“帐户链接”,详情请参阅https://developers.google.com/actions/develop/identity/oauth2-overview,但一般流程为:

    1. 您的服务需要充当 OAuth 2.0 服务器,并具有可供 Google 助理使用的授权页面和令牌交换端点。
    2. 当用户首次激活您的 Action 时,系统会告知他们需要授予 Home 权限才能访问您的帐户,并且他们应该检查 Google Home 应用中的卡片。
    3. 卡片会将他们重定向到授权页面,他们在此登录您的网站并授权从 Google Home 访问您的网站。
    4. 作为授权的一部分,您将继续 OAuth 2.0 流程并(最终)颁发一个不记名令牌,供 Google Home 存储。
    5. 然后用户可以重新触发操作。每次调用您的 webhook 时,Google Home 都会将此令牌发送给您。
    6. 然后您可以使用此令牌来查找发出请求的用户。

    Google 的文档和 OAuth 2.0 规范中介绍了许多其他详细信息,但它通常是这样工作的。

    对于模拟器,用户不会被定向到 Google Home 应用中的卡片。相反,您可以在第一次激活 Action 时在模拟器提供的返回 JSON 中看到。其中,debugInfo.sharedDebugInfo.debugInfo 字段包含身份验证 URL。您应该在浏览器中访问 URL,完成登录和授权流程,最终将被重定向到包含参数 result_code=SUCCESS 的 URL。在此之后,使用模拟器会将访问令牌发送到您的 webhook。更多详情请参阅https://developers.google.com/actions/tools/testing#testing_on_the_google_home_web_simulator

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2022-10-25
      • 1970-01-01
      相关资源
      最近更新 更多