Tach allerseits
Ich hab mir ein Blockly geschrieben, das Uhrzeitabhängig ein Fensterzustand abfragt, und bei Offen ein Telegram schickt.
Jetzt würd ich das gern so umschreiben, das es nicht nur ein Fenster abfrägt, sondern eben alle. Und das eben am besten alles in diesem Blockly. Wie würdet ihr das umsetzten ?
Anbei mein Versuch für das erste Fenster:
<xml xmlns="https://developers.google.com/blockly/xml">
<variables>
<variable type="interval" id="Intervall">Intervall</variable>
</variables>
<block type="controls_if" id="m#w,{e3iK]pe)`1iPY;u" x="-12" y="13">
<value name="IF0">
<block type="time_compare" id="n.kiq!R)M2=(lpZIBUd=">
<mutation xmlns="http://www.w3.org/1999/xhtml" end_time="true"></mutation>
<field name="OPTION">between</field>
<field name="START_TIME">20:00</field>
<field name="END_TIME">23:00</field>
</block>
</value>
<statement name="DO0">
<block type="on" id="H]~Jt_;z[bu-m+vlVDqv">
<field name="OID">hmip.0.devices.3014F711A00000DBE9953074.channels.1.windowOpen</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="controls_if" id="kEYcUI_gk4tHC0_%gVfg">
<mutation else="1"></mutation>
<value name="IF0">
<block type="logic_operation" id="b:4R|Ish?Ud3W/nq^P%r">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="6^.ROl-]cg!ua%/f@#{=">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id="KTO,ZYF]Q.t}fd9-},4n">
<field name="ATTR">val</field>
<field name="OID">hmip.0.devices.3014F711A00000DBE9953074.channels.1.windowOpen</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="?@T.QQOZn{8eyrEq=5?8">
<field name="BOOL">TRUE</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="IfB[X{$bD4i$7k?90k3_">
<field name="OP">LT</field>
<value name="A">
<block type="get_value" id="b=^4IAuwjVhvYLuVn2O?">
<field name="ATTR">val</field>
<field name="OID">openweathermap.0.forecast.current.temperature</field>
</block>
</value>
<value name="B">
<block type="math_number" id="b1Le-*8G-tF9.tg!=0BX">
<field name="NUM">10</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="timeouts_setinterval" id="-@,T)XH{XhH-KaFWD8X;">
<field name="NAME">Intervall</field>
<field name="INTERVAL">1</field>
<field name="UNIT">min</field>
<statement name="STATEMENT">
<block type="telegram" id="-dAX^XP6s0B(+hUYGzen">
<field name="INSTANCE"></field>
<field name="LOG"></field>
<field name="SILENT">FALSE</field>
<field name="PARSEMODE">default</field>
<value name="MESSAGE">
<shadow type="text" id="=5hd1YOmHxLN83Mu+9tk">
<field name="TEXT">Das Küchenfenster ist offen</field>
</shadow>
</value>
</block>
</statement>
</block>
</statement>
<statement name="ELSE">
<block type="timeouts_clearinterval" id="mDtar$u(Fc3/-nqW?}.V">
<field name="NAME">Intervall</field>
</block>
</statement>
</block>
</statement>
</block>
</statement>
</block>
</xml>