chrome.notifications

Описание

Используйте API chrome.notifications для создания расширенных уведомлений с использованием шаблонов и показа этих уведомлений пользователям на панели задач.

Разрешения

notifications

Типы

NotificationBitmap

NotificationButton

Характеристики

  • значокURL

    строка необязательна

    Устарело с Chrome 59.

    Значки кнопок не видны пользователям Mac OS X.

  • заголовок

    нить

NotificationItem

Характеристики

  • сообщение

    нить

    Дополнительные сведения об этом товаре.

  • заголовок

    нить

    Название одного элемента списка уведомлений.

NotificationOptions

Характеристики

  • appIconMaskUrl

    строка необязательна

    Устарело с Chrome 59.

    Маска значка приложения не видна для пользователей Mac OS X.

    URL-адрес маски значка приложения. URL-адреса имеют те же ограничения, что и iconUrl .

    Маска значка приложения должна быть в альфа-канале, так как будет учитываться только альфа-канал изображения.

  • кнопки

    NotificationButton [] необязательно

    Текст и значки для двух кнопок действия уведомлений.

  • контекстСообщение

    строка необязательна

    Альтернативное содержимое уведомлений с более мелким шрифтом.

  • время события

    номер необязательно

    Временная метка, связанная с уведомлением, в миллисекундах после эпохи (например, Date.now() + n ).

  • значокURL

    строка необязательна

    URL-адрес аватара отправителя, значка приложения или миниатюры для уведомлений об изображениях.

    URL-адреса могут быть URL-адресом данных, URL-адресом большого двоичного объекта или URL-адресом, относящимся к ресурсу в файле .crx этого расширения.

    **Примечание.**Это значение необходимо для метода notifications.create () .

  • URL-адрес изображения

    строка необязательна

    Устарело с Chrome 59.

    Изображение не отображается для пользователей Mac OS X.

    URL-адрес миниатюры изображения для уведомлений типа изображения. URL-адреса имеют те же ограничения, что и iconUrl .

  • кликабельно

    логическое значение необязательно

    Устарело с Chrome 67.

    Эта подсказка пользовательского интерфейса игнорируется начиная с Chrome 67.

  • предметы

    NotificationItem [] необязательно

    Элементы для уведомлений с несколькими элементами. Пользователи Mac OS X видят только первый элемент.

  • сообщение

    строка необязательна

    Основное содержание уведомления.

    **Примечание.**Это значение необходимо для метода notifications.create () .

  • приоритет

    номер необязательно

    Приоритет варьируется от -2 до 2. -2 — самый низкий приоритет. 2 самый высокий. Ноль — значение по умолчанию. На платформах, которые не поддерживают центр уведомлений (Windows, Linux и Mac), значения -2 и -1 приводят к ошибке, поскольку уведомления с такими приоритетами не будут отображаться вообще.

  • прогресс

    номер необязательно

    Текущий прогресс варьируется от 0 до 100.

  • requireInteraction

    логическое значение необязательно

    Хром 50+

    Указывает, что уведомление должно оставаться видимым на экране до тех пор, пока пользователь не активирует или не закроет уведомление. По умолчанию это значение false.

  • тихий

    логическое значение необязательно

    Хром 70+

    Указывает, что при отображении уведомления не должно быть никаких звуков или вибраций. По умолчанию это значение false.

  • заголовок

    строка необязательна

    Название уведомления (например, имя отправителя электронного письма).

    **Примечание.**Это значение необходимо для метода notifications.create () .

  • тип

    Тип шаблона необязательно

    Какой тип уведомления отображать. Требуется для метода notifications.create .

PermissionLevel

Перечисление

"предоставленный"
Указывает, что пользователь решил показывать уведомления из приложения или расширения. Это значение по умолчанию во время установки.

"отклонен"
Указывает, что пользователь решил не показывать уведомления от приложения или расширения.

TemplateType

Перечисление

"базовый"
Содержит значок, заголовок, сообщение, развернутое сообщение и до двух кнопок.

"изображение"
Содержит значок, заголовок, сообщение, развернутое сообщение, изображение и до двух кнопок.

"список"
Содержит значок, заголовок, сообщение, элементы и до двух кнопок. Пользователи Mac OS X видят только первый элемент.

"прогресс"
Содержит значок, заголовок, сообщение, прогресс и до двух кнопок.

Методы

clear()

Обещать
chrome.notifications.clear(
  notificationId: string,
  callback?: function,
)

Очищает указанное уведомление.

Параметры

  • идентификатор уведомления

    нить

    Идентификатор уведомления, которое необходимо удалить. Это возвращается методом notifications.create .

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (wasCleared: boolean) => void

    • былоочищено

      логическое значение

Возврат

  • Обещание <логическое значение>

    Хром 116+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

create()

Обещать
chrome.notifications.create(
  notificationId?: string,
  options: NotificationOptions,
  callback?: function,
)

Создает и отображает уведомление.

Параметры

  • идентификатор уведомления

    строка необязательна

    Идентификатор уведомления. Если он не установлен или не пуст, идентификатор будет сгенерирован автоматически. Если оно соответствует существующему уведомлению, этот метод сначала очищает это уведомление, прежде чем продолжить операцию создания. Идентификатор не может быть длиннее 500 символов.

    Параметр notificationId является обязательным до версии Chrome 42.

  • Содержание уведомления.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (notificationId: string) => void

    • идентификатор уведомления

      нить

Возврат

  • Обещание<строка>

    Хром 116+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getAll()

Обещать
chrome.notifications.getAll(
  callback?: function,
)

Получает все уведомления этого приложения или расширения.

Параметры

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (notifications: object) => void

    • уведомления

      объект

Возврат

  • Обещание<объект>

    Хром 116+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

getPermissionLevel()

Обещать
chrome.notifications.getPermissionLevel(
  callback?: function,
)

Получает, включил ли пользователь уведомления от этого приложения или расширения.

Параметры

Возврат

  • Обещание <PermissionLevel>

    Хром 116+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

update()

Обещать
chrome.notifications.update(
  notificationId: string,
  options: NotificationOptions,
  callback?: function,
)

Обновляет существующее уведомление.

Параметры

  • идентификатор уведомления

    нить

    Идентификатор уведомления, которое необходимо обновить. Это возвращается методом notifications.create .

  • Содержимое уведомления, которое требуется обновить.

  • перезвонить

    функция необязательна

    Параметр callback выглядит так:

    (wasUpdated: boolean) => void

    • былоОбновлено

      логическое значение

Возврат

  • Обещание <логическое значение>

    Хром 116+

    Промисы поддерживаются в Манифесте V3 и более поздних версиях, но обратные вызовы предусмотрены для обратной совместимости. Вы не можете использовать оба при одном вызове функции. Промис разрешается с тем же типом, который передается в обратный вызов.

События

onButtonClicked

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

Пользователь нажал кнопку в уведомлении.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

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

    • идентификатор уведомления

      нить

    • кнопкаИндекс

      число

onClicked

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

Пользователь нажал кнопку в области уведомления, где нет кнопок.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    (notificationId: string) => void

    • идентификатор уведомления

      нить

onClosed

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

Уведомление закрыто либо системой, либо действием пользователя.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

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

    • идентификатор уведомления

      нить

    • поПользователь

      логическое значение

onPermissionLevelChanged

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

Пользователь меняет уровень разрешений. Начиная с Chrome 47, только ChromeOS имеет пользовательский интерфейс, который отправляет это событие.

Параметры

onShowSettings

Устарело с Chrome 65.
chrome.notifications.onShowSettings.addListener(
  callback: function,
)

Кнопка пользовательских настроек уведомлений больше не поддерживается.

Пользователь нажал на ссылку, чтобы перейти к настройкам уведомлений приложения. Начиная с Chrome 47, только ChromeOS имеет пользовательский интерфейс, который отправляет это событие. Начиная с Chrome 65, этот пользовательский интерфейс также был удален из ChromeOS.

Параметры

  • перезвонить

    функция

    Параметр callback выглядит так:

    () => void