Notification (Оповещения)
Создание уведомлений на рабочем столе ОС
Процесс: Главный
#
Использование в Рендерер-процессеЕсли вы хотите отобразить уведомления в Рендерер-процессе, вы должны использовать HTML5 Notification API
#
Class: Notification / УведомлениеСоздание уведомлений на рабочем столе ОС
Процесс: Главный
Notification
является EventEmitter.
Так создается новый экземпляр BrowserWindow
с собственными свойствами, установленными в options
.
#
Статические методыКласс Notification
имеет следующие статические методы:
Notification.isSupported()
#
Возвращает Boolean
- Поддерживаются ли уведомления рабочего стола в текущей системе
new Notification([options])
#
options
Object (опционально)title
String (optional) - A title for the notification, which will be shown at the top of the notification window when it is shown.subtitle
String (опционально) macOS - Подзаголовок для уведомления, который будет отображаться под заголовком.body
String (optional) - The body text of the notification, which will be displayed below the title or subtitle.silent
Boolean (опционально) - Использовать ли звук уведомления ОС при отображении уведомления.icon
(String | NativeImage) (опционально) - Значок для отображения в уведомлении.hasReply
Boolean (опционально) macOS - Нужно ли добавлять встроенный ответ к уведомлению.timeoutType
String (optional) Linux Windows - The timeout duration of the notification. Can be 'default' or 'never'.replyPlaceholder
String (опционально) macOS - Заполнитель для записи в поле ввода встроенного ответа.sound
String (опционально) macOS - Имя звукового файла, воспроизводимого при отображении уведомления.urgency
String (optional) Linux - The urgency level of the notification. Can be 'normal', 'critical', or 'low'.actions
NotificationAction[] (опционально) macOS - Действия для добавления к уведомлению. Пожалуйста, прочитайте доступные действия и ограничения в документацииNotificationAction
.closeButtonText
String (optional) macOS - A custom title for the close button of an alert. An empty string will cause the default localized text to be used.toastXml
String (optional) Windows - A custom description of the Notification on Windows superseding all properties above. Provides full customization of design and behavior of the notification.
#
События экземпляраОбъекты созданные с помощью new Notification
имеют следующие события:
Примечание: Некоторые методы доступны только в определенных операционных системах и помечены как таковые.
#
Событие: 'show'Возвращает:
- Событие типа
event
Возникает, когда уведомление отображается пользователю, обратите внимание, что оно может быть вызвано несколько раз, поскольку уведомление может быть показано несколько раз с помощью метода show()
.
#
Событие: 'click'Возвращает:
- Событие типа
event
Возникает при нажатии на уведомление пользователя.
#
Событие: 'close'Возвращает:
- Событие типа
event
Возникает при закрытии уведомления вручную пользователем.
Не гарантируется, что это событие будет отправлено во всех случаях, когда уведомление закрыто.
#
Событие: 'reply' macOSВозвращает:
- Событие типа
event
reply
String - Строка, введенная пользователем в поле ответа в строке ответа.
Возникает при нажатии пользователем кнопки "Ответить" в уведомлении с hasReply: true
.
#
Событие: 'action' macOSВозвращает:
- Событие типа
event
index
Number - Индекс действия, которое было активировано.
#
Event: 'failed' WindowsВозвращает:
- Событие типа
event
error
String - The error encountered during execution of theshow()
method.
Emitted when an error is encountered while creating and showing the native notification.
#
Методы экземпляраОбъекты, созданные с помощью New Notification
, имеют следующие методы экземпляра:
notification.show()
#
Сразу же показывает уведомление пользователю, обратите внимание, что это означает, в отличие от реализации HTML5 Notification, создание экземпляра new Notification
не сразу показывает его пользователю, вам нужно вызвать этот метод, прежде чем ОС покажет его.
Если уведомление было показано ранее, этот метод отклонит ранее показанное уведомление и создаст новое с идентичными свойствами.
notification.close()
#
Отклоняет уведомление.
#
Свойства экземпляраnotification.title
#
Свойство String
, представляющее заголовок уведомления.
notification.subtitle
#
Свойство String
, представляющее подзаголовок уведомления.
notification.body
#
Свойство String
, представляющее тело уведомления.
notification.replyPlaceholder
#
Свойство String
, представляющее заполнитель ответа уведомления.
notification.sound
#
Свойство String
, представляющее звук уведомления.
notification.closeButtonText
#
Свойство String
, представляющее текст кнопки закрытия уведомления.
notification.silent
#
Свойство Boolean
, представляющее, является ли уведомление беззвучным.
notification.hasReply
#
Свойство Boolean
, представляющее, есть ли в уведомлении действие для ответа.
notification.urgency
Linux#
A String
property representing the urgency level of the notification. Can be 'normal', 'critical', or 'low'.
Стандартное значение - 'low'. Что бы узнать подробнее, смотрите NotifyUrgency.
notification.timeoutType
Linux Windows#
A String
property representing the type of timeout duration for the notification. Can be 'default' or 'never'.
If timeoutType
is set to 'never', the notification never expires. It stays open until closed by the calling API or the user.
notification.actions
#
A NotificationAction[]
свойство, представляющее действия уведомления.
notification.toastXml
Windows#
A String
property representing the custom Toast XML of the notification.
#
Воспроизведение звуковВ macOS вы можете указать название звука, который вы хотели бы воспроизвести, когда отображается уведомление. Any of the default sounds (under System Preferences > Sound) can be used, in addition to custom sound files. Убедитесь, что звуковой файл скопирован в папку пакета приложений (например, YourApp.app/Contents/Resources
), или в одно из следующих мест:
~/Library/Sounds (~/Библиотека/Звуки)
/Library/Sounds (/Библиотека/Звуки)
/Network/Library/Sounds (/Сеть/Библиотека/Звуки)
/System/Library/Sounds (/Система/Библиотека/Звуки)
Смотрите документацию NSSound
для получения дополнительной информации.