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

iOS Live Activities API

เอกสารประกอบของ Apple:

startLiveActivity

Anchor link to

ใช้เมธอดนี้เพื่อสร้าง iOS Live Activities

POST https://api.pushwoosh.com/json/1.3/startLiveActivity

อนุญาตให้สร้าง iOS Live Activities

Request body

Anchor link to
พารามิเตอร์ประเภทจำเป็น/ไม่จำเป็นคำอธิบาย
applicationStringจำเป็นPushwoosh application code
authStringจำเป็นAPI access token จาก Pushwoosh Control Panel
notificationsArrayจำเป็นJSON array ของพารามิเตอร์ข้อความ ดูรายละเอียดในตาราง Notifications ด้านล่าง

Notifications

Anchor link to

พารามิเตอร์ที่ใช้ใน array notifications:

พารามิเตอร์ประเภทจำเป็น/ไม่จำเป็นคำอธิบาย
contentStringจำเป็นเนื้อหาสำรอง (Fallback content) สำหรับอุปกรณ์ที่รัน iOS เวอร์ชันต่ำกว่า 16.1 ซึ่งไม่รองรับ Live Activity ใน iOS 16.1+ (ที่รองรับ Live Activity) เนื้อหาจะมาจากฟิลด์ live_activity
titleStringไม่จำเป็นหัวข้อของข้อความแจ้งเตือน
live_activityObjectจำเป็นข้อมูล Live Activity เพื่อสร้าง Live Activity ใน iOS
content-stateObjectจำเป็นเนื้อหาสำหรับการแจ้งเตือน Live Activity
attributes-typeStringจำเป็นประเภทของ attributes ที่ใช้ใน Live Activity
attributesObjectจำเป็นAttributes สำหรับ Live Activity
live_activity_idStringจำเป็นID ที่ไม่ซ้ำกันสำหรับ Live Activity ซึ่งสร้างโดยผู้ใช้
filter_codeStringไม่จำเป็นFilter (Segment) code เพื่อกำหนดเป้าหมายกลุ่มผู้ชมเฉพาะ
devicesArray of stringsไม่จำเป็นTokens หรือ HWIDs เพื่อส่ง push notifications แบบเจาะจง สูงสุด 1000 รายการ หากกำหนดค่านี้ ข้อความจะถูกส่งไปยังอุปกรณ์ในรายการเท่านั้น หมายเหตุ: ไม่อนุญาตให้ใช้ Application Group สำหรับรายการอุปกรณ์ และ iOS push tokens ต้องเป็นตัวพิมพ์เล็ก
usersArray of stringsไม่จำเป็นหากกำหนดค่านี้ ข้อความจะถูกส่งไปยัง User ID ที่ระบุเท่านั้น (กำหนดผ่านการเรียก /registerUser) คุณสามารถระบุ User ID ได้สูงสุด 1000 รายการใน array หมายเหตุ: หากใช้ร่วมกับพารามิเตอร์ devices พารามิเตอร์ users จะมีความสำคัญกว่า ไม่อนุญาตให้ใช้ Application Group สำหรับรายการผู้ใช้

200

{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"C3F8-C3863ED4-334AD4F1"
]
}
}

ตัวอย่าง Request

Anchor link to
{
"request": {
"application": "XXXXX-XXXXX", // จำเป็น Pushwoosh application code
"auth": "yxoPUlwqm…………pIyEX4H", // จำเป็น API access token จาก Pushwoosh Control Panel
"notifications": [{
"live_activity": { // จำเป็น ข้อมูล Live Activity เพื่อสร้าง Live Activity ใน iOS
"content-state": {
"emoji": ":wink:"
},
"attributes-type": "LiveActivityAttributes",
"attributes": {
"name": "Apple"
}
},
"live_activity_id": "unique UUID", // ไม่จำเป็น Unique identifier ของ Live Activity
"filter_code": "FILTER_NAME", // ไม่จำเป็น ระบุ filter
"devices": [ // ไม่จำเป็น ระบุ tokens หรือ hwids เพื่อส่ง push
"hwid_XXXX" // notifications แบบเจาะจง ไม่เกิน 1000 tokens/hwids ใน
], // array หากกำหนด ข้อความจะถูกส่งไปยัง
// อุปกรณ์ในรายการเท่านั้น ไม่อนุญาตให้ใช้ Application Group
// สำหรับรายการอุปกรณ์
// iOS push tokens ต้องเป็นตัวพิมพ์เล็กเท่านั้น
"users": [ // ไม่จำเป็น หากกำหนด ข้อความจะถูกส่งไปยัง
"user_XXXX" // user ID ที่ระบุเท่านั้น (กำหนดผ่าน /registerUser) หากระบุ
] // ร่วมกับพารามิเตอร์ devices พารามิเตอร์หลังจะถูก
// ละเว้น ไม่เกิน 1000 user ID ใน array
// ไม่อนุญาตให้ใช้ Application Group สำหรับรายการผู้ใช้
}]
}
}

หมายเหตุ:

อ่าน บทความนี้ เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการทำงานกับ Live Activities โดยใช้ Pushwoosh iOS SDK

updateLiveActivity

Anchor link to

ใช้เมธอดนี้เพื่อจัดการ iOS Live Activities

POST https://api.pushwoosh.com/json/1.3/updateLiveActivity

อนุญาตให้สร้างและจัดการ iOS Live Activities

Request body

Anchor link to
พารามิเตอร์ประเภทจำเป็น/ไม่จำเป็นคำอธิบาย
authStringจำเป็นAPI access token จาก Pushwoosh Control Panel
applicationStringจำเป็นPushwoosh application code
notificationsArrayจำเป็นJSON array ของพารามิเตอร์ข้อความ ดูรายละเอียดในตาราง Notifications ด้านล่าง

Notifications

Anchor link to

พารามิเตอร์ที่ใช้ใน array notifications:

พารามิเตอร์ประเภทจำเป็น/ไม่จำเป็นคำอธิบาย
live_activityObjectจำเป็นข้อมูล Live Activity เพื่ออัปเดต Live Activity ใน iOS
eventStringจำเป็นระบุประเภทเหตุการณ์ ใช้ "update" เพื่ออัปเดต Live Activity หรือ "end" เพื่อปิด
content-stateObjectจำเป็นObject ที่มีคู่ key-value ใช้เพื่อส่งข้อมูลไปยัง Live Activity เพื่ออัปเดตเนื้อหา
dismissal-dateIntegerไม่จำเป็นเวลา (เป็นวินาที) ที่ Live Activity ควรจะสิ้นสุด
live_activity_idStringจำเป็นUnique identifier สำหรับ Live Activity ที่กำลังอัปเดต
stale-dateIntegerไม่จำเป็นเวลา (เป็นวินาที) ที่แสดงถึงวันที่ที่ Live Activity จะกลายเป็น stale หรือล้าสมัย
{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"C3F8-C3863ED4-334AD4F1"
]
}
}

ตัวอย่าง Request

Anchor link to
{
"request": {
"application": "XXXXX-XXXXX", // จำเป็น Pushwoosh application code
"auth": "yxoPUlwqm…………pIyEX4H", // จำเป็น API access token จาก Pushwoosh Control Panel
"notifications": [{
"live_activity": { // จำเป็น ข้อมูล Live Activity เพื่ออัปเดต Live Activity ใน iOS
"event": "update", // จำเป็น ใช้ "update" เพื่ออัปเดต Live Activity หรือ
// "end" เพื่อปิด Live Activity
"content-state": { // จำเป็น Object ที่มีคู่ key-value ใช้เพื่อส่งข้อมูล
"courierName": "NUMBER: 15", // ไปยัง Live Activity เพื่ออัปเดตเนื้อหา
"deliveryStatus": "Done"
},
"dismissal-date": 12345678, // ไม่จำเป็น เวลาสิ้นสุด Live Activity เป็นวินาที
"stale-date": 23456789 // ไม่จำเป็น เวลา (เป็นวินาที) เมื่อ Live Activity กลายเป็น stale
},
"live_activity_id": "unique UUID" // ไม่จำเป็น Unique identifier ของ Live Activity
}]
}
}

อ่านบทความนี้ เพื่อเรียนรู้เพิ่มเติมเกี่ยวกับการทำงานกับ Live Activities โดยใช้ Pushwoosh iOS SDK