diff --git a/observium_sms_remote.py b/observium_sms_remote.py new file mode 100755 index 0000000..bbd41cd --- /dev/null +++ b/observium_sms_remote.py @@ -0,0 +1,35 @@ +#!/usr/bin/python3 + +import logging +import time +import os +import sys +from datetime import datetime +from observium_sms import assemble_sms +import sms_functions + +def main(): + # Setup logging + sms_msg = assemble_sms() + hostname = sys.argv[1] + sms_number = sys.argv[2] + + success = False + retries = 0 + max_retries = 3 + + while not success and retries < max_retries: + retries += 1 + try: + # Escape message and number for remote shell + sms_msg = shlex.quote(sms_msg) + sms_number = shlex.quote(sms_number) + # Contact remote host + subprocess.run([ '/usr/bin/ssh', hostname, '/opt/sms/send_sms.py', sms_msg, sms_number ], check=True) + except: + raise + else: + success = True + +if __name__ == "__main__": + main()