From 4c014b896fd3c6facb9568bb1deb7a3cd75fb144 Mon Sep 17 00:00:00 2001 From: neo <397763@gmail.com> Date: Wed, 10 Jun 2026 21:18:55 +0500 Subject: [PATCH] =?UTF-8?q?Update:=20persona-based=20bot,=20fallback?= =?UTF-8?q?=E2=86=92lead=20pipeline,=20content=20admin,=20voice=20specific?= =?UTF-8?q?s?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- PLAN.md | 65 ++++++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 46 insertions(+), 19 deletions(-) diff --git a/PLAN.md b/PLAN.md index 341b4e3..a0def55 100644 --- a/PLAN.md +++ b/PLAN.md @@ -1,5 +1,7 @@ # 🗺️ План реализации calls24 +> На основе кейса Adict.ru: команда персон, маршрутизация, честный fallback → лид. + ## Этап 0: Инфраструктура (неделя 1) - [x] Репозиторий на Gitea (`neo/calls24`) @@ -25,7 +27,7 @@ **Вход:** WAV/MP3 файлы **Выход:** JSON-анализ + HTML-отчёт -## Этап 2: Генерация скрипта (недели 3-4) +## Этап 2: Генерация скрипта и персон (недели 3-4) ### voice-analyzer/pattern_gen.py - [ ] Анализ паттернов успешных звонков @@ -34,13 +36,18 @@ - Фразы-крючки - Обработка возражений - Закрытие сделки -- [ ] Сохранение скрипта в PostgreSQL +- [ ] Генерация набора персон (на основе типа бизнеса) + - Менеджер продаж (основной) + - Консультант (вопросы) + - Финансист (цены, ипотека) + - Куратор (постпродажа) +- [ ] Сохранение скриптов и персон в PostgreSQL - [ ] Версионирование скриптов **Вход:** Анализ 100+ звонков клиента -**Выход:** JSON state machine для робота +**Выход:** JSON state machine для каждой персоны -## Этап 3: Голосовой робот (недели 4-6) +## Этап 3: Голосовой робот (недели 4-7) ### voice-bot/ - [ ] `main.py` — FastAPI (REST + WebSocket) @@ -53,52 +60,72 @@ - STT → текст - LLM → текст → TTS → аудио - Задержка <1 сек -- [ ] `script.py` — State Machine - - Приветствие - - Квалификация - - Предложение +- [ ] `router.py` — Маршрутизатор между персонами + - Автоопределение роли по контексту + - Выбор персоны (автоматически или клиент выбирает) +- [ ] `persona.py` — State Machine для каждой персоны + - Приветствие (с тоном персоны) + - Квалификация / Ответ на вопросы + - Предложение / Консультация - Возражения - - Закрытие + - Закрытие / Передача - [ ] `memory.py` — Контекстная память (Redis) + - Общая память сессии (персона видит, что было до) + - Память персоны (её специфичные данные) +- [ ] `fallback.py` — Честный «не знаю» + - Не галлюцинировать + - Предложить контакт менеджера + - Сохранить тему в content_entries +- [ ] `voice_bridge.py` — Звуковой мостик (300мс) + - При передаче между персонами + - Чтобы клиент не чувствовал разрыва -**Вход:** SIP-линия -**Выход:** Живой голосовой разговор +**Критичные фичи голоса:** +- Прерывания: клиент перебивает → система замолкает мгновенно +- Пауза внутри мысли ≠ конец фразы (ждём 1.5-2с тишины) +- Защита ролей: персоне нельзя уходить в чужую роль -## Этап 4: Замкнутый цикл (недели 6-8) +## Этап 4: Замкнутый цикл + контент-админка (недели 7-9) - [ ] Автоматический анализ звонков робота - [ ] Выявление слабых мест скрипта - [ ] Автогенерация улучшенной версии - [ ] A/B тестирование скриптов +- [ ] **Content Admin** — админка для контент-менеджера + - Список «запрашиваемых тем, на которые нет ответа» + - Добавление ответов без участия разработчика + - Гибридный поиск (BM25 + эмбеддинги) + - Обновление KB без релиза - [ ] Dashboard для мониторинга **Вход:** Все звонки робота -**Выход:** Улучшенный скрипт → новая версия +**Выход:** Улучшенный скрипт + обновлённая KB → новая версия -## Этап 5: CRM и интеграции (недели 7-9) +## Этап 5: CRM и интеграции (недели 9-11) - [ ] Bitrix24 (контакты, сделки) - [ ] AmoCRM (контакты, воронки) - [ ] Telegram-бот для клиента - [ ] API для сторонних систем -## Этап 6: Продуктовеение (недели 9-12) +## Этап 6: Продуктовеение (недели 11-14) - [ ] Веб-дашборд для клиента - [ ] Личный кабинет - [ ] Аналитика по звонкам - [ ] Биллинг и оплата -- [ ] Onboarding-онбординг +- [ ] Onboarding ## Приоритеты 1. **Самый быстрый путь к деньгам:** Этап 1 (анализ 5-10 звонков → отчёт) -2. **Главная фича:** Этап 3 (реальный голосовой робот) -3. **Конкурентное преимущество:** Этап 4 (замкнутый цикл) +2. **Главная фича:** Этап 3 (голосовой робот с персонами) +3. **Конкурентное преимущество:** Этап 4 (замкнутый цикл + «не знаю» → лид) ## Риски - Yandex Realtime API: задержка, стабильность WebSocket - SIP: NAT-пробросы, проброс RTP, WebSIP Proxy стабильность - 152-ФЗ: хранение записей, согласие клиентов -- Конкуренция: Exolve (МТС) — большой игрок с бюджетом +- Конкуренция: Exolve (МТС), Звонобот, Unibell +- **Ключевой риск:** качество TTS — должен быть естественный, не шаблонный