Telegram Bot Webhook无法追踪频道帖子删除事件,如何配置?
Telegram Bot 监听频道帖子删除事件配置方案
核心原因
Telegram Bot API 默认不会向webhook推送消息删除类更新,需要主动调整配置,同时确认管理员权限配置正确。
具体配置步骤
- 第一步:调用
setWebhook接口时显式指定允许的更新类型
调用setWebhook配置webhook时,必须在参数中添加allowed_updates字段,值为包含deleted_channel_posts的数组,示例参数结构如下:
注意:{ "url": "你的服务器webhook地址", "allowed_updates": ["channel_post", "edited_channel_post", "deleted_channel_posts"] }allowed_updates如果不传默认仅包含普通消息、编辑消息类更新,不会包含任何删除类事件,必须显式声明。 - 第二步:确认Bot的频道管理员权限
进入频道管理界面,在管理员列表中找到你的Bot,确认已经开启「删除消息」权限,仅授予消息访问权限无法收到删除事件推送。 - 第三步:调整服务端接收逻辑
收到的删除事件的update对象中会包含deleted_channel_posts字段,字段内包含被删除帖子所属频道ID、被删除的消息ID列表,需要在服务端代码中新增对该字段的处理逻辑,匹配到对应ID后删除数据库内的对应记录即可。
注意事项
- 如果使用第三方Bot SDK开发,需要确保SDK支持的Telegram Bot API版本不低于6.0,
deleted_channel_posts是该版本新增的事件类型。 - 后续如果需要新增其他类型的更新监听,也需要将对应更新类型加入
allowed_updates数组中,避免事件被过滤。
内容的提问来源于stack exchange,提问作者Артем Паламарчук
相关产品推荐
相关产品推荐

