ข้ามไปยังเนื้อหา

ข้อมูลอ้างอิงพอยต์

ทุก point จะมีอ็อบเจกต์ point_data ที่มีคีย์ซ้อนกันเพียงหนึ่งคีย์ ซึ่งตรงกับ point_type ของพอยต์ (ดูที่ การจับคู่ point-type → key) หน้านี้จะอธิบายโครงสร้างภายใต้แต่ละคีย์

พอยต์เริ่มต้น (Entry points)

Anchor link to

Journey จำเป็นต้องมีพอยต์เริ่มต้นอย่างน้อยหนึ่งพอยต์ พอยต์เริ่มต้นทั้งหมดมีเอาต์พุต default เพียงหนึ่งเดียว

start_by_segment

Anchor link to

ให้ผู้ใช้เข้าสู่ Journey เมื่อตรงกับเซกเมนต์ POINT_TYPE_START_BY_SEGMENT

ฟิลด์ประเภทคำอธิบาย
application_codestringรหัสแอปพลิเคชัน (Application code)
filter_codestringรหัสเซกเมนต์/ฟิลเตอร์ (Segment/filter code) ที่กำหนดกลุ่มเป้าหมาย
repeatSegmentRepeatกำหนดการเข้าซ้ำที่เป็นทางเลือก (ดู SegmentRepeat)
start_attimestampอย่าประมวลผลก่อนเวลานี้ (ISO 8601)
is_deactivatedboolระบุว่าพอยต์เริ่มต้นนี้ปิดอยู่หรือไม่

message_bus (การเข้าด้วยอีเวนต์)

Anchor link to

ให้ผู้ใช้เข้าสู่ Journey เมื่อพวกเขากระตุ้นอีเวนต์ POINT_TYPE_EVENT

ฟิลด์ประเภทคำอธิบาย
event_namestringชื่ออีเวนต์ (Event name) ที่จะรอฟัง
application_codestringรหัสแอปพลิเคชัน (Application code)
event_conditionsPointEventCondition[]เงื่อนไขที่จับคู่กับแอตทริบิวต์ของอีเวนต์
active_periodPeriodช่วงเวลาที่ทริกเกอร์ทำงาน
multi_entryMultiEntryวิธีที่ผู้ใช้สามารถเข้าได้มากกว่าหนึ่งครั้ง (ดู MultiEntry)
attribute_entryAttributeEntryลงทะเบียน User ID ที่อยู่ในแอตทริบิวต์ของอีเวนต์แทนที่จะเป็นผู้ใช้ที่กระตุ้นอีเวนต์ (ดู AttributeEntry)
allow_reenterboolระบุว่าผู้ใช้สามารถเข้าสู่ Journey ซ้ำได้หรือไม่
AttributeEntry
Anchor link to

ลงทะเบียน User ID ที่อยู่ในแอตทริบิวต์ของอีเวนต์ แทนที่จะเป็นผู้ใช้ที่กระตุ้นอีเวนต์ สะท้อนการทำงานของ Users from an event attribute ในตัวสร้าง Customer Journey

ฟิลด์ประเภทคำอธิบาย
enabledboolระบุว่าจะลงทะเบียนผู้ใช้ที่ระบุชื่อในแอตทริบิวต์ของอีเวนต์แทนที่จะเป็นผู้ใช้ที่กระตุ้นอีเวนต์หรือไม่
attribute_namestringชื่อของแอตทริบิวต์อีเวนต์ที่เก็บ User ID (หรือรายการ User ID) ที่จะลงทะเบียน

start_by_api

Anchor link to

พอยต์เริ่มต้นที่ได้รับข้อมูลจากการเรียก Start by API POINT_TYPE_START_BY_API

ฟิลด์ประเภทคำอธิบาย
application_codestringรหัสแอปพลิเคชัน (Application code)
attributesstring[]ชื่อของแอตทริบิวต์ที่กำหนดเองที่สามารถส่งผ่านใน attribute_values ของคำขอ Start by API
is_deactivatedboolระบุว่าพอยต์เริ่มต้นนี้ปิดอยู่หรือไม่

พอยต์กำหนดเวลา (Timing points)

Anchor link to

delay (wait)

Anchor link to

หยุดผู้ใช้แต่ละคนชั่วคราวตามช่วงเวลาที่กำหนดหรือคำนวณได้ POINT_TYPE_WAIT อ็อบเจกต์ point_data.delay จะตั้งค่าคีย์ช่วงเวลาต่อไปนี้เพียงหนึ่งคีย์:

คีย์ช่วงเวลาประเภทคำอธิบาย
secuint64รอเป็นจำนวนวินาทีที่กำหนด
exact_timeExactTimeรอจนถึงเวลาของวัน (hour, minute)
exact_date_timeExactDateTimeรอจนถึงวันที่และเวลาที่แน่นอน
exact_week_days_timeExactWeekDaysTimeรอจนถึงเวลาที่ระบุในวันของสัปดาห์ที่ระบุ (แมปของวัน 0=จันทร์ … 6=อาทิตย์ → ExactTime)
dynamic_timeDynamicTimeรอโดยอ้างอิงจากค่าจากแท็กหรืออีเวนต์

dynamic_time ที่มี split_branches: true จะเพิ่มสาขา output1 (ดู คีย์เอาต์พุต)

DynamicTime

Anchor link to
ฟิลด์ประเภทคำอธิบาย
fromenum DynamicTimeFromระบุว่าเวลาพื้นฐานมาจากแท็กหรืออีเวนต์
directionenum DynamicTimeDirectionออฟเซ็ตก่อนหรือหลังเวลาพื้นฐาน
durationuint64ขนาดของออฟเซ็ต
unitenum DynamicTimeUnitหน่วยของ duration (นาที, ชั่วโมง, วัน, …)
split_branchesboolแยกผู้ใช้ออกเป็นสาขาต่างๆ เมื่อเวลาที่คำนวณได้แตกต่างกัน
tag_namestringแท็กที่เก็บเวลาพื้นฐาน (เมื่อ from เป็นแท็ก)
event_name / event_attribute / point_idstringแหล่งที่มาของเวลาพื้นฐาน (เมื่อ from เป็นอีเวนต์)

wait_event

Anchor link to

รอจนกว่าผู้ใช้จะกระตุ้นอีเวนต์ (หรือจนกว่าจะหมดเวลา) POINT_TYPE_WAIT_EVENT เอาต์พุต default คือเส้นทางที่ ไม่ถูกกระตุ้น เส้นทางที่ถูกกระตุ้นคือ output1 หรือหากมีสคริปต์ จะเป็นหนึ่งสาขาต่อเงื่อนไข

ฟิลด์ประเภทคำอธิบาย
eventsPointWaitEventInfo[]อีเวนต์ที่ต้องรอ
conditions_scriptstringสคริปต์ทางเลือกสำหรับตรรกะหลายอีเวนต์ที่ซับซ้อน ชื่อเงื่อนไขที่แยกวิเคราะห์จะกลายเป็นคีย์เอาต์พุต
multi_entryMultiEntryพฤติกรรมการเข้าซ้ำ

พอยต์การแยกและการกรอง

Anchor link to

boolean_splitter

Anchor link to

ส่งผู้ใช้ไปยังสาขาต่างๆ ตามเงื่อนไข POINT_TYPE_BOOLEAN_SPLITTER

ฟิลด์ประเภทคำอธิบาย
split_strategyenumSPLIT_FILTER (ตามเซกเมนต์), SPLIT_TAGS (ตามเงื่อนไขแท็ก), หรือ SPLIT_EVENTS (ตามเงื่อนไขอีเวนต์)
load_policyenumALL (อุปกรณ์ใดๆ ของผู้ใช้อาจตรงกัน) หรือ FILTER (เฉพาะอุปกรณ์ปัจจุบัน)
filter_codestringรหัสเซกเมนต์ เมื่อ split_strategy คือ SPLIT_FILTER
filter_expressionsFilterExpression[]เงื่อนไขแท็ก เมื่อ split_strategy คือ SPLIT_TAGS: เพิ่มสาขา output หนึ่งสาขาต่อนิพจน์
eventBooleanSplitterEventInfoเงื่อนไขอีเวนต์ เมื่อ split_strategy คือ SPLIT_EVENTS: เพิ่มสาขา output หนึ่งสาขาต่อเงื่อนไข

ab_splitter

Anchor link to

สุ่มแบ่งผู้ใช้เป็นกลุ่มต่างๆ ตามน้ำหนักที่กำหนด POINT_TYPE_AB_SPLITTER คีย์เอาต์พุตคือ output0, output1, … (หนึ่งรายการต่อรายการใน split โดยเริ่มจากดัชนี 0 ไม่มี default)

ฟิลด์ประเภทคำอธิบาย
splituint32[]เปอร์เซ็นต์สำหรับแต่ละสาขา ต้องรวมกันได้ 100 ดัชนี i จะจับคู่กับคีย์เอาต์พุต output{i}
auto_select_winnerboolระบุว่าจะเลือกสาขาที่ชนะโดยอัตโนมัติหรือไม่
winner_strategyenumANY_GOAL หรือ SPECIFIC_GOAL
goal_uuidstringเป้าหมายที่ใช้ในการตัดสินผู้ชนะ (กับ SPECIFIC_GOAL)
winner_splituint32หมายเลขสาขาที่ชนะ (เริ่มจาก 1, 0 = ยังไม่มีผู้ชนะ)

อนุญาตให้เฉพาะผู้ใช้ที่ตรงกันไปต่อ (default) และส่งผู้ใช้ที่เหลือไปยัง output1 POINT_TYPE_FILTER

ฟิลด์ประเภทคำอธิบาย
filterenum Filterการตรวจสอบที่กำหนดไว้ล่วงหน้า: EMAIL_EXISTS, PUSH_TOKEN_EXISTS, SMS_TOKEN_EXISTS, WHATSAPP_TOKEN_EXISTS, LINE_TOKEN_EXISTS, หรือ CUSTOM
filter_rawstringนิพจน์ฟิลเตอร์ที่กำหนดเอง เมื่อ filter เป็น CUSTOM

พอยต์การกระทำ

Anchor link to

อัปเดตแท็กของผู้ใช้ POINT_TYPE_SET_TAGS

ฟิลด์ประเภทคำอธิบาย
application_codestringรหัสแอปพลิเคชัน (Application code)
tagsTag[]แท็กที่จะเขียน
ฟิลด์ประเภทคำอธิบาย
namestringชื่อแท็ก
typeenum TagTypeประเภทข้อมูลและการดำเนินการ: TYPE_STRING, TYPE_INTEGER, TYPE_DATE, TYPE_BOOLEAN, TYPE_LIST, TYPE_LIST_APPEND, TYPE_LIST_REMOVE, TYPE_DYNAMIC, …
valueoneofคีย์ค่าเพียงหนึ่งคีย์ที่ตรงกับ type: str, int, bool, date, price, version, timezone, list, หรือ dynamic

ส่งคำขอ HTTP ขาออก POINT_TYPE_WEBHOOK มีเอาต์พุต default เพียงหนึ่งเดียว

ฟิลด์ประเภทคำอธิบาย
methodstringเมธอด HTTP (GET, POST, PUT, …)
urlstringURL เป้าหมาย
request_templatestringเทมเพลตเนื้อหาคำขอ รองรับเทมเพลต Liquid
headersmap<string, string>เฮดเดอร์ HTTP
disabledboolอ่านอย่างเดียว true เมื่อ Pushwoosh ปิดใช้งาน webhook โดยอัตโนมัติหลังจากเกิดข้อผิดพลาดซ้ำๆ
reactivateboolเขียนอย่างเดียว ตั้งค่าเป็น true เพื่อเปิดใช้งาน webhook ที่ถูกปิดใช้งานอีกครั้ง

พอยต์การแปลง

Anchor link to

goal_event

Anchor link to

ติดตามเป้าหมายการแปลง POINT_TYPE_GOAL_EVENT ไม่มีเอาต์พุต

ฟิลด์ประเภทคำอธิบาย
event_namestringชื่ออีเวนต์เป้าหมาย
application_codestringรหัสแอปพลิเคชัน (Application code)
event_conditionsPointEventCondition[]เงื่อนไขที่จับคู่กับแอตทริบิวต์ของอีเวนต์เป้าหมาย
is_throw_outboolระบุว่าจะลบผู้ใช้ออกจาก Journey เมื่อถึงเป้าหมายหรือไม่
is_cancel_eventboolระบุว่านี่เป็นเป้าหมายเชิงลบ (การยกเลิก) หรือไม่

พอยต์ทางออก

Anchor link to

terminator

Anchor link to

สิ้นสุด Journey สำหรับผู้ใช้ POINT_TYPE_EXIT เป็นอ็อบเจกต์ว่าง ({}) และไม่มีเอาต์พุต

{ "point_type": "POINT_TYPE_EXIT", "point_data": { "terminator": {} }, "outputs": [] }

พอยต์ terminator เป็นทางเลือก การปล่อยให้ info.next_point_uuid ของเอาต์พุตว่างไว้จะสิ้นสุด Journey สำหรับผู้ใช้ในลักษณะเดียวกับ terminator ที่ระบุไว้อย่างชัดเจน — ทั้งสองกรณีจะถูกนับในลักษณะเดียวกันคือ Exits ไม่ใช่ข้อผิดพลาด

พอยต์การส่งข้อความ

Anchor link to

พอยต์การส่งข้อความทั้งหมดจะส่งผ่านช่องทางและใช้รูปแบบร่วมกัน แต่ละพอยต์มีเอาต์พุต default เพียงหนึ่งเดียว เว้นแต่จะเปิดใช้งานตัวแยก (ดู คีย์เอาต์พุต)

ฟิลด์ทั่วไป:

ฟิลด์ประเภทคำอธิบาย
application_codestringรหัสแอปพลิเคชัน (Application code)
preset_codestringPreset (เทมเพลต) ที่จะส่ง inapp ใช้ richmedia_code แทน
content / titlestringเนื้อหาข้อความแบบอินไลน์ เมื่อไม่ได้ใช้ preset (ขึ้นอยู่กับช่องทาง)
campaign_codestringรหัสแคมเปญ (Campaign code) สำหรับการติดตาม จะถูกสร้างขึ้นโดยอัตโนมัติหากไม่ระบุ
split_paramsBehaviorSplitterทางเลือก: รอการโต้ตอบและแยกสาขาตามการโต้ตอบนั้น
message_typeenumประเภทข้อความ การตลาดเทียบกับธุรกรรม (ควบคุมการจัดการกลุ่มควบคุม) ไม่ได้ใช้โดย send_email ซึ่งมีคู่ email_type/email_category ของตัวเองด้านล่าง

ประเภทพอยต์และฟิลด์พิเศษที่น่าสนใจ:

ประเภทพอยต์คีย์ point_dataหมายเหตุ
POINT_TYPE_SEND_PUSHsend_pushsplit_params (พฤติกรรม) บวกกับตัวแยกการจัดส่งสามารถสร้างเอาต์พุตได้สูงสุดสามรายการ send_by_user_id, wait_optimal_time
POINT_TYPE_SEND_EMAILsend_emailliquid_template_params, personalise, email_type, email_category (ดูด้านล่าง) ดู Email API
POINT_TYPE_SEND_SMSsend_smsดู SMS
POINT_TYPE_SEND_WHATSAPPsend_whatsapppreset การตอบกลับด่วนจะเพิ่มหนึ่งเอาต์พุตต่อการตอบกลับ (คีย์ = ค่าการตอบกลับ) ดู WhatsApp
POINT_TYPE_SEND_TELEGRAMsend_telegramช่องทาง Telegram
POINT_TYPE_SEND_KAKAOsend_kakaoดู Kakao
POINT_TYPE_SEND_LINEsend_lineดู LINE API
POINT_TYPE_SEND_DATAsend_dataข้อความข้อมูลแบบเงียบ (ไม่มี UI)
POINT_TYPE_INAPPinappใช้ richmedia_code, expire_in_days, capping

ประเภทที่ใช้ร่วมกัน

Anchor link to

SegmentRepeat

Anchor link to
ฟิลด์ประเภทคำอธิบาย
enabledboolระบุว่าการเข้าซ้ำเปิดอยู่หรือไม่
frequencystringdaily, weekly, monthly, หรือ dates
everyuint32ทำซ้ำทุก N ช่วงเวลา
datesstring[]วันที่ที่ระบุ เมื่อ frequency เป็น dates
timeSegmentRepeatTimeการกำหนดค่าเวลาของวัน

อ็อบเจกต์เวลา (Time objects)

Anchor link to
  • ExactTime: { "hour": 0–23, "minute": 0–59 }
  • ExactDateTime: { "year", "month": 1–12, "day": 1–31, "hour": 0–23, "minute": 0–59 }

BehaviorSplitter

Anchor link to
ฟิลด์ประเภทคำอธิบาย
enabledboolระบุว่าจะรอการโต้ตอบและแยกสาขาตามการโต้ตอบนั้นหรือไม่
intervaluint64จำนวนวินาทีที่รอการโต้ตอบ

MultiEntry

Anchor link to

ควบคุมจำนวนเซสชันที่ใช้งานพร้อมกันที่ผู้ใช้สามารถมีได้ใน Journey สะท้อนการทำงานของ Control how many sessions a user can have at the same time ในตัวสร้าง Customer Journey ใช้โดย พอยต์เริ่มต้นด้วยอีเวนต์ และ wait_event

ฟิลด์ประเภทคำอธิบาย
enabledboolระบุว่าผู้ใช้สามารถมีเซสชันที่ใช้งานหลายรายการพร้อมกันได้หรือไม่ false: หนึ่งเซสชันที่ใช้งานต่อผู้ใช้ true: หลายเซสชันที่ใช้งานต่อผู้ใช้
attribute_namestringทางเลือก แอตทริบิวต์อีเวนต์ที่กำหนดขอบเขตของแต่ละเซสชัน เมื่อตั้งค่า ผู้ใช้สามารถมีหนึ่งเซสชันที่ใช้งานต่อค่าที่แตกต่างกันของแอตทริบิวต์นี้ (ตัวอย่างเช่น หนึ่งรายการต่อ order_id) อีเวนต์ที่มีค่าเดียวกันจะใช้เซสชันร่วมกัน ปล่อยว่างไว้เพื่อกำหนดขอบเขตการเข้าทั้งหมดของผู้ใช้ร่วมกัน

ที่เกี่ยวข้อง

Anchor link to