mirror of
https://github.com/QingdaoU/OnlineJudge.git
synced 2024-12-29 08:32:08 +00:00
34 lines
941 B
Python
34 lines
941 B
Python
import logging
|
|
|
|
from celery import shared_task
|
|
from envelopes import Envelope
|
|
|
|
from options.options import SysOptions
|
|
|
|
logger = logging.getLogger(__name__)
|
|
|
|
|
|
def send_email(from_name, to_email, to_name, subject, content):
|
|
smtp = SysOptions.smtp_config
|
|
if not smtp:
|
|
return
|
|
envlope = Envelope(from_addr=(smtp["email"], from_name),
|
|
to_addr=(to_email, to_name),
|
|
subject=subject,
|
|
html_body=content)
|
|
try:
|
|
envlope.send(smtp["server"],
|
|
login=smtp["email"],
|
|
password=smtp["password"],
|
|
port=smtp["port"],
|
|
tls=smtp["tls"])
|
|
return True
|
|
except Exception as e:
|
|
logger.exception(e)
|
|
return False
|
|
|
|
|
|
@shared_task
|
|
def send_email_async(from_name, to_email, to_name, subject, content):
|
|
send_email(from_name, to_email, to_name, subject, content)
|