نکات وبسرویس برای اپ iOS
ارسال iOS از مسیرهای مشترک وبسرویس پوشفا انجام میشود؛ این صفحه تفاوت APNs، Deep Link، Rich Notification، Action و فیلتر پلتفرم را توضیح میدهد.
ثبت دستگاه با SDK، ارسال با API
اپ با Pushfa.initialize و requestNotificationPermission عضو میشود و SDK توکن APNs/FCM و شناسه ثابت مخاطب (Subscriber ID) را مدیریت میکند؛ وبسرویس ثبت توکن را دستی فراخوانی نکنید. سرور برای ارسال از همان وبسرویسهای تکی، گروهی، Alias و شناسه ثابت مخاطب (Subscriber ID) استفاده میکند.
ارسال گروهی فقط به iOS
در مسیرهای وبسرویس گروهی مشترک، platform را ios قرار دهید. اگر سرویس فقط برای اپ iOS ساخته شده است، api_public_key و api_private_key همان سرویس را استفاده کنید.
{
"api_public_key": "YOUR_PUBLIC_KEY",
"api_private_key": "YOUR_PRIVATE_KEY",
"topic": "all",
"platform": "ios",
"device": "mobile",
"title": "سفارش شما ارسال شد",
"body": "برای مشاهده جزئیات لمس کنید",
"link_url": "myapp://orders/9182",
"collapse_id": "order-9182",
"additional_data": {"order_id": 9182},
"sendTime": "current"
}
فیلدهای مهم iOS
| فیلد | رفتار در iOS |
|---|---|
| link_url | Universal Link، Custom URL Scheme یا مسیر نسبی قابلحل با deepLinkBaseURL |
| image_url | با mutable-content و PushfaExtension پیش از نمایش دانلود میشود |
| collapse_idCollapse IDPro | به apns-collapse-id تبدیل و برای محدودیت APNs به ۶۴ بایت کوتاه میشود |
| additional_dataAdditional DataPro | در notificationHandler و توابع بازگشتی SDK قابلخواندن است |
| btn_left / btn_right | URL هر Action از دادههای پیام میآید؛ عنوان Actionها هنگام initialize در اپ تنظیم میشود |
| silentپوش بیصدا | اعلان همچنان نمایش داده میشود و فقط صدا حذف میشود؛ این گزینه پیام data-only نیست |
| platform=ios | در ارسال گروهی فقط مخاطبان دارای platform برابر ios را هدف میگیرد |
Rich Notification و گزارشها
برای تصویر و ثبت دقیقتر Delivery در پسزمینه، Product مستقل PushfaExtension را به Notification Service Extension اضافه کنید. برای ثبت کلیک و بازشدن Deep Link، اپ دارای UNUserNotificationCenterDelegate باید response را به Pushfa.handleNotificationResponse فوروارد کند.