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

การอ้างอิง Point

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

จุดเริ่มต้น (Entry points)

Anchor link to

Journey หนึ่งต้องมีจุดเริ่มต้นอย่างน้อยหนึ่งจุด ทุกจุดเริ่มต้นจะมี output เริ่มต้นเพียงหนึ่งเดียว

start_by_segment

Anchor link to

ให้ผู้ใช้ที่ตรงกับ segment เข้ามา POINT_TYPE_START_BY_SEGMENT

FieldTypeDescription
application_codestringApplication code
filter_codestringSegment/filter code ที่กำหนดกลุ่มเป้าหมาย
repeatSegmentRepeatตารางการเข้าซ้ำที่เป็นทางเลือก (ดู SegmentRepeat)
start_attimestampห้ามประมวลผลก่อนเวลานี้ (ISO 8601)
is_deactivatedboolระบุว่าจุดเริ่มต้นนี้ปิดอยู่หรือไม่

message_bus (การเข้าด้วย event)

Anchor link to

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

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

ลงทะเบียน User IDs ที่อยู่ใน attribute ของ event แทนผู้ใช้ที่กระตุ้น event ซึ่งสะท้อนการทำงานของ Users from an event attribute ในเครื่องมือสร้าง Customer Journey

FieldTypeDescription
enabledboolระบุว่าจะลงทะเบียนผู้ใช้ที่ระบุชื่อใน attribute ของ event แทนผู้ใช้ที่กระตุ้น event หรือไม่
attribute_namestringชื่อของ attribute ของ event ที่เก็บ User ID (หรือรายการ User ID) ที่จะลงทะเบียน

start_by_api

Anchor link to

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

FieldTypeDescription
application_codestringApplication code
attributesstring[]ชื่อของ custom attribute ที่สามารถส่งผ่านใน attribute_values ของคำขอ Start by API
is_deactivatedboolระบุว่าจุดเริ่มต้นนี้ปิดอยู่หรือไม่

จุดตั้งเวลา (Timing points)

Anchor link to

delay (รอ)

Anchor link to

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

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

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

DynamicTime

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

wait_event

Anchor link to

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

FieldTypeDescription
eventsPointWaitEventInfo[]Event ที่จะรอ
conditions_scriptstringสคริปต์ทางเลือกสำหรับตรรกะหลาย event ที่ซับซ้อน ชื่อเงื่อนไขที่ถูกแยกวิเคราะห์จะกลายเป็นคีย์ output
multi_entryMultiEntryพฤติกรรมการเข้าซ้ำ

จุดแยกและกรอง (Splitting and filtering points)

Anchor link to

boolean_splitter

Anchor link to

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

FieldTypeDescription
split_strategyenumSPLIT_FILTER (ตาม segment), SPLIT_TAGS (ตามเงื่อนไข tag) หรือ SPLIT_EVENTS (ตามเงื่อนไข event)
load_policyenumALL (อุปกรณ์ใดๆ ของผู้ใช้อาจตรงกัน) หรือ FILTER (เฉพาะอุปกรณ์ปัจจุบัน)
filter_codestringรหัส Segment เมื่อ split_strategy เป็น SPLIT_FILTER
filter_expressionsFilterExpression[]เงื่อนไข Tag เมื่อ split_strategy เป็น SPLIT_TAGS: จะมีสาขา output เพิ่มขึ้นหนึ่งสาขาต่อนิพจน์
eventBooleanSplitterEventInfoเงื่อนไข Event เมื่อ split_strategy เป็น SPLIT_EVENTS: จะมีสาขา output เพิ่มขึ้นหนึ่งสาขาต่อเงื่อนไข

ab_splitter

Anchor link to

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

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

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

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

จุดกระทำ (Action points)

Anchor link to

อัปเดต tag ของผู้ใช้ POINT_TYPE_SET_TAGS

FieldTypeDescription
application_codestringApplication code
tagsTag[]Tag ที่จะเขียน
FieldTypeDescription
namestringชื่อ Tag
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 มี output เริ่มต้นเพียงหนึ่งเดียว

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

จุด Conversion

Anchor link to

goal_event

Anchor link to

ติดตามเป้าหมาย conversion POINT_TYPE_GOAL_EVENT ไม่มี output

FieldTypeDescription
event_namestringชื่อ event ของ Goal
application_codestringApplication code
event_conditionsPointEventCondition[]เงื่อนไขที่จับคู่กับ attribute ของ event ของ goal
is_throw_outboolระบุว่าจะลบผู้ใช้ออกจาก journey หรือไม่เมื่อบรรลุเป้าหมายแล้ว
is_cancel_eventboolระบุว่านี่เป็นเป้าหมายเชิงลบ (การยกเลิก) หรือไม่

จุดออก (Exit points)

Anchor link to

terminator

Anchor link to

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

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

จุดส่งข้อความ (Messaging points)

Anchor link to

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

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

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

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

Point typepoint_data keyNotes
POINT_TYPE_SEND_PUSHsend_pushsplit_params (พฤติกรรม) บวกกับตัวแยกการจัดส่งสามารถสร้าง output ได้สูงสุดสามรายการ send_by_user_id, wait_optimal_time
POINT_TYPE_SEND_EMAILsend_emailliquid_template_params, personalise ดู Email API
POINT_TYPE_SEND_SMSsend_smsดู SMS
POINT_TYPE_SEND_WHATSAPPsend_whatsapppreset การตอบกลับด่วนจะเพิ่มหนึ่ง output ต่อหนึ่งการตอบกลับ (คีย์ = ค่าการตอบกลับ) ดู 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
FieldTypeDescription
enabledboolระบุว่าการเข้าซ้ำเปิดอยู่หรือไม่
frequencystringdaily, weekly, monthly หรือ dates
everyuint32ทำซ้ำทุก N ช่วงเวลา
datesstring[]วันที่ระบุ เมื่อ frequency เป็น dates
timeSegmentRepeatTimeการกำหนดค่าเวลาของวัน

อ็อบเจกต์เวลา

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
FieldTypeDescription
enabledboolระบุว่าจะรอการโต้ตอบและแยกสาขาตามนั้นหรือไม่
intervaluint64จำนวนวินาทีที่จะรอการโต้ตอบ

MultiEntry

Anchor link to

ควบคุมจำนวนเซสชันที่ใช้งานอยู่ที่ผู้ใช้สามารถมีได้ใน journey ในเวลาเดียวกัน สะท้อนการทำงานของ ควบคุมจำนวนเซสชันที่ผู้ใช้สามารถมีได้ในเวลาเดียวกัน ในเครื่องมือสร้าง Customer Journey ใช้โดย จุดเริ่มต้น event และ wait_event

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

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

Anchor link to