npm 包 assistant-google 使用教程

阅读时长 4 分钟读完

Google Assistant 是 Google 所开发的语音助手,能够对话、搜索、控制智能家居等等。在开发 Google Assistant 的过程中,我们需要用到 assistant-google 这个 npm 包。本文将介绍如何正确使用该 npm 包。

前置条件

  • 必须要有一个 Google Cloud Platform (GCP) 的账号
  • GCP 中创建的项目并且启用 Google Assistant API
  • 拥有项目的 Service Account 模拟器
  • 拥有项目的 OAuth 2.0 客户端 ID

安装

使用 npm 包的前提是我们需要在项目中使用 npm。安装 assistant-google 的命令如下:

初始化

我们需要使用 assistant 核心 (import {conversation} from '@assistant/conversation';) 来初始化 Google Assistant 的应用。初始化的代码如下:

初始化需要传入以下参数:

  • clientId:OAuth 2.0 客户端 ID
  • clientSecret:OAuth 2.0 客户端密钥
  • debug:是否打印调试信息
  • init:初始化的回调函数
  • fallback:默认为 true。可以让应用在处理完问题后自动结束。

事件

assistant-google 包提供了很多事件,例如对话解析、AudioPlayer 状态、场景选择等等。开发人员可以根据自己的需求注册监听这些事件。下面是 assistant 能够识别的事件列表:

  • actions_intent_DELIVERY_ADDRESS:请求用户的送货地址。如果您在应用程序中使用此 intent,则用户必须授权 Google 以便您查看和使用其送货地址。
  • actions_intent_EXCLUSIVE_GATEWAY:多场景下分支传送。assistant 将创建一个分叉,然后根据 select 上的分支路径或下一个任务来指定后续流程的路径。
  • actions_intent_MEDIA_STATUS:MediaPlayer 状态变化事件。
  • actions_intent_NO_INPUT:如果用户提出提问并且 assistant 长时间未听到音频输入,之后将触发该事件。
  • actions_intent_PERMISSION:访问某些资源需要用户授权的情况使用此 intent。例如,应用程序可能需要访问日历事件或用户的联系人,这就需要让用户授权。
  • actions.intent.PLACE:请求用户的位置。如果您在应用程序中使用此 intent,则用户必须授权 Google 以便您查看和使用其位置信息。
  • actions_intent_OPTION:让用户从指定的选项中选择一个选项。

例如,我们监听 actions_intent_OPTION 事件:

-- -------------------- ---- -------
----------------------------------------- ---- -- -
  ----- ----- - -------------------
  ----- ------ - ----------------------
  -- ------- --- -------- -
    ------------------------
  - ---- -- ------- --- --------- -
    ------------------------
  - ---- -
    ------------------------
  -
---

响应

assistant-google 所能够响应的种类有:

  • SimpleResponse:发送文字信息
  • BasicCard:发送图片、描述、按钮、链接等信息
  • List:发送带有标题、图像和描述的项目列表
  • Carousel:向用户提供带有标题、图像、描述和按钮的卡片
  • Table:显示表格
  • Permission:请求用户给予您访问某些权限
  • Confirmation:显示确认提示
  • DeepLink:向应用发送一个深度链接

这些响应类型可以自由组合,以满足您的需求。

例如,我们使用 SimpleResponse 发送文字信息:

总结

在本文中,我们介绍了如何使用 assistant-google 这个 npm 包开发 Google Assistant 应用。我们通过初始化、事件和响应等多个方面详细讲解了该包的使用。希望这篇文章能够帮助您更好地开发 Google Assistant 语音应用,提供极佳用户体验。

来源:JavaScript中文网 ,转载请注明来源 https://www.javascriptcn.com/post/600671a230d09270238223ce

纠错
反馈