Changeset - fc0cda3cdd0b
[Not reviewed]
notifyEmail
0 1 0
Dennis Fink - 3 years ago 2022-07-18 23:40:49
dennis.fink@c3l.lu
Fix email sending
1 file changed with 13 insertions and 4 deletions:
0 comments (0 inline, 0 general)
spaceapi/utils.py
Show inline comments
 
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)
 

	
0 comments (0 inline, 0 general)