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

كائن Journey

تقوم جميع دوال دورة الحياة (lifecycle) والإنشاء والتحديث (create, and update) بإرجاع كائن journey بنفس الهيكل العام:

الشكل
{
"info": { ... }, // بيانات وصفية للقراءة فقط (في الاستجابات فقط)
"params": { ... }, // إعدادات على مستوى الـ journey (إنشاء / تحديث)
"points": [ ... ], // عُقد اللوحة واتصالاتها
"comments": [ ... ] // تعليقات اللوحة
}

عندما تقوم بـ إنشاء أو تحديث journey، فإنك ترسل title و params و points و comments. تُرجع الاستجابات info (التي تحتوي على params) بالإضافة إلى points و comments.

بيانات وصفية للـ journey للقراءة فقط. يتم إرجاعها بواسطة كل دوال v3. ليست جزءًا من جسم الطلب.

الحقلالنوعالوصف
uuidstringمعرف Journey.
titlestringاسم الـ Journey.
statusJourneyStatusالحالة الحالية.
created_atstringالطابع الزمني للإنشاء (ISO 8601).
updated_atstringالطابع الزمني لآخر تحديث (ISO 8601).
is_first_activatedboolما إذا كانت الـ journey قد بدأت مرة واحدة على الأقل.
paramsJourneyParamsإعدادات على مستوى الـ Journey.
category_uuidstringمعرف UUID للفئة، أو فارغ إذا لم تكن مصنفة.
pointCountsmap<string, uint32>عدد النقاط حسب النوع.
campaign_typeCampaignTypeكيفية دخول المستخدمين إلى الـ journey.
stop_reasonstringسبب توقف الـ journey، إن وجد.
last_edited_byUserالمستخدم الذي قام بآخر تعديل على الـ journey.
dynamic_entryboolما إذا كان الدخول الديناميكي ممكّنًا.

JourneyParams

Anchor link to

إعدادات على مستوى الـ Journey. يتم إرسالها عند الإنشاء/التحديث وتُرجع داخل info.params.

الحقلالنوعالوصف
application_codestringرمز التطبيق الذي تنتمي إليه الـ journey. مطلوب عند الإنشاء.
silent_hoursSilentHoursالساعات التي يتم خلالها حظر الرسائل، لكل قناة.
cappingEntryCappingقيود على عدد المرات التي يمكن للمستخدم فيها إعادة الدخول إلى الـ journey.
conversion_windowConversionWindowنافذة زمنية لإسناد تحويلات الأهداف.
user_id_track_change_policyUserIDTrackChangePolicyكيفية التعامل مع تغيير معرف المستخدم في منتصف الـ journey.

SilentHours

Anchor link to

يمنع الإرسال خلال ساعات الصمت. يتم تكوينه لكل قناة: تأخذ كل قناة SilentHoursParams الخاصة بها:

الحقلالنوعالوصف
push_paramsSilentHoursParamsساعات الصمت لإشعارات الدفع (push).
inapp_paramsSilentHoursParamsساعات الصمت للرسائل داخل التطبيق.
email_paramsSilentHoursParamsساعات الصمت للبريد الإلكتروني.
sms_paramsSilentHoursParamsساعات الصمت للرسائل القصيرة (SMS).
whatsapp_paramsSilentHoursParamsساعات الصمت لتطبيق WhatsApp.
line_paramsSilentHoursParamsساعات الصمت لتطبيق LINE.

كل SilentHoursParams هي:

الحقلالنوعالوصف
enabledboolما إذا كانت ساعات الصمت تنطبق على هذه القناة.
from_timeTimeبداية النافذة الصامتة: { "hour": 0–23, "minute": 0–59 }.
to_timeTimeنهاية النافذة الصامتة.
week_daysbool[]سبعة قيم منطقية للأيام التي تنطبق عليها النافذة (الاثنين = الفهرس 0).
behaviorenumما يجب فعله عندما تقع رسالة داخل ساعات الصمت: WaitAndSend (انتظر، ثم أرسل عند انتهاء النافذة)، DropAndGo (تخط الرسالة، واستمر في الـ journey فورًا)، أو WaitAndDrop (انتظر انتهاء النافذة، ثم استمر دون إرسال).

EntryCapping

Anchor link to

يحد من عدد المرات التي يمكن لنفس المستخدم الدخول فيها إلى الـ journey.

الحقلالنوعالوصف
is_enabledboolما إذا كان تحديد الدخول مفعلاً.
perioduint64الحد الأدنى لعدد الثواني بين كل دخول للمستخدم.

ConversionWindow

Anchor link to
الحقلالنوعالوصف
secondsuint64المدة الزمنية بعد دخول الـ journey التي لا يزال فيها إكمال الهدف من قبل المستخدم يُحتسب كتحويل.

النقطة (Point) هي عقدة على لوحة الـ journey: نقطة دخول، رسالة، تأخير، مقسم، وهكذا.

الحقلالنوعالوصف
uuidstringمعرف فريد للنقطة داخل الـ journey. يجب أن يكون معرف UUID أساسيًا حسب RFC 4122: 32 رقمًا سداسيًا عشريًا في مجموعات 8-4-4-4-12.
titlestringاسم العرض للنقطة.
point_typePointTypeنوع العقدة.
outputsarray of PointOutputالاتصالات بالنقاط التالية.
positionPositionإحداثيات اللوحة.
point_dataobjectمفتاح متداخل واحد بالضبط، يطابق point_type (انظر جدول أنواع النقاط).

PointOutput

Anchor link to

مخرجات النقطة هي فروعها الصادرة. مفاتيحها ليست حرة الشكل. يتوقع المدقق مجموعة دقيقة من المفاتيح لكل نوع نقطة، ويرفض أي journey تحتوي نقطتها على عدد خاطئ من المخرجات أو مفتاح لا يتعرف عليه.

الحقلالنوعالوصف
identity.keystringمفتاح الفرع. يجب أن يتبع قواعد مفاتيح المخرجات أدناه.
identity.orderintترتيب عرض الفرع.
info.titlestringتسمية فرع اختيارية.
info.next_point_uuidstringمعرف UUID للنقطة التالية التي يتصل بها هذا الفرع. اختياري — تركه فارغًا ينهي الـ journey للمستخدم، بنفس طريقة نقطة الإنهاء (terminator) الصريحة.

مفاتيح المخرجات

Anchor link to

الفرع الافتراضي (الأول) يسمى دائمًا "default". الفروع الإضافية تسمى "output1"، "output2"، … (البادئة output متبوعة بفهرس يبدأ من 1). نوعان من النقاط يكسران هذه القاعدة، كما هو موضح أدناه.

نوع النقطةمفاتيح المخرجات المتوقعة
نقاط الدخول (START_BY_SEGMENT, START_BY_API, EVENT), INAPP, SET_TAGS, WEBHOOK, AUDIENCE_SYNC, ونقاط الرسائل بدون مقسم (SEND_PUSH, SEND_EMAIL, SEND_SMS, SEND_WHATSAPP, SEND_LINE, SEND_KAKAO, SEND_TELEGRAM, SEND_DATA)default
GOAL_EVENT, EXITلا شيء (لا توجد مخرجات)
FILTERdefault, output1
BOOLEAN_SPLITTERdefault، ثم output1outputN (فرع إضافي واحد لكل شرط. التقسيم البسيط بنعم/لا هو default + output1)
WAIT (delay)default. التأخير الديناميكي مع تقسيم الفروع يضيف output1
WAIT_EVENTdefault هو فرع عدم تشغيل الحدث. output1 (أو، مع نص شروط، فرع واحد لكل شرط) هو المسار الذي تم تشغيله
SEND_PUSH مع مقسمdefault, output1output2 عندما يكون كل من مقسم الرسالة والتسليم مفعلين)
SEND_EMAIL / SEND_SMS / SEND_LINE / SEND_WHATSAPP مع مقسمdefault, output1
SEND_WHATSAPP مع إعداد مسبق للرد السريعdefault، بالإضافة إلى فرع واحد لكل رد سريع. المفتاح هو قيمة الرد السريع نفسها
AB_SPLITTERoutput0, output1, output2, … (واحد لكل متغير. لا يوجد فرع default)
الحقلالنوعالوصف
xfloatالإحداثي الأفقي على اللوحة.
yfloatالإحداثي العمودي على اللوحة.

أنواع النقاط و point_data

Anchor link to

point_data هو واحد من: يحمل كائنًا متداخلاً واحدًا بالضبط يتم تحديد مفتاحه بواسطة point_type للنقطة.

point_typeمفتاح point_dataالغرض
POINT_TYPE_START_BY_SEGMENTstart_by_segmentدخول: المستخدمون المطابقون لـ segment.
POINT_TYPE_EVENTmessage_busدخول: المستخدمون الذين يطلقون حدثًا.
POINT_TYPE_START_BY_APIstart_by_apiدخول: المستخدمون الذين يتم إدخالهم عبر استدعاء Start by API.
POINT_TYPE_WAITdelayانتظر لفترة ثابتة أو ديناميكية.
POINT_TYPE_WAIT_EVENTwait_eventانتظر حتى يقع حدث.
POINT_TYPE_SEND_PUSHsend_pushإرسال إشعار دفع (push).
POINT_TYPE_SEND_EMAILsend_emailإرسال بريد إلكتروني.
POINT_TYPE_SEND_SMSsend_smsإرسال رسالة SMS.
POINT_TYPE_SEND_WHATSAPPsend_whatsappإرسال رسالة WhatsApp.
POINT_TYPE_SEND_TELEGRAMsend_telegramإرسال رسالة Telegram.
POINT_TYPE_SEND_KAKAOsend_kakaoإرسال رسالة Kakao.
POINT_TYPE_SEND_LINEsend_lineإرسال رسالة LINE.
POINT_TYPE_SEND_DATAsend_dataإرسال رسالة بيانات صامتة.
POINT_TYPE_INAPPinappعرض رسالة داخل التطبيق.
POINT_TYPE_BOOLEAN_SPLITTERboolean_splitterتقسيم المستخدمين حسب شرط (segment، tags، أو event).
POINT_TYPE_AB_SPLITTERab_splitterتقسيم المستخدمين إلى مجموعات A/B.
POINT_TYPE_FILTERfilterالسماح فقط للمستخدمين المطابقين لمرشح بالاستمرار.
POINT_TYPE_SET_TAGSset_tagsتحديث tags المستخدم.
POINT_TYPE_WEBHOOKweb_hookإرسال طلب HTTP صادر.
POINT_TYPE_GOAL_EVENTgoal_eventتتبع هدف تحويل.
POINT_TYPE_AUDIENCE_SYNCaudience_syncمزامنة المستخدمين مع جمهور خارجي.
POINT_TYPE_EXITterminatorالخروج من الـ journey.

مثال على نقطة

Anchor link to

نقطة “تعيين tags” مع اتصال تالٍ واحد:

{
"uuid": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"title": "وضع علامة كمتفاعل",
"point_type": "POINT_TYPE_SET_TAGS",
"position": { "x": 480, "y": 120 },
"outputs": [
{
"identity": { "key": "default", "order": 0 },
"info": { "title": "", "next_point_uuid": "ffffffff-1111-2222-3333-444444444444" }
}
],
"point_data": {
"set_tags": {
"application_code": "XXXXX-XXXXX",
"tags": [ { "name": "engaged", "value": "true" } ]
}
}
}

JourneyComment

Anchor link to
الحقلالنوعالوصف
idstringمعرف UUID للتعليق.
messagestringنص التعليق.
positionPositionإحداثيات اللوحة.
indexintترتيب العرض.
created_atstringالطابع الزمني للإنشاء (ISO 8601).
deletedboolما إذا كان التعليق محذوفًا.

JourneyStatus enum

Anchor link to

STATUS_DRAFT, STATUS_RUNNING, STATUS_FINISHED, STATUS_ARCHIVED, STATUS_PAUSED, STATUS_UNKNOWN.

CampaignType enum

Anchor link to
  • TriggerBased: يدخل المستخدمون عند وقوع حدث.
  • AudienceBased: يدخل المستخدمون من segment.
  • APIBased: يدخل المستخدمون عبر استدعاء Start by API.
  • Mixed: أكثر من نوع دخول واحد.
  • Unknown: لم يتم تحديد نوع الدخول.

PointType enum

Anchor link to

انظر جدول أنواع النقاط أعلاه للحصول على القائمة الكاملة ومفتاح point_data الذي يقابله كل نوع.

UserIDTrackChangePolicy enum

Anchor link to

يتحكم فيما يحدث للمستخدم الذي يكون في منتصف الـ journey عندما يتغير معرف المستخدم (User ID) الخاص به:

  • DEFAULT: السلوك الافتراضي.
  • TRACK: استمر في تتبع المستخدم تحت المعرف الجديد.
  • DROP: إزالة المستخدم من الـ journey عند تغيير معرفه.

مواضيع ذات صلة

Anchor link to