在 getUpdates Telegram bot 中忽略偏移参数 API

Offset parameter ignored in getUpdates Telegram bot API

我正在使用 telegram bot web API 制作一个 telegram bot here

我正在使用长轮询通过方法 getUpdates 为我的机器人收集更新。为了避免处理同一条消息两次,我使用了该方法的偏移参数。

import requests

url = "https://api.telegram.org/botTOKEN/getUpdates"
offsetParam = {'offset' : 999}
response = requests.get(url,params=offsetParam)

当 运行 这段代码时,人们会期望每个更新的偏移量都大于 999。但是我仍然得到 message_id 作为最后一个变量的一部分小于 999在代码中(事实上,所有这些)。

谁能帮我弄清楚为什么在调用后响应偏移量没有增加?

P.S:很高兴提供额外的信息。

谢谢

Offset为消息ID,应该在result.message_id获取,而不是从0开始获取。

答案很简单。偏移量指的是 update_id 值。

其他答案声称message_id是偏移量,在撰写本文时并非如此。

使用 cURL 解决了这个问题。这不是 message_id;这是 update_id。如果 offset 大于 update_id,则 cURL returns 仅当有新更新可用或 timeout 过去时。换句话说,它是长轮询。