HappySecretSantaBot — Telegram-бот для игры «Тайный Санта»

Сегодня хочу представить свой проект - бот для Telegram - HappySecretSantaBot, который позволяет найти своего персонального Санту.

HappySecretSantaBot — Telegram-бот для игры «Тайный Санта»

Всем привет, меня зовут Игорь, мне 22 года, я из Одессы, люблю создавать чат-ботов, и год как работаю веб-девелопером. В школьные времена (а точнее, в 2013 году), я наткнулся на статью на Хабре, которая в своё время дала толчок на создание моего бота, о котором я расскажу сегодня тут. В той статье рассказывали о своей тусовке. Это было так: сайт, на котором можно найти случайного Санту, люди регистрируются, предоставляют свои данные, и им в обмен на это дают данные другого человека, для которого уже Вы будете являться Сантой. Вы должны пойти на почту, указать адрес незнакомого человека, прислать какой-то подарок (пусть даже и символический). На то время мне это показалось нереально прикольно, потому что в те года это очень неплохой плюсик новогодней атмосфере придавало (может я странный). Также, на прошлый Новый Год у нас на работе сделали также Секретного Санту, каждый из шапки вытянул имя того, кому будет дарить подарок. По-моему такие события это реально круто в преддверии самого светлого праздника.

@HappySecretSantaBot был запущен мною вчера, 1 декабря, и хочется немного рассказать собственно о нем: когда человек заходит впервые в бота, бот рассказывает о себе вкратце, и объясняет правила. Есть два режима: одиночный и командный.

В одиночном режиме бот запрашивает следующие данные от пользователя: страну, город, адрес, ФИО, вишлист (да, скорее похоже на сбор инфы). После того, как пользователь предоставит эту информацию, он ожидает письма с данными о его получателе, и о том, что ему также нашелся Санта.

В командном режиме бот сразу запрашивает только ФИО, и вишлист (никакого сбора инфы в этот раз). После этого, пользователь может создать комнату, или присоединиться к существующей. Как это работает: допустим, Вы с коллегами в офисе захотели поиграть в Секретного Санту и в преддверии Нового Года сделать друг-другу подарок. Один из пользователей создает комнату, и в обмен получает номер комнаты, по которому могут присоединиться остальные коллеги. Когда Вы готовы играть (и в комнате как минимум больше одного человека), лидер (создатель) комнаты должен написать /play. После этого, бот присылает каждому участнику письмо о том, что ему нашелся Санта, и присылаего его имя (ФИО), и вишлист, который указал человек ранее.

Далее, когда Вы получили Санту и данные о нем (например в одиночном режиме), Вам следует отправить любой подарок (а можно и к вишлисту юзера прислушаться). После того, как Вы отправите подарок, Вы можете уведомить пользователя, написав в боте /sent, в этом случае, пользователь получит письмо о том, что следует подарок ждать в ближайшем времени. Также, если Вы получили посылку, можете написать /delivered в боте, и Ваш Санта получит письмо с "уважухой" и плюсом в карму.

В течение беседы с пользователем, бот старается отвечать стикерами и смайликами с Сантой.

А еще, раз в месяц, бот напоминает Сантам какие еще не отправили подарок, что пора поторопиться бы, ибо праздник на носу :)

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

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

Этот блок временно не поддерживается
6363
44 комментария

Ю мейд май дей. Ты молодец, парень!
Люди, пишите здесь, поднимайте в топ его!

9
Ответить

Спасибо))

2
Ответить
Комментарий удалён модератором

О отлично как раз задумались на работе о проведении, оч полезно

3
Ответить

Проект классный, и я даже в нем участвуют. Но есть НО: парниша, которому я пошлю подарок, просит колонку или электронную книгу, а я попросила открытку с новогодним пожеланием или книгу, которая нравится моему Санте. Может какую-то максимальную стоимость подарка установить? А то такое знаете.
Надо было писать лего замок хогвартс, если вы понимаете о чем я 😅😁

1
Ответить

Тот парниша это я:) и я буду рад любому подарку) главное весь этот движ:) и можно же найти альтернативу допустим электронной книги на обычную:)

1
Ответить

Интересует 2 вопроса:

1) Если в комнате нечетное количество игроков, и каждому создается пара, получается, кто-то 1 не получит подарка? Или кто-то отправит и получит сразу 2? Как данную ситуацию разруливает бот?

2) Не боитесь ли вы пользователей, которые будут участвовать, получать подарки, но при этом не отправлять их взамен? Как планируется регулировать данный кейс?

1
Ответить