Base de connaissances
1 000 FAQ, 500 tutoriels et vidéos explicatives. Ici, il n'y a que des solutions !
Filtrer les e-mails entrants grâce au langage Sieve
Ce guide explique comment créer des règles de tri en mode Avancé, scripts en langage Sieve, pour classer automatiquement vos e-mails entrants sur Infomaniak selon certaines conditions.
✘ INDISPONIBLE avec
kSuite Free
my kSuite (ik.me, etik.com, ikmail.com)
Service Mail Starter
Préambule
- Si vous ne disposez pas d'une offre compatible ou si vous préférez une configuration simplifiée, prenez connaissance de cet autre guide.
- ⚠️ Aucun support n'est apporté concernant le langage Sieve (prenez connaissance de cette documentation — découvrez aussi le rôle de l'hébergeur).
- Contrairement aux règles de tri proposées au sein de logiciels/clients de messagerie (❓: aide) ces règles agiront directement sur le serveur de vos boîtes mail avant même la connexion IMAP.
- Il est possible d'importer des fichiers Sieve via un bouton.
- En activant ce mode, les règles standard existantes seront conservées mais désactivées.
- La commande
redirect(permettant de renvoyer un e-mail vers une autre adresse) n'est pas autorisée dans les scripts.- Si vous importez un script Sieve provenant d'un autre hébergeur, assurez-vous de retirer cette commande.
- Pour transférer des e-mails, utilisez l'assistant en mode Standard ou la rubrique Redirections de votre Service Mail.
Accéder aux règles depuis l'app Web Mail Infomaniak
Prérequis
- Avoir la permission de gérer les règles: si vous aviez été invité sur l'app Web Mail Infomaniak (service en ligne ksuite.infomaniak.com/mail) afin de gérer votre adresse, il est possible que le gestionnaire du Service Mail vous ait retiré ce droit depuis son compte admin (❓: aide).
Afin d'accéder aux filtres de tri pour votre messagerie Infomaniak :
- Cliquez ici afin d'accéder à l'app Web Mail Infomaniak (service en ligne ksuite.infomaniak.com/mail).
- Cliquez sur l'icône Paramètres en haut à droite.
- Vérifiez ou sélectionnez l'adresse mail concernée dans le menu déroulant.
- Cliquez sur Filtres et règles:
Accéder aux règles depuis un Service Mail
Afin d'accéder aux filtres de tri pour votre messagerie Infomaniak :
- Cliquez ici afin d'accéder à la gestion de votre produit sur le Manager Infomaniak (❓: aide).
- Cliquez directement sur le nom attribué au produit concerné.
- Cliquez sur l'adresse mail concernée dans le tableau qui s'affiche.
- Cliquez sur l'onglet Règles depuis le menu latéral gauche (ou barre supérieure):

Créer une nouvelle règle en mode Avancé (expert)
- Assurez-vous de cliquer sur le mode Avancé :

Premier exemple de tri avancé
Voici un exemple simple d'une commande utilisant ce langage :
require ["fileinto"];
if address :contains "from" "facebook.com" {
fileinto "fb";
} elsif header :matches "List-Unsubscribe" "*" {
fileinto "nl";
} else {
keep;
}Explications :
- Chargement des extensions requises : utilisez
require ["fileinto"];pour indiquer que vous allez utiliser la fonctionfileinto. - Filtrage des messages Facebook : utilisez
if address :contains "from" "facebook.com"pour vérifier si l'adresse de l'expéditeur contient "facebook.com" ; si oui, le message est classé dans le dossier "fb" avecfileinto "fb";. - Filtrage des messages avec un lien de désinscription : utilisez
elsif header :matches "List-Unsubscribe" "*"pour vérifier si l'en-tête "List-Unsubscribe" est présent dans le message ; si oui, le message est classé dans le dossier "nl" avecfileinto "nl";. - Conservation des autres messages : utilisez
else { keep; }pour conserver tous les autres messages qui ne correspondent pas aux critères précédents.
Attention :
- Si vous devez mentionner un sous-dossier, utilisez le séparateur
/(comme dans le second exemple), mais il n'est pas nécessaire de spécifierINBOXdans vos codes - Assurez-vous que les dossiers "
fb" et "nl" existent déjà dans votre boîte de réception ; sinon, les messages risquent de ne pas être triés correctement - Le filtre
address :contains "from" "facebook.com"fonctionne correctement pour les adresses qui contiennent "facebook.com" dans le champ "from" - Le filtre
header :matches "List-Unsubscribe" "*"vérifie uniquement la présence de l'en-tête "List-Unsubscribe", pas son contenu
Second exemple de tri avancé
Ce code modifie l'objet en fonction de l'expéditeur (ajoute un préfixe à l'objet lorsqu'un e-mail passe le filtre, par exemple) :
require ["fileinto", "editheader", "variables", "regex"];
if address "sender" "owner-scientific-linux-devel at LISTSERV.FNAL.GOV" {
if header :regex "subject" "((Re|Fwd): *)\\[SCIENTIFIC-LINUX-DEVEL\\] *(.*)" {
deleteheader "Subject";
addheader "Subject" "${1}${3}";
} else {
# Ajouter un préfixe si l'objet ne correspond pas déjà au modèle
deleteheader "Subject";
addheader "Subject" "[SL-Devel] ${1}";
}
fileinto "Mail List/SL-Devel";
}Explications :
- Extensions requises :
fileinto: pour classer les messages dans des dossiers.editheader: pour modifier les en-têtes des e-mails.variables: pour utiliser des variables dans les expressions.regex: pour les expressions régulières.
- Condition sur l'expéditeur :
if address "sender" "owner-scientific-linux-devel at LISTSERV.FNAL.GOV": vérifie si l'expéditeur correspond.
- Condition sur l'objet :
if header :regex "subject" "((Re|Fwd): *)\\[SCIENTIFIC-LINUX-DEVEL\\] *(.*)": vérifie si l'objet correspond au modèle spécifié.deleteheader "Subject";etaddheader "Subject" "${1}${3}";: supprime l'objet existant et ajoute un nouvel objet avec les parties capturées.
- Ajout d'un préfixe si l'objet ne correspond pas déjà au modèle :
addheader "Subject" "[SL-Devel] ${1}";: ajoute un préfixe "[SL-Devel]" à l'objet s'il n'est pas déjà présent.
- Classement du message :
fileinto "Mail List/SL-Devel";: classe les messages dans le dossier "Mail List/SL-Devel".
Attention :
- Assurez-vous que le dossier "
Mail List/SL-Devel" existe déjà dans votre boîte de réception. - Vérifiez que le script modifie correctement l'objet des e-mails pour ajouter ou ajuster le préfixe si nécessaire.
Lien vers cette FAQ: https://faq.infomaniak.com/1839
Cette FAQ a été utile?