Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. Blockly
  5. [VORLAGE] Blockly Meldung wenn Waschmaschine fertig

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.4k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.0k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    15
    1
    2.5k

[VORLAGE] Blockly Meldung wenn Waschmaschine fertig

Geplant Angeheftet Gesperrt Verschoben Blockly
blocklytemplate
242 Beiträge 59 Kommentatoren 82.6k Aufrufe 51 Watching
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • XsevX Xsev

    Vielleicht kann mir jemand helfen? Mein Problem ist, das seit geraumer Zeit mein Skript nicht mehr wirklich zuverlässig funktioniert. Das Problem ist, das die Meldung Waschmaschine Fertig teils mit 30-60 Minuten Verzögerung kommt. Ich bin jetzt beim Grenzwert schon auf 16 W welcher lockert reicht aber wenn die Maschine fertig ist pendelt die Anzeige so zwischen 3-6W aber die Meldung wird erst viel zu spät gesendet, eigentlich sollte dafür doch der 40Sek Timeout sein? Anfangs hatte ich den Sonoff POW in Verdacht aber der ist jetzt frisch geflasht aber leider keine änderung.

    2020-01-04 (1).png

    Was mir noch aufgefallen ist, wenn ich die Maschine ausschalte, kommt die Meldung etwa 1 Minute später wenn sie vorher noch nicht kam.
    Der Datenpunkt beim Starten wird auch zuverlässig geschalten.

    rantanplanR Offline
    rantanplanR Offline
    rantanplan
    schrieb am zuletzt editiert von
    #118

    @Xsev sagte in [VORLAGE] Blockly Meldung wenn Waschmaschine fertig:

    Mein Problem ist, das seit geraumer Zeit mein Skript nicht mehr wirklich zuverlässig funktioniert.

    Was wurde geändert bevor es nicht mehr funktionierte?
    Das Blocky ist ja fast unverändert. Bis auf Deine Variable "WaschmaschineFERTIG".
    Die wird hier nie auf "falsch" gesetzt.
    Läuft da eventuell noch ein anderes Script das die Variablen "WaschmaschineAN" und "WaschmaschineFERTIG" überwacht/ändert?

    Was mir noch aufgefallen ist, wenn ich die Maschine ausschalte, kommt die Meldung etwa 1 Minute später wenn sie vorher noch nicht kam.

    Etwa 1 Minute sind wahrscheinlich die 40 Sekunden.

    Rantanplan

    CCU3 / MS Server 2019(VM) / Scripten mit Blockly

    1 Antwort Letzte Antwort
    1
    • XsevX Offline
      XsevX Offline
      Xsev
      schrieb am zuletzt editiert von Xsev
      #119

      @rantanplan
      Ja also es is ganz komisch, mir ist vorhin beim Testen aufgefallen das im Log nichts mehr ankommt, werder Verzögerung gestartet noch sonst eine Meldung obwohl der Datenpunkt "Waschmaschine läuft"immer auf true gesetzt wurde. Jetzt hab ich das Script mal komplett gelöscht und neu importiert und siehe da, jetzt bekomme ich wieder Logmeldungen und bei den ersten Tests lief es auch wieder wie gewohnt, mit Fertig Meldung, kurz nach Fertigstellung.

      Ich hab eigentlich nichts verändert, das Trockner Script is absolut das gleiche nur mit eigenen Datenpunkten, das läuft/lief bislang immer zuverlässig.

      Irgendwas is da "im Hintergrund" schief gelaufen...

      Ja die "WaschmaschineFertig" setzte ich mit einem Button in VIS auf False, das ist nur für eine visuelle Darstellung der Meldung.
      Ich hoffe das wars und es passt wieder.

      Vielen Dank für deine Hilfe und das Skript!! :+1:

      P.s.
      Gibt es eigentlich eine Möglichkeit die Telegram Meldung nur einmal zu senden wenn die Maschine fertig ist? Wenn man die Maschine nicht direkt ausschaltet bekommt man durch den Knitterschutz sonst dauernd Meldungen.

      rantanplanR 1 Antwort Letzte Antwort
      0
      • XsevX Xsev

        @rantanplan
        Ja also es is ganz komisch, mir ist vorhin beim Testen aufgefallen das im Log nichts mehr ankommt, werder Verzögerung gestartet noch sonst eine Meldung obwohl der Datenpunkt "Waschmaschine läuft"immer auf true gesetzt wurde. Jetzt hab ich das Script mal komplett gelöscht und neu importiert und siehe da, jetzt bekomme ich wieder Logmeldungen und bei den ersten Tests lief es auch wieder wie gewohnt, mit Fertig Meldung, kurz nach Fertigstellung.

        Ich hab eigentlich nichts verändert, das Trockner Script is absolut das gleiche nur mit eigenen Datenpunkten, das läuft/lief bislang immer zuverlässig.

        Irgendwas is da "im Hintergrund" schief gelaufen...

        Ja die "WaschmaschineFertig" setzte ich mit einem Button in VIS auf False, das ist nur für eine visuelle Darstellung der Meldung.
        Ich hoffe das wars und es passt wieder.

        Vielen Dank für deine Hilfe und das Skript!! :+1:

        P.s.
        Gibt es eigentlich eine Möglichkeit die Telegram Meldung nur einmal zu senden wenn die Maschine fertig ist? Wenn man die Maschine nicht direkt ausschaltet bekommt man durch den Knitterschutz sonst dauernd Meldungen.

        rantanplanR Offline
        rantanplanR Offline
        rantanplan
        schrieb am zuletzt editiert von
        #120

        @Xsev WIr haben noch eine altmodische Maschine ohne Knitterschutz:blush:
        Meldung bei Knitterschutz kann man eventuell so umgehen.
        ACHTUNG NICHT GETESTET!
        Lokale Variable "MeldungFertigErfolgt" anlegen und zu begin auf "falsch" setzen.
        Aenderung_1.PNG

        Und bei Ausgabe der Meldung auf "wahr" setzen.
        Aenderung-2.PNG

        Rantanplan

        CCU3 / MS Server 2019(VM) / Scripten mit Blockly

        XsevX oberfraggerO 2 Antworten Letzte Antwort
        1
        • rantanplanR rantanplan

          @Xsev WIr haben noch eine altmodische Maschine ohne Knitterschutz:blush:
          Meldung bei Knitterschutz kann man eventuell so umgehen.
          ACHTUNG NICHT GETESTET!
          Lokale Variable "MeldungFertigErfolgt" anlegen und zu begin auf "falsch" setzen.
          Aenderung_1.PNG

          Und bei Ausgabe der Meldung auf "wahr" setzen.
          Aenderung-2.PNG

          XsevX Offline
          XsevX Offline
          Xsev
          schrieb am zuletzt editiert von
          #121

          @rantanplan
          Super danke! Das probiere ich aus und melde mich wieder.

          1 Antwort Letzte Antwort
          0
          • rantanplanR rantanplan

            @Xsev WIr haben noch eine altmodische Maschine ohne Knitterschutz:blush:
            Meldung bei Knitterschutz kann man eventuell so umgehen.
            ACHTUNG NICHT GETESTET!
            Lokale Variable "MeldungFertigErfolgt" anlegen und zu begin auf "falsch" setzen.
            Aenderung_1.PNG

            Und bei Ausgabe der Meldung auf "wahr" setzen.
            Aenderung-2.PNG

            oberfraggerO Offline
            oberfraggerO Offline
            oberfragger
            schrieb am zuletzt editiert von
            #122

            @rantanplan Sagmal, ist das Blockly oben im 1. Beitrag die aktuellste Version...? Bei den vielen Einträgen...

            Ansonsten wäre ich an der aktuellen Version für einen Import sehr interessiert...

            1 Antwort Letzte Antwort
            0
            • L lobito

              Bei mir sieht es so aus:

              on({id: "hm-rega.0.22768"/*Waschmaschine fertig*/, val: true}, function (obj) {
                var value = obj.state.val;
                var oldValue = obj.oldState.val;
                setStateDelayed("alexa2.0.Echo-Devices.XXXXX.Commands.speak"/*speak*/, 'Waschmaschine ist fertig', 8000, false);
                setStateDelayed("alexa2.0.Echo-Devices.XXXXX.Commands.speak"/*speak*/, 'Waschmaschine ist fertig', 8000, false);
                setStateDelayed("alexa2.0.Echo-Devices.XXXXX.Commands.speak"/*speak*/, 'Waschmaschine ist fertig', 6000, false);
                setStateDelayed("alexa2.0.Echo-Devices.XXXXX.Commands.speak"/*speak*/, 'Waschmaschine ist fertig', 10000, false);
                setState("alexa2.0.Echo-Devices.XXXXX.Commands.speak"/*speak*/, 'Waschmaschine ist fertig');
              });
              

              Der Wert kommt aus einer Systemvariablen in der Homematic. Hat den Charme das ich die Schwellwerte an einer übersichtlichen Stelle anpassen kann. Okay hab es nicht mit Telegram sondern lasse meine Alexas plappern. Die Systemvariable wird auch nur in der Zeit von 08:00 bis 22:30 Uhr gesetzt, unschön wenn in der Nacht um 3 Alexa losplappert.

              klausMK Offline
              klausMK Offline
              klausM
              schrieb am zuletzt editiert von
              #123

              @lobito sagte in [VORLAGE] Blockly Meldung wenn Waschmaschine fertig:

              Der Wert kommt aus einer Systemvariablen in der Homematic. Hat den Charme das ich die Schwellwerte an einer übersichtlichen Stelle anpassen kann. Okay hab es nicht mit Telegram sondern lasse meine Alexas plappern. Die Systemvariable wird auch nur in der Zeit von 08:00 bis 22:30 Uhr gesetzt, unschön wenn in der Nacht um 3 Alexa losplappert.

              genau so möchte das auch gerne umsetzen. Würdest du deine CCU Lösung beispielhaft zur Verfügung stellen ?

              LG Klaus

              oberfraggerO 1 Antwort Letzte Antwort
              0
              • klausMK klausM

                @lobito sagte in [VORLAGE] Blockly Meldung wenn Waschmaschine fertig:

                Der Wert kommt aus einer Systemvariablen in der Homematic. Hat den Charme das ich die Schwellwerte an einer übersichtlichen Stelle anpassen kann. Okay hab es nicht mit Telegram sondern lasse meine Alexas plappern. Die Systemvariable wird auch nur in der Zeit von 08:00 bis 22:30 Uhr gesetzt, unschön wenn in der Nacht um 3 Alexa losplappert.

                genau so möchte das auch gerne umsetzen. Würdest du deine CCU Lösung beispielhaft zur Verfügung stellen ?

                LG Klaus

                oberfraggerO Offline
                oberfraggerO Offline
                oberfragger
                schrieb am zuletzt editiert von oberfragger
                #124

                Moin,
                ich habe die Vorlage importiert, Schwellwert gesetzt und das richtige Objekt bzgl. Stromverbrauch referenziert. Der Datenpunkt "WaschamschineAN" wurde unter javascript0 erstellt.

                Leider wird bei Start der Datenpunkt nicht auf "true" gesetzt. Somit funktioniert das natürlich nicht mit der Info. Was habe ich vergessen?

                <xml xmlns="http://www.w3.org/1999/xhtml">
                  <variables>
                    <variable type="" id="l:Y4Wu$zk=pxq~)`eSab">Meldetext</variable>
                    <variable type="" id="O$Nwc}L.I]v/BZDamc+w">parameter</variable>
                    <variable type="" id="(3|XM/BjSJF7AX9g?(ks">VerzoegerungAktiv</variable>
                    <variable type="" id="v6cFCCp{BQlt0(2QH3:%">GrenzWertInWatt</variable>
                    <variable type="undefined" id="timeout">timeout</variable>
                    <variable type="undefined" id="Einschaltverzoegerung">Einschaltverzoegerung</variable>
                  </variables>
                  <block type="create" id=":XvakORUFJ^_I1/^;0qD" x="13" y="13">
                    <field name="NAME">WaschmaschineAN</field>
                    <next>
                      <block type="comment" id="@`s,ARMz+*DZ*ns;z2m_">
                        <field name="COMMENT">Initialisierung bei Scriptstart</field>
                        <next>
                          <block type="comment" id="Ov|lJMd@PV!y.oUN9Boj">
                            <field name="COMMENT">VerzögerungAktiv NICHT ändern</field>
                            <next>
                              <block type="variables_set" id="T+;|Db@bx|T]wkX[e.xT">
                                <field name="VAR" id="(3|XM/BjSJF7AX9g?(ks" variabletype="">VerzoegerungAktiv</field>
                                <value name="VALUE">
                                  <block type="logic_boolean" id="FimMeG{k6LBu0{7UjBJ4">
                                    <field name="BOOL">FALSE</field>
                                  </block>
                                </value>
                                <next>
                                  <block type="comment" id="6q4+KcF6/q*eh;RCmGKL">
                                    <field name="COMMENT">Entscheidungswert festlegen</field>
                                    <next>
                                      <block type="variables_set" id="pE;t15K()B2=@=,RY5D_">
                                        <field name="VAR" id="v6cFCCp{BQlt0(2QH3:%" variabletype="">GrenzWertInWatt</field>
                                        <value name="VALUE">
                                          <block type="math_number" id="OB=)nO2pXH:1HNwm(JpG">
                                            <field name="NUM">3</field>
                                          </block>
                                        </value>
                                        <next>
                                          <block type="comment" id="|2tm%?,yK/o3_AA)J{ah">
                                            <field name="COMMENT">Steckdose überwachen</field>
                                            <next>
                                              <block type="on_ext" id="n)UklDS{=z!-#^HfL@Ly">
                                                <mutation items="1"></mutation>
                                                <field name="CONDITION">ne</field>
                                                <field name="ACK_CONDITION"></field>
                                                <value name="OID0">
                                                  <shadow type="field_oid" id="@Uda~stBc8L/=2DFzrvo">
                                                    <field name="oid">shelly.0.SHSW-PM#76E648#1.Relay0.Power</field>
                                                  </shadow>
                                                </value>
                                                <statement name="STATEMENT">
                                                  <block type="controls_if" id="=n/Jfc]x(Ib[NRPJZ%7X">
                                                    <value name="IF0">
                                                      <block type="logic_compare" id="?m1STicTe5=N-/f:Ji2s">
                                                        <field name="OP">EQ</field>
                                                        <value name="A">
                                                          <block type="on_source" id="QjKQBx`PdHENcy)eGM,5">
                                                            <field name="ATTR">oldState.val</field>
                                                          </block>
                                                        </value>
                                                        <value name="B">
                                                          <block type="math_number" id=":(p2PWPzD2(~R-q9upeS">
                                                            <field name="NUM">0</field>
                                                          </block>
                                                        </value>
                                                      </block>
                                                    </value>
                                                    <statement name="DO0">
                                                      <block type="debug" id="F,}Yd!eQ$Zp~ADr^_R8~">
                                                        <field name="Severity">log</field>
                                                        <value name="TEXT">
                                                          <shadow type="text" id="K.p%=7kRU|IUX?X2bgJv">
                                                            <field name="TEXT">Waschmaschine vorheriger Wert = 0</field>
                                                          </shadow>
                                                        </value>
                                                        <next>
                                                          <block type="comment" id=";%e=m5A.5_U8[v[Odt7.">
                                                            <field name="COMMENT">Dieser Teil wird NUR ausgeführt wenn</field>
                                                            <next>
                                                              <block type="comment" id="Bv,r2iN_4zSfF_^X35gM">
                                                                <field name="COMMENT">Funkstecker oder Waschm. komplett aus war.</field>
                                                                <next>
                                                                  <block type="variables_set" id="xuK#29.xYf)m6FX5LA78">
                                                                    <field name="VAR" id="(3|XM/BjSJF7AX9g?(ks" variabletype="">VerzoegerungAktiv</field>
                                                                    <value name="VALUE">
                                                                      <block type="logic_boolean" id=")}Jh9zUdflaLNnL+;^h=">
                                                                        <field name="BOOL">TRUE</field>
                                                                      </block>
                                                                    </value>
                                                                    <next>
                                                                      <block type="debug" id="Wv*jiP9Bn3#//0KE[4e[">
                                                                        <field name="Severity">log</field>
                                                                        <value name="TEXT">
                                                                          <shadow type="text" id="!hyL_SIc#q!nV1G.NU,/">
                                                                            <field name="TEXT">***Starte Verzögerung</field>
                                                                          </shadow>
                                                                        </value>
                                                                        <next>
                                                                          <block type="timeouts_settimeout" id="v[ws-ZxN:-nNl,kERlT8">
                                                                            <field name="NAME">Einschaltverzoegerung</field>
                                                                            <field name="DELAY">20</field>
                                                                            <field name="UNIT">sec</field>
                                                                            <statement name="STATEMENT">
                                                                              <block type="comment" id="UyUTD{W;Ef;u2!)%y5h|">
                                                                                <field name="COMMENT">Eventuell hohe Einschaltspannung abfangen.</field>
                                                                                <next>
                                                                                  <block type="comment" id="^wiM;VZ*5RLS-+SMsG7?">
                                                                                    <field name="COMMENT">Diese kann größer als der Grenzwert sein</field>
                                                                                    <next>
                                                                                      <block type="variables_set" id="@d2;tEWydly|fW:ng;eg">
                                                                                        <field name="VAR" id="(3|XM/BjSJF7AX9g?(ks" variabletype="">VerzoegerungAktiv</field>
                                                                                        <value name="VALUE">
                                                                                          <block type="logic_boolean" id="S5R1RMtIKx(=N;}|dM%Z">
                                                                                            <field name="BOOL">FALSE</field>
                                                                                          </block>
                                                                                        </value>
                                                                                        <next>
                                                                                          <block type="debug" id="1^,/eLLAT{#66hqVIel8">
                                                                                            <field name="Severity">log</field>
                                                                                            <value name="TEXT">
                                                                                              <shadow type="text" id="[koH26;mOP0UeXV~CJRb">
                                                                                                <field name="TEXT">***Beende Verzögerung</field>
                                                                                              </shadow>
                                                                                            </value>
                                                                                          </block>
                                                                                        </next>
                                                                                      </block>
                                                                                    </next>
                                                                                  </block>
                                                                                </next>
                                                                              </block>
                                                                            </statement>
                                                                          </block>
                                                                        </next>
                                                                      </block>
                                                                    </next>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </next>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </statement>
                                                    <next>
                                                      <block type="comment" id="EZK4(UY%`}HZl{2F)m6p">
                                                        <field name="COMMENT">Ab hier wird gewaschen</field>
                                                        <next>
                                                          <block type="controls_if" id="S(-Xvr1uja6/vNdH|?j:">
                                                            <mutation elseif="2"></mutation>
                                                            <value name="IF0">
                                                              <block type="logic_operation" id="s(;r=_ekdU*dF=_Tsrbb" inline="false">
                                                                <field name="OP">AND</field>
                                                                <value name="A">
                                                                  <block type="logic_compare" id="d_lZY_VlNaa40/Pob=Um">
                                                                    <field name="OP">GT</field>
                                                                    <value name="A">
                                                                      <block type="on_source" id="`c4GU.`+o2_G+Vdxq;n/">
                                                                        <field name="ATTR">state.val</field>
                                                                      </block>
                                                                    </value>
                                                                    <value name="B">
                                                                      <block type="variables_get" id="FD[JnQcwajuYLgGmTX`.">
                                                                        <field name="VAR" id="v6cFCCp{BQlt0(2QH3:%" variabletype="">GrenzWertInWatt</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                                <value name="B">
                                                                  <block type="logic_operation" id="*Y`H0qa!`fsBeI/2Cv+c" inline="false">
                                                                    <field name="OP">AND</field>
                                                                    <value name="A">
                                                                      <block type="logic_compare" id="zC,(}TPXAvX2yd^k`W._">
                                                                        <field name="OP">EQ</field>
                                                                        <value name="A">
                                                                          <block type="get_value" id=";a;[[bw/v2oQnG9DHZIn">
                                                                            <field name="ATTR">val</field>
                                                                            <field name="OID">javascript.0.WaschmaschineAN</field>
                                                                          </block>
                                                                        </value>
                                                                        <value name="B">
                                                                          <block type="logic_boolean" id=";a5=vVD`86hstjR{4y~+">
                                                                            <field name="BOOL">FALSE</field>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                    <value name="B">
                                                                      <block type="logic_compare" id="K.3M9Le`+STB!.M_eD7O">
                                                                        <field name="OP">EQ</field>
                                                                        <value name="A">
                                                                          <block type="variables_get" id="[!KuvI83Wzp*sDDNM{S!">
                                                                            <field name="VAR" id="(3|XM/BjSJF7AX9g?(ks" variabletype="">VerzoegerungAktiv</field>
                                                                          </block>
                                                                        </value>
                                                                        <value name="B">
                                                                          <block type="logic_boolean" id="9_[X?aI?X1w]lj.RY`K^">
                                                                            <field name="BOOL">FALSE</field>
                                                                          </block>
                                                                        </value>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <statement name="DO0">
                                                              <block type="control" id="S6URE:3#}}.v#e!X.A4D">
                                                                <mutation delay_input="false"></mutation>
                                                                <field name="OID">javascript.0.WaschmaschineAN</field>
                                                                <field name="WITH_DELAY">FALSE</field>
                                                                <value name="VALUE">
                                                                  <block type="logic_boolean" id="QqpwRU?xP?P=bvS9HS[1">
                                                                    <field name="BOOL">TRUE</field>
                                                                  </block>
                                                                </value>
                                                                <next>
                                                                  <block type="procedures_callnoreturn" id="=!*WIp};Ta`)XeMMk,iR">
                                                                    <mutation name="Melden">
                                                                      <arg name="Meldetext"></arg>
                                                                    </mutation>
                                                                    <value name="ARG0">
                                                                      <block type="text" id="{QcAY3oi:,FGG.929?TS">
                                                                        <field name="TEXT">Waschmaschine LÄUFT</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </statement>
                                                            <value name="IF1">
                                                              <block type="logic_compare" id="Yuagp|w@)mC+asceXLLu">
                                                                <field name="OP">GT</field>
                                                                <value name="A">
                                                                  <block type="on_source" id="P(tu4AS{);E?w-p?]{1q">
                                                                    <field name="ATTR">state.val</field>
                                                                  </block>
                                                                </value>
                                                                <value name="B">
                                                                  <block type="variables_get" id="ou6,Zi?vbs[;{]@93U`!">
                                                                    <field name="VAR" id="v6cFCCp{BQlt0(2QH3:%" variabletype="">GrenzWertInWatt</field>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <statement name="DO1">
                                                              <block type="comment" id="H90l#sdGb5I}Wqsbz=9s">
                                                                <field name="COMMENT">Timer stoppen</field>
                                                                <next>
                                                                  <block type="procedures_callnoreturn" id="zo=cPu~=j#pus6bWVaJl">
                                                                    <mutation name="checkFertig">
                                                                      <arg name="parameter"></arg>
                                                                    </mutation>
                                                                    <value name="ARG0">
                                                                      <block type="logic_boolean" id="1SYbGS^3xkqD/Uj?{bvJ">
                                                                        <field name="BOOL">FALSE</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </statement>
                                                            <value name="IF2">
                                                              <block type="logic_operation" id="_@|YxZPYI(z3![Q=ZbX4" inline="false">
                                                                <field name="OP">AND</field>
                                                                <value name="A">
                                                                  <block type="logic_compare" id="Ge6FX#6b5WYoc;wF%%iH">
                                                                    <field name="OP">LT</field>
                                                                    <value name="A">
                                                                      <block type="on_source" id="0Vw33+AwVD~={g{aHa~d">
                                                                        <field name="ATTR">state.val</field>
                                                                      </block>
                                                                    </value>
                                                                    <value name="B">
                                                                      <block type="variables_get" id="NufLwbvZR1.fEmqJNOTZ">
                                                                        <field name="VAR" id="v6cFCCp{BQlt0(2QH3:%" variabletype="">GrenzWertInWatt</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                                <value name="B">
                                                                  <block type="logic_compare" id="X[1t=zl25bQ]aHT[:`,8">
                                                                    <field name="OP">EQ</field>
                                                                    <value name="A">
                                                                      <block type="get_value" id="4WFkiPOYU?#zQhOL)0u(">
                                                                        <field name="ATTR">val</field>
                                                                        <field name="OID">javascript.0.WaschmaschineAN</field>
                                                                      </block>
                                                                    </value>
                                                                    <value name="B">
                                                                      <block type="logic_boolean" id="?jrLY7K)k;1?sa!Ef{VO">
                                                                        <field name="BOOL">TRUE</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </value>
                                                              </block>
                                                            </value>
                                                            <statement name="DO2">
                                                              <block type="comment" id="}Q59!:8+Dc~b~LwZhq-(">
                                                                <field name="COMMENT">Timer starten</field>
                                                                <next>
                                                                  <block type="procedures_callnoreturn" id=";MD%1IF[[H29g_f=vvYH">
                                                                    <mutation name="checkFertig">
                                                                      <arg name="parameter"></arg>
                                                                    </mutation>
                                                                    <value name="ARG0">
                                                                      <block type="logic_boolean" id="/yX*,4aU!HHUO#/2U-NR">
                                                                        <field name="BOOL">TRUE</field>
                                                                      </block>
                                                                    </value>
                                                                  </block>
                                                                </next>
                                                              </block>
                                                            </statement>
                                                          </block>
                                                        </next>
                                                      </block>
                                                    </next>
                                                  </block>
                                                </statement>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </next>
                  </block>
                  <block type="procedures_defnoreturn" id="l1.gm`YNTt2#Ww;_Stf+" x="563" y="13">
                    <mutation>
                      <arg name="Meldetext" varid="l:Y4Wu$zk=pxq~)`eSab"></arg>
                    </mutation>
                    <field name="NAME">Melden</field>
                    <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                    <statement name="STACK">
                      <block type="comment" id="CgkHkrp5c26e`w3uU(i`">
                        <field name="COMMENT">Hier wird die Meldung ausgegeben</field>
                        <next>
                          <block type="debug" id="SYQu;@N0JgE!W~[JZcZ_">
                            <field name="Severity">log</field>
                            <value name="TEXT">
                              <shadow type="text" id="4+J8c.^+FrkDV^]dAda-">
                                <field name="TEXT">test</field>
                              </shadow>
                              <block type="variables_get" id="KuX^Hf4/i6gnp|rmq9WR">
                                <field name="VAR" id="l:Y4Wu$zk=pxq~)`eSab" variabletype="">Meldetext</field>
                              </block>
                            </value>
                            <next>
                              <block type="comment" id="a;Ent4V!@/ELz)~^PTwn">
                                <field name="COMMENT">Hier den SendTo Baustein einsetzen,</field>
                                <next>
                                  <block type="comment" id="Xc,u6Sm.@c5xeqVM)suq">
                                    <field name="COMMENT">den man benutzen will.</field>
                                    <next>
                                      <block type="comment" id="cI=%X;P?/Tfam8YIny%V">
                                        <field name="COMMENT">Die Meldung befindet sich in der Variablen</field>
                                        <next>
                                          <block type="comment" id="{(av)+6o4VfWo^eJEnft">
                                            <field name="COMMENT">"Meldetext"</field>
                                            <next>
                                              <block type="telegram" id="Y%jeiG=0h{x#{=xc$tn)">
                                                <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="xo7T6m}W{_D(FGc/Rq7j">
                                                    <field name="TEXT">Waschmaschine </field>
                                                  </shadow>
                                                  <block type="variables_get" id="a1mgB]ZM/EB)~[b:A3_y">
                                                    <field name="VAR" id="l:Y4Wu$zk=pxq~)`eSab" variabletype="">Meldetext</field>
                                                  </block>
                                                </value>
                                                <value name="USERNAME">
                                                  <block type="text" id="Vnju2GV|-FmX_0oC1H8,">
                                                    <field name="TEXT">oberfragger</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </next>
                                          </block>
                                        </next>
                                      </block>
                                    </next>
                                  </block>
                                </next>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </statement>
                  </block>
                  <block type="procedures_defnoreturn" id="sDP?w~)oJD}Z95[_?EY0" x="13" y="1338">
                    <mutation>
                      <arg name="parameter" varid="O$Nwc}L.I]v/BZDamc+w"></arg>
                    </mutation>
                    <field name="NAME">checkFertig</field>
                    <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                    <statement name="STACK">
                      <block type="comment" id="V2@7jqv5RTl+}q}xfEsZ">
                        <field name="COMMENT">Timer stoppen</field>
                        <next>
                          <block type="timeouts_cleartimeout" id="y7iPL;/^^,*);q|%Pk6;">
                            <field name="NAME">timeout</field>
                            <next>
                              <block type="controls_if" id="*DX-*|5t*M5.|5Qw0p76">
                                <value name="IF0">
                                  <block type="logic_compare" id="[-Hs2uzeFf6L7XO4:d6g">
                                    <field name="OP">EQ</field>
                                    <value name="A">
                                      <block type="variables_get" id="uT*6f!Y:?Sivq1F-y;7_">
                                        <field name="VAR" id="O$Nwc}L.I]v/BZDamc+w" variabletype="">parameter</field>
                                      </block>
                                    </value>
                                    <value name="B">
                                      <block type="logic_boolean" id="w?1)4.uK{/ey3NJ)NjH:">
                                        <field name="BOOL">TRUE</field>
                                      </block>
                                    </value>
                                  </block>
                                </value>
                                <statement name="DO0">
                                  <block type="comment" id="fU`TRz:h*y1K[t@GmyY:">
                                    <field name="COMMENT">Timer starten</field>
                                    <next>
                                      <block type="timeouts_settimeout" id="k%sy5:QdTn+3f@{OZshs">
                                        <field name="NAME">timeout</field>
                                        <field name="DELAY">40</field>
                                        <field name="UNIT">sec</field>
                                        <statement name="STATEMENT">
                                          <block type="control" id="UOquZ.)w|Dv~5_@iC*HO">
                                            <mutation delay_input="false"></mutation>
                                            <field name="OID">javascript.0.WaschmaschineAN</field>
                                            <field name="WITH_DELAY">FALSE</field>
                                            <value name="VALUE">
                                              <block type="logic_boolean" id="ttQizIf!/AB*HLfb9Kw1">
                                                <field name="BOOL">FALSE</field>
                                              </block>
                                            </value>
                                            <next>
                                              <block type="procedures_callnoreturn" id="HHrpaU=vtt6v1JInTG~l">
                                                <mutation name="Melden">
                                                  <arg name="Meldetext"></arg>
                                                </mutation>
                                                <value name="ARG0">
                                                  <block type="text" id="leE4:W;JI@,LD;n0Gs6r">
                                                    <field name="TEXT">Waschmaschine FERTIG</field>
                                                  </block>
                                                </value>
                                              </block>
                                            </next>
                                          </block>
                                        </statement>
                                      </block>
                                    </next>
                                  </block>
                                </statement>
                              </block>
                            </next>
                          </block>
                        </next>
                      </block>
                    </statement>
                  </block>
                </xml>
                
                rantanplanR 1 Antwort Letzte Antwort
                0
                • oberfraggerO oberfragger

                  Moin,
                  ich habe die Vorlage importiert, Schwellwert gesetzt und das richtige Objekt bzgl. Stromverbrauch referenziert. Der Datenpunkt "WaschamschineAN" wurde unter javascript0 erstellt.

                  Leider wird bei Start der Datenpunkt nicht auf "true" gesetzt. Somit funktioniert das natürlich nicht mit der Info. Was habe ich vergessen?

                  <xml xmlns="http://www.w3.org/1999/xhtml">
                    <variables>
                      <variable type="" id="l:Y4Wu$zk=pxq~)`eSab">Meldetext</variable>
                      <variable type="" id="O$Nwc}L.I]v/BZDamc+w">parameter</variable>
                      <variable type="" id="(3|XM/BjSJF7AX9g?(ks">VerzoegerungAktiv</variable>
                      <variable type="" id="v6cFCCp{BQlt0(2QH3:%">GrenzWertInWatt</variable>
                      <variable type="undefined" id="timeout">timeout</variable>
                      <variable type="undefined" id="Einschaltverzoegerung">Einschaltverzoegerung</variable>
                    </variables>
                    <block type="create" id=":XvakORUFJ^_I1/^;0qD" x="13" y="13">
                      <field name="NAME">WaschmaschineAN</field>
                      <next>
                        <block type="comment" id="@`s,ARMz+*DZ*ns;z2m_">
                          <field name="COMMENT">Initialisierung bei Scriptstart</field>
                          <next>
                            <block type="comment" id="Ov|lJMd@PV!y.oUN9Boj">
                              <field name="COMMENT">VerzögerungAktiv NICHT ändern</field>
                              <next>
                                <block type="variables_set" id="T+;|Db@bx|T]wkX[e.xT">
                                  <field name="VAR" id="(3|XM/BjSJF7AX9g?(ks" variabletype="">VerzoegerungAktiv</field>
                                  <value name="VALUE">
                                    <block type="logic_boolean" id="FimMeG{k6LBu0{7UjBJ4">
                                      <field name="BOOL">FALSE</field>
                                    </block>
                                  </value>
                                  <next>
                                    <block type="comment" id="6q4+KcF6/q*eh;RCmGKL">
                                      <field name="COMMENT">Entscheidungswert festlegen</field>
                                      <next>
                                        <block type="variables_set" id="pE;t15K()B2=@=,RY5D_">
                                          <field name="VAR" id="v6cFCCp{BQlt0(2QH3:%" variabletype="">GrenzWertInWatt</field>
                                          <value name="VALUE">
                                            <block type="math_number" id="OB=)nO2pXH:1HNwm(JpG">
                                              <field name="NUM">3</field>
                                            </block>
                                          </value>
                                          <next>
                                            <block type="comment" id="|2tm%?,yK/o3_AA)J{ah">
                                              <field name="COMMENT">Steckdose überwachen</field>
                                              <next>
                                                <block type="on_ext" id="n)UklDS{=z!-#^HfL@Ly">
                                                  <mutation items="1"></mutation>
                                                  <field name="CONDITION">ne</field>
                                                  <field name="ACK_CONDITION"></field>
                                                  <value name="OID0">
                                                    <shadow type="field_oid" id="@Uda~stBc8L/=2DFzrvo">
                                                      <field name="oid">shelly.0.SHSW-PM#76E648#1.Relay0.Power</field>
                                                    </shadow>
                                                  </value>
                                                  <statement name="STATEMENT">
                                                    <block type="controls_if" id="=n/Jfc]x(Ib[NRPJZ%7X">
                                                      <value name="IF0">
                                                        <block type="logic_compare" id="?m1STicTe5=N-/f:Ji2s">
                                                          <field name="OP">EQ</field>
                                                          <value name="A">
                                                            <block type="on_source" id="QjKQBx`PdHENcy)eGM,5">
                                                              <field name="ATTR">oldState.val</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="math_number" id=":(p2PWPzD2(~R-q9upeS">
                                                              <field name="NUM">0</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="debug" id="F,}Yd!eQ$Zp~ADr^_R8~">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text" id="K.p%=7kRU|IUX?X2bgJv">
                                                              <field name="TEXT">Waschmaschine vorheriger Wert = 0</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="comment" id=";%e=m5A.5_U8[v[Odt7.">
                                                              <field name="COMMENT">Dieser Teil wird NUR ausgeführt wenn</field>
                                                              <next>
                                                                <block type="comment" id="Bv,r2iN_4zSfF_^X35gM">
                                                                  <field name="COMMENT">Funkstecker oder Waschm. komplett aus war.</field>
                                                                  <next>
                                                                    <block type="variables_set" id="xuK#29.xYf)m6FX5LA78">
                                                                      <field name="VAR" id="(3|XM/BjSJF7AX9g?(ks" variabletype="">VerzoegerungAktiv</field>
                                                                      <value name="VALUE">
                                                                        <block type="logic_boolean" id=")}Jh9zUdflaLNnL+;^h=">
                                                                          <field name="BOOL">TRUE</field>
                                                                        </block>
                                                                      </value>
                                                                      <next>
                                                                        <block type="debug" id="Wv*jiP9Bn3#//0KE[4e[">
                                                                          <field name="Severity">log</field>
                                                                          <value name="TEXT">
                                                                            <shadow type="text" id="!hyL_SIc#q!nV1G.NU,/">
                                                                              <field name="TEXT">***Starte Verzögerung</field>
                                                                            </shadow>
                                                                          </value>
                                                                          <next>
                                                                            <block type="timeouts_settimeout" id="v[ws-ZxN:-nNl,kERlT8">
                                                                              <field name="NAME">Einschaltverzoegerung</field>
                                                                              <field name="DELAY">20</field>
                                                                              <field name="UNIT">sec</field>
                                                                              <statement name="STATEMENT">
                                                                                <block type="comment" id="UyUTD{W;Ef;u2!)%y5h|">
                                                                                  <field name="COMMENT">Eventuell hohe Einschaltspannung abfangen.</field>
                                                                                  <next>
                                                                                    <block type="comment" id="^wiM;VZ*5RLS-+SMsG7?">
                                                                                      <field name="COMMENT">Diese kann größer als der Grenzwert sein</field>
                                                                                      <next>
                                                                                        <block type="variables_set" id="@d2;tEWydly|fW:ng;eg">
                                                                                          <field name="VAR" id="(3|XM/BjSJF7AX9g?(ks" variabletype="">VerzoegerungAktiv</field>
                                                                                          <value name="VALUE">
                                                                                            <block type="logic_boolean" id="S5R1RMtIKx(=N;}|dM%Z">
                                                                                              <field name="BOOL">FALSE</field>
                                                                                            </block>
                                                                                          </value>
                                                                                          <next>
                                                                                            <block type="debug" id="1^,/eLLAT{#66hqVIel8">
                                                                                              <field name="Severity">log</field>
                                                                                              <value name="TEXT">
                                                                                                <shadow type="text" id="[koH26;mOP0UeXV~CJRb">
                                                                                                  <field name="TEXT">***Beende Verzögerung</field>
                                                                                                </shadow>
                                                                                              </value>
                                                                                            </block>
                                                                                          </next>
                                                                                        </block>
                                                                                      </next>
                                                                                    </block>
                                                                                  </next>
                                                                                </block>
                                                                              </statement>
                                                                            </block>
                                                                          </next>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </statement>
                                                      <next>
                                                        <block type="comment" id="EZK4(UY%`}HZl{2F)m6p">
                                                          <field name="COMMENT">Ab hier wird gewaschen</field>
                                                          <next>
                                                            <block type="controls_if" id="S(-Xvr1uja6/vNdH|?j:">
                                                              <mutation elseif="2"></mutation>
                                                              <value name="IF0">
                                                                <block type="logic_operation" id="s(;r=_ekdU*dF=_Tsrbb" inline="false">
                                                                  <field name="OP">AND</field>
                                                                  <value name="A">
                                                                    <block type="logic_compare" id="d_lZY_VlNaa40/Pob=Um">
                                                                      <field name="OP">GT</field>
                                                                      <value name="A">
                                                                        <block type="on_source" id="`c4GU.`+o2_G+Vdxq;n/">
                                                                          <field name="ATTR">state.val</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="variables_get" id="FD[JnQcwajuYLgGmTX`.">
                                                                          <field name="VAR" id="v6cFCCp{BQlt0(2QH3:%" variabletype="">GrenzWertInWatt</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <block type="logic_operation" id="*Y`H0qa!`fsBeI/2Cv+c" inline="false">
                                                                      <field name="OP">AND</field>
                                                                      <value name="A">
                                                                        <block type="logic_compare" id="zC,(}TPXAvX2yd^k`W._">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="get_value" id=";a;[[bw/v2oQnG9DHZIn">
                                                                              <field name="ATTR">val</field>
                                                                              <field name="OID">javascript.0.WaschmaschineAN</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="logic_boolean" id=";a5=vVD`86hstjR{4y~+">
                                                                              <field name="BOOL">FALSE</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="logic_compare" id="K.3M9Le`+STB!.M_eD7O">
                                                                          <field name="OP">EQ</field>
                                                                          <value name="A">
                                                                            <block type="variables_get" id="[!KuvI83Wzp*sDDNM{S!">
                                                                              <field name="VAR" id="(3|XM/BjSJF7AX9g?(ks" variabletype="">VerzoegerungAktiv</field>
                                                                            </block>
                                                                          </value>
                                                                          <value name="B">
                                                                            <block type="logic_boolean" id="9_[X?aI?X1w]lj.RY`K^">
                                                                              <field name="BOOL">FALSE</field>
                                                                            </block>
                                                                          </value>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO0">
                                                                <block type="control" id="S6URE:3#}}.v#e!X.A4D">
                                                                  <mutation delay_input="false"></mutation>
                                                                  <field name="OID">javascript.0.WaschmaschineAN</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE">
                                                                    <block type="logic_boolean" id="QqpwRU?xP?P=bvS9HS[1">
                                                                      <field name="BOOL">TRUE</field>
                                                                    </block>
                                                                  </value>
                                                                  <next>
                                                                    <block type="procedures_callnoreturn" id="=!*WIp};Ta`)XeMMk,iR">
                                                                      <mutation name="Melden">
                                                                        <arg name="Meldetext"></arg>
                                                                      </mutation>
                                                                      <value name="ARG0">
                                                                        <block type="text" id="{QcAY3oi:,FGG.929?TS">
                                                                          <field name="TEXT">Waschmaschine LÄUFT</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                              <value name="IF1">
                                                                <block type="logic_compare" id="Yuagp|w@)mC+asceXLLu">
                                                                  <field name="OP">GT</field>
                                                                  <value name="A">
                                                                    <block type="on_source" id="P(tu4AS{);E?w-p?]{1q">
                                                                      <field name="ATTR">state.val</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <block type="variables_get" id="ou6,Zi?vbs[;{]@93U`!">
                                                                      <field name="VAR" id="v6cFCCp{BQlt0(2QH3:%" variabletype="">GrenzWertInWatt</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO1">
                                                                <block type="comment" id="H90l#sdGb5I}Wqsbz=9s">
                                                                  <field name="COMMENT">Timer stoppen</field>
                                                                  <next>
                                                                    <block type="procedures_callnoreturn" id="zo=cPu~=j#pus6bWVaJl">
                                                                      <mutation name="checkFertig">
                                                                        <arg name="parameter"></arg>
                                                                      </mutation>
                                                                      <value name="ARG0">
                                                                        <block type="logic_boolean" id="1SYbGS^3xkqD/Uj?{bvJ">
                                                                          <field name="BOOL">FALSE</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                              <value name="IF2">
                                                                <block type="logic_operation" id="_@|YxZPYI(z3![Q=ZbX4" inline="false">
                                                                  <field name="OP">AND</field>
                                                                  <value name="A">
                                                                    <block type="logic_compare" id="Ge6FX#6b5WYoc;wF%%iH">
                                                                      <field name="OP">LT</field>
                                                                      <value name="A">
                                                                        <block type="on_source" id="0Vw33+AwVD~={g{aHa~d">
                                                                          <field name="ATTR">state.val</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="variables_get" id="NufLwbvZR1.fEmqJNOTZ">
                                                                          <field name="VAR" id="v6cFCCp{BQlt0(2QH3:%" variabletype="">GrenzWertInWatt</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <block type="logic_compare" id="X[1t=zl25bQ]aHT[:`,8">
                                                                      <field name="OP">EQ</field>
                                                                      <value name="A">
                                                                        <block type="get_value" id="4WFkiPOYU?#zQhOL)0u(">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">javascript.0.WaschmaschineAN</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <block type="logic_boolean" id="?jrLY7K)k;1?sa!Ef{VO">
                                                                          <field name="BOOL">TRUE</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO2">
                                                                <block type="comment" id="}Q59!:8+Dc~b~LwZhq-(">
                                                                  <field name="COMMENT">Timer starten</field>
                                                                  <next>
                                                                    <block type="procedures_callnoreturn" id=";MD%1IF[[H29g_f=vvYH">
                                                                      <mutation name="checkFertig">
                                                                        <arg name="parameter"></arg>
                                                                      </mutation>
                                                                      <value name="ARG0">
                                                                        <block type="logic_boolean" id="/yX*,4aU!HHUO#/2U-NR">
                                                                          <field name="BOOL">TRUE</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </statement>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </next>
                                                    </block>
                                                  </statement>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </next>
                    </block>
                    <block type="procedures_defnoreturn" id="l1.gm`YNTt2#Ww;_Stf+" x="563" y="13">
                      <mutation>
                        <arg name="Meldetext" varid="l:Y4Wu$zk=pxq~)`eSab"></arg>
                      </mutation>
                      <field name="NAME">Melden</field>
                      <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                      <statement name="STACK">
                        <block type="comment" id="CgkHkrp5c26e`w3uU(i`">
                          <field name="COMMENT">Hier wird die Meldung ausgegeben</field>
                          <next>
                            <block type="debug" id="SYQu;@N0JgE!W~[JZcZ_">
                              <field name="Severity">log</field>
                              <value name="TEXT">
                                <shadow type="text" id="4+J8c.^+FrkDV^]dAda-">
                                  <field name="TEXT">test</field>
                                </shadow>
                                <block type="variables_get" id="KuX^Hf4/i6gnp|rmq9WR">
                                  <field name="VAR" id="l:Y4Wu$zk=pxq~)`eSab" variabletype="">Meldetext</field>
                                </block>
                              </value>
                              <next>
                                <block type="comment" id="a;Ent4V!@/ELz)~^PTwn">
                                  <field name="COMMENT">Hier den SendTo Baustein einsetzen,</field>
                                  <next>
                                    <block type="comment" id="Xc,u6Sm.@c5xeqVM)suq">
                                      <field name="COMMENT">den man benutzen will.</field>
                                      <next>
                                        <block type="comment" id="cI=%X;P?/Tfam8YIny%V">
                                          <field name="COMMENT">Die Meldung befindet sich in der Variablen</field>
                                          <next>
                                            <block type="comment" id="{(av)+6o4VfWo^eJEnft">
                                              <field name="COMMENT">"Meldetext"</field>
                                              <next>
                                                <block type="telegram" id="Y%jeiG=0h{x#{=xc$tn)">
                                                  <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="xo7T6m}W{_D(FGc/Rq7j">
                                                      <field name="TEXT">Waschmaschine </field>
                                                    </shadow>
                                                    <block type="variables_get" id="a1mgB]ZM/EB)~[b:A3_y">
                                                      <field name="VAR" id="l:Y4Wu$zk=pxq~)`eSab" variabletype="">Meldetext</field>
                                                    </block>
                                                  </value>
                                                  <value name="USERNAME">
                                                    <block type="text" id="Vnju2GV|-FmX_0oC1H8,">
                                                      <field name="TEXT">oberfragger</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </next>
                                            </block>
                                          </next>
                                        </block>
                                      </next>
                                    </block>
                                  </next>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                    <block type="procedures_defnoreturn" id="sDP?w~)oJD}Z95[_?EY0" x="13" y="1338">
                      <mutation>
                        <arg name="parameter" varid="O$Nwc}L.I]v/BZDamc+w"></arg>
                      </mutation>
                      <field name="NAME">checkFertig</field>
                      <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                      <statement name="STACK">
                        <block type="comment" id="V2@7jqv5RTl+}q}xfEsZ">
                          <field name="COMMENT">Timer stoppen</field>
                          <next>
                            <block type="timeouts_cleartimeout" id="y7iPL;/^^,*);q|%Pk6;">
                              <field name="NAME">timeout</field>
                              <next>
                                <block type="controls_if" id="*DX-*|5t*M5.|5Qw0p76">
                                  <value name="IF0">
                                    <block type="logic_compare" id="[-Hs2uzeFf6L7XO4:d6g">
                                      <field name="OP">EQ</field>
                                      <value name="A">
                                        <block type="variables_get" id="uT*6f!Y:?Sivq1F-y;7_">
                                          <field name="VAR" id="O$Nwc}L.I]v/BZDamc+w" variabletype="">parameter</field>
                                        </block>
                                      </value>
                                      <value name="B">
                                        <block type="logic_boolean" id="w?1)4.uK{/ey3NJ)NjH:">
                                          <field name="BOOL">TRUE</field>
                                        </block>
                                      </value>
                                    </block>
                                  </value>
                                  <statement name="DO0">
                                    <block type="comment" id="fU`TRz:h*y1K[t@GmyY:">
                                      <field name="COMMENT">Timer starten</field>
                                      <next>
                                        <block type="timeouts_settimeout" id="k%sy5:QdTn+3f@{OZshs">
                                          <field name="NAME">timeout</field>
                                          <field name="DELAY">40</field>
                                          <field name="UNIT">sec</field>
                                          <statement name="STATEMENT">
                                            <block type="control" id="UOquZ.)w|Dv~5_@iC*HO">
                                              <mutation delay_input="false"></mutation>
                                              <field name="OID">javascript.0.WaschmaschineAN</field>
                                              <field name="WITH_DELAY">FALSE</field>
                                              <value name="VALUE">
                                                <block type="logic_boolean" id="ttQizIf!/AB*HLfb9Kw1">
                                                  <field name="BOOL">FALSE</field>
                                                </block>
                                              </value>
                                              <next>
                                                <block type="procedures_callnoreturn" id="HHrpaU=vtt6v1JInTG~l">
                                                  <mutation name="Melden">
                                                    <arg name="Meldetext"></arg>
                                                  </mutation>
                                                  <value name="ARG0">
                                                    <block type="text" id="leE4:W;JI@,LD;n0Gs6r">
                                                      <field name="TEXT">Waschmaschine FERTIG</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                      </next>
                                    </block>
                                  </statement>
                                </block>
                              </next>
                            </block>
                          </next>
                        </block>
                      </statement>
                    </block>
                  </xml>
                  
                  rantanplanR Offline
                  rantanplanR Offline
                  rantanplan
                  schrieb am zuletzt editiert von
                  #125

                  @oberfragger Moin
                  Setze mal ein Debug Baustein ein. Da kannst Du überprüfen ob die Steckdose überhaupt den Trigger auslöst.
                  Sceen01.png

                  Rantanplan

                  CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                  oberfraggerO 1 Antwort Letzte Antwort
                  0
                  • rantanplanR rantanplan

                    @oberfragger Moin
                    Setze mal ein Debug Baustein ein. Da kannst Du überprüfen ob die Steckdose überhaupt den Trigger auslöst.
                    Sceen01.png

                    oberfraggerO Offline
                    oberfraggerO Offline
                    oberfragger
                    schrieb am zuletzt editiert von
                    #126

                    @rantanplan Gute Idee. Ich bin mir da ja "sicher". Mal gucken was dann das Log sagt.

                    1 Antwort Letzte Antwort
                    0
                    • oberfraggerO Offline
                      oberfraggerO Offline
                      oberfragger
                      schrieb am zuletzt editiert von oberfragger
                      #127

                      @rantanplan Habs gefunden. Der Datenpunkt war da... allerdings weder true noch false. Habs dann mal manuella auf false gesetzt und schon funktionierte das Script sofort.

                      Leider kommt die "fertig"-Meldung erst wenn die Waschmaschine per Hand ausgestellt wurde. Aber sind halt schon mal 50%. Mal gucken.

                      1 Antwort Letzte Antwort
                      0
                      • S Offline
                        S Offline
                        Superdad
                        schrieb am zuletzt editiert von
                        #128

                        Hallo,

                        habe das Script von @berndroid verwendet.
                        Dort werden ja Variablen verwendet.

                        So weit so gut.
                        Variablen werden ja nicht angelegt bzw sichtbar.

                        Wie muss ich es anstellen, wenn ich die Variablen auswerten möchte und z.Bsp. sichtbar machen möchte in VIS?

                        CCU3

                        iOBroker auf IntelNUC Proxmox

                        1 Antwort Letzte Antwort
                        0
                        • X Offline
                          X Offline
                          xbow42
                          schrieb am zuletzt editiert von xbow42
                          #129

                          Damit VIS auf die Werte aus Scriptvariablen zu geifen kann musst du dir unter ioBroker-Objekte eigene Datenpunte anlegen und die Werte der Variablen in den Datenpunkten abspeichern. Diese Datenpunkte kannst du dann in VIS auslesen & setzen falls nötig.

                          S 1 Antwort Letzte Antwort
                          0
                          • X xbow42

                            Damit VIS auf die Werte aus Scriptvariablen zu geifen kann musst du dir unter ioBroker-Objekte eigene Datenpunte anlegen und die Werte der Variablen in den Datenpunkten abspeichern. Diese Datenpunkte kannst du dann in VIS auslesen & setzen falls nötig.

                            S Offline
                            S Offline
                            Superdad
                            schrieb am zuletzt editiert von
                            #130

                            @xbow42 Danke!

                            CCU3

                            iOBroker auf IntelNUC Proxmox

                            1 Antwort Letzte Antwort
                            0
                            • D Offline
                              D Offline
                              dehein2
                              schrieb am zuletzt editiert von dehein2
                              #131

                              Hallo zusammen,

                              auch ich habe probiert dieses SCript zu verwenden, habe aber ein komisches Problem:

                              Die Erkennung des Starts funktioniert. Die Fertig erkennung jedoch nicht. Wenn der Wert < Grenzwert wird wird in einem Durchlauf der Timer immer einmal gestartet und gestoppt.

                              Und wenn ich die Funktion "CheckFertig" richtig verstehe wird doch der Timer in jedem Fall gestoppt wenn die funktion aufgerufen wird, oder? Das beudetet sie startet ja immer von vorne. Auch wenn der parameter "wahr" übergeben wird. Oder verstehe ich etwas falsch?

                              16:33:34.298	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM stop
                              16:33:34.299	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM start
                              16:33:34.300	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: WERT2
                              16:33:44.778	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM stop
                              16:33:44.779	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM start
                              16:33:44.780	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: WERT2
                              

                              f7311d28-b211-44fa-b351-f47914562e50-image.png

                              6dd9ad6a-088d-4c4a-a022-d45e1118ee02-image.png

                              Das Gesamte Scipt wird ja mehrmals pro Minnute durchlaufen und somit auch die Funktion "CheckFertig"...

                              Noch eine Frag zum Verständniss des Timers. Ist es so, dass der Timer immer die "gleiche" Variale ist. Also wenn der parameter wahr ist wird der timer gestartet und läuft so lange bis die funkion stop timout aufgerufen wird? Weil dann verstehe ich die funktio nicht. ;)

                              Danke

                              rantanplanR 1 Antwort Letzte Antwort
                              0
                              • D dehein2

                                Hallo zusammen,

                                auch ich habe probiert dieses SCript zu verwenden, habe aber ein komisches Problem:

                                Die Erkennung des Starts funktioniert. Die Fertig erkennung jedoch nicht. Wenn der Wert < Grenzwert wird wird in einem Durchlauf der Timer immer einmal gestartet und gestoppt.

                                Und wenn ich die Funktion "CheckFertig" richtig verstehe wird doch der Timer in jedem Fall gestoppt wenn die funktion aufgerufen wird, oder? Das beudetet sie startet ja immer von vorne. Auch wenn der parameter "wahr" übergeben wird. Oder verstehe ich etwas falsch?

                                16:33:34.298	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM stop
                                16:33:34.299	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM start
                                16:33:34.300	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: WERT2
                                16:33:44.778	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM stop
                                16:33:44.779	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM start
                                16:33:44.780	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: WERT2
                                

                                f7311d28-b211-44fa-b351-f47914562e50-image.png

                                6dd9ad6a-088d-4c4a-a022-d45e1118ee02-image.png

                                Das Gesamte Scipt wird ja mehrmals pro Minnute durchlaufen und somit auch die Funktion "CheckFertig"...

                                Noch eine Frag zum Verständniss des Timers. Ist es so, dass der Timer immer die "gleiche" Variale ist. Also wenn der parameter wahr ist wird der timer gestartet und läuft so lange bis die funkion stop timout aufgerufen wird? Weil dann verstehe ich die funktio nicht. ;)

                                Danke

                                rantanplanR Offline
                                rantanplanR Offline
                                rantanplan
                                schrieb am zuletzt editiert von
                                #132

                                @dehein2
                                CheckFertig wird mehrmals aufgerufen. Wichtig ist dabei mit welchem Parameter.

                                Timer können mehrmals aufgerufen werden. Dabei werden jedesmal NEUE Timer gestartet, die parallel zu den Anderen laufen. Deshalb stoppt man vor einem erneuten Aufruf einen eventuell schon laufenden..

                                Wenn ein Timer gestoppt wird, werden die Bausteine in dem Timer NICHT ausgeführt.

                                Dein Problem wird wahrscheinlich der "GrenzWertInWatt" sein. 300 finde ich zu hoch.
                                Beobachte doch einfach mal die Werte wenn die Waschmaschine läuft.

                                Rantanplan

                                CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                1 Antwort Letzte Antwort
                                0
                                • D Offline
                                  D Offline
                                  dehein2
                                  schrieb am zuletzt editiert von
                                  #133

                                  @rantanplan
                                  Danke. Die Sache ist, dass selbst wenn die Maschine fertig ist und dauerhaft <5W braucht die Schleife ja immer mit dem befehl stop(timeout) gebinnt, oder? Und das obwohl die funktion immer mit dem parameter wahr aufgerunfen wird...

                                  oder verstehe ich das falsch?

                                  rantanplanR 1 Antwort Letzte Antwort
                                  0
                                  • D Offline
                                    D Offline
                                    dehein2
                                    schrieb am zuletzt editiert von dehein2
                                    #134

                                    Also ich meine, und das sieht man im Log ja auch, es ist dann immer

                                    stop(timeout) -> timout(60) -> stop (timeout)....

                                    Daran, dass immer nur "Wert" auftaucht sieht man ja, dass die falls-Funktion das tut was sie soll, oder?

                                    1 Antwort Letzte Antwort
                                    0
                                    • D dehein2

                                      @rantanplan
                                      Danke. Die Sache ist, dass selbst wenn die Maschine fertig ist und dauerhaft <5W braucht die Schleife ja immer mit dem befehl stop(timeout) gebinnt, oder? Und das obwohl die funktion immer mit dem parameter wahr aufgerunfen wird...

                                      oder verstehe ich das falsch?

                                      rantanplanR Offline
                                      rantanplanR Offline
                                      rantanplan
                                      schrieb am zuletzt editiert von
                                      #135

                                      @dehein2 sagte in [VORLAGE] Blockly Meldung wenn Waschmaschine fertig:

                                      @rantanplan
                                      Danke. Die Sache ist, dass selbst wenn die Maschine fertig ist und dauerhaft <5W braucht die Schleife ja immer mit dem befehl stop(timeout) gebinnt, oder? Und das obwohl die funktion immer mit dem parameter wahr aufgerunfen wird...

                                      oder verstehe ich das falsch?

                                      Das Script triggert "Power" auf Änderung. Jedes Mal wenn sich der Wert ändert, wird es durchlaufen.
                                      Wie schon gesagt dient das "Stop timeout" zur Sicherheit.

                                      Es sind zwei Bedingungen um "CheckFertig" mit "wahr" aufzurufen. Wenn das laufend aufgerufen wird, obwohl die Waschmaschine fertig ist, stimmt "WaschmaschineAn" nicht. Schau mal nach ob dort ein Wert eingetragen ist.
                                      Wenn das Script zum ersten Mal gestartet wird, wird "WaschmaschineAN" zwar angelegt aber enthält KEINEN Wert.

                                      Das Script ist schon etwas älter. Da gab es noch keinen "Init-Wert" bei "Datenpunkt erzeugen". Muss ich mal bei Gelegenheit anpassen.

                                      Funktioniert das Script bei Dir nicht oder geht es nur um eine Verständnisfrage?

                                      Rantanplan

                                      CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                      1 Antwort Letzte Antwort
                                      0
                                      • D Offline
                                        D Offline
                                        dehein2
                                        schrieb am zuletzt editiert von dehein2
                                        #136

                                        Hi @rantanplan.

                                        Danke. Nein es funktioniert leider nicht. Die Ini Werte habe ich gesetzt und die "an" erkennung funktioniert auch.

                                        Im Prinzip durchläuft das script dies mehrmals pro minute, alle 2-3 Sekunden (halt immer wenn sich der POWER Wert ändert). Dies passiert wenn Power <300W ist (deutlich darunter):

                                        16:33:34.298	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM stop
                                        
                                        16:33:34.299	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM start
                                        
                                        16:33:34.300	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: WERT2
                                        
                                        16:33:44.778	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM stop
                                        
                                        16:33:44.779	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM start
                                        
                                        16:33:44.780	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: WERT2
                                        

                                        Dadurch wird der Timer natürlich immer wieder gestoppt.

                                        Sorry, so ganz verstehe ich es immernoch nicht.
                                        Das Hauptscirpt hat ja im Prinzip 2 Optionen dir alle paar Sekunden durchlaufen werden
                                        A: Wert > GrenzWertInWatt -> checkfertig wird aufgerufen mit false -> es durchläuft nur stop(timeout)
                                        B: Wert < GrenzWertInWatt && WaschmaschineAN=true ->checkfertig wird aufgerufen mit true -> es durchläuft erst stop(timeout) und dann Ausführen in 60 sek

                                        Was ich nicht verstehe: (beispiel wie im code oben (Wert 2 ist Fall B))

                                        Sek 1: A -> kein Timer
                                        Sek 3 B -> Timer stop -> Timer start
                                        Sek 5 B -> Timer stop - Timer start

                                        Irgendwie wird der timer ja IMMER gestoppt, oder?

                                        DANKE!

                                        rantanplanR 1 Antwort Letzte Antwort
                                        0
                                        • D dehein2

                                          Hi @rantanplan.

                                          Danke. Nein es funktioniert leider nicht. Die Ini Werte habe ich gesetzt und die "an" erkennung funktioniert auch.

                                          Im Prinzip durchläuft das script dies mehrmals pro minute, alle 2-3 Sekunden (halt immer wenn sich der POWER Wert ändert). Dies passiert wenn Power <300W ist (deutlich darunter):

                                          16:33:34.298	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM stop
                                          
                                          16:33:34.299	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM start
                                          
                                          16:33:34.300	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: WERT2
                                          
                                          16:33:44.778	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM stop
                                          
                                          16:33:44.779	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: Timer WM start
                                          
                                          16:33:44.780	info	javascript.0 (16094) script.js.Geräte.Waschmaschine: WERT2
                                          

                                          Dadurch wird der Timer natürlich immer wieder gestoppt.

                                          Sorry, so ganz verstehe ich es immernoch nicht.
                                          Das Hauptscirpt hat ja im Prinzip 2 Optionen dir alle paar Sekunden durchlaufen werden
                                          A: Wert > GrenzWertInWatt -> checkfertig wird aufgerufen mit false -> es durchläuft nur stop(timeout)
                                          B: Wert < GrenzWertInWatt && WaschmaschineAN=true ->checkfertig wird aufgerufen mit true -> es durchläuft erst stop(timeout) und dann Ausführen in 60 sek

                                          Was ich nicht verstehe: (beispiel wie im code oben (Wert 2 ist Fall B))

                                          Sek 1: A -> kein Timer
                                          Sek 3 B -> Timer stop -> Timer start
                                          Sek 5 B -> Timer stop - Timer start

                                          Irgendwie wird der timer ja IMMER gestoppt, oder?

                                          DANKE!

                                          rantanplanR Offline
                                          rantanplanR Offline
                                          rantanplan
                                          schrieb am zuletzt editiert von
                                          #137

                                          @dehein2 sagte in [VORLAGE] Blockly Meldung wenn Waschmaschine fertig:

                                          Hi @rantanplan.

                                          Danke. Nein es funktioniert leider nicht. Die Ini Werte habe ich gesetzt und die "an" erkennung funktioniert auch.

                                          Im Prinzip durchläuft das script dies mehrmals pro minute, alle 2-3 Sekunden (halt immer wenn sich der POWER Wert ändert). Dies passiert wenn Power <300W ist (deutlich darunter):

                                          Was benutzt Du denn für einen Stecker? Änderungen alle 2-3 Sekunden? Das ist happig. Wie sieht denn da Dein DutyCycle aus?
                                          Da müsstest Du Dir eventuell einen "Puffer" einbauen. Ähnlich so wie ich am Anfang auf "0" prüfe.

                                          Falls "vorheriger Wert" > "vorheriger Wert" + "x" ODER "vorheriger Wert" < "vorheriger Wert" - "y"

                                          Irgendwie wird der timer ja IMMER gestoppt, oder?

                                          Ja. In Deinem Fall ist das auch gut so. Sonst hättest Du in kürzester Zeit 1000sende Timer am Laufen und ioBroker würde einfrieren.

                                          Ich würde mir einen anderen Stecker besorgen.

                                          Rantanplan

                                          CCU3 / MS Server 2019(VM) / Scripten mit Blockly

                                          1 Antwort Letzte Antwort
                                          0
                                          Antworten
                                          • In einem neuen Thema antworten
                                          Anmelden zum Antworten
                                          • Älteste zuerst
                                          • Neuste zuerst
                                          • Meiste Stimmen


                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          675

                                          Online

                                          32.4k

                                          Benutzer

                                          81.4k

                                          Themen

                                          1.3m

                                          Beiträge
                                          Community
                                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                                          ioBroker Community 2014-2025
                                          logo
                                          • Anmelden

                                          • Du hast noch kein Konto? Registrieren

                                          • Anmelden oder registrieren, um zu suchen
                                          • Erster Beitrag
                                            Letzter Beitrag
                                          0
                                          • Home
                                          • Aktuell
                                          • Tags
                                          • Ungelesen 0
                                          • Kategorien
                                          • Unreplied
                                          • Beliebt
                                          • GitHub
                                          • Docu
                                          • Hilfe