chrome.notifications

refresh date: 2026-09-25 robots: noindex

الوصف

استخدِم واجهة برمجة التطبيقات chrome.notifications لإنشاء إشعارات غنية باستخدام النماذج وعرض هذه الإشعارات للمستخدمين في لوحة النظام.

الأذونات

notifications

الأنواع

NotificationBitmap

NotificationButton

الخصائص

  • iconUrl

    string اختياري

    تم إيقافها نهائيًا منذ الإصدار 59 من Chrome

    لا تظهر رموز الأزرار لمستخدمي Mac OS X.

  • title

    سلسلة

NotificationItem

الخصائص

  • رسالة

    سلسلة

    تفاصيل إضافية حول هذا العنصر

  • title

    سلسلة

    عنوان عنصر واحد في إشعار قائمة

NotificationOptions

الخصائص

  • appIconMaskUrl

    string اختياري

    تم إيقافها نهائيًا منذ الإصدار 59 من Chrome

    لا يظهر قناع رمز التطبيق لمستخدمي Mac OS X.

    عنوان URL لقناع رمز التطبيق تنطبق على عناوين URL القيود نفسها التي تنطبق على iconUrl.

    يجب أن يكون قناع رمز التطبيق في قناة ألفا، لأنّه سيتم أخذ قناة ألفا للصورة فقط في الاعتبار.

  • الأزرار

    NotificationButton[] اختيارية

    النص والرموز لما يصل إلى زرَّين من أزرار الإجراءات في الإشعارات

  • contextMessage

    string اختياري

    محتوى الإشعار البديل بخط أقل سُمكًا

  • eventTime

    number اختيارية

    طابع زمني مرتبط بالإشعار، بالملي ثانية بعد الحقبة (مثلاً Date.now() + n).

  • iconUrl

    string اختياري

    عنوان URL لأفاتار المُرسِل أو رمز التطبيق أو صورة مصغّرة لإشعارات الصور

    يمكن أن تكون عناوين URL عبارة عن عنوان URL للبيانات أو عنوان URL لملف ثنائي كبير أو عنوان URL مرتبط بمورد ضمن ملف ‎ .crx الخاص بهذه الإضافة

    **ملاحظة:**هذه القيمة مطلوبة لطريقة notifications.create().

  • imageUrl

    string اختياري

    تم إيقافها نهائيًا منذ الإصدار 59 من Chrome

    لا تظهر الصورة لمستخدمي Mac OS X.

    عنوان URL للصورة المصغّرة للإشعارات من نوع الصورة تنطبق على عناوين URL القيود نفسها التي تنطبق على iconUrl.

  • isClickable

    قيمة منطقية اختيارية

    تم إيقافها نهائيًا منذ الإصدار 67 من Chrome

    يتم تجاهل تلميح واجهة المستخدم هذا اعتبارًا من الإصدار 67 من Chrome

  • items

    NotificationItem[] اختياري

    عناصر لإشعارات متعددة العناصر يرى مستخدمو نظام التشغيل Mac OS X العنصر الأول فقط.

  • رسالة

    string اختياري

    المحتوى الرئيسي للإشعار

    **ملاحظة:**هذه القيمة مطلوبة لطريقة notifications.create().

  • الحملة

    number اختيارية

    تتراوح الأولوية من -2 إلى 2. ‫-2 هي الأولوية الأدنى. والمستوى 2 هو الأعلى. القيمة التلقائية هي صفر. على الأنظمة الأساسية التي لا تتيح مركز إشعارات (Windows وLinux وMac)، يؤدي الإعدادان ‎-2 و‎-1 إلى حدوث خطأ لأنّ الإشعارات ذات الأولويات لن تظهر على الإطلاق.

  • التقدم

    number اختيارية

    يتراوح مستوى التقدّم الحالي بين 0 و100.

  • requireInteraction

    قيمة منطقية اختيارية

    الإصدار 50 من Chrome أو الإصدارات الأحدث

    يشير ذلك إلى أنّ الإشعار يجب أن يظل مرئيًا على الشاشة إلى أن يفعّله المستخدم أو يغلقه. ويتم ضبط القيمة التلقائية على "خطأ".

  • الوضع الصامت

    قيمة منطقية اختيارية

    الإصدار 70 من Chrome أو الإصدارات الأحدث

    يشير هذا الخيار إلى أنّه يجب عدم إصدار أي أصوات أو اهتزازات عند عرض الإشعار. ويتم ضبط القيمة التلقائية على "خطأ".

  • title

    string اختياري

    عنوان الإشعار (مثل اسم المُرسِل للبريد الإلكتروني)

    **ملاحظة:**هذه القيمة مطلوبة لطريقة notifications.create().

  • النوع

    TemplateType اختيارية

    نوع الإشعار الذي سيتم عرضه مطلوبة لطريقة notifications.create.

PermissionLevel

Enum

"granted"
يشير إلى أنّ المستخدم قد اختار عرض الإشعارات من التطبيق أو الإضافة. هذا هو الخيار التلقائي في وقت التثبيت.

"denied"
يحدّد أنّ المستخدم قد اختار عدم عرض الإشعارات من التطبيق أو الإضافة.

TemplateType

Enum

"basic"
يحتوي على رمز وعنوان ورسالة وexpandedMessage وزرَّين كحدّ أقصى.

"image"
يحتوي على رمز وعنوان ورسالة وexpandedMessage وصورة وزرَّين كحدّ أقصى.

"list"
يحتوي على رمز وعنوان ورسالة وعناصر وزرَّين كحدّ أقصى. أما مستخدمو نظام التشغيل Mac OS X، فيظهر لهم العنصر الأول فقط.

"progress"
يحتوي على رمز وعنوان ورسالة ومؤشر تقدّم وزرَّين كحدّ أقصى.

الطُرق

clear()

Promise
chrome.notifications.clear(
  notificationId: string,
  callback?: function,
)
: Promise<boolean>

لمحو الإشعار المحدّد

المعلمات

  • notificationId

    سلسلة

    رقم تعريف الإشعار المطلوب محوه يتم عرض هذه القيمة من خلال الإجراء notifications.create.

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (wasCleared: boolean) => void

    • wasCleared

      قيمة منطقية

المرتجعات

  • Promise<boolean>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تعرض هذه الطريقة كائن Promise يتم تحليله للإشارة إلى ما إذا كان هناك إشعار مطابق.

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

create()

Promise
chrome.notifications.create(
  notificationId?: string,
  options: NotificationOptions,
  callback?: function,
)
: Promise<string>

لإنشاء إشعار وعرضه

المعلمات

  • notificationId

    string اختياري

    معرّف الإشعار في حال عدم ضبطه أو تركه فارغًا، سيتم إنشاء معرّف تلقائيًا. إذا كان الإشعار يتطابق مع إشعار حالي، ستزيل هذه الطريقة الإشعار الحالي أولاً قبل المتابعة في عملية الإنشاء. يجب ألا يزيد طول المعرّف عن 500 حرف.

    تكون المَعلمة notificationId مطلوبة قبل الإصدار 42 من Chrome.

  • الخيارات

    محتوى الإشعار

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (notificationId: string) => void

    • notificationId

      سلسلة

المرتجعات

  • وعد<سلسلة>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تعرض هذه الطريقة كائن Promise يتم حله باستخدام معرّف الإشعار (سواء تم توفيره أو إنشاؤه) الذي يمثّل الإشعار الذي تم إنشاؤه.

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

getAll()

Promise
chrome.notifications.getAll(
  callback?: function,
)
: Promise<object>

يسترد هذا الإجراء جميع إشعارات هذا التطبيق أو الإضافة.

المعلمات

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (notifications: object) => void

    • الإشعارات

      عنصر

المرتجعات

  • وعد<كائن>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تعرض هذه الطريقة Promise يتم حلّه باستخدام مجموعة notification_ids المتوفّرة حاليًا في النظام.

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

getPermissionLevel()

Promise
chrome.notifications.getPermissionLevel(
  callback?: function,
)
: Promise<PermissionLevel>

تسترد هذه الطريقة ما إذا كان المستخدم قد فعّل الإشعارات من هذا التطبيق أو الإضافة.

المعلمات

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (level: PermissionLevel) => void

المرتجعات

  • الإصدار 116 من Chrome والإصدارات الأحدث

    تعرض هذه الطريقة كائن Promise يتم حله باستخدام مستوى الإذن الحالي.

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

update()

Promise
chrome.notifications.update(
  notificationId: string,
  options: NotificationOptions,
  callback?: function,
)
: Promise<boolean>

تعديل إشعار حالي

المعلمات

  • notificationId

    سلسلة

    رقم تعريف الإشعار المطلوب تعديله يتم عرض هذه القيمة من خلال الإجراء notifications.create.

  • الخيارات

    محتوى الإشعار الذي تريد تعديله

  • callback

    function اختياري

    تظهر المَعلمة callback على النحو التالي:

    (wasUpdated: boolean) => void

    • wasUpdated

      قيمة منطقية

المرتجعات

  • Promise<boolean>

    الإصدار 116 من Chrome والإصدارات الأحدث

    تعرض هذه الطريقة كائن Promise يتم تحليله للإشارة إلى ما إذا كان هناك إشعار مطابق.

    لا تتوفّر الوعود إلا في الإصدار Manifest V3 والإصدارات الأحدث، وتحتاج المنصات الأخرى إلى استخدام عمليات الاستدعاء.

الفعاليات

onButtonClicked

chrome.notifications.onButtonClicked.addListener(
  callback: function,
)

ضغط المستخدم على زر في الإشعار.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (notificationId: string, buttonIndex: number) => void

    • notificationId

      سلسلة

    • buttonIndex

      الرقم

onClicked

chrome.notifications.onClicked.addListener(
  callback: function,
)

نقَر المستخدم على منطقة في الإشعار لا تحتوي على زر.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (notificationId: string) => void

    • notificationId

      سلسلة

onClosed

chrome.notifications.onClosed.addListener(
  callback: function,
)

تم إغلاق الإشعار، إما من خلال النظام أو من خلال إجراء المستخدم.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    (notificationId: string, byUser: boolean) => void

    • notificationId

      سلسلة

    • byUser

      قيمة منطقية

onPermissionLevelChanged

chrome.notifications.onPermissionLevelChanged.addListener(
  callback: function,
)

يغيّر المستخدم مستوى الإذن. اعتبارًا من الإصدار 47 من Chrome، يتوفّر فقط في ChromeOS واجهة مستخدم ترسل هذا الحدث.

المعلمات

onShowSettings

تم إيقافها نهائيًا منذ الإصدار 65 من Chrome
chrome.notifications.onShowSettings.addListener(
  callback: function,
)

لم يعُد زر إعدادات الإشعارات المخصّصة متاحًا.

نقَر المستخدم على رابط يؤدي إلى إعدادات الإشعارات في التطبيق. اعتبارًا من الإصدار 47 من Chrome، يتوفّر فقط في ChromeOS واجهة مستخدم ترسل هذا الحدث. واعتبارًا من الإصدار 65 من Chrome، تمت إزالة واجهة المستخدم هذه من ChromeOS أيضًا.

المعلمات

  • callback

    دالة

    تظهر المَعلمة callback على النحو التالي:

    () => void