ما تحتاجه أولًا
1
سير عمل في n8n فيه عقدة Webhook
أضف عقدة Webhook بطريقة
POST. ويمنحك n8n رابطين — رابط اختبار يستمع فقط أثناء فتح
المحرر، ورابط إنتاج يعمل بعد تفعيل سير العمل. ابدأ برابط الاختبار.2
نقطة نهاية webhook في لينكياسوفت
التكاملات ← Webhooks ← نقطة نهاية جديدة. الصق رابط n8n، واشترك في
lead.stage.changed.3
مفتاح التوقيع
يُعرض مرة واحدة عند إنشاء نقطة النهاية. انسخه — فـ n8n يحتاجه للتحقق من أن الطلب جاء منا فعلًا.
رابط الاختبار في n8n يقبل طلبًا واحدًا فقط لكل ضغطة على “Listen for test event”. فإذا بدا أن
اختبارك الثاني اختفى، فهذا هو السبب — اضغط الاستماع من جديد.
اختر حقولك
حمولة تغيّر المرحلة قد تحمل اسم العميل المحتمل وبريده وهاتفه وقيمته ومالكه وأكثر. وسير عمل n8n ينتهي عادةً في قنوات Slack وجداول البيانات، فأرسل ما يستخدمه سير العمل فقط. ولإشعار Slack، هذا يكفي عادةً:
وأزل تحديد
email وphone ما لم يكن سير العمل بحاجة إلى مراسلة أحد. راجع
اختيار الحقول المرسلة.
تحقق من التوقيع داخل n8n
أي شخص يعرف رابط n8n لديك يستطيع إرسال POST إليه. والتوقيع هو الفارق بين «تحرك عميل محتمل» و«أخبرني أحدهم أن عميلًا محتملًا تحرك». أضف عقدة Code مباشرة بعد عقدة Webhook:تصرّف بناءً عليه
بعد عقدة Code، تُوجّه عقدة Switch أو IF على{{ $json.body.data.status }} حسب المرحلة.
ثم ترسل عقدة Slack شيئًا مثل:
POST /v1/conversations/send بمفتاح API نطاقه
conversations:send. واقرأ
قاعدة الـ 24 ساعة أولًا — فالإشعار
الذي يبدأه سير عملك يحتاج قالبًا معتمدًا في الغالب الأعم.
الانتقال إلى الإنتاج
شيئان يتغيران عند الانتقال من رابط الاختبار:- حدّث رابط نقطة النهاية في لينكياسوفت إلى رابط الإنتاج في n8n. فهما مساران مختلفان — وإعادة استخدام رابط الاختبار تعني توقف التسليم لحظة إغلاق المحرر.
- فعّل سير العمل. فسير العمل غير المفعّل يعيد
404، ونحن نعتبرها نهائية ولا نعيد المحاولة أبدًا.
عندما لا يصل شيء
تحقق بهذا الترتيب — والإجابة في الخطوة 1 دائمًا تقريبًا.- سجل التسليم، في صفحة نقطة النهاية داخل لينكياسوفت. فهو يعرض كل محاولة ورمز الحالة والجسم الذي أرسلناه بالضبط. وإن لم يكن هناك صف إطلاقًا، فالحدث لم يقع — تحقق من اشتراكك في الحدث الصحيح ومن أن المرحلة تغيّرت فعلًا.
-
رمز الحالة في ذلك السجل.
-
قائمة عمليات التنفيذ في n8n نفسه. فإذا سجّلنا
2xxولم يحدث شيء، فالطلب وصل والخلل في سير العمل.
أمران يوقعان بك
كلا الحدثينlead.updated وlead.stage.changed يقعان عند نقل المرحلة. اشترك في واحد. فإن
أخذت الاثنين، شغّل كل نقل سير عملك مرتين.
التسليم مرة واحدة على الأقل. فمهلة انتهت بعد تشغيل سير عملك فعلًا تعني أننا نعيد المحاولة
فيعمل ثانية. وإذا كان ينشر في Slack، ستحصل على رسالتين؛ وإذا كان يخصم مالًا، فلديك مشكلة حقيقية.
أزل التكرار بالاعتماد على {{ $json.body.id }}، فهو ثابت عبر كل محاولات التسليم نفسه.
