Модуль llink.aibot добавляет на сайт чат-виджет с искусственным интеллектом: отвечает посетителям из локальной базы знаний, а на остальные вопросы — через выбранную AI-модель. Потоковый вывод ответа, приём заявок прямо в чате, журнал переписок с поиском — без единой правки в шаблоне сайта.
Зачем сайту AI-чатПосетитель сайта чаще всего приходит с одинаковыми вопросами: сколько стоит, какие сроки, как оформить заказ, где скачать счёт. Консультант не всегда доступен, а страница контактов или каталог услуг — не самый быстрый способ получить ответ.
Модуль «Первый линк: AI-чат» закрывает эту задачу целиком:
- мгновенные ответы по FAQ — типовые вопросы разбирайте заранее в базе знаний, и посетитель получает ответ без отправки запроса к нейросети (бесплатно и без задержки);
- AI-ответ на нестандартные вопросы — остальное разбирает выбранная модель, отвечая с учётом вашей системной инструкции и сведений о компании;
- захват заявки — если посетитель готов к диалогу, форма заявки открывается прямо в чате: письмо менеджеру, подписанный webhook и событие для интеграции с CRM;
- ничего не теряется — переписка восстанавливается после перезагрузки страницы, а админ-журнал хранит все диалоги с поиском.
- Автоустановка виджета на все страницы сайта без правок в шаблоне (или ручное подключение одной строкой).
- База знаний с поиском по ключевым словам, тремя режимами работы, редактированием в админке, импортом и экспортом JSON, стартовым FAQ на 19 записей.
- Потоковый вывод ответа (SSE) — текст появляется по мере генерации, как в ChatGPT.
- Markdown в ответах: списки, ссылки, код, жирный текст.
- Быстрые вопросы и кнопки-подсказки, которые продолжают беседу одним кликом.
- Форма заявки в чате с настраиваемым набором полей.
- Журнал диалогов с поиском: источник ответа (база или модель), модель, расход токенов, IP, статусы.
- Антифлуд, капча, стоп-лист ботов и мастер-выключатель модуля.
- Гибкое оформление: 4 позиции, 11 цветов, размеры, шрифт, анимации.
Служебные адреса модуля перехватываются на событии ядра main/OnBeforeProlog — до обращения к маршрутизации. Поэтому не требуется изменять .htaccess, конфигурацию nginx или правила urlrewrite: установщик сам добавляет блок автоподключения в init.php сайта. Правки в шаблон не нужны вообще.
Служебные адресаПрефикс по умолчанию — llink-aibot, меняется в настройках, если адрес конфликтует с чем-то на сайте.
| Метод | Адрес | Назначение |
|-------|-------|-----------|
| POST | /llink-aibot/api/ | ответ в формате JSON |
| POST | /llink-aibot/stream/ | потоковый ответ (SSE) |
| POST | /llink-aibot/lead/ | отправка заявки |
| GET | /llink-aibot/captcha/ | картинка капчи |
| GET | /llink-aibot/history/ | переписка своей сессии |
| GET | /llink-aibot/ping/ | проверка ответа модуля |
Виджет ведёт поток через POST-запрос и fetch-ридер — EventSource не используется, поэтому работает и с длинными промптами, и с прокси, которые плохо дружат с классическим SSE. События протокола: session, delta, done, error.
Восстановление перепискиИдентификатор сессии хранится в localStorage посетителя. Адрес history/ отдаёт только тот диалог, чей идентификатор совпал, — чужие переписки через него прочитать нельзя. Полный доступ ко всем диалогам есть только внутри админ-журнала.
AI-провайдерыМодель выбирается на вкладке «AI-модель»: провайдер, ключ, адрес API, модель, температура, лимит токенов, таймаут, глубина истории. Готовые адаптеры:
| Провайдер | Примеры моделей |
|-----------|----------------|
| BitrixGPT | модели VibeCode |
| OpenAI | GPT-серия |
| Yandex GPT | YandexGPT (авторизация: apikey или bearer) |
| GigaChat | GigaChat API (scope настраивается: personal, team, корпоративный) |
| Anthropic | Claude |
| Любой OpenAI-совместимый API | OpenRouter, Together, Groq, Ollama, vLLM, LM Studio |
Кнопка «Проверить подключение» делает минимальный запрос к модели сразу после ввода ключа — конфигурация проверяется до того, как на чат начнут приходить посетители.
База знаний: ответы без расхода токеновВ каждой записи: вопрос (или несколько формулировок) и ответ. Поиск идёт по ключевым словам с повышенным весом полного совпадения фразы; запись срабатывает, когда совпадение превышает настраиваемый порог.
- Режимы работы: «сначала база знаний» (модель включается только если подходящей записи нет), «только база», «база выключена»;
- Дополнительно: порог совпадения, дамп всей базы в системный промпт;
- В админке: добавление, изменение, удаление записей, импорт и экспорт JSON;
- Уже при установке база заполнена стартовым FAQ на 19 записей (лицензии 1С-Битрикс, Битрикс24, контакты, приветствие и другие) — заготовку удобно отредактировать под свои услуги или целиком заменить на свою базу.
Форма заявки открывается внутри чата; состав полей настраивается (например, имя, телефон, комментарий). По заявке одновременно срабатывают три канала доставки:
- Письмо на адреса администраторов (адреса задаются в настройках);
- Webhook с HMAC-подписью тела — обработчик может проверить целостность и происхождение запроса;
- Событие OnAibotLead — стандартный обработчик для интеграции. В параметре лежат поля заявки, источник и ссылка на переписку:
use Bitrix\Main\Event;
use Bitrix\Main\EventManager;
EventManager::getInstance()->addEventHandler(
'llink.aibot',
'OnAibotLead',
static function (Event $event) {
$lead = $event->getParameter(0);
// передаём данные в CRM: поля заявки, источник, ссылка на диалог
}
); |
Журнал переписок
Каждый диалог хранится целиком: сообщения обеих сторон, источник ответа (база знаний или конкретная модель), количество потраченных токенов, IP посетителя, статусы и ошибки — с полнотекстовым поиском по текстам. Запись отключается одним переключателем (например, для страниц, где ведётся обмен персональными данными) — тогда переписка вообще не пишется, но заявки сохраняются.
Срок хранения настраивается: агент очистки удаляет устаревшие записи автоматически.
Оформление виджетаВиджет вписывается в дизайн сайта без правки CSS:
- 4 позиции на экране (углы) с точной настройкой отступов;
- 11 цветов: основной, текст на нём, фон окна и ленты, цвета реплик, границы, ссылки;
- размеры окна и пузыря, скругления, размер и семейство шрифта, тень, анимация;
- имя бота, статус, аватар (картинка или 1–2 буквы), приветствие, подсказка в поле ввода;
- быстрые вопросы и ссылки на страницы сайта в нижней части окна;
- адаптивный дизайн, отдельная настройка отображения на мобильных;
- исключения по URL: чат не показывается на /cart/, /checkout/ и любых заданных адресах.
| Перед публикацией в Маркетплейсе 1С-Битрикс модуль прошёл несколько раундов предмодерационного аудита безопасности; все замечания устранены, журналы версий приложены. |
Что защищает модуль от злоупотреблений публичными эндпоинтами:
- Антифлуд: лимит запросов на посетителя (по умолчанию 10 в минуту и 100 в сутки), общий по сайту (60 в минуту) и лимит длины сообщения.
- Штатная капча ядра Bitrix: посетитель вводит код с картинки, правильный ответ хранится только на сервере — автоматический обход по содержимому вопроса невозможен.
- Стоп-лист ботов по User-Agent.
- Мастер-выключатель: один переключатель гасит и виджет, и все служебные адреса — удобно, чтобы мгновенно остановить расход токена или приём публичных запросов на время всплеска злоупотреблений.
- Приватность истории: переписку другой сессии прочитать нельзя.
- Ничего наружу: сырые тексты ошибок AI-провайдера никогда не отдаются посетителю (только обобщённые сообщения, детали — в серверный журнал).
- CORS выключен по умолчанию.
- Исходящие запросы к AI-провайдерам идут только по HTTPS с проверкой резолвнутых адресов против приватных диапазонов (защита от SSRF).
- Автоочистка журналов агентом по расписанию.
Демо-версия даёт 7 дней полного доступа с обратным отсчётом в админке. Что происходит по истечении срока:
- чат продолжает отвечать из базы знаний — бесплатно и без расхода токенов;
- запросы к AI-модели не отправляются, посетитель получает настраиваемый текст «Ответ после демо-периода» (вкладка «Виджет»);
- в админке появляется понятное уведомление, а кнопка «Проверить подключение» объясняет причину, не расходуя токены.
Для проверки поведения после истечения срока без ожидания есть переключатель «Ограничить модуль бесплатным сроком» на вкладке «Виджет». Полная версия, купленная в Маркетплейсе 1С-Битрикс, ограничений по сроку не имеет.
Установка- Скопируйте модуль в /bitrix/modules/llink.aibot/.
- Очистите файловый кеш: Настройки → Настройки продукта → Очистка файлов кеша.
- Установите модуль: Настройки → Настройки продукта → Модули.
- Откройте настройки модуля, вкладка «AI-модель»: выберите провайдера, вставьте ключ и нажмите «Проверить подключение».
- По необходимости заполните «Промпт» (инструкция ассистенту, сведения о компании) и «База знаний».
Установщик сам создаёт таблицы, записывает настройки по умолчанию, заполняет базу знаний стартовым FAQ, копирует файлы виджета, добавляет блок автоподключения в init.php сайта и регистрирует агента очистки журналов.
Ручное подключение (одной строкой)Если нужен контроль места вывода — выберите режим «Вручную» на вкладке «Виджет» и добавьте вызов в шаблон:
use Bitrix\Main\Loader;
if (Loader::includeModule('llink.aibot')) {
\llink_aibot::addWidget();
} |
Ответы на частые вопросы
Что будет, если AI-провайдер оказался недоступен или бюджет исчерпан?
Чат продолжает работать: при ошибке выдаётся обобщённое сообщение без внутренних подробностей, детали пишутся в серверный журнал. Провайдера при этом можно переключить на другой — включая любой OpenAI-совместимый сервис — парой действий в настройках.
Можно ли отключить AI и оставить базу знаний?Да. На вкладке «База знаний» выберите режим «Только база знаний» — ответы будут генерироваться исключительно из ваших записей без запросов к модели.
Как избежать утечки данных переписки?Переписку можно не сохранять вовсе (переключатель записи диалогов), ограничить срок хранения или задать страницы, где чат не показывается. Чужой доступ к перепискам через публичные адреса исключён: API history/ отвечает только по идентификатору собственной сессии посетителя.
Нужны ли навыки разработки?Нет. Всё настраивается в админке; код требуется только для ручного подключения виджета в шаблоне (одна строка) или кастомной интеграции заявок с CRM (один обработчик события).
Попробуйте на своём сайтеЖивая демо-страница показывает виджет целиком: потоковые ответы, Markdown, кнопки-подсказки и форма заявки — плюс панель реального вида виджета на разных устройствах.
Чат-виджет с искусственным интеллектом, который подключается к сайту автоматическии отвечает посетителям, опираясь на локальную базу знаний и выбранную AI-модель.
Возможности:
- Автоматическая установка виджета на всех страницах сайта — без правок в .htaccess,
nginx и шаблоне (служебные адреса перехватываются на этапе main/OnBeforeProlog)
- Ручное подключение одной строкой в шаблоне (режим «вручную»)
- Локальная база знаний: мгновенные и бесплатные ответы по частым вопросам,
поиск по ключевым словам с весом фраз, импорт и экспорт в JSON
- Потоковый вывод ответа (SSE) — текст печатается по мере поступления
- Поддержка простого Markdown: списки, ссылки, код, жирный текст
- Быстрые вопросы и кнопки-подсказки, которые формирует сама модель
(технические строки «?suggestion:» убираются из текста)
- Форма заявки прямо в чате: письмо менеджерам, подписанный webhook
и событие модуля для автоматизации CRM
- Журнал переписок с поиском: видно вопросы посетителей, ответы, источник
(база или модель), модель, токены и IP
- Провайдеры: BitrixGPT (VibeCode), OpenAI, YandexGPT, GigaChat, Anthropic Claude
и любой OpenAI-совместимый API (OpenRouter, Together, Groq, Ollama, vLLM, LM Studio)
- Кнопка «Проверить подключение» в админке: запрос к модели без реального посетителя
- 4 позиции виджета, 11 настраиваемых цветов, размеры, скругления, шрифт, анимации
- Адаптивный дизайн и поддержка мобильных
- Безопасность: антифлуд (на посетителя и общий), стоп-лист ботов по User-Agent,
простая капча, ограничение длины сообщения, CORS выключен по умолчанию,
автоочистка журналов по возрасту агентом Bitrix
1. Откройте настройки модуля, укажите провайдера, ключ API и модель
2. Нажмите «Проверить подключение» — должен прийти ответ модели
Использование:
По умолчанию виджет подключается сам. Чтобы подключить его вручную (на вкладке «Виджет» выберите режим «Вручную»), добавьте в header.php шаблона:
<?php
use Bitrix\Main\Loader;
if (Loader::includeModule('llink.aibot')) {
\llink_aibot::addWidget();
}
?>
Вспомогательные вызовы:
<?php
// готовность провайдера (например, чтобы не показывать виджет без ключа)
var_dump(\llink_aibot::isReady());
// адреса служебных эндпоинтов
print_r(\llink_aibot::endpoints());
?>
Служебные адреса модуля (префикс настраивается на вкладке «Виджет»):
- POST /llink-aibot/api/ — обычный ответ JSON
- POST /llink-aibot/stream/ — потоковый ответ SSE
- POST /llink-aibot/lead/ — отправка заявки
- GET /llink-aibot/captcha/ — получить вопрос капчи
- GET /llink-aibot/history/ — переписка своей сессии (восстановление после перезагрузки)
- GET /llink-aibot/ping/ — проверка, что модуль отвечает
Адрес history/ отдаёт только диалог с идентификатором сессии, который хранится
в localStorage посетителя и передаётся как bearer-токен, поэтому чужие переписки
через него прочитать нельзя.
Интеграция с CRM:
При сохранении заявки модуль отдаёт событие OnAibotLead,
в обработчике которого доступны данные заявки и ссылка на переписку:
EventManager::getInstance()->addEventHandler(
'llink.aibot',
'OnAibotLead',
function (Event $event) {
$lead = $event->getParameter(0);
// $lead — массив полей заявки
}
);
Настройка модуля:
1. Настройки > Настройки продукта > Настройки модулей
2. Выберите «Первый линк: AI-чат для сайта»
3. Вкладка «AI-модель» — провайдер, ключ, адрес API, модель, потоковый ответ
4. Вкладка «Промпт» — инструкция ассистенту и сведения о компании
5. Вкладка «База знаний» — режим, порог совпадения, CRUD пар «вопрос — ответ»
6. Вкладка «Виджет» — режим подключения, тексты, быстрые вопросы, ссылки, цвета
7. Вкладка «Безопасность» — антифлуд, стоп-лист ботов, капча, CORS
8. Вкладка «Заявки» — поля формы, письма, webhook
9. Вкладка «Журналы» — запись диалогов, поиск и очистка
В случае проблем или необходимости настройки или доработки обращайтесь client@1lsite.ru
График работы поддержки: пн-пт 10:00-18:00 (МСК), время реакции на обращение 1-3 раб.дня в порядке очерди.
Для покупки товара в нашем интернет-магазине выберите понравившийся товар и добавьте его в корзину. Далее перейдите в Корзину и нажмите на «Оформить заказ» или «Быстрый заказ».
Если оформляете быстрый заказ: напишите ФИО, телефон и e-mail. Вам перезвонит менеджер и уточнит условия заказа. По результатам разговора вам придет подтверждение оформления товара на почту или через СМС. Теперь останется только ждать доставки и радоваться новой покупке.
Оформление заказа в стандартном режиме выглядит следующим образом. Заполняете полностью форму по последовательным этапам: адрес, способ доставки, оплаты, данные о себе. Советуем в комментарии к заказу написать информацию, которая поможет курьеру вас найти. Нажмите кнопку «Оформить заказ».
Оплачивайте покупки удобным способом. В интернет-магазине доступно 3 варианта оплаты:
- Наличные при самовывозе или доставке курьером. Специалист свяжется с вами в день доставки, чтобы уточнить время и заранее подготовить сдачу с любой купюры. Вы подписываете товаросопроводительные документы, вносите денежные средства, получаете товар и чек.
- Безналичный расчет при самовывозе или оформлении в интернет-магазине: карты МИР. Чтобы оплатить покупку на сайте, система перенаправит вас на сервер платежной системы. Здесь нужно ввести номер карты, срок действия и имя держателя.
- Электронные системы при онлайн-заказе: ЮMoney. Для совершения покупки система перенаправит вас на страницу платежного сервиса. Здесь необходимо заполнить форму по инструкции.
- Безналичная оплата на наш расчетный счет по выставленному счету.
Экономьте время на получении заказа. В интернет-магазине доступно 4 варианта доставки:
- Электронная поставка - все необходимые сведения о лицензии, праве пользования, кодах, ключах и др. высылаются покупателю на его e-mail.
- Курьерская доставка. Когда товар будет отправлен с нашего склада, Вам придет уведомление. В день доставки с Вами заблаговременно свяжется курьер для уточнения времени и деталей доставки. Доставка производится "до двери". Осмотрите упаковку на целостность и соответствие указанной комплектации.
- Постамат. Когда заказ поступит на точку, на Ваш телефон или e-mail придет уникальный код. Заказ нужно оплатить в терминале постамата. Срок хранения — 3 дня.
- Доставка Почтой России. Когда заказ придет в отделение, на Ваш адрес придет извещение о посылке. Перед оплатой Вы можете оценить состояние коробки: вес, целостность. Вскрывать коробку самостоятельно Вы можете только после оплаты заказа. Один заказ может содержать не больше 10 позиций и его стоимость не должна превышать 100 000 р.
Дополнительная информация.
Изучите полный алгоритм продления лицензий на модули 1С-Битрикс: Маркетплейс, включая активацию льготных купонов. Мы детально разбираем все условия: обязательный 30-дневный срок для сохранения максимальной выгоды, пропорциональное ценообразование (12,5%, 25%, 50% от цены модуля) и ограничение по минимальной сумме в 500 рублей. Этот гайд поможет вам эффективно планировать бюджет и гарантировать актуальность вашего проекта.