以 Google Chat 扩展应用的身份响应快捷命令

本页介绍了如何为 Google Chat 应用设置和响应快捷命令。

快捷命令是用户调用和与 Chat 应用互动的方式。如需使用快捷命令,请在 Chat 聊天室或对话中点击“Google Workspace 工具”图标 打开集成菜单,然后选择名称不以斜线 (/) 开头的应用命令。通过选择快捷命令,系统会直接调用 Chat 应用,而无需用户进一步输入,从而实现快速的用户互动。

用户还可以通过斜杠命令调用 Chat 应用。如需了解相关步骤,请参阅响应正斜线命令。与斜杠命令相比,快捷命令在 Chat 界面中的格式更易于用户理解,用户选择快捷命令后,系统会立即调用该命令,而无需用户记住或输入斜杠命令的名称。

包含快捷命令的集成菜单
图 1:包含 Chat 应用快捷命令的集成菜单。

在 Google Chat API 中设置快捷命令

如需创建快捷命令或将任何现有斜杠命令更新为快捷命令,您必须在 Chat 应用的 Google Chat API 配置中指定相应命令的相关信息。

如需在 Google Chat API 中配置快捷命令,请完成以下步骤:

  1. 在 Google Cloud 控制台中,依次点击“菜单”图标 > API 和服务 > 已启用的 API 和服务 > Google Chat API

    前往“Google Chat API”页面

  2. 点击配置

  3. 命令下,点击添加命令

  4. 为该命令输入命令 ID、名称、说明和命令类型:

    • 命令 ID:一个介于 1 到 1000 之间的数字,聊天应用使用该数字来识别命令并返回响应。
    • 名称:命令的显示名称。名称最多可包含 50 个字符,并且可以包含特殊字符。
      • 使用简短、具描述性且切实可行的字词或短语,让用户清楚地了解命令。例如,对于用于修改联系人记录的命令,请使用更新联系人
    • 说明:用于说明命令用途的文本。说明最多可包含 50 个字符,并且可以包含特殊字符。
      • 说明应简洁明了,以便用户知道在调用该命令时会出现什么情况。
      • 让用户知道 Chat 应用是回复聊天室中的所有人,还是私下回复发出相应指令的用户。例如,对于快捷命令简介,您可以将其描述为了解此应用(仅对您可见)
    • 命令类型:选择快速命令
  5. 可选:如果您希望 Chat 应用使用对话框响应该命令,请选中打开对话框复选框。

  6. 点击保存

现在,Chat 应用的快捷命令已配置完毕。

响应快速命令

当用户调用快捷命令时,您的 Chat 应用会收到 APP_COMMAND 互动事件。事件载荷包含 appCommandMetadata 对象,其中包含有关所调用命令的详细信息(包括命令 ID 和命令类型),以便您返回适当的响应。

以下代码展示了一个 Chat 应用示例,该应用通过处理 APP_COMMAND 互动事件并检测事件载荷是否包含匹配的命令 ID,来回复 Help 命令。如果事件载荷包含命令 ID,Chat 应用会返回私信:

Apps 脚本

// Handle the APP_COMMAND event type.
function onAppCommand(event) {
  // Executes the command logic based on its ID.
  // Command IDs are set in the Google Chat API configuration.
  switch (event.appCommandMetadata.appCommandId) {
    case HELP_COMMAND_ID:
      return {
        privateMessageViewer: event.user,
        text: 'The Avatar app replies to Google Chat messages.'
      };
  }
}

使用您在配置 Chat API 中的快捷命令时指定的命令 ID 设置 HELP_COMMAND_ID。如需测试此代码,请参阅测试 Google Chat 应用的交互功能。 如需在 Chat 中测试快捷命令,请点击“Google Workspace 工具”图标 打开集成菜单,然后选择您的快捷命令。

将现有的斜杠命令转换为快捷命令

如需将现有斜杠命令修改为快捷命令,请在 Google Chat API 中修改斜杠命令,方法是将命令类型斜杠命令更改为快捷命令

当用户调用快速命令时,您的 Chat 应用会收到 APP_COMMAND 互动事件,而不是为斜杠命令发送的 MESSAGE 互动事件。更新 Chat 应用以处理此互动事件类型,方法是读取包含 appCommandMetadata 对象的事件载荷,其中包含有关所调用快捷命令的详细信息。请参阅响应快捷指令