【发布时间】:2021-09-09 02:34:06
【问题描述】:
我想清理我所有的频道,我马上就到了。 问题是,它非常非常长......
message.guild.channels.cache.forEach(c => {
if (c.isText()) {
let CompteurMessage = 0;
let CompteurSuppression;
c.messages.fetch().then(messages => {
messages.forEach(msg => {
msg.delete();
});
});
c.send(`Your server is the best, ${message.author}.`);
}
});
你知道如何更快,例如计算频道中的消息数量吗?
编辑: 现在,我克隆了频道,但它们改变了位置......
c.clone().then((clone) => {
clone.send(`Love ${message.author}.`);
const originalPosition = c.position;
c.delete();
clone.setPosition(originalPosition);
});
3 号和 4 号频道改变了位置。
谢谢
【问题讨论】:
-
也许在服务器端对它们进行计数并查询您的服务器以获取计数?
-
您受到速率限制,重复的大量 API 调用是 API 滥用,将导致您的客户端被暂停使用 Discord API
-
您最终可能会遇到 14 天或更早的消息,这些消息无法被 API 删除。
-
为什么不删除频道,并使用相同的名称、主题和权限覆盖重新创建它。这将产生相同的结果,但对 API 的调用更少。
标签: javascript node.js discord discord.js bots