Кейс месяца · Telegram-бот «Диспетчер»

Бот за 3 недели и 150 000 ₽ — конкуренты давали 600 000 ₽ и 3 месяца.

Клиент работает в B2B: крупный поставщик электроники в Москве. Команда 8 человек, в трёх мессенджерах падает 200-500 сообщений в день, часть из них терялась, и клиенты уходили из-за «не вовремя ответили». Я собрал бот: он принимает пересланные сообщения, классифицирует их, оценивает важность и раскидывает по нужным чатам.

Стек · Python + GPT-4o-mini + Sheets

Хаос Telegram + WeChat + WhatsApp превращается в управляемые задачи

Бот принимает пересланные сообщения, нейросеть классифицирует на категории (платежи, склад, логистика, поставки), оценивает важность 0-100, выделяет дедлайны и контакты, маршрутизирует в нужные чаты команды.

Персональные данные маскируются по 152-ФЗ: реальные ФИО, телефоны и реквизиты в нейросеть не уходят. Бот юридически не оператор ПД. Под капотом 52 файла Python, 45 unit-тестов, решения архитектуры зафиксированы в ADR.

×4
дешевле конкурентов (150к vs 600к)
×4
быстрее (3 недели vs 3 месяца)
52
файла Python + 45 unit-тестов
$5
в месяц инфраструктура (VPS + API)
Хронология

3 недели от ТЗ до прода

Неделя 0
Brief + ТЗ
11-страничное ТЗ, 4 раунда вопросов владельцу, расшифровка 8 живых чатов команды.
Неделя 1
Архитектура
5 ADR-решений: Python как ядро, Sheets вместо отдельной БД, polling, PII-masking, псевдонимы.
Неделя 1-2
Pipeline
Парсер пересланных сообщений → masker → GPT-4o-mini classifier → router → Sheets writer.
Неделя 2-3
Тесты
45 unit-тестов, eval-set из 80 реальных сообщений, точность классификации 87%.
Неделя 3
Деплой
VPS, systemd-сервис, мониторинг через Telegram-уведомления, бэкапы Sheets.
После
Сопровождение
4 недели гарантии. Tier 4 абонемент: поддержка и обучение команды.
Цитата заказчика

«Терять деньги, сроки, обязательства и контакты из-за того, что переписка не оцифрована»

— владелец компании-клиента, главная боль из ТЗ. Решение в проде с конца апреля 2026.

Боль клиента

Что было до бота

Крупный B2B-поставщик электроники в Москве. Команда из восьми человек, заявки сыплются в три мессенджера одновременно. Менеджеры тонут в переписке, часть запросов теряется в чатах, часть повторяется по второму кругу.

Три мессенджера параллельно

Telegram, WeChat, WhatsApp: поставщики и клиенты пишут туда, куда удобно им. Команда разрывается между окнами, часть сообщений уходит на дно и не возвращается.

Дублирование работы

Менеджеры теряют треды, переспрашивают коллег по второму кругу. Одно и то же сообщение разбирается двумя людьми, а соседняя заявка лежит нетронутой.

Часовой пояс Китая

Поставщики из Китая пишут ночью по Москве. Утром менеджер открывает чат, а там 40 сообщений вперемешку с личным флудом. Первый ответ клиенту уходит к обеду.

Забытые заявки = деньги мимо

Обязательства и риски из переписки не превращаются в задачи. Сделка, о которой договорились в чате две недели назад, всплывает, только когда клиент сам напомнит. А он может и не напомнить.

Бизнес-информация остаётся в переписках, не превращается в задачи, сделки, контроль рисков. Так формулирует проблему сам владелец. С этой точки я и начал.

Что собрали

Архитектура: один Python-процесс на VPS

Никакой отдельной CRM, никакого SaaS-конструктора. Бот в Telegram, нейросеть для классификации, Google Sheets как единый реестр. Шесть блоков, всё в одном процессе.

VPS это арендованный сервер, где крутится бот. CRM это система учёта клиентов и сделок. LLM это языковая модель, та самая нейросеть, что разбирает текст.

01 · Приёмник

Telegram-бот квалифицирует входящее

Команда пересылает в бот сообщения из любого мессенджера. Бот достаёт текст, автора, время, контекст. Дальше это идёт в обработку.

02 · Классификатор

GPT-4o-mini раскладывает по категориям

Платежи, склад, логистика, поставки, претензии. Плюс оценка важности 0-100, выделение дедлайнов, имён, сумм. Ответ приходит JSON-схемой, не свободным текстом.

03 · Маршрутизатор

Четыре функциональных чата

Сообщение уходит к нужному менеджеру или в групповой чат отдела. Платежи летят финансисту, склад кладовщикам, логистика отделу доставки, поставки закупщикам.

04 · Реестр

Google Sheets как единая лента

Каждое сообщение, задача, риск, контакт попадают в таблицу. Команда видит общую картину в браузере без отдельного интерфейса. Фильтры, поиск, статусы работают нативно.

05 · Напоминалка

APScheduler ловит просрочки

Утренний дайджест: что висит, что горит, по кому нет ответа сутки. Вечерний показывает, что закрыто за день. Бот сам пингует ответственного, не дожидаясь, пока вспомнят.

06 · Дашборд

Сводка для собственника

Сколько сообщений за день, по каким категориям, что зависло. Без отдельной BI-системы, просто Google Sheets со сводными на отдельном листе. Владелец смотрит с телефона.

Сравнение подходов

3 недели и 150 000 ₽ против альтернатив

Тот же функционал клиент мог получить тремя способами. Вот честное сравнение.

Мой подход · vibe coding

3 недели · 150 000 ₽

Python + Google Sheets + GPT-4o-mini. Один разработчик, один процесс на VPS за $5/мес. Развёртывание через systemd-сервис. Меняется быстро, держится дёшево.

Студия-конкурент

3 месяца · 600 000 ₽

Кастомная CRM с нуля: фронтенд, бэкенд, миграции БД, штат из трёх разработчиков. Долго, дорого, и в итоге получаешь отдельную систему, которой надо учить команду.

Битрикс24 / готовая CRM

1-2 мес · 80 000 ₽/год

Настройка под себя, лицензии, обучение. Главный сценарий она не закрывает: пересылку сообщений из трёх мессенджеров и классификацию нейросетью приходится допиливать костылями, и работают они так себе.

Разница в пользу клиента: 450 000 ₽ и 2.5 месяца, которых не пришлось ждать перед запуском. Бот заработал в проде в конце апреля 2026.

Откуда экономия

Почему так быстро и дёшево

Vibe coding в Claude Code

Python пишется промптами с правками, не вручную с нуля. 52 файла и 45 unit-тестов за три недели вытягивает инструмент, без всякой магии. Один человек делает то, на что студия ставит троих.

Google Sheets как база данных

Не отдельная CRM, не PostgreSQL, не админка. Команда смотрит привычный интерфейс таблицы: фильтры, сортировка, поиск. Миграцию на полноценную базу можно сделать позже, если объём вырастет.

GPT-4o-mini вместо самописного классификатора

Дешёвая модель плюс системный промпт с триггерами плюс 5-7 размеченных примеров. Около $10 в месяц на API при текущем объёме. Своя ML-модель стоила бы месяца обучения и в десять раз дороже в эксплуатации.

Фокус на одном модуле

Я взял ровно тот блок, которого не хватало: диспетчеризацию входящего потока. Остальные процессы у клиента уже работали. Не лезу туда, где не просили.

Результаты

Что изменилось у клиента

  • Время первого ответа сократилось. Особенно по входящим из мессенджеров вне рабочего часа менеджеров. Утренний дайджест начинает день уже с приоритетного списка.
  • Упущенных заявок стало меньше. Каждое сообщение попадает в реестр и не теряется в чате. Если задача висит дольше нормы, бот пингует ответственного без участия владельца.
  • Появилась видимость воронки. У собственника утренний дайджест плюс дашборд по дням. Перестал «угадывать», что происходит у команды.
  • Перестали переспрашивать друг друга. Есть единая лента задач со статусами. Менеджер открывает Sheets и видит, кто чем занят, без серии «а ты ответил клиенту?» в общем чате.

По договорённости с клиентом конкретные числовые показатели результата не публикуются.

Под капотом

Технические детали для тех, кто хочет повторить

Стек

Python 3.11+, python-telegram-bot 21.x, openai SDK 1.x (модель GPT-4o-mini), gspread для Google Sheets API, APScheduler для расписания дайджестов, pydantic 2.5 для валидации схем, tenacity для retry с экспоненциальной паузой.

Развёртывание

VPS Ubuntu 24.04 за $5/мес. ufw + fail2ban, отдельный системный пользователь без sudo, systemd-сервис с автозапуском, ротация логов через journald. Uptime Robot для внешнего мониторинга. Бэкапы Sheets закрывает встроенная история версий.

Логика классификатора

Системный промпт с описанием категорий и триггерами. Few-shot с пятью-семью размеченными примерами из реальной переписки. Ответ модели проверяет JSON-схема pydantic: если LLM выдала кривой ответ, идёт retry с уточняющим промптом. Точность классификации на старте около 87% на eval-сете из 80 реальных сообщений.

Маскирование персональных данных

Реальные ФИО, телефоны, номера договоров, реквизиты заменяются на псевдонимы ДО отправки текста в LLM. Карта соответствия хранится в локальной БД, в облако не уходит. По 152-ФЗ бот не выступает оператором персональных данных, ведь обрабатываются обезличенные строки.

Тестирование

45 unit-тестов покрывают парсер, маскер, классификатор-стаб, роутер, writer. Eval-сет из 80 реальных сообщений (с замаскированными данными) прогоняется при каждом изменении промпта. ADR-документы фиксируют ключевые решения архитектуры, чтобы через полгода понимать, почему сделано именно так.

После запуска

Абонемент вместо разовой сдачи

После четырёх недель гарантийной поддержки клиент перешёл на месячный абонемент. В него входят мониторинг VPS, доработки логики по запросу, корректировка промптов классификатора под новые типы сообщений. Появляется новая категория заявок — добавляем триггер и пример, код не трогаем.

Главное, что стек рассчитан на годы вперёд без переписывания. Бот не привязан к конкретному провайдеру CRM. Каждый модуль изолирован: Google Sheets можно заменить на PostgreSQL, GPT-4o-mini на другую модель, Telegram на любой мессенджер с API.

Подробнее про формат поддержки читайте на странице «Абонемент».

Хочешь так же?

Такой же бот для твоего бизнеса

Бесплатный аудит процессов: разберу, где у тебя теряется выручка из-за переписки, и покажу, собрать ли похожий пайплайн или хватит готовых инструментов. Без продажи в лоб.

Заполнить бриф →
30 минут разговора · разбор процессов · честная оценка стека
Связанное

Что почитать дальше

Важно

Юридическое уведомление

По договорённости с клиентом название компании, имена сотрудников, реквизиты и конкретные числовые показатели результата на этой странице не публикуются. Описание стека, архитектуры и сроков соответствует фактическому проекту.

Материалы носят информационный характер. Сроки, стоимость и состав работ по другим проектам определяются индивидуально после брифа и согласовываются в договоре. Цифры из этого кейса описывают один выполненный проект. Это не публичная оферта.

Стек технологий, описанный на странице, — рабочий выбор под этот кейс. Для других задач набор инструментов будет другим. Решение о применении подобной архитектуры в собственном бизнесе клиент принимает самостоятельно после консультации с разработчиком и юристом по 152-ФЗ.

ИП Кулиев В.Б. · ОГРНИП 317595800059667 · ИНН 591402191686 · оператор персональных данных 23-25-044738. Последнее обновление: 14 мая 2026.

Что не так с твоим сайтом или рекламой?

Разберу за 30 минут. Найду 2-3 конкретные точки, где сайт теряет клиентов, и покажу как чинить. Бесплатно, без обязательств и без продаж в лоб.

Связаться по делу

Заявка прилетит мне и в Telegram, и на почту. Отвечу в течение рабочего дня.

Куда удобнее ответить?
или сразу написать в Telegram →

Нажимая кнопку, даёте согласие на обработку персональных данных (оператор № 23-25-044738).