踢出一个公会的所有成员,除了有角色的成员
Kick all members of a guild except members with a role
在我的 Discord 机器人中,我正在尝试开发一个 "lockdown mode",其中所有者和 3 位管理员发送一个机器人生成的代码来触发锁定,服务器的所有成员除了版主和机器人被踢了。我已经完成了第一部分,现在我只需要一种方法来踢除具有特定角色的服务器中的所有人。我可以获得角色ID,这不是问题,我只需要踢除角色以外的所有人的代码。
谢谢,
MrConorAE
按照您提议的方式将所有人踢出公会(除非公会规模非常小)的唯一方法是完全删除公会。
您无法在短时间内踢出大量成员,因为这样的操作会向 Discord API 发送垃圾邮件,并导致您的机器人终止。
我能看到实现 'lockdown mode' 的最好方法是必须更改服务器一般角色的权限(无论是 everyone
还是 Members
角色)有权在您的服务器中不执行任何操作,并查看 none 个频道。这是我能看到以某种 non-API-spammy 的方式实现此结果的唯一方法,但简单地将所有人踢出公会,在拥有超过 10 名成员的服务器上是无法完成的任务。
在我的 Discord 机器人中,我正在尝试开发一个 "lockdown mode",其中所有者和 3 位管理员发送一个机器人生成的代码来触发锁定,服务器的所有成员除了版主和机器人被踢了。我已经完成了第一部分,现在我只需要一种方法来踢除具有特定角色的服务器中的所有人。我可以获得角色ID,这不是问题,我只需要踢除角色以外的所有人的代码。
谢谢, MrConorAE
按照您提议的方式将所有人踢出公会(除非公会规模非常小)的唯一方法是完全删除公会。
您无法在短时间内踢出大量成员,因为这样的操作会向 Discord API 发送垃圾邮件,并导致您的机器人终止。
我能看到实现 'lockdown mode' 的最好方法是必须更改服务器一般角色的权限(无论是 everyone
还是 Members
角色)有权在您的服务器中不执行任何操作,并查看 none 个频道。这是我能看到以某种 non-API-spammy 的方式实现此结果的唯一方法,但简单地将所有人踢出公会,在拥有超过 10 名成员的服务器上是无法完成的任务。