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 .

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

  • кнопки

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

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

  • contextMessage

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

    Альтернативный текст уведомления с использованием шрифта меньшего веса.

  • eventTime

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

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

  • iconUrl

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

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

  • прогресс

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

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

  • требуетсяВзаимодействие

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

    Хром 50+

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

  • тихий

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

    Хром 70+

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

  • заголовок

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

    Название уведомления (например, имя отправителя для электронной почты).

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

  • тип

    TemplateType необязательный

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

PermissionLevel

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

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

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

TemplateType

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

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

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

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

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

Методы

clear()

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

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

Параметры

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

    нить

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

Возврат

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

    Хром 116+

create()

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

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

Параметры

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

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

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

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

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

Возврат

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

    Хром 116+

getAll()

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

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

Возврат

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

    Хром 116+

getPermissionLevel()

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

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

Возврат

update()

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

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

Параметры

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

    нить

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

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

Возврат

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

    Хром 116+

События

onButtonClicked

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

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

Параметры

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

    функция

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

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

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

      нить

    • buttonIndex

      число

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