← ubpl.ru

Документация

Как встроить веб-виджет на сайт?

Встройте чат за ~15 минут: подключите <script src="https://ubpl.ru/widget/widget.js"> и элемент <ubpl-widget> с токеном из кабинета — ассистент отвечает по базе знаний на той же странице.

Скрипт загружается с https://ubpl.ru/widget/widget.js.

Как быстро встроить виджет на страницу?

Скопируйте фрагмент ниже перед закрывающим </body> — это минимальная рабочая вставка с токеном и tenant-id из кабинета.

<script src="https://ubpl.ru/widget/widget.js" async></script>
<ubpl-widget
  widget-token="ВАШ_ТОКЕН"
  tenant-id="ВАШ_TENANT_ID"
  widget-id="ВАШ_WIDGET_ID"
  title="Поддержка"
  initial-message="Привет! Чем могу помочь?"
  theme="light"
  api-base="https://api.ubpl.ru"
></ubpl-widget>

Какие атрибуты поддерживает ubpl-widget?

Обязательны widget-token и tenant-id; остальные настраивают тему, приветствие и API — все атрибуты задаются на ubpl-widget в HTML.

АтрибутТипПо умолчаниюОписание
widget-tokenstringТокен виджета из дашборда (обязательно)
tenant-idstringTenant ID ассистента (UUID) (обязательно)
widget-idstringID виджета (опционально, для расширенной конфигурации)
api-basestringсм. описаниеБазовый URL API. Если не указан: в браузере обычно origin страницы, иначе https://api.ubpl.ru.
widget-colorstring (hex)#2563ebЦвет акцента (кнопка, шапка)
themelight | dark | autolightЦветовая схема панели чата
titlestringЧатЗаголовок панели чата
placeholderstringВведите сообщение…Текст поля ввода
initial-messagestringПриветственное сообщение ассистента
suggested-questionsstring (JSON)JSON-массив подсказок, напр. ["Цены?","Контакты?"]
streambooleantrueПотоковый вывод ответа (SSE). Значение false отключает стриминг

Как настроить светлую или тёмную тему?

Укажите theme="light", dark или синхронизируйте с классом dark на сайте; widget-color меняет только акцент.

Светлый сайт (по умолчанию)

Достаточно не указывать theme — используется светлая схема.

<ubpl-widget widget-token="..." tenant-id="..."></ubpl-widget>

Тёмный сайт

<ubpl-widget widget-token="..." tenant-id="..." theme="dark"></ubpl-widget>

Сайт с переключением тем (JS)

Пример: синхронизация с классом dark на <html> (как в типичных темах Next.js / Tailwind).

const widget = document.querySelector('ubpl-widget');

const observer = new MutationObserver(() => {
  const isDark = document.documentElement.classList.contains('dark');
  widget.setAttribute('theme', isDark ? 'dark' : 'light');
});
observer.observe(document.documentElement, {
  attributes: true,
  attributeFilter: ['class']
});

// Установить начальное значение
const isDark = document.documentElement.classList.contains('dark');
widget.setAttribute('theme', isDark ? 'dark' : 'light');

Брендовый цвет

<!-- Акцент под ваш бренд -->
<ubpl-widget
  widget-token="..."
  tenant-id="..."
  widget-color="#e11d48"
  theme="dark"
></ubpl-widget>

Где взять токен виджета?

Токен, tenant-id и готовый embed-код появляются в кабинете после подключения канала «Веб-виджет» к ассистенту.

Быстрый способ (через Channels Hub)

  1. Откройте дашборд и выберите ассистента.
  2. Перейдите на вкладку Каналы (/bots/{id}?tab=channels).
  3. Найдите карточку Веб-виджет и нажмите «Подключить».
  4. В открывшейся панели скопируйте готовый embed-код.

Расширенные настройки

После подключения нажмите «Полные настройки» — откроется /widgets/{widgetId}, где доступны кастомизация цвета, заголовка, приветствия и suggested questions.