Главное Авторские колонки Вакансии Вопросы
Выбор редакции:
100 0 В избр. Сохранено
Авторизуйтесь
Вход с паролем

Как домовой чат превратился в 563 пользователя за 6 дней: делаем бота «Тайный Санта»

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

👉 @s_santa_onlinebot

Но потом я подумал: если уже делать — надо делать нормально. Не только для соседей, а для всех. Чтобы можно было создавать несколько игр одновременно: одну для коллег, другую для семьи, третью для друзей.


Планировал два дня. Получилось пятнадцать

Техническая часть выглядела несложно: PuzzleBot для конструктора бота, NocoDB как база данных. На конструкторах довольно сложно строить парные активности, где нужно связывать двух и более пользователей. Но PuzzleBot позволяет отправлять запросы к другим серверам, поэтому на Puzzle реализовал все основные команды: приветствие, условия, создание игры, а саму реферальную механику сделал на своём сервере — я выбрал автоматизатор Make.

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


Пользователь нажимает одну кнопочку «Жеребьёвка», а под капотом 13 действий, которые начинают игру

Вторая проблема — динамические кнопки. Когда пользователь нажимает «Мои игры», бот должен вытащить из базы данных названия игр и подставить их в кнопки. При этом кнопок должно быть ровно столько, сколько игр. Звучит очевидно, но конструктор не выводит динамический результат, только статика. В итоге реализация потребовала цепочку из запросов к двум таблицам, итератора, текстового агрегатора и правильной фильтрации.


Если нажать на игру, пользователь увидит, что его подопечный просил передать Санте, а также создателя игры и всех остальных участников этой игры.

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


Если массив приходит пустой, то Make отправляет пользователя на ветку с таким сообщением

Пользователи начали приходить раньше, чем бот заработал

Я сделал одну вещь правильно — дал боту актуальное сезонное название до того, как он начал работать, и люди начали находить его в поиске Telegram. Сами, без рекламы.

Это было неожиданно. Обычно ты делаешь продукт, а потом объясняешь людям, зачем он нужен и как им пользоваться. А тут люди уже искали решение — и находили моего бота. Вот что значит делать востребованный продукт в актуальное время, а не то, что хочется самому, а потом объяснять другим, почему им это нужно. Это боль любого предпринимателя или продакта :)


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

563 пользователя за 6 дней после запуска

Хотя совсем без продвижения не обошлось. Я добавил бота в каталоги Telegram-ботов, опубликовал анонс в своих каналах и закинул в сторис в Телеге. Базовые вещи, которые занимают час.

Но основной поток шёл именно из поиска — люди сами искали «тайный санта» в Telegram и находили бота. Причём до запуска бота он назывался «Тайный санта | Играть», но после запуска бота я пошёл в Вордстат и увидел, что «Тайный Санта Онлайн» ищут в 10 раз больше, и поменял слово — и люди перестали приходить! В итоге вернул «Тайный Санта | Играть онлайн», и трафик восстановился.

Что умеет бот

  • Админит несколько игр одновременно для одного пользователя
  • Приглашает участников по ссылке (кастомная рефералка)
  • Автоматическая анонимная жеребьёвка
  • Участники могут указать пожелания к подарку и адрес доставки
  • Уведомления всем участникам о результатах

Бот полностью бесплатный. Навсегда. Это не лид-магнит и не пробная версия, а просто бот для Тайного Санты. Возможно в будущем добавлю обязательную подписку на канал, но это только после того как ежемесячно превысит 10 тыс пользователей.

👉 @s_santa_onlinebot


Что дальше

Сезон Тайного Санты короткий — пара недель в декабре. В этом году бот работает как есть. А в ноябре 2026 вернёмся к нему с доработками: меня лично не устраивает, что люди не умеют играть в Тайного Санту! Все почему-то думают, что нужно купить подарок, потом собраться всем вместе и дарить — это же скучно.

Смысл Тайного Санты в том, что ты в течение всего срока игры получаешь небольшие подарки и пытаешься угадать, кто твой Санта, а потом все вскрываются. Тайный Санта — это про интригу, а не про подарки. Поэтому в следующем году я планирую развести пользователей на 2 разные механики.

Играйте в Тайного Санту с нашим ботом и приходите за играми для бизнеса

Мы в агентстве «Климент Контент» делаем ботов для бизнеса. Игры, квесты и интерактивы — всё, что можно собрать в Telegram. Если вам нужен бот, который будет не просто отвечать на вопросы, а вовлекать аудиторию — напишите нам.

Климент Лысенко Основатель агентства «Климент Контент»

0
В избр. Сохранено
Авторизуйтесь
Вход с паролем
Комментарии
Выбрать файл
Блог проекта
Расскажите историю о создании или развитии проекта, поиске команды, проблемах и решениях
Написать
Личный блог
Продвигайте свои услуги или личный бренд через интересные кейсы и статьи
Написать

Spark использует cookie-файлы. С их помощью мы улучшаем работу нашего сайта и ваше взаимодействие с ним.