🚀 Быстрая интеграция
Добавьте этот скрипт на любую страницу вашего сайта:
Или с настройками:
⚙️ Конфигурационные опции
🔧 Ручная инициализация
Если вам нужна ручная инициализация:
✨ Особенности
🎯 Один скрипт
Всего один тег <script> для полной интеграции. Никаких зависимостей от фреймворков сайта.
🌐 Web Components
Использует современные Web Components с Shadow DOM для полной изоляции стилей.
📡 Streaming
Поддержка потокового ответа от n8n для实时 общения.
📱 Адаптивный
Автоматически адаптируется под мобильные устройства.
🔒 Безопасный
Backend проксирует запросы, webhook n8n никогда не раскрывается в браузере.
🚀 Production-ready
Оптимизирован для работы в Docker/Coolify с правильной конфигурацией nginx.
📚 API Документация
Эндпоинт чата
POST /api/chat
Content-Type: application/json
{
"text": "Привет, как дела?",
"sessionId": "session_1234567890_abc123def",
"metadata": {
"timestamp": "2024-01-11T12:00:00.000Z",
"userAgent": "Mozilla/5.0...",
"url": "https://example.com/page"
}
}
Ответ
Content-Type: text/plain
Transfer-Encoding: chunked
Привет! У меня все отлично, спасибо что спросил...
Коды ответов
- 200 OK: Успешный ответ, данные передаются потоково
- 400 Bad Request: Неверный формат запроса
- 500 Internal Server Error: Ошибка сервера или n8n
- 504 Gateway Timeout: Таймаут подключения к n8n
Формат стриминга
API поддерживает потоковую передачу данных в формате NDJSON (Newline Delimited JSON) от n8n:
{"type": "item", "content": "Привет"}
{"type": "item", "content": "Как дела?"}
{"type": "end"}
🛠 Техническая информация
Архитектура системы:
- Frontend: Vanilla JS + Web Components + Shadow DOM + TailwindCSS
- Backend: Node.js HTTP server с проксированием к n8n
- Streaming: ReadableStream API для chunked responses
- Инфраструктура: Docker Compose + nginx + Coolify
- Стилизация: TailwindCSS с поддержкой темной темы
- Хранение: localStorage для персистентности сессий