Aller au contenu principal

Notification

Créer des notifications bureau spécifique à l'OS

Processus : Main

Notifications à partir processus de rendu

Si vous souhaitez afficher les notifications d’un processus de rendu, vous devez utiliser l'API Web Notifications

Classe : Notification

Créer des notifications bureau spécifique à l'OS

Processus : Main

Notification est un EventEmitter.

Cela crée une nouvelle Notification avec les propriétés natives définies par les options.

Méthodes statiques

La classe Notification dispose des méthodes statiques suivantes :

Notification.isSupported()

Retourne boolean - Si le système actuel prend en charge les notification bureau ou non

new Notification([options])

  • options Object (facultatif)
    • title string (optionelle) - Titre pour la notification, il sera affiché en haut de la fenêtre de notification lorsqu'elle sera affiché.
    • subtitle string (facultatif) macOS -0 Sous-titre pour la notification, qui sera affiché sous le titre.
    • body string (optionelle) - Texte du body de la notification, qui va être affichée en dessous le titre et le sous-titre.
    • silent boolean (facultatif) - Supprime ou non le bruit de notification de l'OS lors de l'affichage de la notification.
    • icon (string | NativeImage) (optional) - An icon to use in the notification. If a string is passed, it must be a valid path to a local icon file.
    • hasReply boolean (facultatif) macOS - Ajout ou non d'une option de réponse en ligne à la notification.
    • timeoutType string (facultatif) Linux Windows - Durée du timeout de la notification. Peut être 'default' ou 'never'.
    • replyPlaceholder string (facultatif) macOS - L'espace réservé à écrire dans le champ de saisie de réponse en ligne.
    • sound string (facultatif) macOS - Le nom du fichier audio à jouer lorsque la notification est affichée.
    • urgency string (optionelle) Linux - Niveau de l'urgence de la notification. Peut être 'normal', 'critical' ou 'low'.
    • actions NotificationAction[] (optional) macOS - Actions à ajouter à la notification. Vous trouverez les actions et limitations disponibles dans la documentation de NotificationAction.
    • closeButtonText string (facultatif) macOS - Titre personnalisé pour le bouton de fermeture d'une alerte. Si la chaîne est vide le texte localisé par défaut sera utilisé.
    • toastXml string (facultatif) Windows - Description personnalisée de la notification remplaçant toutes les propriétés ci-dessus. Fournit une personnalisation complète du design et du comportement de la notification.

Événements d’instance

Les objets créés avec new Notification émettent les événements suivants :

info

Certains événements ne sont disponibles que sur des systèmes d'exploitation spécifiques et sont étiquetés comme tels.

Événement : 'show'

Retourne :

  • event Event

Émis lorsque la notification est affichée. Notez que cet événement peut être déclenché plusieurs fois car une notification peut être affichée plusieurs fois via la méthode show().

Événement : 'click'

Retourne :

  • event Event

Émis lorsque l'utilisateur clique sur la notification.

Événement : 'close'

Retourne :

  • event Event

Émis lorsque la notification est fermée manuellement par l'utilisateur.

Cet événement ne garantit pas d'être émis dans tous les cas de fermeture de la notification.

On Windows, the close event can be emitted in one of three ways: programmatic dismissal with notification.close(), by the user closing the notification, or via system timeout. If a notification is in the Action Center after the initial close event is emitted, a call to notification.close() will remove the notification from the action center but the close event will not be emitted again.

Événement : 'reply' macOS

Retourne :

  • event Event
  • reply string - La chaîne de caractères que l'utilisateur a écrite dans le champ de réponse.

Émis lorsque l'utilisateur clique sur le bouton "Reply" d'une notification avec hasReply: true.

Événement : 'action' macOS

Retourne :

  • event Event
  • index number - L'indice de l'action qui a été activée.

Événement : 'failed' Windows

Retourne :

  • event Event
  • error string - L'erreur rencontrée lors de l'exécution de la méthode show().

Émis lorsqu'une erreur est rencontrée lors de la création et de l'affichage de la notification native.

Méthodes d’instance

Les objets créés avec le constructeur new Notification() ont les méthodes d'instance suivantes :

notification.show()

Affiche immédiatement la notification à l'utilisateur. Contrairement à l'API de notification web, l'instanciation par new Notification() ne l'affiche pas immédiatement à l'utilisateur. Au lieu de cela, vous devez appeler la méthode show pour que l'OS l'affiche.

Si la notification a déjà été affichée auparavant, cette méthode rejettera la notification précédemment affichée et en créera une nouvelle avec des propriétés identiques.

notification.close()

Rejette la notification.

On Windows, calling notification.close() while the notification is visible on screen will dismiss the notification and remove it from the Action Center. If notification.close() is called after the notification is no longer visible on screen, calling notification.close() will try remove it from the Action Center.

Propriétés d'instance

notification.title

Une propriété string représentant le titre de la notification.

notification.subtitle

Une propriété string représentant le sous-titre de la notification.

notification.body

Une propriété string représentant le corps de la notification.

notification.replyPlaceholder

Une propriété string représentant le placeholder de la réponse de la notification.

notification.sound

Une propriété string représentant le son de la notification.

notification.closeButtonText

Une propriété string représentant le texte du bouton de fermeture de la notification.

notification.silent

Une propriété boolean qui indique si la notification est silencieuse.

notification.hasReply

Propriété boolean indiquant si la notification a une action de réponse.

notification.urgency Linux

Propriété de type string représentant l'urgence de la notification. Peut être 'normal', 'critical' ou 'low'.

La valeur par défaut est 'low' - voir NotifyUrgency pour plus d'informations.

notification.timeoutType Linux Windows

Propriété string représentant le type de la durée du timeout pour la notification. Peut être 'default' ou 'never'.

Si timeoutType est défini à 'never', la notification n'expirera jamais. Elle restera ouverte jusqu'à sa fermeture par l'API ou par l'utilisateur.

notification.actions

Une propriété NotificationAction[] représentant les actions de la notification.

notification.toastXml Windows

Propriété de type string représentant le Toast XML de la notification.

Émettre des sons

Sur macOS, vous pouvez spécifier le nom du son que vous voulez jouer lors de l'affichage de la notification. N'importe quel son par défaut (dans préférences système > Son) peut être utilisé, en plus des fichiers audio personnalisés. Assurez-vous que le fichier audio soit copié dans l'"app bundle" (par exemple, VotreApp.app/Contents/Resources), ou l'un des emplacements suivants :

  • ~/Library/Sounds
  • /Library/Sounds
  • /Network/Library/Sounds
  • /System/Library/Sounds

Consultez la documentation de NSSound pour plus d'informations.