مرجع النقاط
تحمل كل نقطة كائن point_data بمفتاح متداخل واحد بالضبط، يطابق point_type للنقطة (انظر تخطيط المفتاح ← point-type). توثق هذه الصفحة الهيكل تحت كل مفتاح.
نقاط الدخول
Anchor link toتحتاج الرحلة إلى نقطة دخول واحدة على الأقل. جميع نقاط الدخول لها مخرج default واحد.
start_by_segment
Anchor link toتدخل المستخدمين الذين يطابقون segment. POINT_TYPE_START_BY_SEGMENT.
| الحقل | النوع | الوصف |
|---|---|---|
application_code | string | رمز التطبيق. |
filter_code | string | رمز الـ Segment/الفلتر الذي يحدد الجمهور. |
repeat | SegmentRepeat | جدول دخول متكرر اختياري (انظر SegmentRepeat). |
start_at | timestamp | لا تقم بالمعالجة قبل هذا الوقت (ISO 8601). |
is_deactivated | bool | ما إذا كانت نقطة الدخول هذه معطلة. |
message_bus (الدخول بالحدث)
Anchor link toتدخل المستخدمين عند إطلاقهم لحدث. POINT_TYPE_EVENT.
| الحقل | النوع | الوصف |
|---|---|---|
event_name | string | اسم الحدث للاستماع إليه. |
application_code | string | رمز التطبيق. |
event_conditions | PointEventCondition[] | الشروط التي تتم مطابقتها مع سمات الحدث. |
active_period | Period | النافذة الزمنية التي يكون فيها المشغل نشطًا. |
multi_entry | MultiEntry | كيف يمكن للمستخدم الدخول أكثر من مرة (انظر MultiEntry). |
attribute_entry | AttributeEntry | تسجيل معرفات المستخدم (User IDs) المحمولة في سمة حدث بدلاً من المستخدم الذي أطلق الحدث (انظر AttributeEntry). |
allow_reenter | bool | ما إذا كان يمكن للمستخدمين إعادة الدخول إلى الرحلة. |
AttributeEntry
Anchor link toتسجل معرفات المستخدم (User IDs) المحمولة في سمة حدث، بدلاً من المستخدم الذي أطلق الحدث. تعكس المستخدمون من سمة حدث في منشئ رحلة العميل.
| الحقل | النوع | الوصف |
|---|---|---|
enabled | bool | ما إذا كان سيتم تسجيل المستخدمين المذكورين في سمة حدث بدلاً من المستخدم الذي أطلق الحدث. |
attribute_name | string | اسم سمة الحدث التي تحتوي على معرف المستخدم (User ID) (أو قائمة بمعرفات المستخدم) لتسجيلها. |
start_by_api
Anchor link toنقطة دخول يتم تغذيتها بواسطة استدعاء Start by API. POINT_TYPE_START_BY_API.
| الحقل | النوع | الوصف |
|---|---|---|
application_code | string | رمز التطبيق. |
attributes | string[] | أسماء السمات المخصصة التي يمكن تمريرها في attribute_values لطلب Start by API. |
is_deactivated | bool | ما إذا كانت نقطة الدخول هذه معطلة. |
نقاط التوقيت
Anchor link todelay (انتظار)
Anchor link toيوقف كل مستخدم مؤقتًا لفترة زمنية ثابتة أو محسوبة. POINT_TYPE_WAIT. يحدد كائن point_data.delay مفتاح فترة زمنية واحدًا بالضبط من المفاتيح التالية:
| مفتاح الفترة الزمنية | النوع | الوصف |
|---|---|---|
sec | uint64 | انتظر عددًا ثابتًا من الثواني. |
exact_time | ExactTime | انتظر حتى وقت معين من اليوم (hour، minute). |
exact_date_time | ExactDateTime | انتظر حتى تاريخ ووقت مطلقين. |
exact_week_days_time | ExactWeekDaysTime | انتظر حتى أوقات محددة في أيام أسبوع محددة (خريطة اليوم 0=الاثنين … 6=الأحد ← ExactTime). |
dynamic_time | DynamicTime | انتظر بالنسبة لقيمة من tag أو حدث. |
يضيف dynamic_time مع split_branches: true فرع output1 (انظر مفاتيح المخرجات).
DynamicTime
Anchor link to| الحقل | النوع | الوصف |
|---|---|---|
from | enum DynamicTimeFrom | ما إذا كان الوقت الأساسي يأتي من tag أو حدث. |
direction | enum DynamicTimeDirection | الإزاحة قبل أو بعد الوقت الأساسي. |
duration | uint64 | حجم الإزاحة. |
unit | enum DynamicTimeUnit | وحدة duration (دقائق، ساعات، أيام، …). |
split_branches | bool | قسم المستخدمين إلى فروع منفصلة عندما تختلف أوقاتهم المحسوبة. |
tag_name | string | الـ Tag الذي يحمل الوقت الأساسي (عندما يكون from هو tag). |
event_name / event_attribute / point_id | string | مصدر الحدث للوقت الأساسي (عندما يكون from هو حدث). |
wait_event
Anchor link toينتظر حتى يقوم المستخدمون بإطلاق حدث (أو انتهاء المهلة). POINT_TYPE_WAIT_EVENT. المخرج default هو المسار غير المُطلق. المسار المُطلق هو output1 أو، مع script، فرع واحد لكل شرط.
| الحقل | النوع | الوصف |
|---|---|---|
events | PointWaitEventInfo[] | الأحداث التي يجب انتظارها. |
conditions_script | string | Script اختياري لمنطق الأحداث المتعددة المعقد. تصبح أسماء الشروط التي تم تحليلها هي مفاتيح المخرجات. |
multi_entry | MultiEntry | سلوك إعادة الدخول. |
نقاط التقسيم والفلترة
Anchor link toboolean_splitter
Anchor link toيوجه المستخدمين إلى فروع بناءً على شرط. POINT_TYPE_BOOLEAN_SPLITTER.
| الحقل | النوع | الوصف |
|---|---|---|
split_strategy | enum | SPLIT_FILTER (حسب الـ segment)، SPLIT_TAGS (حسب شروط الـ tag)، أو SPLIT_EVENTS (حسب شروط الحدث). |
load_policy | enum | ALL (قد يتطابق أي من أجهزة المستخدم) أو FILTER (الجهاز الحالي فقط). |
filter_code | string | رمز الـ Segment، عندما يكون split_strategy هو SPLIT_FILTER. |
filter_expressions | FilterExpression[] | شروط الـ Tag، عندما يكون split_strategy هو SPLIT_TAGS: فرع output إضافي واحد لكل تعبير. |
event | BooleanSplitterEventInfo | شروط الحدث، عندما يكون split_strategy هو SPLIT_EVENTS: فرع output إضافي واحد لكل شرط. |
ab_splitter
Anchor link toيقسم المستخدمين عشوائيًا إلى متغيرات مرجحة. POINT_TYPE_AB_SPLITTER. مفاتيح المخرجات هي output0، output1، … (واحد لكل إدخال في split، مفهرس من 0. لا يوجد default).
| الحقل | النوع | الوصف |
|---|---|---|
split | uint32[] | النسبة المئوية لكل فرع. يجب أن يكون المجموع 100. الفهرس i يرتبط بمفتاح المخرج output{i}. |
auto_select_winner | bool | ما إذا كان سيتم اختيار فرع فائز تلقائيًا. |
winner_strategy | enum | ANY_GOAL أو SPECIFIC_GOAL. |
goal_uuid | string | الهدف المستخدم لتحديد الفائز (مع SPECIFIC_GOAL). |
winner_split | uint32 | رقم الفرع الفائز (يبدأ من 1، 0 = لا يوجد فائز بعد). |
filter
Anchor link toيسمح فقط للمستخدمين المطابقين بالاستمرار (default)، ويوجه الباقي إلى output1. POINT_TYPE_FILTER.
| الحقل | النوع | الوصف |
|---|---|---|
filter | enum Filter | فحص محدد مسبقًا: EMAIL_EXISTS، PUSH_TOKEN_EXISTS، SMS_TOKEN_EXISTS، WHATSAPP_TOKEN_EXISTS، LINE_TOKEN_EXISTS، أو CUSTOM. |
filter_raw | string | تعبير فلتر مخصص، عندما يكون filter هو CUSTOM. |
نقاط الإجراء
Anchor link toset_tags
Anchor link toتحديث الـ tags على المستخدم. POINT_TYPE_SET_TAGS.
| الحقل | النوع | الوصف |
|---|---|---|
application_code | string | رمز التطبيق. |
tags | Tag[] | الـ Tags التي سيتم كتابتها. |
| الحقل | النوع | الوصف |
|---|---|---|
name | string | اسم الـ Tag. |
type | enum TagType | نوع البيانات والعملية: TYPE_STRING، TYPE_INTEGER، TYPE_DATE، TYPE_BOOLEAN، TYPE_LIST، TYPE_LIST_APPEND، TYPE_LIST_REMOVE، TYPE_DYNAMIC، … |
| value | oneof | مفتاح قيمة واحد بالضبط يطابق type: str، int، bool، date، price، version، timezone، list، أو dynamic. |
web_hook
Anchor link toيرسل طلب HTTP صادر. POINT_TYPE_WEBHOOK. مخرج default واحد.
| الحقل | النوع | الوصف |
|---|---|---|
method | string | طريقة HTTP (GET، POST، PUT، …). |
url | string | عنوان URL المستهدف. |
request_template | string | قالب نص الطلب. يدعم قوالب Liquid. |
headers | map<string, string> | ترويسات HTTP. |
disabled | bool | للقراءة فقط. true عندما يقوم Pushwoosh بتعطيل الـ webhook تلقائيًا بعد أخطاء متكررة. |
reactivate | bool | للكتابة فقط. اضبط القيمة على true لإعادة تمكين webhook معطل. |
audience_sync
Anchor link toيضيف أو يزيل المستخدم من Meta Custom Audience. POINT_TYPE_AUDIENCE_SYNC.
| الحقل | النوع | الوصف |
|---|---|---|
ad_account_id | string | معرف حساب إعلانات Meta. |
ad_account_name | string | اسم العرض لـ ad_account_id، لواجهة المستخدم فقط. |
audience_id | string | معرف Meta Custom Audience. |
audience_name | string | اسم العرض لـ audience_id، لواجهة المستخدم فقط. |
action | enum AudienceSyncAction | AUDIENCE_SYNC_ACTION_ADD أو AUDIENCE_SYNC_ACTION_REMOVE. |
نقاط التحويل
Anchor link togoal_event
Anchor link toيتتبع هدف تحويل. POINT_TYPE_GOAL_EVENT. ليس له مخرجات.
| الحقل | النوع | الوصف |
|---|---|---|
event_name | string | اسم حدث الهدف. |
application_code | string | رمز التطبيق. |
event_conditions | PointEventCondition[] | الشروط التي تتم مطابقتها مع سمات حدث الهدف. |
is_throw_out | bool | ما إذا كان سيتم إزالة المستخدم من الرحلة بمجرد الوصول إلى الهدف. |
is_cancel_event | bool | ما إذا كان هذا هدفًا سلبيًا (إلغاء). |
نقاط الخروج
Anchor link toterminator
Anchor link toينهي الرحلة للمستخدم. POINT_TYPE_EXIT. كائن فارغ ({}) ولا توجد مخرجات.
{ "point_type": "POINT_TYPE_EXIT", "point_data": { "terminator": {} }, "outputs": [] }نقطة الإنهاء اختيارية. ترك info.next_point_uuid للمخرج غير معين ينهي الرحلة للمستخدم بنفس طريقة الإنهاء الصريح - يتم حساب كلتا الحالتين بنفس الطريقة، كـ خروج، وليس كأخطاء.
نقاط المراسلة
Anchor link toترسل جميع نقاط المراسلة عبر قناة وتشارك غلافًا مشتركًا. لكل منها مخرج default واحد ما لم يتم تمكين مقسم (انظر مفاتيح المخرجات).
الحقول المشتركة:
| الحقل | النوع | الوصف |
|---|---|---|
application_code | string | رمز التطبيق. |
preset_code | string | Preset (قالب) للإرسال. يستخدم inapp richmedia_code بدلاً من ذلك. |
content / title | string | محتوى الرسالة المضمن، عند عدم استخدام preset (يعتمد على القناة). |
campaign_code | string | رمز الحملة للتتبع. يتم إنشاؤه تلقائيًا إذا تم حذفه. |
split_params | BehaviorSplitter | اختياري: انتظر تفاعلًا وتفرع بناءً عليه. |
message_type | enum | نوع الرسالة تسويقية مقابل معاملات (يتحكم في معالجة مجموعة التحكم). لا يستخدمه send_email، الذي لديه زوج email_type/email_category الخاص به أدناه. |
أنواع النقاط وحقولها الإضافية البارزة:
| نوع النقطة | مفتاح point_data | ملاحظات |
|---|---|---|
POINT_TYPE_SEND_PUSH | send_push | يمكن لـ split_params (السلوك) بالإضافة إلى مقسم التسليم إنتاج ما يصل إلى ثلاثة مخرجات. send_by_user_id، wait_optimal_time. |
POINT_TYPE_SEND_EMAIL | send_email | liquid_template_params، personalise، email_type، email_category (انظر أدناه). انظر Email API. |
POINT_TYPE_SEND_SMS | send_sms | انظر SMS. |
POINT_TYPE_SEND_WHATSAPP | send_whatsapp | personalise (انظر أدناه). يضيف preset الرد السريع مخرجًا واحدًا لكل رد (المفتاح = قيمة الرد). انظر WhatsApp. |
POINT_TYPE_SEND_TELEGRAM | send_telegram | قناة Telegram. |
POINT_TYPE_SEND_KAKAO | send_kakao | انظر Kakao. |
POINT_TYPE_SEND_LINE | send_line | انظر LINE API. |
POINT_TYPE_SEND_DATA | send_data | رسالة بيانات صامتة (بدون واجهة مستخدم). |
POINT_TYPE_INAPP | inapp | يستخدم richmedia_code، expire_in_days، capping. |
الأنواع المشتركة
Anchor link toSegmentRepeat
Anchor link to| الحقل | النوع | الوصف |
|---|---|---|
enabled | bool | ما إذا كان الدخول المتكرر قيد التشغيل. |
frequency | string | daily، weekly، monthly، أو dates. |
every | uint32 | كرر كل N فترة. |
dates | string[] | تواريخ محددة، عندما يكون frequency هو dates. |
time | SegmentRepeatTime | تكوين وقت اليوم. |
كائنات الوقت
Anchor link toExactTime:{ "hour": 0–23, "minute": 0–59 }.ExactDateTime:{ "year", "month": 1–12, "day": 1–31, "hour": 0–23, "minute": 0–59 }.
BehaviorSplitter
Anchor link to| الحقل | النوع | الوصف |
|---|---|---|
enabled | bool | ما إذا كان يجب انتظار تفاعل والتفرع بناءً عليه. |
interval | uint64 | الثواني التي يجب انتظارها للتفاعل. |
MultiEntry
Anchor link toيتحكم في عدد الجلسات النشطة التي يمكن للمستخدم أن يمتلكها في الرحلة في نفس الوقت. يعكس التحكم في عدد الجلسات التي يمكن للمستخدم أن يمتلكها في نفس الوقت في منشئ رحلة العميل. يستخدمه نقطة الدخول بالحدث و wait_event.
| الحقل | النوع | الوصف |
|---|---|---|
enabled | bool | ما إذا كان يمكن للمستخدم أن يمتلك جلسات نشطة متعددة في نفس الوقت. false: جلسة نشطة واحدة لكل مستخدم. true: جلسات نشطة متعددة لكل مستخدم. |
attribute_name | string | اختياري. سمة حدث تحدد نطاق كل جلسة. عند التعيين، يمكن للمستخدم أن يمتلك جلسة نشطة واحدة لكل قيمة مميزة لهذه السمة (على سبيل المثال، واحدة لكل order_id). تشترك الأحداث التي لها نفس القيمة في جلسة واحدة. اتركه فارغًا لتحديد نطاق جميع إدخالات المستخدم معًا. |