exec-notify/src/de/p1st/exec_notify/notify.py
Daniel Langbein 19d4188205 v0.1.5
add usage and improve doc; lazy config loading;
2021-11-23 19:18:38 +01:00

48 lines
958 B
Python
Executable File

#!/usr/bin/env python3
from sys import argv, stderr, stdin
import socket
from de.p1st.exec_notify.lib import exec, config, mail
def main():
"""
Send an email with some content and optionally specify an email subject.
Usage:
echo <body> | de-p1st-notify
echo <body> | de-p1st-notify <subject>
de-p1st-notify <body>
de-p1st-notify <subject> <body>
"""
BODY = None
subj = None
hostname = socket.gethostname()
if len(argv) > 3:
print('execNotify>> Expected at most two arguments!', file=stderr)
exit(1)
if len(argv) == 2 or len(argv) == 3:
subj = argv[1]
if len(argv) == 3:
BODY = argv[2]
if subj is None:
subj = 'notify'
if BODY is None:
BODY = stdin.read()
SUBJECT = f'{hostname} | {subj}'
print(SUBJECT)
print(BODY)
mail.sendMailOrWriteToFile(SUBJECT=SUBJECT, BODY=BODY)
if __name__ == '__main__':
main()