--- permalink: /fr/docs/emails/emails-entrants/utiliser-les-scripts-sieve/ title: Utiliser les scripts Sieve eleventyNavigation: key: Utiliser les scripts Sieve parent: Emails entrants order: 4 --- [Sieve](http://sieve.info/) est un langage permettant de filtrer les emails. Il sert à ajouter des règles complexes, qu'on ne pourrait ajouter via les [règles de filtrage](/fr/docs/emails/emails-entrants/ajouter-regle-filtrage/). ![](images/admin-panel_mailbox_sieve.png) Le script final est stocké dans le fichier `/home/[compte]/admin/mail/[domaine]/[boite]/filter_user.sieve` de votre compte. Vous pouvez le lire pour aider à déboguer votre script, mais pas l'éditer. ## Extensions supportées |Extension |Description | |--------------------------|----------------------------------------------------------------------------------------| |body |Vérifie la présence d'une ou de plusieurs chaînes de caractères dans le corps d'un email| |comparator-i;ascii-numeric|Extrait des nombres du texte et les compare pour voir si cela correspond | |copy |Spécifie qu'une copie doit être utilisée pour effectuer l'action | |date |Effectue des actions en fonction de la date/l'heure de l'envoi/la réception d'un email | |duplicate |Détecte si c'est un duplicata | |editheader |Ajoute ou supprime du texte aux en-têtes | |encoded-character |Permet l'encodage numérique de caractères spéciaux | |enotify |Envoie des notifications | |envelope |Évalue l'enveloppe ("from", "to"...) | |environment |Teste différentes valeurs étiquetées de l'environnement d'exécution | |fileinto |Délivre l'email dans le dossier spécifié | |foreverypart |Permet aux commandes d'être exécutées dans toutes les parties MIME de l'email | |ihave |Teste si une extension Sieve est disponible et, si c'est le cas, exécute son action | |imap4flags |Ajoute des indicateurs IMAP et mots clés aux messages | |include |Permet d'inclure un script Sieve dans un autre | |index |Permet de faire correspondre des champs d'en-tête spécifiques par index | |mailbox |Vérifie si un répertoire spécifique existe | |mime |Teste des parties MIME spécifiques du message | |extracttext |Extrait du texte depuis des parties MIME | |regex |Utilise des expressions régulières | |reject |Refuse la délivrance du message | |relational |Permet des comparaisons relationnelles | |subaddress |Teste des éléments délimités de la partie locale des adresses | |vacation |Réponses automatiques | |variables |Permet d'ajouter des variables | ## Exemples ### Ajouter un préfixe `` au sujet d'un mail contenant un mot clé à définir (que ce soit dans son sujet ou son corps de texte) ``` require ["editheader", "variables", "body"] ; if allof ( header :contains "subject" "mot", header :matches "Subject" "*" ) { deleteheader "Subject"; addheader "Subject" " ${1}"; } elsif allof ( body :content "text" :contains "mot", header :matches "Subject" "*" ) { deleteheader "Subject"; addheader "Subject" " ${1}"; } ``` ### Extraire des en-têtes de message dans les réponses automatiques ``` require ["variables", "vacation"]; # Stockage du sujet en variable if header :matches "Subject" "*" { set "subj" "**${1}**"; } # Répondeur automatique vacation :days 1 :subject "Absence [Was: ${subj}]" "Bonjour, nous avons bien reçu votre message : ${subj} Nous sommes actuellement absent et y répondrons à notre retour."; ``` --- ## Liens - [RFC 5228](https://tools.ietf.org/html/rfc5228)