توسعه‌دهندگان Web Push / PWA

رویدادهای Web Push در مرورگر

رویدادهای آماده‌شدن پروفایل، ثبت موفق توکن، دریافت پیام و درخواست عضویت سفارشی در مرورگر؛ آماده‌شدن شناسه به‌تنهایی به معنی پذیرش اعلان نیست.

رویدادهای اصلی

رویدادزمان اجراداده
pushfaSubscriberId شناسه پروفایل آماده یا بازیابی شده؛ به‌تنهایی نشانه پذیرش اعلان نیست. event.detail = subscriber_id
pushfaTokenChange توکن جدید یا تغییریافته با موفقیت در پوشفا ثبت شده است. event.detail = token
pushfaMessage پیام در حالت استفاده از صفحه یا اپ دریافت شده است. داده‌های پیام و additional_data
pushfaCustomPromptRequest زمان نمایش درخواست عضویت سفارشی رسیده است. بدون داده‌های پیام الزامی

نمونه اتصال

window.addEventListener('pushfaTokenChange', (event) => {
  if (!event.detail || !('Notification' in window) || Notification.permission !== 'granted') return;
  const subscriberId = window.Pushfa.getSubscriberId();
  if (!subscriberId) return;
  // فقط نمایش شناسه؛ نمونه کامل ذخیره در صفحه دریافت شناسه است.
  console.log('subscriber:', subscriberId);
});

window.addEventListener('pushfaMessage', (event) => {
  console.log('foreground payload:', event.detail);
});

نکته زمان بارگذاری

شنونده را پیش از بارگذاری SDK ثبت کنید تا اولین رویداد ثبت توکن را از دست ندهید. برای کادر آماده از pushfaTokenChange، و برای دکمه اختصاصی از نتیجه requestPermission پس از کلیک استفاده کنید. فقط با اجازه granted، توکن و شناسه غیرخالی، subscriber_id را به بک‌اند بفرستید. در بک‌اند رکورد موجود را دوباره اضافه نکنید. دو نمونه کامل در صفحه دریافت شناسه هستند.

نمونه کامل ذخیره شناسه

شناسه پایدار مخاطب و سازگاری با کلیدهای قدیمی

از subscriber_id برای یک مخاطب و subscriber_ids[] برای چند مخاطب استفاده کنید؛ این شناسه‌ها با چرخش توکن تغییر نمی‌کنند و پایدارترند. کلیدهای fcm_token و fcm_tokens[] به دلیل پایداری کمتر منسوخ شده‌اند، اما برای سازگاری همچنان پشتیبانی می‌شوند. ارسال هم‌زمان subscriber_id و fcm_token یا subscriber_ids و fcm_tokens، حتی با مقدار خالی، خطای اعتبارسنجی 422 می‌دهد.

Ctrl+I