【问题标题】:discord.js unlimited purge commanddiscord.js 无限清除命令
【发布时间】:2021-04-04 05:23:19
【问题描述】:

有没有办法让它变得更好?我正在尝试制作无限制的清除命令...但似乎 message.channel.messages.cache 仅在您使用它时才收到消息,我真的不知道如何使它变得更好。机器人会滞后很长时间......并且循环不会因此而中断。

    for (let i = 1; i <= amount/100; i++) {
           let messagecount = message.channel.messages.cache.size
           if(messagecount<=5){ 
              console.log("break")
                break}
           message.channel.bulkDelete(100)
        }
      }

【问题讨论】:

  • 您的问题到底是什么?
  • 如何在discord中一次删除100多条消息
  • 您受到 Discord API 的速率限制。您不能批量删除超过 100 个是有原因的。您的方法被视为 API 垃圾邮件,可能会禁止您和您的机器人访问 API

标签: javascript node.js discord discord.js purge


【解决方案1】:

根据Discord API docs,您不能通过 Discord API 删除超过 2 周的消息,也不能删除超过 100 条消息。这不是您应该/想要打破的限制,您可能会遇到the risk of being ratelimited。当然,你可以循环这个,就像你尝试的那样,但速率限制仍然在这里。如果我是你并且想要删除这么糟糕的消息,我会多次调用该命令,或者循环使用冷却时间 bulkDelete(我猜 2000 毫秒就足够了?)。

【讨论】:

  • 我已经知道了,并且有一种方法可以删除 100 多条消息...我提供的代码可以做到这一点,但滞后了。所以是的,您的回答根本没有帮助,但感谢您的尝试
  • 哦,是的,有一种方法:但是在一个请求中,您一次不能删除超过 100 条消息。你仍然可以尝试循环它。
  • 这不是一个答案,你只是在给 OP 喂汤,从长远来看这对他们没有帮助。
  • 其实这是一个答案。无论答案的正确性或它是否给 OP 喂食,从低质量帖子审查队列(我遇到这个答案的地方)的角度来看,这是试图回答问题,因此不应被标记为“不是答案”或“质量非常低”。问问自己,是否可以想象 OP 可以接受答案。如果是,NAA 或 VLQ 标志很可能会被拒绝。 From Review.
  • @Elitezen 我承认这不是一个高质量的答案,但我认为它仍然是我认为的一个。问题是:我该怎么做?我的回答是:不,你不能做 X。我添加代码是因为我一开始并没有完全理解这个问题。但是,我坚持我的观点,是的,您可以删除 100 多条带有某种循环和冷却时间的消息。一切皆有可能,您只需要找到正确的方法即可——当然,我不建议向 API 发送垃圾邮件。
猜你喜欢
  • 2021-04-14
  • 2021-11-16
  • 1970-01-01
  • 2020-09-28
  • 2019-11-11
  • 2022-09-30
  • 2018-09-17
  • 2020-09-17
  • 2017-07-31
相关资源
最近更新 更多