Webhook
تتيح لك Webhooks إرسال بيانات الرحلة إلى خدمات خارجية مثل التحليلات وأنظمة CRM وأدوات التسويق. يمكنك:
- إخطار الأنظمة الخارجية عندما يتخذ العميل إجراءً في الرحلة
- إرسال بيانات العملاء إلى أدوات التحليل
- تشغيل رسائل بريد إلكتروني أو SMS أو WhatsApp من جهات خارجية عند وقوع أحداث معينة في الرحلة
كيفية إعداد عنصر Webhook
Anchor link toإضافة عنصر Webhook
Anchor link toاسحب وأفلت عنصر Webhook إلى لوحة العمل. ضع Webhook في أي مكان تريده، مع الأخذ في الاعتبار معلومات الرحلة التي سترسلها إلى خدمة خارجية.

تسمية خطوة Webhook وتحديد عنوان URL ونوع الطلب
Anchor link toفي حقل STEP NAME، أدخل اسمًا لـ webhook. قد يكون من المفيد تسمية webhooks وفقًا للخدمات التي ترسل البيانات إليها أو حالة الاستخدام.
بعد ذلك، في حقل URL، حدد عنوان URL للطلب الذي يجب إرسال البيانات إليه. بجوار حقل URL، حدد نوع الطلب من القائمة المنسدلة REQUEST TYPE: GET أو POST.

تكوين الرؤوس (Headers)
Anchor link toفي قسم HEADERS، قم بتعيين نوع المحتوى.
بشكل افتراضي، نوع المحتوى هو application/json. إذا كانت الخدمة التي ترسل إليها webhook تتطلب نوع محتوى آخر، فأدخل النوع المناسب في قيمة رأس Content-Type.
أمثلة على أنواع المحتوى هي:
x-www-form-urlencodedtext/plaintext/xml
أضف رؤوسًا إضافية إذا لزم الأمر بالنقر فوق + ADD HEADER. يمكنك إزالة أي رأس بالنقر فوق أيقونة ‘x’ بجواره.
على سبيل المثال، قد تتطلب بعض واجهات برمجة التطبيقات (APIs) مصادقة HTTP الأساسية (HTTP Basic authentication). لمصادقة مثل هذه الطلبات، قم بما يلي:
- افتح محرر نصوص عادي واكتب اسم المستخدم وكلمة المرور بدون مسافات، مفصولة بنقطتين رأسيتين. على سبيل المثال:
myuser:mypass - قم بترميز هذه السلسلة إلى Base64.
- انسخ سلسلة Base64 الناتجة (على سبيل المثال،
bXl1c2VyOm15cGFzcw==). - في إعدادات webhook، أضف رأس Authorization بالقيمة:
Basic <YOUR BASE64 STRING>. تأكد من وجود مسافة بعد كلمة “Basic”.

إضافة نص طلب JSON
Anchor link toفي قسم DATA، أدخل نص طلب JSON الخاص بك. تأكد من أن نص الطلب بتنسيق JSON صحيح.
مثال:
{ "hwid": "{{device:hwid}}"}استخدام البيانات الديناميكية ووحدات الماكرو
Anchor link toتتيح لك لوحة DATA BUILDER إدراج معلومات ديناميكية (مثل بيانات المستخدم أو الجهاز أو الوسم أو الحدث) مباشرة في نص طلب JSON الخاص بك. باستخدام البيانات الديناميكية، يمكنك تضمين قيم خاصة بالمستخدم الفردي الذي يتقدم عبر الرحلة.
للقيام بذلك:
- حدد فئة. يمكنك سحب البيانات من ثلاث فئات:
-
Device: استخدم بيانات الجهاز عندما تحتاج إلى معلومات فنية مرتبطة بجهاز المستخدم.
-
Tag: استخدم بيانات الوسم عندما تريد إرسال معلومات مخزنة في ملف تعريف المستخدم.
-
Event: استخدم بيانات الحدث عندما يجب أن يرسل webhook القيم من الحدث الذي أدى إلى تشغيل الرحلة.
- حدد معلمة (على سبيل المثال، HWID، الفئة المفضلة، إلخ).
- يقوم Pushwoosh بإنشاء ماكرو يبدو كالتالي:
{{tag:Language}}- انسخ الماكرو وألصقه في نص JSON الخاص بك في قسم DATA.
عندما يتم تشغيل webhook في رحلة حية، يقوم Pushwoosh تلقائيًا باستبدال الماكرو بالقيمة الفعلية لذلك المستخدم.

ربط بيانات استجابة Webhook بالمتغيرات
Anchor link toبالإضافة إلى إرسال البيانات، يمكن لعنصر Webhook أيضًا التقاط البيانات من الاستجابة التي يتلقاها وتحويلها إلى متغيرات. يمكن بعد ذلك استخدام هذه المتغيرات لاحقًا في الرحلة. على سبيل المثال، قم بتعيين وسم باستخدام تحديث ملف تعريف المستخدم، أو جدولة تأخير زمني (Time Delay) بناءً على قيمة تم إرجاعها بواسطة الخدمة الخارجية. للحصول على مثال كامل للرحلة، راجع استخدام بيانات استجابة webhook في رحلتك.
في قسم RESPONSE MAPPING، انقر فوق + ADD MAPPING واملأ حقلين لكل قيمة تريد التقاطها:
- Path: موقع القيمة داخل نص استجابة JSON
- Attribute: الاسم الذي تستخدمه للإشارة إلى هذه القيمة لاحقًا في الرحلة

على سبيل المثال، إذا استجاب نظام CRM الخاص بك بـ:
{ "data": { "user": { "id": "789xyz" } }}قم بتعيين Path إلى data.user.id و Attribute إلى crm_user_id لالتقاط هذا المعرف.
اختبار Webhook
Anchor link toانقر فوق Test webhook للتحقق من صحة تكوين webhook الخاص بك وأن الطلب قد تم إرساله بنجاح.
حفظ الإعدادات الخاصة بك
Anchor link toانقر فوق Apply لحفظ تكوين webhook الخاص بك.