summaryrefslogtreecommitdiff
path: root/bigclown-leds/files
diff options
context:
space:
mode:
Diffstat (limited to 'bigclown-leds/files')
-rwxr-xr-xbigclown-leds/files/bigclown-leds32
-rwxr-xr-xbigclown-leds/files/init21
2 files changed, 53 insertions, 0 deletions
diff --git a/bigclown-leds/files/bigclown-leds b/bigclown-leds/files/bigclown-leds
new file mode 100755
index 0000000..8c16ffc
--- /dev/null
+++ b/bigclown-leds/files/bigclown-leds
@@ -0,0 +1,32 @@
+#!/usr/bin/env python3
+import paho.mqtt.client as mqtt
+
+
+def on_connect(client, userdata, flags, rc):
+ print("Connected with result code "+str(rc))
+ client.subscribe("node/lcd-thermostat:0/led/#")
+
+
+# The callback for when a PUBLISH message is received from the server.
+def on_message(client, userdata, msg):
+ topic = msg.topic[26:]
+ client.publish(
+ 'node/power-controller:0/led-strip/-/' + topic,
+ payload=msg.payload)
+
+#def on_log(mqttc, obj, level, string):
+# print(string)
+
+
+def main():
+ client = mqtt.Client()
+ client.on_connect = on_connect
+ client.on_message = on_message
+ #client.on_log = on_log
+
+ client.connect("127.0.0.1", 1883, 60)
+ client.loop_forever()
+
+
+if __name__ == '__main__':
+ main()
diff --git a/bigclown-leds/files/init b/bigclown-leds/files/init
new file mode 100755
index 0000000..fa56a36
--- /dev/null
+++ b/bigclown-leds/files/init
@@ -0,0 +1,21 @@
+#!/bin/sh /etc/rc.common
+
+START=99
+STOP=1
+
+USE_PROCD=1
+
+PROG=/usr/bin/bigclown-leds
+
+start_service() {
+ procd_open_instance
+ procd_set_param respawn ${respawn_threshold:-3600} ${respawn_timeout:-5} ${respawn_retry:-5}
+ procd_set_param command "$PROG"
+ procd_set_param stdout 1
+ procd_set_param stderr 1
+ procd_close_instance
+}
+
+stop_service() {
+ service_stop "$PROG"
+}