إنتقل إلى المحتوى الرئيسي

📱 WhatsApp Cloud API

يتم ربط WhatsApp عبر API Cloud من Meta — واجهة برمجة التطبيقات الرسمية المتاحة بالمستوى المجاني التي تتيح لك إرسال واستقبال رسائل WhatsApp من خادمك الخاص. لا حاجة لمزود حلول أعمال (BSP) من طرف ثالث.


المتطلبات الأساسية

  1. حساب مطور Meta على developers.facebook.com
  2. حساب Meta Business (المعروف أيضاً بـ Business Manager)
  3. رقم هاتف لـ WhatsApp غير مسجل بالفعل على WhatsApp الشخصي (يمكنك استخدام شريحة SIM أو رقم افتراضي أو هاتف أرضي)

خطوات الإعداد

1. إنشاء تطبيق Meta

  1. اذهب إلى developers.facebook.com/apps
  2. انقر على Create App
  3. اختر النوع Business
  4. أدخل اسماً واربط حساب Business الخاص بك

2. إضافة منتج WhatsApp

  1. في لوحة تحكم تطبيقك، انتقل إلى Add Products to Your App
  2. انقر على Set Up في WhatsApp
  3. اختر حساب Business الخاص بك

3. الحصول على بيانات الاعتماد

انتقل إلى WhatsApp → API Setup في لوحة تحكم تطبيقك:

بيانات الاعتمادأين تجدها
Phone Number IDمدرج في قسم "From" — معرف رقمي مثل 123456789012345
Access Tokenالرمز المؤقت المعروض في هذه الصفحة. للإنتاج، أنشئ رمزاً دائماً عبر System Users.
App Secretلوحة تحكم التطبيق → Settings → Basic → App Secret
Verify Tokenسلسلة تختارها بنفسك — أي سلسلة عشوائية، مثل my_secret_verify_token_2024

4. إضافة القناة في PulseHub

  1. اذهب إلى القنوات → إضافة قناة
  2. اختر WhatsApp
  3. املأ الحقول الأربعة
  4. انقر على حفظ القناة
  5. انسخ عنوان URL الخاص بالـ Webhook المعروض على بطاقة القناة

5. تكوين Webhook في Meta

  1. في تطبيق Meta الخاص بك، اذهب إلى WhatsApp → Configuration
  2. انقر على Edit بجانب قسم Webhook
  3. Callback URL: الصق عنوان URL الخاص بـ webhook في PulseHub
  4. Verify Token: أدخل نفس السلسلة التي وضعتها في PulseHub
  5. انقر على Verify and Save

ستقوم Meta بإرسال طلب GET إلى عنوان URL الخاص بالـ webhook مع ?hub.mode=subscribe&hub.verify_token=...&hub.challenge=.... يتحقق PulseHub من الرمز ويعيد التحدي.

  1. ضمن Webhook Fields، اشترك في: messages

6. الاختبار

أرسل رسالة WhatsApp إلى رقم عملك. يجب أن تظهر كمحادثة جديدة في صندوق الوارد في PulseHub خلال ثوانٍ.


التحقق من التوقيع

تضمّن Meta ترويسة X-Hub-Signature-256 في كل webhook:

X-Hub-Signature-256: sha256=abc123...

يتحقق PulseHub منها باستخدام HMAC-SHA256 مع App Secret الخاص بك. إذا فشل التحقق، يُرجع webhook 401 Signature mismatch.


إرسال الرسائل

عندما يرسل وكيل رداً من صندوق الوارد، يستدعي PulseHub واجهة WhatsApp Cloud API:

POST https://graph.facebook.com/v18.0/{phone_number_id}/messages
Authorization: Bearer {access_token}
{
"messaging_product": "whatsapp",
"to": "{recipient_phone}",
"type": "text",
"text": {"body": "ردك هنا"}
}

الوصول إلى الإنتاج

تطبيق Meta الافتراضي في وضع Development — يمكنه فقط إرسال رسائل إلى أرقام مضافة كأرقام اختبار. للانتقال إلى البث المباشر:

  1. أكمل التحقق من الأعمال في Meta Business Manager
  2. قدم حالة استخدام WhatsApp الخاصة بك لـ مراجعة Meta
  3. بمجرد الموافقة، يحصل تطبيقك على صلاحية إرسال رسائل لجميع مستخدمي WhatsApp

المشاكل الشائعة

العرضالسبب المحتمل
فشل التحقق أثناء إعداد webhookverify_token في PulseHub لا يتطابق مع ما أدخلته في Meta
خطأ عدم تطابق التوقيع في السجلاتapp_secret خاطئ — انسخه من App Settings → Basic، وليس من API Setup
الرسائل لا تصلحقل webhook messages غير مشترك في لوحة تحكم Meta
Invalid phone number عند الإرساليجب أن يكون تنسيق الرقم E.164 بدون + (مثل 15551234567)
خطأ التطبيق في وضع Developmentفقط أرقام الاختبار المحققة يمكنها استقبال الرسائل في وضع dev