Discord 清理机器人:带过滤器的批量删除消息
Discord 清理机器人只需一条命令即可删除大量消息,而不必逐条点击。 Noxyr 的 /clear 会查看某个频道中最近 1 到 100 条消息,并删除其中全部消息,或仅删除来自某位成员、来自机器人,或包含链接、图片或 embed 的消息。
为什么用机器人清除消息
在一波垃圾信息、一次突袭或一场激烈争论之后,手动删除消息既慢,又容易漏掉一些。Discord 允许版主逐条删除消息,并为机器人提供了批量删除工具。清理机器人使用该工具,因此几秒钟内就能清理一个频道。
真正有用的不是速度,而是过滤器。清空一个频道也会删除员工的回复以及垃圾信息周围有用的帖子。按成员、机器人或链接进行过滤,可以只删除你真正想删除的内容。
/clear 如何工作
在一个频道中运行 /clear amount:25,Noxyr 会删除那里最近的 25 条消息。amount 是必填项,可以是 1 到 100。添加过滤器后,机器人会查看这么多条最近的消息,并删除其中符合条件的消息。这一细节很重要:amount:50 bots:true 的意思是"检查最近 50 条消息,并删除机器人发的那些",而不是"删除 50 条机器人消息"。
| 选项 | 删除什么 |
|---|---|
amount | 必填,1 到 100。要查看多少条最近的消息。 |
user | 仅该成员发送的消息。 |
bots | 仅机器人发送的消息。 |
embeds | 仅包含 embed 的消息。 |
link | 仅包含链接的消息。 |
images | 仅带有图片附件的消息。 |
常见的清理工作
垃圾发送者在繁忙的频道中发帖
使用 user 过滤器并设置一个较大的数量,例如 100。只有该成员的消息会被删除,周围的对话会保留。然后再处理账号本身:禁言或警告,下文会说明。
机器人命令弄乱了聊天频道
开启 bots 过滤器。音乐机器人和游戏机器人会留下大量 embed 痕迹,这样可以清理它们,而不会影响人们输入的内容。
链接垃圾或诈骗浪潮
使用 link 过滤器。如果诈骗使用了图片或 embed 卡片,请用 images 或 embeds 再次运行。每次运行只能使用一个过滤器,因此几条快速命令即可覆盖。
需要完全重置的频道
只用数量参数运行 /clear,数量设为 100,按需要重复多次。对于例行的重置,计时器比手动命令更好:请参阅计划消息机器人页面中的清理计划。
14 天限制
Discord 的批量删除只接受 14 天以内的消息。Noxyr 会默默过滤掉更旧的消息,而不是让整个命令失败。因此,当机器人回复说没有消息符合你的过滤器时,可能只是因为符合条件的消息太旧了。这些消息必须在 Discord 中逐条删除。
没有撤销功能。被删除的消息就永远消失了,因此当你只想删除某个人的帖子时请使用 user 过滤器,并在运行大规模清除之前检查频道。
权限
/clear 在机器人一侧仅限管理员使用。机器人自身还需要频道中的"管理消息"权限。如果某个频道权限覆盖拒绝了 Noxyr 角色的"管理消息",即使管理员运行该命令,也会失败。请检查该频道及其分类上的覆盖设置。
如果你希望其他版主在没有完整管理员权限的情况下维持秩序,请改给他们警告工具,并将清除功能保留给管理员。
首先防止混乱
清理是事后的补救。有三个 Noxyr 模块能减少你需要清理的频率:
它们共同构成了安全机器人设置的核心。
安全进行清理的方法
- 先查看。浏览频道,记下哪些内容要删除,哪些必须保留,例如置顶的规则帖子或员工回复。
- 先从窄范围开始。使用一个过滤器和较小的数量。检查结果,如有需要再用更大的数量重复。
- 检查日志。如果你有日志频道,确认清理记录已出现在那里,并注明删除的消息数量。
- 处理根源。清理只是善后。禁言该账号、收紧链接过滤器,或在一段时间内锁定该频道,以免一小时后同样的混乱又出现。
团队中的版主通常会约定一条规则:任何人在删除超过 50 条消息之前,都要先在员工频道中告知其他人。由于没有撤销功能,提前打个招呼几乎不需要成本。
后续步骤
常见问题
/clear 一次最多可以删除多少条消息?
每条命令最多 100 条最近的消息。如果需要更多,可以再次运行。
我能只删除某个成员的消息吗?
可以。添加 user 过滤器并指定成员,Noxyr 只会在它检查的最近消息中删除他们的消息。
为什么 /clear 说没有找到消息?
符合条件的消息可能早于 14 天。Discord 不允许批量删除这些消息,因此必须逐条删除。
我能撤销清理吗?
不能。被删除的消息就没有了,因此在运行之前请检查你的过滤器。
机器人需要什么权限?
频道中的"管理消息"权限。该命令在机器人一侧仅限管理员使用。