Danke ... doch so einfach

#!/bin/bash cd /home/rrdtool # Read temperature from sensor Arbeitszimmer #Will man nur 2 Kommastellen oder weniger angezeigt bekommen, muss man einfach nur den scale Wert anpassen (0,1,2,3...) tempread=`echo "scale=1; $(grep 't=' /sys/bus/w1/devices/w1_bus_master1/28-00000400b1b3/w1_slave | awk -F 't=' '{print $2}') / 1000" | bc -l`
<persistence type="file" path="/var/lib/linknx" /> </services> <objects> <object id="Weather_Temperature" gad="1/0/9" type="9.xxx" flags="cwu" init="persist" log="false">Weather_Temperature</object> <object type="1.001" id="LampeJanina" gad="2/2/1">Objet test</object> <object id="Wohnzimmer_Temperature" gad="1/4/5" type="9.xxx" flags="cwu" init="persist" log="true">Wohnzimmer_Temperature</object> </objects> <rules> <rule id="Aussen_TEMP_LOG"> <condition type="object" id="Weather_Temperature" trigger="true" /> <actionlist type="if-true"> <action type="shell-cmd" cmd="/home/rrdtool/update_database.sh"/> </actionlist> </rule> <rule id="Wohnzimmer_TEMP_LOG"> <condition type="object" id="Wohnzimmer_Temperature" trigger="true" /> <actionlist type="if-true"> <action type="shell-cmd" cmd="/home/rrdtool/update_database_wz.sh"/> </actionlist> </rule> </rules> </config>
2013-2-6 19:9:58 > 20.5 2013-2-6 19:9:58 > 20.5 2013-2-6 19:14:58 > 20.6 2013-2-6 19:14:58 > 20.6
2013-02-06 19:09:57 [ INFO] TimerManager: TimerTask execution. 1360174197 2013-02-06 19:09:57 [ INFO] Rule: Evaluate rule sendArbeitszimmerTemp 2013-02-06 19:09:57 [ INFO] Condition: TimerCondition evaluated as '1' 2013-02-06 19:09:57 [ INFO] Rule: Rule sendArbeitszimmerTemp evaluated as 1, prev value was 0 2013-02-06 19:09:57 [ INFO] Rule: Evaluate rule sendArbeitszimmerTemp 2013-02-06 19:09:57 [ INFO] Condition: TimerCondition evaluated as '0' 2013-02-06 19:09:57 [ INFO] Rule: Rule sendArbeitszimmerTemp evaluated as 0, prev value was 1 2013-02-06 19:09:57 [ INFO] PeriodicTask: Rescheduled at 2013-2-6 19:14:57 (1360174497) 2013-02-06 19:09:57 [ INFO] Action: Execute ShellCommandAction: /home/rrdtool/update_database_az.sh 2013-02-06 19:09:58 [ INFO] KnxConnection: write(gad=0/1/11, buf, len=4) 2013-02-06 19:09:58 [ INFO] Object: New value 20.5 for object Arbeitszimmer_Temperatur (type: 9.xxx) 2013-02-06 19:09:58 [ INFO] FilePersistentStorage: Writing log'20.5' for object 'Arbeitszimmer_Temperatur' 2013-02-06 19:09:58 [ INFO] Object: New value 20.5 for object Arbeitszimmer_Temperatur (type: 9.xxx) 2013-02-06 19:09:58 [ INFO] FilePersistentStorage: Writing log'20.5' for object 'Arbeitszimmer_Temperatur'
<objects> <object id="Arbeitszimmer_Temperatur" gad="0/1/11" type="9.xxx" flags="cwtus" log="true">Arbeitszimmer_Temperatur</object> </objects> </rule> <!-- update der Arbeitszimmer Temp alle 5min --> <rule id="sendArbeitszimmerTemp"> <condition type="timer" trigger="true"> <every>300</every> </condition> <actionlist> <action type="shell-cmd" cmd="/home/rrdtool/update_database_az.sh"/> </actionlist> </rule>
#!/bin/bash cd /home/rrdtool # Read temperature from sensor Arbeitszimmer OBJECTID="Arbeitszimmer_Temperatur" #Will man nur 2 Kommastellen oder weniger angezeigt bekommen, muss man einfach nur den scale Wert anpassen (0,1,2,3...) tempread=`echo "scale=1; $(grep 't=' /sys/bus/w1/devices/w1_bus_master1/28-00000400b1b3/w1_slave | awk -F 't=' '{print $2}') / 1000" | bc -l` printf '<write><object id="%s" value=%s /></write>\4' "$OBJECTID" "$tempread" | netcat localhost 1028 > /dev/null 2>&1
<?xml version="1.0" ?> <config> <services> <knxconnection url="ip:127.0.0.1" /> <xmlserver type="inet" port="1028"/> </services> <objects> <object type="1.001" id="licht_on_off" gad="1/1/1">Licht</object> <object type="3.008" id="rolladen" gad="1/2/1">Rolladen</object> <object type" " id="AufrufGA" gad="2/0/1>AufrufGA</object> </objects> <rules> <rule id="Szene1"> <condition type="Object-src" id="AufrufGA" trigger="true"> </condition> <actionlist> <action type="set-value" id="licht_on_off" value="1" /> <action type="set-value" id="rolladen" value="1" /> </actionlist> </rule> </rules> </config>
<?xml version="1.0" ?> <config> <services> <knxconnection url="ip:127.0.0.1" /> <xmlserver type="inet" port="1028"/> </services> <objects> <object type="1.001" id="licht_on_off" gad="1/1/1" >Licht</object> <object type="3.008" id="rollladen" gad="1/2/1" >Rollladen</object> <object type="1.001" id="AufrufGA" gad="2/0/1" >AufrufGA</object> </objects> <rules> <rule id="Szene1"> <condition type="object" id="AufrufGA" value="1" trigger="true" /> <actionlist> <action type="set-value" id="licht_on_off" value="1" /> <action type="set-value" id="rollladen" value="1" /> </actionlist> </rule> </rules> </config>
Wir verarbeiten personenbezogene Daten über die Nutzer unserer Website mithilfe von Cookies und anderen Technologien, um unsere Dienste bereitzustellen. Weitere Informationen findest Du in unserer Datenschutzerklärung.
Indem Du unten auf "ICH stimme zu" klickst, stimmst Du unserer Datenschutzerklärung und unseren persönlichen Datenverarbeitungs- und Cookie-Praktiken zu, wie darin beschrieben. Du erkennst außerdem an, dass dieses Forum möglicherweise außerhalb Deines Landes gehostet wird und bist damit einverstanden, dass Deine Daten in dem Land, in dem dieses Forum gehostet wird, gesammelt, gespeichert und verarbeitet werden.
Kommentar