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

iOS Live Activities API

เอกสารของ Apple:

startLiveActivity

Anchor link to

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

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

Request body

Anchor link to
พารามิเตอร์ประเภทจำเป็น/ทางเลือกคำอธิบาย
applicationStringจำเป็นรหัสแอปพลิเคชัน Pushwoosh
authStringจำเป็นโทเค็นการเข้าถึง API จาก Pushwoosh Control Panel
notificationsArrayจำเป็นอาร์เรย์ JSON ของพารามิเตอร์ข้อความ ดูรายละเอียดในตาราง Notifications ด้านล่าง

Notifications

Anchor link to

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

พารามิเตอร์ประเภทจำเป็น/ทางเลือกคำอธิบาย
contentStringจำเป็นเนื้อหาสำรองสำหรับอุปกรณ์ที่ใช้ iOS เวอร์ชันต่ำกว่า 16.1 ที่ไม่รองรับ Live Activity สำหรับ iOS 16.1+ (ที่รองรับ Live Activity) เนื้อหาจะมาจากฟิลด์ live_activity
titleStringทางเลือกชื่อเรื่องของข้อความแจ้งเตือน
live_activityObjectจำเป็นข้อมูล Live Activity เพื่อสร้าง Live Activity ใน iOS
live_activity.content-stateObjectจำเป็นเนื้อหาสำหรับการแจ้งเตือน Live Activity
live_activity.attributes-typeStringจำเป็นประเภทของแอตทริบิวต์ที่ใช้ใน Live Activity
live_activity.attributesObjectจำเป็นแอตทริบิวต์สำหรับ Live Activity
live_activity_idStringจำเป็นตัวระบุที่ไม่ซ้ำกันสำหรับ Live Activity ใช้เพื่อกำหนดเป้าหมายกิจกรรมนี้เมื่อเรียกใช้ updateLiveActivity ต้องไม่ซ้ำกันในแต่ละเซสชันของกิจกรรม
filterStringทางเลือกชื่อของฟิลเตอร์ Pushwoosh (เซกเมนต์) ดูที่ ชื่อเซกเมนต์ / ฟิลเตอร์ Live Activity จะเริ่มต้นบนอุปกรณ์ทั้งหมดที่ตรงกับฟิลเตอร์นี้
devicesArray of Stringsทางเลือกรายการของ โทเค็นอุปกรณ์ Live Activity จะเริ่มต้นเฉพาะบนอุปกรณ์ที่ระบุเท่านั้น

ตัวอย่างคำขอ

Anchor link to
{
"request": {
"application": "XXXXX-XXXXX",
"auth": "SECRET_API_TOKEN",
"notifications": [
{
"content": "Your order is being prepared",
"title": "Food Delivery",
"live_activity": {
"event": "start",
"title": "Order status",
"content-state": {
"status": "Third",
"estimatedTime": "37 min",
"emoji": "👨‍🍳"
},
"attributes-type": "FoodDeliveryAttributes",
"attributes": {}
},
"live_activity_id": "FIRST_LIVE_ACTIVITY",
"filter": "FILTER_NAME_1"
}
]
}
}

ตัวอย่างการตอบกลับ

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"XXXXX-XXXXXXXX-XXXXXXXX"
]
}
}

หมายเหตุ:

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

updateLiveActivity

Anchor link to

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

อนุญาตให้อัปเดตและสิ้นสุด iOS Live Activities

Request body

Anchor link to
พารามิเตอร์ประเภทจำเป็น/ทางเลือกคำอธิบาย
authStringจำเป็นโทเค็นการเข้าถึง API จาก Pushwoosh Control Panel
applicationStringจำเป็นรหัสแอปพลิเคชัน Pushwoosh
notificationsArrayจำเป็นอาร์เรย์ JSON ของพารามิเตอร์ข้อความ ดูรายละเอียดในตาราง Notifications ด้านล่าง

Notifications

Anchor link to

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

พารามิเตอร์ประเภทจำเป็น/ทางเลือกคำอธิบาย
live_activityObjectจำเป็นข้อมูล Live Activity เพื่ออัปเดต Live Activity ใน iOS
live_activity.eventStringจำเป็นระบุประเภทของเหตุการณ์ ใช้ "update" เพื่ออัปเดต Live Activity หรือ "end" เพื่อปิด
live_activity.content-stateObjectจำเป็นอ็อบเจกต์ที่มีคู่คีย์-ค่าที่ใช้ในการส่งข้อมูลไปยัง Live Activity เพื่ออัปเดตเนื้อหา
live_activity.dismissal-dateIntegerทางเลือกเวลา (เป็นวินาที) ที่ Live Activity ควรจะสิ้นสุด
live_activity_idStringจำเป็นตัวระบุที่ไม่ซ้ำกันของ Live Activity ที่จะอัปเดต ต้องตรงกับ live_activity_id ที่ใช้ใน startLiveActivity การอัปเดตจะถูกส่งไปยังอุปกรณ์ทั้งหมดที่กิจกรรมนี้ได้เริ่มต้นไว้
live_activity.relevance-scoreIntegerทางเลือกบอกระบบ iOS ว่า Live Activity ใดมีความสำคัญสูงกว่ากิจกรรมอื่น ๆ รับค่าตั้งแต่ 1 ถึงอนันต์ (แนะนำให้ใช้ค่าไม่เกิน 100)
live_activity.stale-dateIntegerทางเลือกเวลา (เป็นวินาที) ที่แสดงถึงวันที่ Live Activity กลายเป็นข้อมูลเก่าหรือไม่ทันสมัย

ตัวอย่างคำขอ

Anchor link to
{
"request": {
"application": "XXXXX-XXXXX",
"auth": "SECRET_API_TOKEN",
"notifications": [
{
"live_activity": {
"event": "update",
"title": "Live Activity Update",
"content-state": {
"status": "second 66",
"estimatedTime": "66 min",
"emoji": "👨‍"
},
"relevance-score": 60
},
"live_activity_id": "FIRST_LIVE_ACTIVITY"
}
]
}
}

ตัวอย่างการตอบกลับ

Anchor link to
{
"status_code": 200,
"status_message": "OK",
"response": {
"Messages": [
"XXXXX-XXXXXXXX-XXXXXXXX"
]
}
}

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

กิจกรรมหลายรายการต่ออุปกรณ์

Anchor link to

คุณสามารถเริ่มต้น Live Activities หลายรายการบนอุปกรณ์เดียวกันได้โดยการเรียกใช้ startLiveActivity หลายครั้งด้วยค่า live_activity_id ที่แตกต่างกัน

ตัวอย่างเช่น หากคุณเริ่มต้นสองกิจกรรม: FIRST_LIVE_ACTIVITY ด้วย filter: FILTER_NAME_1 และ SECOND_LIVE_ACTIVITY ด้วย filter: FILTER_NAME_2 อุปกรณ์ที่ตรงกับทั้งสองฟิลเตอร์จะมีกิจกรรมทั้งสองทำงานพร้อมกัน

หากต้องการอัปเดตหนึ่งในนั้น ให้ส่ง live_activity_id ของกิจกรรมนั้นไปยัง updateLiveActivity การอัปเดตจะถูกส่งไปยังอุปกรณ์ทั้งหมดที่กิจกรรมนั้นถูกสร้างขึ้น กิจกรรมอื่นจะไม่ได้รับผลกระทบ

พารามิเตอร์ relevance-score จะควบคุมลำดับความสำคัญในการแสดงผลเมื่อมี Live Activities หลายรายการทำงานอยู่บนอุปกรณ์เดียวกัน หากพื้นที่หน้าจอมีจำกัดหรือกิจกรรมถูกจัดกลุ่ม กิจกรรมที่มีค่าสูงกว่าจะแสดงด้วยลำดับความสำคัญที่สูงกว่า