# HG changeset patch # User Dennis Fink # Date 2022-07-18 23:40:49 # Node ID fc0cda3cdd0b803e06a76aa2efd40f15d0d1bdb4 # Parent b79d4dc4efe004766c641b4b2ad361371e7fdcac Fix email sending diff --git a/spaceapi/utils.py b/spaceapi/utils.py --- a/spaceapi/utils.py +++ b/spaceapi/utils.py @@ -1,8 +1,10 @@ import email +import email.policy import json import os.path import random import smtplib +import ssl from functools import wraps from time import time @@ -78,13 +80,15 @@ def post_email(subject, body): current_app.config["EMAIL_HOST"], port=current_app.config["EMAIL_PORT"] ) ssl_context = ssl.create_default_context() - smtp_conn.starttls(ssl_context) + smtp_conn.starttls(context=ssl_context) smtp_conn.login( current_app.config["EMAIL_USER"], current_app.config["EMAIL_PASS"] ) - msg = email.message.EmailMessage(email.policy.SMTP) + msg = email.message.EmailMessage(policy=email.policy.default) msg["To"] = current_app.config["EMAIL_ANNOUNCE_ADDRESS"] - msg["From"] = current_app.config["EMAIL_USER"] + msg["From"] = "spaceapibot <{email}>".format( + email=current_app.config["EMAIL_USER"] + ) msg["Subject"] = subject msg.set_content(body) smtp_conn.send_message(msg) @@ -198,8 +202,13 @@ class ActiveStatusv14(Singleton, dict): def send_email(self, value): subject = standard_open_message if value else standard_close_message + message = ( + random.choice(possible_open_tweets) + if value + else random.choice(possible_closed_tweets) + ) try: - post_email(message) + post_email(subject, message) except Exception as e: current_app.logger.error("Sending email failed! %s" % e, exc_info=True)