add sendmail support
This commit is contained in:
10
generate.py
10
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))
|
||||
|
||||
@@ -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
|
||||
|
||||
|
||||
Reference in New Issue
Block a user