Slack

Общее

В канале Slack создается приложение-бот, который поддерживает всю основную функциональность - ответы из баз знаний, поддержка кнопок (сценарии, контекстные вопросы, оценка), передачу файлов.

Также бота можно добавить в канал, там он тоже будет отвечать. Можно создать несколько каналов типа Slack в системе AutoFAQ.

Настройка приложения в Slack

Описание шага

Скриншоты

Описание шага

Скриншоты

1

Создайте приложение в Slack, перейдя по ссылке  https://api.slack.com/apps

2

Перейдите в меню в пункт Event Subscriptions.

Включите подписку “Enable Events“ → On и в поле введите следующий url: https://<host>/slack-adapter/api/webhook

Например, для облачного стенда ссылка примет вид: https://chat.autofaq.ai/slack-adapter/api/webhook

После окончания ввода адреса Slack автоматически проверит подключение и если все в порядке, то покажет значок “Verified” над полем. Иначе Slack покажет ошибку подключения к указанному url, нужно проверить, включен ли на сервере адаптер.

 

В “Subscribe to bot events“ выбираем следующие события:

  • message.channels

  • message.groups

  • message.im

  • message.mpim

 

Обязательно нажимаем кнопку Save Changes.

3

Переходим в левом меню в пункт OAuth & Permissions, открываем блок Scopes.

Для “Bot Token Scopes” добавляем / проверяем наличие следующих разрешений:

  • app_mentions:read

  • channels:history

  • channels:read

  • chat:write

  • files:read

  • files:write

  • groups:history

  • groups:read

  • im:history

  • im:read

  • im:write

  • mpim:history

  • mpim:read

  • remote_files:write

  • users:read

  • users:read.email

 

Для User Token Scopes добавляем разрешения ниже:

  • users:read

  • users:read.email

4

На этой же странице в самом верху устанавливаем приложение, нажимаем кнопку Install App to Workspace.

Slack попросит подтвердить выдачу всех разрешений, нажимаем Allow.

5

Переходим в меню в пункт App Home и делаем так, чтобы бот всегда показывался online.

Always Show My Bot as Online выставляем в On.

 

Для того, чтобы разрешить отправку личных сообщений активируем переключатель “Allow users to send Slash commands and messages from the messages tab“.

6

В меню выбираем пункт Interactivity & Shortcuts и включаем эту опцию, чтобы работали кнопки.

После включения в поле вводим адрес: https://<host>/slack-adapter/api/interactiveEndpoint

 

Например, для облачного стенда получится адрес https://chat.autofaq.ai/slack-adapter/api/interactiveEndpoint

 

Нажимаем кнопку Save Changes.

Создание канала AutoFAQ

Создайте новый канал типа Slack на странице Настройки - Каналы. Откроется окно для заполнения необходимых полей. В таблице ниже показано, чем заполнять все поля.

Поле

Как заполнять

Настройки бота в Slack

Поле

Как заполнять

Настройки бота в Slack

1

Название канала

Укажите любое название, под ним будет создан канал.

 

2

Адрес сервера Slack API

Оставьте по умолчанию или заполните адресом установки Slack, если он отличается от стандартного.

https://slack.com/api

3

App ID

Берется из настроек приложения Slack, пункт Basic Information → App Credentials → App ID

4

Workspace ID

Для того, чтобы его узнать, нужно:

  • открыть в браузере любое сообщение из приложения Slack

  • из адресной строки скопировать первое значение, идущее после https://app.slack.com/client/

  • вставить это значение в поле Workspace ID

 

5

Bot user OAuth Access Token

Берется из настроек приложения Slack, пункт OAuth & Permissions → Tokens for Your Workspace → Bot User OAuth Access Token.

6

Bot user ID

Последний параметр копируется из формы проверки доступности канала.

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

  • Появляется сообщение об успешном создании канала.

  • Нажимаем кнопку “Проверить подключение”.

  • Из модального окна в случае успешной проверки копируем BotUserId.

  • Нажимаем кнопку “Продолжить”.

  • Вставляем его в последнее незаполненное поле на странице и нажимаем кнопку Сохранить.

7

 

Пример настроенного канала

Проверка работоспособности бота

 

После всех выполненных выше действий бот и канал успешно созданы. Проверяем, что он работоспособен.

Для этого в приложении Slack открываем список приложений Apps и ищем нашего бота по имени (имя Slack).

Выбираем нужного бота и пишем сообщение для проверки.

Дополнительные настройки канала

Для канала типа Slack предусмотрены следующие дополнительные настройки.

 

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

 

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