The imapautofiler.rules
Module¶
-
class
imapautofiler.rules.
And
(rule_data, cfg)¶ Bases:
imapautofiler.rules.Rule
True if all of the sub-rules are true.
The rule data must contain a
rules
list with other rules specifications.Actions on the sub-rules are ignored.
-
NAME
= 'and'¶
-
check
(message)¶ Test the rule on the message.
Parameters: - conn (imapclient.IMAPClient) – connection to IMAP server
- message (email.message.Message) – the message object to process
-
-
class
imapautofiler.rules.
HeaderExactValue
(rule_data, cfg)¶ Bases:
imapautofiler.rules._HeaderMatcher
-
class
imapautofiler.rules.
HeaderExists
(rule_data, cfg)¶ Bases:
imapautofiler.rules.Rule
Looks for a message to have a given header.
-
NAME
= 'header-exists'¶
-
check
(message)¶ Test the rule on the message.
Parameters: - conn (imapclient.IMAPClient) – connection to IMAP server
- message (email.message.Message) – the message object to process
-
-
class
imapautofiler.rules.
HeaderRegex
(rule_data, cfg)¶ Bases:
imapautofiler.rules._HeaderMatcher
Implements regular expression matching for headers.
-
class
imapautofiler.rules.
HeaderSubString
(rule_data, cfg)¶ Bases:
imapautofiler.rules._HeaderMatcher
Implements substring matching for headers.
-
class
imapautofiler.rules.
Headers
(rule_data, cfg)¶ Bases:
imapautofiler.rules.Rule
True if all of the headers match.
The rule data must contain a
headers
list of mappings containing aname
for the header itself and either asubstring
key mapped to a simple string or aregex
key mapped to a regular expression to be matched against the value of the header.-
NAME
= 'headers'¶
-
check
(message)¶ Test the rule on the message.
Parameters: - conn (imapclient.IMAPClient) – connection to IMAP server
- message (email.message.Message) – the message object to process
-
-
class
imapautofiler.rules.
IsMailingList
(rule_data, cfg)¶ Bases:
imapautofiler.rules.HeaderExists
Looks for a message to have a given header.
-
NAME
= 'is-mailing-list'¶
-
-
class
imapautofiler.rules.
Or
(rule_data, cfg)¶ Bases:
imapautofiler.rules.Rule
True if any one of the sub-rules is true.
The rule data must contain a
rules
list with other rules specifications.Actions on the sub-rules are ignored.
-
NAME
= 'or'¶
-
check
(message)¶ Test the rule on the message.
Parameters: - conn (imapclient.IMAPClient) – connection to IMAP server
- message (email.message.Message) – the message object to process
-
-
class
imapautofiler.rules.
Recipient
(rule_data, cfg)¶ Bases:
imapautofiler.rules.Or
True if any recipient sub-rule matches.
The rule data must contain a
recipient
mapping containing either asubstring
key mapped to a simple string or aregex
key mapped to a regular expression.-
NAME
= 'recipient'¶
-
-
class
imapautofiler.rules.
Rule
(rule_data, cfg)¶ Bases:
object
Base class
-
NAME
= None¶
-
check
(message)¶ Test the rule on the message.
Parameters: - conn (imapclient.IMAPClient) – connection to IMAP server
- message (email.message.Message) – the message object to process
-
get_action
()¶
-
-
class
imapautofiler.rules.
TimeLimit
(rule_data, cfg)¶ Bases:
imapautofiler.rules.Rule
True if message is older than the specified ‘age’ measured in number of days.
-
NAME
= 'time-limit'¶
-
check
(message)¶ Test the rule on the message.
Parameters: - conn (imapclient.IMAPClient) – connection to IMAP server
- message (email.message.Message) – the message object to process
-
-
imapautofiler.rules.
factory
(rule_data, cfg)¶ Create a rule processor.
Parameters: - rule_data (dict) – portion of configuration describing the rule
- cfg (dict) – full configuration data
Using the rule type, instantiate a rule processor that can check the rule against a message.