链接到您的 Actions (Dialogflow)

您可以为每个操作生成一个可直接链接至特定操作的网址。用户在网页或移动浏览器中点击 Google 助理链接(以前称为“操作链接”)将被定向到其设备上的 Google 助理,在那里他们将直接与相应的 Action 互动。

下面列举了一些实用的 Google 助理链接:

  • 将用户链接到方法指南网站上的语音指导说明。
  • 通过“获取帮助”将用户与客户服务体验相关联页面。
  • 将用户与更新 intent 相关联,以便他们能够选择接受您的未来更新。

如需为 Action 生成网址,请执行以下操作:

  1. Actions 控制台中,前往 Develop >(开发)>操作
  2. 点击要为其生成链接的操作。
  3. 链接部分下,启用 Would you like to enable a 网址 for this Action
  4. 输入链接标题。此标题应包含一个动词,用于说明 Action 将做什么。例如,如果您的 Action 将用户引导到交易流程中以购买音乐会门票,那么有用的链接标题为“购买音乐会门票”。
  5. 点击保存

您可以复制提供的网址,并在您想要将用户定向到此特定 Action 的任意位置引用该网址。

Google 助理链接可以选择在网址中包含 intent 和参数。Google 会根据网址中指定的 intent 类型处理这些参数。

Google 助理链接网址的一般语法如下:

https://assistant.google.com/services/invoke[/$action_id][?intent=$intent&param.$param=$value][&$utm_param=$utm_value]

下表介绍了您可以设置的网址参数:

网址参数 说明
$action_id 操作的数字标识符。
$intent 内置或自定义 intent 的全名。
$param Action 软件包中指定的 intent 参数的全名。
$value $param 中声明的类型(在 操作包。
$utm_param 一个或多个 UTM 参数类型的列表。有效值包括: utm_sourceutm_mediumutm_campaignutm_termutm_content
$utm_value UTM 参数的字符串值。

如果 Google 助理链接包含 内置 intent(该 intent 以 actions.intent.* 开头),Google 会尝试提取网址中的所有内置 intent 参数,并将其传递给您的 Action。系统会剥离 Google 不能理解为内置 intent 参数的所有参数。

对于对话型 Action,Google 会将这些参数作为 AppRequest 消息的一部分发送到您的执行方式。

以下示例展示了如何指定一个 Google 助理链接网址,其中包含具有单个 intent 参数的内置 intent:

https://assistant.google.com/services/invoke/uid/0000008ddd7eabec?intent=actions.intent.GET_HOROSCOPE&param.astrologySign=%22cancer%22

对于自定义 intent,Google 只会提取由您的 Action 作为 intent 一部分定义的参数,并舍弃任何其他参数。

以下示例展示了如何指定包含自定义 intent 的 Google 助理链接网址:

https://assistant.google.com/services/invoke/uid/0000001f575305a0?intent=NEWS_UPDATE_DEEP_LINK&param.topic=sports

对于上述示例网址,Google 会在 AppRequest 中添加 JSON 对象,如下所示 如下:

argument {
  name: ‘topic’,
  raw_text: ‘sports’,
  text_value: ‘sports’,
}

如果您未在 Google 助理链接中指定 intent,Google 会默认按照以下行为关联到您的 Action 的 MAIN intent (actions.intent.MAIN):

  • 如果您未在 Google 助理链接中明确启用 MAIN intent,Google 会触发不含任何参数的主 intent,这与“Talk to app_name”的行为类似。
  • 如果您明确启用了 MAIN intent,Google 会将这些参数传递给您的 Action。

以下示例展示了如何在没有 intent 的情况下指定 Google 助理链接网址:

https://assistant.google.com/services/invoke/uid/000000d139bbc4d4

UTM 参数是 Google 在用户点击 Google 助理链接后向你的 Action 发送的字符串,你随后可以将其用于分析。

Google 向您的 Action 发送的 UTM 参数包括:

  • utm_source
  • utm_medium
  • utm_campaign
  • utm_term
  • utm_content

以下示例展示了如何指定包含 UTM 参数的 Google 助理链接网址:

https://assistant.google.com/services/invoke/uid/000000d139bbc4d4?utm_source=Google&utm_medium=email&utm_campaign=holiday+sale

对于上面的示例网址,Google 在 AppRequest 消息中添加了以下参数:

argument {
  name: ‘utm_source’,
  raw_text: ‘Google’,
  text_value: ‘Google’,
}
argument {
  name: ‘utm_medium’,
  raw_text: ‘email’,
  text_value: ‘email’,
}
argument {
  name: ‘utm_campaign’,
  raw_text: ‘holiday sale’,
  text_value: ‘holiday sale’,
}

你可以通过模拟器或设备测试任何 intent(主 intent 或自定义 intent,带或不带参数)的 Google 助理链接。

如需测试 Google 助理链接,请执行以下操作:

  1. 在控制台中启用 Google 助理链接。
  2. 使用您创建 Actions on Google 项目时所用的账号登录 Google 助理。
  3. 创建可点击的 Google 助理链接(通过电子邮件、聊天、文档等方式)。
  4. 在内置 Google 助理的设备上,点击上一步中创建的链接。

确认 Google 助理关联按预期运行后,您需要重新部署您的 Action,才能向用户提供该链接。

限制和最佳做法

请注意,由于你的 Google 助理链接网址现在可以在目录或其他 Google 服务之外进行分发和引用,因此请注意以下限制和最佳做法:

  • 请确保继续支持你所有的 Google 助理链接。如果您分发的 Google 助理链接后来坏了,您的 Actions 项目可能会被标记为运行状况不佳并被移除。
  • 发布链接表示支持来自不受信任的来源的触发。对于任何关联的 Action,你必须先向用户明确确认,然后才能执行任何“实际操作”。例如,关闭智能家电的 Action 应该提示用户“确定要关闭 $applianceName 吗?”

    在这种情况下,“现实世界中的操作”是指影响用户的服务、数据、设备、网络、计算机或 API 的任何操作。例如,发送电子邮件、执行交易、更改智能家居设备的状态、创建订阅或更新某项内容。