Discord 机器人删除消息
Posted
技术标签:
【中文标题】Discord 机器人删除消息【英文标题】:Discord bot delete messages 【发布时间】:2020-08-24 00:00:26 【问题描述】:我想用机器人删除消息。我写了一些简单的代码,但出现了一些错误。
我的代码:
if (msg.content.toLowerCase() === prefix + "clear")
msg.delete(100)
msg.channel.send("100 messages have been deleted!")
nodejs版本为v12.16.3
【问题讨论】:
你想实现什么,错误是什么? 我想通过命令bot删除一定数量的消息。错误:hastebin.com/yobuhojonu.rb 【参考方案1】:你可以这样做:
if (msg.content.toLowerCase() === prefix + "clear")
const channel = msg.channel; // TextChannel object
const messageManager = channel.messages; // MessageManager object
messageManager.fetch( limit: 100 ).then((messages) =>
// `messages` is a Collection of Message objects
messages.forEach((message) =>
message.delete();
);
channel.send("100 messages have been deleted!");
);
在这种情况下,阅读文档非常有帮助。
文本频道:https://discord.js.org/#/docs/main/stable/class/TextChannel?scrollTo=messages 消息管理器:https://discord.js.org/#/docs/main/stable/class/MessageManager?scrollTo=fetch 留言:https://discord.js.org/#/docs/main/stable/class/Message?scrollTo=delete【讨论】:
感谢您的帮助,但是当我运行命令时,“已删除 100 条消息!”不断地向他的文章发送垃圾邮件。我希望它只写一次。我该怎么做? Oups 这需要移到forEach
循环之外。我编辑了我的答案。以上是关于Discord 机器人删除消息的主要内容,如果未能解决你的问题,请参考以下文章
使用 JDA 制作的 Discord 机器人正在删除不正确的消息