subject, payload) self.server.sendmail(self.sender, addresses, msg) def send(self, destination, maillist, subject, reply): msg = "From: %s\r\nTo: %s\r\nCC: %s\r\nSubject: %s\r\n\r\n%s" % (self.sender, destination, maillist, "Re: " + subject, reply) self.server.sendmail(self.sender, [destination, maillist], msg) server = smtplib.SMTP(config.get('mailassist', 'smtp'), config.get('mailassist', 'smtp_port')) server.starttls() server.login(config.get('mailassist', 'username'), secret_key) handler = NetHandler(mail, config, server) for num in messages[0].split(' '): typ, data = mail.fetch(num,'(RFC822)') msg = email.message_from_string(data[0][1]) handler.make_current(num) if not process_message(msg, handler): break server.quit() mail.close()
import sys import email from processmail import process_message class StubHandler: def seen_before(self, addr): pass def mark_read(self): pass def mark_unread(self): pass def forward(self, addresses, subject, payload): pass def send(self, destination, maillist, subject, reply): pass def is_interesting(self, payload): return not not payload fp = open(sys.argv[1], 'r') contents = fp.read() fp.close() msg = email.message_from_string(contents) process_message(msg, StubHandler())