Как настроить отправку вебхука в чат-ботах

Вебхук — механизм оповещения о событиях посредством отправки HTTP запроса на URL, где находится обработчик.

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

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

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

Как включить отправку вебхука

Добавьте блок «Действие» после отслеживающевого блока. Выберите опцию «Отправить вебхук». Введите название отправляемого вебхука и ссылку куда передавать данные.

Отслеживать можно такие события:

Вы также можете указать события, по которым будут отправляться вебхуки в разделе настроек бота:

  • Подписка на бота
  • Входящие сообщения
  • Открытие чата
  • Старт пользовательской цепочки
  • Переход по ссылке
  • Отписка от бота
  • Заблокировал бота

Структура вебхука

Вебхук передает такие данные:

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

Пример тела отправляемого POST запроса в JSON:

[
    {
        "info": null, // информация из мессенджера
        "service": "messenger", // messenger - чат-бот Facebook Messenger, telegram - чат-бот Telegram, vk - чат-бот ВКонтакте
        "title": "Зарегистрировались. Зеленый зал", //название вебхука
        "bot": {
            "url": "https://m.me/104117781360763",
            "external_id": "104117781360763", // идентификатор сообщества в мессенджере (для Facebook значение передается строкой, для Telegram и ВКонтакте числом).
            "id": "17ff4105-d5f1-4790-9d09-a6f64ea73d54", // идентификатор подключенного бота в Sendpulse
            "name": "BEST" // название сообщества
        },
        "contact": {
           "имя переменной": "значение переменной", 
            "email": "name@example.com",
            "phone": "+38093000000",
            "last_message": "hey! whats up?", // последнее сообщение пользователя
            "photo": "https://..",
            "tags":  ["название тега 1", "название тега 2"],
            "id": "467bf50f-9cb0-4b65-b722-0135ad5fb9e0", // идентификатор контакта в Sendpulse
            "name": "Alexander"
        },
        "date": 1617401679 // дата срабатывания блока в милисекундах
    }
]

Пример вебхука для «Входящие сообщения»:

[
   {
      "info":{ // информация из мессенджера
         "message":{
            "channel_data":{
               "message":{
                  "audio":null,
                  "from":1332678955,
                  "context":null,
                  "interactive":null,
                  "contacts":null,
                  "text":{
                     "body":"hey! whats up?"
                  },
                  "button":null,
                  "system":null,
                  "voice":null,
                  "video":null,
                  "identity":null,
                  "image":null,
                  "timestamp":1625834714,
                  "document":null,
                  "type":"text",
                  "id":"ABCDOAk1346346go-sKd--dduwQ9p",
                  "sticker":null,
                  "location":null
               },
               "message_id":"ABCDOAk1Z43535-sKd--dduwQ9p"
            },
            "id":"60e8434b446846838d8463"
         }
      },
      "service":"whatsapp",
      "title":"incoming_message",
      "bot":{
         "url":"https://wa.me/380932674329",
         "external_id":"380932674329",
         "id":"60c1c50c156845831909cf74",
         "name":"Revision_me"
      },
      "contact":{
         "username":"Alexander",
         "name":"Alexander",
         "tags":[
            
         ],
         "last_message":"hey! whats up?", // последнее сообщение пользователя
         "photo":null,
         "variables":{
            "dept":"Designer"
         },
         "id":"60c0f31f457479d02b7512"
      },
      "date":1625834714
   }
]
Изменения формата данных вебхука
Обратите внимание! C 11 августа 2020г изменился формат данных вебхука. Теперь это массив объектов[{...}, {...}]. Ранее был один объект данных {...}. Обновите ваши интеграции, если в них используеться старый формат.

Данные вебхука приходят с типом application/json.

Оцените, насколько полезна статья "Как настроить отправку вебхука в чат-ботах"

Оценка: 4 / 5 (11)

    Другие полезные страницы

    Популярное в нашем блоге

    Попробуйте бесплатный бот для рассылок в Facebook Messenger