def incoming_email(request, file_key): logging.info('processing incoming email %s'%file_key) data = get_blob_data(file_key) if data is None: raise Http404 logging.info('email fetch ok') email = EmailMessage(data) a_to = parseaddr(email.to)[1] a_from = parseaddr(email.sender)[1] logging.info('email.to=%s'%a_to) logging.info('email.sender=%s'%a_from) if re.match(r'^import-order@',a_to): logging.info('import order') process_incoming_email_order(email) return HttpResponse("ok - import order") if a_from == '*****@*****.**': logging.info('import order') process_incoming_email_order(email) return HttpResponse("ok - import order") r = re.match(r'^import-email-(\d+)@',a_to) if r: logging.info('import email, id %s'%r.group(1)) process_incoming_email_template(r.group(1),data) return HttpResponse("ok - import email") return HttpResponse("ok -ign")
def parse_email(request, file_key): data = get_blob_data(file_key) if data is None: raise Http404 r = "" email = EmailMessage(data) # fix_encoding(email) email.check_initialized() email.sender = getConfig("MAIL_TEST_FROM") email.to = getConfig("MAIL_TEST_TO") if getConfigBool("ENABLE_MAIL_TEST",False): logging.info('sending email....') email.send() r = email.to_mime_message() return HttpResponse('parse ok - %s'%r)