电报(Telegram)机器人开发中,如何实现 “消息撤回提醒”?有人撤回消息时通知管理员?​

月光曲奇月光曲奇09月13日2755

怎么设置让机器人在有人撤回消息时提醒我?例如,有人删了消息,我能马上知道,这样方便我管理群组。有办法实现吗?

3 个回答

奶味糖
奶味糖回答于 09 月 13 日
最佳答案

Telegram机器人目前没有官方API支持监听“消息撤回”。

但你可以试试下面的方法:

1. 开启机器人的消息更新监听,比如用Python的`python-telegram-bot`库;

2. 定期检查群组里的消息记录,如果发现某条消息被撤回,就触发通知;

3. 通知方式可以是私发给管理员,或在群内@管理员;

4. 需要自己写代码,有一定编程基础才好操作。

如果你不太会写代码,可以找人代写,或者用现成的开源项目。

方法虽然绕,但确实可行。

阳台绿萝
阳台绿萝回答于 09 月 17 日

Telegram机器人不能直接监听“撤回消息”这个动作。不过你可以用下面这些办法来间接实现:

1. 让机器人记录下每一条新消息。比如,用户发消息后,机器人自动转发或保存文本内容。

2. 定期查看消息是否存在。比如每隔几秒查看一下这条消息是不是被撤回了。一旦发现消息没了,马上@管理员或者发送提醒。

3. 使用第三方库或API监听更新。比如Python的pyrogram库可以监听到message_edited或message_deleted等事件。

4. 注意权限设置。机器人需要有读取消息和通知管理员的权限。有些功能可能需要管理员身份才能触发。

这种方式虽然不能做到实时,但基本能实现监控效果。

冰箱嗡嗡响
冰箱嗡嗡响回答于 09 月 18 日

Telegram机器人本身不能直接监听“撤回消息”操作,但可以借助API和一些技巧来实现。

具体方法如下:

1. 让机器人监听群聊中的所有消息,将每条消息记录在数据库或日志中。

2. 每次有人撤回消息时,对比数据库或日志,查出被删除的是哪条消息。

3. 查到后,机器人自动@管理员并提醒“用户撤回了某条消息”。

实现这个功能需要你懂点编程,比如用Python调用Telegram Bot API。也可以直接使用现成的开源机器人框架。

新手推荐直接使用现成的开源项目,比如Telethon或Pyrogram库来快速搭建。

您的答案