chrome.notifications

Описание

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

Разрешения

notifications

Типы

NotificationBitmap

NotificationButton

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

  • iconUrl

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

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

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

  • заголовок

    нить

NotificationItem

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

  • сообщение

    нить

    Дополнительная информация об этом товаре.

  • заголовок

    нить

    Заголовок одного из пунктов уведомления в списке рассылки.

NotificationOptions

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

  • appIconMaskUrl

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

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

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

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

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

  • кнопки

    Кнопка уведомления [] необязательный

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

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

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

    Измените содержимое уведомлений, используя шрифт меньшего толщины.

  • eventTime

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

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

  • iconUrl

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

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

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

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

  • imageUrl

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

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

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

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

  • isClickable

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

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

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

  • предметы

    NotificationItem [] optional

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

  • сообщение

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

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

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

  • приоритет

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

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

  • прогресс

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

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

  • requireInteraction

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

    Chrome 50+

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

  • тихий

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

    Chrome 70+

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

  • заголовок

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

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

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

  • тип

    TemplateType ( необязательный параметр)

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

PermissionLevel

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

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

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

TemplateType

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

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

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

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

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

Методы

clear()

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

Удаляет указанное уведомление.

Параметры

  • notificationId

    нить

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

Возвраты

  • Promise<boolean>

    Chrome 116+

    Возвращает Promise, который разрешается, указывая, существовало ли соответствующее уведомление.

create()

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

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

Параметры

  • notificationId

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

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

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

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

Возвраты

  • Promise<string>

    Chrome 116+

    Возвращает промис, который разрешается с идентификатором уведомления (указанным или сгенерированным), представляющим созданное уведомление.

getAll()

chrome.notifications.getAll(): Promise<object>

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

Возвраты

  • Promise<object>

    Chrome 116+

    Возвращает Promise, который разрешается с набором notification_ids, имеющихся в системе в данный момент.

getPermissionLevel()

chrome.notifications.getPermissionLevel(): Promise<PermissionLevel>

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

Возвраты

  • Chrome 116+

    Возвращает промис, который разрешается с текущим уровнем доступа.

update()

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

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

Параметры

  • notificationId

    нить

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

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

Возвраты

  • Promise<boolean>

    Chrome 116+

    Возвращает Promise, который разрешается, указывая, существовало ли соответствующее уведомление.

События

onButtonClicked

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

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

Параметры

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

    функция

    Параметр callback выглядит следующим образом:

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

    • notificationId

      нить

    • buttonIndex

      число

onClicked

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

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

Параметры

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

    функция

    Параметр callback выглядит следующим образом:

    (notificationId: string) => void

    • notificationId

      нить

onClosed

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

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

Параметры

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

    функция

    Параметр callback выглядит следующим образом:

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

    • notificationId

      нить

    • byUser

      логический

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