نحن نطور ميزة “سير العمل” (Workflows) الجديدة المصممة لدعم المهام المعقدة التي لا يمكن لأداة “الأتمتة” (Automations) الحالية التعامل معها. يتيح لك هذا المُصمم المرئي الجديد لإنشاء الأتمتة إنشاء سير عمل متعدد الخطوات يتضمن تأخيرات زمنية، وفروعًا شرطية، واستدعاءات لخدمات خارجية، وإجراءات الذكاء الاصطناعي مباشرةً من لوحة الإدارة.
ملاحظات مهمة!
ميزة “سير العمل” متاحة في خطط “الأعمال” (Business) و"المؤسسات" (Enterprise)، للمستخدمين الذين يستخدمون استضافة Discourse.
في الوقت الحالي، يُعتبر هذا التغيير تجريبيًا! نحن لا نزال نعمل على صقل هذه الميزة وتحسينها، لذا قد تكون هناك بعض الحواف الخشنة وتعديلات صغيرة في الأسابيع القادمة.
نظرة عامة على “سير العمل”
تستبدل ميزة “سير العمل” النهج المعتمد بشدة على البرمجة النصية (scripting) في إضافة “الأتمتة” الحالية بلوحة مرئية تعتمد على العقد (nodes)، تقوم بربطها لإنشاء منطق معقد ومتعدد الخطوات.
المُحفزات (Triggers) تبدأ سير العمل استجابةً لأحداث معينة في Discourse (مثل: إنشاء موضوع، إضافة مستخدم إلى مجموعة، إلخ)، أو جدول زمني محدد، أو خطاف ويب (webhook)، أو إجراء يدوي.
الشروط (Conditions) تنشئ فروعًا في سير العمل بناءً على منطق “نعم/لا” لأي بيانات موجودة في سير العمل.
الإجراءات (Actions) هي أحداث يتم تشغيلها بواسطة سير العمل، مثل إرسال رسالة خاصة أو رسالة محادثة، أو نشر رد، أو استدعاء نقطة نهاية HTTP، أو تشغيل وكيل ذكاء اصطناعي، أو الاستعلام من مستكشف البيانات (Data Explorer).
الأدوات المساعدة (Utilities) تتحكم في التدفق نفسه من خلال تعيين التأخيرات، والتكرار عبر العناصر، وتعيين المتغيرات، ويمكنها المساعدة في توثيق سير العمل باستخدام ملاحظات لاصقة.
تدعم معلمات كل عقدة القيم الحرفية والتعابير الديناميكية، لذا يمكنك الرجوع إلى مخرجات أي عقدة سابقة، أو متغيرات سير العمل، أو سياق التنفيذ من خطوة سابقة في خطوة لاحقة.
تتضمن ميزة “سير العمل” بعض الأدوات الإضافية لتسهيل إنشاء وإدارة مخرجاتها:
المتغيرات (Variables) هي أزواج مفتاح/قيمة مخزنة (مثل: معرفات المجموعات، معرفات الفئات، إلخ) متاحة بسهولة عبر جميع عمليات سير العمل لتسهيل التكوين.
البيانات الاعتمادية (Credentials) هي المكان الذي يمكنك فيه تخزين تكوينات المصادقة القابلة لإعادة الاستخدام لعقد طلبات HTTP، بحيث لا تحتاج إلى لصك مفاتيح API في عمليات سير العمل الخاصة بك.
جداول البيانات (Data tables) تُستخدم لتخزين واستعلام بيانات وقت التشغيل، بحيث يمكنك تتبع عمليات التنفيذ (مثل: معرفة ما إذا كان سير العمل قد تم تشغيله بالفعل على موضوع معين) والرجوع إلى مخرجات سير العمل بسهولة.
ينتج كل تشغيل لسير عمل سجلًا كاملاً في علامة “التنفيذات” (Executions). يمكنك رؤية العقد التي تم تشغيلها، والبيانات التي استلمتها، ومخرجاتها، وأين توقف سير العمل إذا حدث خطأ ما.
في الوقت الحالي، يُعتبر هذا التغيير تجريبيًا! نحن نرحب بملاحظاتكم، والتي ستساعدنا على إجراء تحسينات ونشر الميزة على نطاق أوسع.
للتجربة، انتقل إلى التغييرات القادمة في المسار /admin/config/upcoming-changes، وابحث عن عنصر تفعيل سير عمل Discourse (Enable Discourse workflows)، وقم بتحديث حقل مُفعّل لـ… (Enabled for…) لتشغيل الموقع الخاص بك.
لقد قمنا ببناء بعض التكاملات والأتمتة باستخدام هذا البرنامج المساعد الجديد خلال الأسابيع الأربعة الماضية، وكل ما يمكنني قوله هو أنه رائع للغاية، ويحدث تحولاً جذرياً في Discourse. هذه حقاً أفضل ميزة جديدة منذ سنوات (وهناك بالفعل بعض الميزات الرائعة بالفعل ).
أحب العمل مع سير العمل الجديدة - إنها تغيير جذري، ويمكن ربطها بخدمات مثل n8n أيضًا.
لقد لاحظت أن حد المعدل يتم الوصول إليه غالبًا - كيف يمكن تغيير ذلك؟
أيضًا، لست متأكدًا لماذا، لكنني وجدت أنه في بعض الأحيان يتوقف عن العمل، والطريقة الوحيدة لإعادته للعمل هي إيقاف الميزة وإعادة تشغيلها عبر “التغييرات القادمة”.
تخيل أنك قادر على إنشاء تدفق يعتمد على مستوى ثقة المستخدم، مما يتيح لك تنفيذ سلوكيات ديناميكية، مثل: إذا كان المستخدم عضوًا في هاتين المجموعتين في آن واحد، أضفه إلى هذه المجموعة الثالثة التي تمنحه الوصول إلى فئة جديدة.
من الصعب تنفيذ مثل هذه السلوكيات الديناميكية باستخدام Discourse في وضعه الافتراضي.
أود أن أعرف في أي الحالات يجب الاستمرار في استخدام الأتمتة (Automations) مع الاستعلامات (Queries)، ومتى يجب استخدام سير العمل (Workflows) فعلياً. خذ الإجراء التالي كمثال:
إرسال رسائل خاصة إلى المستخدمين الذين تتجاوز نسبة قراءاتهم إلى منشوراتهم 250:1 (والذين سينضمون في النهاية إلى مجموعة “المستبعدين من القوائم”، والمعروفة أيضاً باسم “المتطفلين”)
أي أداة أكثر كفاءة و/أو موصى بها لهذا الحالة بالتحديد؟ متى يجب أن أستخدم الأتمتة مع الاستعلامات، ومتى يجب أن أستخدم سير العمل؟
أفهم أن سير العمل يتيح قرارات متفرعة وبالتالي تمكين مخططات ديناميكية؛ للبدء، أود أن أعرف ما يعتقده المستخدمون ذوو الخبرة حول الحالات الأبسط.