Вы можете разместить виджет с ботом на странице вашего сайта. Это позволит увеличить продажи, оперативно информировать клиентов на различные темы, а также своевременно оказывать помощь и техническую поддержку.
С помощью предустановленных переменных вы можете передать в диалоги имена, адреса электронной почты и номера телефонов ваших клиентов.
Для этого в коде инициализации виджета используется блок sessionDefaults, который содержит следующие переменные:
Значением параметра clientExternalId является ID клиента, по которому группируются чат-сессии. В целях безопасности значение параметра clientExternalId рекомендуется указывать в зашифрованном виде (например, можно использовать алгоритм шифрования BASE64). Если ID клиента передавать в открытом виде (без шифрования), то злоумышленники могут его получить, проанализировав HTML-код страницы. С помощью ID клиента злоумышленники могут не только получить доступ ко всей переписке клиента в виджете, но и вести переписку от имени этого клиента. Использование ID клиента в зашифрованном виде обеспечивает надежную защиту от несанкционированного доступа к данным и неправомерного их использования. |
Давайте в качестве примера использовать следующие значения:
Ниже представлен фрагмент кода, в котором предустановленным переменным присвоены указанные выше значения. Ниже также указано место расположения этого фрагмента кода в коде инициализации виджета:
sessionDefaults: { name: 'Черная пятница', clientEmail: 'client@mail.ru', clientPhone: '79111234567', clientName: 'Иван', clientExternalId: 'Mzk3NQ==', }, |
<!DOCTYPE html> <html> <body> <div id="twin-chat-container"></div> <script> (function () { const script = document.createElement('script'); script.async = true; script.src = 'https://modern-v3.twin24.ai/manual.umd.min.js'; document.head.appendChild(script); script.onload = () => { TwinChat.init('#twin-chat-container', { chatId: 'febb3685-2cbc-4815-ba13-96199f9b8beb', sessionDefaults: { name: 'Черная пятница', clientEmail: 'client@mail.ru', clientPhone: '79111234567', clientName: 'Иван', clientExternalId: 'Mzk3NQ==', }, }).then(client => window.TwinClient = client); }; })(); </script> </body> </html> |
При работе с предустановленными переменными в блоке sessionDefaults необходимо помнить следующее:
Например, вместо clientName: 'Иван' можно написать clientName: 'Сергей' или clientName: 'Наталья', но нельзя изменить имя переменной, написав, например, clientName2: 'Сергей' или natalya: 'Наталья'. |
После того как вы задали в коде инициализации виджета предустановленным переменным желаемые значения, вам нужно указать названия переменных в сценарии в одном или нескольких блоках Вопрос, чтобы бот использовал значения этих переменных в вопросах.
Для этого в кабинете администратора в разделе Сценарии – Сценарии нажмите кнопку напротив названия скрипта, который привязан к созданному чату.
Добавьте названия переменных в текст соответствующих блоков Вопрос скрипта. Помните о том, что названия переменных необходимо указывать в фигурных скобках.
Переменные также можно использовать в тексте блока Информация. |
Ниже приводятся примеры добавления имен переменных в скрипт и отображение их значений в диалоге:
Вы можете использовать в диалогах с клиентами любые переменные с различными значениями. Для этого в коде инициализации виджета нужно разместить объект clientMetadata, который является дочерним объектом sessionDefaults. Объект clientMetadata может содержать любое количество переменных с любыми именами.
При работе с объектом clientMetadata важно помнить следующее:
|
Давайте создадим с помощью объекта clientMetadata следующие переменные:
В качестве примера будем использовать следующие значения:
Ниже представлен фрагмент кода, в котором созданы указанные выше переменные. Ниже также показано место расположения данного фрагмента кода в коде инициализации виджета:
clientMetadata: { orderNumber: 31, address: "Москва, Некрасова 13", finalDate: '13 июня 2022 года' }, |
<!DOCTYPE html> <html> <body> <div id="twin-chat-container"></div> <script> (function () { const script = document.createElement('script'); script.async = true; script.src = 'https://modern-v3.twin24.ai/manual.umd.min.js'; document.head.appendChild(script); script.onload = () => { TwinChat.init('#twin-chat-container', { chatId: 'febb3685-2cbc-4815-ba13-96199f9b8beb', sessionDefaults: { clientMetadata: { orderNumber: 31, address: "Москва, Некрасова 13", finalDate: '13 июня 2022 года' }, clientEmail: 'client@mail.ru', clientPhone: '79111234567', clientName: 'Иван', }, }).then(client => window.TwinClient = client); }; })(); </script> </body> </html> |
После того как вы создали переменные в коде инициализации виджета и задали им значения, необходимо указать названия переменных в сценарии в одном или нескольких блоках Вопрос, чтобы бот использовал значения этих переменных в вопросах.
Для этого в личном кабинете администратора перейдите в раздел Сценарии – Сценарии и нажмите кнопку напротив названия скрипта, который привязан к созданному чату.
Добавьте имена переменных в соответствующие блоки Вопрос в сценарии. Имена переменных нужно указывать в фигурных скобках. Ниже приводятся примеры. Вместо имен переменных orderNumber, address и finalDate в диалогах используются их значения: номер заказа, адрес пункта выдачи и конечная дата резерва. При вводе имен переменных в блоке скрипта нужно указывать имя объекта clientMetadata ({clientMetadata.orderNumber}, {clientMetadata.address}, {clientMetadata.finalDate}). |
Чтобы во время диалога с клиентом запросить промежуточную оценку диалога, в кабинете администратора в разделе Настройки нажмите кнопку Редактировать рядом с названием вашего чата и в открывшемся окне выполните следующие действия:
Ниже показано, каким образом можно запросить у клиента промежуточную оценку диалога по 5-ти балльной шкале через 15 секунд после начала диалога. Запрос промежуточной оценки будет отображаться вместе со следующим текстом сообщения: «Пожалуйста, оцените помощь оператора».
Кнопки с пиктограммами мессенджеров и социальных сетей позволяют клиенту на любом этапе диалога продолжить общение в чате соответствующего мессенджера или социальной сети. Чтобы включить отображение данных кнопок для виджета, убедитесь, что в коде инициализации скрипта расположен объект appearance, который содержит дочерний объект start. В объекте start должен быть указан параметр mode со значением messengerButtons.
appearance: { start: { mode: 'messengerButtons', }, }, |
<!DOCTYPE html> <html> <body> <div id="twin-chat-container"></div> <script> (function () { const script = document.createElement('script'); script.async = true; script.src = 'https://modern-v3.twin24.ai/manual.umd.min.js'; document.head.appendChild(script); script.onload = () => { TwinChat.init('#twin-chat-container', { chatId: 'febb3685-2cbc-4815-ba13-96199f9b8beb', sessionDefaults: { name: 'Черная пятница', clientMetadata: { orderNumber: 31, address: "Москва, Некрасова 13", finalDate: '13 июня 2022 года' }, clientEmail: 'client@mail.ru', clientPhone: '79111234567', clientName: 'Иван', }, appearance: { start: { mode: 'messengerButtons', }, }, }).then(client => window.TwinClient = client); }; })(); </script> </body> </html> |
После этого в кабинете администратора в разделе Настройки нажмите кнопку Редактировать рядом с названием вашего чата и в открывшемся окне в разделе Ссылки на менеджеры укажите ссылки на чаты, созданные в менеджерах и социальных сетях.
Перед указанием ссылок на мессенджеры и социальные сети необходимо настроить интеграцию с ботом. |
После выполнения указанных выше действий при запуске виджета будут автоматически отображаться кнопки мессенджеров и социальных сетей.
Язык виджета можно изменить с помощью объекта appearance. Свойство lang этого объекта позволяет изменить язык виджета на английский. Для этого в код инициализации виджета нужно добавить следующий фрагмент кода.
appearance: { lang: 'en', start: { mode: 'messengerButtons', }, }, |
<!DOCTYPE html> <html> <body> <div id="twin-chat-container"></div> <script> (function () { const script = document.createElement('script'); script.async = true; script.src = 'https://modern-v3.twin24.ai/manual.umd.min.js'; document.head.appendChild(script); script.onload = () => { TwinChat.init('#twin-chat-container', { chatId: 'febb3685-2cbc-4815-ba13-96199f9b8beb', sessionDefaults: { name: 'Черная пятница', clientMetadata: { orderNumber: 31, address: "Москва, Некрасова 13", finalDate: '13 июня 2022 года' }, clientEmail: 'client@mail.ru', clientPhone: '79111234567', clientName: 'Иван', }, appearance: { lang: 'en', start: { mode: 'messengerButtons', }, }, }).then(client => window.TwinClient = client); }; })(); </script> </body> </html> |
После того как вы выполните описанные выше действия, язык виджета изменится на английский. Переведите сценарий на английский язык и разместите виджет на англоязычной версии страницы вашего сайта.
Язык виджета также можно изменить динамически. Для этого служит метод TwinClient.changeLocale('en'). Доступные языки:
|
По умолчанию высота виджета на странице сайта составляет 600px. Виджет расположен на расстоянии 96px от верхнего края страницы. При необходимости высоту виджета можно изменить. Для этого служат следующие параметры:
Где:
Для настройки высоты виджета выполните следующее:
<style> @media (min-width: 600px) { .twc-chat-full-wrapper { height: 600px !important; max-height: calc(100% - 96px) !important; } .twc-chat-full { height: 100% !important; } } </style> |
2. Разместите скопированный блок в коде страницы вашего сайта. Его нужно разместить перед открывающим тегом <script>.
Ниже приводится пример кода страницы с указанием места расположения блока кода.
3. Измените значения указанных выше параметров для установки желаемой высоты виджета.
Вы можете гибко настроить и персонализировать виджет. Например, вы можете использовать различные аватары для бота и пользователя, задать желаемую продолжительность периода неактивности пользователя, по истечении которого диалог с пользователем будет завершен, выбрать нужный вариант оценки диалога и многое другое. Подробнее о настройке и персонализации виджета см. Редактирование чатов. |
Вы можете настроить сбор статистики по действиям клиентов в виджете с помощью метрик yandexMetrika и googleAnalytics. Для этого в объекте analytics нужно разместить дочерние объекты yandexMetrika и googleAnalytics. Сам объект analytics должен быть расположен внутри объекта appearance. Ниже приводится описание объектов analytics, yandexMetrika и googleAnalytics.
'ym';
'chat-widget'.
'gtag';
'chatWidget'.
Ниже представлен фрагмент кода с объектом analytics и его дочерними объектами yandexMetrika и googleAnalytics. Ниже также указано место расположения этого фрагмента кода в коде инициализации виджета:
analytics: { yandexMetrika: { counter: '86962928', // method: 'ym', // prefix: '/chat-widget', }, { googleAnalytics: { counter: '88777666', // method: 'gtag', // prefix: 'ChatWidget', }, }, } |
<!DOCTYPE html> <html> <body> <div id="twin-chat-container"></div> <script> (function () { const script = document.createElement('script'); script.async = true; script.src = 'https://modern-v3.twin24.ai/manual.umd.min.js'; document.head.appendChild(script); script.onload = () => { TwinChat.init('#twin-chat-container', { chatId: 'febb3685-2cbc-4815-ba13-96199f9b8beb', sessionDefaults: { name: 'Черная пятница', clientMetadata: { orderNumber: 31, address: "Москва, Некрасова 13", finalDate: '13 июня 2022 года' }, clientEmail: 'client@mail.ru', clientPhone: '79111234567', clientName: 'Иван', }, appearance: { lang: 'en', start: { mode: 'messengerButtons', }, analytics: { yandexMetrika: { counter: '86962928', // method: 'ym', // prefix: '/chat-widget', }, { googleAnalytics: { counter: '88777666', // method: 'gtag', // prefix: 'ChatWidget', }, }, } }, }).then(client => window.TwinClient = client); }; })(); </script> </body> </html> |
Нет необходимости подключать к виджету обе метрики одновременно. Подробнее о метриках см. Сбор статистики по действиям клиентов виджете c помощью Яндекс метрики и Сбор статистики по действиям клиентов в виджете c помощью Google Analytics. |