В данном материале предлагаем поговорить о том, что такое вебхуки, а также про их роль в автоматизации различного функционала Битрикс24.
1. Пролог
Ранее у нас выходил материал об интеграции Битрикс24 и DashaMail, предназначенной для автоматической передачи статусов рассылки из Дашамейл в лид плюс контакт CRM.
Если вкратце рассказать о функционале, то интеграция отправляла http-запросы на сервер API для проверки наличия обновленных данных (метод поллинга).
Подобный способ позволял получить статусы из рассылки и записывать их в сущности Битрикс24.
Однако один из наших заказчиков выполнил очень масштабную рассылку, в результате которой объем запросов вышел за рамки одного миллиона в сутки.
Из-за этого интеграция не сработала так как требовалось и не выгрузила статусы в CRM. Загвоздка была именно в объеме почтовых сообщений.
Многостадийный поллинг работал по следующему принципу: первым делом запрос идет на список рассылок, а уже после на письма из каждой рассылки.
Чуть ранее подобный функционал мы использовали для интеграции с платформой Webinar.ru.
В этом случае проблема превышения нагрузки решилась ограничением количества участников.
Заказчику не потребовалась доработка, так как был установлен лимит на подключения к вебинару.
Но это не лучшее решение для задачи с DashaMail, поэтому решено было применить вебхуки.
2. Вебхук: что это и зачем его использовать
Вебхук — это программный код, с помощью которого отслеживают изменения на одном сайте и передают данные об этом на другой.
Наша компания имеет большой опыт работы с вебхуками.
Нередко заказчикам требуется реализация какого-либо сценария, который никак не покрывается стандартным функционалом Битрикс24.
В подобных случаях разработчик писал php-скрипт и размещал его на нашем сервере, либо сервере заказчика.
Однако у такого способа есть недостаток - скрипт может создавать ощутимую нагрузку на сервер.
Плюс в случае ошибки в скрипте его работа вела к падению сервера. Вебхук тут нужен для запуска скрипта, а настраивается он на стороне Битрикс24.
Нагрузка вебхука на сервер оценивается при помощи инструмента Статистика использования REST: в разделе Битрикс24 "Приложения" —> "Маркет" —> "Разработчикам" —> "Статистика". Здесь можно отследить количество запросов по каждому из вебхуков:
Возвращаемся к ситуации заказчика с объемными рассылками.
Чтобы остальные интеграции проекта не затормаживались, мы при помощи вебхуков некоторую часть запросов вынесли в отдельную очередь, что позволило разгрузить основную очередь.
Это принесло немало плюсов, но были и минусы.
Один из них заключается в том, что локальные вебхуки располагаются на сервере клиента.
Из-за этого при запуске их раз в несколько минут сервер попросту "ложился".
3. Решение проблемы падениям серверов при использовании вебхуков
Благодаря сервису Пинкит размещение PHP-скриптов на любом из серверов больше не требуется.
Можно просто настроить интеграцию с подходящим сценарием в личном кабинете Пинкит и запустить ее посредством вебхука, к примеру, из бизнес-процесса:
На данный момент вебхуки создаются без разработки, равно как и интеграция между одним и тем же порталом.
Благодаря Пинкит, мы поддерживаем всю библиотеку REST API Битрикс24, что дает возможность "дотянуться" до всех нужных полей внутри вашего портала Битрикс24:
При этом есть возможность настроить вебхук как в личном кабинете Пинкит, так и с помощью активити в бизнес-процессе.
Если у вас есть вопросы, пишите нам в Телеграм или WhatsApp.
Также вы можете самостоятельно протестировать Пинкит, зарегистрировавшись в личном кабинете по ссылке: https://lk.pinkit.io/register.
Алексей Окара,
продакт-менеджер Пинкит
Время работы специалистов Пн.–Пт.: с 9:30 до 18:30; Сб.-Вс.: выходные.
Павел Филатов
|
Самые востребованные интеграции по API: Google Sheets, Unisender, СберБанк, HH.ru, Контур.Фокус, GetCourse, Банки, iiko. |
Павел Филатов
|
Для тех, кто идет в ногу со временем, мы проводим регулярные
Если у Вас есть вопросы по настройке, по функционалу или вы просто хотите быть в курсе новых трендов, тогда регистрируйтесь и подключайтесь к нашим вебинарам. Для вас всегда интересные спикеры, разбор задач на примере реальных кейсов, а также подарки самым активным. |
Павел Филатов
|
|