Sifter3 is a Python 3 implementation of the Sieve email filter language (RFC 5228)
Capability name | Description | RFC number | Status |
---|---|---|---|
body | Provides a test for matching against the the body of the message being processed |
supported | |
comparator-* | adds the indicated comparator for use with the :comparator argument |
supported | |
convert | adds a new Sieve test and action that enable Sieve scripts to perform data conversions on the message being delivered. |
||
copy | |||
date | The “date” extension gives Sieve the ability to test date and time values. |
||
duplicate | Adds test ‘duplicate’ that can be used to test whether a particular message is a duplicate, i.e., whether a copy of it was seen before by the delivery agent that is executing the Sieve script. |
||
editheader | Adds actions ‘addheader’ and ‘deleteheader’ that modify the header of the message being processed |
||
enclose | adds the “enclose” action for enclosing a message with a wrapper. |
||
encoded-character | changes the interpretation of strings to allow arbitrary octets and Unicode characters to be represented using US-ASCII |
||
enotify | adds the ‘notify’ action for notifying user about the received message. It also provides two new tests: valid_notify_method checks notification URIs for validity; notify_method_capability can check recipients capabilities. |
supported | |
envelope | adds the ‘envelope’ test for testing the message transport sender and recipient address |
||
envelope-deliverby | The “envelope-deliverby” extension extends the envelope test to allow checking of information associated with the Deliver-By ESMTP extension defined in [RFC2852]. |
||
envelope-dsn | The “envelope-dsn” extension extends the envelope test to allow checking of information associated with the DSN ESMTP extension defined in [RFC3461]. |
||
environment | The “environment” extension provides a new environment test that can be used to implement scripts that behave differently when moved from one system to another or otherwise operated in different contexts. |
||
ereject | adds the ‘ereject’ action for refusing delivery of a message. The refusal should happen as early as possible (e.g. at the protocol level) and might not preserve the exact reason for refusal if it contains non-US-ASCII text. |
supported | |
extlists | Adds the “:list” match type to certain Sieve tests, and the “:list” argument to the “redirect” action. The “:list” match type changes tests to match values against values stored in one or more externally stored lists. The “:list” argument to the redirect action changes the redirect action to forward the message to email addresses stored in the externally stored list. |
||
extracttext | adds the “extracttext” action for extracting text from a MIME body part. |
||
fcc | Adds the “:fcc” parameter to Sieve action commands that generate additional messages. |
||
fileinto | adds the ‘fileinto’ action for delivering to a mailbox other than the default |
supported | |
foreverypart | adds the “foreverypart” and “break” actions for iterating through MIME parts of a message. |
||
ihave | The “ihave” extension provides a means to write scripts that make use of other extensions only when they are actually available. |
supported | |
imap4flags | Adds actions and tests for manipulating IMAP flags | partial | |
imapsieve | Add Sieve processing for IMAP events. | ||
include | adds the “include” command to execute other Sieve scripts, the “return” action from an included script, and the “global” command and “global” variables namespace to access variables shared among included scripts. |
||
index | The “index” extension provides a means to limit header and address tests to specific instances when more than one field of a given type is present. |
||
mailbox | adds test for checking for mailbox existence and a new optional argument to fileinto for creating a mailbox before attempting mail delivery. |
||
mboxmetadata | adds tests for checking for mailbox metadata item existence and for retrieving of a mailbox metadata value. |
||
mime | adds the “:mime” and “:anychild” tagged arguments to the “header”, “address”, and “exists” tests. Adds the “:type”, “:subtype”, “:contenttype”, and “:param” options when “:mime” is used with the “header” test. |
||
redirect-deliverby | The “redirect-deliverby” extension extends the redirect action to allow specification of the BY ESMTP parameter associated with the Deliver-By SMTP extension defined in [RFC2852]. |
||
redirect-dsn | The “redirect-dsn” extension extends the redirect action to allow specification of the NOTIFY and RET ESMTP parameters associated with the DSN SMTP extension defined in [RFC3461]. |
||
regex | supported | ||
reject | adds the “reject” action for refusing delivery of a message. The exact reason for refusal is conveyed back to the client. |
supported | |
relational | Extends existing conditional tests in Sieve language to allow relational operators |
||
replace | adds the “replace” action for replacing a MIME body part of a message. |
||
servermetadata | adds tests for checking for server metadata item existence and for retrieving of a server metadata value. |
||
spamtest | Provides a test to check for varying likelihood of an email message being spam. |
||
spamtestplus | Provides a test to check for varying likelihood of an email message being spam, possibly using a percentage range. |
||
special-use | adds a test for checking whether an IMAP special-use attribute is assigned for a particular mailbox or any mailbox, and it adds the ability to file messages into a mailbox identified solely by a special-use attribute. |
||
subaddress | adds the ‘:user’ and ‘:detail’ address parts for use with the address and envelope tests |
||
vacation | adds an action for generating an auto-reply saying that the original message will not be read or answered immediately |
||
vacation-seconds | adds the “:seconds” parameter to the Sieve Vacation extension. Implementations that support this MUST also support “vacation”. |
||
variables | Adds support for variables to the Sieve filtering language. | supported | |
virustest | Provides a test to check for varying likelihood of there being malicious content in an email message. |