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

كائن الرحلة (Journey)

تقوم جميع طرق دورة الحياة، والإنشاء والتحديث بإرجاع كائن رحلة بنفس الهيكل العام:

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

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

المعلومات (Info)

Anchor link to

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

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

معلمات الرحلة (JourneyParams)

Anchor link to

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

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

ساعات الصمت (SilentHours)

Anchor link to

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

الحقلالنوعالوصف
push_paramsSilentHoursParamsساعات الصمت لإشعارات الدفع (push notifications).
inapp_paramsSilentHoursParamsساعات الصمت للرسائل داخل التطبيق (in-app messages).
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 (تخط الرسالة، واستمر في الرحلة فورًا)، أو WaitAndDrop (انتظر حتى انتهاء الفترة، ثم استمر دون إرسال).

تحديد سقف الدخول (EntryCapping)

Anchor link to

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

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

نافذة التحويل (ConversionWindow)

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

النقطة (Point)

Anchor link to

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

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

مخرجات النقطة (PointOutput)

Anchor link to

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

الحقلالنوعالوصف
identity.keystringمفتاح الفرع. يجب أن يتبع قواعد مفاتيح المخرجات أدناه.
identity.orderintترتيب عرض الفرع.
info.titlestringتسمية فرع اختيارية.
info.next_point_uuidstringUUID للنقطة التالية التي يتصل بها هذا الفرع.

مفاتيح المخرجات (Output keys)

Anchor link to

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

نوع النقطةمفاتيح المخرجات المتوقعة
نقاط الدخول (START_BY_SEGMENT، START_BY_API، EVENTINAPP، 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 (تأخير)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)

الموضع (Position)

Anchor link to
الحقلالنوعالوصف
xfloatالإحداثي الأفقي على اللوحة.
yfloatالإحداثي الرأسي على اللوحة.

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

Anchor link to

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

point_typeمفتاح point_dataالغرض
POINT_TYPE_START_BY_SEGMENTstart_by_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 notification).
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تقسيم المستخدمين حسب شرط (شريحة، علامات، أو حدث).
POINT_TYPE_AB_SPLITTERab_splitterتقسيم المستخدمين إلى مجموعات A/B.
POINT_TYPE_FILTERfilterالسماح فقط للمستخدمين الذين يطابقون مرشحًا بالاستمرار.
POINT_TYPE_SET_TAGSset_tagsتحديث علامات المستخدم.
POINT_TYPE_WEBHOOKweb_hookإرسال طلب HTTP صادر.
POINT_TYPE_GOAL_EVENTgoal_eventتتبع هدف تحويل.
POINT_TYPE_AUDIENCE_SYNCaudience_syncمزامنة المستخدمين مع جمهور خارجي.
POINT_TYPE_EXITterminatorالخروج من الرحلة.

مثال على نقطة

Anchor link to

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

{
"uuid": "aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee",
"title": "Tag as engaged",
"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
الحقلالنوعالوصف
idstringUUID للتعليق.
messagestringنص التعليق.
positionPositionإحداثيات اللوحة.
indexintترتيب العرض.
created_atstringالطابع الزمني للإنشاء (ISO 8601).
deletedboolما إذا كان التعليق محذوفًا.

التعدادات (Enums)

Anchor link to

تعداد JourneyStatus

Anchor link to

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

تعداد CampaignType

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

تعداد PointType

Anchor link to

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

تعداد UserIDTrackChangePolicy

Anchor link to

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

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

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

Anchor link to