diff options
Diffstat (limited to 'abs/core/LinHES-system/msg_client.py')
-rwxr-xr-x | abs/core/LinHES-system/msg_client.py | 31 |
1 files changed, 24 insertions, 7 deletions
diff --git a/abs/core/LinHES-system/msg_client.py b/abs/core/LinHES-system/msg_client.py index 3c53857..175933f 100755 --- a/abs/core/LinHES-system/msg_client.py +++ b/abs/core/LinHES-system/msg_client.py @@ -3,6 +3,8 @@ import socket import sys +import argparse +import pickle # Create a UDS socket sock = socket.socket(socket.AF_UNIX, socket.SOCK_STREAM) @@ -33,10 +35,25 @@ def send_message(message): if __name__ == "__main__": - if len(sys.argv) == 2: - send_message(sys.argv[1]) - else: - print "Unknown command" - print "usage: %s msg to display" % sys.argv[0] - sys.exit(2) - sys.exit(0) + parser = argparse.ArgumentParser() + + parser.add_argument('--tag', action='store', dest='tag',help='message tag') + parser.add_argument('--timeout', action='store', dest='timeout',help='time to display message') + action = parser.add_mutually_exclusive_group(required=True) + action.add_argument('--msg', action='store', dest='msg', help='Add message to the queue') + action.add_argument('--clear', action='store_true', help='Remove message from queue that match tag') + action.add_argument('--kill', action='store_true', help='Kill current msg thats displayed') + + results = parser.parse_args() + resultsdict = vars(results) + + if results.msg : + cmd = "msg" + elif results.clear: + cmd = "clear" + elif results.kill: + cmd = "kill" + + arg_dict = {'cmd':cmd , 'msg':resultsdict['msg'] , 'tag':resultsdict['tag'] , 'timeout':resultsdict['timeout']} + send_message(pickle.dumps(arg_dict)) + #sys.exit(0) |