Регламент GDPR требует, чтобы веб-сайты получали согласие пользователей перед обработкой персональных данных или загрузкой маркетинговых скриптов. ChatLab предлагает два способа решения этой задачи, и вы можете использовать один из них или оба сразу в зависимости от ваших потребностей.
Подход 1 - согласие с политикой конфиденциальности внутри виджета. Требуйте от посетителей принять вашу Политику конфиденциальности непосредственно внутри чат-виджета перед тем, как они смогут начать диалог или отправить персональные данные.
Подход 2 - загрузка после получения согласия. Полная блокировка загрузки скрипта чатбота до тех пор, пока посетитель не предоставит согласие на маркетинговые файлы cookie через вашу платформу управления согласием (CMP).
Подход 1: согласие с политикой конфиденциальности внутри виджета
В ChatLab есть встроенные настройки согласия, которые позволяют требовать от посетителей принятия Политики конфиденциальности перед началом взаимодействия с чатботом. Сам виджет полностью управляет процессом получения согласия - никакие сторонние инструменты не требуются.
Доступ к настройкам
Откройте вашего чатбота в панели управления, перейдите на вкладку Settings (Настройки), затем нажмите Consent & Privacy (Согласие и конфиденциальность) в боковом меню слева.
Переключатели согласия
Карточка Request user consent (Запрашивать согласие пользователя) содержит четыре переключателя.
- Require Privacy Policy consent before starting a new conversation (Требовать согласие с Политикой конфиденциальности перед началом нового диалога) - когда опция включена, посетители обязаны принять политику перед отправкой своего первого сообщения. Это самый широкий вариант: он автоматически охватывает все формы (сбор лидов, поддержка оператором и живой чат), поэтому остальные три переключателя становятся неактивными.
- Require Privacy Policy consent for human support (Требовать согласие с Политикой конфиденциальности для поддержки оператором) - добавляет чекбокс согласия в контактную форму обращения к оператору.
- Require Privacy Policy consent for lead collection (Требовать согласие с Политикой конфиденциальности для сбора лидов) - добавляет чекбокс согласия в форму сбора лидов.
- Require Privacy Policy consent for live chat session (Требовать согласие с Политикой конфиденциальности для сессии Live Chat) - добавляет чекбокс согласия в форму Live Chat.
Если вам требуется согласие только для определенных сценариев взаимодействия (например, только при сборе персональных данных через лиды), включите отдельные переключатели вместо опции для нового диалога.
Настройка сообщений о согласии
Под переключателями находится карточка Consent & Privacy (Согласие и конфиденциальность), которая позволяет настроить текст, отображаемый посетителям.
- Consent intro message (Вводное сообщение о согласии) - текст, отображаемый над чекбоксом согласия. Например: "Пожалуйста, подтвердите, что вы прочитали и принимаете нашу Политику конфиденциальности, чтобы продолжить."
- Message to inform users about Privacy Policy consent requirement (Сообщение с информацией о необходимости согласия с Политикой конфиденциальности) - текст подписи рядом с чекбоксом. Используйте markdown, чтобы добавить ссылку на вашу политику конфиденциальности:
I have read and accept the [Privacy Policy](https://www.example.com/privacy-policy).
После настройки нажмите Save Changes (Сохранить изменения).
Подход 2: загрузка после получения согласия (интеграция с CMP)
Если в вашей политике использования файлов cookie чатбот классифицируется как маркетинговый инструмент, необходимо предотвратить загрузку скрипта ChatLab до тех пор, пока посетитель не даст согласие. Для этого требуется интеграция с платформой управления согласием (Consent Management Platform).
Стандартный код вставки ChatLab
Стандартный код вставки ChatLab выглядит следующим образом:
<script>
window.aichatbotApiKey = "YOUR_API_KEY_HERE";
window.aichatbotProviderId = "YOUR_PROVIDER_ID_HERE";
</script>
<script src="https://script.chatlab.com/aichatbot.js" id="YOUR_API_KEY_HERE" defer></script>
Этот код загружается мгновенно при открытии страницы, независимо от предпочтений посетителя относительно согласия.
Вы можете найти свой API Key и Provider ID на вкладке Deploy (Развертывание) вашего чатбота.
Ниже приведены протестированные способы отложить загрузку скрипта до получения согласия с помощью CookieBot, Usercentrics и Google Tag Manager.
CookieBot
Шаг 1: объявление загрузчика в заблокированном скрипте
Добавьте следующий скрипт на вашу страницу. CookieBot будет блокировать его выполнение до тех пор, пока посетитель не даст маркетинговое согласие.
<script type="text/plain" data-cookieconsent="marketing">
window.loadChatLab = function () {
if (document.getElementById("YOUR_API_KEY_HERE")) return;
window.aichatbotApiKey = "YOUR_API_KEY_HERE";
window.aichatbotProviderId = "YOUR_PROVIDER_ID_HERE";
var script = document.createElement("script");
script.src = "https://script.chatlab.com/aichatbot.js";
script.defer = true;
script.id = "YOUR_API_KEY_HERE";
document.body.appendChild(script);
};
window.unloadChatLab = function () {
var existing = document.getElementById("YOUR_API_KEY_HERE");
if (existing) existing.remove();
delete window.aichatbotApiKey;
delete window.aichatbotProviderId;
};
window.loadChatLab();
</script>
Шаг 2: отслеживание изменений согласия
<script>
function checkCookiebotConsent() {
if (Cookiebot.consents?.marketing && typeof window.loadChatLab === "function") {
window.loadChatLab();
} else if (typeof window.unloadChatLab === "function") {
window.unloadChatLab();
}
}
window.addEventListener("CookiebotOnConsentReady", checkCookiebotConsent);
window.addEventListener("CookieConsentDeclaration", checkCookiebotConsent);
</script>
Usercentrics
Шаг 1: регистрация пользовательского сервиса
В панели управления Usercentrics создайте новый сервис:
- Name: ChatLab
- Category: Marketing
- Behavior: Block execution until consent is granted
Шаг 2: объявление загрузчика
<script>
window.loadChatLab = function () {
if (document.getElementById("YOUR_API_KEY_HERE")) return;
window.aichatbotApiKey = "YOUR_API_KEY_HERE";
window.aichatbotProviderId = "YOUR_PROVIDER_ID_HERE";
var script = document.createElement("script");
script.src = "https://script.chatlab.com/aichatbot.js";
script.defer = true;
script.id = "YOUR_API_KEY_HERE";
document.body.appendChild(script);
};
window.unloadChatLab = function () {
var existing = document.getElementById("YOUR_API_KEY_HERE");
if (existing) existing.remove();
delete window.aichatbotApiKey;
delete window.aichatbotProviderId;
};
</script>
Шаг 3: отслеживание изменений согласия
<script>
function checkUsercentricsConsent() {
var services = window.UC_UI?.getServicesBaseInfo?.() || [];
var hasConsent = services.some(
function (s) { return s.name === "ChatLab" && s.consent.status === true; }
);
if (hasConsent && typeof loadChatLab === "function") {
window.loadChatLab();
} else if (typeof unloadChatLab === "function") {
window.unloadChatLab();
}
}
window.addEventListener("UC_UI_INITIALIZED", checkUsercentricsConsent);
window.addEventListener("UC_UI_CONSENTS_UPDATED", checkUsercentricsConsent);
</script>
Google Tag Manager
Если вы используете GTM с любым CMP-инструментом (CookieBot, Usercentrics или другим), вы можете настроить условную загрузку ChatLab через теги и триггеры.
Шаг 1: создание тега загрузки
- Перейдите в Tags > New (Теги > Создать)
- Установите Tag Type (Тип тега) на Custom HTML (Пользовательский HTML)
- Назовите тег Load ChatLab
- Вставьте следующий HTML-код:
<script>
window.loadChatLab = function () {
if (document.getElementById("YOUR_API_KEY_HERE")) return;
window.aichatbotApiKey = "YOUR_API_KEY_HERE";
window.aichatbotProviderId = "YOUR_PROVIDER_ID_HERE";
var script = document.createElement("script");
script.src = "https://script.chatlab.com/aichatbot.js";
script.defer = true;
script.id = "YOUR_API_KEY_HERE";
document.body.appendChild(script);
};
window.loadChatLab();
</script>
Шаг 2: создание тега выгрузки
- Создайте еще один тег Custom HTML (Пользовательский HTML) с именем Unload ChatLab
- Вставьте следующий HTML-код:
<script>
window.unloadChatLab = function () {
var existing = document.getElementById("YOUR_API_KEY_HERE");
if (existing) existing.remove();
delete window.aichatbotApiKey;
delete window.aichatbotProviderId;
};
window.unloadChatLab();
</script>
Шаг 3: создание триггера согласия
- Перейдите в Triggers > New (Триггеры > Создать)
- Назовите триггер Consent - Marketing Accepted
- Установите Trigger Type (Тип триггера) на Custom Event (Пользовательское событие)
- Укажите Event name (Имя события):
CookieConsentDeclaration - В разделе This trigger fires on (Условия активации триггера) выберите Some Custom Events (Некоторые пользовательские события) с условием:
CookieConsent marketing equals true - Привяжите этот триггер к тегу Load ChatLab
Шаг 4: создание триггера отзыва согласия
Выполните те же действия, чтобы создать триггер на случай отклонения маркетингового согласия, и привяжите его к тегу Unload ChatLab.
Сводка
- Для согласия внутри виджета: перейдите в Bot Settings > Consent & Privacy (Настройки бота > Согласие и конфиденциальность) и включите нужные переключатели. Настройте текст сообщения о согласии и добавьте ссылку в формате markdown на вашу политику конфиденциальности.
- Для загрузки после получения согласия: замените стандартный код вставки условным загрузчиком, который срабатывает только после того, как ваша CMP подтвердит получение согласия на маркетинг.
- Вы можете комбинировать оба подхода для максимального соответствия требованиям - отложить загрузку скрипта до получения согласия на cookie, а затем также запрашивать принятие политики конфиденциальности внутри виджета.