9 votes

Message du centre de notification via AppleScript/oscript -- spécifier un nom d'application et une icône

Lors de l'envoi d'une notification au centre de notification d'OS X via la fonction AppleScript osascript comme dans :

osascript -e 'display notification "Finished that long running task." with title "Finally!"'

Le centre de notification affiche "AppleScript Editor" comme source de la notification :

NotificationCenter

Est-il possible de spécifier une source (comme dans l'application) et une icône différentes lors de l'envoi d'une notification de cette manière ?

1 votes

Astuce : vous pouvez utiliser des emoji dans les notifications AppleScript.

8voto

Fuzzy Purple Monkey Points 702

Je ne pense pas que ce soit possible avec AppleScript mais ça l'est avec terminal-notifier :

-sender ID         The bundle identifier of the application that should be
shown as the sender, including its icon.
-appIcon URL       The URL of a image to display instead of the application
icon (Mavericks+ only)

Par exemple :

terminal-notifier -title title -message message -sender com.apple.TextEdit

0 votes

Nous vous remercions, terminal-notifier est parfait. Btw, il est disponible via homebrew.

3voto

Erk Points 151

Vous devriez être en mesure de faire

osascript -e 'tell app "System Events" to display notification "Finished that long running task." with title "Finally!"'

Vous pouvez modifier "System Events" à tout autre nom d'application.

Il semble qu'il faille être Root pour qu'il affiche d'autres icônes que le script d'Apple. Par exemple, dans une fenêtre de terminal :

sudo osascript -e 'tell app "System Events" to display notification "Finished that long running task." with title "Finally!"'

0 votes

Peu importe ce que je spécifie comme nom d'application, il s'affiche toujours avec l'icône de l'éditeur script et le nom de l'application.

0 votes

Oh. Ok... Pour être honnête, je n'ai essayé qu'à partir d'une fenêtre de terminal. C'est une erreur ! (à moins qu'il y ait un bug... après tout, pourquoi cela fonctionnerait-il différemment de l'éditeur script... hmmm)

2 votes

Je crois que je viens de le découvrir. Quand je lance mon script en tant que "moi", il affiche également l'icône du script de Apple... mais quand je "sudo" le script, il affiche l'icône du programme que j'ai "commandé". En d'autres termes, il faut appeler la commande en tant que "Root" pour qu'elle "ordonne" à d'autres applications de faire des choses... c'est logique... J'ai mis à jour le code pour refléter cela.

LesApples.com

LesApples est une communauté de Apple où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres utilisateurs d'appareils Apple, poser vos propres questions ou résoudre celles des autres.

Powered by:

X