SDK v2
ارسال با Subscriber ID
ارسال پوش نوتیفیکیشن با شناسه ثابت مشترک که حتی پس از تغییر توکن FCM معتبر میماند.
چرا Subscriber ID؟
توکن FCM ممکن است در طول زمان تغییر کند. Subscriber ID یک شناسه پایدار است که پوشفا به هر دستگاه اختصاص میدهد. با ذخیره این شناسه روی کاربر سایت خودتان، همیشه میتوانید با همین ID برایش پیام بفرستید — دقیقاً مانند player_id در OneSignal.
دریافت Subscriber ID از مرورگر
پس از عضویت مشترک، میتوانید Subscriber ID را بخوانید و روی کاربرتان ذخیره کنید:
const subscriberId = window.Pushfa.getSubscriberId();
// یا هنگام آماده شدن:
window.addEventListener('pushfaSubscriberId', (e) => {
console.log('subscriber id:', e.detail);
// به سرور ارسال کنید
});
مشاهده در پنل
Subscriber ID هر مشترک در پنل قابل مشاهده و کپی است: سرویسها ← مشترکین ← ستون Subscriber ID.
وبسرویس: ارسال با Subscriber ID
این وبسرویس به کلید عمومی و خصوصی نیاز دارد و یک یا چند Subscriber ID را بهعنوان مقصد میگیرد.
هزینه ارسال بر اساس تعداد مشترکین یافتشده محاسبه میشود. اگر هیچ شناسهای مطابقت نداشته باشد خطا برمیگردد.
| پارامتر | مقدار | اجباری |
|---|---|---|
| subscriber_ids[] | آرایهای از Subscriber IDهای مقصد | بله |
| device | محدودیت دستگاه: all، mobile یا desktop | خیر |
| api_public_key | کلید عمومی سرویس پوشفا | بله |
| api_private_key | کلید خصوصی سرویس پوشفا | بله |
| title | عنوان پوش نوتیفیکیشن | بله |
| body | متن اصلی پوش نوتیفیکیشن | بله |
| link_url | لینک مقصد پس از کلیک روی نوتیفیکیشن (مثال: https://example.com) | خیر |
| image_url | آدرس تصویر ضمیمه نوتیفیکیشن | خیر |
| get_delivery_status | درخواست گزارش تحویل (مقدار 1/0 در ارسال تکی یا true/false در ارسال گروهی) | خیر |
| webhook_url | آدرس وبهوک بومرنگ — در صورت عدم تحویل، نتیجه به این آدرس ارسال میشود | خیر |
| get_click_status | درخواست گزارش کلیک (مقدار 1/0 در ارسال تکی یا true/false در ارسال گروهی) | خیر |
| sendTime | زمان ارسال؛ مقدار current برای ارسال فوری و delay برای زمانبندیشده | بله |
| time | زمان ارسال با فرمت Y-m-d H:i — فقط اگر sendTime برابر delay باشد | اجباری اگر sendTime = delay |
| ttl | عمر نوتیفیکیشن به ثانیه (پیشفرض 86400 = 24 ساعت) | خیر |
curl -X POST https://pushfa.com/api/webservices/send-via-subscriber-id \
-H "Content-Type: application/json" \
-d '{
"api_public_key": "YOUR_PUBLIC_KEY",
"api_private_key": "YOUR_PRIVATE_KEY",
"subscriber_ids": ["SUB-ID-1", "SUB-ID-2"],
"title": "عنوان پیام",
"body": "متن پیام",
"sendTime": "current"
}'