[obmenu] sortie pipemenu invalide (résolu)

Applications, problèmes de configuration réseau
Avatar de l’utilisateur
onyx67
Elfe
Messages : 766
Inscription : dim. 06 nov. 2011, 18:12
Localisation : Alsace

[obmenu] sortie pipemenu invalide (résolu)

Message par onyx67 »

Bonjour,

Je cherche à utiliser un "pipemenu" openbox pour afficher mes mails (gmail) non lus. J'ai trouvé sur le net un exemple de script que j'ai modifié pour mes besoins:

Code : Tout sélectionner

#!/bin/bash

gmail_login="pseudo"
gmail_password="mot de passe"

dane="$(wget --secure-protocol=TLSv1 --timeout=3 -t 1 -q -O - \
https://${gmail_login}:${gmail_password}@mail.google.com/mail/feed/atom \
--no-check-certificate | grep 'fullcount' \
| sed -e 's/.*//;s/<\/fullcount>.*//' 2>/dev/null)"

 

if [ -z "$dane" ]; then
echo "Connection Error !"
else
echo "$dane non lus"
fi
J'ai ensuite fait un chmod +x gmail.sh pour le rendre exécutable et l'ai placé dans ~/.config/openbox

La commande utilisé dans pipemenu: ~/.config/openbox/gmail.sh
Lorsque je pointe ma souris sur "gmail" du menu j'ai un message d'erreur "sortie pipemenu invalide". Tous mes autres pipemenus fonctionnant correctement, je pencherai a priori pour une erreur de script, mais je n'arrive pas à voir laquelle. Quelqu'un aurait-il une idée de ce qui cloche?
Merci pour votre aide
Dernière modification par onyx67 le dim. 15 avr. 2012, 20:18, modifié 1 fois.
"La complication est un effet de la simplicité mal acquise"

Intel i5-2320; Nvidia GeForce GT 520; ATA Hitachi 2To; ArchLinux-KDE
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17632
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [obmenu] sortie pipemenu invalide

Message par benjarobin »

Voila :D

Code : Tout sélectionner

dane="$(wget --secure-protocol=TLSv1 --timeout=3 -t 1 -q -O - \
https://${gmail_login}:${gmail_password}@mail.google.com/mail/feed/atom \
--no-check-certificate | sed -n -e 's/.*<fullcount>\(.*\)<\/fullcount>.*/\1/p' 2>/dev/null)"
Enfin si ton but est que la variable dane soit égale au nombre de message non lu
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
onyx67
Elfe
Messages : 766
Inscription : dim. 06 nov. 2011, 18:12
Localisation : Alsace

Re: [obmenu] sortie pipemenu invalide

Message par onyx67 »

merci benjarobin.
J'ai toujours la même erreur. En supprimant l'entrée, j'ai un message m'indiquant: "des erreurs de syntaxe XML dans les fichiers de configuration openbox ont été trouvées, voir stdout pour plus d'infos. La dernière erreur vue était dans le fichier "(null)", ligne 1, avec le message: start tag expexted, "<" not found"
"La complication est un effet de la simplicité mal acquise"

Intel i5-2320; Nvidia GeForce GT 520; ATA Hitachi 2To; ArchLinux-KDE
Avatar de l’utilisateur
benjarobin
Maître du Kyudo
Messages : 17632
Inscription : sam. 30 mai 2009, 15:48
Localisation : Lyon

Re: [obmenu] sortie pipemenu invalide

Message par benjarobin »

Je ne connais pas obmenu / pipemenu, mais d'après l'erreur je dirais qu'il s'attend à de l'XML en sortie alors que toi c'est du texte brute
Bon après lecture très rapide de la doc : http://openbox.org/wiki/Help:Menus, c'est bien de l'XML en sortie

Code : Tout sélectionner

if [ -z "$dane" ]; then
    dane="Connection Error !"
else
    dane="$dane non lus"
fi

echo "<?xml version=\"1.0\" encoding=\"UTF-8\"?>"
echo "<openbox_pipe_menu>"
echo "    <item label=\"$dane\">"
echo "    </item>"
echo "</openbox_pipe_menu>"
Zsh | KDE | PC fixe : AMD Ryzen 9900X, Radeon RX 7700 XT
Titre d'un sujet : [Thème] Sujet (état) / Règles du forum
Avatar de l’utilisateur
onyx67
Elfe
Messages : 766
Inscription : dim. 06 nov. 2011, 18:12
Localisation : Alsace

Re: [obmenu] sortie pipemenu invalide

Message par onyx67 »

C'était bien la sortie XML qui manquait au script. Mes mails non lus s'affichent correctement!
Merci pour le coup de main. Sujet résolu.
"La complication est un effet de la simplicité mal acquise"

Intel i5-2320; Nvidia GeForce GT 520; ATA Hitachi 2To; ArchLinux-KDE
Répondre