【问题标题】:JDA Discord bot to delete all messages from a text channelJDA Discord bot 从文本频道中删除所有消息
【发布时间】:2021-06-30 17:42:37
【问题描述】:

我正在尝试让我的 JDA discord 机器人从文本频道中删除所有消息,并且我目前使用的代码效率极低,它偶尔会起作用,偶尔会不起作用。代码:

    {
        List<Message> msgs;

        msgs = textChannel.getHistory().retrievePast(50).complete();
        textChannel.deleteMessages(msgs).queue();
    }

我知道我正在调用该函数,并且我知道传递的 textChannel 是正确的。 请帮我做同样的事情。

【问题讨论】:

  • 如果文本通道包含超过 14 天的消息,这是不可能的。这是因为机器人无法删除 14 天或更长时间的邮件,请参阅 discord.com/developers/docs/resources/…。一种解决方法是克隆频道并删除旧频道。 (见最上面的答案)

标签: java discord discord-jda


【解决方案1】:

我能想到的最快和最有效的方法是克隆频道并删除旧频道。

试试这样的:

textChannel.createCopy().queue();
textChannel.delete().queue();

【讨论】:

    猜你喜欢
    • 2020-06-23
    • 2021-05-14
    • 2020-10-01
    • 1970-01-01
    • 2020-11-21
    • 2019-10-25
    • 2021-10-18
    • 2018-09-07
    • 2021-07-06
    相关资源
    最近更新 更多