Voici un exemple de filtre sieve. Il inclut le filtre global spam.sieve ainsi que le filtre personnel vacation.sieve (dont la ligne sera à décommenter pour être actif). Il y a quelques règles pour flager les mails (TODO, monitoring, etc), les classer (cron, mailings) et les marquer automatiquement comme lus.

require "fileinto";
require "imap4flags";
require "include";
require "regex";

include :global "spam.sieve";
#include :personal "vacation.sieve";

# important
if anyof (
   address "from" "alert@hbis.fr",
   header :regex ["subject"][".*security alert.*"]) {
   addflag "$label1"; # important
}

# todo
if header :regex ["subject"] [".*TODO.*"] {
   addflag "$label4"; # todo
}

# mailings
if exists "List-Id" {
   fileinto "INBOX.mailings";
}

# backup
if header :regex ["subject"] [
   ".*backup.*"] {
   fileinto "INBOX.admin.backup";
}

# cron
if exists "X-Cron-Env" {
 fileinto "INBOX.admin.cron";
}

# periodic
if header :regex ["subject"] [
                    ".* security run output",
                    ".* monthly run output",
                    ".* daily run output",
                    ".* weekly run output"] {
 fileinto "INBOX.admin.periodic";
}

# awstats
if header :regex ["subject"] [
                    "awstats report"] {
 fileinto "INBOX.admin.awstats";
 setflag "\\seen";
}

Le script ci-dessous est un exemple de répondeur automatique, dont les notifications sont limitées à une seule notification par jour (pour un même expéditeur) :

require "vacation";

vacation
   :days 1
   :subject "Out of office"
   "I'm currently out of office.";

N’oubliez pas que les options disponibles dépendent de l’implémentation et des extensions de votre serveur SIEVE.