Все коллекции
API и Webhooks
Webhooks
Webhooks. Создание webhook-запроса
Webhooks. Создание webhook-запроса
Mariia Lobchenko avatar
Автор: Mariia Lobchenko
Обновлено больше недели назад

Webhook – механизм оповещений системы и/или сторонних систем, о событиях телефонии или Виртуальной АТС Ringostat в определённый момент.

При возникновении события, созданный ранее в ЛК, webhook-обработчик отправляет HTTP-запрос с набором параметров на URL, который был указан для этого Webhook.

Если URL, на который отправляется Webhook, недоступен (отвечает не HTTP 200 OK), попыток повторной отправки Webhook на этот URL до получения ожидаемого 200 ОК не будет. Webhook будет отмечен "с ошибкой", его статус отправки и ошибку можно будет просмотреть на странице Проверка ошибок Webhooks

WebHooks - упрощенный вариант rest-событий и rest-команд, не требующий написания приложения. Но, даже несмотря на это, работа с REST — это непростая задача, требующая солидной квалификации от разработчика.


Создание webhook-запроса

В личном кабинете перейдите в раздел Интеграция, затем на страницу Webhooks. Страница содержит таблицу включённых и настроенных интеграций проекта. По умолчанию, добавлено и настроено событие После звонка с webhook для Google Analytics, который редактировать нельзя.

Уникальное событие и новый webhook-запрос.

Чтобы создать новый webhook-запрос с новым видом события:

1. Нажмите Добавить уникальное событие:

После клика на кнопку откроется меню с настройками для обработчика.

2. Заполните поля для нового события:

В Название укажите название события (например Перед звонков, если тип события соответствующий), а в поле Описание добавьте краткое описание события.

3. Выберите само событие из выпадающего списка

Пример заполнения полей при добавлении нового события:

4. Далее создаем уже сам запрос.

Для этого нажмите +Добавить действие

5. Добавляем параметры для нового действия (Webhook-запроса):

  • Название – название webhook или интеграции;

  • Направление – адрес обработчика, на который будет отправлен запрос. Стандартные порты: 80 для HTTP и 443 для HTTPS. Для установки Webhook на URL с указанным портом можно передавать URL в виде: http://11.111.111.11:80

  • Заголовки - автоматически проставляются заголовки Content-Type, в зависимости от методов отправки. Можно редактировать или удалить заголовок.

  • Метод отправки данных:

    • GET – запрос с передачей параметров в адресной строке(URL-адресе запроса);

    • POST – запрос с передачей параметров в теле (body) запроса;

    • PUT – запрос для изменения экземпляра с указанным ID.

  • Формат отправки данных – формат переданных данных на обработчик запроса.

    • json – отправка параметров в формате объекта(набор пар ключ/значение) в теле запроса;

    • raw - позволяет передавать данные в запросе без какой-либо обработки или кодирования в определенном формате, например, текстовом, бинарном или в виде изображения;

    • Json-rpc - представляет собой протокол удаленного вызова процедур, который использует формат JSON для передачи запросов и ответов между клиентом и сервером, определяя структуру запросов и ответов в виде объектов с обязательными полями "jsonrpc", "method" и "params";

    • Form - позволяет передавать данные в запросе в виде URL-кодированных пар ключ/значение в теле запроса, обычно используется для отправки данных из форм на веб-страницах.

  • Формат даты – по умолчанию, стоит Стандартная дата.

  • Типы параметров:

    • Текст - текстовый инпут, из выпадающего списка можно выбрать нужный вам параметр;

    • Массив - поле становится мультиселектом, то есть можно добавить несколько параметров и передать их в массиве;

    • Объект - есть возможность добавить набор полей и передавать данные в объекте. Внутри объектов можно добавлять объекты и массивы, если нужно задать несколько уровней вложенности для объектов.

    • md5/crc32/sha1/sha256 hash - это различные алгоритмы хеширования, которые используются для преобразования данных в фиксированную длинную последовательность символов (хеш), которая может быть использована для проверки целостности данных и защиты от несанкционированного доступа.

Новое событие с действием (webhook-запросом) создано:

Созданное событие и новый webhook-запрос.

Если тип события создан (например, как и оговаривалось выше, webhook с Google Analytics создается по умолчанию с типом события После звонка), но вам нужно создать еще один webhook-запрос с таким же событием После звонка, в таком случае:

1. Нажмите на три точки напротив существующего события и отредактируйте его:

2. Далее нажмите +Добавить действие.

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

Пример:

Важно! Название параметра должно быть на латинице и без пробелов, иначе не будет корректной передачи данных. Если нужно название параметра только на кириллице и/или с пробелами, в таком случае его следует записать в фигурных скобках. К примеру: {{название параметра}}

На этом создание webhook-запроса завершено.


Нашли ответ на свой вопрос?