summaryrefslogtreecommitdiffstats
path: root/abs/core/LinHES-system/msg_client.py
diff options
context:
space:
mode:
Diffstat (limited to 'abs/core/LinHES-system/msg_client.py')
-rwxr-xr-xabs/core/LinHES-system/msg_client.py31
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)