Пример #1
0
def send_mails(modeladmin, request, queryset):
    connection = None
    for message in queryset:
        if connection == None:
            connection = get_connection(backend=EMAIL_BACKEND)
        try:
            logging.info("sending message '%s' to %s" % (message.subject.encode("utf-8"), u", ".join(message.to_addresses).encode("utf-8")))
            email = message.email
            email.connection = connection
            email.send()
            message.delete()
        except (socket_error, smtplib.SMTPSenderRefused, smtplib.SMTPRecipientsRefused, smtplib.SMTPAuthenticationError), err:
            message.defer()
            logging.info("message deferred due to failure: %s" % err)
            MessageLog.objects.log(message, 3, log_message=str(err)) # @@@ avoid using literal result code
Пример #2
0
def send_mails():
    messages = Message.objects.order_by('when_added')
    if messages.count() <= 0:
        return True
    connection = get_connection(backend=EMAIL_BACKEND)
    for message in messages:
        if not email_re.search(str(message.email)):
            message.delete()
            continue
        try:
            email = message.email
            email.connection = connection
            email.send()
            message.delete()
        except (socket_error, smtplib.SMTPSenderRefused, smtplib.SMTPRecipientsRefused, smtplib.SMTPAuthenticationError), err:
            message.defer()
            MessageLog.objects.log(message, 3, log_message=str(err))