Camera scripts

Change-Id: Idb5a5d8bae420a095906f22874f2bb90f56639e5
diff --git a/camera/openvino-mqtt.py b/camera/openvino-mqtt.py
new file mode 100644
index 0000000..836f513
--- /dev/null
+++ b/camera/openvino-mqtt.py
@@ -0,0 +1,49 @@
+import paho.mqtt.client as mqtt
+import time
+import os
+import sys
+
+class Mqtt:
+
+    def __init__(self, ip, port):
+        self.topic = "camera/" + port
+        self.ip = ip
+        self.client = mqtt.Client()
+        self.client.on_connect = self.on_connect
+        self.client.on_message = self.on_message
+
+    # The callback for when the client receives a CONNACK response from the server.
+    def on_connect(self, client, userdata, flags, rc):
+        print("Connected to {} with result code ".format(self.ip, str(rc)))
+        # Subscribing in on_connect() means that if we lose the connection and
+        # reconnect then subscriptions will be renewed.
+        client.subscribe(self.topic)
+
+    # The callback for when a PUBLISH message is received from the server.
+    def on_message(self, client, userdata, msg):
+        cmd = msg.payload.decode()
+        print(msg.topic+" "+cmd)
+        if cmd == "high":
+            print("Change to high resolution")
+            os.system("sudo systemctl stop openvino-camera@low.service")
+            os.system("sudo systemctl start openvino-camera@high.service")
+        elif cmd == "low":
+            print("Change to low resolution")
+            os.system("sudo systemctl stop openvino-camera@high.service")
+            os.system("sudo systemctl start openvino-camera@low.service")
+        else:
+            print("Unknown cmd: " + cmd)
+
+    def start(self):
+        while True:
+            try:
+                self.client.connect(self.ip)
+            except:
+                time.sleep(1)
+                continue
+            break
+        self.client.loop_forever()
+
+if __name__ == '__main__':
+    mqtt = Mqtt(sys.argv[1], sys.argv[2])
+    mqtt.start()