أرِنا سير عملك

متابعة النقاش من لمحة عن ميزة Workflows الجديدة:

أنا متحمس جدًا لإطلاق ميزة Workflows. كنت أحلم بهذه الميزة عندما كنت مدير مجتمع نشط، وأبحث عن طرق لأتمتة العمليات التكتيكية المتكررة في المجتمع.

أنا فضولي للغاية لمعرفة ما هي الأشياء التي تستخدمون ميزة Workflows من أجلها (أو ستفعلونها، الآن بعد أن عرفتم بها!).

سأبدأ أنا — لكني سأقر بأنني اضطررت إلى تفويض بناء الميزة فعليًا إلى @zogstrip و @chapoi لأنني لا أملك المهارات اللازمة لذلك.

سير عمل تذكير التحديث الأسبوعي
الشيء الوحيد الذي نلزم به فريقنا هو إجراء تحديث أسبوعي واحد حتى نطمئن على أنهم بخير وسعداء. بعض الأشخاص لا يقومون بذلك (لسبب أو آخر)، ويضيع الوقت والطاقة في مطاردتهم، لذا لدينا حل جديد.

يفحص هذا سير العمل موضوع التحديث ويقدم لهم تنسيقات CSS متدرجة السوء كلما طال أمد تأخرهم.

من المذهل مدى فاعليته!

11 إعجابًا

أحبّ CSS :laughing:! هل يمكنك مشاركته إذا أمكن؟

إعجابَين (2)

رجاءً لا تقل لي أنك… تريد أسوأ موضوع قمت بتصميمه على الإطلاق؟ :sweat_smile:

3 إعجابات

أنا فعلاً أضحك :laughing: . يبدو… إبداعياً جداً :eyes: .

إعجابَين (2)

إنه أمر مذهل حقًا. أعلم ذلك، لأنني أثناء محاولتي اختبار شيء غير ذي صلة، وضعتُ نفسي عن غير قصد في المجموعة 4، واضطررت إلى محاولة تصحيح المشكلة بينما كان كل شيء على الشاشة يطفو ويبتعد. :laughing: كان @zogstrip صبورًا للغاية.

إعجابَين (2)

ليس الأمر واضحًا تمامًا من نظرة عامة على سير العمل، لذا إليك كيف يعمل:

الجزء الأول - الصندوق الأصفر

  • لكل منشور يُنشأ أو يُحرَّر في فئة #updates، نتحقق مما إذا كان منشورًا من قِبل صاحب الموضوع الأصلي.
  • إذا لم يكن من صاحب الموضوع الأصلي، فإننا “نتوقف” عن المعالجة.
  • إذا كان من صاحب الموضوع الأصلي، نمرره عبر مصنّف يعتمد على نموذج لغوي كبير (LLM) يعيد بعض البيانات بتنسيق JSON تُظهر ما إذا كان المنشور تحديثًا أسبوعيًا حقيقيًا (لا نطلب تنسيقًا محددًا) وليس ردًا عشوائيًا على منشور آخر.
  • ثم نخزّن نتيجة التصنيف هذه في جدول بيانات.
  • إذا تم تصنيف المنشور على أنه تحديث أسبوعي، فإننا فورًا نزيل المستخدم من جميع مجموعات “المتأخرين” (الصندوق الأخضر).

الجزء الثاني - الصندوق الأزرق

  • كل يوم، في الساعة 6:00 صباحًا بتوقيت UTC، نُنفذ استعلامًا لاستكشاف البيانات يجمع بين جميع الإجازات والعطلات و"أحدث تحديث أسبوعي" لوضع الأشخاص في إحدى المجموعات الأربع لـ"المتأخرين".

الجزء الثالث - غير معروض في سير العمل

  • لدينا مكوّن مخصص لسمة العرض[1] يتحقق مما إذا كان المستخدم الحالي ضمن إحدى مجموعات “المتأخرين” ويطبّق المزيد من… الإزعاج :sweat_smile:

  1. يُطبَّق على جميع سمات العرض لدينا ↩︎

5 إعجابات

تتطلب بعض الوسوم أن تُستخدم، لكن الأعضاء لديهم عادة في النشر في الفئات غير الصحيحة، مما يعني أن الكثير من الوقت يُهدر في نقل المواضيع إلى المكان الصحيح.

عملية أساسية جدًا تعمل عند إنشاء الموضوع، حيث تفحص الوسوم المستخدمة ثم تغيّر الفئة تلقائيًا.

شيء بسيط كهذا ساعد في الحفاظ على بعض الهيكلية دون بذل أي جهد.

إعجابَين (2)

متابعةً لمنشور كتبته في موضوع سير العمل الأصلي. لقد توصلت إلى طريقة لجعله يعمل كما أريد. هذا كله مجرد اختبار بالطبع، لكن إليك ما يفعله:

هذا نظام لإعادة تفاعل المستخدمين، يستخدم الذكاء الاصطناعي لبدء النقاشات على الأرجح، ولزيادة معدل التفاعل في الأوقات التي يكون فيها الموقع هادئًا.

المرحلة أ: تحديد الملخصات

تحديد المنشورات التي يزيد عمرها عن 30 يومًا، والتي تكون خليطًا من المعايير التالية:

-مواضيع شائعة لم يُنشر فيها منشور منذ فترة.
-مواضيع تحصل على عدد كبير من المشاهدات، لكن لم يُرد عليها منذ فترة.
-مواضيع كان فيها بعض النشاط خلال العام الماضي، ثم توقفت.

بمجرد العثور على موضوع، يُطلق وكيل “الملخص بالذكاء الاصطناعي” في Discourse. يُطلب من وكيل الذكاء الاصطناعي كتابة ملخص. يقوم بذلك عن طريق إرسال طلب HTTP إلى نقطة نهاية API الخاصة بالملخصات. بمجرد اكتمال الملخص، يُحفظ وجود سير العمل في جدول بيانات.

(يُنفذ هذا مرة واحدة في الساعة، لكن ربما أكثر من ذلك).

المرحلة ب: تقييم الملخص للمتابعة

سير عمل مجدول آخر يعمل بشكل مستقل على جدوله الخاص. يتحقق من جدول البيانات عن الصفوف التي تم تلخيصها ولكن لم يتم تقييمها بعد. يجلب موضوعًا واحدًا من جدول البيانات ثم يحصل على أحدث 5 إلى 10 منشورات على ذلك الموضوع.

يُمرر إلى وكيل ذكاء اصطناعي يتولى الفرز. يقوم باتخاذ قرار. هل هذا موضوع يجب إحياءه؟ وإذا كان كذلك، فكيف؟ يقرر ما إذا كان يجب رفع الموضوع، أو نشر رد يعيد التفاعل مع الموضوع: يطرح سؤالاً، أو يطلب متابعة، أو لا يفعل شيئًا على الإطلاق.

يُحدّث جدول البيانات بالقرار المتخذ.

(يجب أن يُنفذ هذا بنفس التكرار تقريبًا للمرحلة أ، يمكنك أيضًا تشغيله من المرحلة أ أو دمجه معها.)

المرحلة ج: إعادة التفاعل مع الموضوع

سير عمل مجدول آخر يعمل على جدوله الخاص، وليس بنفس التكرار. خطوته الأولى هي التحقق من مدى نشاط المنتدى مؤخرًا. يفعل ذلك بفحص عدد المنشورات التي تم إجراؤها في المتوسط في الساعة، خلال آخر 3 ساعات. ثم يأخذ المتوسط لمدى انشغال المنتدى خلال فترات مدتها 3 ساعات، في نفس اليوم والوقت خلال آخر شهرين. إذا لم يكن الموقع مشغولًا كما هو معتاد في نفس الوقت من نفس اليوم، فسيقول ‘يمكننا إجراء إعادة تفاعل الآن’.

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

سيقوم سير العمل برفع الموضوع ما لم يُحدد أنه متابعة. إذا كان المصير هو المتابعة، فسوف يأخذ معرّف الموضوع ويجلب أحدث المنشورات من ذلك الموضوع. سيُمررها إلى وكيل ذكاء اصطناعي سيحدد ما هي أفضل استجابة لإعادة التفاعل مع الموضوع. لديه ضوابط لضمان رد أساسي جدًا، لا يزال في صدد الموضوع ولا يقدم توصيات أو تعليقات. يطلب بشكل أساسي تحديثًا، أو يسأل إذا كان لدى المنشئ الأصلي أي تحديث حول شيء حدث.. إلخ. ينشر الرد ثم يُحدّث جدول البيانات بتاريخ الإكمال.

آمل ألا أكون قد نسخت ببساطة ميزة مخفية في Discourse لم أكن أعرف بها! استغرق الأمر بعض التجربة والخطأ، لكنني أنجزته.

6 إعجابات

إليك بعض التقارير الأسبوعية التي نستخدمها للإبقاء على فريقنا على اطلاع بأنشطة مختلفة على المنصة. لكل تقرير موضوع في فئة الموظفين حيث يتم نشر النتائج.

أعتقد أنها عامة إلى حد كبير، إذا كنت ترغب في تجربتها على موقعك الخاص. ما عليك سوى تغيير معرّف الموضوع (topic ID) حيث تُشارك النتائج في العقدة الأخيرة إلى موضوع في فئة الموظفين الخاصة بك.

(قد تحتاج إلى تحرير يدوي قبل الاستيراد. لقد قمت بتجاوزها يدويًا إلى TOPIC_ID بعد التصدير للمساعدة في تجنب الحوادث)

تقرير الإشراف الأسبوعي
الملف: weekly-moderation-report.json (21.4 KB)

  • يتضمن جداول تدرج:
    • ملخص الإشراف (عدد إجراءات الإشراف المختلفة)
    • عدد الأعلام التي عالجها مستخدمون مختلفون
    • عدد الأعلام التي أبلغ عنها مستخدمون مختلفون
    • قائمة المنشورات المعلَّمة مع البيانات الوصفية المرتبطة بها
    • التحذيرات الصادرة
    • ملاحظات المستخدمين المضافة

تقرير إعدادات الموقع الأسبوعي
الملف: weekly-site-settings-report.json (3.3 KB)

  • يتضمن جدولًا يدرج إعدادات الموقع التي تم تغييرها
    • اسم الإعداد
    • من قام بتغييره ومتى
    • القيمة القديمة، القيمة الجديدة

تقرير مستوى الثقة الأسبوعي
الملف: weekly-trust-level-report.json (9.8 KB)

  • يتضمن جداول تدرج:
    • ملخص (عدد المستخدمين المقترحين لكل مستوى ثقة في الأسبوع الماضي)
    • قائمة المستخدمين الذين حصلوا على مستوى ثقة 2 أو 3
8 إعجابات

نحن نستخدم حاليًا سير العمل (Workflows) على نطاق واسع في مجتمعنا على Discourse، وهي تصبح جزءًا مفيدًا حقًا في عملية استقطاب الأعضاء الجدد وإدارة الفعاليات.

يضم مجتمعنا أكثر من 9,000 مستخدم مسجّل، والعديد من مجموعات الدعم المتبادل المختلفة عبر الإنترنت وفي الواقع، لذا يساعدنا الأتمتة كثيرًا.

إليك بعض سير العمل التي نستخدمها حاليًا:

:waving_hand: استقطاب شخصي

يتلقى المستخدمون الجدد رسائل شخصية آلية بعد التسجيل.

يعتمد المحتوى على الاهتمامات التي اختاروها أثناء التسجيل (مثل مجموعات الدعم المتبادل، الفعاليات، مقهانا الافتراضي، أو المرافقة الجسدية (body doubling) أو المراسلات المكتوبة).

وبعد بضعة أيام، يتلقون رسالة متابعة ثانية تتضمن معلومات إضافية ومساعدة على البدء.

:date: تذكيرات بالفعاليات

نستخدم سير عمل مجدول يتحقق كل 15 دقيقة من الفعاليات التي تبدأ خلال حوالي 24 ساعة.

يتلقى المستخدمون الذين اختاروا حاضر أو مهتم تذكيرًا شخصيًا يتضمن عنوان الفعالية، والتاريخ، والوقت، ورابطًا يعود إلى الفعالية.

لدينا أيضًا بعض المجموعات التي لديها سير عمل تذكير خاص بها، لذا يستثني سير العمل العام هؤلاء المستخدمين لمنع تكرار التذكيرات.

:laptop: تعليمات alfaview حسب السياق

تلتقي العديد من مجموعات الدعم المتبادل لدينا عبر الإنترنت باستخدام alfaview، بينما تُقام فعاليات أخرى عبر Zoom أو في الواقع.

لذلك، نتحقق من منشور الفعالية بحثًا عن رابط alfaview.

إذا كان هناك رابط alfaview، يتضمن تذكير الـ 24 ساعة تلقائيًا دليلًا قابلًا للتوسيع خطوة بخطوة يشرح كيفية دخول غرفة الانتظار ثم اختيار غرفة الاجتماع الصحيحة، بما في ذلك لقطة شاشة.

إذا لم يكن هناك رابط alfaview، يُرسل التذكير المعتاد دون هذه التعليمات.

هذا يعني أنه لا يلزمنا الحفاظ على قوائم للمجموعات “الافتراضية” و"الواقعية".

:door: استقطاب لاجتماعات الفيديو

نستخدم أيضًا سير عمل النماذج كخطوة استقطاب قصيرة قبل وصول المستخدمين إلى غرف اجتماعات الفيديو لدينا لأول مرة.

يتلقى المستخدمون تعليمات تشرح كيفية عمل هيكل غرف alfaview لدينا. وبعد قراءتها، يمكنهم اختيار ما إذا كانوا يريدون رؤية التعليمات مرة أخرى في المرة القادمة.

إذا اختاروا عدم رؤيتها مرة أخرى، يضيفهم سير العمل إلى مجموعة علامة. ثم يستخدم مكوّن الثيم لدينا ذلك الانتماء إلى المجموعة لإظهار رابط اجتماع الفيديو المباشر بدلاً من نموذج الاستقطاب.

:bell: إشعارات محددة للمجموعات

نستخدم سير العمل لإشعار أعضاء مجموعات معينة بالفعاليات الجديدة والاجتماعات القادمة.

هذا مفيد بشكل خاص لمجموعات الدعم المتبادل حيث نريد أن يتلقى الأعضاء إشعارًا بغض النظر عما إذا كانوا يزورون المنتظم بانتظام أم لا.


ما يعجبني بشكل خاص في سير العمل هو قدرتنا على دمج النماذج، واستعلامات SQL، والمجموعات، والتحقق المجدول، والرسائل الشخصية.

لا يزال هناك بعض الأشياء التي أحب أن أراها في المستقبل. مثال على ذلك هو تحسين التكامل مع التقويم: في المثالي، عندما يختار شخص ما حاضر لفعالية، نود أن نرسل إليه بريدًا إلكترونيًا مرفقًا به ملف تقويم .ics تلقائيًا.

7 إعجابات

حالة استخدام مثيرة للاهتمام للغاية، بالتأكيد شيء يستحق التفكير فيه @j.jaffeux / @martin / @lindsey

أتساءل إذا كان هذا سينتمي إلى سير العمل أم أنه ميزة مدمجة في أحداث ديسكورس؟

4 إعجابات

شكرًا على هذا الملاحظات القيمة ومشاركتك تجربتك، إنه رائع أن نرى كيف تستخدمون جميعًا سير العمل، وكيف تحل هذه الميزات مشاكل حقيقية لمجتمعاتكم :heart:

يبدو أن هذه الميزات الأساسية حقًا، لكن يجب أن يكون من الممكن تحقيق ذلك هذا الأسبوع من خلال سير العمل، لدينا شيء قادم مخصص لهذا الغرض تحديدًا.

6 إعجابات