NEWS
Blockly Trinkwasserversorgung Haustiere - Zeitintervall
-
Hallo zusammen,
Vorweg, ich bin neu in dieser Welt, bei diesen Blockly bin ich etwas am verzweifeln
Was möchte ich tun:
Ich möchte alle 2 Std. von 8:00 bis 16:00 Uhr für je 1 min, einen Shelly (Tasmota) ansteuern. Dabei geht es um die Trinkwasserversorgung unserer Schildkröten. Zusätzlich habe ich in der Vis. einen Schalter für die Aktivierung - Deaktivierung des Zeitplans eingerichtet.Zeitintervall ein
Zeitintervall aus
Das Skript startet nicht, bin mir auch nicht sicher ob meine Denkweise hier richtig angesetzt ist, nun stehe ich irgendwie am Schlauch.....
Bitte um Hilfe, Vielen Dank! -
Hallo,
ich würde das mit einem Cronjob machen, etwa so:Zu den Uhrzeiten 08.00, 10.00, 12.00, 14.00 und 16.00 soll zuerst geprüft werden, ob Automatik eingeschaltet. Dann wird das TW angestellt und mit einer Verzögerung von 60 Sekunden wieder abgestellt.
Kann das bei mir leider nicht testen, aber vielleicht funktioniert das bei Dir.
Hier noch der Export des Blockly:
<block xmlns="https://developers.google.com/blockly/xml" type="schedule" id="`%hTXXDe$^nf^?DWl/sX" x="-112.75999999999999" y="-87.92"> <field name="SCHEDULE">0 8,10,12,14,16 * * *</field> <statement name="STATEMENT"> <block type="comment" id="Ct#v!Zqr[v.V1}vBvJ`?"> <field name="COMMENT">TW einschalten</field> <next> <block type="controls_if" id="`k(@hIXgK/bNH~C5xDjF"> <value name="IF0"> <block type="logic_compare" id="7@h=wo,*j5%qQMAn?^^!"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="7/y:8IIJb/K|az`C%J:m"> <field name="ATTR">val</field> <field name="OID">ID auswählen</field> </block> </value> <value name="B"> <block type="logic_boolean" id="?UduEw62Nh`,#JfS9ifS"> <field name="BOOL">TRUE</field> </block> </value> </block> </value> <statement name="DO0"> <block type="comment" id="u*^=j-[y{MS~TdPL$?/{"> <field name="COMMENT">TW einschalten</field> <next> <block type="control" id="zn$)J1:2*0-s5W7esskK"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation> <field name="OID">Object ID</field> <field name="WITH_DELAY">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="A?Z4z-|A$ZOF.XY2r_g|"> <field name="BOOL">TRUE</field> </block> </value> <next> <block type="comment" id="L07Gwy2Bce;/^m^Jc=#S"> <field name="COMMENT">TW ausschalten</field> <next> <block type="control" id="dhUYX``#R,4^eW*KTW1#"> <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="true"></mutation> <field name="OID">Object ID</field> <field name="WITH_DELAY">TRUE</field> <field name="DELAY_MS">60</field> <field name="UNIT">sec</field> <field name="CLEAR_RUNNING">FALSE</field> <value name="VALUE"> <block type="logic_boolean" id="sfRCn4C_)|acWGPID6pW"> <field name="BOOL">FALSE</field> </block> </value> </block> </next> </block> </next> </block> </next> </block> </statement> </block> </next> </block> </statement> </block>
Ich würde vielleicht noch eine Message senden, wenn das TW ein- und ausgestellt wird. Dann kannst Du auch dann, wenn Du nicht daheim bist zumindest sehen, ob das Script läuft und Deine Schildis immer frisches Wasser bekommen.
Das sähe dann so aus, wenn Du Pushover benutzt. -
@opossum sagte:
mit einem Cronjob machen, etwa so:
Der erste "*" im Cronjob muss durch eine "0" ersetzt werden, da sonst jede Minute getriggert wird.
-
Hallo, @paul53 ,
danke für den Hinweis. Habe es in meinem Post berichtigt.
-
@opossum sagte:
Das sähe dann so aus, wenn Du Pushover benutzt.
Ein Pushover genügt, da so zweimal gleichzeitig gesendet wird, denn die Verzögerung wirkt nur auf setState().
-