Простой пример отправки сообщений в Битрикс 24 с помощью вебхука (для новичков)

21.11.23

Интеграция - WEB-интеграция

Отправляем сообщения в Битрикс24 из 1С с помощью rest api, публикация рассчитана на тех, кто только начинает знакомиться с интеграцией Битрикс 24 через вебхуки.

Скачать файл

ВНИМАНИЕ: Файлы из Базы знаний - это исходный код разработки. Это примеры решения задач, шаблоны, заготовки, "строительные материалы" для учетной системы. Файлы ориентированы на специалистов 1С, которые могут разобраться в коде и оптимизировать программу для запуска в базе данных. Гарантии работоспособности нет. Возврата нет. Технической поддержки нет.

Наименование По подписке [?] Купить один файл
Простой пример отправки сообщений в Битрикс 24 с помощью вебхука:
.epf 7,42Kb
15
15 Скачать (1 SM) Купить за 1 850 руб.

В одной из задач понадобилось отправлять сообщения на портал Б24, а потом читать пришедший ответ. 
Быстро нашла методы и решила поделиться с вами, небольшая шпаргалка для начинающих свой путь взаимодействия с битрикс 24 с помощью вебхуков.

Первое, что нужно сделать, это создать вебхук на стороне битрикс, который будет содержать в себе права на наши методы. Нас интересует метод "im", пример настройки отправляю ниже:



При настройке вебхука стоит учитывать, что сгенерированный токен, "привязан" к пользователю, который его создает (это правило работает и для генерации токенов в приложениях для взаимодействия 1С и Б24 от вендоров). Поэтому для генерации вебхука рекомендую использовать технического пользователя.

В нашем случае, от пользователя, сгенерировавшего вебхук, будут приходить сообщения из 1С.

Для подключения забираем адрес портала и токен:




Теперь время открыть прикрепленную к статье обработку и пробовать отправлять сообщения :)
Внутри обработки нужно будет заполнить адрес  подключения, токен и ID получателя.
ID получателя можно получать различными методами, самый простой - зайти в его карточку на сайте и посмотреть адрес, последние цифры адреса карточки будут являться его ID.

Использование простое, набираете сообщение - нажимаем кнопку "отправить сообщение".

Чтобы получить ответ от пользователя, который он написал в битрикс 24, нажимаем "получить ответ".

Прикрепляю код отправки и принятия сообщений.

Обработка создавалась для Документооборота 2.1 (версия БСП 3.1.2.343), однако данные методы можно использовать на любой конфигурации 8.3 с БСП

Код отправки сообщения:

&НаСервере
Процедура ОтправитьСообщениеНаСервере()      
		
	ssl = Новый ЗащищенноеСоединениеOpenSSL(
	Новый СертификатКлиентаWindows(),
	Новый СертификатыУдостоверяющихЦентровWindows());	
	Соединение = Новый HTTPСоединение(АдресПодключения,,,,,5,ssl); 	
	
	DIALOG_ID = "DIALOG_ID="+Получатель; //ID получателя сообщения
    MESSAGE = "MESSAGE="+ТекстСообщения; //текст сообщения
	SYSTEM = "SYSTEM="+"Y"; //параметр отвечает за отображение сообщения как системного, 
                            //значения - "N" как ложь и "Y" как истина
	
	ТекстHTTPЗапроса = Строка(Токен + "/im.message.add?" + DIALOG_ID + "&" + MESSAGE + "&" + SYSTEM);  
	
	HTTPЗапрос = Новый HTTPЗапрос(ТекстHTTPЗапроса);  
	РезультатHTTPЗапроса = Соединение.Получить(HTTPЗапрос);     
	
	ТелоРезультата = РезультатHTTPЗапроса.ПолучитьТелоКакСтроку();        
	
	ЧтениеJSON = Новый ЧтениеJSON;
	ЧтениеJSON.УстановитьСтроку(ТелоРезультата);   
	СтруктураОтвета = ПрочитатьJSON(ЧтениеJSON); 
	
	Если СтруктураОтвета.Свойство("error") Тогда
		ОбщегоНазначения.СообщитьПользователю("Сообщение не отправлено по причине:"+СтруктураОтвета.error_description); 
		Возврат;
	КонецЕсли;
	
	IDОтправленногоСообщения = СтрЗаменить(Строка(СтруктураОтвета.result),Символы.НПП,"");//сохраним ID отправленного сообщения, для получения ответа
	ОтображениеЧата = ОтображениеЧата + Символы.ПС + "Отправленное сообщение: "+ТекстСообщения;
	ТекстСообщения = "";
	
КонецПроцедуры


Код получения ответа:
 

Процедура ПолучитьОтветНаСервере()
	
	ssl = Новый ЗащищенноеСоединениеOpenSSL(
	Новый СертификатКлиентаWindows(),
	Новый СертификатыУдостоверяющихЦентровWindows());	
	Соединение = Новый HTTPСоединение(АдресПодключения,,,,,5,ssl); 
	
	DIALOG_ID = "DIALOG_ID="+Получатель; //ID получателя сообщения
	FIRST_ID = "FIRST_ID="+IDОтправленногоСообщения; //передаем сохраненный ID отправленного сообщения
                                                     //чтобы получить все сообщения, отправленные в чат после нашего
	
	ТекстHTTPЗапроса = Строка(Токен + "/im.dialog.messages.get?" + DIALOG_ID + "&" + FIRST_ID); 
	
	HTTPЗапрос = Новый HTTPЗапрос(ТекстHTTPЗапроса);  
	РезультатHTTPЗапроса = Соединение.Получить(HTTPЗапрос);     
	
	ТелоРезультата = РезультатHTTPЗапроса.ПолучитьТелоКакСтроку();        
	
	ЧтениеJSON = Новый ЧтениеJSON;
	ЧтениеJSON.УстановитьСтроку(ТелоРезультата);   
	СтруктураОтвета = ПрочитатьJSON(ЧтениеJSON); 
	
	Если СтруктураОтвета.Свойство("error") Тогда
		ОбщегоНазначения.СообщитьПользователю("Сообщение не получено по причине:"+СтруктураОтвета.error_description); 
		Возврат;
	КонецЕсли;
	
	МассивСообщений = СтруктураОтвета.result.messages;
	
	Для каждого Строка из МассивСообщений Цикл
		ОтображениеЧата = ОтображениеЧата + Символы.ПС + "Полученное сообщение: "+Строка.text 	
	КонецЦикла;
	
КонецПроцедуры

 

битрикс 24 вебхук rest api bitrix 24

См. также

Сайты и интернет-магазины WEB-интеграция Системный администратор Программист Пользователь Платформа 1С v8.3 Конфигурации 1cv8 1С:Управление торговлей 11 Автомобили, автосервисы Россия Управленческий учет Платные (руб)

Интеграционный модуль обмена между конфигурацией Альфа Авто 5 и Альфа Авто 6 и порталом AUTOCRM. Данный модуль универсален. Позволяет работать с несколькими обменами AUTOCRM разных брендов в одной информационной базе в ручном и автоматическом режиме.

36000 руб.

03.08.2020    17780    19    22    

16

Сайты и интернет-магазины Интеграция WEB-интеграция Платформа 1С v8.3 Конфигурации 1cv8 Управленческий учет Платные (руб)

Интеграция 1С и Битрикс 24. Разработка имеет двухстороннюю синхронизацию 1С и Bitrix24 задачами. Решение позволяет создавать пользователя в 1С из Битрикс24 и наоборот. Данная разработка технически подходит под все основные конфигурации линейки продуктов 1С:Предприятие 8.3 (платформа начиная с 8.3.23). При приобретении предоставляется 1 месяц бесплатных обновлений разработки. Доступна демо-версия продукта с подключением Вашего Битрикс24

5040 руб.

04.05.2021    19844    13    17    

16

WEB-интеграция 8.3.8 Конфигурации 1cv8 Автомобили, автосервисы Беларусь Украина Россия Казахстан Управленческий учет Платные (руб)

Расширение предназначено для конфигурации "1С:Предприятие 8. Управление Автотранспортом. ПРОФ". Функционал модуля: 1. Заполнение регистров сведений по подсистеме "Мониторинг", а именно: события по мониторингу, координаты по мониторингу, пробег и расход по мониторингу, текущее местоположение ТС по мониторингу 2. Заполнение путевого листа: пробег по мониторингу, время выезда/заезда, табличная часть ГСМ, места стоянок по геозонам. 3. Отчеты по данным загруженным в регистры сведений. 4. Предусмотрена автоматическая загрузка данных в фоновом режиме (условия работы данной загрузке читайте в описании товара) Модуль работает без включенной константы по настройкам мониторинга. Модуль формы предоставляется с открытым кодом, общий модуль защищен. Любой заинтересованный пользователь, имеет возможность скачать демо-версию расширения.

22656 руб.

25.05.2021    14421    42    8    

18

WEB-интеграция Программист Руководитель проекта Платформа 1С v8.3 Конфигурации 1cv8 1С:Франчайзи, автоматизация бизнеса Платные (руб)

Расширение значительно упрощает написание API на 1С. Веб программисты получают простой и понятный доступ к 1С. Описание API создаётся автоматически и представляется в виде удобном как для человека, так и для программной обработки.

24000 руб.

27.09.2024    1168    1    0    

3
Оставьте свое сообщение