# Bulles de notification sur différents environnements

**URL:** <https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381>\
**Category:** Programmation\
**Created:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381 "2016-02-21T03:40:01Z")\
**Posts on this page:** 20\
**Page:** 1

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/1 "2016-02-21T03:40:01Z")

</div>

Salut,

Je suis à la recherche des différentes manières d’afficher des bulles de notification (les mieux intégrées possible, et passives si possible) en fonction de l’environnement graphique de l’utilisateur.

Le but est de fournir des “plugins” de notification pour le truc sur lequel je bosse ([portage-freewifi-manager-sous-linux-t35731.html](https://www.debian-fr.org/portage-freewifi-manager-sous-linux-t35731.html)), afin d’informer l’utilisateur qu’il a bien été connecté / reconnecté / déconnecté du hotspot. Rien de très important en somme, d’où le fait que ces notifications soient optionnelles et qu’il faut qu’elles soient les moins intrusives possible.

Pour KDE4 j’ai déjà ce qu’il faut :

```auto

```

Exemple :

`$ kdialog --passivepopup "ça marche
même sur plusieurs lignes" 5 --title "essai"` ![](https://www.debian-fr.org/uploads/default/original/2X/f/f02d3238552d85aa7ddd0fe951c9972ebff5f25f.png)

Je suis donc preneur de l’équivalent pour KDE3 (j’ai su faire, mais je n’ai plus rien pour tester), Gnome 2, Gnome 3, XFCE (quelles versions ?), LXDE (quelles versions ?), ou n’importe quel autre environnement. Bref, envoyez tout ce que vous (s)avez ! 😃

Et tant qu’à faire si vous avez aussi, un moyen relativement fiable de détecter si l’appel de cette commande fonctionnera correctement (à minima, est-ce que l’utilisateur courant est bien dans une session de cet environnement ?).  
Exemple toujours pour kdialog / KDE4 :

`# KDE4
if [-x "$(which kdialog)"] && ["$KDE_FULL_SESSION" = "true"] && ["$KDE_SESSION_VERSION" = "4"]; then
  kdialog --passivepopup "$MESSAGE" $TEMPS --title "$TITRE"
fi`

Merci d’avance. 😉

Résumé des suggestions jusqu’à présent :  
[ul][li] linuxlogo : fonctionne en pull et non pas en push, donc l’intégration serait plutôt à faire du côté de linuxlogo (faisable avec l’option –status de mon soft)[/li]  
[li] xmessage | recode : fonctionnera pour l’ascii et le latin1 mais quid des langues “exotiques” (japonais etc) ?[/li]  
[li] notify-send[/li]  
[li] zenity[/li]  
[li] Xdialog[/li]  
[li] statnot[/li][/ul]

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/2 "2016-02-21T03:40:03Z")

</div>

Salut,

J’utilise linuxlogo 🙂

---

<div class="post-metadata">

**Author:** ![ricardo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ricardo/32/3864_2.png) [@ricardo](https://www.debian-fr.org/u/ricardo)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/3 "2016-02-21T03:40:04Z")

</div>

Super ce truc, je ne connaissais pas ![:023](https://www.debian-fr.org/uploads/default/original/1X/3c587556c0cc11389317c03a60788d77ceebd307.gif "OK")  
Si on le place dans un script, je suppose que ça n’est valable que pour ceux qui sont sous le bureau KDE4 ?  
Gérard, ton truc est plus généraliste, pour tous les bureaux ?

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/4 "2016-02-21T03:40:04Z")

</div>

> [@ricardo](#):
>
> Si on le place dans un script, je suppose que ça n’est valable que pour ceux qui sont sous le bureau KDE4 ?

Ça affiche une notification uniquement sur la session utilisateur en cours.  
Par exemple si tu lances une commande root dans un terminal X (su, sudo ou super) ça n’affichera pas la notification passive normale mais ça bloquera le script pendant le temps défini ($TEMPS) avec le message qui s’affiche au milieu de l’écran.

Par contre rien ne t’empêche, en bricolant un peu, d’arriver à récupérer des infos d’un programme su(do/per) et les afficher en notification. Suffit d’un peu d’imagination :

[code]$ cat \> script-utilisateur \<\<EOF  
#!/bin/sh  
kdialog --passive-popup «&nbsp;$(super script-root)&nbsp;» 5 --title «&nbsp;Un titre&nbsp;»  
EOF

# cat \> script-root \<\<EOF

#!/bin/sh  
if TRUC; then  
echo «&nbsp;truc !&nbsp;»  
else  
echo «&nbsp;machin !&nbsp;»  
fi  
EOF[/code]

> [@ricardo](#):
>
> Gérard, ton truc est plus généraliste, pour tous les bureaux ?

À priori c’est un programme console, j’ai du mal à voir comment ça pourrait s’intégrer aux différents bureaux sous X…  
À moins que j’aie loupé quelque chose dû à une recherche trop superficielle ?

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/5 "2016-02-21T03:40:06Z")

</div>

Salut,

[quote=«&nbsp;ricardo&nbsp;»]Super ce truc, je ne connaissais pas ![:023](https://www.debian-fr.org/uploads/default/original/1X/3c587556c0cc11389317c03a60788d77ceebd307.gif "OK")  
Si on le place dans un script, je suppose que ça n’est valable que pour ceux qui sont sous le bureau KDE4 ?  
Gérard, ton truc est plus généraliste, pour tous les bureaux ?[/quote]

Même les consoles de ssh 🙂

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/6 "2016-02-21T03:40:07Z")

</div>

> [@ggoodluck47](#):
>
> J’utilise linuxlogo 🙂

Après recherche un peu plus approfondie, je confirme : ça n’a rien à voir avec ce que je demande. 😆  
Tu nous parles d’un logiciel pour afficher une bannière texte à l’ouverture d’un terminal, alors que je veux des moyens d’afficher des notifications en temps réel (des notifications, quoi).

Dieu que ce vendredi s’annonce d’ores et déjà d’une longueur insoutenable… ![:005](https://www.debian-fr.org/uploads/default/original/1X/cdd45e7dd754015ac5291329b843a2851a0d4fe8.gif "chaud") ![:laughing-rolling:](https://www.debian-fr.org/uploads/default/original/1X/217c48213c20d32d24fe03bf50797c9c576a2d04.gif "Rolling On The Floor Laughing")

---

<div class="post-metadata">

**Author:** ![ggoodluck47](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/g/c67d28/32.png) [@ggoodluck47](https://www.debian-fr.org/u/ggoodluck47)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/7 "2016-02-21T03:40:08Z")

</div>

Re,

Je prends note de ne plus t’importuner avec mes à-peu-près.  
Personnellement Linuxlogo s’affiche chaque fois que je lance yakuake par la F12 et me donne ainsi en temps réel des choses tel que la machine sur laquelle je suis, son uptime, le kernel lancé 😆😆😆 au lieu de subir à un instant que je n’aurais pas aimé une information dont je n’avais aucun besoin ![:006](https://www.debian-fr.org/uploads/default/original/1X/924eb3db8bedad6a0d333b02031d3c6a9af9d9c5.gif "salut")

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/8 "2016-02-21T03:40:08Z")

</div>

> [@ggoodluck47](#):
>
> Je prends note de ne plus t’importuner avec mes à-peu-près.

Y’a pas de mal, je disais pas ça méchamment de toutes façons. 😉

> [@ggoodluck47](#):
>
> au lieu de subir à un instant que je n’aurais pas aimé une information dont je n’avais aucun besoin ![:006](https://www.debian-fr.org/uploads/default/original/1X/924eb3db8bedad6a0d333b02031d3c6a9af9d9c5.gif "salut")

Ça tombe bien, ces notifications temps réel seront optionnelles ! ![:mrgreen:](https://www.debian-fr.org/uploads/default/original/1X/cc83e9b583138e48ff45f96609046b06d06c7f9d.gif "Mr. Green")  
Bon du coup c’est malin, ça m’a fait penser à un truc en plus que j’avais pas prévu : afficher le statut à un moment T, à la demande. Bon ben j’ai plus qu’à y retourner. 😆

---

<div class="post-metadata">

**Author:** ![Totor](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/t/58f4c7/32.png) [@Totor](https://www.debian-fr.org/u/Totor)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/9 "2016-02-21T03:40:21Z")

</div>

Bonjour,

Il y a également [notify-send](http://pwet.fr/man/linux/commandes/notify_send).  
En moins connu, il y a zenity avec ses options non documentées.  
J’avais écrit un [petit script](http://forum.ubuntu-fr.org/viewtopic.php?id=436506) exploitant l’une de ces options.

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/10 "2016-02-21T03:40:22Z")

</div>

Merci Totor, je regarderai ça dès que je j’aurai monté une VM (tellement de trucs à tester, hors de question de faire ça directement sur ma machine). 😉

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/11 "2016-02-21T03:40:37Z")

</div>

xmessage ne convient pas de manière générale??

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/12 "2016-02-21T03:40:37Z")

</div>

Après avoir testé : ne supporte pas l’UTF-8, donc pas de caractères accentués et autres. 😕

```auto
$ xmessage "ça marche ?"
```

Dommage ça aurait pu être une bonne roue de secours sinon, bien qu’il soit moche et que ça soit une fenêtre à part entière (donc intrusive pour l’utilisateur).

J’ai quand même rajouté la précision « (les mieux intégrées possible, et passives si possible) » dans mon message initial pour clarifier, et :

> [@](#):
>
> Le but est de fournir des «&nbsp;plugins&nbsp;» de notification pour le truc sur lequel je bosse ([portage-freewifi-manager-sous-linux-t35731.html](https://www.debian-fr.org/portage-freewifi-manager-sous-linux-t35731.html)), afin d’informer l’utilisateur qu’il a bien été connecté / reconnecté / déconnecté du hotspot. Rien de très important en somme, d’où le fait que ces notifications soient optionnelles et qu’il faut qu’elles soient les moins intrusives possible.

---

<div class="post-metadata">

**Author:** ![M3t4linux](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/5daacb/32.png) [@M3t4linux](https://www.debian-fr.org/u/M3t4linux)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/13 "2016-02-21T03:40:38Z")

</div>

dialog/Xdialog peut être??

[http://ftp.traduc.org/doc-vf/gazette-linux/html/2004/101/lg101-P.html](http://ftp.traduc.org/doc-vf/gazette-linux/html/2004/101/lg101-P.html)

---

<div class="post-metadata">

**Author:** ![ricardo](https://www.debian-fr.org/user_avatar/www.debian-fr.org/ricardo/32/3864_2.png) [@ricardo](https://www.debian-fr.org/u/ricardo)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/14 "2016-02-21T03:40:39Z")

</div>

Sympa en graphique ![:023](https://www.debian-fr.org/uploads/default/original/1X/3c587556c0cc11389317c03a60788d77ceebd307.gif "OK")

---

<div class="post-metadata">

**Author:** ![M3t4linux](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/m/5daacb/32.png) [@M3t4linux](https://www.debian-fr.org/u/M3t4linux)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/15 "2016-02-21T03:40:39Z")

</div>

Et neutre en plus pour ceux qui, comme moi, n’utilisent pas d’environnements de bureau comme Gnome ou KDE

---

<div class="post-metadata">

**Author:** ![fran.b](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/f/d78d45/32.png) [@fran.b](https://www.debian-fr.org/u/fran.b)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/16 "2016-02-21T03:40:40Z")

</div>

[quote=“syam”]Après avoir testé : ne supporte pas l’UTF-8, donc pas de caractères accentués et autres. 😕

```auto

```

`xmessage `echo "ça va" | recode u8..latin1` ` résout ton problème

---

<div class="post-metadata">

**Author:** ![euridice](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/e/5fc32e/32.png) [@euridice](https://www.debian-fr.org/u/euridice)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/17 "2016-02-21T03:40:42Z")

</div>

j’utilise statnot ([github.com/halhen/statnot](https://github.com/halhen/statnot)) dans dwm ([dwm.suckless.org](http://dwm.suckless.org))

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:40 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/18 "2016-02-21T03:40:49Z")

</div>

Merci à tous, ça fait déjà pas mal de backends possibles, je m’occuperai de l’intégration proprement dite dès que mon code sera un peu stabilisé.

En attendant si d’autres personnes ont encore des suggestions elles sont les bienvenues. 😉

Y’a rien de spécifique à Gnome ou XFCE pour les notifications passives (ça m’étonne un peu) ?

---

<div class="post-metadata">

**Author:** ![Keldath](https://www.debian-fr.org/letter_avatar_proxy/v4/letter/k/f17d59/32.png) [@Keldath](https://www.debian-fr.org/u/Keldath)\
**Post date:** [Février 21, 2016, 3:41 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/19 "2016-02-21T03:41:13Z")

</div>

Salut,

Je me demandais - si je comprend bien ton problème - pourquoi n’utilises-tu pas les outils basés sur les spécifications [Freedesktop.org](http://Freedesktop.org) ?  
Je ne suis pas expert, mais il me semble que c’est ainsi que s’y prennent diverses applications : elles s’appuient sur une bibliothèque cliente pour envoyer des messages au daemon installé sur le système (c’est celui-ci qui se charge d’afficher la pop-up de notif’).

En bibliothèques clientes :

- libnotify1 (C et C++)
- python-notify (binding Python de la première) EDIT : j’crois que c’est lui que tu cherchais, j’viens de voir ton projet sur Github 😉
- etc…

En utilitaire client (facilement exploitable dans un script shell) :

- notify-send (contenu dans le paquet libnotify-send)

Et les daemons derrière ça peuvent être (ton application n’a pas à s’en occuper de toute manière) :

- notification-daemon (le daemon de GNOME par défaut)
- notification-daemon-xfce (pareil que le précédent mais sans les dépendances sur GNOME)
- xfce4-notifyd (le daemon par défaut de Xfce)
- notify-osd (installé sur Ubuntu par défaut)
- colibri (alternative au daemon par défaut de KDE4 - pas trouvé le nom de ce dernier d’ailleurs)  
Sachant qu’un seul peut être installé sur le système (sur Debian ils fournissent tous le faux-paquet ‘notification-daemon’).

---

<div class="post-metadata">

**Author:** ![syam](https://www.debian-fr.org/user_avatar/www.debian-fr.org/syam/32/2951_2.png) [@syam](https://www.debian-fr.org/u/syam)\
**Post date:** [Février 21, 2016, 3:41 UTC](https://www.debian-fr.org/t/bulles-de-notification-sur-differents-environnements/34381/20 "2016-02-21T03:41:34Z")

</div>

Salut et merci Keldath !!

C’est effectivement exactement l’information ce que je recherchais : je savais pas que toutes les notifications répondaient au même protocole [FreeDesktop.org](http://FreeDesktop.org). 😊

python-notify serait l’idéal, mais… il n’est pas dispo pour Python 3 dans les dépôts Debian. 😕  
Cela dit notify-send me semble très bien, il suffit de dépendre sur le paquet “libnotify-bin”.

Je considère le problème comme résolu. 🙂
