class SMTPSerialiser(object): """ Utility class to proxy SMTP data from mock to boss. It is used to serialise SMTP data as JSON data. """ def __init__(self, **kwargs): self.data = kwargs email = ensure_is_python_string(self.data['data']) self.message = Parser().parsestr(email) def serialize(self): return json.dumps(self.data) def __getitem__(self, key): return self.message.__getitem__(key) @property def content(self): payload = self.message.get_payload(decode=True) return ensure_is_python_string(payload) @property def subject(self): subj = email_lib.header.decode_header(self.message['Subject'])[0][0] return ensure_is_python_string(subj)
class SMTPSerialiser(object): """ Utility class to proxy SMTP data from mock to boss. It is used to serialise SMTP data as JSON data. """ def __init__(self, **kwargs): self.data = kwargs self.message = Parser().parsestr(self.data['data']) def serialize(self): return json.dumps(self.data) def __getitem__(self, key): return self.message.__getitem__(key) @property def content(self): return self.message.get_payload()
def cb_action_DEFER(module, filepath): log.info(_("Deferring message in %s (by module %s)") % (filepath, module)) # parse message headers message = Parser().parse(open(filepath, 'r'), True) internal_time = parsedate_tz(message.__getitem__('Date')) internal_time = time.mktime(internal_time[:9]) + internal_time[9] now_time = time.time() delta = now_time - internal_time log.debug(_("The time when the message was sent: %r") % (internal_time), level=8) log.debug(_("The time now: %r") % (now_time), level=8) log.debug(_("The time delta: %r") % (delta), level=8) if delta > 432000: # TODO: Send NDR back to user log.debug(_("Message in file %s older then 5 days, deleting") % (filepath), level=8) os.unlink(filepath)
def cb_action_DEFER(module, filepath): log.info(_("Deferring message in %s (by module %s)") % (filepath, module)) # parse message headers message = Parser().parse(open(filepath, 'r'), True) internal_time = parsedate_tz(message.__getitem__('Date')) internal_time = time.mktime(internal_time[:9]) + internal_time[9] now_time = time.time() delta = now_time - internal_time log.debug(_("The time when the message was sent: %r") % (internal_time), level=8) log.debug(_("The time now: %r") % (now_time), level=8) log.debug(_("The time delta: %r") % (delta), level=8) if delta > 432000: # TODO: Send NDR back to user log.debug(_("Message in file %s older then 5 days, deleting") % (filepath), level=8) os.unlink(filepath)