Перейти к содержимому
GoodDayAI
Все кейсы

Telegram-бот-игра: квалификация лидов вместо вводного созвона · Беларусь

«Один день владельца»

Игра вместо формы «оставьте номер»: бриф собирается по ходу

Задача

Вводный созвон — самое дорогое место воронки: менеджер тратит час на человека, который ещё не понял, зачем ему автоматизация. Нужен был формат, который делает эту работу сам: за пять-семь минут проводит владельца бизнеса через симуляцию его собственного рабочего дня, показывает, где день утекает, даёт потрогать ИИ прямо в переписке — и только в конце, когда ценность уже видна, просит контакт. При этом один движок должен обслуживать разные ниши, тексты должны править контентщики без программиста, а заявка из игры — попадать в ту же воронку, что и заявки с сайта.

Какие проблемы решили

Холодный человек не доходит до созвона, а форма «оставьте номер» на входе отпугивает.

Игра-симулятор рабочего дня: пять ситуаций, три показателя — выручка, время, репутация — и видимое последствие у каждого решения. Контакт спрашивается в финале, когда потери уже посчитаны на своём примере.

Рассказы про ИИ не убеждают: нужно показать работу, а не описать её.

Два живых демо прямо в переписке: генерация поста под нишу и город игрока и разбор присланного «сообщения клиента» в карточку — суть, пометки, срочность, готовый ответ. Лимиты и кулдаун хранятся в базе, любая ошибка модели подменяется заготовленным примером, и прогон не прерывается.

Каждая новая ниша грозила превратиться в переписывание бота.

Весь сценарий — тексты, кнопки, очки, флаги болей — вынесен в JSON, а движок остался интерпретатором графа узлов и ничего не знает про «салон» или «ход третий». Новая ниша добавляется файлом; валидатор на старте ловит битые ссылки, тупики и недостижимые узлы.

Менеджер получает контакт без контекста и начинает разговор с нуля.

Ответы в игре и есть бриф: боли отмечаются флагами, частота флага задаёт остроту. Финальная «Карта роста» собирает уровень, приоритеты и подходящий пакет, и всё это уходит менеджеру в Telegram и в Google Sheets вместе с контактом и ссылкой на бизнес.

Заявка из игры жила бы отдельно от заявок с сайта — две несводимые воронки.

Запись на созвон прямо в боте: свободные слоты и бронь идут через API сайта, поэтому встреча попадает в ту же CRM-воронку, Google Calendar и Meet. После брони игрок помечается в листе «Игроки», и сегмент «поиграл, но не записался» можно забрать в рассылку.

Сбой внешнего сервиса не должен стоить лида и не должен ронять игру.

Фоллбэк на каждом слое: нет ключа модели — демо отдают заготовки, недоступен Sheets — лид всё равно в базе и у менеджера, сломана разметка ответа — сообщение уходит текстом. Кнопки идемпотентны по номеру узла, есть антифлуд, а прогресс переживает перезапуск бота.

Что сделали

  • Игра-симулятор рабочего дня: четыре ниши — салон, кафе, магазин, автосервис — с ситуациями, очками и последствиями решений
  • Два живых ИИ-демо в переписке: генерация поста под нишу и разбор сообщения клиента в карточку
  • Финальная «Карта роста»: уровень, приоритеты по выявленным болям и подходящий пакет услуг
  • Захват лида с готовым брифом: контакт и ссылка на бизнес уходят менеджеру в Telegram и в Google Sheets
  • Запись на созвон из бота: свободные слоты, бронь, Google Calendar и Meet через API сайта — в общую CRM-воронку
  • Сценарий в JSON и валидатор контента: ниша добавляется файлом, битые ссылки и тупики ловятся до запуска
  • Генерация фирменных картинок на лету: обложка ниши на входе и карточка результата, которую переигравший пересылает друзьям
  • Аналитика воронки в событиях: старт, точка входа по deep-link, демо, финал и лид — метрики считаются запросом к базе
  • Деплой в Docker на VPS с автоперезапуском и переключаемым LLM-провайдером