Slack как входящий канал
Чтобы начать использовать Slack как входящий канал:
Шаг 1. Создание и настройка приложения
Перед созданием канала в JAICP нужно создать приложение в Slack и указать разрешения и параметры, требуемые для работы бота. В конце настройки приложение получит токены доступа, необходимые для работы со Slack API. Эти токены понадобятся при создании канала.
Создание приложения
- Авторизуйтесь в Slack и перейдите на сайт Slack API.
- Нажмите Create New App → From scratch.
- Укажите имя приложения.
- Выберите рабочее пространство, в которое вы хотите подключить бота, или создайте новое. Чтобы создать пространство, нажмите ссылку Sign into a different workspace и выполните нужные шаги.
- Сохраните изменения.
Настройка приложения
Проверьте, что на странице настроек приложения применяется старый дизайн. Если вы используете новый, нажмите Revert to the old design на панели слева.
Пример страницы Basic Information в старом дизайне.
На странице Basic Information вашего приложения разверните группу настроек Add features and functionality и выберите Bots.
Выберите раздел OAuth & Permissions на панели слева и укажите следующие параметры в блоке Scopes:
- Для Bot Token Scopes —
chat:write
,im:history
,users.profile:read
,files:read
. - Для User Token Scopes —
im:history
,im:read
,im:write
,users.profile:read
.
- Для Bot Token Scopes —
Выберите раздел App Home на панели слева.
Нажмите Edit в блоке Your App’s Presence in Slack и укажите:
- Display Name (Bot Name) — имя бота, которое будет видно пользователям.
- Default username — имя пользователя, которое будет применяться, когда пользователи будут упоминать бота в сообщениях.
В том же блоке настроек включите опцию Always Show My Bot as Online. Теперь ваш бот будет всегда онлайн.
Перейдите к блоку настроек Show Tabs и включите опцию Allow users to send Slash commands and messages from the messages tab, чтобы пользователи бота могли писать ему сообщения.
Выберите раздел OAuth & Permissions на панели слева и нажмите Install to Workspace, чтобы опубликовать приложение.
Разрешите приложению доступ к рабочему пространству.
Скопируйте токены из полей User OAuth Token и Bot User OAuth Token.
Выберите раздел Basic Information на панели слева и в блоке настроек App Credentials скопируйте токен Verification Token.
Шаг 2. Создание канала
Откройте проект вашего бота в JAICP.
На панели управления нажмите Каналы, затем Подключить канал в разделе Входящие.
В разделе Мессенджеры и соцсети выберите Slack.
Укажите настройки:
- Название — название канала.
- Токен — токен, скопированный из поля Bot User OAuth Token.
- Токен верификации — токен, скопированный из поля Verification Token.
- Токен приложения — токен, скопированный из поля User OAuth Token.
- Ветка — ветка проекта, которую вы хотите развернуть в канал, по умолчанию
master
. Вы также можете выбрать Git-тег или ввести хеш конкретного коммита. - Оператор — операторский канал, если вы хотите, чтобы бот мог переводить диалог на оператора. Операторский канал должен быть настроен и подключен к вашему проекту.
- Публикация — способ публикации проекта:
- Автоматически после каждого сохранения изменений в проект.
- Вручную с помощью кнопки Опубликовать в строке с описанием канала.
предупреждениеПубликацию сценария нужно выполнять перед запуском бота. На этом этапе происходит сборка бота, проверка синтаксиса сценариев и скриптов, а также проверка прохождения тестов.Нажмите Создать.
Дождитесь всплывающего окна с результатом публикации.
Шаг 3. Подключение бота
- На странице Каналы нажмите в строке с каналом Slack, затем Редактировать.
- Скопируйте значения полей Пример ссылки для подписки на события и Пример ссылки для подписки на интерактивные события.
- Перейдите на страницу вашего приложения на сайте Slack API.
- Выберите раздел Event Subscriptions на панели слева и включите опцию Enable Events.
- Вставьте в Request URL значение, скопированное из поля Пример ссылки для подписки на события.
- Разверните группу настроек Subscribe to bot events и добавьте обработку событий
message.im
. - Сохраните изменения.
- Выберите раздел Interactivity & Shortcuts на панели слева и включите опцию Interactivity.
- Вставьте в Request URL значение, скопированное из поля Пример ссылки для подписки на интерактивные события, и сохраните изменения.
Шаг 4. Тестирование бота
Откройте приложение Slack и перейдите в рабочее пространство, к которому вы подключили бота. Выберите бота в секции Приложения и отправьте ему приветственную/активационную фразу, предусмотренную вашим сценарием. После этого должен начаться ваш диалог с ботом.