Wie bereits erwähnt, habe ich ein paar Teile des Blockly Codes entfern, da a) ich es nicht benötige und b) ich leider nicht mehr weiß wer das Original zusammengebaut hat und ich deshalb nicht nachfragen konnte !
Zuerst habe ich den Grenzwert etwas angepasst auf 60% rlf, das hat folgenden Grund, bei 12°C Außentemperatur und 97% Luftfeuchtigkeit und einer Innentemperatur von 19 - 20°C und einer rlf vom 62%, was wir ja zur Zeit haben würde der Luftwechsel ein paar Stunden dauern, um die rlf. im Innenraum auf 57% abzusenken, auf Deutsch leider ist es noch nicht kalt genug
Also bleib die rlf. erstmal bei 60% was bei den Außen- und Innentemperaturen noch völlig Akzeptabel ist... siehe https://www.technik22.de/d/88-mit-smarthmoe-richtig-luften
Dann habe ich noch eine 2. Alexa für die Aussagen hinzugefügt, durchs HomeOffice bin ich nicht sehr oft im Wohnzimmer und verstehe hier im Büro die Ansagen nicht gut, deshalb spricht der Dot der sich im Büro befindet die Ansagen mit einer Verzögerung nach,
das gilt auch für die Wiederholungen und auch für die Ansage das alles wieder Normal ist.
DIe "cnt" Werte habe ich z.Zt. bei mir auf Null gesetzt, mir reicht eine Absenkung erstmal eine Entlüftung bis auf den Grenzwert von 60%
Spoiler
<xml xmlns="http://www.w3.org/1999/xhtml"> <block type="comment" id="kfJ1u;BEitPRQwp=V5mt" x="-483" y="-337">
<field name="COMMENT">Schlafzimmer</field>
<next>
<block type="variables_set" id="L4@{TPImrb~6|Eq,^9s%">
<field name="VAR">Grenzwert</field>
<value name="VALUE">
<block type="math_number" id=")H=B7aTy72%KQ%V6abE2">
<field name="NUM">60</field>
</block>
</value>
<next>
<block type="on" id="tx2BIvKz9i)Mwrq/gkpC">
<field name="OID">innogy-smarthome.0.Schlafzimmer.Raumklima.Humidity</field>
<field name="CONDITION">ne</field>
<field name="ACK_CONDITION"></field>
<statement name="STATEMENT">
<block type="debug" id="1|{ab+|d6u+#X[;(a@t`">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text" id="a6dI2)2Q;Gy`A[R0UM.o">
<field name="TEXT"></field>
</shadow>
<block type="on_source" id="kC;MY*-`RkLqLjFw:Vx4">
<field name="ATTR">state.val</field>
</block>
</value>
<next>
<block type="controls_if" id="ea;ru#Sj4!t75(Ws{ZQb">
<value name="IF0">
<block type="logic_operation" id="Cf1IxquXYdsnlyo6mCv-" inline="false">
<field name="OP">AND</field>
<value name="A">
<block type="logic_compare" id="g,~qc7rzm@K#tv/S-A(h">
<field name="OP">EQ</field>
<value name="A">
<block type="get_value" id=")4F(.w/ZirY/;vRV;#+U">
<field name="ATTR">val</field>
<field name="OID">innogy-smarthome.0.Flur.Aussentür.IsOpen</field>
</block>
</value>
<value name="B">
<block type="logic_boolean" id="AzW-MV%EKkE3(9P,:n*I">
<field name="BOOL">FALSE</field>
</block>
</value>
</block>
</value>
<value name="B">
<block type="logic_compare" id="p#*o_9ao9M^u4r_;7r;.">
<field name="OP">GT</field>
<value name="A">
<block type="on_source" id="[WaAWp@KjGU,zEjOFrry">
<field name="ATTR">state.val</field>
</block>
</value>
<value name="B">
<block type="variables_get" id="PbZbL:ml-]vd^BZ~WybC">
<field name="VAR">Grenzwert</field>
</block>
</value>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="debug" id="NJK/?KNU{)C-,XxFcpB(">
<field name="Severity">log</field>
<value name="TEXT">
<shadow type="text" id="-h#=AT;0nfnzNoExPQYq">
<field name="TEXT">Grenzwert überschritten bei geschlossenem Fenster</field>
</shadow>
</value>
<next>
<block type="control" id=":SQ6@BV=,I!oX!z07MO/">
<mutation delay_input="true"></mutation>
<field name="OID">alexa2.0.Echo-Devices.90F00818732500U1.Commands.speak</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">3</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="text" id="6)rM~]c9snQTZ|.k#V9p">
<field name="TEXT">Luftfeuchtigkeit im Schlafzimmer zu hoch, Fenster öffnen </field>
</block>
</value>
<next>
<block type="control" id="3O}xNrrLOUA7Z+bQh|o^">
<mutation delay_input="true"></mutation>
<field name="OID">alexa2.0.Echo-Devices.G090LF1072121L9S.Commands.speak</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">5</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="text" id="I:JwaAaz`%]wHS4ZKs9{">
<field name="TEXT">Luftfeuchtigkeit im Schlafzimmer zu hoch, Fenster öffnen </field>
</block>
</value>
<next>
<block type="variables_set" id="~_#]M==F0e[,WH_Ff)?c">
<field name="VAR">cnt</field>
<value name="VALUE">
<block type="math_number" id="yV]kOzu1_Jlm4p-=wS@D">
<field name="NUM">0</field>
</block>
</value>
<next>
<block type="timeouts_setinterval" id="p.E@7|[Sz6n:f-Ev`bik">
<field name="NAME">Intervall</field>
<field name="INTERVAL">2</field>
<field name="UNIT">min</field>
<statement name="STATEMENT">
<block type="control" id="l6d;^df6}Ewv6l0GSc9B">
<mutation delay_input="true"></mutation>
<field name="OID">alexa2.0.Echo-Devices.90F00818732500U1.Commands.speak</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">3</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="text" id="NRlEfC/R:(5tby3Lu1Uu">
<field name="TEXT">Luftfeuchtigkeit im Schlafzimmer zu hoch Fenster, öffnen </field>
</block>
</value>
<next>
<block type="control" id="[@%*4Q^pwQeD5G-_+yR*">
<mutation delay_input="true"></mutation>
<field name="OID">alexa2.0.Echo-Devices.G090LF1072121L9S.Commands.speak</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">5</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="text" id="H^;nWUjo?:RVdqazg`TO">
<field name="TEXT">Luftfeuchtigkeit im Schlafzimmer zu hoch, Fenster öffnen </field>
</block>
</value>
<next>
<block type="math_change" id="CH,`a@ru/-lYtkRATL4i">
<field name="VAR">cnt</field>
<value name="DELTA">
<shadow type="math_number" id="*[e}_pK;(u;^+Lch@G~)">
<field name="NUM">0</field>
</shadow>
</value>
<next>
<block type="controls_if" id="Q[5j;V)L7yh|NF4J%755">
<value name="IF0">
<block type="logic_compare" id=".)qf#Cwt#i+*!.@VO.+B">
<field name="OP">GTE</field>
<value name="A">
<block type="variables_get" id="x{%i}R=^i=dGuujU#H`,">
<field name="VAR">cnt</field>
</block>
</value>
<value name="B">
<block type="math_number" id="kI/+D^m;H|g*tgf6oBCG">
<field name="NUM">0</field>
</block>
</value>
</block>
</value>
<statement name="DO0">
<block type="control" id="O25OG_S9wY/k[%x1n23[">
<mutation delay_input="true"></mutation>
<field name="OID">alexa2.0.Echo-Devices.90F00818732500U1.Commands.speak</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">3</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="text" id="/t`9s2YI5a8%X4)Z2]3l">
<field name="TEXT">Luftfeuchtigkeit im Schlafzimmer ist wieder auf Normalniau</field>
</block>
</value>
<next>
<block type="control" id="i3ndor:Er!`zDa|@p7v-">
<mutation delay_input="true"></mutation>
<field name="OID">alexa2.0.Echo-Devices.G090LF1072121L9S.Commands.speak</field>
<field name="WITH_DELAY">TRUE</field>
<field name="DELAY_MS">5</field>
<field name="UNIT">sec</field>
<field name="CLEAR_RUNNING">FALSE</field>
<value name="VALUE">
<block type="text" id="DJScy`.IX~dUM]YdIGzs">
<field name="TEXT">Luftfeuchtigkeit im Schlafzimmer ist wieder auf Normalniveau</field>
</block>
</value>
</block>
</next>
</block>
</statement>
<next>
<block type="timeouts_clearinterval" id="T6Tr*FFDKOL|s(%[Fqo8">
<field name="NAME">Intervall</field>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</statement>
</block>
</next>
</block>
</next>
</block>
</xml>