activate over autossh and tunnel influxdb port
[rpi-ds18b20] / w1-ds18b20-influx.sh
1 #!/bin/sh -e
2
3
4 influx_url="http://127.0.0.1:8086/write?consistency=any&db=ffzg"
5 influx=/dev/shm/temp.influx
6 test -z "$DC" && DC=a125
7
8 :> $influx
9
10 ls /sys/bus/w1/devices/w1_bus_master*/*-*/w1_slave | while read path ; do
11         temp=$( cat $path | grep t= | cut -d= -f2 )
12         if [ ! -z "$temp" -a $temp -ne 85000 ] ; then # 85 is error
13                 temp=$( echo $temp | awk '{ printf "%.3f\n", $1 / 1000 }' )
14                 id=$( echo $path | cut -d/ -f 7 )
15                 name=$( grep "^$id" id2name.txt | cut -d' ' -f2 )
16                 echo "ac_temp,dc=$DC,sensor=$id,name=$name temperature=$temp" >> $influx
17                 echo $temp > /dev/shm/ds18b20.$id
18                 echo $temp > /dev/shm/ds18b20.name.$name
19                 echo $DC $name $id $temp
20                 curl --silent -XPOST $influx_url --data-binary "@$influx"
21         fi
22 done
23
24