راکت
حل شده

نوتیفیکیشن در pwa

4 پاسخ

سلام دوستان من میخوام برای یکسری کاربران سایت PWA یک نوتیفیکشن ارسال کنم. آیا میشه فقط برای یکسری کاربرانم نوتیفیکشن ارسال کنم؟

ثبت پرسش جدید

پاسخ‌ها

4
سینا شاه‌اویسی
سینا شاه‌اویسی
@sinashahoveisi

تخصص: برنامه نویس

بهترین پاسخ

سلام باید با استفاده از کد زیر توکن کاربر رو بگیرید:

import firebase from 'firebase/app';

try {
    const messaging = firebase.messaging();
    params.token = await messaging.getToken();
  } catch {
    params.token = 'NOT_DETECTED';
  }

حالا که این توکن رو دارید باید به سمت سرور خودتون ارسال کنید و توی دیتابیس سرور این توکن رو ذخیره کنید و مشخص کنید این توکن برای چه کاربریه تا وقتی که خواستید به این کاربر خاص نوتیفیکیشن ارسال کنید، با استفاده از توکنش این کار را انجام بدید.

وقتی که توکن رو سمت سرور گرفتید حالا همه چی برای ارسال نوتیفیکیشن به کاربر در سمت سرور آمادست.

برای ارسال از سمت سرور با nodeJs باید یک درخواست با متد POST به https://fcm.googleapis.com/fcm/send ارسال کنید که بدنه این درخواست به این صورت باید باشه:

{"registration_ids": ["fPsKvZPac_DbsMp8q86_zZjTjQ61_kJAxIInk7vHyWYMJkx_nhLFTDC4vTn0W5q5ZjLseTkFdjrJ2Kz-shYeRqOU0LYL_QIjW3TD716f0"],
    "collapse_key":  "example",
                "time_to_live": 122000,
                "notification": {
                    "title": "test",
                    "body": "body",
                    "icon": "https://example.ir//images/logo.png",
                    "tag":  "test"
                },
                "priority": "high"}

که در این بدنه registrationids همان توکن فردی که میخواید بهش نوتیفیکیشن ارسال کنید.

امیرحسین عنبری
امیرحسین عنبری
@amiranbari33

تخصص: Web application developer

کسی نمیتونه کمکی کنه دوستان عزیز؟

حسام موسوی
حسام موسوی
@hesammousavi

تخصص: طراح و برنامه نویس

درود بر شما بله چرا نشه بستگی داره که شما از چه سرویسی برای ثبت notification کاربر استفاده کردید مثلا در firebase که ایران رو تحریم کرده ساده میشه

شاید پاسخ شما همین‌جا باشد

امیرحسین عنبری
امیرحسین عنبری
@amiranbari33

تخصص: Web application developer

@hesammousavi
از firebase استفاده میکنم. توی داکیومنت راهنمایی داره؟
از سمت سرور باید چیکار کنم؟

برای ارسال پاسخ لازم است وارد شده یا ثبت‌نام کنید

ورود یا ثبت‌نام