Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [gelöst] Lichtwecker mit Cron -> fehler im Blockly

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    [gelöst] Lichtwecker mit Cron -> fehler im Blockly

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

      Guten Tag zusammen
      Ich versuche in Blockly einen Lichtwecker zu realisieren. Also so dass das Licht am Morgen langsam hochdimmt.
      Soweit läufts eigentlich auch.
      Aber: die Werte welche ich über VIS in die Datenpunkte schreiben lösen im Blockly einen Fehler aus. Wenn ich die Werte in Blockly direkt schreibe funktionierts.
      Kann jemand erklären warum? In allen Scripts wo ich gesehen habe werden die Werte (Stunden&Minuten) so in den Script eingefügt...

      Vielen Dank schon im Vorraus
      lichtwecker_debug.jpg
      lichtwecker.jpg

      Homoran paul53 2 Replies Last reply Reply Quote 0
      • Homoran
        Homoran Global Moderator Administrators @figugegu last edited by Homoran

        @figugegu Code bitte als Txt in code-tags posten, dann kann man auch kopieren 😡
        Abgeschnitten bringt das log auch nichts.

        Dann bitte dort nachsehen, was das log sagt: in Zeile 4, Zeichen 78
        Dazu von Block auf js-Ansicht umstellen.

        Was soll das Intervall dauerhaft bewirken?
        wann und wie wird es beendet?

        Was sind das für DPs mit h und min?
        Welches Format haben diese?

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

          @figugegu
          Welche Version des JS-Adapters? Meine Version (4.10.8) erzeugt einen anderen Javascript-Code aus dem Blockly und funktioniert:

          .val.toString().trim() + ' ' +
          
          Homoran 1 Reply Last reply Reply Quote 0
          • Homoran
            Homoran Global Moderator Administrators @paul53 last edited by

            @paul53 sagte in Lichtwecker mit Cron -> fehler im Blockly:

            Meine Version (4.10.8)

            die ist aber noch nicht im latest.

            Weisst du, ob da was gefixt wurde?

            F 1 Reply Last reply Reply Quote 0
            • F
              figugegu @Homoran last edited by

              var wecker1, Intervall;
              
              
              wecker1 = schedule(getState("0_userdata.0.Wecker.Wecker_1.Weckzeit_min").val.trim() + ' ' + getState("0_userdata.0.Wecker.Wecker_1.Weckzeit_h").val.trim() + ' ' + '*'.trim() + ' ' + '*'.trim() + ' ' + '*'.trim(), function () {
                setState("deconz.0.Lights.10.bri"/*Küche Decke bri*/, 0, true);
                Intervall = setInterval(function () {
                  setState("deconz.0.Lights.10.level"/*Küche Decke level*/, (getState("deconz.0.Lights.10.level").val + 10));
                }, 1000);
              });
              

              Das Beenden des Intervalls habe ich noch nicht gemacht, stimmt. Sollte dann beedet werden wenn die Leuchte die maximale (oder definierte) Helligkeit erreicht hat.
              Die DPs haben das Fomat "Zahl". Habe aber schon alle durchprobiert.

              Der js-Adapter hat Version 4.8.4. Diese ist aber gemäss ioBroker aktuell...

              Danke für eure Hilfe!
              DP.jpg

              1 Reply Last reply Reply Quote 0
              • F
                fastfoot @Homoran last edited by

                @Homoran sagte in Lichtwecker mit Cron -> fehler im Blockly:

                @paul53 sagte in Lichtwecker mit Cron -> fehler im Blockly:

                Meine Version (4.10.8)

                die ist aber noch nicht im latest.

                Weisst du, ob da was gefixt wurde?

                das wurde im November gefixt

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

                  @fastfoot sagte in Lichtwecker mit Cron -> fehler im Blockly:

                  das wurde im November gefixt

                  DANKE!

                  Dann hat @figugegu ja genau das Issue und sollte ausnahmsweise mal kurz das Repo auf latest stellen, den js-Adapter upgraden und danach das Repo wieder auf stable/default

                  F 1 Reply Last reply Reply Quote 0
                  • F
                    figugegu @Homoran last edited by

                    So, habe also die Latest installiert.
                    Fehlermeldung ist weg.
                    Trotzdem werden die Werte aus den DP nicht in den CRON übernommen.
                    Manuell in Blockly geschrieben funktioniert es.

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

                      @figugegu sagte:

                      Trotzdem werden die Werte aus den DP nicht in den CRON übernommen.

                      Wie stellst Du das fest ? Bei mir funktioniert es.

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

                        @paul53
                        Indem das Script funktionert wenn ich die Stunden und Minuten direkt in Blockly schreibe anstelle aus einem DP einfüge.
                        Kann es sein dass der CRON so als Trigger nicht funktioniert? Also nur wenn die Werte direkt im CRON geschrieben werden?

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

                          @figugegu sagte:

                          Kann es sein dass der CRON so als Trigger nicht funktioniert?

                          Nein, es funktioniert so.

                          Blockly_temp.JPG

                          Werte(Zahlen): 15 und 36. Die Werte aus den Datenpunkten werden nur bei Skript-Start übernommen !

                          Wenn auf Änderung der Weckzeit reagiert werden soll, muss darauf getriggert und der laufende Zeitplan gestoppt werden.

                          Blockly_temp.JPG

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

                            @paul53 sagte in Lichtwecker mit Cron -> fehler im Blockly:

                            Werte: 15 und 36. Die Werte aus den Datenpunkten werden nur bei Skript-Start übernommen !

                            🤦‍♂️ Ja klar, genau das ist der "Fehler".

                            Vielen Dank, das bringt mich weiter!

                            F 1 Reply Last reply Reply Quote 0
                            • F
                              figugegu @figugegu last edited by

                              Danke allen!
                              Funktioniert soweit alles wie gewollt.
                              Ob der Script so "sauber" ist kann ich aber nicht beurteilen... 🙂

                              Anbei noch die funktionierende Lösung:

                              <xml xmlns="https://developers.google.com/blockly/xml">
                                <variables>
                                  <variable type="cron" id="wecker1">wecker1</variable>
                                  <variable type="interval" id="Intervall">Intervall</variable>
                                </variables>
                                <block type="procedures_defnoreturn" id="Pgc8VNiU%XB3z~a2X^p7" x="-458" y="-1040">
                                  <field name="NAME">wecker_stellen</field>
                                  <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                  <statement name="STACK">
                                    <block type="schedule_create" id="^iAKAEL!OxvNk0=QpqG$">
                                      <field name="NAME">wecker1</field>
                                      <value name="SCHEDULE">
                                        <shadow type="field_cron" id="w2^$(SL4_;c5sRlw/h??">
                                          <field name="CRON">* * * * *</field>
                                        </shadow>
                                        <block type="cron_builder" id="gDhUBD5ldAtbDmD.0Zfp">
                                          <mutation xmlns="http://www.w3.org/1999/xhtml" seconds="false" as_line="false"></mutation>
                                          <field name="LINE">FALSE</field>
                                          <field name="WITH_SECONDS">FALSE</field>
                                          <value name="DOW">
                                            <shadow type="text" id="h6C=GuqgX-~UD,Z}X5(F">
                                              <field name="TEXT">*</field>
                                            </shadow>
                                            <block type="get_value" id="V-`#Kw,duWYJ{LZlS3.g">
                                              <field name="ATTR">val</field>
                                              <field name="OID">0_userdata.0.Wecker.Wecker_1.Wecktage_Cron</field>
                                            </block>
                                          </value>
                                          <value name="MONTHS">
                                            <shadow type="text" id=".{W]66rbs0=@Sq@Qv9QG">
                                              <field name="TEXT">*</field>
                                            </shadow>
                                          </value>
                                          <value name="DAYS">
                                            <shadow type="text" id="D`01~Uh)t%vn-kJK8z`^">
                                              <field name="TEXT">*</field>
                                            </shadow>
                                          </value>
                                          <value name="HOURS">
                                            <shadow type="text" id="0WU.?a?.U_v`!]I*=bG(">
                                              <field name="TEXT">15</field>
                                            </shadow>
                                            <block type="get_value" id="lpsX;;UoT4@$yCpZdRm2">
                                              <field name="ATTR">val</field>
                                              <field name="OID">0_userdata.0.Wecker.Wecker_1.Weckzeit_h</field>
                                            </block>
                                          </value>
                                          <value name="MINUTES">
                                            <shadow type="text" id="JQ6+=ex4?rhrs+0tH,E_">
                                              <field name="TEXT">31</field>
                                            </shadow>
                                            <block type="get_value" id="$QCPxPRzPz2h:pV!(M*g">
                                              <field name="ATTR">val</field>
                                              <field name="OID">0_userdata.0.Wecker.Wecker_1.Weckzeit_min</field>
                                            </block>
                                          </value>
                                        </block>
                                      </value>
                                      <statement name="STATEMENT">
                                        <block type="comment" id="Q^N01Djl}n;wE11)K29F">
                                          <field name="COMMENT">Wecker Schlafzimmer</field>
                                          <next>
                                            <block type="controls_if" id="a;HC95+9[)vOBU!%K[%A">
                                              <value name="IF0">
                                                <block type="logic_compare" id="v$~UJxDyyN]dOr615,s+">
                                                  <field name="OP">EQ</field>
                                                  <value name="A">
                                                    <block type="get_value" id="Ud1:8vQ`p6NI|0s]3m~z">
                                                      <field name="ATTR">val</field>
                                                      <field name="OID">0_userdata.0.Wecker.Wecker_1.Wecker_1_MaPa</field>
                                                    </block>
                                                  </value>
                                                  <value name="B">
                                                    <block type="logic_boolean" id="CD~yAiHTL7ekiP9.Ou~{">
                                                      <field name="BOOL">TRUE</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </value>
                                              <statement name="DO0">
                                                <block type="update" id="XIiw%a#I%Po0S*}WR4)g">
                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                  <field name="OID">deconz.0.Lights.13.level</field>
                                                  <field name="WITH_DELAY">FALSE</field>
                                                  <value name="VALUE">
                                                    <block type="math_number" id="~K6+(10R^8f^/U#.Yr4$">
                                                      <field name="NUM">0</field>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="controls_if" id="kAsCx*Xi*`U6/yaSItWI">
                                                      <value name="IF0">
                                                        <block type="logic_compare" id="1oZ)+,56=72R=9~8l9Bx">
                                                          <field name="OP">EQ</field>
                                                          <value name="A">
                                                            <block type="get_value" id="ssa9cS}.`cKRTVZvk$P8">
                                                              <field name="ATTR">val</field>
                                                              <field name="OID">deconz.0.Lights.13.on</field>
                                                            </block>
                                                          </value>
                                                          <value name="B">
                                                            <block type="logic_boolean" id="mUd}67#E{t!E6wZ61|Va">
                                                              <field name="BOOL">FALSE</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                      <statement name="DO0">
                                                        <block type="timeouts_setinterval" id="7j#xTY@WFY!W#._KBBN=">
                                                          <field name="NAME">Intervall</field>
                                                          <field name="INTERVAL">1</field>
                                                          <field name="UNIT">sec</field>
                                                          <statement name="STATEMENT">
                                                            <block type="controls_if" id="mKJHkCt|kSDAgU(d;{]B">
                                                              <value name="IF0">
                                                                <block type="logic_compare" id=";y[XM99UkG~vC*07FI~I">
                                                                  <field name="OP">GTE</field>
                                                                  <value name="A">
                                                                    <block type="get_value" id=";0.(oVgLd~7b=r@HWH(O">
                                                                      <field name="ATTR">val</field>
                                                                      <field name="OID">deconz.0.Lights.13.level</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="B">
                                                                    <block type="get_value" id="nyku|N[WzsUZGO:zlivd">
                                                                      <field name="ATTR">val</field>
                                                                      <field name="OID">0_userdata.0.Licht.Standart_Schlafen_Decke</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <statement name="DO0">
                                                                <block type="timeouts_clearinterval" id="Y+oC)TA*y[,JS:?=5@5:">
                                                                  <field name="NAME">Intervall</field>
                                                                </block>
                                                              </statement>
                                                              <next>
                                                                <block type="control" id="M!mZ7~CJiWlyGhZGj=wt">
                                                                  <mutation xmlns="http://www.w3.org/1999/xhtml" delay_input="false"></mutation>
                                                                  <field name="OID">deconz.0.Lights.13.level</field>
                                                                  <field name="WITH_DELAY">FALSE</field>
                                                                  <value name="VALUE">
                                                                    <block type="math_arithmetic" id="+!X,.0Q[?j:o@o@IOVmO">
                                                                      <field name="OP">ADD</field>
                                                                      <value name="A">
                                                                        <shadow type="math_number" id="qGG|lrOhAo$?@{m3+wl5">
                                                                          <field name="NUM">1</field>
                                                                        </shadow>
                                                                        <block type="get_value" id="L%$,93y1eurif-Z.xB1~">
                                                                          <field name="ATTR">val</field>
                                                                          <field name="OID">deconz.0.Lights.13.level</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="B">
                                                                        <shadow type="math_number" id=".sOjyfd/*xTl8rdQB@SI">
                                                                          <field name="NUM">1</field>
                                                                        </shadow>
                                                                        <block type="math_number" id="eyKM=I]e{@Qw3G-Rz~A-">
                                                                          <field name="NUM">10</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </statement>
                                                        </block>
                                                      </statement>
                                                    </block>
                                                  </next>
                                                </block>
                                              </statement>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </statement>
                                </block>
                                <block type="procedures_callnoreturn" id="C%`+c}i:!vBV/0VO}9R-" x="263" y="-1063">
                                  <mutation name="wecker_stellen"></mutation>
                                  <next>
                                    <block type="on_ext" id="/lAG.lcf1y2q^QEZ|g_q">
                                      <mutation xmlns="http://www.w3.org/1999/xhtml" items="3"></mutation>
                                      <field name="CONDITION">ne</field>
                                      <field name="ACK_CONDITION"></field>
                                      <value name="OID0">
                                        <shadow type="field_oid" id="2lv[IPb2*kcN(BWc|B!d">
                                          <field name="oid">0_userdata.0.Wecker.Wecker_1.Weckzeit_h</field>
                                        </shadow>
                                      </value>
                                      <value name="OID1">
                                        <shadow type="field_oid" id="oJqNA37,QD@Z(S-SS`-7">
                                          <field name="oid">0_userdata.0.Wecker.Wecker_1.Weckzeit_min</field>
                                        </shadow>
                                      </value>
                                      <value name="OID2">
                                        <shadow type="field_oid" id=",T]qK|ai~5!bQ#e61kVa">
                                          <field name="oid">0_userdata.0.Wecker.Wecker_1.Wecktage_Cron</field>
                                        </shadow>
                                      </value>
                                      <statement name="STATEMENT">
                                        <block type="schedule_clear" id="$8;=Omg|6,#rx(FXwyYV">
                                          <field name="NAME">wecker1</field>
                                          <next>
                                            <block type="procedures_callnoreturn" id=",MfiO70pOA[nXP/MdMti">
                                              <mutation name="wecker_stellen"></mutation>
                                            </block>
                                          </next>
                                        </block>
                                      </statement>
                                    </block>
                                  </next>
                                </block>
                                <block type="comment" id="*k8[E)%1p5,8h%;BYEJA" x="-332" y="-602">
                                  <field name="COMMENT">Wecker Schlafzimmer MaPa</field>
                                </block>
                              </xml>
                              

                              SharedScreenshot.jpg

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

                              Support us

                              ioBroker
                              Community Adapters
                              Donate

                              855
                              Online

                              32.0k
                              Users

                              80.5k
                              Topics

                              1.3m
                              Posts

                              blockly javascript
                              4
                              13
                              1074
                              Loading More Posts
                              • Oldest to Newest
                              • Newest to Oldest
                              • Most Votes
                              Reply
                              • Reply as topic
                              Log in to reply
                              Community
                              Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen
                              The ioBroker Community 2014-2023
                              logo