【问题标题】:Telegram bot api limit of incoming updatesTelegram bot api 传入更新的限制
【发布时间】:2016-03-21 15:58:35
【问题描述】:

我正在测试 Telegram bot api 以获取更新使用

https://api.telegram.org/bot<tokenOfBot>/getUpdates

但是,我意识到我只能获得 100 个更新,而其他更新则不会出现。 有什么方法可以获取我的其余更新?

【问题讨论】:

    标签: api telegram-bot


    【解决方案1】:

    您可以使用limit 参数来控制您收到的更新数量。不过根据documentation

    limit: ... 接受 1-100 之间的值。默认为 100

    这意味着您一次不能收到超过 100 个更新。

    如果您想接收较新的更新,则必须确认较旧的更新,这样服务器就不会一遍又一遍地给您相同的旧消息。关注update_id。例如,如果您收到了 999 的 update_id,下次您拨打 getUpdates 时,您应该使用:

    https://api.telegram.org/bot<token>/getUpdates?offset=1000
    

    这样,服务器就知道你收到了低于1000的update_ids,不会一遍又一遍地给出同样的旧消息。

    【讨论】:

    • 你的解释很清楚,我的项目现在完美运行。非常感谢!!!
    • 对我来说,这个 allowed_update 参数根本不起作用。我用过 ?limit=1 (不起作用)也试过了, allowed_updates='callback_query' 和 ?allowed_updates=['callback_query'] (但没有任何效果)
    • 第一次工作(我第一次尝试使用offset=0,然后是offset=&lt;update_id + 1&gt;)但几天后我开始收到{"ok":true,"result":[]}群聊历史更新;我正在尝试使用 getUpdates() 而不使用 update_idupdate_id 这等于组历史记录中的最后一个 update_id 但每次尝试都会收到空列表
    猜你喜欢
    • 1970-01-01
    • 2018-04-07
    • 2021-05-29
    • 1970-01-01
    • 1970-01-01
    • 2022-06-21
    • 1970-01-01
    • 2019-05-15
    • 2021-11-26
    相关资源
    最近更新 更多