Серверная интеграция 3CX с Bitrix24. Вебхуки битрикс 24
Серверная интеграция 3CX с Bitrix24 / Блог компании 3CX Ltd. / Хабр
Вебхук — это подписка на некоторое событие в системе, например, на поступивший вызов. Когда поступает вызов от клиента, 3CX отправляет подписавшейся системе информацию о нём с помощью HTTP-запроса. Затем уже CRM-система определяет, как использовать эту информацию.
3CX предлагает модуль интеграции с Bitrix24 непосредственно «из коробки», однако для этого необходима редакция 3CX Pro или Enterprise. Весь процесс занимает не более 5 минут!
Когда к вам поступает вызов, веб-клиент 3CX показывает небольшую карточку контакта с ссылкой на полную карточку этого контакта в CRM Bitrix24. Здесь рассматривается интеграция 3CX с Bitrix24 исключительно на стороне сервера, без использования локального модуля на стороне клиента. Такой подход имеет большое преимущество — вам не нужно обходить всех пользователей и вручную устанавливать плагины CRM-интеграции в настольные клиенты 3CX. Кроме того, теперь вы можете использовать CRM-интеграцию не только в Windows и Mac, но и в Linux, поскольку веб-клиент работает как браузерное приложение. Еще одно преимущество — новый веб-клиент спроектирован с учетом возможного расширения возможностей интерфейса. Это значит, что в будущем возможна более тесная CRM-интеграция непосредственно в интерфейсе веб-клиента.
Выполнение исходящих вызовов из интерфейса Bitrix24 выполняется с помощью специального плагина к браузеру Chrome Click2Call.
Для успешной работы интеграции при входящем вызове, входящий Caller ID должен полностью совпадать с номером соответствующего контакта в Bitrix24. Например, контакты в вашей стране (локальные) должны сохраняться в Bitrix24 в национальном формате — без международного префикса страны, а также без скобок, точек, запятых, тире и пробелов.
Настройка вебхука в Bitrix24
Зайдите в ваш портал Bitrix24, откройте меню в левом верхнем углу и перейдите в раздел Приложения > Вебхуки.Нажмите Добавить вебхук > Входящий вебхук.
Укажите имя и описание вебхука. Установите права доступа — CRM и Списки, и сохраните изменения.
После нажатия Сохранить, появится Секретный ключ (Secret), который затем указывается в интерфейсе модуля интеграции со стороны 3CX.
Настройка CRM-интеграции на сервере 3CX
- Перейдите в интерфейс управления 3CX в раздел Параметры > CRM интеграция, вкладка На стороне сервера.
- Из выпадающего списка выберите Bitrix.
- В поле Secret укажите Секретный ключ вебхука, сгенерированный выше.
- В поле Domain Part укажите имя вашего портала Bitrix24. Например, если полный URL портала Bitrix24 b24-n58e22fcd2f37d.bitrix24.com, указывайте b24-n58e22fcd2f37d.
- Нажмите OK и интеграция будет завершена.
Замечания
Если серверная CRM интеграция с Bitrix24 у вас не работает или вызывает сложности, воспользуйтесь клиентской CRM-интеграцией, которую мы описывали ранее. Ваши вопросы и пожелания по работе интеграции предлагаем оставлять на нашем форуме по интеграции приложений.habr.com
Настройки на стороне CRM
Настройка вебхуков совершается на стороне Битрикс24.
В меню слева нужно перейдите по ссылке «Приложения» и выбрать вкладку «Вебхуки»
Вебхуки позволяют осуществлять изменение данных на стороне другого сайта при помощи запросов по особым ссылкам
Вебхуков всего два типа — входящие и исходящие. Добавить их можно по кнопке справа "Добавить вебхук":
Входящий вебхук
Нажимаем «Добавить вебхук», выбираем «Входящий вебхук»
В открывшемся окне выберите название, описание и указать права доступа вебхука. Для работы модуля достаточно права «CRM». Если ведётся работа с торговыми предложениями при помощи модуля sotbit.crmtools, то добавьте и эти права.
После сохранения на экране появится код входящего вебхука:
Код нужно будет указать в настройках модуля интеграции на стороне битрикс.
Исходящие вебхуки
Нажимаем «Добавить вебхук», выбираем «Исходящий вебхук».
В открывшемся окне заполните адрес обработчика, название и тип события.
Адрес обработчика должен быть вида: https://Ваш сайт.ru/api/crm/
Используется всего 7 типов событий, для каждого из них нужно создать свой вебхук:
После сохранения каждого из вебхуков появится свой код авторизации:
Коды нужно будет указать в настройках модуля интеграции на стороне битрикс.
После настройки входящих и исходящих вебхуков в окне редактирования вебхуков Вы увидите примерно следующее:
На этом настройка модуля на стороне Битрикс24 закончена. Необходимо внести полученные коды в настройки модуля на сайте.
www.sotbit.ru
Вебхуки — события об изменении данных
«Вебхуки» это термин из сферы интеграции. Существует 2 способа узнать об изменении данных в некой системе: спросить у неё о них или получать от неё события.
Первый способ — спрашивать об изменениях. Метод трудозатратный и долгий. Во-первых, опрашивать нужно периодически, а значит будут задержки. Во-вторых, это создает избыточную нагрузку в обеих систмах. Для опроса изменений в Бипиуме создано API.
Второй способ — обрабатывать события. События передают изменения моментально и содержат только полезную информацию. Тем самым уменьшается нагрузка и время синхронизации. Для поддержки событий в Бипиуме мы внедрили вебхуки.
Вебхук — это подписка на некоторое событие в системе. Например, на создание новой записи в каталоге Клиенты. Когда сотрудник создает нового клиента, Бипиум отправляет подписавшейся системе информацию о нём. Сообщение отправляется HTTP-запросом.
Вебхуки в Бипиуме
События. Вебхуки «вешаются» на любой каталог на одно из трех событий: создана новая запись, изменена запись, удалена запись. На одно событие может быть множество вебхуков.
Жизненный цикл. Вебхуки срабатывают после выполнения операции (уведомления) и до выполнения с ожиданием подтверждения (вебхук-запросы). Об этом ниже.
Полезные данные. Сообщение вебхука содержит не все поля записи, а лишь измененные значения. Это позволяет стороннему серверу понять, какие правки внёс сотрудник.
Очередность. Каждое сообщение вебхука содержит порядковый номер. Это дает стороннему серверу возможность понять не пропустил ли он какие-то события. Бипиуем не повторяет сообщения, если сторонний сервер был не доступен.
Безопасность. Бипиум подписывает сообщения вебхуков секретным ключом. Это позволяет стороннему серверу убедиться в подлинности отправителя.
API. Вебхуки хранятся так же, как и другие данные в Бипиуме — в каталоге. Это значит, что можно использовать стандартные методы API для добавления или получения списка вебхуков. Вы даже можете повесить вебхук на создание вебхука. Главное не зациклиться :)
Вебхук-уведомления и вебхук-запросы
Традиционно под вебхуками понимают уведомления о совершенных действиях. Например, что запись была изменена и сохранена в базу данных.
В Бипиуме мы пошли дальше. Помимо уведомлений Бипиум умеет информировать о намерениях изменить данные. Такие события мы назвали вебхук-запросами. Вебхук-запросы срабатывают до того, как данные сохранены в базу данных и дожидаются ответа от стороннего сервера для подтверждения или отклонения операции.
Например, сторонний сервер может проверить корректность введенных данных и заблокировать операцию в случае ошибки. При этом сотруднику будет показано сообщение ошибки, которую передаст сторонний сервер.
Способ настройки вебхуков, формат сообщений и ответов описан в документации.
blog.bpium.ru