NEWS
Warnung nach 15min
-
Hallo,
ich habe mich mal wieder ohne Erfolg in Blockly versucht. Was ich möchte, ist ganz einfach dass der Telegramm Adapter mir eine Meldung schickt, wenn meine Garage 15min lang offen steht. Besser wäre sogar wenn er mir alle 15min eine Meldung schickt solange das Tor offen ist. Der Zustand ob auf oder zu wird ganz einfach von einem Datenpunkt als True oder false angezeigt.
Dieses Blockly hab ich gemacht:
Hier ist aber das Problem, dass ich jedes Mal nach 15min eine Nachricht bekomme wenn das Tor auffährt. Ich méchte aber nur eine Nachricht, wenn es 15min offen steht...
Könnt ihr mir helfen?
Danke -
@Paan83 sagte in Warnung nach 15min:
Hallo,
ich habe mich mal wieder ohne Erfolg in Blockly versucht. Was ich möchte, ist ganz einfach dass der Telegramm Adapter mir eine Meldung schickt, wenn meine Garage 15min lang offen steht. Besser wäre sogar wenn er mir alle 15min eine Meldung schickt solange das Tor offen ist. Der Zustand ob auf oder zu wird ganz einfach von einem Datenpunkt als True oder false angezeigt.
Dieses Blockly hab ich gemacht:
Hier ist aber das Problem, dass ich jedes Mal nach 15min eine Nachricht bekomme wenn das Tor auffährt. Ich méchte aber nur eine Nachricht, wenn es 15min offen steht...
Könnt ihr mir helfen?
DankeWENN Tor zu DANN stop timeout
-
Ich hab es versucht zu ändern, aber irgendetwas ist noch falsch:
Er stoppt das Timeout nicht -
@Paan83
Verschiebe das "falls... mache..." nach oben vor den timeout Baustein und erweitere ihn um ein "sonst".
Den timeout verschiebst du in den "sonst" Teil.
Im Trigger umstellen von "ist wahr" auf "geändert". -
okay das war hilfreich, ich musste nur noch ein ein falls einfügen. Jetzt läufts! Danke
-
@Paan83 wie kann man sich dann die Meldung z.B. alle 15min wiederholen lassen, solange bis das Tor zu ist?
Und kannst du bitte dein Script zeigen?
-
du nimmst diesen block - der wiederholt alle xxx sekunden(intervall) bis etwas eintritt (in diesem fall falsch ist) dann wird das intervl gestoppt
-
@liv-in-sky danke
-
@liv-in-sky
Ääähm,
Aber die letzte meldung kommt auch noch, wenn es schon ...falsch ist -
@Homoran besser ?
-
@liv-in-sky
Ich denke ja.Bei sowas habe ich auch immer einen Knoten im Hirn
-
@newbie2007 said in Warnung nach 15min:
@Paan83 wie kann man sich dann die Meldung z.B. alle 15min wiederholen lassen, solange bis das Tor zu ist?
Und kannst du bitte dein Script zeigen?
Hey newbie2007,
ich habe deine Frage erst heute morgen gesehen. Ich habe es genauso gelöst wie liv-in-sky es hier beschrieben hat.
Außerdem, habe ich noch ein weiteres kleines Blockly eingefügt, es warnt mich wenn meine Freundin oder ich beim verlassen des Hauses vergessen die Garage zu schliessen. Mit dem TR-064 Adpater kann der ioBroker festestellen wenn wir das Haus verlassen. Wenn jetzt der Zustand von beiden auf false wechselt, dann prüft er einmal ob die Garage geschlossen ist. Es dauert immer 5-10min bis sich der Tr-064 erkennt dass man sich nicht mehr im Netzwerk befindet, so hat man direkt eine Verzögerung mit eingebaut.Ich bin jetzt auf der Arbeit, bei bedarf kann ich das Skript heute Abend mal hier reinposten?
-
Hier ist das Blockly mit der Anwesenheitserkennung:
-
@Paan83
Danke, wenn du das auch noch als export oder Script anhängen könntest, wäre das super. -
@ReverZ said in Warnung nach 15min:
@Paan83
Danke, wenn du das auch noch als export oder Script anhängen könntest, wäre das super.Ja klar mach ich. ich hätte nur noch eine Verbesserung, aber die bekomme ich irgendwie nicht hin, vielleicht kann jemand hier im Forum helfen. Ich wollte jetzt nur noch dieses Timeout stoppen. Denn wenn man mal zB im Urlaub ist, und aus irgendeinem Grund offnet sich der Kontakt, dann bekommt man diese Nachricht bis man wieder zuhause ist. Deswgen wollte ich dieses Skript nach 15min stoppen. Eigentlich reicht es ja wenn man drei Nachrichten bekommt. Ich habe dann versucht ein weiteres Timeout einzufügen um das andere zu stoppen, aber es klappt irgendwie nicht. Kann mir jemand sagen was ich falsch gemacht habe?
Danke euch
<xml xmlns="http://www.w3.org/1999/xhtml"> <variables> <variable type="undefined" id="timeout2">timeout2</variable> <variable type="undefined" id="timeout3">timeout3</variable> </variables> <block type="on" id="@J7$A(Wa/j)#k*S:]vcA" x="-37" y="-187"> <field name="OID">sonoff.0.Garage.POWER</field> <field name="CONDITION">true</field> <field name="ACK_CONDITION"></field> <statement name="STATEMENT"> <block type="timeouts_settimeout" id="R7|7!il#1X)9UnB~y~^%"> <field name="NAME">timeout2</field> <field name="DELAY">5</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="controls_if" id="8m9GpyVi/caqg:@L`}VO"> <value name="IF0"> <block type="logic_operation" id="Wi=Rl?$x=hfh8[(bSGPz"> <field name="OP">AND</field> <value name="A"> <block type="logic_compare" id="H:8KY6)qbZxB[*7iH_~M"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id="#XL@a$ZM#uhttc8Ekq^$"> <field name="ATTR">val</field> <field name="OID">tr-064.0.devices.ChristoesiPhone.active</field> </block> </value> <value name="B"> <block type="logic_boolean" id="qj?);qZX3,ZA)%2!+!fh"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> <value name="B"> <block type="logic_compare" id=".=I?bV;{Rmfr89YHFRoL"> <field name="OP">EQ</field> <value name="A"> <block type="get_value" id=":4kx1@):;n_EL!^4)qK)"> <field name="ATTR">val</field> <field name="OID">tr-064.0.devices.Lulilalo-iPhone.active</field> </block> </value> <value name="B"> <block type="logic_boolean" id="e,`vJ3dD2%ti@If_:`5{"> <field name="BOOL">FALSE</field> </block> </value> </block> </value> </block> </value> <statement name="DO0"> <block type="telegram" id="gD3EOfZb[_L;i?2r2)2g"> <field name="INSTANCE">.0</field> <field name="LOG"></field> <field name="SILENT">FALSE</field> <field name="PARSEMODE">default</field> <value name="MESSAGE"> <shadow type="text" id="dexpp@#Le!)gknKwCRsv"> <field name="TEXT">Achtung Garage offen!!</field> </shadow> </value> </block> </statement> <next> <block type="timeouts_settimeout" id="#vx6DMjY{q`K1P%Xx{n8"> <field name="NAME">timeout3</field> <field name="DELAY">15</field> <field name="UNIT">min</field> <statement name="STATEMENT"> <block type="timeouts_cleartimeout" id="5yw!1B]T*vQc,9.+8nbF"> <field name="NAME">timeout2</field> </block> </statement> </block> </next> </block> </statement> </block> </statement> </block> </xml>
Ich hoffe das ist ok so? Ich habe das Skript einfach exportiert
-
Ich hätte diesen Vorschlag