Описание
Используйте chrome.notifications API, чтобы создавать уведомления на основе шаблонов и показывать их пользователям в области уведомлений.
Разрешения
notificationsТипы
NotificationBitmap
NotificationButton
Свойства
-
iconUrl
Строка (необязательно)
Не поддерживается начиная с Chrome 59Значки кнопок не видны пользователям Mac OS X.
-
название
string
NotificationItem
Свойства
-
Сообщение
string
Дополнительная информация об этом товаре.
-
название
string
Заголовок одного элемента в уведомлении со списком.
NotificationOptions
Свойства
-
appIconMaskUrl
Строка (необязательно)
Не поддерживается начиная с Chrome 59Маска значка приложения не видна пользователям Mac OS X.
URL маски значка приложения. К URL применяются те же ограничения, что и к iconUrl.
Маска значка приложения должна быть в альфа-канале, так как учитывается только альфа-канал изображения.
-
кнопки
NotificationButton[] необязательный
Текст и значки для двух кнопок действий в уведомлении.
-
contextMessage
Строка (необязательно)
Используйте для текста уведомлений шрифт меньшей насыщенности.
-
eventTime
number (необязательно)
Временная метка, связанная с уведомлением, в миллисекундах с начала эпохи (например,
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.
-
items
NotificationItem[] необязательный
Объекты для уведомлений о нескольких объектах. Пользователи Mac OS X увидят только первый пункт.
-
Сообщение
Строка (необязательно)
Основной контент уведомления.
**Примечание.**Это значение обязательно для метода
notifications.create(). -
приоритет
number (необязательно)
Приоритет может быть от -2 до 2. -2 – самый низкий приоритет. 2 – самый высокий. Значение по умолчанию – 0. На платформах, которые не поддерживают центр уведомлений (Windows, Linux и Mac), значения -2 и -1 приводят к ошибке, поскольку уведомления с такими приоритетами не будут показываться вообще.
-
выполнено
number (необязательно)
Текущий прогресс от 0 до 100.
-
requireInteraction
Логическое значение (необязательно)
Chrome 50 и более поздних версий browser.* начиная с Chrome 148Указывает, что уведомление должно оставаться на экране, пока пользователь не нажмет на него или не закроет. Значение по умолчанию – false.
-
без звука
Логическое значение (необязательно)
Chrome 70 и более поздних версий browser.* начиная с Chrome 148Указывает, что при показе уведомления не должно быть звуков или вибрации. Значение по умолчанию – false.
-
название
Строка (необязательно)
Заголовок уведомления (например, имя отправителя письма).
**Примечание.**Это значение обязательно для метода
notifications.create(). -
тип
TemplateType необязательный
Тип уведомления, которое нужно показать. Обязательный параметр для метода
notifications.create.
PermissionLevel
Перечисление
"granted"
Пользователь разрешил показывать уведомления от приложения или расширения. Это значение по умолчанию.
denied
Пользователь отказался от уведомлений приложения или расширения.
TemplateType
Перечисление
"basic"
Содержит значок, заголовок, сообщение, развернутое сообщение и до двух кнопок.
"image"
Содержит значок, заголовок, сообщение, расширенное сообщение, изображение и до двух кнопок.
"list"
Содержит значок, заголовок, сообщение, элементы и до двух кнопок. Пользователи Mac OS X увидят только первый пункт.
"progress"
Содержит значок, заголовок, сообщение, индикатор выполнения и до двух кнопок.
Методы
clear()
browser.notifications.clear(
notificationId: string,
): Promise<boolean>
Удаляет указанное уведомление.
Параметры
-
notificationId
string
Идентификатор уведомления, которое нужно удалить. Возвращается методом
notifications.create.
Возвраты
-
Promise<boolean>
Chrome 116+ browser.* начиная с Chrome 148Возвращает объект Promise, который распознается, чтобы указать, существовало ли соответствующее уведомление.
create()
browser.notifications.create(
notificationId?: string,
options: NotificationOptions,
): Promise<string>
Создает и показывает уведомление.
Параметры
-
notificationId
Строка (необязательно)
Идентификатор уведомления. Если идентификатор не задан или поле пустое, он будет сгенерирован автоматически. Если уведомление с таким идентификатором уже существует, оно будет удалено, а затем создано заново. Идентификатор не должен содержать более 500 символов.
Параметр
notificationIdобязателен для версий Chrome, предшествующих 42. -
Параметры
Содержимое уведомления.
Возвраты
-
Promise<string>
Chrome 116+ browser.* начиная с Chrome 148Возвращает объект Promise, который распознается с идентификатором уведомления (предоставленным или сгенерированным), представляющим созданное уведомление.
getAll()
browser.notifications.getAll(): Promise<object>
Получает все уведомления этого приложения или расширения.
Возвраты
-
Promise<object>
Chrome 116+ browser.* начиная с Chrome 148Возвращает объект Promise, который разрешается с набором notification_ids, находящихся в системе.
getPermissionLevel()
browser.notifications.getPermissionLevel(): Promise<PermissionLevel>
Проверяет, включил ли пользователь уведомления от этого приложения или расширения.
Возвраты
-
Promise<PermissionLevel>
Chrome 116+ browser.* начиная с Chrome 148Возвращает объект Promise, который распознается с текущим уровнем разрешения.
update()
browser.notifications.update(
notificationId: string,
options: NotificationOptions,
): Promise<boolean>
Обновляет существующее уведомление.
Параметры
-
notificationId
string
Идентификатор уведомления, которое нужно обновить. Возвращается методом
notifications.create. -
Параметры
Содержимое уведомления, которое нужно обновить.
Возвраты
-
Promise<boolean>
Chrome 116+ browser.* начиная с Chrome 148Возвращает объект Promise, который распознается, чтобы указать, существовало ли соответствующее уведомление.
События
onButtonClicked
browser.notifications.onButtonClicked.addListener(
callback: function,
)
Пользователь нажал кнопку в уведомлении.
Параметры
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:(notificationId: string, buttonIndex: number) => void
-
notificationId
string
-
buttonIndex
число
-
onClicked
browser.notifications.onClicked.addListener(
callback: function,
)
Пользователь нажал на область уведомления, не являющуюся кнопкой.
Параметры
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:(notificationId: string) => void
-
notificationId
string
-
onClosed
browser.notifications.onClosed.addListener(
callback: function,
)
Уведомление закрыто системой или пользователем.
Параметры
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:(notificationId: string, byUser: boolean) => void
-
notificationId
string
-
byUser
Логическое значение
-
onPermissionLevelChanged
browser.notifications.onPermissionLevelChanged.addListener(
callback: function,
)
Пользователь меняет уровень доступа. Начиная с Chrome 47, только в ChromeOS есть интерфейс, который отправляет это событие.
Параметры
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:(level: PermissionLevel) => void
-
уровень
-
onShowSettings
browser.notifications.onShowSettings.addListener(
callback: function,
)
Кнопка настроек уведомлений больше не поддерживается.
Пользователь нажал на ссылку, чтобы перейти к настройкам уведомлений приложения. Начиная с Chrome 47, только в ChromeOS есть интерфейс, который отправляет это событие. Начиная с версии Chrome 65, этот интерфейс был удален и из ChromeOS.
Параметры
-
обратный вызов
function
Параметр
callbackвыглядит следующим образом:() => void