Page suivante - Page précédente - Table des matières

6. Tri automatique des messages dans les classeurs

Si vous êtes comme moi, vous recevez près de 3500 messages par jour. Chaque fois que vous allez chercher vos messages (Note : fetch mail en anglais), vous devez parcourir tous vos messages pour trouver ceux qui vous intéressent.

Ce n'est plus un problème, grâce à Procmail.

Procmail fonctionne ainsi :

Procmail examine chaque message au moment où il est récupéré, et exécute une série de tâches fondées sur certaines règles que vous lui avez spécifiées.

Disons, par exemple, que je reçoive 200 messages par jour d'une certaine liste (prenons ici la liste linux-machin). Plutôt que de voir tous ces messages partir directement dans mon classeur INBOX, je préfère qu'ils soient automatiquement filtrés et dirigés dans un classeur appelé liste-machin.

La première chose à faire est de prendre quelques exemples de messages provenant de cette liste et d'en examiner les entêtes.

Je commence à discerner un motif répétitif. Chaque message provenant de cette liste contient une ligne disant :

 Sender: owner-linux-machin@bidule.chouette.fr

Je peux maintenant dire à procmail de placer chaque message contenant cette ligne dans un certain classeur.

Je peux le préciser à procmail à travers un fichier .procmailrc.

Je vais utiliser mon éditeur de texte préféré pour créer un fichier texte dans mon répertoire racine, appelé .procmailrc.

Ce fichier ressemblera à :


 LOGFILE=$HOME/.pmlog
 MAILDIR=$HOME/mail
 VERBOSE
 # liste linux-machin
 :0 Hw
 * ^.*[Ss]ender: owner-linux-machin@bidule.chouette.fr
 liste-machin
 # S'il arrive ici, l'envoyer dans mon classeur 'nouveaux'
 :0 Hw
 nouveaux

Examinez la ligne [Ss]ender. Vous noterez que cette ligne est ce que tous les messages provenant de cette liste ont en commun.

Cette section dit à procmail de placer les messages arrivant avec une entête comme celle-ci dans le classeur liste-machin.

La section suivante dit que si le message ne correspond à aucune règle précédente, alors il faut le placer dans le classeur nouveaux.

Maintenant, disons que je veuille que les messages de la part de mon ami EJ aillent dans un classeur nommé EJ.

Il suffit de rajouter une section à mon fichier .procmailrc :


 LOGFILE=$HOME/.pmlog
 MAILDIR=$HOME/mail
 VERBOSE
 # liste linux-machin
 :0 Hw
 * ^.*[Ss]ender: owner-linux-machin@bidule.chouette.fr
 liste-machin
 # Message de E.J. !
 :0 Hw
 * ^.*[Ff]rom: ej@monpote.fr
 ej
 # S'il arrive ici, l'envoyer dans mon classeur 'nouveaux'
 :0 Hw
 nouveaux

Remarquez la nouvelle section pour EJ. Lorsqu'un message y arrive avec son adresse dans le champ From, il sera automatiquement placé dans mon classeur ej.

Maintenant, disons qu'il y ait un boiteux par-là qui tienne à m'écrire. Je ne veux pas entendre parler de lui, mais il insiste. Encore une fois - procmail à la rescousse.

Disons alors que ne ne veuille recevoir aucun message de Bill Gates. Je peux définir un expéditeur dont tous les messages seront effacés. Voyez alors mon nouveau .procmailrc :


 LOGFILE=$HOME/.pmlog
 MAILDIR=$HOME/mail
 VERBOSE
 # Provient-il de Bill Gates?  Si oui, A LA POUBELLE !!!
 :0 Hw
 * ^.*[Ff]rom: bgates@microsoft.com
 /dev/null
 # liste linux-machin
 :0 Hw
 * ^.*[Ss]ender: owner-linux-machin@bidule.chouette.fr
 liste-machin
 # Message de EJ !
 :0 Hw
 * ^.*[Ff]rom: ej@monpote.fr
 ej
 # S'il arrive ici, l'envoyer dans mon classeur 'nouveaux'
 :0 Hw
 nouveaux

Maintenant, j'ai un fichier .procmailrc plutôt bien. Examinons ce que procmail va faire de chaque message qu'il reçoit.

Premièrement, il regarde si ce message provient de bgates@microsoft.com. Si oui, il l'efface et c'est fait.

Si le message est passé à travers la première vérification, procmail regarde s'il contient owner-linux-machin@bidule.chouette.fr dans l'entête. Si oui, il le dépose dans le classeur liste-machin, et voilà.

Si le message est aussi passé à travers celle-là, il regarde s'il provient d'EJ. Si oui, il le place dans le classeur ej.

Maintenant, si le message est passé à travers tous ces tests, alors il le place dans le classeur nouveaux.

Une fois ces classeurs mis en place et procmail filtrant correctement vos messages, vous pouvez aller dans TkRat, Admin - New/Edit Folder et créer les classeurs pour chaque fichier. Ils seront placés dans /home/utilisateur/mail/nom_classeur


Page suivante - Page précédente - Table des matières