J'ai besoin de suivre l'arrivée de mails dans un script.
J'ai googlisé sans trop de succès et je ne vois pas comment faire de façon
simple (sauf à taper dans un echo q | mail | grep ">N") ?
En fait, j'ai besoin d'être notifié de l'arrivée du mail et j'ai aussi
besoin de récupérer le message avec ses pièces jointes...
Une autre piste serait de travailler directement dans /var/spool/mail, mais
je sèche...
Merci d'avance pour toute idée...
Cordialement,
JKB
--
En plus c'est simple, je fais ce genre de trucs en g77 depuis des années :
il suffit d'écrire un wrapper en C. Et comme ça, j'ai le meilleur des deux
mondes : la rigueur quasi-monacale du Fortran, et l'exubérance pétulante du C.
Cette action est irreversible, confirmez la suppression du commentaire ?
Signaler le commentaire
Veuillez sélectionner un problème
Nudité
Violence
Harcèlement
Fraude
Vente illégale
Discours haineux
Terrorisme
Autre
Basile Starynkevitch [news]
On 2005-09-29, JKB wrote:
Bonjour à tous,
J'ai besoin de suivre l'arrivée de mails dans un script. J'ai googlisé sans trop de succès et je ne vois pas comment faire de façon simple (sauf à taper dans un echo q | mail | grep ">N") ? En fait, j'ai besoin d'être notifié de l'arrivée du mail et j'ai aussi besoin de récupérer le message avec ses pièces jointes...
Si vous voulez qu'un programme traite tous les méls rentrants, il suffit de mettre un pipe dans votre forward, par exemple ## fichier .forward |maildrop ## fin de ~/.forward
Ensuite vous pouvez utiliser un filtre de mail (ou plusieurs à la suite) comme maildrop par exemple, qui peuvent chercher des mails sur certains critères
Enfin, il existe de commande (mimemail si j'ai bonne mémoire) pour décortiquer un message MIME.
-- Basile STARYNKEVITCH http://starynkevitch.net/Basile/ email: basile(at)starynkevitch(dot)net 8, rue de la Faïencerie, 92340 Bourg La Reine, France
On 2005-09-29, JKB <knatschke@koenigsberg.fr> wrote:
Bonjour à tous,
J'ai besoin de suivre l'arrivée de mails dans un script.
J'ai googlisé sans trop de succès et je ne vois pas comment faire de façon
simple (sauf à taper dans un echo q | mail | grep ">N") ?
En fait, j'ai besoin d'être notifié de l'arrivée du mail et j'ai aussi
besoin de récupérer le message avec ses pièces jointes...
Si vous voulez qu'un programme traite tous les méls rentrants, il
suffit de mettre un pipe dans votre forward, par exemple
## fichier .forward
|maildrop
## fin de ~/.forward
Ensuite vous pouvez utiliser un filtre de mail (ou plusieurs à la
suite) comme maildrop par exemple, qui peuvent chercher des mails sur
certains critères
Enfin, il existe de commande (mimemail si j'ai bonne mémoire) pour
décortiquer un message MIME.
--
Basile STARYNKEVITCH http://starynkevitch.net/Basile/
email: basile(at)starynkevitch(dot)net
8, rue de la Faïencerie, 92340 Bourg La Reine, France
J'ai besoin de suivre l'arrivée de mails dans un script. J'ai googlisé sans trop de succès et je ne vois pas comment faire de façon simple (sauf à taper dans un echo q | mail | grep ">N") ? En fait, j'ai besoin d'être notifié de l'arrivée du mail et j'ai aussi besoin de récupérer le message avec ses pièces jointes...
Si vous voulez qu'un programme traite tous les méls rentrants, il suffit de mettre un pipe dans votre forward, par exemple ## fichier .forward |maildrop ## fin de ~/.forward
Ensuite vous pouvez utiliser un filtre de mail (ou plusieurs à la suite) comme maildrop par exemple, qui peuvent chercher des mails sur certains critères
Enfin, il existe de commande (mimemail si j'ai bonne mémoire) pour décortiquer un message MIME.
-- Basile STARYNKEVITCH http://starynkevitch.net/Basile/ email: basile(at)starynkevitch(dot)net 8, rue de la Faïencerie, 92340 Bourg La Reine, France
Emmanuel Florac
Le Thu, 29 Sep 2005 19:14:33 +0000, JKB a écrit :
Merci d'avance pour toute idée...
Pourquoi ne pas utiliser procmail? Tu peux très facilement piper ce que tu veux dans un script, avec tout un tas de règles de filtrage.
-- Les défauts n'apparaissent qu'après que le programme a passé (avec succès) la phase d'intégration. Loi de Klipstein.
Le Thu, 29 Sep 2005 19:14:33 +0000, JKB a écrit :
Merci d'avance pour toute idée...
Pourquoi ne pas utiliser procmail? Tu peux très facilement piper ce que
tu veux dans un script, avec tout un tas de règles de filtrage.
--
Les défauts n'apparaissent qu'après que le programme a passé (avec
succès) la phase d'intégration.
Loi de Klipstein.
Pourquoi ne pas utiliser procmail? Tu peux très facilement piper ce que tu veux dans un script, avec tout un tas de règles de filtrage.
-- Les défauts n'apparaissent qu'après que le programme a passé (avec succès) la phase d'intégration. Loi de Klipstein.
JKB
Le 29-09-2005, à propos de Re: Notification de mail dans un script, Emmanuel Florac écrivait dans fr.comp.os.linux.configuration :
Le Thu, 29 Sep 2005 19:14:33 +0000, JKB a écrit :
Merci d'avance pour toute idée...
Pourquoi ne pas utiliser procmail? Tu peux très facilement piper ce que tu veux dans un script, avec tout un tas de règles de filtrage.
Tiens, je n'y avais pas pensé (j'étais parti dans une usine à gaz). Je viens de lire la doc et j'ai quelques questions... Le but est de faire passer un mail successivement d'un utilisateur à l'autre (façon chaîne pour corriger des articles). J'ai trouvé le moyen de faire passer un mail d'un utilisateur à un autre (mais je sèche sur la condition de fin, mon truc se mordant la queue). Par contre, je n'arrive pas à gérer un timeout de façon élégante. Lorsqu'un utilisateur ne renvoie pas son papier au bout d'un certain temps, le message doit passer au suivant. En jouant avec at, j'arrive à gérer un timeout, mais comme je n'arrive pas à tuer la tâche at en question, le suivant peut récupérer deux messages... Une idée pour modifier mon script ?
DRESSES="
"
echo echo "Mise à jour du système de rotation automatique des mails" echo
# Ecriture du fichier .forward pour lancer procmail à la réception d'un mail echo "|exec /usr/bin/procmail" > .forward echo "# Fichier généré automatiquement, ne pas éditer" > .procmailrc echo "# $(date)" >> .procmailrc echo >> .procmailrc
# Génération du fichier .procmailrc j=1 for i in ${ADRESSES} do j=$(($j+1)) echo -n " Traitement de l'adresse " echo -n "$i"
# Règle de timeout echo ":0" >> .procmailrc echo "* ^From.*aiesme.*" >> .procmailrc echo "* ^Subject.*timeout.*" >> .procmailrc echo "| quelque chose avec un at" >> .procmailrc echo >> .procmailrc
echo "." done
echo
exit 0 # vim: ts=4
Merci de votre attention,
JKB
Le 29-09-2005, à propos de
Re: Notification de mail dans un script,
Emmanuel Florac écrivait dans fr.comp.os.linux.configuration :
Le Thu, 29 Sep 2005 19:14:33 +0000, JKB a écrit :
Merci d'avance pour toute idée...
Pourquoi ne pas utiliser procmail? Tu peux très facilement piper ce que
tu veux dans un script, avec tout un tas de règles de filtrage.
Tiens, je n'y avais pas pensé (j'étais parti dans une usine à gaz). Je viens
de lire la doc et j'ai quelques questions... Le but est de faire passer un
mail successivement d'un utilisateur à l'autre (façon chaîne pour corriger
des articles). J'ai trouvé le moyen de faire passer un mail d'un utilisateur
à un autre (mais je sèche sur la condition de fin, mon truc se mordant la
queue). Par contre, je n'arrive pas à gérer un timeout de façon élégante.
Lorsqu'un utilisateur ne renvoie pas son papier au bout d'un certain temps,
le message doit passer au suivant. En jouant avec at, j'arrive à gérer un
timeout, mais comme je n'arrive pas à tuer la tâche at en question, le
suivant peut récupérer deux messages... Une idée pour modifier mon script ?
echo
echo "Mise à jour du système de rotation automatique des mails"
echo
# Ecriture du fichier .forward pour lancer procmail à la réception d'un mail
echo "|exec /usr/bin/procmail" > .forward
echo "# Fichier généré automatiquement, ne pas éditer" > .procmailrc
echo "# $(date)" >> .procmailrc
echo >> .procmailrc
# Génération du fichier .procmailrc
j=1
for i in ${ADRESSES}
do
j=$(($j+1))
echo -n " Traitement de l'adresse "
echo -n "$i"
Le 29-09-2005, à propos de Re: Notification de mail dans un script, Emmanuel Florac écrivait dans fr.comp.os.linux.configuration :
Le Thu, 29 Sep 2005 19:14:33 +0000, JKB a écrit :
Merci d'avance pour toute idée...
Pourquoi ne pas utiliser procmail? Tu peux très facilement piper ce que tu veux dans un script, avec tout un tas de règles de filtrage.
Tiens, je n'y avais pas pensé (j'étais parti dans une usine à gaz). Je viens de lire la doc et j'ai quelques questions... Le but est de faire passer un mail successivement d'un utilisateur à l'autre (façon chaîne pour corriger des articles). J'ai trouvé le moyen de faire passer un mail d'un utilisateur à un autre (mais je sèche sur la condition de fin, mon truc se mordant la queue). Par contre, je n'arrive pas à gérer un timeout de façon élégante. Lorsqu'un utilisateur ne renvoie pas son papier au bout d'un certain temps, le message doit passer au suivant. En jouant avec at, j'arrive à gérer un timeout, mais comme je n'arrive pas à tuer la tâche at en question, le suivant peut récupérer deux messages... Une idée pour modifier mon script ?
DRESSES="
"
echo echo "Mise à jour du système de rotation automatique des mails" echo
# Ecriture du fichier .forward pour lancer procmail à la réception d'un mail echo "|exec /usr/bin/procmail" > .forward echo "# Fichier généré automatiquement, ne pas éditer" > .procmailrc echo "# $(date)" >> .procmailrc echo >> .procmailrc
# Génération du fichier .procmailrc j=1 for i in ${ADRESSES} do j=$(($j+1)) echo -n " Traitement de l'adresse " echo -n "$i"
mais comme je n'arrive pas à tuer la tâche at en question, le suivant peut récupérer deux messages...
Je ne comprends pas bien, là? Comment peut -il avoir deux fois le message?
-- Le travail est la malédiction des classes qui boivent. O. Wilde.
JKB
Le 30-09-2005, à propos de Re: Notification de mail dans un script, Emmanuel Florac écrivait dans fr.comp.os.linux.configuration :
Le Fri, 30 Sep 2005 09:53:07 +0000, JKB a écrit :
mais comme je n'arrive pas à tuer la tâche at en question, le suivant peut récupérer deux messages...
Je ne comprends pas bien, là? Comment peut -il avoir deux fois le message?
En écrivant la règle procmail précédente, je force l'envoi d'un mail vers l'utilisateur suivant de la chaîne. Ce que je cherche à faire est simple. Si l'utilisateur s'endort (ou est en vacances, ou injoignable...), il ne renverra pas le message à la chaîne. Je souhaite donc que le message soit adressé à l'utilisateur suivant de la chaîne. L'idée était de coupler procmail avec at, mais je ne sais pas comment annuler le message dans la queue d'at lorsque l'utilisateur répond... Je ne sais pas si je suis bien clair ;-)
Cordialement,
JKB
Le 30-09-2005, à propos de
Re: Notification de mail dans un script,
Emmanuel Florac écrivait dans fr.comp.os.linux.configuration :
Le Fri, 30 Sep 2005 09:53:07 +0000, JKB a écrit :
mais comme je n'arrive pas
à tuer la tâche at en question, le suivant peut récupérer deux
messages...
Je ne comprends pas bien, là? Comment peut -il avoir deux fois le message?
En écrivant la règle procmail précédente, je force l'envoi d'un mail vers
l'utilisateur suivant de la chaîne. Ce que je cherche à faire est simple. Si
l'utilisateur s'endort (ou est en vacances, ou injoignable...), il ne
renverra pas le message à la chaîne. Je souhaite donc que le message soit
adressé à l'utilisateur suivant de la chaîne. L'idée était de coupler
procmail avec at, mais je ne sais pas comment annuler le message dans la
queue d'at lorsque l'utilisateur répond... Je ne sais pas si je suis bien
clair ;-)
Le 30-09-2005, à propos de Re: Notification de mail dans un script, Emmanuel Florac écrivait dans fr.comp.os.linux.configuration :
Le Fri, 30 Sep 2005 09:53:07 +0000, JKB a écrit :
mais comme je n'arrive pas à tuer la tâche at en question, le suivant peut récupérer deux messages...
Je ne comprends pas bien, là? Comment peut -il avoir deux fois le message?
En écrivant la règle procmail précédente, je force l'envoi d'un mail vers l'utilisateur suivant de la chaîne. Ce que je cherche à faire est simple. Si l'utilisateur s'endort (ou est en vacances, ou injoignable...), il ne renverra pas le message à la chaîne. Je souhaite donc que le message soit adressé à l'utilisateur suivant de la chaîne. L'idée était de coupler procmail avec at, mais je ne sais pas comment annuler le message dans la queue d'at lorsque l'utilisateur répond... Je ne sais pas si je suis bien clair ;-)