如何在不和谐的服务器(js)中删除所有频道

Posted

技术标签:

【中文标题】如何在不和谐的服务器(js)中删除所有频道【英文标题】:How to delete all channels In a discord server(js) 【发布时间】:2020-10-04 19:19:44 【问题描述】:

我正在尝试使用我的机器人删除我的不和谐服务器上的频道,这是代码:

if (message.content === 'tanbu')
    message.guild.channels.forEach(channel => channel.delete())
    .then(console.log)
    .catch(console.error);

错误是:

TypeError: message.guild.channels.forEach is not a function

我该怎么办?

【问题讨论】:

【参考方案1】:

我相信那是为了突袭和自我机器人女巫反对不和谐 TOS 我肯定会认为w

【讨论】:

看起来这是在您完成思考之前发布的?还是最后一个“w”是句号?无论如何,我会编辑您的答案以检查拼写并确保其清晰。链接到他们的服务条款以支持问题也可能很有用。 我来这里是为了制作一个机器人来清除测试服务器。【参考方案2】:

也许您在执行此类操作之前应该三思而后行。因为这会导致违反 Discord tos。它甚至向 discord api 发送垃圾邮件。这可能会导致您对特定端点或有时在全球范围内禁止 api。即使库有能力减慢它,您仍然可以轻松绕过它。这里的理想解决方案是使用 sleep 函数,而不是使用 forEach 循环,也许 for 循环会更好。 如果您打算对服务器进行核攻击,仍然不建议这样做。

【讨论】:

【参考方案3】:

这在 Discord JS V11 中有效,但在 V12 中无效。

这就是你要找的东西:

message.guild.channels.cache.forEach(channel => channel.delete());

https://discord.js.org/#/docs/main/stable/class/GuildChannelManager?scrollTo=cache

【讨论】:

以上是关于如何在不和谐的服务器(js)中删除所有频道的主要内容,如果未能解决你的问题,请参考以下文章

如何在不和谐中使用命令切换触发 Cog 侦听器

如何删除我的不和谐机器人在特定频道中发送的先前消息?

如何让bot在反应后将消息发送到另一个频道|不和谐.js

如何在不将其注册为机器人的情况下创建不和谐机器人?

如何使用 dhooks 查找频道中发送的最新消息

如何删除消息并将它们记录回另一个频道