From e19677805feb91304eccc3f4a450725c3f32ab49 Mon Sep 17 00:00:00 2001 From: Yannik Enss Date: Sat, 3 Apr 2021 13:12:14 +0200 Subject: [PATCH] add sendmail support --- generate.py | 10 ++++++++++ generator.conf.example | 1 + 2 files changed, 11 insertions(+) diff --git a/generate.py b/generate.py index baabe5f..b804508 100755 --- a/generate.py +++ b/generate.py @@ -11,6 +11,7 @@ import argparse import quopri import requests import json +import subprocess from pprint import pprint CONFIG_FILE = "generator.conf" @@ -134,6 +135,7 @@ if __name__ == "__main__": parser.add_argument("--debug", action="store_true", help=argparse.SUPPRESS) parser.add_argument("--write-mbox", action="store_true") parser.add_argument("--send-mm", action="store_true") + parser.add_argument("--send-mail", action="store_true") args = parser.parse_args() config = yaml.full_load(open(args.config)) @@ -209,6 +211,14 @@ if __name__ == "__main__": for top in to: pprint(top.__dict__) pprint(context) + elif args.send_mail: + msg = email.message.EmailMessage() + msg.set_content(template.render(context)) + msg["Subject"] = j2env.from_string(config["invite_subject"]).render(context) + msg["From"] = email.utils.formataddr((config["redeleitung"]["name"], config["redeleitung"]["email"])) + msg["To"] = config["invite_mail"] + subprocess.run([*config["sendmail"], config["invite_mail"]], input=str(msg), text=True) + elif args.write_mbox: msg = email.message.EmailMessage() msg.set_content(template.render(context)) diff --git a/generator.conf.example b/generator.conf.example index 2f6d23d..cd85f52 100644 --- a/generator.conf.example +++ b/generator.conf.example @@ -63,6 +63,7 @@ place: Big Blue Button invite_mail: fsr-einladung@fsmi.uni-karlsruhe.de invite_subject: 'Einladung zum Fachschaftsrat am {{date|weekday}}, dem {{date|date}}' +sendmail: ["/usr/sbin/sendmail"] mm_url: https://mattermost.fsmi.uni-karlsruhe.de/hooks/whatever