Отвечайте на команды с косой чертой как в приложении Google Chat.

На этой странице объясняется, как настроить косую черту и отвечать на нее в приложении Google Chat.

Команда косой черты — это распространенный способ вызова приложения чата и взаимодействия с ним. Слэш-команды также помогают пользователям находить и использовать ключевые функции приложения чата.

Чтобы использовать команду с косой чертой, пользователи вводят косую черту ( / ), а затем короткую текстовую команду, например /about чтобы получить информацию о приложении Chat. Пользователи могут найти доступные команды с косой чертой, введя косую черту в Google Chat, после чего откроется окно со списком доступных команд для приложения Chat:

Окно команды слэша
Рис. 1. Окно, которое появляется, когда пользователи вводят косую черту в Google Chat.

Чтобы решить, следует ли вам настраивать команды с косой чертой, а также понять, как проектировать взаимодействие с пользователем, см. раздел «Определение всех циклов взаимодействия пользователя» .

Слэш-команды с личными ответами

Когда пользователь отправляет сообщение, содержащее косую черту, это сообщение видно только пользователю и приложению Chat. Если вы настроили приложение чата для добавления в пространства с несколькими людьми, вы можете рассмотреть возможность ответа на команду косой черты конфиденциально, чтобы сохранить конфиденциальность взаимодействия между пользователем и приложением чата.

Например, чтобы узнать о приложении Chat, обнаруженном в пространстве, пользователи могут использовать такие команды, как /about или /help . Чтобы не уведомлять всех остальных в этом пространстве, приложение Chat может ответить конфиденциально, предоставив информацию о том, как использовать приложение Chat и получить поддержку.

Предварительные условия

Node.js

Приложение Google Chat с интерактивными функциями. Чтобы создать интерактивное приложение чата с использованием службы HTTP, выполните это краткое руководство .

Скрипт приложений

Приложение Google Chat с интерактивными функциями. Чтобы создать интерактивное приложение чата с помощью Apps Script, выполните это краткое руководство .

Питон

Приложение Google Chat с интерактивными функциями. Чтобы создать интерактивное приложение чата с использованием службы HTTP, выполните это краткое руководство .

Ява

Приложение Google Chat с интерактивными функциями. Чтобы создать интерактивное приложение чата с использованием службы HTTP, выполните это краткое руководство .

Настройте команду косой черты

В этом разделе объясняется, как выполнить следующие шаги для настройки команды косой черты:

  1. Создайте имя для своей косой черты.
  2. Настройте команду косой черты в API Google Chat.

Назовите свою косую черту

Имя команды с косой чертой — это то, что пользователи вводят в сообщении чата для вызова приложения чата. Под именем также отображается краткое описание, подсказывающее пользователям, как использовать команду:

Название и описание команды слэш
Рисунок 2. Имя и описание команды с косой чертой.

При выборе имени и описания для вашей косой черты примите во внимание следующие рекомендации:

  • Чтобы назвать вашу косую черту:

    • Используйте короткие, описательные и действенные слова или фразы, чтобы сделать команды понятными и простыми для пользователя. Например, вместо /createAReminder используйте /remindMe .
    • Если ваша команда содержит более одного слова, помогите пользователям прочитать команду, используя все строчные буквы для первого слова, а затем заглавную первую букву дополнительных слов. Например, вместо /updatecontact используйте /updateContact .
    • Подумайте, использовать ли для вашей команды уникальное или общее имя. Если ваша команда описывает типичное взаимодействие или функцию, вы можете использовать общее имя, которое пользователи узнают и ожидают, например /settings или /feedback . В противном случае попробуйте использовать уникальные имена команд, поскольку, если имя вашей команды одинаково для других приложений чата, пользователю придется фильтровать похожие команды, чтобы найти и использовать вашу.
  • Чтобы описать вашу косую черту:

    • Описание должно быть кратким и понятным, чтобы пользователи знали, чего ожидать при вызове команды.
    • Сообщите пользователям, есть ли какие-либо требования к форматированию команды. Например, если вы создаете команду /remindMe , для которой требуется текст аргумента, установите для описания что-то вроде Remind me to do [something] at [time] .
    • Сообщите пользователям, отвечает ли приложение Chat всем в группе или лично пользователю, который вызывает команду. Например, команду /about можно описать как Learn about this app (Only visible to you) .

Настройте свою косую черту в API Google Chat.

Чтобы создать косую черту, вам необходимо указать информацию о команде в конфигурации вашего приложения Chat для Google Chat API.

Чтобы настроить косую черту в API Google Chat, выполните следующие действия:

  1. В консоли Google Cloud выберите «Меню» > «API и службы» > «Включенные API и службы» > «API Google Chat».

    Перейдите на страницу API Google Chat.

  2. Нажмите Конфигурация .

  3. В разделе «Команды косой черты» нажмите «Добавить команду косой черты» .

  4. Введите имя, идентификатор команды и описание команды:

    1. Имя: отображаемое имя команды и вводимый пользователем текст для вызова вашего приложения. Должен начинаться с косой черты, содержать только текст и может содержать до 50 символов.
    2. Описание: текст, описывающий, как использовать и форматировать команду. Описания могут содержать до 50 символов.
    3. Идентификатор команды: число от 1 до 1000, которое ваше приложение Chat использует для распознавания команды косой черты и возврата ответа.
  5. Необязательно: если вы хотите, чтобы приложение Chat отвечало на команду диалоговым окном , установите флажок Открыть диалоговое окно.

  6. Нажмите Сохранить .

Команда косой черты теперь настроена для приложения Chat.

Ответ на команду косой черты

Когда пользователи создают сообщение чата, содержащее косую черту, ваше приложение чата получает событие взаимодействия MESSAGE . Полезная нагрузка события содержит объекты slashCommand и slashCommandMetadata . Эти объекты содержат сведения о команде, использованной в сообщении (включая идентификатор команды), чтобы вы могли вернуть соответствующий ответ.

Личное сообщение для приложения Cymbal Labs Chat. В сообщении говорится, что приложение Chat было создано Cymbal Labs, и содержится ссылка на документацию и ссылку для связи со службой поддержки.
Приложение чата отвечает в частном порядке на команду косой черты /help , чтобы объяснить, как получить поддержку.

В следующем коде показан пример приложения Chat, которое отвечает на команду косой черты /about , обрабатывая события взаимодействия MESSAGE и определяя, содержит ли сообщение соответствующий идентификатор команды. Если сообщение содержит идентификатор команды, приложение «Чат» возвращает личное сообщение:

Node.js

узел/аватар-приложение/index.js
// Checks for the presence of a slash command in the message.
if (event.message.slashCommand) {
  // Executes the slash command logic based on its ID.
  // Slash command IDs are set in the Google Chat API configuration.
  switch (event.message.slashCommand.commandId) {
    case ABOUT_COMMAND_ID:
      return res.send({
        privateMessageViewer: event.user,
        text: 'The Avatar app replies to Google Chat messages.'
      });
  }
}

Скрипт приложений

приложения-скрипт/аватар-приложение/аватар-app.gs
// Checks for the presence of a slash command in the message.
if (event.message.slashCommand) {
  // Executes the slash command logic based on its ID.
  // Slash command IDs are set in the Google Chat API configuration.
  switch (event.message.slashCommand.commandId) {
    case ABOUT_COMMAND_ID:
      return {
        privateMessageViewer: event.user,
        text: 'The Avatar app replies to Google Chat messages.'
      };
  }
}

Питон

python/аватар-приложение/main.py
# Checks for the presence of a slash command in the message.
if "slashCommand" in request_json["message"]:
  # Executes the slash command logic based on its ID.
  # Slash command IDs are set in the Google Chat API configuration.
  if request_json["message"]["slashCommand"]["commandId"] == ABOUT_COMMAND_ID:
    return {
      "privateMessageViewer": request_json["user"],
      "text": 'The Avatar app replies to Google Chat messages.'
    }

Ява

java/аватар-приложение/src/main/java/App.java
// Checks for the presence of a slash command in the message.
if (body.getAsJsonObject("message").has("slashCommand")) {
  // Executes the slash command logic based on its ID.
  // Slash command IDs are set in the Google Chat API configuration.
  JsonObject slashCommand = body.getAsJsonObject("message").getAsJsonObject("slashCommand");
  switch (slashCommand.get("commandId").getAsString()) {
    case ABOUT_COMMAND_ID:
      Message aboutMessage = new Message();
      aboutMessage.setText("The Avatar app replies to Google Chat messages.");
      aboutMessage.setPrivateMessageViewer(new User()
        .setName(body.getAsJsonObject("user").get("name").getAsString()));
      response.getWriter().write(gson.toJson(aboutMessage));
      return;
  }
}

Задайте для ABOUT_COMMAND_ID идентификатор команды, который вы указали при настройке команды косой черты в Chat API . Чтобы протестировать этот код, см. раздел Тестирование интерактивных функций для приложений Google Chat .