إرسال رسالة اختبار إلى تطبيق في الخلفية

لبدء استخدام FCM، أنشئ أبسط حالة استخدام وهي: إرسال رسالة إشعار إلى مستخدم محدّد عندما يعمل التطبيق في الخلفية على الجهاز تعرض هذه الصفحة جميع الخطوات اللازمة لتحقيق ذلك، بدءًا من الإعداد إلى التحقّق، وقد تتضمّن الخطوات التي سبق لك إكمالها إذا سبق لك إعداد تطبيق JavaScript لـ FCM.

إعداد حزمة تطوير البرامج (SDK)

أضِف Firebase إلى مشروع JavaScript، إذا لم يسبق لك إجراء ذلك.

الوصول إلى الرمز المميّز للتسجيل

عندما تحتاج إلى استرداد الرمز المميز للتسجيل الحالي لمثيل تطبيق، أولاً طلب أذونات الإشعارات من المستخدم الذي لديه Notification.requestPermission(). عند طلب الإذن كما هو موضّح، يتم عرض رمز مميّز إذا تم منح الإذن أو رفضه. في حال الرفض:

function requestPermission() {
  console.log('Requesting permission...');
  Notification.requestPermission().then((permission) => {
    if (permission === 'granted') {
      console.log('Notification permission granted.');

تتطلّب خدمة FCM ملف firebase-messaging-sw.js. يمكنك إنشاء ملف فارغ ما لم يكن لديك ملف firebase-messaging-sw.js. بهذا الاسم ووضعه في جذر النطاق قبل استرداد الرمز. يمكنك إضافة محتوى ذي مغزى إلى الملف لاحقًا في عملية إعداد العميل.

لاسترداد الرمز المميّز الحالي:

Web

import { getMessaging, getToken } from "firebase/messaging";

// Get registration token. Initially this makes a network call, once retrieved
// subsequent calls to getToken will return from cache.
const messaging = getMessaging();
getToken(messaging, { vapidKey: '<YOUR_PUBLIC_VAPID_KEY_HERE>' }).then((currentToken) => {
  if (currentToken) {
    // Send the token to your server and update the UI if necessary
    // ...
  } else {
    // Show permission request UI
    console.log('No registration token available. Request permission to generate one.');
    // ...
  }
}).catch((err) => {
  console.log('An error occurred while retrieving token. ', err);
  // ...
});

Web

// Get registration token. Initially this makes a network call, once retrieved
// subsequent calls to getToken will return from cache.
messaging.getToken({ vapidKey: '<YOUR_PUBLIC_VAPID_KEY_HERE>' }).then((currentToken) => {
  if (currentToken) {
    // Send the token to your server and update the UI if necessary
    // ...
  } else {
    // Show permission request UI
    console.log('No registration token available. Request permission to generate one.');
    // ...
  }
}).catch((err) => {
  console.log('An error occurred while retrieving token. ', err);
  // ...
});

بعد الحصول على الرمز المميّز، أرسِله إلى خادم تطبيقك وخزِّنه باستخدام الطريقة المفضّلة لديك.

إرسال رسالة إشعار اختباري

  1. ثبِّت التطبيق وشغِّله على الجهاز المستهدَف. على أجهزة Apple، ستحتاج إلى على قبول طلب الحصول على إذن بتلقي الإشعارات عن بُعد.

  2. تأكَّد من أنّ التطبيق قيد التشغيل في الخلفية على الجهاز.

  3. في وحدة تحكُّم Firebase، افتح صفحة "المراسلة".

  4. إذا كانت هذه هي رسالتك الأولى، فحدد إنشاء رسالتك الأولى حملة.

    1. اختَر رسائل إشعارات Firebase ثمّ إنشاء.
  5. إذا لم يكن الأمر كذلك، اختَر حملة جديدة من علامة التبويب الحملات. ثم الإشعارات.

  6. أدخِل نص الرسالة. وجميع الحقول الأخرى اختيارية.

  7. اختَر إرسال رسالة اختبار من اللوحة على يسار الصفحة.

  8. في الحقل الذي يحمل عبارة إضافة الرمز المميّز للتسجيل في خدمة "المراسلة عبر السحابة الإلكترونية من Firebase"، أدخِل معلومات التسجيل الذي حصلت عليه في قسم سابق من هذا الدليل.

  9. انقر على اختبار.

بعد اختيار اختبار، من المفترض أن يتلقّى جهاز العميل المستهدَف (الذي يعمل التطبيق عليه في الخلفية) الإشعار.

الخطوات التالية

إرسال الرسائل إلى التطبيقات التي تعمل في المقدّمة

بعد إرسال رسائل الإشعارات بنجاح عندما يكون تطبيقك في الخلفية، اطّلِع على مقالة تلقّي الرسائل في برنامج JavaScript لبدء الإرسال إلى التطبيقات التي تعمل في المقدّمة.

الاستفادة من ميزات إضافية في الإشعارات

لتجاوز رسائل الإشعارات وإضافة سلوكيات أخرى أكثر تقدمًا إلى يمكنك الاطّلاع على: