summaryrefslogtreecommitdiff
path: root/bigclown-mqtt2influxdb/files
diff options
context:
space:
mode:
Diffstat (limited to 'bigclown-mqtt2influxdb/files')
-rw-r--r--bigclown-mqtt2influxdb/files/config.yml60
-rw-r--r--bigclown-mqtt2influxdb/files/init39
2 files changed, 62 insertions, 37 deletions
diff --git a/bigclown-mqtt2influxdb/files/config.yml b/bigclown-mqtt2influxdb/files/config.yml
new file mode 100644
index 0000000..922c1b9
--- /dev/null
+++ b/bigclown-mqtt2influxdb/files/config.yml
@@ -0,0 +1,60 @@
+mqtt:
+ host: 127.0.0.1
+ port: 1883
+
+influxdb:
+ host: 127.0.0.1
+ port: 8086
+ database: node
+
+points:
+ - measurement: temperature
+ topic: node/+/thermometer/+/temperature
+ fields:
+ value: $.payload
+ tags:
+ id: $.topic[1]
+ channel: $.topic[3]
+
+ - measurement: relative-humidity
+ topic: node/+/hygrometer/0:4/relative-humidity
+ fields:
+ value: $.payload
+ tags:
+ id: $.topic[1]
+
+ - measurement: illuminance
+ topic: node/+/lux-meter/0:0/illuminance
+ fields:
+ value: $.payload
+ tags:
+ id: $.topic[1]
+
+ - measurement: pressure
+ topic: node/+/barometer/0:0/pressure
+ fields:
+ value: $.payload
+ tags:
+ id: $.topic[1]
+
+ - measurement: co2
+ topic: node/+/co2-meter/-/concentration
+ fields:
+ value: $.payload
+ tags:
+ id: $.topic[1]
+
+ - measurement: voltage
+ topic: node/+/battery/+/voltage
+ fields:
+ value: $.payload
+ tags:
+ id: $.topic[1]
+
+ - measurement: button
+ topic: node/+/push-button/+/event-count
+ fields:
+ value: $.payload
+ tags:
+ id: $.topic[1]
+ channel: $.topic[3]
diff --git a/bigclown-mqtt2influxdb/files/init b/bigclown-mqtt2influxdb/files/init
index f9efc0e..76e5d2d 100644
--- a/bigclown-mqtt2influxdb/files/init
+++ b/bigclown-mqtt2influxdb/files/init
@@ -6,41 +6,12 @@ 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
-}
+CONF=/etc/bc-mqtt2influxdb.yml
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 command "$PROG" -c "$CONF"
procd_set_param stdout 1
procd_set_param stderr 1
procd_close_instance
@@ -48,10 +19,4 @@ start_service() {
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'
}