0

我在 DialogFlow 中创建了一个与用户交互的代理,使她能够检查后端数据库中的人口统计等详细信息。我已经使用 Fulfillment/Webhook 调用实现了这一点,并成功解析/返回了不同类型的响应给用户以供使用。我已经在 Android 设备和 Google Actions Simulator 上对此进行了测试。

现在,我想要实现的是让用户能够通过我的应用程序在谷歌日历或类似平台上“设置提醒”。默认情况下,谷歌助理通过简单地告诉它“提醒我......”来做到这一点,谷歌会在日历中创建一个提醒。但是一旦我调用我的应用程序,助手就会超出范围,因此使用“提醒我”命令将不起作用。例如,我想使用 Google 日历通过我的代理创建提醒,以便在适当的时间通知用户。

我知道当用户在 Google Assistant 中调用应用程序时,她正在使用她的 Google 凭据,所以我想如果我想使用该应用程序来创建提醒,我应该可以选择。我已经查看了 Calendar API,但我不确定我是否应该这样做。有没有更好的方法来实现这一目标?

请注意,我想使用用户可以使用的提醒服务,而无需订阅第三方服务。

4

2 回答 2

1

日历 API 是要走的路。详情在这里

在这些文档中,您将看到对access token的引用,您可以通过使用 helper intent askForSignIn (在 Google 的示例项目之一中使用此处的示例)获得它。

希望这可以帮助!

于 2018-04-12T15:43:22.327 回答
0

因此,对于所有面临同样问题的人,这就是我所做的:

  1. 首先在https://auth0.com上创建了一个帐户
  2. 按照本指南配置链接到 Google Assistant 的必要设置(忽略 Jovo 部分)
  3. 使用 Auth0指南配置并链接到我的 Google 项目凭据(忽略了 Admins SDK 服务部分)
  4. 现在,当我在设备上运行我的 Google Actions 应用程序时,出现了一个“将 [应用程序名称] 链接到 Google”按钮。点击那个“签到我”。
  5. 解析我的 webhook 中的响应以获取originalRequest.data.user.accessToken

这是@lukedavis 回答中提到的令牌。下一步是使用令牌执行对日历 API 的调用。尝试后,我面临一个不同的问题,我正在努力寻找解决方案。但是以上应该可以帮助那些希望获得 accessToken 的人。

于 2018-04-27T12:11:21.133 回答