Google 助理操作权限 API 我不拥有

Google Assistant action access API that I do not own

我已经阅读了 Account Linking 的文档,但我仍然不清楚如何使用我不支持 Oauth2 的 API 构建操作的机制。

比方说,我想让 Ebay 用户询问 "Hey Google, ask Ebay, has my order shipped?"。带着这个问题,我需要通过 API 访问 Ebay 上的用户交易,我无法控制 Ebay OAuth2 端点和参数的方式。

有没有做过或者知道好的例子请告诉我。最终,我想从各种站点(某种混搭)调用 API。

您需要分两部分处理此问题 - 在您的系统中为每个用户创建一个帐户,并将您的帐户链接到他们的 Google 助理帐户。

您系统中的帐户将存储您需要的凭据(通常是 OAuth 令牌)以代表他们访问 API 服务。这通常是通过让他们登录您的网站并授权您通过 OAuth 舞蹈访问其他服务来完成的。

在第二部分中,角色略有颠倒。现在,智能助理需要获得用户授权才能通过某种 OAuth 协议访问您的服务。这就是帐户链接的作用 - 它为您的服务获取一个 OAuth 令牌 给助手,这样它就可以将它传递给您,这样您就可以验证用户是谁。

一旦您知道用户是谁(通过助手),您就可以在您的服务上访问他们的帐户,获取访问他们在其他服务(例如 Ebay)上的帐户所需的身份验证令牌,然后执行这些操作动作。

在某些情况下,您可以在没有帐户链接的情况下验证用户是谁。最简单的方法是要求用户使用 Google 登录(或以其他方式获得他们对您的服务的 Google 帐户授权)登录您的服务,然后使用 Google Sign In for Assistant 让智能助理验证您使用的 Google 帐户。如上,您可以在您的系统中查找此帐户并获得您对其他服务的授权。