电报机器人如何知道在哪里回应?



我正在使用telethon,我有一个问题,电报如何知道在哪里发送请求?
我在电报上创建了一个机器人。当用户向bot发送消息时,telegram知道将消息重定向到哪里。我在本地和服务器上运行我的程序。但是在代码中,我们没有提到任何关于服务器的事情。但是程序在上面也运行得很好。

需要理解流程。

Telethon使用所谓的MTProto与Telegram服务器通信。它连接起来就像一个真正的客户端(比如TDesktop或Webogram)。建立连接后,将使用bot令牌进行身份验证,而不是使用电话号码。然后,其他一切都是标准程序:向Telegram询问任何新消息,Telegram会响应人们发送到bot或您的bot所在组(如果您通过BotFather启用了这些功能)的所有消息。为了减少流量,如果有一个开放的连接,Telegram可能会自动发送更新。

这是一般的流程。关于MTProto如何工作的更深入的解释,所有的技术信息都可以在他们的网站上找到。关于更新的部分在这里:https://core.telegram.org/api/updates

每个处理程序都有一个参数,我将它命名为event,例如:

@client.on(events.NewMessage)
asynce def handler(event):

此事件包含所有信息,消息文本,消息id等。

最新更新