البناء البصري

ابنِ workflow بدون لمس JSON واحد.

المحرّر البصري في /automation/workflows/new يعطيك canvas شبيه بـ Zapier و n8n: لوحة عقد على اليسار، canvas في الوسط، inspector على اليمين عند الاختيار.

المكوّنات الأربعة

  1. Form أعلى الصفحة — اسم، وصف، نوع المُحفِّز، الـ trigger config، tags.
  2. Palette (يسار) — 6 actions + condition. ابحث + اسحب لـ canvas.
  3. Canvas (المنتصف) — React Flow + snap-to-grid + minimap.
  4. Inspector (يمين، يفتح عند الاختيار) — تحرير config + variable picker.
  1. حدّد المُحفِّز
    من الـ form أعلى الصفحة. اختر النوع → ستظهر حقول config المناسبة لكل نوع.
  2. اسحب أول عقدة
    من الـ palette، اسحب الـ action الذي تريد (مثلاً log للاختبار) لـ canvas.
  3. حرّر الـ config
    انقر على العقدة → الـ Inspector ينفتح على اليمين. عبّئ الحقول. استخدم Variable Picker (الأيقونة بجانب الحقل) لإدراج {{variables}} بنقرة.
  4. اسحب عقدة ثانية وارتبط
    اسحب action آخر. اسحب من الـ handle السفلي للأولى إلى الـ handle العلوي للثانية — ينشأ edge تلقائياً.
  5. استخدم condition للتفرّع
    عقدة condition لها handle سفلي مزدوج (true / false). اربط كلاً إلى مسار مختلف.
  6. احفظ + اختبر
    زر “إنشاء” → يحوّل الـ visual إلى engine JSON ويحفظ. تنتقل لصفحة التفاصيل، اضغط “🧪 اختبار” لتجربة workflow حياً.
JSON ↔ Visual
أعلى الـ canvas في tab “JSON”، تستطيع تحرير الـ engine JSON مباشرة. التبديل بين Visual و JSON متزامن — تعديل أي طرف ينعكس على الآخر.

التحقّق التلقائي

الـ builder يمنع تلقائياً:

  • دورات (cycles) — لا تستطيع تربط عقدة لنفسها أو لأسلافها.
  • أكثر من edge صادر من نفس الـ handle.
  • اختيار trigger node ثاني (لكل workflow trigger واحد).
تنبيه
لو رسمت رسماً غير صالح، الـ visual builder يمنعه. لكن في JSON mode، تستطيع تكتب أي شيء — التحقّق يحدث عند الحفظ.