أصبحت الإشعارات الفورية متاحة الآن على جميع المتصفّحات

أرسِل إشعارات مفيدة في الوقت المناسب إلى المستخدمين.

تمّت توحيد الإشعارات الفورية في عام 2016 مع إصدار Push API وNotification API، اللتين تشكّلان جزءًا من مجموعة عمل تطبيقات الويب في W3C. توفّر واجهات برمجة التطبيقات هذه الوظائف اللازمة لمطوّري الويب لدمج الإشعارات الفورية في تطبيقات الويب الخاصة بهم وللمستخدمين لتلقّي الإشعارات والتفاعل معها على متصفّحات الويب. الرسائل الفورية هي إشعارات يتم إرسالها إلى متصفح الويب للمستخدم من موقع ويب أو تطبيق ومنحه المستخدم إذنًا سابقًا لإرسال الإشعارات. ويمكن استخدام هذه الرسائل لتنبيه المستخدم بشأن محتوى جديد أو تحديثات، أو تذكيره بالأحداث أو المواعيد النهائية القادمة، أو تقديم معلومات مهمة أخرى. يمكن أن تكون الرسائل الفورية مفيدة بشكل خاص للتطبيقات التي تحتاج إلى تقديم معلومات ذات صلة في الوقت المناسب إلى المستخدمين، مثل تطبيقات الأخبار أو التطبيقات الرياضية، أو لمواقع التجارة الإلكترونية التي تريد إرسال إشعارات إلى المستخدمين بشأن العروض الخاصة أو التخفيضات.

للاشتراك في الإشعارات الفورية، تحقّق أولاً ممّا إذا كان المتصفّح يتيح هذه الميزة من خلال البحث عن العنصرَين serviceWorker وPushManager في العنصرَين navigator وwindow.

إذا كانت الإشعارات الفورية متاحة، استخدِم الكلمتَين الرئيسيتَين async وawait لتسجيل مشغّل الخدمات والاشتراك في خدمة تلقّي الإشعارات الفورية. إليك مثال على كيفية إجراء ذلك باستخدام JavaScript:

// Check if the browser supports push notifications.
if ("serviceWorker" in navigator && "PushManager" in window) {
  try {
    // Register the service worker.
    const swReg = await navigator.serviceWorker.register("/sw.js");

    // Subscribe for push notifications.
    const pushSubscription = await swReg.pushManager.subscribe({
      userVisibleOnly: true
    });

    // Save the push subscription to the database.
    savePushSubscription(pushSubscription);
  } catch (error) {
    // Handle errors.
    console.error("Error subscribing for push notifications.", error);
  }
} else {
  // Push notifications are not supported by the browser.
  console.error("Push notifications are not supported by the browser.");
}

توافق المتصفّح

  • Chrome: 42
  • ‫Edge: 17
  • Firefox: 44
  • ‫Safari: 16

المصدر

مراجع إضافية