You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Telegram API(非Bot API)删除指定聊天消息?

解决Telegram消息删除无效的问题
  • 你当前调用的Messages_DeleteMessages只传入了消息ID,但部分Telegram客户端库需要明确指定消息所在的聊天上下文(Peer)才能正确执行删除操作。可以通过以下方式调整:
  1. 利用消息的Peer属性指定聊天
    从目标消息msg中直接获取所在聊天的Peer对象,传入删除方法的上下文参数:

    var targetPeer = msg.Peer;
    var result = await _tgSession.TgClient.Messages_DeleteMessages(targetPeer, new int[] { msg.id }, revoke: true);
    

    其中revoke: true会让消息在双方聊天中都被删除;如果只需要删除自己端的消息,可设为false。

  2. 调用单条消息删除方法
    如果你的客户端库提供了单条删除的重载方法,直接传入Peer和消息ID更直观:

    await _tgSession.TgClient.Messages_DeleteMessage(msg.Peer, msg.id, revoke: true);
    
  3. 排查参数有效性

    • 确认msg.id是有效的消息ID,且该消息属于当前客户端有权限删除的聊天(比如自己发送的消息,或拥有管理员权限的群组/频道)。
    • 检查客户端会话_tgSession是否处于正常登录状态,没有过期或权限受限。

内容的提问来源于stack exchange,提问作者Igor Y.

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.08 20:57:34