Вы правы, это немного устаревший метод, а новый пока не сильно описан в документации. Я написал небольшой пример работы с заполнением через событие.
Обратите внимание что скрипт подписки на событие должен быть описан ДО подключения скрипта.
window.addEventListener("onBitrixLiveChat", function(event) {
let {widget, widgetCode, widgetHost} = event.detail;
// Заполняем поля пользователя
widget.setUserRegisterData({
hash: 'd588e1a88baf2013940b0b33b1eefc2d', // уникальный uid ползователя, замена авторизации
name: 'Андрей',
lastName: 'Николаев',
avatar: 'https://habrastorage.org/r/w60/files/45a/0ed/7e7/45a0ed7e73654301b0bf3b27f5236cf9.jpg',
email: 'gromdron@yandex.ru',
gender: "M",
position: "Руководитель группы разработки",
www: "https://efusion.ru"
});
// Заполняем первое сообщение
widget.setCustomData([
{
MESSAGE: "Мое первое сообщение"
}
]);
});
Пример работы, демонстрирую на скриншотах: