summaryrefslogtreecommitdiff
path: root/bigclown-mqtt2influxdb/files/init
diff options
context:
space:
mode:
authorKarel Kočí <karel.koci@nic.cz>2018-09-12 17:18:42 +0200
committerKarel Kočí <karel.koci@nic.cz>2018-09-12 17:25:25 +0200
commit40764118789f79f79e943a95b805db4e929ec5d7 (patch)
tree3245894722bcd065d12857360dd0df9b0d1ccae2 /bigclown-mqtt2influxdb/files/init
parentdf3d314797ebc02e0e0ffcd3d53dcc7186964296 (diff)
downloadopenwrt-personal-pkgs-40764118789f79f79e943a95b805db4e929ec5d7.tar.gz
openwrt-personal-pkgs-40764118789f79f79e943a95b805db4e929ec5d7.tar.bz2
openwrt-personal-pkgs-40764118789f79f79e943a95b805db4e929ec5d7.zip
Tweak bigclown packages
Diffstat (limited to 'bigclown-mqtt2influxdb/files/init')
-rw-r--r--bigclown-mqtt2influxdb/files/init57
1 files changed, 57 insertions, 0 deletions
diff --git a/bigclown-mqtt2influxdb/files/init b/bigclown-mqtt2influxdb/files/init
new file mode 100644
index 0000000..f9efc0e
--- /dev/null
+++ b/bigclown-mqtt2influxdb/files/init
@@ -0,0 +1,57 @@
+#!/bin/sh /etc/rc.common
+
+START=99
+STOP=1
+
+USE_PROCD=1
+
+PROG=/usr/bin/mqtt2influxdb
+CONF=/tmp/etc/bc-mqtt2influxdb.conf
+
+append() {
+ local cfg="$1"
+ local uci_name="$2"
+ local out_name="$3"
+ local default="$4"
+ config_get val $cfg $uci_name $default
+ if [ -n "$val" ]; then
+ echo "$out_name $val" >> $CONF
+ fi
+}
+
+start_service() {
+ config_load bc-gateway-usb-dongle
+
+ rm -rf $CONF
+ echo "Generating bc-gateway-usb-dongle config file in $CONF"
+
+ append gateway name 'name:' usb-dongle
+ append gateway device 'device:' /dev/ttyUSB0
+ append gateway automatic_rename_kit_nodes 'automatic_rename_kit_nodes:' 1
+ append gateway base_topic_prefix 'base_topic_prefix:'
+
+ echo "mqtt:" >> $CONF
+
+ append mqtt host ' host:' localhost
+ append mqtt port ' port:' 1883
+ append mqtt cafile ' cafile:'
+ append mqtt certfile ' certfile:'
+ append mqtt keyfile ' keyfile:'
+
+ procd_open_instance
+ procd_set_param respawn
+ procd_set_param command "$PROG" -c "$CONF" --debug
+ procd_set_param stdout 1
+ procd_set_param stderr 1
+ procd_close_instance
+}
+
+stop_service() {
+ service_stop "$PROG"
+ ps | grep "$PROG" | grep -v grep | sed -e 's/^\s*\([0-9]\+\)\s.*$/\1/' | xargs -r -- kill -9
+}
+
+service_triggers()
+{
+ procd_add_reload_trigger 'bc-gateway-usb-dongle'
+}