পয়েন্ট রেফারেন্স
প্রতিটি পয়েন্ট একটি point_data অবজেক্ট বহন করে যার মধ্যে ঠিক একটি নেস্টেড কী থাকে, যা পয়েন্টের point_type-এর সাথে মেলে (দেখুন পয়েন্ট-টাইপ → কী ম্যাপিং)। এই পৃষ্ঠাটি প্রতিটি কী-এর অধীনে থাকা স্ট্রাকচারটি নথিভুক্ত করে।
এন্ট্রি পয়েন্ট
Anchor link toএকটি Journey-তে কমপক্ষে একটি এন্ট্রি পয়েন্ট প্রয়োজন। সমস্ত এন্ট্রি পয়েন্টের একটি একক default আউটপুট থাকে।
start_by_segment
Anchor link toযে ব্যবহারকারীরা একটি সেগমেন্টের সাথে মেলে তাদের প্রবেশ করায়। POINT_TYPE_START_BY_SEGMENT।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
application_code | string | অ্যাপ্লিকেশন কোড। |
filter_code | string | সেগমেন্ট/ফিল্টার কোড যা অডিয়েন্সকে সংজ্ঞায়িত করে। |
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 | ইভেন্ট ট্রিগারকারী ব্যবহারকারীর পরিবর্তে একটি ইভেন্ট অ্যাট্রিবিউটে থাকা ইউজার আইডিগুলি নথিভুক্ত করুন (দেখুন AttributeEntry)। |
allow_reenter | bool | ব্যবহারকারীরা Journey-তে পুনরায় প্রবেশ করতে পারবে কিনা। |
AttributeEntry
Anchor link toইভেন্ট ট্রিগারকারী ব্যবহারকারীর পরিবর্তে, একটি ইভেন্ট অ্যাট্রিবিউটে থাকা ইউজার আইডিগুলি নথিভুক্ত করে। Customer Journey বিল্ডারে একটি ইভেন্ট অ্যাট্রিবিউট থেকে ব্যবহারকারী-এর প্রতিফলন করে।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
enabled | bool | ইভেন্ট ট্রিগারকারী ব্যবহারকারীর পরিবর্তে একটি ইভেন্ট অ্যাট্রিবিউটে নাম থাকা ব্যবহারকারীদের নথিভুক্ত করতে হবে কিনা। |
attribute_name | string | ইভেন্ট অ্যাট্রিবিউটের নাম যা নথিভুক্ত করার জন্য ইউজার আইডি (বা ইউজার আইডিগুলির তালিকা) ধারণ করে। |
start_by_api
Anchor link toStart by API কল দ্বারা চালিত এন্ট্রি পয়েন্ট। POINT_TYPE_START_BY_API।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
application_code | string | অ্যাপ্লিকেশন কোড। |
attributes | string[] | কাস্টম অ্যাট্রিবিউটগুলির নাম যা একটি Start by API অনুরোধের attribute_values-এ পাস করা যেতে পারে। |
is_deactivated | bool | এই এন্ট্রি পয়েন্টটি বন্ধ করা আছে কিনা। |
টাইমিং পয়েন্ট
Anchor link todelay (wait)
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 | একটি ট্যাগ বা ইভেন্টের মান থেকে আপেক্ষিকভাবে অপেক্ষা করুন। |
একটি dynamic_time যার সাথে split_branches: true থাকে, একটি output1 শাখা যোগ করে (দেখুন আউটপুট কী)।
DynamicTime
Anchor link to| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
from | enum DynamicTimeFrom | বেস টাইম একটি ট্যাগ থেকে আসে নাকি একটি ইভেন্ট থেকে। |
direction | enum DynamicTimeDirection | বেস টাইমের আগে বা পরে অফসেট। |
duration | uint64 | অফসেটের আকার। |
unit | enum DynamicTimeUnit | duration-এর একক (মিনিট, ঘন্টা, দিন, …)। |
split_branches | bool | ব্যবহারকারীদের তাদের গণনাকৃত সময় ভিন্ন হলে আলাদা শাখায় বিভক্ত করুন। |
tag_name | string | বেস টাইম ধারণকারী ট্যাগ (যখন from একটি ট্যাগ হয়)। |
event_name / event_attribute / point_id | string | বেস টাইমের ইভেন্ট উৎস (যখন from একটি ইভেন্ট হয়)। |
wait_event
Anchor link toব্যবহারকারীরা একটি ইভেন্ট (বা একটি টাইমআউট) ট্রিগার না করা পর্যন্ত অপেক্ষা করে। POINT_TYPE_WAIT_EVENT। default আউটপুট হল নট-ট্রিগারড পাথ। ট্রিগারড পাথ হল output1 অথবা, একটি স্ক্রিপ্টের সাথে, প্রতি শর্তের জন্য একটি শাখা।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
events | PointWaitEventInfo[] | অপেক্ষা করার জন্য ইভেন্ট। |
conditions_script | string | জটিল মাল্টি-ইভেন্ট লজিকের জন্য ঐচ্ছিক স্ক্রিপ্ট। এর পার্স করা শর্তের নামগুলি আউটপুট কী হয়ে যায়। |
multi_entry | MultiEntry | পুনরায় প্রবেশের আচরণ। |
স্প্লিটিং এবং ফিল্টারিং পয়েন্ট
Anchor link toboolean_splitter
Anchor link toএকটি শর্তের উপর ভিত্তি করে ব্যবহারকারীদের বিভিন্ন শাখায় রুট করে। POINT_TYPE_BOOLEAN_SPLITTER।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
split_strategy | enum | SPLIT_FILTER (সেগমেন্ট দ্বারা), SPLIT_TAGS (ট্যাগ শর্ত দ্বারা), বা SPLIT_EVENTS (ইভেন্ট শর্ত দ্বারা)। |
load_policy | enum | ALL (ব্যবহারকারীর যেকোনো ডিভাইস মিলতে পারে) বা FILTER (শুধুমাত্র বর্তমান ডিভাইস)। |
filter_code | string | সেগমেন্ট কোড, যখন split_strategy হয় SPLIT_FILTER। |
filter_expressions | FilterExpression[] | ট্যাগ শর্ত, যখন 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ব্যবহারকারীর ট্যাগ আপডেট করে। POINT_TYPE_SET_TAGS।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
application_code | string | অ্যাপ্লিকেশন কোড। |
tags | Tag[] | লেখার জন্য ট্যাগ। |
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
name | string | ট্যাগের নাম। |
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 বারবার ত্রুটির পরে ওয়েবহুকটি স্বয়ংক্রিয়ভাবে নিষ্ক্রিয় করে। |
reactivate | bool | শুধুমাত্র-লিখন। একটি নিষ্ক্রিয় ওয়েবহুক পুনরায় সক্রিয় করতে true সেট করুন। |
কনভার্সন পয়েন্ট
Anchor link togoal_event
Anchor link toএকটি কনভার্সন গোল ট্র্যাক করে। POINT_TYPE_GOAL_EVENT। এর কোনো আউটপুট নেই।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
event_name | string | গোল ইভেন্টের নাম। |
application_code | string | অ্যাপ্লিকেশন কোড। |
event_conditions | PointEventCondition[] | গোল ইভেন্টের অ্যাট্রিবিউটের সাথে মেলানো শর্তাবলী। |
is_throw_out | bool | গোলটি অর্জিত হলে ব্যবহারকারীকে Journey থেকে সরিয়ে দেওয়া হবে কিনা। |
is_cancel_event | bool | এটি একটি নেতিবাচক (বাতিল) গোল কিনা। |
এক্সিট পয়েন্ট
Anchor link toterminator
Anchor link toব্যবহারকারীর জন্য Journey শেষ করে। POINT_TYPE_EXIT। খালি অবজেক্ট ({}) এবং কোনো আউটপুট নেই।
{ "point_type": "POINT_TYPE_EXIT", "point_data": { "terminator": {} }, "outputs": [] }একটি টার্মিনেটর পয়েন্ট ঐচ্ছিক। একটি আউটপুটের info.next_point_uuid আনসেট রাখলে ব্যবহারকারীর জন্য Journey শেষ হয়ে যায়, যেমনটি একটি সুস্পষ্ট টার্মিনেটর করে — উভয় ক্ষেত্রেই একই ভাবে গণনা করা হয়, Exits হিসাবে, ত্রুটি হিসাবে নয়।
মেসেজিং পয়েন্ট
Anchor link toসমস্ত মেসেজিং পয়েন্ট একটি চ্যানেলের মাধ্যমে পাঠায় এবং একটি সাধারণ এনভেলপ শেয়ার করে। একটি স্প্লিটার সক্রিয় না থাকলে প্রতিটির একটি একক default আউটপুট থাকে (দেখুন আউটপুট কী)।
সাধারণ ফিল্ড:
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
application_code | string | অ্যাপ্লিকেশন কোড। |
preset_code | string | পাঠানোর জন্য প্রিসেট (টেমপ্লেট)। inapp এর পরিবর্তে richmedia_code ব্যবহার করে। |
content / title | string | ইনলাইন মেসেজ কন্টেন্ট, যখন একটি প্রিসেট ব্যবহার করা হয় না (চ্যানেল-নির্ভর)। |
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 | একটি কুইক-রিপ্লাই প্রিসেট প্রতি রিপ্লাইয়ের জন্য একটি আউটপুট যোগ করে (কী = রিপ্লাই ভ্যালু)। WhatsApp দেখুন। |
POINT_TYPE_SEND_TELEGRAM | send_telegram | টেলিগ্রাম চ্যানেল। |
POINT_TYPE_SEND_KAKAO | send_kakao | Kakao দেখুন। |
POINT_TYPE_SEND_LINE | send_line | LINE API দেখুন। |
POINT_TYPE_SEND_DATA | send_data | সাইলেন্ট ডেটা মেসেজ (কোনো UI নেই)। |
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একজন ব্যবহারকারী একই সময়ে Journey-তে কতগুলি সক্রিয় সেশন রাখতে পারে তা নিয়ন্ত্রণ করে। Customer Journey বিল্ডারে একজন ব্যবহারকারী একই সময়ে কতগুলি সেশন রাখতে পারে তা নিয়ন্ত্রণ করুন-এর প্রতিফলন করে। ইভেন্ট এন্ট্রি পয়েন্ট এবং wait_event দ্বারা ব্যবহৃত হয়।
| ফিল্ড | টাইপ | বর্ণনা |
|---|---|---|
enabled | bool | একজন ব্যবহারকারী একই সময়ে একাধিক সক্রিয় সেশন রাখতে পারে কিনা। false: প্রতি ব্যবহারকারী একটি সক্রিয় সেশন। true: প্রতি ব্যবহারকারী একাধিক সক্রিয় সেশন। |
attribute_name | string | ঐচ্ছিক। ইভেন্ট অ্যাট্রিবিউট যা প্রতিটি সেশনকে স্কোপ করে। সেট করা হলে, একজন ব্যবহারকারী এই অ্যাট্রিবিউটের প্রতিটি স্বতন্ত্র মানের জন্য একটি সক্রিয় সেশন রাখতে পারে (উদাহরণস্বরূপ, প্রতি order_id-এর জন্য একটি)। একই মানের ইভেন্টগুলি একটি সেশন শেয়ার করে। ব্যবহারকারীর সমস্ত এন্ট্রি একসাথে স্কোপ করতে খালি রাখুন। |