Contenu | Rechercher | Menus

Annonce

Si vous avez des soucis pour rester connecté, déconnectez-vous puis reconnectez-vous depuis ce lien en cochant la case
Me connecter automatiquement lors de mes prochaines visites.

À propos de l'équipe du forum.

#1 Le 02/08/2009, à 15:33

miniSeb

Utiliser notify-send pour envoyer le contenu d'un fichier ?!

Bonjour !

Tout est à peu près dans le titre, mais je vais être plus explicite wink

Pour commencer, je tiens à préciser que je suis on ne peut plus débutant en programmation (ben euh 2sem en fait tongue ).
J'ai créé un - super!!! - programme en Perl qui permet de récupérer en temps réel de l'information depuis un site (ici, ce qui passe à la radio) - no comment, on apprend comme on peut tongue -.

Quoi qu'il en soit, j'arrive à récupérer l'information, tout se passe bien MAIS - car il y a un mais tongue - je n'arrive pas à clôturer le programme que je le voudrais :
en fait, j'aimerais que l'information récupérée soit envoyée en message d'alerte grâce à notify-send.

Mais là ça c'complique hmm
Y a-t'il moyen d'afficher le contenu d'un fichier texte en notification ? Si oui, comment ?
Parce que j'ai cherché un peu partout mais je galère donc j'en viens à me demander s'il y a réellement moyen de le faire. D'où mon message ici !

Sinon, y aurait-il un système pour transmettre les données collectées non pas vers un fichier mais bien directement vers notify-send (autrement dit, comment peut-on appeler un logiciel extérieur en Perl) ?

J'espère avoir posté au bon endroit et que ceci à sa place sur le forum de la communauté wink

Merci d'avance à quiconque pourra m'aider ou au moins porter attention ma demande ^^

miniSeb big_smile

Hors ligne

#2 Le 02/08/2009, à 21:46

geenux

Re : Utiliser notify-send pour envoyer le contenu d'un fichier ?!

notify-send -i icone titre texte

D'après la page de manuel de notify-send, il n'y a pas l'air d'avoir moyen de lui passer un fichier. Mais tu peux te contenter de lire le fichier dans une variable, et de passer le contenu de la variable à notify-send.

(Exemple en bash, sans fichiers)

Hors ligne

#3 Le 03/08/2009, à 21:25

miniSeb

Re : Utiliser notify-send pour envoyer le contenu d'un fichier ?!

Merci wink

Bon ben me reste plus qu'à m'creuser encore le cerveau alors big_smile

Merci pour le lien vers les scripts bash, ça va m'aider ^^

Hors ligne

#4 Le 03/08/2009, à 21:39

Zakhar

Re : Utiliser notify-send pour envoyer le contenu d'un fichier ?!

Sauf si tu maîtrises déjà parfaitement le notify-send et ses subtilités, tu trouveras des infos qui peuvent t'intéresser dans mon post : Ma messagerie pour Geek !

http://forum.ubuntu-fr.org/viewtopic.php?id=328499


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#5 Le 03/08/2009, à 22:11

geenux

Re : Utiliser notify-send pour envoyer le contenu d'un fichier ?!

Je viens de tester ton système de messagerie, génial big_smile

Hors ligne

#6 Le 04/08/2009, à 19:18

miniSeb

Re : Utiliser notify-send pour envoyer le contenu d'un fichier ?!

Merci Zakhar ^^
Ça m'a permis d'voir un peu plus loin smile

Et en effet, la classe ton "msn" lol

Hors ligne

#7 Le 06/08/2009, à 09:45

Zakhar

Re : Utiliser notify-send pour envoyer le contenu d'un fichier ?!

geenux a écrit :

Je viens de tester ton système de messagerie, génial big_smile

Merci ;-)

En réalité je cherchais un système d'IM vraiment de poste à poste, c'est à dire sans passer par un serveur intermédiaire.
Visiblement il n'y a que le protocole "Bonjour" qui fait ça et qui est implémenté sur Empathy (lequel devrait remplacer Pidgin assez rapidement). Le problème est que "Bonjour" est basé sur mDNS et strictement réservé au réseau local. Or les personnes concernées (ma famille) sont connectées au VPN familial, ce qui n'est pas considéré par Bonjour comme du réseau local.

Enfin bref, pour améliorer mon "MSN pour Geek", il faudrait que je trouve un bout de code pour mettre une icône dans la zone de notification (comme le fait Network Manager), car là le positionnement des bulles est un peu au pif, et ensuite il n'y a plus aucun problème pour faire un truc complètement ouvert via PhP/MySQL, simplement programmé en mode Web.


"A computer is like air conditioning: it becomes useless when you open windows." (Linus Torvald)

Hors ligne

#8 Le 14/03/2011, à 13:06

Hibou57

Re : Utiliser notify-send pour envoyer le contenu d'un fichier ?!

miniSeb a écrit :

Bonjour !

Tout est à peu près dans le titre, mais je vais être plus explicite wink
[…]

Tu peux le faire avec une commande comme celle-ci :

notify-send "Titre" "$(tail 'message.txt')"

message.txt est le nom du fichier. Note que les lignes vides sont apparemment supprimées (mais un saut de ligne est tout de même affiché)

Par exemple si le contenu de "message.txt" est

Blabla ligne 1
Blabla ligne 2

Blabla ligne 3
Blabla ligne 4

alors voici ce qui sera affiché :

Blabla ligne 1
Blabla ligne 2
Blabla ligne 3
Blabla ligne 4


Attention : je te conseil vraiment d'utiliser tail et non pas cat, sauf si tu es absolument sûr(e) que le fichier n'est pas trop gros. Car avec cat au lieu de tail, il semble que le système de notification plante quasiment.

Je te donne un exemple de quasi-plantage.

J'ai fait tout d'abord

notify-send "Titre" "$(tail '/var/log/syslog')"

pour paraphraser un exemple donner dans Notify-send HOWTO.
Puis il m'est venu l'idée de remplacer tail par cat, pour voir, et donc de tenter ceci :

# À ne pas faire ! Seulement à vocation de teste !
notify-send "Titre" "$(cat '/var/log/syslog')"

Et là, rien, aucun affichage. Mais plus encore, toute invocation de notify-send suivante, échoue et n'affiche rien, et notify-send ne retourne même pas, comme en témoigne l'état de la ligne de commande qui ne revient même pas au prompt.

C'est au bout de plusieurs minutes seulement qu'une boite de notification apparait. Je ne sais pas ce que fait notify-send, mais il semble qu'il souffre d'un problème de conception qui ne le fait pas réagir comme il faudrait face à un trop gros contenu passé en paramètre, à moins que ce ne soit le passage du paramètre par le Shell qui pose un problème.

En tous les cas, il faut utiliser tail et surtout pas cat !

Dernière modification par Hibou57 (Le 14/03/2011, à 13:10)


Hajimemashteeeee… \(^o^)/ Tachikoma desu (^_^;)
Le saviez‑vous : le j’m’en foutisme est la cause de la plupart des fléaux du monde contemporain.
Mangez des standards : un grand bol de Standard tous les matins, et vous débutez la journée en pleine forme !
bulleforum.net — Forum de discussions, La Bulle (papotage de la vie courante ou choses trop sérieuses)

Hors ligne