Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Fälschlicherweise mehrfache Ausgabe einer Meldung verhindern

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Fälschlicherweise mehrfache Ausgabe einer Meldung verhindern

    This topic has been deleted. Only users with topic management privileges can see it.
    • I
      invidianer last edited by invidianer

      Hallo zusammen!

      In meinem Blockly habe ich offenbar einen Fehler gemacht.
      Die "Waschmaschine fertig"-Meldung kommt mehrmals.

      Kann jemand helfen?

      Ausgabe:
      IMG_0262.jpg

      Blockly:

      <xml xmlns="https://developers.google.com/blockly/xml">
        <variables>
          <variable id="=:.rXuJ4F$c]v7ATT-n.">Verbrauchspreis_pro_kWh</variable>
          <variable id="]gFjxFcKE12,mJ=C%_xi">Waschmaschine_aktiv?</variable>
          <variable type="timeout" id="timeout_fertig">timeout_fertig</variable>
          <variable id="-u=T;@YP4M%QBTCUX,qV">Stromverbrauch_nachher</variable>
          <variable id="d+U-gw:uDzMAO@n%z`!O">Stromverbrauch_vorher</variable>
          <variable id="oyQphhzPm1CF}Rie)a9,">Stromverbrauch_Waschgang</variable>
        </variables>
        <block type="variables_set" id="ubgg`a1#=4[;furS(Zhf" x="87" y="-112">
          <field name="VAR" id="=:.rXuJ4F$c]v7ATT-n.">Verbrauchspreis_pro_kWh</field>
          <value name="VALUE">
            <block type="math_number" id="VT(fO35(]#GN=a`YCWfI">
              <field name="NUM">0.37</field>
            </block>
          </value>
          <next>
            <block type="variables_set" id="vB%/(%QK-.|VB8olH+F+">
              <field name="VAR" id="]gFjxFcKE12,mJ=C%_xi">Waschmaschine_aktiv?</field>
              <value name="VALUE">
                <block type="logic_boolean" id="Zt3N#kbH0XjK+}5)pbJ^">
                  <field name="BOOL">FALSE</field>
                </block>
              </value>
              <next>
                <block type="on" id="Qn2CRF`}__(KPXGK6}S)">
                  <field name="OID">sonoff.0.Waschmaschine.ENERGY_Power</field>
                  <field name="CONDITION">ne</field>
                  <field name="ACK_CONDITION"></field>
                  <statement name="STATEMENT">
                    <block type="controls_if" id="*bOx]47]yxIByA#qqt3J">
                      <mutation elseif="1"></mutation>
                      <value name="IF0">
                        <block type="logic_compare" id=".(cUpb9mFzXnI.u`/RGu">
                          <field name="OP">GT</field>
                          <value name="A">
                            <block type="on_source" id="+L|D9(N^L/_9p**AC4Y#">
                              <field name="ATTR">state.val</field>
                            </block>
                          </value>
                          <value name="B">
                            <block type="math_number" id="IRXiQ:Tf}.:}u-F;(J?|">
                              <field name="NUM">3</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO0">
                        <block type="timeouts_cleartimeout" id="=JSbSA8^An9a5GvpnhX$">
                          <field name="NAME">timeout_fertig</field>
                          <next>
                            <block type="controls_if" id="bo$]}bM|Gn]EOfB}zAUl">
                              <value name="IF0">
                                <block type="logic_compare" id="!+aTX:f8zpg?koPwXqU9">
                                  <field name="OP">EQ</field>
                                  <value name="A">
                                    <block type="variables_get" id="~^+uLCVDphEA1T3csQ;4">
                                      <field name="VAR" id="]gFjxFcKE12,mJ=C%_xi">Waschmaschine_aktiv?</field>
                                    </block>
                                  </value>
                                  <value name="B">
                                    <block type="logic_boolean" id="m9)+OzK@16j;{0FErZe_">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                </block>
                              </value>
                              <statement name="DO0">
                                <block type="variables_set" id="yj^]v8#=,-=xs,C$1:0m">
                                  <field name="VAR" id="]gFjxFcKE12,mJ=C%_xi">Waschmaschine_aktiv?</field>
                                  <value name="VALUE">
                                    <block type="logic_boolean" id="c%J}.8a#0L-%7wEqRPVF">
                                      <field name="BOOL">TRUE</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="variables_set" id="9#YrXdwG5}cOx9Y(@8Wv">
                                      <field name="VAR" id="d+U-gw:uDzMAO@n%z`!O">Stromverbrauch_vorher</field>
                                      <value name="VALUE">
                                        <block type="get_value" id="a8TRMLX$e~nl*Y09Y9iB">
                                          <field name="ATTR">val</field>
                                          <field name="OID">sonoff.0.Waschmaschine.ENERGY_Total</field>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="telegram" id="V79]mw|-s_Wa8itsYZZ^">
                                          <field name="INSTANCE">.1</field>
                                          <field name="LOG"></field>
                                          <field name="SILENT">FALSE</field>
                                          <field name="PARSEMODE">default</field>
                                          <field name="ESCAPING">FALSE</field>
                                          <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                          <value name="MESSAGE">
                                            <shadow type="text" id="x#tx~0e1$9f(D`sZ!a=/">
                                              <field name="TEXT">Waschmaschine wurde gestartet</field>
                                            </shadow>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </statement>
                            </block>
                          </next>
                        </block>
                      </statement>
                      <value name="IF1">
                        <block type="logic_negate" id="^G%R_hQtQM7a9-Iy{Zk;">
                          <value name="BOOL">
                            <block type="timeouts_gettimeout" id="vkIn/V(F$NSX#13S7t35">
                              <field name="NAME">timeout_fertig</field>
                            </block>
                          </value>
                        </block>
                      </value>
                      <statement name="DO1">
                        <block type="timeouts_settimeout" id="w`%fEqzXS#K[?$/JZDGc">
                          <field name="NAME">timeout_fertig</field>
                          <field name="DELAY">180</field>
                          <field name="UNIT">sec</field>
                          <statement name="STATEMENT">
                            <block type="variables_set" id="!31!Yg[A`[Xo.]1qKKn(">
                              <field name="VAR" id="]gFjxFcKE12,mJ=C%_xi">Waschmaschine_aktiv?</field>
                              <value name="VALUE">
                                <block type="logic_boolean" id="w.hL*w4J:xFJwIfBgdRW">
                                  <field name="BOOL">FALSE</field>
                                </block>
                              </value>
                              <next>
                                <block type="variables_set" id="yY,)jgdUB2GJR%%irN/r">
                                  <field name="VAR" id="-u=T;@YP4M%QBTCUX,qV">Stromverbrauch_nachher</field>
                                  <value name="VALUE">
                                    <block type="get_value" id="GEQguIpsHP,A4/^`nhvw">
                                      <field name="ATTR">val</field>
                                      <field name="OID">sonoff.0.Waschmaschine.ENERGY_Total</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="variables_set" id="itWRJGQ7J.:H;#:0pdT)">
                                      <field name="VAR" id="oyQphhzPm1CF}Rie)a9,">Stromverbrauch_Waschgang</field>
                                      <value name="VALUE">
                                        <block type="math_rndfixed" id="`CQLoA,hTBeCF^jC$m7o">
                                          <field name="n">2</field>
                                          <value name="x">
                                            <shadow type="math_number" id="K5?[|]UP!f)gh(WB9YlR">
                                              <field name="NUM">3.1234</field>
                                            </shadow>
                                            <block type="math_arithmetic" id="-(/lVRk*3=g:[5qmWUDn" inline="false">
                                              <field name="OP">MINUS</field>
                                              <value name="A">
                                                <shadow type="math_number" id="my)c;67df,_rqPUn*7Zw">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="variables_get" id="z1D_-h-T3fHL]w@7I8[J">
                                                  <field name="VAR" id="-u=T;@YP4M%QBTCUX,qV">Stromverbrauch_nachher</field>
                                                </block>
                                              </value>
                                              <value name="B">
                                                <shadow type="math_number" id="n]MNz;YDQG/~Z.,SRtR0">
                                                  <field name="NUM">1</field>
                                                </shadow>
                                                <block type="variables_get" id="$?{4ycoT|{bZNx,tb7vH">
                                                  <field name="VAR" id="d+U-gw:uDzMAO@n%z`!O">Stromverbrauch_vorher</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <next>
                                        <block type="telegram" id="CQb6Xn]wF:sTrg((4:I/">
                                          <field name="INSTANCE">.1</field>
                                          <field name="LOG"></field>
                                          <field name="SILENT">FALSE</field>
                                          <field name="PARSEMODE">default</field>
                                          <field name="ESCAPING">FALSE</field>
                                          <field name="DISABLE_WEB_PAGE_PREVIEW">FALSE</field>
                                          <value name="MESSAGE">
                                            <shadow type="text" id="/ol[jFtqydF.de(P.5^p">
                                              <field name="TEXT">Waschmaschine ist fertig!</field>
                                            </shadow>
                                            <block type="text_join" id="H6/ojZvgU{P~Pt6)*5x0">
                                              <mutation items="9"></mutation>
                                              <value name="ADD0">
                                                <block type="text" id="`xB48uoDS?5mFuf~H]Dz">
                                                  <field name="TEXT">Waschmaschine ist fertig!</field>
                                                </block>
                                              </value>
                                              <value name="ADD1">
                                                <block type="text_newline" id="1{zZXpJ(5O)OaE7:;C+=">
                                                  <field name="Type">\n</field>
                                                </block>
                                              </value>
                                              <value name="ADD2">
                                                <block type="text" id="po4kBhKs^=Afge7P@+}-">
                                                  <field name="TEXT">Stromverbrauch: </field>
                                                </block>
                                              </value>
                                              <value name="ADD3">
                                                <block type="variables_get" id="(KJjJ3PKdl32SrGqUe6,">
                                                  <field name="VAR" id="oyQphhzPm1CF}Rie)a9,">Stromverbrauch_Waschgang</field>
                                                </block>
                                              </value>
                                              <value name="ADD4">
                                                <block type="text" id="4P;K$4nY$zo-[Pi%I9XP">
                                                  <field name="TEXT">kWh</field>
                                                </block>
                                              </value>
                                              <value name="ADD5">
                                                <block type="text_newline" id="3u~EQK:5E13$fc~OVM,D">
                                                  <field name="Type">\n</field>
                                                </block>
                                              </value>
                                              <value name="ADD6">
                                                <block type="text" id="h5A}=DuU:Bnkky*=1RC6">
                                                  <field name="TEXT">Stromkosten: </field>
                                                </block>
                                              </value>
                                              <value name="ADD7">
                                                <block type="math_rndfixed" id="6r0lnE16^V98#!gIbVQO">
                                                  <field name="n">2</field>
                                                  <value name="x">
                                                    <shadow type="math_number" id="#ij|D2Km]s#UhaB`Jdo~">
                                                      <field name="NUM">3.1234</field>
                                                    </shadow>
                                                    <block type="math_arithmetic" id="~FzTOPB^Rwjf6}91Sh(p">
                                                      <field name="OP">MULTIPLY</field>
                                                      <value name="A">
                                                        <shadow type="math_number" id="$YJtcuO%6gF[y4@uO]L`">
                                                          <field name="NUM">1</field>
                                                        </shadow>
                                                        <block type="variables_get" id="`=t.T#B21IW5`.w$T!:0">
                                                          <field name="VAR" id="oyQphhzPm1CF}Rie)a9,">Stromverbrauch_Waschgang</field>
                                                        </block>
                                                      </value>
                                                      <value name="B">
                                                        <shadow type="math_number" id=";Q5q@z2EAr]3p=:~jBa%">
                                                          <field name="NUM">0</field>
                                                        </shadow>
                                                        <block type="variables_get" id="R2FGlBV^Vr#d(L5GBq{2">
                                                          <field name="VAR" id="=:.rXuJ4F$c]v7ATT-n.">Verbrauchspreis_pro_kWh</field>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <value name="ADD8">
                                                <block type="text" id="dsx1hx27*8lqAYaqdOuC">
                                                  <field name="TEXT">€</field>
                                                </block>
                                              </value>
                                            </block>
                                          </value>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </statement>
                        </block>
                      </statement>
                    </block>
                  </statement>
                </block>
              </next>
            </block>
          </next>
        </block>
      </xml>
      

      Bildschirmfoto 2023-11-29 um 16.41.28.jpg

      DJMarc75 Homoran paul53 3 Replies Last reply Reply Quote 0
      • DJMarc75
        DJMarc75 @invidianer last edited by

        @invidianer Bitte auch einen Screenshot vom Blockly zeigen.

        I 1 Reply Last reply Reply Quote 1
        • I
          invidianer @DJMarc75 last edited by

          @djmarc75
          Jepp, da warst Du schneller 😉

          1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @invidianer last edited by Homoran

            @invidianer was soll passieren wenn Timeout fertig und power <3?

            I 1 Reply Last reply Reply Quote 1
            • I
              invidianer @Homoran last edited by

              @homoran
              Ehrlich gesagt, ich habe keine Ahnung.
              Das mit dem Timeout wurde mir hier im Forum empfohlen, weil die Maschine zwischendrin immer mal so wenig Strom braucht, daß sonst zwischendurch "Waschmaschine fertig" gemeldet wird.

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

                @invidianer sagte: Meldung kommt mehrmals.

                Starte mal die Javascript-Instanz neu.

                I 2 Replies Last reply Reply Quote 0
                • I
                  invidianer @paul53 last edited by

                  @paul53
                  Das mit dem Historiesieren und Anzeigen über Flot hatte ich schon gemacht, daraus kam ja der Wert 3 zustande.
                  Da er scheinbar die Fertig-Meldung am Ende alle 180 Minuten bringt, muß es ja wohl mit dem Timeout zu tun haben. Würde ich die Stromzufuhr nicht kappen, würde er vermutlich ewig alle 3 Minuten weitermelden.
                  Kann man nicht sagen, daß er nur EINMAL melden und dann aufhören soll?

                  Homoran 1 Reply Last reply Reply Quote 0
                  • Homoran
                    Homoran Global Moderator Administrators @invidianer last edited by

                    @invidianer sagte in Fälschlicherweise mehrfache Ausgabe einer Meldung verhindern:

                    hatte ich schon gemacht

                    mit welcher Auflösung?

                    @invidianer sagte in Fälschlicherweise mehrfache Ausgabe einer Meldung verhindern:

                    daraus kam ja der Wert 3 zustande.

                    und nie 2.9?

                    I 1 Reply Last reply Reply Quote 1
                    • I
                      invidianer @paul53 last edited by

                      @paul53
                      Hatte ich neulich nach einem Update schon gemacht, also alles komplett neugestartet (den ganz RaspberryPi).
                      War vorher und eben auch heute so.

                      paul53 1 Reply Last reply Reply Quote 0
                      • I
                        invidianer @Homoran last edited by

                        @homoran
                        Das weiß ich nicht mehr genau, war jedenfalls eine Riesenfummelei und will ich mir nicht nochmal antun ehrlich gesagt.
                        Kann man nicht einfach nach der ersten Meldung einen "break" einbauen?

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

                          @invidianer sagte: War vorher und eben auch heute so.

                          Überprüfe mal die Selektion der Timer-Variablen bei "stop timeout" und bei "nicht Verzögerung timeout". Eigentlich ist es nicht möglich, dass die Meldung ein zweites Mal kommt, bevor der Timer gestoppt wurde.
                          Schau mal in den erzeugten Javascript-Code, ob sich irgendwo ein Block versteckt hat.

                          I 1 Reply Last reply Reply Quote 1
                          • I
                            invidianer @paul53 last edited by

                            @paul53
                            Ah! Ich weiß, was Du meinst!
                            Bei "timeout_fertig" ist rechts daneben ein Pfeil nach unten, wo man es sozusagen auswählen kann. Aber an einer Stelle ist es nicht da, nämlich bei "Ausführen"! Da habe ich es wohl "per Hand" eingetippt, nicht ausgewählt.
                            Muß ich das korrigieren? Wie erreiche ich, daß da so ein "Auswahlmenü" kommt?

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

                              @invidianer sagte: an einer Stelle ist es nicht da, nämlich bei "Ausführen"!

                              Dort definiert man den Variablenbezeichner für den Timer.

                              I 1 Reply Last reply Reply Quote 1
                              • I
                                invidianer @paul53 last edited by

                                @paul53
                                Achso. Schade, dann ist es so ja wohl richtig 😞
                                Wie meintest Du das mit dem eventuell versteckten Block, den man über Java-Skript sehen kann? Wie mache ich das?

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

                                  @invidianer sagte: versteckten Block, den man über Java-Skript sehen kann?

                                  Ich habe mal importiert: In Zeile 20 Javascript-Code steht

                                        timeout_fertig = null;
                                  

                                  Der ist falsch und für dieses Verhalten verantwortlich.

                                  I 1 Reply Last reply Reply Quote 1
                                  • I
                                    invidianer @paul53 last edited by

                                    @paul53
                                    Hm, okay, danke, aber wie bekomme ich den aus dem Blockly raus? Da sehe ich nirgends eine solche Zuweisung 😞

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

                                      @invidianer sagte: wie bekomme ich den aus dem Blockly raus?

                                      Es ist offenbar eine fehlerhafte Implementation des Timeout-Blocks in neueren Javascript-Adapter-Versionen (ab 29.5.2023).
                                      Workaraound:

                                      Blockly_temp.JPG

                                      I 1 Reply Last reply Reply Quote 1
                                      • I
                                        invidianer @paul53 last edited by

                                        @paul53
                                        Okay, danke, ich habe den "setze timeout_fertig auf wahr" ergänzt.
                                        Krass, dann habe ich quasi einen Fehler aufgedeckt? Dann hatte es ja vielleicht was Gutes 😉

                                        paul53 haus-automatisierung 2 Replies Last reply Reply Quote 0
                                        • paul53
                                          paul53 @invidianer last edited by

                                          @invidianer sagte: Fehler aufgedeckt? Dann hatte es ja vielleicht was Gutes

                                          Habe Issue auf Github erstellt.

                                          I 1 Reply Last reply Reply Quote 2
                                          • I
                                            invidianer @paul53 last edited by

                                            @paul53
                                            Dankeschön!

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            696
                                            Online

                                            31.7k
                                            Users

                                            79.8k
                                            Topics

                                            1.3m
                                            Posts

                                            5
                                            40
                                            1399
                                            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