从技术上讲,当您在设备上启动 Telegram 聊天机器人时,您正在激活一个向 Telegram Bot API 发送请求的应用程序。这里的软件界面(API)非常简单,请求带着指定的参数发送到所需的URL,Telegram的响应以JSON对象的形式出现。
高级用户指南
如果我们使用具体示例来考虑 API 的工作,这将更加清晰。以下是制作最简单的 Telergam 聊天机器人的步骤顺序:
注册应用程序
这是必须完成的初始阶段。在注册 牙买加 数字数据 过程中,您会从负责此过程的特殊机器人(@BotFather)那里收到一个个人 ID(也是一个令牌)。
发送消息/start 至@BotFather,您将收到可供使用的命令列表。
从主要的 /newbot 开始。收到后,程序将为新机器人创建一个名称。您可以选择任何您想要的名称,但它必须以“bot”一词结尾。如果名称设置一切顺利,@BotFather 将向您发送一个令牌和一个链接,您可以使用它将机器人添加到您的联系人列表中。
一切已经开始了。目前,附加头像、问候语和描述的功能已经可用。
经验表明,收到的令牌可能无法正常工作,因此最好立即检查。为此,请使用特殊链接 api.telegram.org/bot<TOKEN>/getMe。
编程过程
本例中,使用Python3创建程序。然后,可以使用任何其他语言转换编写的算法,Python3 允许这样做。
为 Telergam 编写聊天机器人时,您不必手动发送每条消息 - webHook 可以为您完成此操作(您只需安装它)。对于 Python 来说,最好使用现有的编辑器之一(这样摆弄 cgi 和流的问题就消失了)。在这个特定的例子中,一切都是使用 tornado.web 完成的。提示:GAE 的一个方便的捆绑包是 Python2+Flask。
机器人框架:
应用程序.监听(8888)
tornado.ioloop.IOLoop.current().start()
除键盘中断外:
signal_term_handler(信号.SIGTERM,无)
当程序启动时,你应该在地址上安装一个webhook并跟踪退出信号。这样做是为了返回手动命令卸载模式。
Telergam 聊天机器人的逻辑将收集在一个特殊的应用程序“Tornado”中,该应用程序处理请求并在此呈现为 tornado.web.RequestHandler。