Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Kann man Wert von "letztes" irgendwo auslesen?

    NEWS

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    Kann man Wert von "letztes" irgendwo auslesen?

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

      @padrino:

      Funktioniert das so? `
      Ja.

      1 Reply Last reply Reply Quote 0
      • padrino
        padrino Most Active last edited by

        Es klappt. 8-)

        Danke Dir!

        JavaScript ist nicht ganz leicht, wenn man mal vor zig Jahren etwas in Turbo Pascal fit war. 😄

        CU,

        padrino

        1 Reply Last reply Reply Quote 0
        • K
          Knallix last edited by

          Hallo Leute,

          habe so ein ähnliches Thema.

          Allerdings geht es bei mir um die Lautstärke.

          Ich steuere über einen Broadlink die Lautstärke. Würde dieses gerne über Alexa steuern.

          Lautstärke ist als level angelegt (0-100 %)

          Zaehler_Volume (0-50) –> 50x ist volle Lautstärke an der Anlage

          Von meiner Logik her , hätte ich es so gemacht. Allerdings stürzt sobald ich die Lautstärke erhöhe der IoBroker ab.

          Wenn ich über Alexa sage "TV Lautstärke auf 20%" ,soll er dann bei Änderung größer "WZ Anlage Lauter" solange ausführen,

          bis der Wert "Zähler_Lautstärke" = ((50%100)x"Lautstärke") ist.

          Bei jedem "WZ Anlage Lauter" soll er den Wert Zähler_Lautstärke 1x hoch zählen.

          Vielleicht jemand eine Idee wie ich das am besten mache ? Stehe hier leider auf dem Schlauch....

          Gruß

          Kevin

          PS: Blockly im Anhang
          7174_lautst_rke.jpg

          1 Reply Last reply Reply Quote 0
          • padrino
            padrino Most Active last edited by

            Hmm,

            sicher, Dass die Verzögerung mit den Timeouts so geht?

            Haste die mal extrem hoch gestellt zum Testen?

            Wenn ich das richtig sehe, wäre auch "Ausführen Intervall" das Richtige für Dich.

            Außerdem, brauchst Du die beiden letzten Trigger?

            Könntest Du die Änderung nicht einfach mit in die Schleide, nach dem "steuere" packen?

            Ich habe hier übrigens mit dem Probelm zu kämpfen, dass heller/dunkler hier immer +/-25% sind, das betrifft Dich nicht?

            Im Anhang mal noch mein aktuelles Skript, vielleicht hilft das (wegen der Intervalle)…

            CU,

            padrino

             <block xmlns="http://www.w3.org/1999/xhtml" type="on" id="tjeEyEL@*vSZZm^18Xh|" x="-112.00003051757812" y="-87.79999923706055"><field name="OID">broadlink.1.learnedSignals.Lampe.Lampe.TVLEDsHelligkeit</field>
              <field name="CONDITION">ne</field>
            
              <statement name="STATEMENT"><block type="controls_if" id="0H:P`E}prOwP65/m|nJZ"><mutation else="1"></mutation>
                  <value name="IF0"><block type="logic_compare" id="Vl`r:4tLw*-K95^v?YpF"><field name="OP">GT</field>
                      <value name="A"><block type="get_value" id="-Dm]c?/wc8X~HZ3;pqho"><field name="ATTR">val</field>
                          <field name="OID">broadlink.1.learnedSignals.Lampe.Lampe.TVLEDsHelligkeit</field></block></value> 
                      <value name="B"><block type="math_number" id="ZFY3tIFRClp]vmUeeR)d"><field name="NUM">0</field></block></value></block></value> 
                  <statement name="DO0"><block type="controls_if" id="7VP-`qLaqhR4UrEq_p5p"><mutation else="1"></mutation>
                      <value name="IF0"><block type="logic_compare" id="5{KLw-4ytR;mz_;f|S6T"><field name="OP">EQ</field>
                          <value name="A"><block type="on_source" id="h;6Z6qwuKf]k(O19H|J_"><field name="ATTR">oldState.val</field></block></value> 
                          <value name="B"><block type="math_number" id="o^O1ADLai[0sfD7#}4W["><field name="NUM">0</field></block></value></block></value> 
                      <statement name="DO0"><block type="control" id="s0[BM~cL=5TmA|3*2`}J"><mutation delay_input="false"></mutation>
                          <field name="OID">broadlink.1.learnedSignals.Lampe.LEDsAn</field>
                          <field name="WITH_DELAY">FALSE</field>
                          <value name="VALUE"><block type="logic_boolean" id="k=fO;f_p}StI~?/cF1_t"><field name="BOOL">TRUE</field></block></value></block></statement> 
                      <statement name="ELSE"><block type="variables_set" id="/@:w0{UAjlOt2j}qj9UQ"><field name="VAR">DimmerSchritte</field>
                          <value name="VALUE"><block type="math_number" id="GF*J2q~n73[J=x]+d,u9"><field name="NUM">0</field></block></value> 
                          <next><block type="timeouts_setinterval" id="y18h8-O1sHP.O,rsPy%j"><field name="NAME">Intervall</field>
                              <field name="INTERVAL">500</field>
                              <field name="UNIT">ms</field>
                              <statement name="STATEMENT"><block type="variables_set" id="z6Y#r_)wclzpI[?c#|+l"><field name="VAR">DimmerSchritte</field>
                                  <value name="VALUE"><block type="math_arithmetic" id="YcsJ1E9nn*hV~abUh}3J"><field name="OP">ADD</field>
                                      <value name="A"><shadow type="math_number" id="%h*hZ{FlTj6wW[ktrN!)"><field name="NUM">1</field></shadow> 
                                        <block type="variables_get" id="SCskmzPv725izgl`B+.?"><field name="VAR">DimmerSchritte</field></block></value> 
                                      <value name="B"><shadow type="math_number" id="+;w|HJF@5InjaL/-wGAO"><field name="NUM">1</field></shadow></value></block></value> 
                                  <next><block type="controls_if" id="e6~f%PzKZ0;dRgptq1[v"><mutation elseif="1"></mutation>
                                      <value name="IF0"><block type="logic_compare" id="FmuuQo=nH:`(JLl/b?*V"><field name="OP">GT</field>
                                          <value name="A"><block type="get_value" id="6_QHswc1qni@KJk0Vin4"><field name="ATTR">val</field>
                                              <field name="OID">broadlink.1.learnedSignals.Lampe.Lampe.TVLEDsHelligkeit</field></block></value> 
                                          <value name="B"><block type="on_source" id="wBj^vbIsOm6G}mDzm;%v"><field name="ATTR">oldState.val</field></block></value></block></value> 
                                      <statement name="DO0"><block type="control" id="vA:R6nHhV7[RXu[rw9/K"><mutation delay_input="false"></mutation>
                                          <field name="OID">broadlink.1.learnedSignals.Lampe.LEDsHeller</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE"><block type="logic_boolean" id="ZW1vXaZx1Q]:*Smosc,l"><field name="BOOL">TRUE</field></block></value></block></statement> 
                                      <value name="IF1"><block type="logic_compare" id="u[X.VAiy~,@,Ay6tSIEy"><field name="OP">LT</field>
                                          <value name="A"><block type="get_value" id=")[;_lnc?E{VyA.]J?I/E"><field name="ATTR">val</field>
                                              <field name="OID">broadlink.1.learnedSignals.Lampe.Lampe.TVLEDsHelligkeit</field></block></value> 
                                          <value name="B"><block type="on_source" id="+70Q//X~3Py3DrC{A3g`"><field name="ATTR">oldState.val</field></block></value></block></value> 
                                      <statement name="DO1"><block type="control" id="L7%AYotk+/^P]lxvaAMX"><mutation delay_input="false"></mutation>
                                          <field name="OID">broadlink.1.learnedSignals.Lampe.LEDsDunkler</field>
                                          <field name="WITH_DELAY">FALSE</field>
                                          <value name="VALUE"><block type="logic_boolean" id="VH~uoFyIP,73:6Gzk;#H"><field name="BOOL">TRUE</field></block></value></block></statement> 
                                      <next><block type="controls_if" id="|Bt0ZlV)6x%O@5)^?lKW"><value name="IF0"><block type="logic_compare" id="EW@{CY7HG^j0:`g6Q~it"><field name="OP">EQ</field>
                                              <value name="A"><block type="variables_get" id="!~8HAGZ||gst/xYl=ahl"><field name="VAR">DimmerSchritte</field></block></value> 
                                              <value name="B"><block type="math_single" id="w8XAGYyzeN5giS|DKgt|"><field name="OP">ABS</field>
                                                  <value name="NUM"><shadow type="math_number" id="vpHlR7qwC]8zBrSfj.7;"><field name="NUM">9</field></shadow> 
                                                    <block type="math_arithmetic" id="n%)=M.=@%G.{!GVh/E8G"><field name="OP">DIVIDE</field>
                                                      <value name="A"><shadow type="math_number" id="7Xz%epxXCgt,j|AFE@k#"><field name="NUM">1</field></shadow> 
                                                        <block type="math_arithmetic" id="1W;gp9i4%t]HCO0+ib6?"><field name="OP">MINUS</field>
                                                          <value name="A"><shadow type="math_number" id="zJj45#q0ki,Y-z{n}QOC"><field name="NUM">1</field></shadow> 
                                                            <block type="get_value" id="lyc;k~hBi.bx4le^M!y8"><field name="ATTR">val</field>
                                                              <field name="OID">broadlink.1.learnedSignals.Lampe.Lampe.TVLEDsHelligkeit</field></block></value> 
                                                          <value name="B"><shadow type="math_number" id=".k4@-yOF7_[)Xp!W1K[f"><field name="NUM">1</field></shadow> 
                                                            <block type="on_source" id="M6aC-TjHLtx)d{M[69]7"><field name="ATTR">oldState.val</field></block></value></block></value> 
                                                      <value name="B"><shadow type="math_number" id=":}hBMQOpw+`_J~-mB~kc"><field name="NUM">10</field></shadow></value></block></value></block></value></block></value> 
                                          <statement name="DO0"><block type="timeouts_clearinterval" id="Q%,GU#)tKyR0a;|jX#x+"><field name="NAME">Intervall</field></block></statement></block></next></block></next></block></statement></block></next></block></statement></block></statement> 
                  <statement name="ELSE"><block type="control" id="34LwS?ailzC9a^W5D~d@"><mutation delay_input="false"></mutation>
                      <field name="OID">broadlink.1.learnedSignals.Lampe.LEDsAus</field>
                      <field name="WITH_DELAY">FALSE</field>
                      <value name="VALUE"><block type="logic_boolean" id="NKdRmxiku05CcE;SQjc}"><field name="BOOL">TRUE</field></block></value></block></statement></block></statement></block> 
            
            1 Reply Last reply Reply Quote 0
            • K
              Knallix last edited by

              ok Danke,

              ich schaue mir das mal mit ner Tasse-Kaffee an 🙂

              1 Reply Last reply Reply Quote 0
              • padrino
                padrino Most Active last edited by

                Importieren als Skript, dann siehste auch schön die Blöcke. 😉

                (ist für 'n Screenshot zu unübersichtlich)

                Aber "guten Code" kann ich nicht versprechen. :roll:

                CU,

                padrino

                1 Reply Last reply Reply Quote 0
                • K
                  Knallix last edited by

                  Warum rechnest du um den Zyklus zu stoppen (:10) ?

                  1 Reply Last reply Reply Quote 0
                  • padrino
                    padrino Most Active last edited by

                    Hi,

                    meine LEDs lassen nur sich in 10 (festen) Schritten dimmen, also 10%, 20%… 100%.

                    Um auf die Schritte zu kommen teile ich die Prozente der Helligkeit durch 10.

                    Da ich bis vor kurzem "wiederhole x mal" hatte, habe ich so die Stufen hochgezählt.

                    Jetzt mit "ausführen intervall" könnte ich auch mit dem 10fachen rechnen und dann den Wert von DimmerSchritte immer um 10 statt 1 erhöhen, stimmt, aber irgendwie habe ich mich an das andere gewöhnt (bzw. das nicht bedacht :P)...

                    CU,

                    padrino

                    1 Reply Last reply Reply Quote 0
                    • padrino
                      padrino Most Active last edited by

                      @paul53:

                      https://forum.iobroker.net/viewtopic.php?f=21&t=16571&p=174333#p174333. `

                      Hi,

                      muss hier nochmal nachhaken, wenn ich darf. :roll:

                      Dieses "vorheriger Wert" darf (oder kann) ja nur in "falls Objekten" genutzt werden.

                      D.h. ich kann damit gar kein "setze Variable auf alten Wert von Objekt" machen… :?:

                      (keine Ahung, wieso das damals hier keine Warnung gab - inzwischen ist das Skipt komplett anders ;))

                      ~~![](</s><URL url=)<link_text text="download/file.php?id=34029">https://forum.iobroker.net/download/file.php?id=34029</link_text>" />

                      Bei meinem aktuellen Projekt bräuchte ich aber schon den Wert in einer Variablen, damit ich ihn ändern kann, ohne das Obekt zu ändern und so das Skript erneut zu triggern (=Endlosschleife). 😞

                      CU,

                      padrino~~

                      1 Reply Last reply Reply Quote 0
                      • M
                        mikiline last edited by

                        @Knallix:

                        Hallo Leute,

                        habe so ein ähnliches Thema.

                        Allerdings geht es bei mir um die Lautstärke.

                        Ich steuere über einen Broadlink die Lautstärke. Würde dieses gerne über Alexa steuern.

                        Lautstärke ist als level angelegt (0-100 %)

                        Zaehler_Volume (0-50) –> 50x ist volle Lautstärke an der Anlage

                        Von meiner Logik her , hätte ich es so gemacht. Allerdings stürzt sobald ich die Lautstärke erhöhe der IoBroker ab.

                        Wenn ich über Alexa sage "TV Lautstärke auf 20%" ,soll er dann bei Änderung größer "WZ Anlage Lauter" solange ausführen,

                        bis der Wert "Zähler_Lautstärke" = ((50%100)x"Lautstärke") ist.

                        Bei jedem "WZ Anlage Lauter" soll er den Wert Zähler_Lautstärke 1x hoch zählen.

                        Vielleicht jemand eine Idee wie ich das am besten mache ? Stehe hier leider auf dem Schlauch....

                        Gruß

                        Kevin

                        PS: Blockly im Anhang

                        Lautstärke.jpg `

                        Wieso so umständlich? Einfach eine Variable als Zahl und dann bei Änderung die Lautstärke der Anlage ändern, egal ob grösser oder kleiner.

                        "Alexa, stelle TV Lautstärke auf 25" und diesen triggern…..

                        1 Reply Last reply Reply Quote 0
                        • padrino
                          padrino Most Active last edited by

                          Auch wenn das nix bei meinem Problem hilft… 😉

                          Man muss schon unterscheiden, denn es müssen ja unterschiedliche Infrarotbefehle gesendet werden. Und für die "KI", ob das für "hoch" oder "runter" muss man selber sorgen. 🙂

                          1 Reply Last reply Reply Quote 0
                          • Ben1983
                            Ben1983 @padrino last edited by Ben1983

                            SORRY FALSCHEINTRAG

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

                            Support us

                            ioBroker
                            Community Adapters
                            Donate

                            497
                            Online

                            31.7k
                            Users

                            79.8k
                            Topics

                            1.3m
                            Posts

                            6
                            24
                            3935
                            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