PhotosAPI/modules/mailer.py

39 lines
1.3 KiB
Python
Raw Normal View History

2023-01-07 22:48:43 +02:00
from smtplib import SMTP, SMTP_SSL
from ssl import create_default_context
2023-06-22 14:17:53 +03:00
from traceback import print_exc
2023-01-07 22:48:43 +02:00
from modules.utils import configGet, logWrite
try:
if configGet("use_ssl", "mailer", "smtp") is True:
mail_sender = SMTP_SSL(
configGet("host", "mailer", "smtp"),
configGet("port", "mailer", "smtp"),
)
logWrite(f"Initialized SMTP SSL connection")
elif configGet("use_tls", "mailer", "smtp") is True:
mail_sender = SMTP(
configGet("host", "mailer", "smtp"),
configGet("port", "mailer", "smtp"),
)
mail_sender.starttls(context=create_default_context())
mail_sender.ehlo()
logWrite(f"Initialized SMTP TLS connection")
else:
mail_sender = SMTP(
2023-03-12 15:59:13 +02:00
configGet("host", "mailer", "smtp"), configGet("port", "mailer", "smtp")
2023-01-07 22:48:43 +02:00
)
mail_sender.ehlo()
logWrite(f"Initialized SMTP connection")
except Exception as exp:
logWrite(f"Could not initialize SMTP connection to: {exp}")
print_exc()
try:
mail_sender.login(
2023-03-12 15:59:13 +02:00
configGet("login", "mailer", "smtp"), configGet("password", "mailer", "smtp")
2023-01-07 22:48:43 +02:00
)
logWrite(f"Successfully initialized mailer")
except Exception as exp:
2023-03-12 15:59:13 +02:00
logWrite(f"Could not login into provided SMTP account due to: {exp}")