c590528694085efc2aad7701cb8699984b665875
deploy / deploy (push) Successful in 30s
call-center
Омниканальный контакт-центр: телефония (Asterisk), Telegram, WhatsApp, веб-чат, email — плюс встроенный голосовой ИИ-оператор (распознавание речи → LLM → синтез речи). Написан на Python (FastAPI), ~25 сервисов вокруг одной SQLAlchemy-схемы, локально работает на SQLite, в проде — на PostgreSQL.
Документация
| Документ | Про что |
|---|---|
docs/architecture/overview.md |
Обзор микросервисов и их ролей |
docs/architecture/voice-ai.md |
Голосовой ИИ-оператор подробно |
docs/architecture/real-time-voice-service.md |
Рантайм голосового моста (AudioSocket, TTS/ASR) |
docs/architecture/event-schemas.md |
Схемы событий шины (RabbitMQ) |
docs/runbooks/local-setup.md |
Как поднять проект локально (демо-режим и ручной запуск) |
docs/runbooks/deployment.md |
Как разворачивать (Docker Compose / Kubernetes) |
longread.md |
Сквозной архитектурный ревью репозитория — что реально есть, где технический долг |
Быстрый старт
Подробности — в docs/runbooks/local-setup.md. Коротко:
python -m pip install -r requirements.txt
cp .env.example .env # по умолчанию SQLite, без Docker
python scripts/migrate_core_db.py
uvicorn gateway.app:app --reload --port 8080
Точки входа (после старта gateway): /operator, /supervisor, /admin, /analyst на http://localhost:8080.
Демо-режим одной командой (поднимает весь стек + тестовые данные): scripts/prepare_demo.ps1.
Тесты
pytest -q
Частые задачи
- Поменять greeting/system prompt голосового бота Айнур — правится в коде:
services/shared/ai_operator_config.py→ai_operator_default_config(), коммит и деплой; сервис сам синкает значение в БД при старте.
Languages
Python
74.2%
JavaScript
18.8%
HTML
3.4%
CSS
2.9%
PowerShell
0.4%
Other
0.3%