استبعاد الفئة (القائمة السوداء) لمشغلات الأتمتة

السياق

حاليًا، عند تكوين المشغلات (Triggers) في إضافة Discourse Automation (مثل تم إنشاء مشاركة، تم إنشاء موضوع)، يُعرض لنا مُرشِّح “الفئات” (Categories). يعمل هذا كـ قائمة بيضاء (Whitelist): الأتمتة تعمل فقط في الفئات المحددة.

المشكلة

يُنشئ نهج القائمة البيضاء هذا احتكاكًا وديون صيانة للمجتمعات التي ترغب في تطبيق أتمتات “عامة” مع استثناءات قليلة فقط.

إذا أردت أن تعمل الأتمتة على جميع الفئات باستثناء فئة #staff:

  1. الإعداد الأولي: يجب عليّ تحديد كل فئة عامة يدويًا.
  2. الصيانة: في كل مرة ننشئ فيها فئة جديدة في المستقبل، لن تعمل الأتمتة عليها بشكل افتراضي. يجب على المسؤولين تذكر العودة إلى إعدادات الأتمتة وإضافة الفئة الجديدة إلى القائمة.

الحل المقترح

أقترح إضافة حقل “استثناء الفئات” (Exclude Categories) (قائمة سوداء - Blacklist).

السلوك المطلوب:

  • إذا تُرك حقل “الفئات” فارغًا وتم ملء حقل “الفئات المستبعدة”: يتم التشغيل على كل شيء باستثناء المستبعد منها.
  • يضمن هذا الاستعداد للمستقبل: أي فئة جديدة يتم إنشاؤها لاحقًا ستتوارث الأتمتة تلقائيًا دون تدخل يدوي.

مثال على حالة الاستخدام

السيناريو: منع “تضارب الروبوتات” في قنوات محددة

الهدف: لديّ أتمتتان متميزتان:

  1. روبوت الترحيب (Welcome Bot): يرد على المستخدمين الجدد في فئة #Introductions لتقديم ملخص للمنتدى.
  2. روبوت الدعم (Support Bot): يرد على المواضيع في الفئات التقنية لطلب السجلات/التفاصيل.

المشكلة: أريد أن يعمل روبوت الدعم في كل مكان باستثناء فئة #Introductions. حاليًا، لمنع روبوت الدعم من الرد على مشاركة ترحيبية (وإرباك المستخدم الجديد بأسئلة تقنية)، يجب عليّ استخدام قائمة “التضمين” لتحديد كل فئة تقنية يدويًا.

الحل: إذا كان بإمكاني ببساطة تعيين روبوت الدعم على استثناء: #Introductions، يمكنني ضمان عدم تداخل الروبوتين مع بعضهما البعض، دون الحاجة إلى صيانة قائمة ضخمة بالفئات المسموح بها لروبوت الدعم.

إعجاب واحد (1)