Как работать с Webhook-уведомлениями
Webhook — это способ автоматической передачи данных о событиях из системы во внешний сервис или на ваш сервер.
Например, если транспорт превысил скорость, система сама отправит запрос на указанный вами адрес и передаст информацию о событии.
Как работают Webhook-уведомления
1. Вы указываете URL-адрес — куда отправлять данные
2. При срабатывании уведомления система отправляет POST-запрос с JSON
3. Ваш сервер принимает данные и обрабатывает их так, как нужно
Перед началом убедитесь, что:
— URL-адрес корректный и доступен
— сервер отвечает кодом 200 (OK)
— если сервер не отвечает или возвращает ошибку, адрес временно попадёт в чёрный список
Как настроить Webhook
1. Перейдите в создание или редактирование уведомления

2. В блоке «Тип и название» выберите способ отправки Webhook

3. Чтобы настроить Webhook-уведомления, нажмите на поле редактирования
— откроется окно Webhook Details, где задаются параметры отправки данных.
В окне Webhook Details вы увидите три поля:
Укажите адрес, на который будут отправляться данные.
Здесь указывается формат передаваемых данных. По умолчанию уже стоит нужное значение:
["ContentType: application/json"]
|
Это данные, которые будут отправляться. По умолчанию используется такой шаблон:
{
"agent_id": "%AGENTID%",
"vehiclenumber": "%VEHNUM%",
"ts": "%TS%",
"lat": "%LAT%",
"lon": "%LON%",
"speed": "%SPEED%",
"data": "%DATA%",
"zone": "%ZONE%",
"driver": "%DRIVER%"
}
|
Соблюдайте формат записи — "value": "%VALUE%". Если синтаксис будет нарушен, Webhook работать не будет.
|
Допустимые переменные
|
Переменная
|
Что передаёт
|
|
%ACCOUNTID%
|
ID аккаунта
|
|
%AGENTID%
|
ID объекта
|
|
%VEHNUM%
|
Номер машины
|
|
%TS%
|
Метка времени (timestamp)
|
|
%DATETIME%
|
Дата и время
|
|
%LAT%
|
Широта
|
|
%LON%
|
Долгота
|
|
%SPEED%
|
Скорость
|
|
%ODO%
|
Пробег (по датчику)
|
|
%DATA%
|
Данные уведомления
|
|
%ZONE%
|
Геозона
|
|
%ZONE_ID%
|
ID первой геозоны
|
|
%ZONE_NAME%
|
Название первой геозоны
|
|
%DRIVER%
|
Водитель
|
|
%MAXSPEED%
|
Максимальная скорость (для уведомлений о превышении)
|
|
%DUR%
|
Длительность превышения
|
|
%SPEEDLIMIT%
|
Установленный лимит скорости (Контроль скорости)
|
Как подставить значение датчика
Если нужно передать данные конкретного датчика:
1. Откройте вкладку «Датчики»

2. Скопируйте точное название датчика
3. Вернитесь в окно настроек Webhook и в поле Body вставьте переменную в формате: %Название датчика%. Например, если датчик называется Fuel sensor status, напишите %Fuel sensor status%.
Как получить сырые данные
Можно передавать данные напрямую от устройства:
1. Перейдите во вкладку «Точки»

2. Найдите параметр в колонке «Необработанные данные»
3. Вставьте его в поле Body в окне Webhook в формате %Имя параметра%. Например, если параметр называется Valid, напишите %Valid%.
Пример запроса
Когда уведомление сработает, на ваш сервер придут данные примерно в таком виде:
{
"agent_id": 4328,
"ts": 1545254055,
"data": ["У286НМ 67", "Parkingdur", "2", "1", "мм"]
}
|
Набор данных зависит от того, какие переменные вы указали в теле запроса и какой тип уведомления настроен.

