"Нужна обработка (через адаптер)" — способ подключения для работы с данными в любом формате. Требует создания Python-скрипта, который преобразует входящие данные в формат, понятный платформе Nextbot.
Конфигурация
Ссылка вебхука
URL-адрес (endpoint) для получения вебхука находится в поле "Ссылка вебхука" на главной странице интеграции.
Используйте этот URL для отправки POST-запросов с данными вебхука.
Если необходимо обновить токен (например, при компрометации старого), нажмите кнопку "Обновить токен". Прежний URL станет недействительным.
Как работает адаптер
Адаптер — это Python-скрипт, который принимает входящий вебхук в произвольном формате и преобразует его в стандартный формат для Nextbot.
Он используется в тех случаях, когда сторонний сервис не может отправлять данные сразу в формате Nextbot.
Общая схема работы
Сторонний сервис отправляет POST-запрос на ваш URL вебхука.
Формат данных — JSON с произвольной структурой.
Входящий запрос передаётся в адаптер.
Адаптер получает:
тело запроса
HTTP-заголовки
служебные метаданные
Python-адаптер:
извлекает нужные поля из входящих данных
формирует текст сообщения
указывает dialog_id
возвращает результат в формате Nextbot
Данные, доступные в адаптере
В адаптере доступен объект args, содержащий входящие данные:
Поле
Тип
Описание
args["request"]
dict
JSON-тело входящего запроса (структура зависит от стороннего сервиса)
args["headers"]
dict
HTTP-заголовки запроса (например, content_type, user_agent)
args["meta"]
dict
Метаданные (agent_hash, url_token)
Что должен вернуть адаптер
Python-скрипт обязан вернутьresult следующего формата:
Поле
Тип
Обязательно
Описание
dialog_id
int
✅
ID существующего диалога в Nextbot
text
str
✅
Текст сообщения, которое будет добавлено в диалог
message_type
str
⛔
Тип сообщения (input, forwarded_output, output). По умолчанию input
message_id
str
⛔
Уникальный ID сообщения (если не указан — создаётся автоматически)
Раскройте вкладку "Пример: уведомление о платеже", чтобы увидеть готовый пример с входящим запросом, Python-адаптером и результатом его работы
Пример: обработка вебхука от платёжной системы
Настройте функцию в Nextbot, которая после выполнения будет отправлять ID диалога (номер диалога) во внешнюю систему, например, через Custom API.
После этого платёжная система отправляет уведомление об успешной оплате.
ID диалога передаётся в поле metadata.dialog_id (настраивается при создании платежа).
Вот пример JSON, который приходит через вебхук. Это произвольный формат данных, который еще не соответствует стандарту Nextbot:
Логика работы адаптера
Извлекаем тело входящего запроса (args["request"])
Получаем dialog_id из metadata
Формируем человекочитаемый текст сообщения
Возвращаем результат в формате Nextbot
Пример Python-кода адаптера
Результат работы адаптера
Сообщение появляется в указанном диалоге Nextbot, при этом его тип (input, output или forwarded_output) определяется настройкой message_type в адаптере:
Для включения режима отладки добавьте параметр ?debug=true к URL вебхука. В ответе вы получите подробные логи выполнения запроса.
Важно учитывать
dialog_idдолжен существовать в Nextbot
Адаптер может обрабатывать любую структуру данных
В одном адаптере можно:
валидировать подписи вебхуков
проверять статус событий
фильтровать ненужные уведомления
формировать разные сообщения в зависимости от типа события