--- 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 email 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)