背景
現在、Discourse Automation プラグインでトリガー(例:投稿作成時、トピック作成時)を設定する際、「カテゴリ」フィルターが表示されます。これはホワイトリストとして機能し、オートメーションが選択された特定のカテゴリでのみ実行されます。
問題点
このホワイトリスト方式は、「グローバル」なオートメーションを適用したいが、例外がいくつかあるコミュニティにとって、手間とメンテナンスの負担を生み出します。
例えば、#staff カテゴリ以外のすべてのカテゴリでオートメーションを実行したい場合:
- 初期設定: すべての公開カテゴリを手動で選択する必要があります。
- メンテナンス: 今後新しいカテゴリを作成するたびに、オートメーションはそのカテゴリではデフォルトで実行されません。管理者は、オートメーション設定に戻り、新しいカテゴリをリストに追加することを覚えておく必要があります。
提案される解決策
「除外カテゴリ」(ブラックリスト)フィールドの追加を提案します。
望ましい動作:
- 「カテゴリ」が空欄で、「除外カテゴリ」が設定されている場合:除外されたカテゴリ以外のすべてで実行されます。
- これにより将来的な互換性が確保されます:後で作成された新しいカテゴリは、手動での介入なしに自動的にオートメーションを継承します。
ユースケースの例
シナリオ:「特定のチャンネルでのボットの競合」の防止
目的: 2つの異なるオートメーションがあります。
- ウェルカムボット:
#Introductionsカテゴリで新規ユーザーに返信し、フォーラムの概要を伝えます。 - サポートボット: 技術的なカテゴリのトピックに返信し、ログや詳細を尋ねます。
問題点: サポートボットが #Introductions 以外すべての場所で実行されるようにしたい。現在、サポートボットが紹介投稿に返信して新規ユーザーを技術的な質問で混乱させるのを防ぐために、インクルージョンリストを使用して、技術的なカテゴリをすべて手動で選択する必要があります。
修正案: サポートボットを除外: #Introductions に設定できれば、サポートボットが許可されるカテゴリの巨大なリストを維持することなく、2つのボットが互いに邪魔し合うことがないようにできます。