Не просто форма
Нужно было не только принимать контакт, а доводить пользователя до заявки через сценарий.
Production-прототип системы для сбора, квалификации и обработки заявок с сайта: форма, чат-бот, WebSocket-чат с оператором, админка, роли, аудит, Telegram-интеграция, UTM и аналитика.
Роль: системный аналитик + разработчик/интегратор.
Изначальная идея была широкой: “сайт с умным чатом для заявок”. Нужно было структурировать хаотичный скоуп и превратить его в понятную lead management систему.
Нужно было не только принимать контакт, а доводить пользователя до заявки через сценарий.
Чат должен быть связан с заявкой, историей диалога, оператором и админкой.
Telegram используется как канал уведомления, а основной источник данных — PostgreSQL.
Для MVP выбран модульный монолит: публичный сайт, API, админка, чат, интеграции и аналитика находятся в одной кодовой базе. Real-time часть вынесена в отдельный Socket.IO-процесс, который разворачивается рядом с Next.js-приложением и использует общую PostgreSQL-базу.
Центральная сущность — Lead. Вокруг неё строятся комментарии, события, интеграционные логи, источники и чат-сессии.
Часть целевой модели реализована физически, часть заложена как проектное развитие.
Для real-time чата описаны события, payload, роли visitor/operator, комнаты chat:{sessionId}, обработка ошибок и fallback-сценарии.
Для проекта подготовлен комплект аналитической документации.
Документация хранится в репозитории в папке docs.
Получился production-прототип lead management системы: пользователь может оставить заявку через форму или чат, оператор может обработать обращение в админке, real-time чат сохраняет историю, а система фиксирует статусы, события, интеграции, UTM и действия пользователей.
Демо-доступ лучше передавать отдельно, чтобы не публиковать пароль на сайте.