Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Durchgehend offenstehende Tür + Nachricht

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    Durchgehend offenstehende Tür + Nachricht

    This topic has been deleted. Only users with topic management privileges can see it.
    • ?
      A Former User last edited by

      Hallo Markus, danke für deine Tipps.

      Ist das oben gut gelöst mit Falls Objekt "wurde geändert"? Ich hab es auch mir "ist wahr" und "wurde aktualisiert" versucht. Alles funktioniert gleich gut.

      Stimmt, das mit dem Intervall sehe ich jetzt auch deutlicher.

      Was ich mich jetzt noch frage ist, warum erhalte ich die Meldung immer zwei mal bei Telegram. Auch ein debug output schreibt es zwei mal rein.Bildschirmfoto 2020-05-29 um 02.57.04.png

      paul53 M dslraser 3 Replies Last reply Reply Quote 0
      • paul53
        paul53 @Guest last edited by paul53

        @Paul-OL sagte:

        warum erhalte ich die Meldung immer zwei mal bei Telegram.

        Weil mehr als nur ein Intervall läuft, denn Du hast stop Intervall beim Schließen der Tür vergessen.

        1 Reply Last reply Reply Quote 0
        • M
          Markus84 @Guest last edited by

          @Paul-OL said in Durchgehend offenstehende Tür + Nachricht:

          Ist das oben gut gelöst mit Falls Objekt "wurde geändert"?

          Ja, denn du willst beim Schließen des Fenster das interval abbrechen.

          D4vE 1 Reply Last reply Reply Quote 0
          • dslraser
            dslraser Forum Testing Most Active @Guest last edited by dslraser

            @Paul-OL

            Vorschlag

            Bildschirmfoto 2020-05-29 um 14.14.11.png

            <xml xmlns="https://developers.google.com/blockly/xml">
             <variables>
               <variable id="P!5;J?(GbcTTf.V@ep8P">intervall_dauer</variable>
               <variable id="Ag@opP3u?Tmz4Q;ls4*B">minute</variable>
               <variable id="?Xk;]eNIJp=F]o#z//X_">zaehler</variable>
               <variable type="interval" id="Fenster">Fenster</variable>
             </variables>
             <block type="comment" id="6esKRv5*7lGyI|Vae9/U" x="-12" y="1238">
               <field name="COMMENT">60000 = 1 Minute</field>
               <next>
                 <block type="variables_set" id="tmVlBezs89-J7#6GrI,u">
                   <field name="VAR" id="P!5;J?(GbcTTf.V@ep8P">intervall_dauer</field>
                   <value name="VALUE">
                     <block type="math_arithmetic" id="y3:tj|oZ7D}r;ijPkEIj">
                       <field name="OP">MULTIPLY</field>
                       <value name="A">
                         <shadow type="math_number" id="EnFtjd,:WI_!Tq=phH9A">
                           <field name="NUM">1</field>
                         </shadow>
                         <block type="math_number" id="t@$Rrt8{n+B!1y7su}[5">
                           <field name="NUM">60000</field>
                         </block>
                       </value>
                       <value name="B">
                         <shadow type="math_number" id="JAyxxG}6cOL@k^j--48X">
                           <field name="NUM">2</field>
                         </shadow>
                       </value>
                     </block>
                   </value>
                   <next>
                     <block type="variables_set" id="A3DJ+t]poyn{-{QWwX|d">
                       <field name="VAR" id="Ag@opP3u?Tmz4Q;ls4*B">minute</field>
                       <value name="VALUE">
                         <block type="math_number" id="AG~{3whuTGZ}jjwA4V-Q">
                           <field name="NUM">60000</field>
                         </block>
                       </value>
                       <next>
                         <block type="variables_set" id="hCxlVXP-xf@x}O7tcM)?">
                           <field name="VAR" id="?Xk;]eNIJp=F]o#z//X_">zaehler</field>
                           <value name="VALUE">
                             <block type="math_number" id="1J@4lY0T.(Ne2]=(KP{3">
                               <field name="NUM">0</field>
                             </block>
                           </value>
                           <next>
                             <block type="on_ext" id="g@SDiyxr,4+?}Gr*3/#M">
                               <mutation xmlns="http://www.w3.org/1999/xhtml" items="1"></mutation>
                               <field name="CONDITION">ne</field>
                               <field name="ACK_CONDITION"></field>
                               <value name="OID0">
                                 <shadow type="field_oid" id="zW1m0qyRn?{.@5%@pVak">
                                   <field name="oid">hm-rpc.0.0000D709956847.1.STATE</field>
                                 </shadow>
                               </value>
                               <statement name="STATEMENT">
                                 <block type="controls_if" id="S%,5qiJYrE#DJSLMIKwM">
                                   <value name="IF0">
                                     <block type="on_source" id="B|!vuql4oXcm=gG5;A;=">
                                       <field name="ATTR">state.val</field>
                                     </block>
                                   </value>
                                   <statement name="DO0">
                                     <block type="variables_set" id="Aw~S/0H.|w`a~/j*Pt)w">
                                       <field name="VAR" id="?Xk;]eNIJp=F]o#z//X_">zaehler</field>
                                       <value name="VALUE">
                                         <block type="math_number" id="xjF7TTt)K09}hzGI~:XL">
                                           <field name="NUM">0</field>
                                         </block>
                                       </value>
                                       <next>
                                         <block type="timeouts_clearinterval" id="mlog;TCL$_ewDgYJI!JP">
                                           <field name="NAME">Fenster</field>
                                           <next>
                                             <block type="timeouts_setinterval" id=",]#nBMI|(,.z)r}+x;No">
                                               <field name="NAME">Fenster</field>
                                               <field name="INTERVAL">intervall_dauer</field>
                                               <field name="UNIT">ms</field>
                                               <statement name="STATEMENT">
                                                 <block type="math_change" id="wf[L0455(b0PYeTBZ2pa">
                                                   <field name="VAR" id="?Xk;]eNIJp=F]o#z//X_">zaehler</field>
                                                   <value name="DELTA">
                                                     <shadow type="math_number" id=".2(w$uk3}N?I,8y(RV;]">
                                                       <field name="NUM">1</field>
                                                     </shadow>
                                                   </value>
                                                   <next>
                                                     <block type="telegram" id="i8L7ocnITsG.GIA28HcT">
                                                       <field name="INSTANCE"></field>
                                                       <field name="LOG"></field>
                                                       <field name="SILENT">FALSE</field>
                                                       <field name="PARSEMODE">Markdown</field>
                                                       <value name="MESSAGE">
                                                         <shadow type="text" id="9|Jwn.-%Ror[C?f=~qH8">
                                                           <field name="TEXT">text</field>
                                                         </shadow>
                                                         <block type="text_join" id="yig5gi3D=Q_NPge~J5[8" inline="false">
                                                           <mutation items="7"></mutation>
                                                           <value name="ADD0">
                                                             <block type="text" id="iUY$a;.]VZB!By{+guvh">
                                                               <field name="TEXT">Die Terassentür ist seit</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD1">
                                                             <block type="text" id="8*XLt$Yqb)b82mr#f0OW">
                                                               <field name="TEXT"> </field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD2">
                                                             <block type="math_arithmetic" id="|EZdm6MS6@6lxQ+e%_vD" inline="false">
                                                               <field name="OP">DIVIDE</field>
                                                               <value name="A">
                                                                 <shadow type="math_number" id="O5Ui:|*kw}U}zohk8X0U">
                                                                   <field name="NUM">1</field>
                                                                 </shadow>
                                                                 <block type="math_arithmetic" id="fL41Udeo|0Vms2kEfv8r" inline="false">
                                                                   <field name="OP">MULTIPLY</field>
                                                                   <value name="A">
                                                                     <shadow type="math_number" id=";?N/Mi!L^C5l)gD]09vD">
                                                                       <field name="NUM">1</field>
                                                                     </shadow>
                                                                     <block type="variables_get" id="Kd:*zXJS!W`Wru?2o31{">
                                                                       <field name="VAR" id="?Xk;]eNIJp=F]o#z//X_">zaehler</field>
                                                                     </block>
                                                                   </value>
                                                                   <value name="B">
                                                                     <shadow type="math_number" id="{2o@Az:ob;LXRv3vnv$D">
                                                                       <field name="NUM">1</field>
                                                                     </shadow>
                                                                     <block type="variables_get" id="ax8E,K0e%C:ZojzwfKqs">
                                                                       <field name="VAR" id="P!5;J?(GbcTTf.V@ep8P">intervall_dauer</field>
                                                                     </block>
                                                                   </value>
                                                                 </block>
                                                               </value>
                                                               <value name="B">
                                                                 <shadow type="math_number" id="b:(}aJ(|lE_W_vA|)xDN">
                                                                   <field name="NUM">0</field>
                                                                 </shadow>
                                                                 <block type="variables_get" id="ORklIWpv2-iaaTD^)_jB">
                                                                   <field name="VAR" id="Ag@opP3u?Tmz4Q;ls4*B">minute</field>
                                                                 </block>
                                                               </value>
                                                             </block>
                                                           </value>
                                                           <value name="ADD3">
                                                             <block type="text" id="4S=+1^{z^kgCcE`H0Pr]">
                                                               <field name="TEXT"> </field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD4">
                                                             <block type="text" id="nyABgXm^Q):H-KYpNcYT">
                                                               <field name="TEXT">Minuten geöffnet ☝️</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD5">
                                                             <block type="text_newline" id="G4OJ`CgUZTZ(F=|ZZs#2">
                                                               <field name="Type">\n</field>
                                                             </block>
                                                           </value>
                                                           <value name="ADD6">
                                                             <block type="text" id="oVs8e!ic,R!gif7Vd8:.">
                                                               <field name="TEXT">Bitte schließen ❗️</field>
                                                             </block>
                                                           </value>
                                                         </block>
                                                       </value>
                                                       <value name="USERNAME">
                                                         <block type="text" id="]r{^1:1%6h`lm}xc~dH|">
                                                           <field name="TEXT">Heiko</field>
                                                         </block>
                                                       </value>
                                                     </block>
                                                   </next>
                                                 </block>
                                               </statement>
                                             </block>
                                           </next>
                                         </block>
                                       </next>
                                     </block>
                                   </statement>
                                   <next>
                                     <block type="controls_if" id="u3P(4~w*2-x7qgQy.y{h">
                                       <value name="IF0">
                                         <block type="logic_operation" id="}j0}r~A]ZNq@[XWFY|0o" inline="false">
                                           <field name="OP">AND</field>
                                           <value name="A">
                                             <block type="logic_negate" id=".?0T85dHbCRKpaX~faon">
                                               <value name="BOOL">
                                                 <block type="on_source" id="3%CDY4DJE1nEi)Q.uGd#">
                                                   <field name="ATTR">state.val</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                           <value name="B">
                                             <block type="logic_compare" id="rU(l{6ANj^HN/ZxVKnk8">
                                               <field name="OP">GT</field>
                                               <value name="A">
                                                 <block type="variables_get" id="d~:1r}FW3h6Ql(|{+!,8">
                                                   <field name="VAR" id="?Xk;]eNIJp=F]o#z//X_">zaehler</field>
                                                 </block>
                                               </value>
                                               <value name="B">
                                                 <block type="math_number" id="#HEeC/rSHvB.9:R`]X90">
                                                   <field name="NUM">0</field>
                                                 </block>
                                               </value>
                                             </block>
                                           </value>
                                         </block>
                                       </value>
                                       <statement name="DO0">
                                         <block type="telegram" id="3]}Y/gV;T=4XjBJQ7pY.">
                                           <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="fTxD,jLE+5H;dlVt+#_T">
                                               <field name="TEXT"></field>
                                             </shadow>
                                             <block type="text" id="b@rQ24[qQ!OJz=M$+JXI">
                                               <field name="TEXT">Danke das Du die Terassentür geschlossen hast 👍</field>
                                             </block>
                                           </value>
                                           <value name="USERNAME">
                                             <block type="text" id="B#JOq;2Py6o]WXQ*-~8V">
                                               <field name="TEXT">Heiko</field>
                                             </block>
                                           </value>
                                         </block>
                                       </statement>
                                     </block>
                                   </next>
                                 </block>
                               </statement>
                             </block>
                           </next>
                         </block>
                       </next>
                     </block>
                   </next>
                 </block>
               </next>
             </block>
            </xml>
            

            Ergebnis

            Screenshot_20200529-141058_Telegram.jpg

            1 Reply Last reply Reply Quote 0
            • ?
              A Former User last edited by

              Ich habe folgende Version:

              Bildschirmfoto 2020-06-05 um 00.28.52.png

              Sobald eine Tür auf geht, bekomme ich bis zur unendlichkeit Meldungen.
              Das hört nicht auf. Wo ist mein Denkfehler?

              paul53 1 Reply Last reply Reply Quote 0
              • paul53
                paul53 @Guest last edited by

                @Paul-OL sagte:

                Wo ist mein Denkfehler?

                Es laufen mehrere Timeouts und Intervalle parallel, da beide Türen triggern. Beispiel: Wenn Türkontakt 3 offen meldet und Türkontakt 1 triggert, wird jedesmal für Türkontakt 3 ein neues Timeout und Intervall gestartet.
                Verwende für jede Tür einen eigenen Trigger und triggere auf "wurde geändert".

                1 Reply Last reply Reply Quote 0
                • ?
                  A Former User last edited by

                  Du hast recht, nun funktioniert es.

                  Ich wundere mich, denn ich wollte alle Türen in einem Script zusammenfassen. Und genau deswegen habe ich immer vorher gefragt, ob die Tür aufsteht. Naja ging nicht. Jetzt wo es einzeln ist, geht es wieder.

                  Danke.

                  Hier die funktionierende Lösung:
                  Bildschirmfoto 2020-06-05 um 22.40.15.png

                  Schade, dass es keine Bibliothek oder Verzeichnis mit funktionierenden Lösungen gibt. Beim Programmieren gibt es ja "Entwurfsmuster" design patterns etc. Jeder der neu dabei ist, wird immer wieder Probleme haben und die selben Fehler machen. Mal schauen, was die Zukunft bringt. 😃

                  1 Reply Last reply Reply Quote 1
                  • Cinimod
                    Cinimod Most Active last edited by Cinimod

                    Ich würde auf "geändert" triggern, und als erstes den timeout und interval stoppen.

                    Bildschirmfoto 2020-06-08 um 18.42.04.png

                    jedesmal wenn getriggert (Tür sich öffnet oder schließt) wird, wird der Intervall gestoppt
                    -> falls Tür offen ist startet er den interval neu, ist die wert von tür nicht wahr, macht er nix mehr und der Intervall ist gestoppt.

                    man kann natürlich dann noch einmal nen telegramm schicken wenn tür wieder zu ist

                    Bildschirmfoto 2020-06-08 um 18.50.14.png

                    dslraser paul53 2 Replies Last reply Reply Quote 1
                    • dslraser
                      dslraser Forum Testing Most Active @Cinimod last edited by

                      @Dom-Sch

                      so ähnlich war auch mein Vorschlag...

                      https://forum.iobroker.net/post/441125

                      Cinimod 1 Reply Last reply Reply Quote 0
                      • Cinimod
                        Cinimod Most Active @dslraser last edited by

                        @dslraser said in Durchgehend offenstehende Tür + Nachricht:

                        @Dom-Sch

                        so ähnlich war auch mein Vorschlag...

                        https://forum.iobroker.net/post/441125

                        ja etwas umfangreicher 🙂

                        1 Reply Last reply Reply Quote 0
                        • paul53
                          paul53 @Cinimod last edited by

                          @Dom-Sch sagte:

                          jedesmal wenn getriggert (Tür sich öffnet oder schließt) wird, wird der Intervall gestoppt

                          Das Intervall, das beim Tür schließen gestoppt wurde, wird beim Tür öffnen nochmal gestoppt.

                          @dslraser sagte in Durchgehend offenstehende Tür + Nachricht:

                          so ähnlich war auch mein Vorschlag...

                          Aber nur so ähnlich: Das Intervall wird erst beim erneuten Tür öffnen gestoppt.

                          Cinimod dslraser 2 Replies Last reply Reply Quote 0
                          • Cinimod
                            Cinimod Most Active @paul53 last edited by

                            @paul53 said in Durchgehend offenstehende Tür + Nachricht:

                            @Dom-Sch sagte:

                            jedesmal wenn getriggert (Tür sich öffnet oder schließt) wird, wird der Intervall gestoppt

                            Das Intervall, das beim Tür schließen gestoppt wurde, wird beim Tür öffnen nochmal gestoppt.

                            @dslraser sagte in Durchgehend offenstehende Tür + Nachricht:

                            so ähnlich war auch mein Vorschlag...

                            Aber nur so ähnlich: Das Intervall wird erst beim erneuten Tür öffnen gestoppt.

                            ja sicher, wenn zustand sich öndert löcht er alten interval, aber wenn tür offen startet der interval doch erneut ... sonst wirst du zugeschmissen mit nachrichten ... hast nachher 5 mal den interval am laufen 🙂

                            paul53 1 Reply Last reply Reply Quote 0
                            • paul53
                              paul53 @Cinimod last edited by

                              @Dom-Sch sagte:

                              wenn tür offen startet der interval doch erneut

                              Ja, das funktioniert so auch. Das Stoppen des Intervalls nur beim Schließen der Tür genügt aber.

                              Cinimod 1 Reply Last reply Reply Quote 0
                              • Cinimod
                                Cinimod Most Active @paul53 last edited by Cinimod

                                @paul53 said in Durchgehend offenstehende Tür + Nachricht:

                                @Dom-Sch sagte:

                                wenn tür offen startet der interval doch erneut

                                Ja, das funktioniert so auch. Das Stoppen des Intervalls nur beim Schließen der Tür genügt aber.

                                ja wohl wahr ... reicht auch aus ... ich mache es immer so ... laufendes zeug als erstes löschen 😳

                                dann so :

                                Bildschirmfoto 2020-06-08 um 19.03.45.png

                                1 Reply Last reply Reply Quote 0
                                • dslraser
                                  dslraser Forum Testing Most Active @paul53 last edited by

                                  @paul53 sagte in Durchgehend offenstehende Tür + Nachricht:

                                  Aber nur so ähnlich: Das Intervall wird erst beim erneuten Tür öffnen gestoppt.

                                  stimmt, hast recht. (wie immer😀)

                                  1 Reply Last reply Reply Quote 0
                                  • D4vE
                                    D4vE @Markus84 last edited by

                                    @Markus84 das skript geht so nicht nach der Tür schließen! kommt weiterhin die meldung das die tür noch auf sei ^^

                                    1 Reply Last reply Reply Quote 0
                                    • First post
                                      Last post

                                    Support us

                                    ioBroker
                                    Community Adapters
                                    Donate

                                    938
                                    Online

                                    31.9k
                                    Users

                                    80.2k
                                    Topics

                                    1.3m
                                    Posts

                                    blockly security
                                    6
                                    18
                                    1283
                                    Loading More Posts
                                    • Oldest to Newest
                                    • Newest to Oldest
                                    • Most Votes
                                    Reply
                                    • Reply as topic
                                    Log in to reply
                                    Community
                                    Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                                    The ioBroker Community 2014-2023
                                    logo