From e97f8f0fa936f9d9b88cf4997f7f906443ecbc28 Mon Sep 17 00:00:00 2001 From: niklas Date: Wed, 19 Aug 2020 15:44:38 +0200 Subject: some cli and conf --- .gitignore | 1 + main.py | 62 ++++++++++++++++++++++++++++++++++++++++++++++++++++++++++-- template.ini | 2 ++ 3 files changed, 63 insertions(+), 2 deletions(-) create mode 100644 .gitignore create mode 100644 template.ini diff --git a/.gitignore b/.gitignore new file mode 100644 index 0000000..2f3bc20 --- /dev/null +++ b/.gitignore @@ -0,0 +1 @@ +n_signal.ini diff --git a/main.py b/main.py index 57a8571..e17b3d3 100755 --- a/main.py +++ b/main.py @@ -1,3 +1,61 @@ -#!/usr/bin/env python +#!/usr/bin/env python3 -print("Hello, World!"); +import os +import sys +import getopt +import traceback + +from signald import Signal +from configparser import ConfigParser + + +def usage(): + print(os.path.basename(sys.argv[0]) + " [-h|--help] [-r|--register]") + print("Runs the signal frontend to N. Reads the number to use from n_signal.ini") + print(" -h|--help prints this help and exits") + print(" -r|--register register the number with signal") + + +def read_config(): + config_object = ConfigParser() + #config_object.read(os.environ.get('XDG_CONFIG_HOME') + "/n_signal.ini") + config_object.read("n_signal.ini") + + info = config_object["INFO"] + + return info["number"] + + +def register_signald(number): + s = Signal(number) + s.register(voice=False) + code = input(f"Please input register code send via sms to {number}: ") + s.verify(code) + + +def main(): + number = read_config() + try: + opts, args = getopt.getopt(sys.argv[1:], "hr", ["help", "register"]) + except getopt.GetoptError as err: + # print help information and exit: + print(err) # will print something like "option -a not recognized" + usage() + sys.exit(2) + title = "" + + for o, a in opts: + if o in ("-h", "--help"): + usage() + sys.exit() + elif o in ("-r", "--register"): + register_signald() + sys.exit() + else: + assert False, "unhandled option: " + o + + print(f"Hello, World! {number}") + + +if __name__ == "__main__": + main() diff --git a/template.ini b/template.ini new file mode 100644 index 0000000..2c41f2c --- /dev/null +++ b/template.ini @@ -0,0 +1,2 @@ +[INFO] +number = +12345678 -- cgit v1.2.3-54-g00ecf