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


Подключение бота к Slack

ОБЛАСТЬ ПРИМЕНЕНИЯ: ПАКЕТ SDK версии 4

Бот можно настроить для взаимодействия с людьми через приложение Slack. В этой статье описывается создание приложения Slack с помощью Slack, подключение бота к приложению Slack в Azure и тестирование бота в Slack.

В этой статье показано, как добавить канал Slack в бот в портал Azure. Дополнительные сведения об использовании пользовательского адаптера канала см. в разделе "Дополнительные сведения".

Необходимые компоненты

  • Подписка Azure. Если у вас еще нет подписки Azure, создайте бесплатную учетную запись, прежде чем начать работу.
  • Бот, опубликованный в Azure, который требуется подключить к Slack.
  • Доступ к рабочей области Slack с достаточными разрешениями для создания приложений и управления ими в https://api.slack.com/apps. Если у вас нет доступа к среде Slack, можно создать рабочую область.

Создание приложения в Slack

Сначала вы создадите приложение в Slack, которое создает сведения, необходимые для настройки канала Slack для бота в Azure.

  1. Перейдите на панель "Приложения" и войдите в учетную запись Slack.
  2. Выберите "Создать приложение" или "Создать приложение", если это первое приложение.
    1. На странице "Создание приложения" выберите "С нуля".
    2. На странице "Имя" и на странице "Имя рабочей области" введите имя приложения Slack.
    3. Чтобы выбрать рабочую область для разработки приложения, выберите рабочую область для приложения.
    4. Просмотрите и примите условия обслуживания API Slack.
    5. Выберите Создать приложение.

Добавление нового URL-адреса перенаправления

После создания приложения добавьте URL-адрес перенаправления в приложение.

  1. Выберите OAuth и разрешения.

  2. В результирующей области в разделе URL-адреса перенаправления выберите " Добавить новый URL-адрес перенаправления".

  3. В поле ввода введите один из следующих URL-адресов перенаправления и нажмите кнопку "Добавить".

    • Для глобального бота введите https://slack.botframework.com.
    • Для регионального бота введите следующий URL-адрес в соответствии с выбранным регионом:
    Область/регион URL-адрес перенаправления
    Европа https://europe.slack.botframework.com
    Индия https://india.slack.botframework.com
  4. Выберите " Сохранить URL-адреса".

Подписка на события бота

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

  1. Выберите подписки на события.

  2. В результирующей области установите переключатель "Включить события".

  3. Для URL-адреса запроса введите один из следующих URL-адресов запроса, где {bot-name} отображается отображаемое имя ресурса Azure Bot без фигурных скобок.

    • Для глобального бота введите https://slack.botframework.com/api/Events/{bot-name}.
    • Для регионального бота введите следующий URL-адрес в соответствии с выбранным регионом:
    Область/регион Запросить URL-адрес
    Европа https://europe.slack.botframework.com/api/Events/{bot-name}
    Индия https://india.slack.botframework.com/api/Events/{bot-name}
  4. В разделе "Подписка на события бота" выберите "Добавить событие пользователя бота", а затем подпишитесь на события. Например:

    • member_joined_channel
    • member_left_channel
    • message.channels
    • message.groups
    • message.im
    • message.mpim
  5. Выберите Сохранить изменения.

Включение отправки сообщений боту пользователями

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

  1. Выберите "Главная" приложения.
  2. В результирующей области в разделе "Показать вкладки" на вкладке "Сообщения" можно разрешить пользователям отправлять команды и сообщения косой черты на вкладке "Сообщения".

Добавление и настройка интерактивных сообщений

При необходимости включите интерактивные сообщения.

  1. Выберите "Интерактивность" и "Сочетания клавиш".

  2. Для URL-адреса запроса:

    • Для глобального бота введите https://slack.botframework.com/api/Actions.
    • Для регионального бота введите следующий URL-адрес в соответствии с выбранным регионом:
    Область/регион Запросить URL-адрес
    Европа https://europe.slack.botframework.com/Actions
    Индия https://india.slack.botframework.com/Actions
  3. Нажмите кнопку Сохранить изменения.

Копирование сведений о приложении

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

  1. Выберите основные сведения.
  2. В результирующей области в разделе "Учетные данные приложения" найдите идентификатор клиента, секрет клиента и секрет подписи.
  3. Теперь выберите OAuth и Разрешения.
  4. В результирующей области найдите раздел "Области ". Запишите области маркера бота для приложения.

Настройка бота в Azure

Чтобы выполнить этот шаг, вам потребуется учетные данные приложения Slack на предыдущем шаге.

  1. Откройте портал Azure.

  2. Откройте колонку ресурсов Azure Bot для бота.

  3. Откройте каналы и выберите Slack.

  4. В разделе "Конфигурация канала Slack" введите сведения, скопированные на предыдущих шагах.

    1. Введите необходимые учетные данные Slack для приложения, созданного в Slack.
    2. При необходимости укажите URL-адрес целевой страницы, на который пользователи Slack будут перенаправлены после добавления бота.
    3. Значения URL-адреса перенаправления OAuth и URL-адреса запроса подписки на события должны соответствовать значениям, введенным в Slack, чтобы добавить URL-адрес перенаправления и подписаться на события бота.
  5. Выберите Применить.

  6. Вы перенаправляетесь в Slack, чтобы завершить установку приложения Slack.

    • Если запрошенные разрешения выглядят правильно, нажмите кнопку "Разрешить".

Теперь бот настроен для взаимодействия с пользователями в Slack. Пользователи в рабочей области теперь могут взаимодействовать с ботом с помощью приложения Slack.

Тестирование приложения в Slack

  1. Войдите в рабочую область Slack, где вы установили приложение.
  2. В разделе "Приложения" выберите свое приложение.
  3. В результирующей области отправьте сообщения в приложение.

Дополнительная информация:

Примечание.

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

Дополнительные сведения о поддержке Slack для ботов см. в документации по API Slack:

Подключение бота к Slack с помощью адаптера Slack

Кроме того, канал, доступный в azure AI Служба Bot для подключения бота к Slack, репозиторий Сообщества Bot Builder определяет настраиваемый адаптер канала для Slack.

  • Сведения о адаптере C# см . в разделе "Адаптеры" в репозитории сообщества .NET.
  • Сведения о адаптере JavaScript см . в разделе "Адаптеры" в репозитории сообщества JavaScript.