Et si on jouait un peu plus avec les règles Sieve ?
Sieve permet d’implémenter des règles de filtrage, plus ou moins complexes, coté serveur email. Une fois la règle implémentée, elle s’appliquera, peu importe le logiciel sur lequel vous visualisez vos mails (Outlook, Thunderbird, Apple Mail, un téléphone Android, un webmail…).
Les règles de filtrage via Sieve n’étaient jusqu’alors disponibles que via notre nouveau service webmail, elles le sont maintenant à partir de n’importe quel client logiciel.
J’utilise personnellement Thunderbird et l’extension Sieve de Thomas Schmid que vous pouvez ajouter via les addons (les modules complémentaires). Ce genre de module existe sur tous les logiciels.
Une documentation avec des exemples est disponible sur le wiki de Dovecot, le serveur IMAP utilisé pour Gandi Mail: ou sur Wikipedia.
L’idée est surtout ici de vous expliquer comment j’utilise les règles Sieve pour faciliter mon quotidien.
Je reçois près de 3000 emails par jour sur ma boite professionnelle, et 200 de plus sur ma boite personnelle, accessibles simultanément depuis mon ordinateur et sur mon téléphone. Les règles Sieve me permettent de trier mes mails efficacement coté serveur.
1/ Définir ce que je veux recevoir sur mon téléphone
Ma règle n°1 est : « Si je ne suis pas en destinataire ou en copie, c’est que ce n’est pas un mail important, et que sa prise en compte peut être temporairement différée ». Ainsi, tous les autres emails seront placés dans des sous-répertoires de ma boite de réception « Inbox ». Les emails importants seront donc accessibles directement, les autres uniquement en consultant le répertoire concerné.
#la ligne require doit être la première ligne de votre fichier Sieve. Il faudra concaténer
#les exemples que je donne pour n'avoir qu'une seule ligne require["requirement1","requirement2"...]
require ["fileinto"];
#Si je suis en destinataire ou en copie d'un mail c'est qu'il m'est destiné directement
if header :contains ["to","cc"] "moi@gandi.net"
{
fileinto "INBOX";
stop;
#Si non, si l'email vient de @gandi.net ? je le veux dans un répertoire Gandi
elsif header :matches "From" "*@gandi.net>"
{
fileinto "INBOX/Gandi";
#Si non laisse moi faire le tri ailleurs
} else
{
fileinto "INBOX/A trier";
}
2/ Classer mes mails automatiquement
Dès que je m’inscris sur un site, j’utilise une adresse avec un + de type nicolas+nomdusite@. De cette manière , les correspondances du site en question sont classées dès leur arrivée dans un répertoire créé automatiquement.
require ["variables", "envelope", "fileinto", "subaddress"];
#si je suis destinataire
if envelope :is :user "to" "nicolas" {
if envelope :matches :detail "to" "*" {
#alors je stocke tout ce qui est après le + dans une variable qui s'appelle name
set :lower :upperfirst "name" "${1}";
#dans le cas où name est vide je garde le mail dans mon Inbox
if string :is "${name}" "" {
fileinto "Inbox";
#sinon, je stocke le mail dans un répertoire plus/Amazon par exemple
} else {
fileinto "plus/${name}";
}
3/ Supprimer les spams
Nous vous reparlerons très bientôt avec une mise à jour de notre anti-spam dans les jours à venir, mais nous pouvons déjà voir comment classer dans un répertoire Spam les mails qui sont identifiés comme tels.
if header :contains "X-Spam-Flag" "YES"
fileinto "Spam";
}
Si le niveau de spam est élevé (défini par le nombre d’étoiles), je préfère autant rejeter le mail directement.
if header :contains "X-Spam-Level" "*******"
{
discard;
stop;
}
4/ Gérer mon répondeur
Quand je pars en vacances (bientôt), j’active directement mon message d’absence dans mon fichier Sieve, « days 1 » signifiant que je n’envoie le message d’erreur qu’une seule fois par jour et par adresse.
require ["fileinto","imap4flags","regex","vacation"];
# rule:[Répondeur]
vacation
:days 1
:subject "Je suis absent jusqu'au 17 août / Out of the office until the 17th of August"
text:
Hello,
Je suis en vacances jusqu'au 17 août, je vais lire mes mails, mais de manière sporadique uniquement.
En cas d'urgence, vous pouvez contacter quelqu'un d'autre pasmoi@whatever.net
Nicolas
5/ Sans oublier le plus important \°/
Si je reçois un mail de mon PDG préféré (coucou Stephan), je veux qu’il soit « marqué » (en fonction des clients de messagerie, il peut s’agir de drapeaux ou d’étoiles). De cette manière,en configurant mon téléphone pour qu’il active automatiquement les notifications pour les emails marqués, je suis sûr d’être notifié.
require ["imap4flags"];
>if envelope "from" "monPDG@gandi.net"
{
setflag "\\Flagged";
stop;
}
Vous pouvez retrouver d’autre exemples sur notre documentation.
J’espère que ces règles vous seront utiles. N’hésitez pas à partager les vôtres en commentaires !
Nicolas.
Tagged in Webmail
Une mise à jour du webmail Roundcube (je n’aime pas SoGo : trop lent, trop lourd, trop d’espace perdu, trop peu d’informations affichées sur une page) serait la bienvenue :
– Pour profiter de la vue en 3 panneaux,
– Avec le plugin Managesieve pour gérer nos filtres.
la mise à jour est prévue d’ici fin septembre.
Comme le Guillaume précédent, je n’aime pas non plus SOGo. Lourd, lent, etc. Tellement que je cherche une autre solution d’hébergement de mes mails. Mais si des mises à jour sont prévues, je reste. J’aimerai tellement pouvoir utiliser la dernière version de Horde ! Merci.
Bonjour,
ça à l’air intéressant, mais comment on peut accéder à la gestion de ce module sous windows 10 pour y apporter ces indications ?
Je n’ai rien trouvé qui puisse m’aider.
désolé de ne pas être linuxien 😉
Bonjour Jacques, a priori, Thunderbird fonctionne également sur Windows, n’hésitez pas à l’installer !
Merci pour cet article !
J’attendais cette possibilité depuis que Sieve à été mis en place il y a plus d’un an ( https://news.gandi.net/fr/2017/03/activation-des-regles-serveur-sieve-sur-gandi-mail/ ) !
Je l’attendait notamment pour pouvoir créer une règle telle que décrite dans la partie « 2 ». 🙂
Par contre je conseille (lorsque c’est possible) d’utiliser plutôt un alias « monPseudo.* » plutôt que « monPseudo+* ». Car le « + » :
– n’est pas accepté dans les champs emails de certains sites (à tord je sais, mais bon…) ;
– pourrait à la limite être facilement repéré et supprimé par les spammeur (une règle pour remplacer monPseudo+watever@ en monPseudo@ ne serait pas dure à lancer sur un listing d’email).
Est-ce à dire que le mécanisme de sous-adressage fonctionne avec un point de la même manière qu’avec le signe plus ?
Si c’est le cas, je m’en vais utiliser de ce pas ce changement de caractère ! 😀
nicolas+nomdusite@ est la même adresse que nicolas@ mais nicolas.nomdusite@ est une autre adresse donc çà va être difficile de faire fonctionner Sieve de cette manière.
Vous pouvez, par contre, définir un alias du genre nicolas* sur l’adresse nicolas@ (dans votre compte sur admin.gandi.net), tous les mails nicolastruc@ ou nicolas.truc@ iront dans votre boite mail, vous pourrez alors les trier.
@nicolas serait-il possible d’avoir un exemple de tri avec l’alias ?
Sinon, il semblerait possible d’utiliser la syntaxe:
nomdusite–nicolas@
mais ça ne fonctionne pas (réglage nécessaire du côté de Gandi ?)
https://tools.ietf.org/html/rfc5233#page-2
Ça n’apparaît pas bien, mais la syntaxe que je site dans mon précédent message consiste à mettre 2 tirets…
Bonjour Nicolas,
Merci pour le post et les précisions intéressantes.
J’ai une question de mon côté, quand j’utilise l’extension thunderbird (après avoir utilisé http://mozfilter2sieve.sourceforge.net/mailfilters.html) pour migrer mes règles existantes.
1. Mes règles n’apparaissent pas (même si elles sont bien exécutées)
2. Si je re-sauvegarde les règles depuis le serveur sogo, mes règles « locales » sont écrasées.
Y a t’il moyen de pallier à ce problème ou est on obligé de gérer les règles qu’à un seul endroit ?
Merci
1. c’est étrange. Vous nous envoyez un petit mail avec la boite concernée pour qu’on regarde ?
2. on a vu le bug, on a un contournement possible pour ne pas écraser mais au final, il ne peut y avoir qu’un seul fichier actif par boite
Merci
C’est génial, merci pour le partage, des règles centralisées et lisibles c’est vraiment appréciable.
Après avoir joué un peu je confirme ce que dit patrick : il vaut mieux créer une règle basique sur Sogo puis ensuite depuis Thunderbird récupérer la règle existante.
Au niveau de la règle de filtrage automatique avec le +prestataire, cela marche presque chez moi : quand le répertoire existe tout va bien mais il ne le créé pas à la volée. Pour la création à la volée il faut ajouter un create `fileinto :create « plus/${name} »; ̀ mais visiblement ça ne passe pas chez moi
Un détail il manque deux `}}` à la fin du bloc de code dans l’extrait plus/presta
Précision, les rêgles Sieve semblent être chargées au démarrage de thunderbird. Il est judicieux de redémarrer Thunderbird pour être sur ( et du coup la création des répertoires fonctionne)
Très intéressé par la partie 2 de l’exemple, mais elle a malheureusement l’air incompatible avec SOGo (sauf si j’ai raté quelque chose).
De ce que je comprends, soit on fait des règles assez simples dans SOGo, soit on fait des règles assez complexes dans un autre programme, mais dans ce cas il ne faut plus jamais les éditer dans SOGo.
Merci de me contredire, par exemple en m’expliquant qu’on peut éditer directement le source du fichier de règles dans SOGo. 🙂
Je ne peux malheureusement pas vous contredire : Sogo ne permet pas d’éditer la source du fichier. En revanche, en fonction des outils que vous utilisez, notamment Thunderbird, c’est possible. N’hésitez pas à contacter notre service client qui pourra vous aider à configurer vos règles !
Bonjour,
J’utilise les filtres mail depuis votre interface SoGo, depuis un an déjà…
La nouveauté résiderait-elle uniquement dans la possibilité de créer des règles plus complexes par l’édition d’un fichier texte ?
…mais que faire alors si on n’utilise pas Thunderbird ?
Pour info, j’utilise Evolution sous Ubuntu et d’après un premier regard, je ne vois rien qui me permette l’édition d’un fichier de filtre en rapport avec Sieve.
Sous gnome, vous devez pouvoir utiliser http://gsieve.sourceforge.net/
La liste des logiciels compatibles est disponible ici http://sieve.info/clients
…pour Gnome en effet, il existe un module à compiler soi-même, …c’est pas très « friendly » comme solution.
à lire vos pages dédiées à Sieve, la création des règles semble se limiter à générer et ensuite gérer un simple fichier texte,
Dès lors, pourquoi Gandi ne met pas à disposition une page web (par adresse et/ou globale) avec un joli dans les pages d’administration?
…en un coup, plus de problème de compatibilité avec les client mail, ni webmail, ni même plus besoin de recourir à l’installation (=polluer son client mail) d’une quelconque extension…
Dès lors, pourquoi Gandi ne met pas à disposition une page web (par adresse et/ou globale) avec un joli « textarea » dans les pages d’administration?
Oui c’est une bonne idée. Nous allons mettre une page à disposition pour que les détenteurs de boites mail puissent changer leur mot de passe tout seul, sans passer par une personne avec les droits sur le domaines, ajouter la possibilité de gérer les règles sieve sur cette interface serait une bonne idée 🙂
Je souhaite renvoyer les infolettres (ayant le champ « List-ID ») dans des sous-dossiers ad-hoc du dossier « Infolettres »
J’ai tenté :
#SCRIPTNAME: Infolettres
if header :matches « List-ID » « »
{
if envelope :matches « from » « * » {
set :lower :upperfirst « name » « ${1} »;
fileinto :create « Infolettres/${name} »;
stop;
}
}
Cela semble bien se passer.
Mais idéalement j’aurais souhaiter créer des répertoires avec le nom de la liste plutôt que son adresse soit plutôt « orga Sympa » plutôt que « orgasympa@sondomaine.tld » dans : Orga Sympa
J’avais utilisé
if envelope :matches « from » « * » {
mais celà me laissait les courriels dans la boite d’entrée.
Une idée ?
Erreur, en fait j’avais utilisé
if envelope :matches « from » « * » {
set :lower :upperfirst « name » « ${1} »;
mais celà me laissait les courriels dans la boite d’entrée.
Allons bon, ma saisir se transforme à l’envoi
Comment écrire « étoile à mettre à la fin de la ligne if envelope :matches « from »
Est-ce que ce sera clair cette fois ?
Le moderateur peut enlever les messages de 04:01 et 04:05.
tout ce que je met ici entre crochet ouvrant < et crochet fermant du même type disparait à l'envoi du message.
Je n'arrive pas à écrire ce que je veux.
Les commentaires sont fermés