fix: misc smtp login & error reporting fixes

This commit is contained in:
2024-02-17 18:07:32 +01:00
parent fd5754e1c2
commit 8c7a748222
2 changed files with 13 additions and 3 deletions

View File

@@ -27,9 +27,14 @@ def debug_send(uuid, data, fail_it=False):
def email_send(dispatch_uuid, email_address, message, smtp_target, smtp_user, smtp_pass):
'''Send message via email'''
if not email_address:
print("Missing E-Mail Address for STMP send", file=sys.stderr)
report_failed_dispatch(dispatch_uuid, "Missing email-field in dispatch infor")
return
subject = "Atlantis Dispatch"
smtphelper.smtp_send(smtp_target, smtp_user, smtp_pass, email_address, subject, message)
report_failed_dispatch(uuid, "Email dispatch not yet implemented")
confirm_dispatch(dispatch_uuid)
def ntfy_api_get_topic(ntfy_api_server, ntfy_api_token, username):
'''Get the topic of the user'''

View File

@@ -28,7 +28,12 @@ def smtp_send(server, user, password, recipient, subject, body):
# Establish a connection to the SMTP server
server = smtplib.SMTP(smtp_server, smtp_port)
server.starttls() # Secure the connection
server.login(sender_email, sender_password)
# fix login user if necessary #
sender_user = sender_email
if "@" in sender_email:
sender_user = sender_email.split("@")[0]
server.login(sender_user, sender_password)
# Send the email
server.sendmail(sender_email, recipient_email, message.as_string())