Per spingere la posta da postfix a uno script python, aggiungere una linea come questa al suffisso file alias:
# send to [email protected]
emailname: "|/path/to/script.py"
Il python email.FeedParser
module può costruire un oggetto che rappresenta un messaggio di posta elettronica MIME dallo standard input, facendo qualcosa di simile questo:
# Read from STDIN into array of lines.
email_input = sys.stdin.readlines()
# email.FeedParser.feed() expects to receive lines one at a time
# msg holds the complete email Message object
parser = email.FeedParser.FeedParser()
msg = None
for msg_line in email_input:
parser.feed(msg_line)
msg = parser.close()
da qui, è necessario per scorrere i parti MIME di msg
e agire su di essi di conseguenza. Fare riferimento a the documentation on email.Message
objects per i metodi necessari. Ad esempio email.Message.get("Header")
restituisce il valore dell'intestazione di Header
.
fonte
2011-11-29 14:06:42
il problema ora è, voglio che questo accada per ogni e-mail, non solo i domini email che sono presenti. Esiste una wirldcard per tutti i domini? –
@LucasKauffman Questa è una domanda di configurazione postfissa. Probabilmente è meglio chiedere su serverfault.com, dato che non ho una risposta. –
Inoltre, potrebbe essere necessario richiamare l'interprete python in questo modo: 'emailname:" | python path/to/script.py "'. Almeno questo è quello che dovevamo fare su othello. – swandog