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

การตั้งค่า High-speed delivery

ภาพรวม

Anchor link to

ใน Pushwoosh กลุ่มเป้าหมาย (audience segments) จะถูกกำหนดโดยใช้ Segments

สำหรับแคมเปญ push มาตรฐาน Segment จะถูกประมวลผล หลังจาก ส่ง request /createMessage แล้ว ซึ่งหมายความว่าอาจมีความล่าช้าเล็กน้อยก่อนที่ข้อความจะถูกส่งออกไป โดยเฉพาะอย่างยิ่งหาก Segment มีความซับซ้อน

ด้วย High-speed delivery Segments จะถูกประมวลผลล่วงหน้าทุกๆ 10 นาที สิ่งนี้ช่วยให้ข้อมูลเป็นปัจจุบันและพร้อมใช้งาน เพื่อให้สามารถส่งข้อความได้ทันที—โดยไม่ต้องรอให้ Segment ประมวลผล

High-speed delivery มีประโยชน์อย่างยิ่งเมื่อเวลาเป็นเรื่องสำคัญ ตัวอย่างเช่น องค์กรกีฬาอย่าง UEFA และ FIBA สามารถใช้เพื่อส่งอัปเดตแบบเรียลไทม์ที่ทุกวินาทีมีความหมาย

คู่มือนี้จะอธิบายวิธีการตั้งค่า High-speed delivery โดยใช้แอปกีฬาเป็นตัวอย่าง คุณจะได้เรียนรู้วิธีสร้าง audience segments เพื่อแจ้งเตือนผู้ใช้เกี่ยวกับการแข่งขันที่กำลังจะมาถึงและเหตุการณ์สด

ทำไมต้องใช้ High-speed delivery

Anchor link to

ข้อกำหนดเบื้องต้นสำหรับการใช้ High-speed delivery โดยองค์กรกีฬามีดังนี้:

  • การแข่งขันทั้งหมดถูกกำหนดตารางเวลาไว้ล่วงหน้า ดังนั้นคุณจึงรู้ว่าต้องสร้าง Segments เมื่อใดและสามารถประมวลผล audience segments ล่วงหน้าได้
  • ทุกการแข่งขันจะเชื่อมโยงกับ ID ที่ไม่ซ้ำกัน ตัวอย่างเช่น match ID สำหรับ Champions League Final คือ 0123
  • ทุกทีมจะเชื่อมโยงกับ ID ที่ไม่ซ้ำกัน ตัวอย่างเช่น Juventus ID คือ 111, Real Madrid ID คือ 222 เป็นต้น
  • มีชุดของเหตุการณ์สดที่คุณต้องการแจ้งเตือนผู้ใช้ (ประตู, รายชื่อผู้เล่น, เริ่มการแข่งขัน ฯลฯ)

การตั้งค่า

Anchor link to

Segments ทั้งหมดสำหรับ High-speed delivery ควรถูกสร้างขึ้นล่วงหน้า—ในกรณีตัวอย่างคือควรสร้างก่อนการแข่งขันจะเริ่ม Pushwoosh จะใช้เงื่อนไขของ Segment กับฐานผู้ใช้ของแอปและ ประมวลผล Segments ล่วงหน้าทุกๆ 10 นาที (ช่วงเวลานี้สามารถปรับได้)

เมื่อคุณส่ง API request /createMessage พร้อมเนื้อหา push และชื่อ Segment ทาง Pushwoosh จะมีรายชื่อผู้รับที่ประมวลผลล่วงหน้าไว้แล้ว ทำให้สามารถส่งการแจ้งเตือน push ได้ทันที

สร้าง Tags

Anchor link to

ขั้นแรก ให้สร้างชุดของ Tags ที่จะใช้ และกำหนดค่า Tag ให้กับอุปกรณ์ของผู้ใช้ สร้าง Tags ประเภท LIST ที่สอดคล้องกับเหตุการณ์การแข่งขันสด เช่น kickoff, goal, red card, ฯลฯ

ตัวอย่างเช่น: MATCH-KICKOFF, MATCH-GOAL, MATCH-RED_CARD Create Tags

สร้างชุด Tags เดียวกันที่อธิบายเหตุการณ์การแข่งขันสดสำหรับทีม ตัวอย่างเช่น: TEAM-KICKOFF, TEAM-GOAL, TEAM-RED_CARD

โดยการติดตาม (subscribe) Tags เหล่านี้ ผู้ใช้แอปสามารถเลือกการแจ้งเตือนที่ต้องการรับได้:

  • การแจ้งเตือนเกี่ยวกับการแข่งขันที่ระบุ (เช่น แมตช์ Juventus - Real Madrid)
  • การแจ้งเตือนเกี่ยวกับการแข่งขันของทีมโปรด (เช่น แมตช์ของ Juventus เท่านั้น)
  • การแจ้งเตือนเกี่ยวกับเหตุการณ์ที่เกิดขึ้นระหว่างการแข่งขัน (เช่น ประตูในแมตช์ Juventus - Real Madrid เท่านั้น)
  • การแจ้งเตือนเกี่ยวกับเหตุการณ์เฉพาะจากทีมโปรด (เช่น ประตูและรายชื่อผู้เล่นของแมตช์ Juventus)

กำหนดค่า Tags

Anchor link to

ตอนนี้คุณสามารถใส่ค่า Tag ที่ระบุไว้ก่อนหน้านี้ผ่าน API request setTags และสมัครรับข้อมูลผู้ใช้เข้าสู่หมวดหมู่การแจ้งเตือน push ที่เฉพาะเจาะจง

ตัวอย่างเช่น: เมื่อผู้ใช้สมัครรับข้อมูลอัปเดตการเริ่มการแข่งขันและประตูของ Champions League Final ให้เรียกใช้ /setTags โดยระบุ match ID:

{
"request": {
"application": "app_code",
"hwid": "device_hardware_id",
"tags": {
"MATCH_KICKOFF": "0123", // match ID
"MATCH_GOAL": "0123" // match ID
}
}
}

ผู้ใช้จะได้รับการแจ้งเตือนเกี่ยวกับการเริ่มการแข่งขันและประตูที่ทำได้ใน Champions League Final เมื่อผู้ใช้สมัครรับข้อมูลอัปเดตประตูและใบแดงของแมตช์ Real Madrid ให้เรียกใช้ /setTags ดังนี้:

{
"request": {
"application": "app_code",
"hwid": "device_hardware_id",
"tags": {
"TEAM_KICKOFF": "222", // team ID
"TEAM_GOAL": "222" // team ID
}
}
}

ผู้ใช้รายนี้จะได้รับการแจ้งเตือนเกี่ยวกับการเริ่มการแข่งขันและประตูเมื่อใดก็ตามที่ Real Madrid ลงแข่ง

สร้าง Segments

Anchor link to

ตอนนี้คุณสามารถสร้าง Segments สำหรับเหตุการณ์การแข่งขันโดยอิงตาม Tags และค่าของ Tags (match IDs และ team IDs) Segments ควรถูกสร้างผ่าน API request /createFilter 30 นาทีก่อนการแข่งขันเริ่ม

เพื่อแจ้งเตือนผู้ใช้เกี่ยวกับประตูที่ทำได้ใน Champions League Final จากตัวอย่างข้างต้น ให้เรียกใช้ /createFilter ด้วยพารามิเตอร์ต่อไปนี้: Segment name: 0123_GOAL Segment conditions: #TEAM-GOAL(111, 222) OR #MATCH-GOAL(0123)

{
"request": {
"auth": "auth_token",
"name": "0123_GOAL",
"conditions": [
["TEAM-GOAL", "IN", ["111", "222"]],
["MATCH-GOAL", "IN", ["0123"]]
],
"operator": "OR", // optional. Operator values: 'AND', 'OR'
"application" : "AAAAA-00000"
}
}

คำขอนี้จะประมวลผล Segment ของผู้ใช้ที่สมัครรับข้อมูลอัปเดตประตูของ Champions League Final (match ID=0123) หรือผู้ใช้ที่ติดตาม Juventus หรือ Real Madrid (team ID=111,222)

เพื่อตั้งค่า High-Speed Delivery ใน Pushwoosh Control Panel ของคุณ ให้ สร้าง Segment ใหม่ ด้วยค่า Tag ที่สอดคล้องกันและเชื่อมโยงกับแอปที่คุณจะส่ง push ไปหา Segments เฉพาะของแอปจะถูกประมวลผลล่วงหน้าทุกๆ 10 นาทีเพื่อให้ audience segments เป็นปัจจุบันอยู่เสมอ

create a new Segment

เมื่อเหตุการณ์การแข่งขันเกิดขึ้น (ทำประตูได้, เริ่มการแข่งขัน, ใบแดง ฯลฯ) ให้เรียกใช้ /createMessage พร้อมเนื้อหาการแจ้งเตือน push และชื่อ Segment:

{
"request": {
"application": "AAAAA_00000",
"auth": "auth_token",
"notifications": [
{
"content": "12’ Juventus goal! Juventus 1 – 0 Real Madrid",
"filter": "0123_GOAL",
"send_date": "now"
}
]
}
}

เมื่อเราได้รับคำเรียก /createMessage เราจะมีรายการอุปกรณ์ที่ตรงตามเกณฑ์ของ Segment ที่ประมวลผลล่วงหน้าไว้แล้ว และเราจะส่งการแจ้งเตือนไปยังเกตเวย์ APNs และ FCM ทันที

ลบ Segments

Anchor link to

หลังจากจบการแข่งขัน Segments ที่เกี่ยวข้องทั้งหมดควรถูกลบออก เพื่อไม่ให้ทรัพยากรการคำนวณถูกใช้ไปกับการประมวลผลซ้ำของ Segments ที่ไม่เกี่ยวข้องอีกต่อไป โดยเฉพาะอย่างยิ่งเมื่อต้องแลกกับทรัพยากรสำหรับ Segments ของการแข่งขันที่จะมีขึ้นถัดไป ลบ Segments ผ่าน API request /deleteFilter ตัวอย่างเช่น:

{
"request": {
"auth": "auth_token",
"name": "0123_GOAL"
}
}

เพื่อหลีกเลี่ยงการลบ Segments ด้วยตนเอง ให้ตั้งค่าวันหมดอายุของ Segment ผ่าน request /createFilter เพื่อให้ Segment ถูกลบโดยอัตโนมัติในวันที่ระบุ:

{
"request": {
"auth": "auth_token",
"name": "0123_GOAL",
"conditions": [
["TEAM-GOAL", "IN", ["111", "222"]],
["MATCH-GOAL", "IN", ["0123"]]
],
"operator": "OR", // optional. Values: 'AND', 'OR'
"application": "AAAAA-00000",
"expiration_date": "YYYY-MM-DD" // optional. Segment (Filter) expiry
}
}
Was this page useful?