Описание
Используйте 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+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
create()
chrome.notifications.create(
notificationId?: string,
options: NotificationOptions,
callback?: function,
)
Создает и отображает уведомление.
Параметры
- идентификатор уведомления
строка необязательна
Идентификатор уведомления. Если он не установлен или не пуст, идентификатор будет сгенерирован автоматически. Если оно соответствует существующему уведомлению, этот метод сначала очищает это уведомление, прежде чем продолжить операцию создания. Идентификатор не может быть длиннее 500 символов.
Параметр
notificationId
является обязательным до версии Chrome 42. - параметры
Содержание уведомления.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(notificationId: string) => void
- идентификатор уведомления
нить
Возврат
Обещание<строка>
Хром 116+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getAll()
chrome.notifications.getAll(
callback?: function,
)
Получает все уведомления этого приложения или расширения.
Параметры
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(notifications: object) => void
- уведомления
объект
Возврат
Обещание<объект>
Хром 116+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
getPermissionLevel()
chrome.notifications.getPermissionLevel(
callback?: function,
)
Получает, включил ли пользователь уведомления от этого приложения или расширения.
Параметры
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(level: PermissionLevel) => void
- уровень
Возврат
Обещание <PermissionLevel>
Хром 116+Промисы поддерживаются только для Manifest V3 и более поздних версий, на других платформах необходимо использовать обратные вызовы.
update()
chrome.notifications.update(
notificationId: string,
options: NotificationOptions,
callback?: function,
)
Обновляет существующее уведомление.
Параметры
- идентификатор уведомления
нить
Идентификатор уведомления, которое необходимо обновить. Это возвращается методом
notifications.create
. - параметры
Содержимое уведомления, которое требуется обновить.
- перезвонить
функция необязательна
Параметр
callback
выглядит так:(wasUpdated: boolean) => void
- былоОбновлено
логическое значение
Возврат
Обещание <логическое значение>
Хром 116+Промисы поддерживаются только для Manifest 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 имеет пользовательский интерфейс, который отправляет это событие.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:(level: PermissionLevel) => void
- уровень
onShowSettings
chrome.notifications.onShowSettings.addListener(
callback: function,
)
Кнопка пользовательских настроек уведомлений больше не поддерживается.
Пользователь нажал на ссылку, чтобы перейти к настройкам уведомлений приложения. Начиная с Chrome 47, только ChromeOS имеет пользовательский интерфейс, который отправляет это событие. Начиная с Chrome 65, этот пользовательский интерфейс также был удален из ChromeOS.
Параметры
- перезвонить
функция
Параметр
callback
выглядит так:() => void