add sendmail support

This commit is contained in:
2021-04-03 13:12:14 +02:00
parent 8b47b00c7c
commit e19677805f
2 changed files with 11 additions and 0 deletions

View File

@@ -11,6 +11,7 @@ import argparse
import quopri import quopri
import requests import requests
import json import json
import subprocess
from pprint import pprint from pprint import pprint
CONFIG_FILE = "generator.conf" CONFIG_FILE = "generator.conf"
@@ -134,6 +135,7 @@ if __name__ == "__main__":
parser.add_argument("--debug", action="store_true", help=argparse.SUPPRESS) parser.add_argument("--debug", action="store_true", help=argparse.SUPPRESS)
parser.add_argument("--write-mbox", action="store_true") parser.add_argument("--write-mbox", action="store_true")
parser.add_argument("--send-mm", action="store_true") parser.add_argument("--send-mm", action="store_true")
parser.add_argument("--send-mail", action="store_true")
args = parser.parse_args() args = parser.parse_args()
config = yaml.full_load(open(args.config)) config = yaml.full_load(open(args.config))
@@ -209,6 +211,14 @@ if __name__ == "__main__":
for top in to: for top in to:
pprint(top.__dict__) pprint(top.__dict__)
pprint(context) 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: elif args.write_mbox:
msg = email.message.EmailMessage() msg = email.message.EmailMessage()
msg.set_content(template.render(context)) msg.set_content(template.render(context))

View File

@@ -63,6 +63,7 @@ place: Big Blue Button
invite_mail: fsr-einladung@fsmi.uni-karlsruhe.de invite_mail: fsr-einladung@fsmi.uni-karlsruhe.de
invite_subject: 'Einladung zum Fachschaftsrat am {{date|weekday}}, dem {{date|date}}' 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 mm_url: https://mattermost.fsmi.uni-karlsruhe.de/hooks/whatever