Store logged data in spool directory
[usb-wde1-tools.git] / munin / usb-wde1-log-last.sh
index 0752498968fe6beb8fb8eaf63124474a733445b9..620dd0cca8414063f1ed138478fabe1270bd024c 100755 (executable)
@@ -4,11 +4,32 @@
 # run this script as follows:
 # $ nohup ./usb-wde1-log-last.sh &
 #
+# Use --dummy-data as parameter to log dummy data only
+#
 # License: http://www.gnu.org/licenses/agpl.html AGPL
 # Author: Christian Weiske <cweiske@cweiske.de>
 #
 # FIXME: send RESET or INIT and M2
-# FIXME: use absolute path for log-single-line.sh
-#
-socat /dev/ttyUSB0,b9600 STDOUT\
- | ./log-single-line.sh /tmp/usb-wde1-last
+
+device=/dev/ttyUSB0
+
+if [ ! -d /var/spool/usb-wde1 ]; then
+    mkdir /var/spool/usb-wde1
+fi
+
+curdir="$(dirname "$0")"
+if [ "$1" = "--dummy-data" ]; then
+    $curdir/../dummy-data-generator.php\
+     | $curdir/log-single-line.sh /var/spool/usb-wde1/usb-wde1-last
+else
+    if [ ! -r $device ]; then
+        echo "Device $device is not readable"
+        exit 1
+    fi
+
+    #socat breaks something that leads to
+    # WRONG VAL, WRONG CMD and FullBuff->Reset
+    # errors
+    socat $device,b9600,min=1,time=1,brkint=0,icrnl=0,ixoff=1,imaxbel=0,opost=0,isig=0,icanon=0,iexten=0,echo=0,echoe=0,echok=0 STDOUT\
+     | $curdir/log-single-line.sh /var/spool/usb-wde1/usb-wde1-last
+fi