Динамическое создание
Например, вы хотите разные чаты для разных страниц вашего сайта. В случае, если у вас есть видеохостинг, вы можете создавать разные чаты для каждого видео. Генерируйте эти чаты налету, используя систему дочерних чатов.
ChatbroLoader
ChatbroLoader - это имя функции javascript, которая отображает чат. Выглядит так:
ChatbroLoader({
...
});
Функция принимает объект {}, который наполнен различными параметрами. Есть обязательные параметры как идентификатор чата (encodedChatId), так и необязательные. По encodedChatId мы понимаем какой чат нужно показать клиенту. Подробный пример вызова функции ChatbroLoader есть в документации.
Вот так отображается обычный чат:
ChatbroLoader({
encodedChatId: 'Здесь будет ваш идентификатор чата из редактора чата'
});
Конкретный пример:
ChatbroLoader({
encodedChatId: '38Gjv'
});
38Gjv - идентификатор чата, который мы только что создали для примера. У вас будет собственный идентификатор. Система автоматически выдаст его при создании нового чата.
Вам не нужно ничего писать от руки. Достаточно зайти на наш сайт, нажать «Создать чат» и вы попадете в редактор чата. Вверху, под кнопкой «Вставить код» будет готовый код, который можно просто вставить на свой сайт (в html коде) и появится чат.
Дочерние чаты
Дочерний чат - это чат, который использует настройки другого (родительского) чата. Это сделано для автоматизации процесса создания ваших чатов.
Допустим, у вас есть сотня товаров. Для каждого товара есть своя сгенерированная html страница. И вам нужно, чтобы у каждого товара был свой чат, со своей уникальной перепиской. Руками создавать 100 чатов будет неудобно. Достаточно создать руками один родительский чат, настроить его, а потом автоматически создавать дочерние чаты. Они будут использовать настройки родителя, выглядеть и работать как родитель.
Блокировки и модераторы будут общими для всех чатов. Это означает, что, заблокировав пользователя в одном чате, он будет автоматически заблокирован во всех остальных, связанных одним родителем. То же самое с модераторами - модератор, назначенный для одного чата, станет модератором во всех дочерних чатах.
Как создать дочерний чат?
Дочерний чат отображается подобным образом, что и обычный - вызовом функции ChatbroLoader, но с другими параметрами.
Вызов выглядит так:
ChatbroLoader({
parentEncodedChatId: 'ID родительского чата',
chatTitle: 'Любое_имя_чата'
});
Или конкретный пример:
ChatbroLoader({
parentEncodedChatId: '38Gjv',
chatTitle: 'First child chat'
});
Доступные параметры:
parentEncodedChatId
- Id родительского чата;chatTitle
- Уникальное название чата, которое будет использоваться в качестве идентификатора чата;extId
- Необязательный параметр. Если вы хотите иметь два и более разных чатов с одинаковыми названиями, добавьте этот параметр. Timestamp идеально подойдет для этого.
Помните, что для более тонкой настройки, вы можете добавлять другие параметры из таблицы. Это добавит новые или перезапишет родительские настройки.
Обратите внимание, что здесь отсутствует encodedChatId. Он заменен на parentEncodedChatId.
Чтобы чат мог стать родителем, он должен соответствовать условиям:
- У него должен быть администратор (для этого при создании чата необходимо авторизоваться);
- Он не должен быть дочерним чатом;
- Флажок «Разрешить дочерние чаты» должен быть включен в конструкторе. По умолчанию он выключен.
При первом запросе наш сервер проверяет базу данных. Если такой дочерний чат уже существует, он возвращается и отображается. Если нет - создается новый. Это автоматически создает новые чаты на лету. Если дочерний чат не создастся, причина будет напечатана в консоли браузера. Такие чаты будут использовать родительские настройки, а именно:
- Визуальные настройки;
- Настройки авторизации;
- Секретный ключ;
- Настройки конфиденциальности;
- Функция фильтра сообщений;
- Тариф, баланс.
Обратите внимание, что при редактировании любого дочернего чата вы автоматически перенаправляетесь в редактор родительского чата (там будет соответствующее уведомление). Будьте осторожны при настройке родительского чата - изменения мгновенно коснутся всех детей.
Практика
Давайте создадим пару дочерних чатов.
- Для начала стоит создать один родительский чат.
- Перейдите на chatbro.com.
- Авторизуйтесь в правом верхнем углу любым удобным способом.
- Нажмите «Создать чат». Попадем на страницу с редактором чата. Это наш новый чат. Сразу заметим вверху большую зеленую кнопку «Код для встраивания». Вы можете щелкнуть по ней. Откроется именно та функция запроса чата (ChatbroLoader). Как можете заметить, там уже есть собственный идентификатор чата. Если вы скопируете этот код и вставите его на html-страницу, то появится чат. Но сейчас нам это не нужно.
- Теперь настроим родительский чат.
- Теперь настроим чат под ваши нужды. Настройка чата очень гибкая.
- В этом примере мы ограничимся одной визуальной настройкой. Это необязательно, просто чтобы показать, что чаты наследуют настройки. Установите любой цвет рамки чата (Блок «Цвета»).
- Найдите слева блок с названием Динамическое создание и в нем кликните Разрешить дочерние чаты. По умолчанию для в новых чатах этот параметр отключен по соображениям безопасности. Не забудьте все сохранить. После активации ниже появится новый код. Это та же функция для вызова дочернего чата. Id уже был заменен на нужный. Теперь достаточно скопировать и вставить этот код на html-страницу, и будет создан ваш первый дочерний чат.
- Все готово для использования на вашем сайте.
Пример
ChatbroLoader([{
encodedChatId: '38Gjv',
containerDivId: 'parentChat'
}, {
parentEncodedChatId: '38Gjv',
containerDivId: 'childChat1',
chatTitle: 'First child chat'
}, {
parentEncodedChatId: '38Gjv',
containerDivId: 'childChat2',
chatTitle: 'Second child chat'
}]);