Интеграция со Slack

Если ваша команда использует чат, например, Slack, для общения по проектам, то вам пригодится возможность интеграции с Devprom. По умолчанию настройки интеграции (мэппинга) позволяют подключить чат-бота, который:

  • Уведомит команду о новой заявке или пожелании, о статусе сборки, о результатах тестирования и т.п.;
  • Сообщит участнику проекта о назначенном пожелании или задаче;
  • Уведомит исполнителя, автора или наблюдателей о новом комментарии к пожеланию или задаче, добавленном в Devprom;
  • Добавит в чат подробное описание задачи или пожелания, если в тексте любого сообщения упомянуть его идентификатор, например, I-123 или T-234.

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

Запуск интеграции

Сперва вам нужно зарегистрировать бота в настройках вашего Slack-аккаунта. Для этого необходимо перейти к настройке приложений (Apps & integrations), затем перейти к настройке собственных интеграций (Custom Integrations), перейти к ботам (Bots) и добавить новую конфигурацию (Add Configuration), где задать обычные параметры для бота и взять API Token.

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

Все, интеграция готова!

Настройка мэппинга

Мы уже настроили взаимодействие Devprom и Slack для того, чтобы реализовать сценарии, описанные в самом начале. Однако, вы можете добавить гораздо больше сценариев, интересных и полезных именно для вашей команды. Структура мэппинга повторяет запросы, которые передаются в Slack API для каждой из сущностей, например, пожеланий, задач, сборок и т.п.

Пользователи Devprom сопоставляются с пользователями Slack по email. Таким образом, можно отправлять сообщения в канал конкретного пользователя Slack.

В полях запроса вы можете использовать произвольный текст и подстановку значений атрибутов, например, "Вышла новая сборка %Caption", где %Caption будет заменено на название (номер) сборки. Все просто!

Вы можете отправлять разные запросы, в результате создания артефактов (add) или их изменения (update). При изменении артефакта добавляется атрибут "Changed", содержащий список изменившихся атрибутов. Вы можете указать дополнительные условия (filter), которые будут проверены перед отправкой запроса в Slack API. Внутри поля filter вы записываете xpath выражение, в котором можно оперировать атрибутами артефакта или атрибутами его ссылок.

Отладка механизма интеграции

Сразу после сохранения настроек запускается механизм интеграции, результаты работы которого видны на вкладке "Лог". Здесь можно увидеть все доступные данные, ошибки от Slack API и причины, по которым данные не были отправлены.