HappySecretSantaBot-游戏“ Secret Santa”的电报机器人

嗨,habrozhiteli!



一点历史


当我还是一个小学生的时候,我打开了Habr时期,那时我记得的其中一篇文章是2013-2014年匿名圣诞老人俱乐部 。 当时,在我看来,组织此类活动是您最酷的想法之一,您可以扮演圣诞老人的角色,成为一个完全陌生的人,并同时从同一完全陌生人那里得到礼物。 在这篇文章之后,我得知存在这样的事情,从原理上讲,这进一步推动了该机器人的编写。

在过去的新年里,我在工作中也采取了这样的行动,房间里的每个人都有一个随机的人,你必须给掉到你身边的人一个礼物,而这个人又将它送给另一个人。 结果,每个人都对礼物感到满意。

去年,我有一个爱好是在VK平台上创建机器人,即使不只是将它们发布到世界上,也只是出于我自己的缘故。 我开始为自己创建各种机器人,在城市里有个公众,那时我吸引了很多使用该机器人的人。 我喜欢人们可以花很多时间来查看该机器人的功能,然后他们从中获得乐趣,这促使我不断寻找新的想法来取悦人们,然后有很多客户求我向我公开为他们编写机器人,每个人都很高兴。

因此,我想从VK (已经掌握了什么?)切换 Telegram,因为我听说这是机器人的绝佳平台。 当然,要制造机器人,您需要一个主意。 这个想法几乎很快就出现了,因为新年快到了,而以“ Secret Santa”形式的机器人在Telegram上并不常见,而写它的愿望是很久以前的。 就我而言,仅仅以网站的形式,这样做是没有意义的,因为这样的网站是一角钱。 有一阵子,我坐下来阅读了Telegram BOT API文档(因为我完全不熟悉,这是我在该平台上的第一个项目),在Github上寻找了开源机器人,看着人们发展,坐了一会儿,画了画。如我所愿。 实际上,我想向您介绍我的创作。

现在看起来像什么


在游戏开始之前,通过欢迎消息向用户表示欢迎,向他解释游戏具有两种模式:单人模式和团队模式。

根据其自身的“ 单身 ”规定,用户可以在自己的国家/地区内找到绝对随机的圣诞老人。 用户按下他想找到一个完全随机的圣诞老人的按钮,系统对其进行注册,然后每小时步行并团结成对的圣诞老人。 一个小时之内(当然,如果此时此刻还有您所在国家/地区的用户也没有圣诞老人),则该用户将收到一条消息,其中包含有关其收件人以及已找到圣诞老人的信息。

团队授予用户加入房间的权利。 这非常适合例如在办公室或希望互相送礼的大批朋友中的人。 一个人在漫游器中创建一个房间,漫游器将房间号提供给该房间的负责人,他可以据此邀请其他人。 人们输入这个房间的编号并进入它。 要开始游戏,会议室必须有偶数用户,会议室负责人必须按/播放。 之后,该机器人将混合所有用户,每个人都会得到他的圣诞老人,房间里的每个人都会收到Bot的私人信息,并附上有关送礼地点的数据。 如果用户已经拥有圣诞老人,则不能离开房间。 但是,如果用户尚未收到圣诞老人,则可以离开房间。 房间的领导者(创建者)如果至少有其他人不能离开房间。

游戏开始后,机器人会要求用户提供有关其国家,城市,地址,全名,愿望清单的信息(每个用户都可以编写圣诞老人可以收听的愿望清单)。 此外,该人要么加入房间,要么创建房间,或者在房间外面找到随机的圣诞老人。 将礼物发送给收件人后,您需要按/发送(机器人会通知收件人您已发送包裹,等待时间不会太长)。 当您收到包裹时,您可以按/交付(所有这些命令都在导航栏中的bot命令中),然后您的圣诞老人会收到一条通知,带有“多加的因果关系和尊重”。

该机器人每月还会提醒那些尚未发送礼物的人,新年快到了,您不必成为坏圣诞老人,您需要快点。

在下面,我留下了该机器人的一些屏幕截图。

几个机器人截图




关于我实施的


我不会讲技术的部分(也许是另一篇文章的主题),我只会在我的帮助下召集那些感兴趣的人。

JP :PHP 7
数据库管理系统 :MySQL
SDK电报BOT PHP SDK

每个对该机器人感兴趣的人-可以在Telegram上以@HappySecretSantaBot的形式找到它

祝大家有个愉快的十二月,写机器人(这很酷)和新年快乐!

Source: https://habr.com/ru/post/zh-CN432270/


All Articles