Web + Android + iOS API
وبسرویسهای ارسال مشترک Web Push، Android و iOS
endpointهای ارسال پوشفا برای Web/PWA، Android و iOS یکسان هستند؛ سرویس و مخاطب مقصد تعیین میکنند پیام به کدام پلتفرم تحویل شود.
اصل مشترک
برای ارسال از Backend، تفاوتی در endpointهای اصلی Web، Android و iOS وجود ندارد. همان api_public_key و api_private_key سرویس، همان عنوان و متن و همان روشهای هدفگیری استفاده میشوند. یک token یا Subscriber ID به پروفایل سرویس تعلق دارد و Pushfa آن را از طریق FCM به مقصد مناسب تحویل میدهد.
ثبت دستگاه Android و iOS با SDK نیتیو انجام میشود، اما ارسال پیام از Backend از همین وبسرویسهای مشترک استفاده میکند.
انتخاب endpoint
| نیاز | Endpoint | پلتفرم |
|---|---|---|
| یک token یا Subscriber ID | send-single-message | Web، Android و iOS |
| ارسال تکی سبک | send-single-lite-message | Web، Android و iOS |
| ارسال گروهی سبک | send-group-lite-message | Web، Android و iOS |
| ارسال گروهی با گزارش | send-group-message | Web، Android و iOS |
| همه دستگاههای یک External ID | send-via-user-alias-id | Web، Android و iOS |
| یک یا چند Subscriber ID | send-via-subscriber-id | Web، Android و iOS |
| Custom Alias برچسبدار | send-via-alias | Web، Android و iOS |
| استعلام نتیجه | check-notification-status | Web، Android و iOS |
فیلدهای مشترک پیام
| فیلد | کاربرد |
|---|---|
| title / body | عنوان و متن اصلی |
| link_url | URL وب یا Deep Link/مسیر قابلفهم برای اپ |
| image_url | تصویر اعلان در صورت پشتیبانی مقصد |
| btn_left / btn_right | حداکثر دو Action Button |
| ttl | مدت اعتبار پیام |
| collapse_idCollapse IDPro | ادغام پیام منتظر و جایگزینی اعلان فعال همموضوع |
| silentپوش بیصدا | درخواست اعلان بدون صدا و لرزش |
| additional_dataAdditional DataPro | داده JSON سفارشی برای Service Worker یا SDK نیتیو Android/iOS |
| get_delivery_status / get_click_status | فعالکردن گزارش تحویل و کلیک |
| sendTime / time | ارسال فوری یا زمانبندیشده |
تفاوت فقط در مصرف سمت مقصد است
| موضوع | Web/PWA | Android | iOS |
|---|---|---|---|
| دریافت | Service Worker پوشفا | Pushfa Android SDK | Pushfa iOS SDK و APNs |
| link_url | URL مرورگر | URL، App Link، Custom Scheme یا مسیر داخلی | Universal Link، Custom Scheme یا مسیر داخلی |
| additional_dataAdditional DataPro | event یا payload وب | PushfaMessage.additionalData | notificationHandler payload |
| collapse_idCollapse IDPro | WebPush Topic و tag اعلان | FCM collapse_key و notification tag/id | apns-collapse-id |
| محدودیت پلتفرم | فیلتر platform متناسب با دستگاه مرورگر | platform=android | platform=ios |