مرحباً بالجميع،
أواجه مشكلة في محفز “On messages” الرسمي لـ WhatsApp Business Cloud في n8n.
البيئة
إصدار n8n: 2.31.6
مستضاف ذاتياً على PikaPods
المتصفح: Google Chrome
عقدة WhatsApp Business Cloud الرسمية
ما تحققت منه بالفعل
بيانات اعتماد OAuth تتصل بنجاح (“تم اختبار الاتصال بنجاح”).
WhatsApp Cloud API يعمل بشكل صحيح.
يمكنني إرسال رسائل WhatsApp بنجاح باستخدام نفس بيانات الاعتماد.
تطبيق Meta الخاص بي مكوَّن بشكل صحيح.
صفحة “Check test webhooks” من Meta تستقبل كل حدث “messages” واردة بنجاح عندما أرسل رسالة WhatsApp.
أنقر على “Test this trigger” أولاً، ثم أرسل رسالة WhatsApp جديدة إلى رقم الاختبار.
المشكلة
محفز “On messages” يبقى دائماً في:
“في انتظار حدث المحفز”
لم يتم إنشاء أي تنفيذ في n8n، على الرغم من أن Meta تستقبل أحداث webhook بوضوح.
نظراً لأن Meta تستقبل الأحداث وتعمل المحفزات الأخرى بشكل صحيح على نفس المثيل، لست متأكداً ما إذا كانت هذه مشكلة معروفة مع محفز WhatsApp Business Cloud في n8n v2.31.6 أو إذا كان هناك خطوة تكوين إضافية أفتقدها.
هل واجه أحد هذه المشكلة من قبل أو يعرف كيفية حلها؟
شكراً لك مقدماً!
صف المشكلة / الخطأ / السؤال
ما رسالة الخطأ (إن وجدت)؟
يرجى مشاركة سير العمل الخاص بك
(حدد العقد على الورقة واستخدم اختصارات لوحة المفاتيح CMD+C/CTRL+C و CMD+V/CTRL+V لنسخ ولصق سير العمل.)
مرحباً @Hager_Khaled أهلاً وسهلاً!
ظهور Meta للحدث يعني فقط أن Meta قامت بإنشاؤه. يتم التسليم إلى أي تطبيق مشترك به حسابك على WhatsApp Business، وفي التطبيقات المُنشأة حديثاً يكون عادةً تطبيق Meta الخاص به “WA DevX Webhook Events 1P App” بدلاً من تطبيقك، لذلك لوحة المعلومات تبدو صحية بينما لا شيء يصل إلى n8n. افتح Meta Graph API Explorer وعيّن نقطة النهاية إلى معرّف WABA الخاص بك (WhatsApp > API Setup):
<WABA_ID>/subscribed_apps
أرسله كـ GET وانظر إلى اسم التطبيق الذي يعود. إذا لم يكن تطبيقك، غيّر الطريقة إلى POST وأرسل، ثم GET مرة أخرى للتأكد من أن تطبيقك مدرج. تبدأ الرسائل بالوصول مباشرة بعد ذلك، دون الحاجة إلى تغيير أي شيء على جانب n8n.
انظر إلى هذا:
إذا كنت تريد رؤية البيانات مباشرة في محرر n8n لتعيين حقولك:
افتح عقدة WhatsApp Business Cloud في n8n.
ابحث عن إعدادات Webhook URL داخل العقدة. قم بتبديل العرض من “Production” إلى “Test”.
انسخ Test URL (يجب أن يحتوي على webhook-test).
انتقل إلى لوحة تحكم Meta Developer $\rightarrow$ WhatsApp $\rightarrow$ Configuration.
استبدل مؤقتاً Callback URL الخاص بك بـ Test URL.
عد إلى n8n واضغط على “Test this trigger”.
أرسل رسالة WhatsApp. يجب أن يتدفق الحدث الآن إلى محرر n8n.
ملاحظة: تذكر تبديل URL مرة أخرى إلى إصدار Production بعد الانتهاء من الاختبار.
إذا كنت تريد التأكد من أن الأتمتة تعمل بالفعل في الوقت الفعلي:
تأكد من تكوين تطبيق Meta باستخدام Production URL الخاص بك (.../webhook/...).
في n8n، اضغط على زر “Publish” في الزاوية العلوية اليمنى من لوحة الرسم.
أرسل رسالة WhatsApp.
بدلاً من النظر إلى المحرر، انتقل إلى علامة التبويب “Executions” في الشريط الجانبي الأيسر من n8n. يجب أن تشاهد مدخل تنفيذ جديد هناك.
إذا قمت بالتبديل إلى Test URL ولا يزال “Waiting for trigger event”:
PikaPods/Proxy Headers: تأكد من أن تكوين PikaPods الخاص بك لا يزيل نص الطلب. نظراً لأن “Check test webhooks” من Meta تعمل، فإن الاتصال مفتوح، لكن إذا كان النص مفقوداً، قد لا يتعرف n8n عليه كحدث WhatsApp صحيح.
سجلات n8n: تحقق من سجلات PikaPods الخاصة بك. إذا كان الطلب يصل إلى n8n لكن فشل في تفعيل العقدة، فسيكون هناك خطأ 400 أو 500 مسجل على الأرجح.
Verify Token: تأكد من أن “Verify Token” الذي حددته في تطبيق Meta يطابق بالضبط ما لديك في عقدة n8n. (على الرغم من أنه عادةً، هذا يمنع النجاح الأولي لإعداد webhook).