واجهة برمجة تطبيقات الأنشطة المباشرة لنظام iOS
توثيق Apple:
startLiveActivity
Anchor link toPOST https://api.pushwoosh.com/json/1.3/startLiveActivity
يسمح بإنشاء الأنشطة المباشرة لنظام iOS.
نص الطلب
Anchor link to| المعلمة | النوع | مطلوب/اختياري | الوصف |
|---|---|---|---|
| application | String | مطلوب | رمز تطبيق Pushwoosh |
| auth | String | مطلوب | رمز الوصول إلى واجهة برمجة التطبيقات (API access token) من لوحة تحكم Pushwoosh. |
| notifications | Array | مطلوب | مصفوفة JSON لمعلمات الرسالة. انظر التفاصيل في جدول الإشعارات أدناه. |
الإشعارات
Anchor link toالمعلمات المستخدمة في مصفوفة notifications:
| المعلمة | النوع | مطلوب/اختياري | الوصف |
|---|---|---|---|
| content | String | مطلوب | محتوى احتياطي للأجهزة التي تعمل بإصدارات iOS أقل من 16.1 والتي لا تدعم الأنشطة المباشرة. على iOS 16.1+ (مع دعم الأنشطة المباشرة)، يتم الحصول على المحتوى من حقل live_activity. |
| title | String | اختياري | عنوان رسالة الإشعار. |
| live_activity | Object | مطلوب | بيانات النشاط المباشر لإنشاء نشاط مباشر في iOS. |
| live_activity.content-state | Object | مطلوب | محتوى إشعار النشاط المباشر. |
| live_activity.attributes-type | String | مطلوب | نوع السمات المستخدمة في النشاط المباشر. |
| live_activity.attributes | Object | مطلوب | سمات النشاط المباشر. |
| live_activity_id | String | مطلوب | معرف فريد للنشاط المباشر. يستخدم لاستهداف هذا النشاط عند استدعاء updateLiveActivity. يجب أن يكون فريدًا لكل جلسة نشاط. |
| filter | String | اختياري | اسم مرشح Pushwoosh (شريحة). انظر اسم الشريحة / المرشح. سيتم بدء النشاط المباشر على جميع الأجهزة التي تطابق هذا المرشح. |
| devices | Array of Strings | اختياري | قائمة من رموز الأجهزة. سيتم بدء النشاط المباشر فقط على الأجهزة المحددة. |
مثال على الطلب
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" } ] }}{ "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": "SECOND_LIVE_ACTIVITY", "devices": ["first_third", "second_device"] } ] }}مثال على الاستجابة
Anchor link to{ "status_code": 200, "status_message": "OK", "response": { "Messages": [ "XXXXX-XXXXXXXX-XXXXXXXX" ] }}ملاحظة:
اقرأ هذا المقال لمعرفة المزيد حول العمل مع الأنشطة المباشرة باستخدام Pushwoosh iOS SDK.
updateLiveActivity
Anchor link toPOST https://api.pushwoosh.com/json/1.3/updateLiveActivity
يسمح بتحديث وإنهاء الأنشطة المباشرة لنظام iOS
نص الطلب
Anchor link to| المعلمة | النوع | مطلوب/اختياري | الوصف |
|---|---|---|---|
| auth | String | مطلوب | رمز الوصول إلى واجهة برمجة التطبيقات (API access token) من لوحة تحكم Pushwoosh. |
| application | String | مطلوب | رمز تطبيق Pushwoosh |
| notifications | Array | مطلوب | مصفوفة JSON لمعلمات الرسالة. انظر التفاصيل في جدول الإشعارات أدناه. |
الإشعارات
Anchor link toالمعلمات المستخدمة في مصفوفة notifications:
| المعلمة | النوع | مطلوب/اختياري | الوصف |
|---|---|---|---|
| live_activity | Object | مطلوب | بيانات النشاط المباشر لتحديث النشاط المباشر في iOS. |
| live_activity.event | String | مطلوب | يحدد نوع الحدث. استخدم "update" لتحديث النشاط المباشر أو "end" لإغلاقه. |
| live_activity.content-state | Object | مطلوب | كائن يحتوي على أزواج مفتاح-قيمة يستخدم لتمرير البيانات إلى النشاط المباشر لتحديث محتواه. |
| live_activity.dismissal-date | Integer | اختياري | الوقت (بالثواني) الذي يجب أن ينتهي فيه النشاط المباشر. |
| live_activity_id | String | مطلوب | المعرف الفريد للنشاط المباشر المراد تحديثه. يجب أن يتطابق مع live_activity_id المستخدم في startLiveActivity. سيتم تسليم التحديث إلى جميع الأجهزة التي بدأ عليها هذا النشاط. |
| live_activity.relevance-score | Integer | اختياري | يخبر نظام iOS أي نشاط مباشر له أولوية أعلى من غيره. يقبل القيم من 1 إلى ما لا نهاية (يوصى بالقيم حتى 100). |
| live_activity.stale-date | Integer | اختياري | الوقت (بالثواني) الذي يمثل التاريخ الذي يصبح فيه النشاط المباشر قديمًا أو غير محدث. |
مثال على الطلب
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" ] }}اقرأ هذا المقال لمعرفة المزيد حول العمل مع الأنشطة المباشرة باستخدام Pushwoosh iOS SDK.
أنشطة متعددة لكل جهاز
Anchor link toيمكنك بدء أنشطة مباشرة متعددة على نفس الجهاز عن طريق استدعاء startLiveActivity عدة مرات بقيم live_activity_id مختلفة.
على سبيل المثال، إذا بدأت نشاطين: FIRST_LIVE_ACTIVITY مع filter: FILTER_NAME_1 و SECOND_LIVE_ACTIVITY مع filter: FILTER_NAME_2، فإن الجهاز الذي يطابق كلا المرشحين سيشغل كلا النشاطين في وقت واحد.
لتحديث أحدهما، مرر live_activity_id الخاص به إلى updateLiveActivity. يتم تسليم التحديث إلى جميع الأجهزة التي تم إنشاء هذا النشاط عليها. لا يتأثر النشاط الآخر.
تتحكم معلمة relevance-score في أولوية العرض عندما تكون هناك أنشطة مباشرة متعددة نشطة على نفس الجهاز. إذا كانت مساحة الشاشة محدودة أو تم تجميع الأنشطة، يتم عرض النشاط ذي القيمة الأعلى بأولوية أعلى.