На этой странице все callback-функции активны. Взаимодействуйте с виджетом — каждый callback покажет своё уведомление. Все уведомления разного типа и появляются по центру, не перекрывая друг друга. Полный список по официальной документации Jivo.
Объявите эти функции до загрузки скрипта виджета — Jivo найдёт и вызовет их автоматически.
jivo_onLoadCallback()
Вызывается при завершении инициализации виджета. Точка входа для всех вызовов jivo_api. Уведомление: красный полноэкранный баннер сверху.
Красный баннер уже сработал при загрузке страницы.
function jivo_onLoadCallback() {
console.log('Jivo загружен, режим:', jivo_api.chatMode());
}
jivo_onOpen()
Срабатывает когда посетитель открывает окно чата. Уведомление: зелёная таблетка снизу по центру.
Откройте чат — появится уведомление.
function jivo_onOpen() {
document.getElementById('my-chat-btn').style.display = 'none';
}
jivo_onClose()
Срабатывает когда посетитель закрывает окно чата. Уведомление: модальное окно по центру экрана.
Откройте и закройте чат — появится модальное окно.
function jivo_onClose() {
document.getElementById('my-chat-btn').style.display = 'block';
}
jivo_onChangeState(state)
Срабатывает при изменении состояния виджета. Параметр Уведомление: синяя карточка с текущим state. state: 'chat', 'call', 'label', 'chat/call', 'chat/min'.
Открывайте и сворачивайте чат — уведомление покажет state.
function jivo_onChangeState(state) {
console.log('Состояние виджета:', state);
}
jivo_onClientStartChat()
Срабатывает когда посетитель начинает диалог — отправляет первое сообщение или запрос на звонок. Уведомление: оранжевая карточка.
Откройте чат и отправьте первое сообщение.
function jivo_onClientStartChat() {
gtag('event', 'chat_start');
}
jivo_onIntroduction()
Срабатывает когда посетитель отправляет контактные данные через форму виджета. Уведомление: фиолетовая карточка.
Заполните форму контактов в виджете и отправьте.
function jivo_onIntroduction() {
var info = jivo_api.getContactInfo();
console.log('Посетитель представился:', info);
}
jivo_onMessageReceived()
Срабатывает когда оператор отправляет новое сообщение посетителю. Уведомление: пузырь входящего сообщения.
Откройте чат и попросите оператора написать вам.
function jivo_onMessageReceived() {
var count = jivo_api.getUnreadMessagesCount();
document.getElementById('badge').textContent = count;
}
jivo_onMessageSent()
Срабатывает один раз — когда посетитель отправляет первое сообщение оператору. Уведомление: пузырь исходящего сообщения.
Откройте чат и отправьте сообщение.
function jivo_onMessageSent() {
gtag('event', 'chat_message_sent');
}
jivo_onAccept()
Срабатывает когда оператор принимает обращение посетителя. Уведомление: тёмно-зелёная карточка.
Напишите в чат и дождитесь, пока оператор примет обращение.
function jivo_onAccept() {
gtag('event', 'chat_accepted');
}
jivo_onCallStart()
Срабатывает в момент начала звонка через виджет. Уведомление: морская волна.
Инициируйте звонок через виджет.
function jivo_onCallStart() {
console.log('Звонок начался');
}
jivo_onCallEnd(res)
Срабатывает по окончании звонка. Параметр Уведомление: карточка с красной рамкой и результатом. res: 'ok' или 'fail'.
Завершите звонок через виджет.
function jivo_onCallEnd(res) {
if (res === 'ok') gtag('event', 'call_success');
else console.log('Звонок не состоялся:', res);
}
jivo_onResizeCallback()
Срабатывает при изменении размера или позиции виджета на странице. Уведомление: серая таблетка.
Открывайте и закрывайте чат — виджет меняет размер.
function jivo_onResizeCallback() {
// подстроить layout страницы под новый размер виджета
}
jivo_onWidgetDestroy()
Срабатывает когда виджет удаляется со страницы через Уведомление: оранжево-красная карточка. jivo_destroy().
Нажмите кнопку — виджет будет удалён со страницы и сработает callback.
function jivo_onWidgetDestroy() {
console.log('Виджет удалён со страницы');
}