#1464: Вебхук для создания тикета из одной Свормики в другую

Отредактирована: 144 дня назад

Симптомы

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

Решение

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

  1. Для того, чтобы создать такое действие:
  2. Идем на ВТОРОЙ ИНСТАНС и создаем там API токен в разделе Настройки > API и интеграции
  3. Идем на ПЕРВЫЙ ИНСТАНС в Настройки > Действие по событию и нажмите Создать + Исходящий вебхук. Заполните название.
  4. В левой части экрана выберите Тип события TicketEvent = Ticket Group Changed
  5. Добавьте поле Новое значение и сделайте его равным требуемой группе.
  6. В правой части нажмите Создать. Заполните название.
  7. В поле URL прописываем путь до ендпоинта: https://URL_второго_инстанса/api/tickets/
  8. Выбираем метод POST
  9. Заполняем Заголовок и Данные (см. пример ниже) и Сохраняем вебхук.
  10. В левой части Меняем Статус на Включен и Сохраняем действие.

Заголовок

{
  "Content-Type": "application/json",
  "Authorization": "Token ваш_токен_из_шага_1"
}

Данные:

{
  "subject": "{{event.ticket.subject}}",
  "comment": {% set comment = event.ticket.comments.order_by('created_at').first() %}{% if comment %}{{ comment.body | tojson}}{% endif%},
  "requester_email": "{{event.ticket.requester.email}}"
}

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