انتقل إلى المحتوى

استخدام بيانات استجابة webhook في رحلتك

نظرة عامة

Anchor link to

عندما تقوم بـ ربط القيم من استجابة webhook، يقوم Pushwoosh بتخزينها كمتغيرات يمكنك استخدامها لاحقًا في الرحلة في عناصر Update user profile و Time Delay وتخصيص المحتوى، بنفس الطريقة التي تستخدم بها سمة حدث (Event attribute). الاستثناء الوحيد هو Condition split: لا يمكنه التفرع بناءً على متغير webhook مباشرة، لأنه يحتاج إلى قيمة بنوع معلن (Tag أو سمة حدث)، وقيمة webhook المربوطة ليس لها نوع. انظر مقارنة قيمة webhook في Condition split أدناه.

حفظ قيمة webhook كـ Tag باستخدام تحديث ملف تعريف المستخدم

Anchor link to

يمكن لـ Webhook إرجاع بيانات من نظام خارجي، مثل معرّف مستخدم CRM أو حالة الاشتراك، التي لا يخزنها Pushwoosh في ملف تعريف المستخدم بعد. يقوم Update user profile بحفظ القيم المربوطة كـ Tags حتى تتمكن من استخدامها في الشرائح (segments)، والمحتوى الديناميكي (dynamic content)، وخطوات الرحلة اللاحقة.

مثال: حفظ معرّف مستخدم CRM كـ Tag

Anchor link to

يقوم مستخدم جديد بالتسجيل في تطبيقك، وتقوم الرحلة بإنشاء سجل مطابق في نظام CRM الخاص بك. يتيح لك حفظ معرّف مستخدم CRM المُرجع كـ Tag الرجوع إلى نفس سجل CRM أو تحديثه لاحقًا، على سبيل المثال من رحلة أخرى أو استدعاء Webhook متابع، بدلاً من إنشاء سجل مكرر في كل مرة يعود فيها المستخدم للدخول إلى الرحلة.

تدفق الرحلة: Trigger-based Entry → Webhook → Update user profile → إنهاء الفرع

  1. أنشئ رحلة باستخدام Trigger-based Entry على حدث SignUp.
  2. أضف عنصر Webhook بعد خطوة الدخول. قم بتسميته (على سبيل المثال، Create user in CRM) وعيّن عنوان URL للطلب إلى نقطة نهاية إنشاء المستخدم في CRM الخاص بك.
  3. في Response mapping، عيّن Path إلى حقل المعرّف في الاستجابة (على سبيل المثال، data.user.id) و Attribute إلى crm_user_id.
ربط استجابة Webhook مع المسار data.user.id والسمة crm_user_id
  1. أضف عنصر Update user profile بعد خطوة Webhook.

  2. في Dynamic Tag Value، انقر على + Dynamic Value. في Tag، حدد الـ Tag الذي يخزن معرّف CRM (أنشئه مسبقًا إذا لزم الأمر). في Event، حدد خطوة webhook بالاسم الذي أعطيته لها (Create user in CRM). في Dynamic Value، حدد crm_user_id.

قيمة Tag الديناميكية مع Tag لمعرّف CRM، وخطوة Webhook للحدث، والقيمة الديناميكية crm_user_id
  1. أنهِ الفرع — أضف عنصر Exit أو اتركه بدون اتصال صادر.
فرع الرحلة ينتهي بخروج بعد خطوة تحديث ملف تعريف المستخدم

جدولة تأخير من قيمة webhook باستخدام التأخير الزمني

Anchor link to

غالبًا ما تكون تواريخ الزيارة، ومواعيد التجديد، وفترات التسليم موجودة في نظام حجز أو فوترة خارجي. بعد أن يقوم Webhook بربط التاريخ من استجابة API، يمكن لـ Time Delay إيقاف الرحلة مؤقتًا حتى تلك اللحظة، على سبيل المثال قبل يومين من الموعد، حتى يتم إرسال الرسالة التالية في الوقت المحدد.

مثال: جدولة تذكير من تاريخ في الاستجابة

Anchor link to

يقوم مستخدم بحجز موعد في تطبيقك. تقوم الرحلة بجلب تاريخ الزيارة من نظام الحجز الخاص بك وترسل تذكيرًا عبر إشعار فوري قبل يومين من الزيارة.

  1. أنشئ رحلة باستخدام Trigger-based Entry على حدث AppointmentBooked.
  2. أضف عنصر Webhook بعد خطوة الدخول. قم بتسميته (على سبيل المثال، Get appointment details) وعيّن عنوان URL للطلب إلى واجهة برمجة تطبيقات نظام الحجز الخاص بك.
  3. في Response mapping، عيّن Path إلى حقل التاريخ في الاستجابة (على سبيل المثال، appointment.date) و Attribute إلى visit_date.
خطوة Webhook مع ربط الاستجابة لـ appointment.date إلى visit_date
  1. أضف عنصر Time Delay بعد خطوة Webhook. حدد Based on user/event data، وعيّن Get date from إلى Event، وعيّن Event إلى خطوة webhook بالاسم الذي أعطيته لها (Get appointment details)، وعيّن Event value إلى visit_date، وعيّن التأخير إلى Before 2 Days.
تأخير زمني مُكوّن من webhook visit_date مع إزاحة قبل يومين
  1. إذا كان بإمكان المستخدمين الحجز قبل أقل من يومين من الزيارة، فقم بتمكين Split to branches if the date’s in the past or date is empty على عنصر Time Delay. يؤدي هذا إلى إنشاء فرعين، In the past و In the future. انظر تقسيم الفروع عندما يكون التاريخ في الماضي أو فارغًا.
  2. أضف خطوة Push مع رسالة التذكير الخاصة بك. إذا تم تمكين التقسيم، أضف هذا الـ Push في كلا الفرعين: In the past (إرسال فوري) و In the future (بعد Time Delay).
  3. أنهِ كل فرع — أضف عنصر Exit أو اتركه بدون اتصال صادر.
تأخير زمني مقسم إلى فرعين في الماضي وفي المستقبل، كل منهما يحتوي على خطوات Push وخروج

مقارنة قيمة webhook في تقسيم الشرط

Anchor link to

يتفرع Condition split بناءً على شريحة (Segment) أو Tag أو سمة حدث (Event attribute) بنوع معلن. القيمة المربوطة من استجابة webhook ليس لها نوع، لذلك لا تظهر في القوائم المنسدلة لـ Condition split ولا يمكن مقارنتها مباشرة.

للتفرع بناءً على قيمة webhook، احفظها أولاً كـ Tag من النوع المطابق باستخدام Update user profile، ثم قارن ذلك الـ Tag في Condition split.

مثال: التفرع بناءً على رصيد webhook مقابل مبلغ الحدث المُشغِّل

Anchor link to

يطلب مستخدم عملية شراء، وتتحقق الرحلة مما إذا كان رصيده في CRM يغطي السعر من الحدث المُشغِّل قبل المتابعة.

تدفق الرحلة: Trigger-based Entry → Webhook → Update user profile → Condition split

  1. أنشئ رحلة باستخدام Trigger-based Entry على حدث PurchaseRequested، مع سمة رقمية required_amount.
  2. أضف عنصر Webhook بعد خطوة الدخول. في Response mapping، عيّن Path إلى حقل الرصيد في الاستجابة (على سبيل المثال، current_balance) و Attribute إلى current_balance.
  3. أضف عنصر Update user profile بعد خطوة Webhook. في Dynamic Tag Value، عيّن Tag إلى Tag رقمي من نوع Integer أو Price (أنشئه مسبقًا إذا لزم الأمر، على سبيل المثال Current_balance)، و Event إلى خطوة webhook، و Dynamic Value إلى current_balance.
  4. أضف عنصر Condition split بعد Update user profile. عيّن الشرط إلى Tag Current_balance، والمشغل greater or equals، وبالنسبة للقيمة حدد Event attribute → حدث الدخول → required_amount بدلاً من ثابت.
  5. قم بتوصيل كل فرع بالخطوات التالية.

أشياء يجب أخذها في الاعتبار

Anchor link to
  • صيغة المسار (Path syntax): استخدم مسارًا مفصولاً بنقاط (على سبيل المثال، data.user.id)، أو مقطع * لربط كل عنصر في مصفوفة. المرشحات غير مدعومة. انظر ربط كل عنصر في مصفوفة لمزيد من التفاصيل.
  • حجم الاستجابة: لا تتم معالجة الاستجابات التي يزيد حجمها عن 64 كيلوبايت للربط.
  • Condition split: قيمة webhook المربوطة ليس لها نوع ولا يمكن استخدامها مباشرة. احفظها كـ Tag أولاً. انظر مقارنة قيمة webhook في Condition split.
  • الاختبار: قم بتشغيل Test webhook في عنصر Webhook قبل استخدام القيم المربوطة في رحلة حية. تأكد من نجاح الطلب، ثم تحقق من نص الاستجابة مقابل كل Path في علامة تبويب Calls log. إذا بدت قيمة ما خاطئة لمسافر معين بمجرد أن تكون الرحلة حية، تحقق من صف ذلك المسافر في Calls log.
  • القوائم في الاستجابة: استخدم * في Path لربط كل عنصر. اختر item_{n} لسمات منفصلة أو اسمًا بدون {n} لسلسلة نصية واحدة مفصولة بفواصل. تبدأ فهارس Path من 0. تبدأ أسماء {n} من 1. يتم ربط أول 50 عنصرًا على الأكثر. انظر ربط كل عنصر في مصفوفة.