Your comments

Реализация передачи roistat_id для виджета открытых линий Б24, с чатом и веб-формой:

window.roistatVisitCallback = function (visitId) {

var roistat_visit_id = visitId;

(function(w,d,u){
var s=d.createElement('script');s.async=true;s.src=u+'?'+(Date.now()/60000|0);
var h=d.getElementsByTagName('script')[0];h.parentNode.insertBefore(s,h);
})(window,document,'https://b24.lbtd.ru/upload/crm/site_button/loader_1_pxnyrq.js');

/*Чат*/
window.addEventListener('onBitrixLiveChat', function(event) {
var widget = event.detail.widget;
widget.setUserRegisterData({
'position': roistat_visit_id
});
});

/*Форма*/
BX.addCustomEvent(document, "b24-sitebutton-form-init", function (e, form){
e.presets = {
'roistatID': roistat_visit_id,
};
});
};

Для формы предварительно добавляем в значения полей по умолчанию поле roistat со значением %roistatID%

Для чата, если у вас коробка, то можно навесить обработчик события на crm OnActivityAdd. Таким образом вы сможете обрабатывать событие добавления в лид упоминания о том что у него есть связанный чат. Соответственно имея ИД лида и данные чата, получить ИД пользователя открытых линий, по ИД пользователя, получаем его данные, в частности, в поле Должность (см. widget.setUserRegisterData({'position': roistat_visit_id})) будет храниться значение roistat_visit_id, берем его и записываем в лид в поле roistat.
Если будут вопросы, пишите, звоните - https://enterprise-it.ru/