自动化触发器的类别排除(黑名单)

背景

目前,在配置 Discourse Automation 插件中的触发器时(例如,“帖子创建”、“主题创建”),我们会看到一个 “分类” 过滤器。这充当一个 白名单:自动化在所选的特定分类中运行。

问题

这种白名单方法给那些希望应用“全局”自动化但只有少数例外的社区带来了摩擦和维护负担。

如果我希望自动化在所有分类中运行,但排除 #staff 分类:

  1. 初始设置: 我必须手动选择每一个公共分类。
  2. 维护: 每当我们将来创建一个新分类时,自动化默认不会在该分类上运行。管理员必须记住返回“自动化”设置并将新分类添加到列表中。

建议的解决方案

我建议添加一个 “排除分类”(黑名单)字段。

期望的行为:

  • 如果“分类”留空而“排除分类”已填写:在除排除的分类外的所有分类上运行。
  • 这确保了面向未来的兼容性:稍后创建的任何新分类都将自动继承该自动化,无需手动干预。

用例示例

场景:在特定频道中防止“机器人冲突”

目标: 我有两个不同的自动化:

  1. 欢迎机器人: 回复 #Introductions 分类中的新用户,向他们介绍论坛概况。
  2. 支持机器人: 回复技术分类中的主题,要求提供日志/详细信息。

问题: 我希望支持机器人在除 #Introductions 之外的所有地方运行。目前,为了防止支持机器人在介绍帖中回复(并用技术问题困扰新用户),我必须使用“包含”列表手动选择每一个技术分类。

修复方法: 如果我能简单地将支持机器人设置为 排除:#Introductions,我就可以确保两个机器人不会相互干扰,而无需为支持机器人维护一个庞大的允许分类列表。

1 个赞