Aller au contenu principal
Bienvenue sur Forum Puppy Linux - Toutou Linux - Astuces - Aides !
Lorsque vous n'êtes pas connectés vous pouvez visiter la totalité du forum mais avec certaines restrictions : cf le règlement pour les visiteurs non connectés. Vous êtes chaleureusement conviés à vous inscrire afin de bénéficier de toutes les fonctionnalités du forum et de participer aux échanges.
Sujet: Voir avec curl s'il y a de nouveaux messages sans lancer son client messagerie (Lu 1270 fois) sujet précédent - sujet suivant
0 Membres et 1 Invitédans ce sujet

Voir avec curl s'il y a de nouveaux messages sans lancer son client messagerie

Bonjour les amies et les amis,

En parcourant le forum de puppylinux (https://forum.puppylinux.com), je suis tombé sur un sujet posté par wognath (lien : https://www.forum.puppylinux.com/viewtopic.php?p=145312&sid=c3f2ee7ccd97452b131c3d437af28f6c#p145312).
Je l'en remercie.

Il y est question de savoir si un ou plusieurs messages ont été reçus sans ouvrir son client messagerie.

Comment ce prodige est-il possible ?
Simplement en utilisant curl et les options adéquates.

Voici quelques liens utiles (en pas français) fournis par wognath :
Vous y apprendrez, entre autres, quels paramètres saisir si vous utilisez gmail, par exemple.

Ainsi, pourrez-vous personnaliser le petit script joint, si le coeur vous en dit.

Le programme joint utilise xmessage comme interface graphique et curl, évidemment.
Avant de l'utiliser, il convient de l'éditer et de mettre à jour la ligne 3 pour y saisir l'adresse du serveur des messages entrants.
Il est possible de commenter les lignes 4 et 5 pour les remplacer par :
utilisateur=[votre_identifiant_de_connexion_à_votre_messagerie]

Il est déconseillé de mofidier les lignes 6 à 8 afin d'éviter que le mot de passe soit lisible par tous.

Vérifiez que le programme est en exécution, sinon, dans un terminal ouvert à l'endroit de stockage du fichier, saisir :
chmod a+x msg-1.0.sh


Ci-dessous, le code certainement améliorable (fichier bash en attachement) :
#! /bin/bash
# voir si nouveaux messages, voir en-tête dernier message reçu et lancer messagerie par défaut
imap="[compléter_avec_adresse_serveur_courrier_entrant]"
imapw=/initrd/mnt/tmpfs/tmp/.imapsec
utilisateur=$(xmessage -borderless -bg lightgreen -entry "Saisissez votre identifiant de messagerie
et validez avec OK")
xterm -geometry 50x5 -bg blue -title "Saisie aveugle du mot de passe" -e bash -c 'read -s -p "Saisissez votre mot de passe en aveugle
et appuyez sur la touche Entrée pour valider
>>> " momo ; echo $momo > /initrd/mnt/tmpfs/tmp/.imapsec'
xmessage -buttons Quitter:1,'Voir en-tête dernier msg':2,'Ouvrir messagerie':3 -bg lightblue -title 'Nouveaux msgs' "$(curl --silent --url imaps://$imap/ --user $utilisateur:`cat $imapw` -X 'STATUS INBOX (UNSEEN)')"
choix=$?
case $choix in
1) rm $imapw && exit ;;
2) xmessage -buttons Quitter:1,'Ouvrir messagerie':2 -bg lightyellow -title 'En-tête dernier msg' "$(curl --silent --url "imaps://$imap/INBOX;UID=*;SECTION=HEADER.FIELDS%20(DATE%20FROM%20SUBJECT)" --user $utilisateur:`cat $imapw`)"
choix2=$?
case $choix2 in
1) rm $imapw && exit ;;
2) rm $imapw && xmessage -timeout 2 "Lancement de votre messagerie par défaut..." & defaultemail ;;
*) rm $imapw && exit ;;
esac  ;;
3) rm $imapw && xmessage -timeout 2 "Lancement de votre messagerie par défaut..." & defaultemail ;;
*) exit ;;
esac
exit


Ensuite ?
Il n'y a plus qu'à cliquer sur le programme et suivre les instructions.

Testé avec succès avec LunarPup32. 8) 8)
Pour fonctionner sous Toutou Slaxen 6.0, imapw doit être égal à :
imapw=/tmp/.imapsec


Amusez-vous bien.

Amitiés.
Vive Toutou Linux
"Tout le monde a le droit de vivre en paix !" dit une dame africaine.

 
Simple Audio Video Embedder