Поделиться через


Создание подсказок

Подсказки — это команды, которые предоставляются пользователям в чате Microsoft Teams.

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

Существует два типа подсказок, которые можно использовать:

Начальные запросы

Начальные подсказки помогают пользователям начать беседу с ботом.

Снимок экрана: начальный запрос на рабочем столе.

Рекомендуемые действия

Предлагаемые действия помогают пользователям продолжить беседу с ботом.

Действия, предлагаемые ботом.

Начальные запросы

Примечание.

  • Бот может использовать начальный запрос или приветственное сообщение. Если бот использует начальные подсказки, убедитесь, что бот не отправляет приветственное сообщение.

  • Начальные запросы поддерживаются только для чат-ботов с поддержкой "один на один".

Чтобы включить начальные запросы, определите commands свойство в манифесте приложения бота. Каждая команда содержит title и description. — title это запрос, а — description описание того, что выполняют пользователи. Когда пользователь выбирает начальный элемент командной строки, title в поле создания заполняется элемент запроса. Чтобы определить commands в манифесте приложения, можно либо использовать портал разработчика , либо добавить их вручную в манифест приложения.

Чтобы создать начальные запросы с помощью портала разработчика, выполните следующие действия.

  1. Откройте Teams и выберите Приложения в левой области. На странице Приложения найдите портал разработчика и нажмите кнопку Открыть.

    Снимок экрана: добавление портала разработчика в клиент Teams.

  2. На портале разработчика выберите вкладку Приложения . Если у вас нет существующего пакета приложения, вы можете создать или импортировать существующее приложение. Дополнительные сведения см. в разделе Портал разработчика для Teams.

  3. Перейдите на вкладку Приложения , выберите Функции приложений в левой области, а затем выберите Боты.

  4. В разделе Команды выберите Добавить команду.

    Снимок экрана: добавление команды для бота на портале разработчика.

  5. Введите значения для следующих полей:

    • Команда: отображается как запрос для бота.
    • Описание. Краткое объяснение назначения команды.
  6. Выберите личный область, а затем нажмите кнопку Добавить. Это определяет, где должно отображаться меню команд.

    Снимок экрана: добавление команды, описания и областей для бота.

Примечание.

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

Ниже показан пример подсказок.

Начальные подсказки снова появляются во всплывающем элементе Просмотр Запросы над полем создания во время беседы и позволяют пользователям просматривать запросы при взаимодействии с ботом.

Снимок экрана, на котором показан начальный запрос во время беседы.

Команды меню необходимо обрабатывать в коде бота аналогично обработке любого сообщения от пользователей. Вы можете обрабатывать команды меню в коде бота, анализируя @Mention часть текста сообщения.

Обработка commands в боте

Боты в группе или канале отвечают только @mentioned в сообщении. Текст каждого сообщения, полученного ботом в группе или области канала, содержит его имя. Перед обработкой возвращаемой команды анализ сообщений должен обрабатывать сообщение, полученное ботом и содержащее его имя.

Примечание.

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

Вы можете проанализировать @Mention часть текста сообщения с помощью статического метода, предоставленного Microsoft Bot Framework. Это метод класса с Activity именем RemoveRecipientMention.

Код C# для анализа @Mention части текста сообщения выглядит следующим образом:

// Remove recipient mention text from Text property.
// Use with caution because this function is altering the text on the Activity.
var modifiedText = turnContext.Activity.RemoveRecipientMention();

Рекомендуемые действия

Предлагаемые действия помогают пользователям с идеями о том, что следует спросить дальше, на основе предыдущего ответа или беседы. Бот должен предлагать пользователю контекстные предложения, а не универсальные или фиксированные. Вы можете использовать большую языковую модель бота (LLM) для создания до трех предложений вместе с ответами. Затем вы можете извлечь эти предложения и представить их в качестве параметров для выбора пользователем.

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

Примечание.

  • SuggestedActions поддерживаются только для чат-ботов с текстовыми сообщениями и адаптивными карточками.
  • SuggestedActions не поддерживаются для чат-ботов с вложениями для любого типа беседы.
  • imBack — это единственный поддерживаемый тип действия, и Teams отображает до трех предлагаемых действий.

Чтобы добавить предлагаемые действия в сообщение, укажите список карта объектов действий, которые представляют кнопки, отображаемые пользователю для sugestedActions свойства объекта действия.

Ниже приведен пример реализации и реализации предлагаемых действий.

{
  "type": "message",
  "from": {
    "id": "12345678",
    "name": "sender's name"
  },
  "conversation": {
    "id": "abcd1234",
    "name": "conversation's name"
  },
  "recipient": {
    "id": "1234abcd",
    "name": "recipient's name"
  },
  "text": "What are the tasks for the day.",
  "inputHint": "expectingInput",
  "suggestedActions": {
    "actions": [
      {
        "type": "imBack",
        "title": "Create a new query identifying overdue tasks",
        "value": "Create a new query identifying overdue tasks"
      },
      {
        "type": "imBack",
        "title": "Create a new work item for this feature",
        "value": "Create a new work item for this feature"
            }
        ]
    },
  "replyToId": "5d5cdc723"
}

Ниже показан пример предлагаемых действий.

Пример кода

Название примера Описание .NET Node.js
Бот для запуска запросов В этом примере кода описывается реализация начальных запросов для бота через commands свойство в манифесте приложения бота. Просмотр Просмотр

См. также