Telegram Bot如何从频道或组中删除或删除消息或媒体

时间:2016-02-08 12:32:47

标签: telegram telegram-bot

我想知道删除邮件或文件的示例

我没有找到这方面的任何功能性教程,

5 个答案:

答案 0 :(得分:24)

目前Telegram Bot API中没有此类功能。

UPD 2017-05-19:有一种官方方法 deleteMessage ,更多信息: https://core.telegram.org/bots/api#deletemessage

https://stackoverflow.com/a/43965602/1140438

答案 1 :(得分:19)

Bot API 3.0中有 deleteMessage 方法的官方支持。更多细节在这里: https://core.telegram.org/bots/api#deletemessage

  

https://api.telegram.org/botTOKEN/deleteMessage?chat_id=CID&message_id=MID

如您所见,有两个参数:chat_idmessage_id

您可以删除机器人的消息或其他消息(如果机器人是管理员),除了服务消息(例如加入/离开消息)。

  1. 成功后,它将返回以下JSON对象: {"ok":true,"result":true}

  2. 如果您尝试删除服务消息或其他用户的消息,但bot不是管理员: {"ok":false,"error_code":400,"description":"Bad Request: message can't be deleted"}

  3. 如果您尝试删除不存在的消息或已删除的消息: {"ok":false,"error_code":400,"description":"Bad Request: message to delete not found"}

答案 2 :(得分:0)

bot api中有两种方法可以让您编辑邮件:editMessageTexteditMessageCaption。它并不理想,但你可以用它作为替代品。

例如,将消息编辑为:

  

“此消息不可用。”

答案 3 :(得分:0)

请检查下面的代码片段!下面的代码对我有用!
String chatId = String.valueOf(callbackQuery.getMessage().getChatId());
Integer messageId = callbackQuery.getMessage().getMessageId();
DeleteMessage deleteMessage = new DeleteMessage(chatId, messageId);
try {
  execute(deleteMessage);
}catch(TelegramApiException tae) {
  throw new RuntimeException(tae);
}

答案 4 :(得分:-1)

https://api.telegram.org/botTOKEN/deleteMessage?chat_id=CID&message_id=MID

示例 https://api.telegram.org/bot123456789:zzzzzzzzxxxxxxxxxxyyyyyyyyyy/deleteMessage?chat_id=123456789&message_id=123456

重要的是,消息temine的ID必须带有(逗号)(,),并且在发送消息时可以在json中看到它