Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. Blockly
    5. Lichtsteuerung (langsam dimmen lassen) [gelöst]

    NEWS

    • Wir empfehlen: Node.js 22.x

    • Neuer Blog: Fotos und Eindrücke aus Solingen

    • ioBroker goes Matter ... Matter Adapter in Stable

    Lichtsteuerung (langsam dimmen lassen) [gelöst]

    This topic has been deleted. Only users with topic management privileges can see it.
    • T
      ticaki Developer @azmo last edited by ticaki

      @azmo
      Ich klappere das mal ab:

      Blockly soll einfach sein, globale Variablen sind einfach, da man in einem Blockly von überall alles ändern kann.

      Verstehe ich richtig, dass es am Intervall liegt, der global ausgeführt und so mehrfach neu gestartet wird bzw wo laufende Intervalle neue variablen bekommen durch den start eines neuen?

      Es geht darum einen Interval von ausserhalb des Intervals zu beenden. Wenn du einen Funktion ausrufst und ihre als Parameter den Namen des Intervals übergibst solltest du den Interval von innerhalb des Intervals beenden können. Wenn du aber für Lampe X 2 * die Funktion aufrufst hast du keine Möglichkeit den 1. Interval zu beenden.

      Ich kenne mich mit async und await nicht wirklich aus.

      Blockly JS Funktion muß ich mir mal ansehen.

      EDIT: Oha
      Ich könnte dir heute Abend 2-3 Funktionen zusammenstellen die den Verwaltungskram machen, dann könntest du bei deinem ursprünglichen Plan bleiben.

      Funktionen:

      1. Speichere aktuellen Interval für ID
      2. Beende Interval für ID
      1 Reply Last reply Reply Quote 1
      • A
        azmo last edited by

        @ticaki

        Das wäre ja total cool!
        Schön, dass es noch Hoffnung gibt. Ich forsche heute nach Feierabend auch noch einmal weiter nach.

        Danke!

        paul53 1 Reply Last reply Reply Quote 0
        • T
          ticaki Developer last edited by ticaki

          Das hier sollte funktionieren. Hab es aber nicht getestet.
          Der Intervall muß Intervall heißen. Da ich nicht weiß was alles im XML Code ist, hab ich den JS Code für die Funktionen auch gepostet
          Bildschirmfoto 2020-04-06 um 19.52.41.png

          <xml xmlns="http://www.w3.org/1999/xhtml">
            <variables>
              <variable type="" id="/PIwE|z13C?P36hK`-zw">test</variable>
              <variable type="" id="Hf,2pvB@vbj.aWE)J%1=">obj-id</variable>
              <variable type="" id="hc!g+l^YPg:~Z#nvW%hh">j</variable>
              <variable type="" id="Y8j8U.u:Ae6YN+8GEJxr">k</variable>
              <variable type="" id=")fis(kd^2jt#:.mrXpP/">database</variable>
              <variable type="" id="zu7b}wX*rDT[5#4N9.}:">id</variable>
              <variable type="undefined" id="Intervall">Intervall</variable>
            </variables>
            <block type="variables_set" id="Lpk85pwGL(z,plhml!ya" x="63" y="-413">
              <field name="VAR" id="/PIwE|z13C?P36hK`-zw" variabletype="">test</field>
              <value name="VALUE">
                <block type="logic_null" id="?^kv8+Bx6VfFnx1}{cm="></block>
              </value>
            </block>
            <block type="procedures_defnoreturn" id="x8V$.A,XiK.UO=.zp%3o" x="63" y="-313">
              <mutation>
                <arg name="obj-id" varid="Hf,2pvB@vbj.aWE)J%1="></arg>
                <arg name="j" varid="hc!g+l^YPg:~Z#nvW%hh"></arg>
                <arg name="k" varid="Y8j8U.u:Ae6YN+8GEJxr"></arg>
              </mutation>
              <field name="NAME">etwas tun</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
              <statement name="STACK">
                <block type="timeouts_setinterval" id="K}jS3BHs:Kym.bvjZP{,">
                  <field name="NAME">Intervall</field>
                  <field name="INTERVAL">1000</field>
                  <field name="UNIT">ms</field>
                  <statement name="STATEMENT">
                    <block type="variables_set" id=";/b!vhy2pU|X~OzoIdz`">
                      <field name="VAR" id=")fis(kd^2jt#:.mrXpP/" variabletype="">database</field>
                      <value name="VALUE">
                        <block type="procedures_callcustomreturn" id="4,|[4tKXp]qyP:*H=Icy">
                          <mutation name="clearInterval(Intervall)">
                            <arg name="database"></arg>
                            <arg name="id"></arg>
                          </mutation>
                          <value name="ARG0">
                            <block type="variables_get" id="4O*?F;f$XMz5B/`0/E2%">
                              <field name="VAR" id=")fis(kd^2jt#:.mrXpP/" variabletype="">database</field>
                            </block>
                          </value>
                          <value name="ARG1">
                            <block type="variables_get" id="M9ONSAuuLXvpa8KD6c1-">
                              <field name="VAR" id="Hf,2pvB@vbj.aWE)J%1=" variabletype="">obj-id</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </statement>
                  <next>
                    <block type="variables_set" id="PY,D{*qsp=]-{@idjx~T">
                      <field name="VAR" id=")fis(kd^2jt#:.mrXpP/" variabletype="">database</field>
                      <value name="VALUE">
                        <block type="procedures_callcustomreturn" id="KuuPW[/4t;AoQ?6rG1)m">
                          <mutation name="saveInterval(Intervall)">
                            <arg name="database"></arg>
                            <arg name="id"></arg>
                          </mutation>
                          <value name="ARG0">
                            <block type="variables_get" id="KaJ])(yDV;98[Q|n#6S7">
                              <field name="VAR" id=")fis(kd^2jt#:.mrXpP/" variabletype="">database</field>
                            </block>
                          </value>
                          <value name="ARG1">
                            <block type="variables_get" id="?VWN+t)s_F-``Z%d+?g7">
                              <field name="VAR" id="Hf,2pvB@vbj.aWE)J%1=" variabletype="">obj-id</field>
                            </block>
                          </value>
                        </block>
                      </value>
                    </block>
                  </next>
                </block>
              </statement>
            </block>
            <block type="procedures_defcustomreturn" id="JjR.sw?~z-u1=VBU99S#" x="63" y="-12">
              <mutation statements="false">
                <arg name="database" varid=")fis(kd^2jt#:.mrXpP/"></arg>
                <arg name="id" varid="zu7b}wX*rDT[5#4N9.}:"></arg>
              </mutation>
              <field name="NAME">saveInterval(Intervall)</field>
              <field name="SCRIPT">aWYgKGRhdGFiYXNlID09PSB1bmRlZmluZWQpIGRhdGFiYXNlID0ge307CmRhdGFiYXNlW2lkXSA9IEludGVydmFsbDsKcmV0dXJuIGRhdGFiYXNlOw==</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
            </block>
            <block type="procedures_defcustomreturn" id="fXPu/a|%N`7wRO^bDz9^" x="63" y="13">
              <mutation statements="false">
                <arg name="database" varid=")fis(kd^2jt#:.mrXpP/"></arg>
                <arg name="id" varid="zu7b}wX*rDT[5#4N9.}:"></arg>
              </mutation>
              <field name="NAME">clearInterval(Intervall)</field>
              <field name="SCRIPT">aWYgKGRhdGFiYXNlID09PSB1bmRlZmluZWQpIHJldHVybiB7fTsKaWYgKGRhdGFiYXNlW2lkXSA9PT0gdW5kZWZpbmVkKSByZXR1cm4gZGF0YWJhc2U7CmlmIChkYXRhYmFzZVtpZF0pIHsKICAgIGNsZWFySW50ZXJ2YWwoZGF0YWJhc2VbaWRdKTsKICAgIGRhdGFiYXNlW2lkXSA9IG51bGw7Cn0KcmV0dXJuIGRhdGFiYXNlOwo=</field>
              <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
            </block>
          </xml>
          

          Code saveInterval:

          if (database === undefined) database = {};
          database[id] = Intervall;
          return database;
          

          Code clearInterval()

          if (database === undefined) return {};
          if (database[id] === undefined) return database;
          if (database[id]) {
              clearInterval(database[id]);
              database[id] = null;
          }
          return database;
          

          Obj-Id ist die Lampe die du schaltest oder eine andere eindeutige Zeichenkette

          1 Reply Last reply Reply Quote 1
          • paul53
            paul53 @azmo last edited by paul53

            @azmo
            Ich habe gerade das hier mit einem Array "timers" getestet:

            Blockly_temp.JPG

            1 Reply Last reply Reply Quote 1
            • A
              azmo last edited by azmo

              Hi.

              Danke für die Antworten, ich habe mich leider erst heute dransetzen können.
              Momentan teste ich die Idee von @ticaki .
              Ich habe versucht, den Code soweit zu verstehen, komme jedoch nicht so recht weiter. Anscheinend wird der Intervall irgendwie umbenannt, dynamisch nach obj-id?
              Die Frage ist nur: wie führe ich dann meine Aktionen darin aus? Muss ich die JS Funktionen erweitern oder bin ich auf dem richtigen Weg? (siehe Screenshot).

              Ich bin gerade ein wenig ratlos... Vermutlich mache ich etwas offensichtliches falsch.

              Anmerkung 2020-04-10 114701.png

              Wie man sieht, wird die Debug Info korrekt ausgegeben, der Intervall scheint aber nicht zu starten bzw. nur einmal zu laufen. Was ist verkehrt?

              EDIT:
              Die Schleife scheint zu laufen, aber irgendwie alle Minute. Hier der Log, diese Ausgaben wurde ohne weitere Schalteraktion erzeugt:

              10.4.2020, 11:53:01.009	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: database: [object Object]
              DimmAktuell: 100
              10.4.2020, 11:54:01.009	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: database: [object Object]
              DimmAktuell: 100
              10.4.2020, 11:55:01.012	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: database: [object Object]
              DimmAktuell: 100
              

              Irgendwie ist er von 1 (realer Wert des Objekts zu Beginn, jetzt ist der reale Wert 3,4) auf 100 gesprungen.
              Wenn ich den Script neu starte und den Schalter wieder betätige (vorher Zielwert auf 50 gesetzt):

              10.4.2020, 11:58:43.428	[info ]: javascript.0 (1293) Start javascript script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest
              10.4.2020, 11:58:43.435	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: registered 1 subscription and 1 schedule
              10.4.2020, 11:58:52.494	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: test
              10.4.2020, 11:58:53.497	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: database: [object Object]
              DimmAktuell: 3
              10.4.2020, 11:59:01.010	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: database: [object Object]
              DimmAktuell: 100
              10.4.2020, 12:00:01.011	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: database: [object Object]
              DimmAktuell: 100
              10.4.2020, 12:01:01.007	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: database: [object Object]
              DimmAktuell: 100
              
              1 Reply Last reply Reply Quote 0
              • T
                ticaki Developer last edited by ticaki

                Ja ist nicht ganz richtig. Die Funktion clearInterval ist das selbe wie stoppe zyklische Ausführung. Benutze es dort wo du den Interval beenden willst.
                Bildschirmfoto 2020-04-10 um 12.22.56.png

                Du mußt nicht in Code arbeiten. Ich erstelle ein Objekt in dem ich zu jedem Datenpunkt, den du übermittels die Referenz auf den Interval abspeichere. Womit das hier nicht klar kommt, ist wenn du 2 Intervals auf dem selben Datenpunkt zur gleichen Zeit startest.

                Habs mittlerweile auch getestet und es funktioniert.
                Bildschirmfoto 2020-04-10 um 12.04.20.png
                Bildschirmfoto 2020-04-10 um 12.05.45.png!

                A 1 Reply Last reply Reply Quote 1
                • A
                  azmo @ticaki last edited by azmo

                  @ticaki
                  Ah danke!

                  Damit scheint es zu funktionieren. Den Verdacht hatte ich auch...
                  Er dimmt jetzt korrekt hoch bzw. runter.
                  Wenn er es erreicht, wird gestoppt wie geplant.

                  Aber: Wenn ich im angefügten Script den Schalter umlege:

                  Anmerkung 2020-04-10 2.png

                  dann springt das Licht in der Farbe von 0 auf 100 und es passiert folgendes:

                  10.4.2020, 12:26:32.138	[info ]: javascript.0 (1293) Start javascript script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest
                  10.4.2020, 12:26:32.144	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: registered 1 subscription and 0 schedules
                  10.4.2020, 12:26:33.994	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: test
                  10.4.2020, 12:26:34.997	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                  DimmAktuell: 100
                  10.4.2020, 12:26:34.998	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                  10.4.2020, 12:26:34.999	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness
                  DimmAktuell: 100
                  10.4.2020, 12:26:35.997	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                  DimmAktuell: 99.5
                  10.4.2020, 12:26:35.999	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness
                  DimmAktuell: 100
                  10.4.2020, 12:26:36.998	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                  DimmAktuell: 99.5
                  10.4.2020, 12:26:37.000	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness
                  DimmAktuell: 100
                  10.4.2020, 12:26:37.999	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                  DimmAktuell: 99.5
                  10.4.2020, 12:26:38.001	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness
                  DimmAktuell: 100
                  10.4.2020, 12:26:38.999	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                  DimmAktuell: 99.5
                  10.4.2020, 12:26:39.003	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness
                  DimmAktuell: 100
                  10.4.2020, 12:26:40.000	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                  DimmAktuell: 99.5
                  10.4.2020, 12:26:40.002	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness
                  DimmAktuell: 100
                  10.4.2020, 12:26:41.000	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                  DimmAktuell: 99.5
                  10.4.2020, 12:26:41.002	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness
                  DimmAktuell: 100
                  10.4.2020, 12:26:41.180	[info ]: javascript.0 (1293) Stop script script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest
                  

                  Jetzt bin ich verwirrt, bestimmt etwas offensichtliches.
                  Die Werte scheinen zu konkurrieren? Einer hoch, einer runter? Es liegt also vermutlich an den Variablen DimmAktuell und Dimmziel? Sind die nicht in der Funktion lokal? Oder auch global? Argh!

                  T 1 Reply Last reply Reply Quote 0
                  • T
                    ticaki Developer @azmo last edited by ticaki

                    @azmo
                    Das ist nicht dein Fehler 🙂

                    Blocky definiert ALLE Variablen global. Um dein Problem zu beheben übergebe Dimmaktuell (Auf gleiche Schreibweise achten ich habs falsch denke ich) der Funktion:
                    Bildschirmfoto 2020-04-10 um 12.31.11.png

                    Damit wird innerhalb der Funktion Dimmaktuell lokal und nicht jeder Interval überschreibt die. Deshalb hatte ich obj-id, j, k angegeben. Alle Variablen die du verwendest müssen als Parameter rein kommen.

                    1 Reply Last reply Reply Quote 1
                    • A
                      azmo last edited by

                      @ticaki
                      Mann bist du schnell mit den Antworten!
                      Jetzt scheint es zu klappen.

                      Ne Moment. Er dimmt jetzt korrekt die Zielwerte an. Aber seltsamerweise:

                      12:38:38.917	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 3
                      12:38:39.898	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature DimmAktuell: 97.5
                      12:38:39.917	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 2.5
                      12:38:40.899	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature DimmAktuell: 98
                      12:38:40.917	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 2
                      12:38:41.899	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature DimmAktuell: 98.5
                      12:38:41.917	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1.5
                      12:38:42.898	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature DimmAktuell: 99
                      12:38:42.916	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1
                      12:38:42.918	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                      12:38:43.919	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1
                      12:38:43.920	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                      12:38:44.919	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1
                      12:38:44.920	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                      12:38:45.919	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1
                      12:38:45.920	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                      12:38:46.918	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1
                      12:38:46.919	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                      12:38:47.919	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1
                      12:38:47.921	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                      12:38:48.920	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1
                      12:38:48.921	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                      12:38:49.921	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.brightness DimmAktuell: 1
                      12:38:49.922	info	javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Intervall Beenden
                      12:38:50.526	info	javascript.0 (1293) Stop script script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest
                      
                      T 1 Reply Last reply Reply Quote 0
                      • T
                        ticaki Developer @azmo last edited by ticaki

                        @azmo
                        Ich hab nix zu tun 🙂 Außerdem pingt mein Handy wenn es ein Posting gibt.
                        Zeig mir mal das Script.

                        A 1 Reply Last reply Reply Quote 1
                        • A
                          azmo @ticaki last edited by

                          @ticaki
                          Na dann danke dass du uns deine Zeit schenkst 🙂

                          Anmerkung 2020-04-10 2.png

                          var obj_id, Dimmziel, DimmAktuell, database, id, Intervall;
                          
                          /**
                           * Beschreibe diese Funktion …
                           */
                          function Dimmer2(obj_id, Dimmziel, DimmAktuell) {
                            DimmAktuell = Math.round(getState(obj_id).val);
                            database = saveInterval_Intervall_(database, obj_id);
                            Intervall = setInterval(function () {
                              console.log((['obj-id: ',obj_id,'\n','DimmAktuell: ',DimmAktuell].join('')));
                              setStateDelayed(obj_id, DimmAktuell, false, parseInt(0, 10), false);
                              if (DimmAktuell < Dimmziel) {
                                DimmAktuell = DimmAktuell + 0.5;
                              } else if (DimmAktuell > Dimmziel) {
                                DimmAktuell = DimmAktuell - 0.5;
                              } else {
                                setStateDelayed(obj_id, Dimmziel, false, parseInt(0, 10), false);
                                database = clearInterval_Intervall_(database, obj_id);
                                console.log(('Ende: ' + String(obj_id)));
                              }
                            }, 1000);
                          }
                          
                          /**
                           * Beschreibe diese Funktion …
                           */
                          function saveInterval_Intervall_(database, id) {
                              if (database === undefined) database = {};
                              database[id] = Intervall;
                              return database;
                          }
                          
                          /**
                           * Beschreibe diese Funktion …
                           */
                          function clearInterval_Intervall_(database, id) {
                              if (database === undefined) return {};
                              if (database[id] === undefined) return database;
                              if (database[id]) {
                                  clearInterval(database[id]);
                                  database[id] = null;
                              }
                              return database;
                          }
                          
                          
                          on({id: '0_userdata.0.Eigene_Datenpunkte.Testschalter', change: "ne"}, function (obj) {
                            var value = obj.state.val;
                            var oldValue = obj.oldState.val;
                            console.log('test');
                            Dimmer2('tradfri.0.L-65546.lightbulb.colorTemperature', 90, null);
                            Dimmer2('tradfri.0.L-65546.lightbulb.brightness', 5, null);
                          });
                          
                          //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUzRSUzQ3ZhcmlhYmxlcyUzRSUzQ3ZhcmlhYmxlJTIwdHlwZSUzRCUyMiUyMiUyMGlkJTNEJTIyJTNEV19wJTJDJTVCb3QlNUUoYWpJeTBOYW01JTdEJTIyJTNFb2JqLWlkJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMHR5cGUlM0QlMjIlMjIlMjBpZCUzRCUyMnB3VyU1RG1tfjE2QUp3dmFCJTJGak1wcCUyMiUzRURpbW16aWVsJTNDJTJGdmFyaWFibGUlM0UlM0N2YXJpYWJsZSUyMHR5cGUlM0QlMjIlMjIlMjBpZCUzRCUyMiUyRjNhakUzVi0lN0NuQlIxISUzQkdiSzFhJTIyJTNFRGltbUFrdHVlbGwlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwdHlwZSUzRCUyMiUyMiUyMGlkJTNEJTIyb19qTjFhJTVEOEVqOS5VJTIzRW9PMCl6JTIyJTNFZGF0YWJhc2UlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwdHlwZSUzRCUyMiUyMiUyMGlkJTNEJTIyLnFRMjdnJTQwYyU3QiUyQ3ZwJTIzLlJ2QVolMjN5JTIyJTNFaWQlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwdHlwZSUzRCUyMnVuZGVmaW5lZCUyMiUyMGlkJTNEJTIySW50ZXJ2YWxsJTIyJTNFSW50ZXJ2YWxsJTNDJTJGdmFyaWFibGUlM0UlM0MlMkZ2YXJpYWJsZXMlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJwcm9jZWR1cmVzX2RlZm5vcmV0dXJuJTIyJTIwaWQlM0QlMjJNNiU3QzhPNHhyMiU1RSU3Q3NFQ3oqfmUlMkJEJTIyJTIweCUzRCUyMi04MzclMjIlMjB5JTNEJTIyLTQxMzglMjIlM0UlM0NtdXRhdGlvbiUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJvYmotaWQlMjIlMjB2YXJpZCUzRCUyMiUzRFdfcCUyQyU1Qm90JTVFKGFqSXkwTmFtNSU3RCUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJEaW1temllbCUyMiUyMHZhcmlkJTNEJTIycHdXJTVEbW1+MTZBSnd2YUIlMkZqTXBwJTIyJTNFJTNDJTJGYXJnJTNFJTNDYXJnJTIwbmFtZSUzRCUyMkRpbW1Ba3R1ZWxsJTIyJTIwdmFyaWQlM0QlMjIlMkYzYWpFM1YtJTdDbkJSMSElM0JHYksxYSUyMiUzRSUzQyUyRmFyZyUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTkFNRSUyMiUzRURpbW1lcjIlM0MlMkZmaWVsZCUzRSUzQ2NvbW1lbnQlMjBwaW5uZWQlM0QlMjJmYWxzZSUyMiUyMGglM0QlMjI4MCUyMiUyMHclM0QlMjIxNjAlMjIlM0VCZXNjaHJlaWJlJTIwZGllc2UlMjBGdW5rdGlvbiUyMCVFMiU4MCVBNiUzQyUyRmNvbW1lbnQlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBQ0slMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJhWiU0MDdHJTVCUSUzRmYpMU0lN0JLSiUzRHMzdyUzQSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTJGM2FqRTNWLSU3Q25CUjEhJTNCR2JLMWElMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VEaW1tQWt0dWVsbCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJtYXRoX3JvdW5kJTIyJTIwaWQlM0QlMjJfJTNBWDJtS21xJTI1RCUyRiU2MDElM0QlMkNKQTYlMjVKJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VST1VORCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyTlVNJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJ6KkNJd1RzOXV1SEclNUQlMkMtVnZCSDAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UzLjElM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZV92YXIlMjIlMjBpZCUzRCUyMlQlN0RfaCU1QkpJN3M0SUolMjQlNUVjVmhxJTNCbiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjJzJTNCJTdCcHI5TCU1QnklMkMtJTNCeFQlM0R5TkI5MCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnlkMyUyM0I5YlpFJTJDUyUzRDhGOTRBYkolN0QlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzRFdfcCUyQyU1Qm90JTVFKGFqSXkwTmFtNSU3RCUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRW9iai1pZCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiUyQkgodGZKJTNGKkglN0NIaFdySlpCTyU3QyU3RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyb19qTjFhJTVEOEVqOS5VJTIzRW9PMCl6JTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFZGF0YWJhc2UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19jYWxsY3VzdG9tcmV0dXJuJTIyJTIwaWQlM0QlMjJaa3QlNjAlMkJWZWElNURIfn5jazVfRHRlRiUyMiUzRSUzQ211dGF0aW9uJTIwbmFtZSUzRCUyMnNhdmVJbnRlcnZhbChJbnRlcnZhbGwpJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmRhdGFiYXNlJTIyJTNFJTNDJTJGYXJnJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmlkJTIyJTNFJTNDJTJGYXJnJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyZ2RfKDZwJTI0cWZPUiU0MClHKCUzQSklMkZvYyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyb19qTjFhJTVEOEVqOS5VJTIzRW9PMCl6JTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFZGF0YWJhc2UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyMSUzRGJsRi1BUSUyNU9NNGJoSiU2MHclNUViZCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNEV19wJTJDJTVCb3QlNUUoYWpJeTBOYW01JTdEJTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFb2JqLWlkJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0aW1lb3V0c19zZXRpbnRlcnZhbCUyMiUyMGlkJTNEJTIyT3J+OEYlM0JwcyElM0ZfUWslNUU5UGNZdkIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOQU1FJTIyJTNFSW50ZXJ2YWxsJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJJTlRFUlZBTCUyMiUzRTEwMDAlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlVOSVQlMjIlM0VtcyUzQyUyRmZpZWxkJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjIlNUJOKUhuVHhMOWkhOSU3REctJTNBVVVHJTJDJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyJTIzMmYlM0ZtVnlvSl9uLjhRTVdHJTI1WSU1RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0V0ZXN0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0X2pvaW4lMjIlMjBpZCUzRCUyMnN1dSUzQSpRSENHJTYwN1ApJTdCYzAlN0MqcjMlMjIlM0UlM0NtdXRhdGlvbiUyMGl0ZW1zJTNEJTIyNSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMmkyQjFNaGFWKCU1QiU1RV8xWCg0JTYwOG8lMkMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJURVhUJTIyJTNFb2JqLWlkJTNBJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMikoLnQ3Mnk0SiUzQW8lMjV1VjlYJTVEJTdEUyUyNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTNEV19wJTJDJTVCb3QlNUUoYWpJeTBOYW01JTdEJTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFb2JqLWlkJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfbmV3bGluZSUyMiUyMGlkJTNEJTIyb0NvX0lDJTJDdWZkMypxNWF+VzRyeiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlR5cGUlMjIlM0UlNUNuJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMyUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMipyNERsJTJGJTNBQkNaei4lMjNEN1BvaHYzJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRURpbW1Ba3R1ZWxsJTNBJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQURENCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMm8lN0JSaWMlM0ZpeXBRY0VhRFklMkJuYyU1RFclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUyRjNhakUzVi0lN0NuQlIxISUzQkdiSzFhJTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFRGltbUFrdHVlbGwlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xfZXglMjIlMjBpZCUzRCUyMiU3RGdvciU3QjFkJTNGYVIzNWdFdjN0b3hEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVFlQRSUyMiUzRWZhbHNlJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDTEVBUl9SVU5OSU5HJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMiUzRmh4OXYlN0QlM0ZXVmw1VyUyQ1MlM0JKJTI1UWVGJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFT2JqZWN0JTIwSUQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlNmUSU3QndlcWRCJTNBc1clMjREY2MlNDBVdVUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUzRFdfcCUyQyU1Qm90JTVFKGFqSXkwTmFtNSU3RCUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRW9iai1pZCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMmM4RiUyNSElNUQlNjBaMVRkQjJWJTdCYyU1QiUyNCU3REklMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyZSUyM0RULX4pX3FxVFklNjBaZkNjanVkJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlMkYzYWpFM1YtJTdDbkJSMSElM0JHYksxYSUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRURpbW1Ba3R1ZWxsJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyREVMQVlfTVMlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMiU0MCUyM0Q3SUQteiU2MG0lN0NwKV9VQ0QlM0JObiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTAlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjIlM0RwWCUyNGhTYyU2MHglM0IlMkMlM0RSJTdEOSU1QiU3RDRidSUyMiUzRSUzQ211dGF0aW9uJTIwZWxzZWlmJTNEJTIyMSUyMiUyMGVsc2UlM0QlMjIxJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjI2VCUyQ2olMkN+ZnZjSW0lM0QlM0RYUi1QRkRNJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VMVCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnMlM0R5em5WJTNBRjNyaCU3QmolMkIhNSUyNXUqISUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTJGM2FqRTNWLSU3Q25CUjEhJTNCR2JLMWElMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VEaW1tQWt0dWVsbCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIoISUyQzVQRyUyMzAydCU3QjQlMkZNViUyNFprTDYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMnB3VyU1RG1tfjE2QUp3dmFCJTJGak1wcCUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRURpbW16aWVsJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjIlMkNMNS4oLXVqSUc5RDFFQUV0ekRHJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlMkYzYWpFM1YtJTdDbkJSMSElM0JHYksxYSUyMiUyMHZhcmlhYmxldHlwZSUzRCUyMiUyMiUzRURpbW1Ba3R1ZWxsJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfYXJpdGhtZXRpYyUyMiUyMGlkJTNEJTIyJTdCNm4lMjRwb1dDdDklM0ZUNHcxRkhQUWclMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUFERCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyM2FLZ0NuZ1J0USU1QkJtJTdCUlIqMVAlNUUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJ6NXdjLVooUlUlMjRvJTIzWHc3UUVCNVMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUyRjNhakUzVi0lN0NuQlIxISUzQkdiSzFhJTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFRGltbUFrdHVlbGwlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjIlMkZ1QSUyQkdrbWc5LmtUNiU2MEVTLmh+eSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTAuNSUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjJGUGFsZyUyRmVsKiU3Qy51ITFCSGMlMjVVTiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFR1QlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJ4cSUzRlkhYiUyNSUyQ2gpbChOdDUtQzNJTCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyJTJGM2FqRTNWLSU3Q25CUjEhJTNCR2JLMWElMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VEaW1tQWt0dWVsbCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJqdDQhJTI1U2klN0M0fiU1RSU1QiU3RCU1RSlDT1UlMkZEJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJwd1clNURtbX4xNkFKd3ZhQiUyRmpNcHAlMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VEaW1temllbCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyRE8xJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyZ3ZqeiU2MEdQKElDeiUyRiUzRm0tdDNiNHYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUyRjNhakUzVi0lN0NuQlIxISUzQkdiSzFhJTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFRGltbUFrdHVlbGwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9hcml0aG1ldGljJTIyJTIwaWQlM0QlMjJBcyU2MENRWkEubWREJTNBJTYwJTdDTXZGIVhHJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VNSU5VUyUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJtYXRoX251bWJlciUyMiUyMGlkJTNEJTIyM2FLZ0NuZ1J0USU1QkJtJTdCUlIqMVAlNUUlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UxJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIxcSU1QiglMjMtMSUzRiUyRiUyNHRVS2d5MzVzR0YlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMiUyRjNhakUzVi0lN0NuQlIxISUzQkdiSzFhJTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFRGltbUFrdHVlbGwlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJYSm0lM0Q1YUlNLSU3QkklM0JkWCliJTJGJTYwSGYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0UwLjUlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkVMU0UlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sX2V4JTIyJTIwaWQlM0QlMjJGRUE4aHklMkZJSikxelIlM0YlNUJWMEYlMjRCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVFlQRSUyMiUzRWZhbHNlJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDTEVBUl9SVU5OSU5HJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMiUzRmh4OXYlN0QlM0ZXVmw1VyUyQ1MlM0JKJTI1UWVGJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFT2JqZWN0JTIwSUQlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMiUyRmduUkslN0RKMUhNJTJCUC44WW4lM0ElNjAlN0Q1JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0RXX3AlMkMlNUJvdCU1RShhakl5ME5hbTUlN0QlMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VvYmotaWQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJjOEYlMjUhJTVEJTYwWjFUZEIyViU3QmMlNUIlMjQlN0RJJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMkwlNURHZUhlb05lMkRjJTVCaDBFblYlNDB5JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJwd1clNURtbX4xNkFKd3ZhQiUyRmpNcHAlMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VEaW1temllbCUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkRFTEFZX01TJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjI2dFpEQm0lN0IlNUQlMkMlN0NmU1klN0MlMjVQKmFfNyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk5VTSUyMiUzRTAlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiU1RHRZdklhdF9UNlg0ZE1hJTNGNWZCZiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyb19qTjFhJTVEOEVqOS5VJTIzRW9PMCl6JTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFZGF0YWJhc2UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19jYWxsY3VzdG9tcmV0dXJuJTIyJTIwaWQlM0QlMjJvTSU1RFdsWSU3QmVXTyFmJTVELUZrSCU1RVd4JTIyJTNFJTNDbXV0YXRpb24lMjBuYW1lJTNEJTIyY2xlYXJJbnRlcnZhbChJbnRlcnZhbGwpJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmRhdGFiYXNlJTIyJTNFJTNDJTJGYXJnJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmlkJTIyJTNFJTNDJTJGYXJnJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyRkxXeDc1JTdEJTJDaiU1RWd3MCU0MCUzQk1WJTI1JTNBdiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyb19qTjFhJTVEOEVqOS5VJTIzRW9PMCl6JTIyJTIwdmFyaWFibGV0eXBlJTNEJTIyJTIyJTNFZGF0YWJhc2UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTQwJTJDVS5QeDh4d1IlN0NObEklMkJxZSUyNEZDJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0RXX3AlMkMlNUJvdCU1RShhakl5ME5hbTUlN0QlMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VvYmotaWQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmRlYnVnJTIyJTIwaWQlM0QlMjJyRU4lN0IlMkIlMkMhQVVZJTJCdW9FTmVPJTdDJTdCSyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlNldmVyaXR5JTIyJTNFbG9nJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJURVhUJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMnRleHQlMjIlMjBpZCUzRCUyMiU0MDYlN0JXKU0lNDBoJTJDbiUyNVFJQ2VveSU3QmVuJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRUludGVydmFsbCUyMEJlZW5kZW4lM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnRleHRfam9pbiUyMiUyMGlkJTNEJTIyfnclN0MuMW9mJTdEZnFhcCUyRlMlM0QlMkMwRHcwJTIyJTNFJTNDbXV0YXRpb24lMjBpdGVtcyUzRCUyMjIlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkFERDAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ0ZXh0JTIyJTIwaWQlM0QlMjI3V28lMjVyR0tBJTQwSnRLJTNGNnItOWJZKCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0VFbmRlJTNBJTIwJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQUREMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMlMlMkM3QyUyQzJfJTNGU1N+V0k2TGlMRlNNJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjIlM0RXX3AlMkMlNUJvdCU1RShhakl5ME5hbTUlN0QlMjIlMjB2YXJpYWJsZXR5cGUlM0QlMjIlMjIlM0VvYmotaWQlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0NibG9jayUyMHR5cGUlM0QlMjJvbl9leHQlMjIlMjBpZCUzRCUyMlpJdkt4alo0X2FzLlN4bGxBZCU3RG4lMjIlMjB4JTNEJTIyLTEzOCUyMiUyMHklM0QlMjItMzg2MiUyMiUzRSUzQ211dGF0aW9uJTIwaXRlbXMlM0QlMjIxJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT05ESVRJT04lMjIlM0VuZSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQUNLX0NPTkRJVElPTiUyMiUzRSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEMCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMkNoZHpnISU3QmxQUiU1QkZEVFlnJTVCMEYlMjQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0UwX3VzZXJkYXRhLjAuRWlnZW5lX0RhdGVucHVua3RlLlRlc3RzY2hhbHRlciUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyZGVidWclMjIlMjBpZCUzRCUyMldQOSUyNGt1IW5sV1d1ZiUyRlEyKVolM0JwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU2V2ZXJpdHklMjIlM0Vsb2clM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlRFWFQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIydGV4dCUyMiUyMGlkJTNEJTIyRiU1QiU3RCU0ME9pU3l6JTNCbSklMkZybTYlMkIlM0Z6JTI0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVEVYVCUyMiUzRXRlc3QlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnByb2NlZHVyZXNfY2FsbG5vcmV0dXJuJTIyJTIwaWQlM0QlMjJWODEuYXp6JTYwXylldn5LJTNGNnNGR1glMjIlM0UlM0NtdXRhdGlvbiUyMG5hbWUlM0QlMjJEaW1tZXIyJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMm9iai1pZCUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJEaW1temllbCUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJEaW1tQWt0dWVsbCUyMiUzRSUzQyUyRmFyZyUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVJHMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyR0U5VypsKDU1R29yMmt1KklwJTVEJTdCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFdHJhZGZyaS4wLkwtNjU1NDYubGlnaHRidWxiLmNvbG9yVGVtcGVyYXR1cmUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBUkcxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybWF0aF9udW1iZXIlMjIlMjBpZCUzRCUyMnp0ckFsSiUyQlAlM0FrTTlmTyU1RGVWN0xLJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTlVNJTIyJTNFOTAlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19jYWxsbm9yZXR1cm4lMjIlMjBpZCUzRCUyMmowc2pqZEwhUm0lMjVpSiUyMzRzJTJDUCUzQkYlMjIlM0UlM0NtdXRhdGlvbiUyMG5hbWUlM0QlMjJEaW1tZXIyJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMm9iai1pZCUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJEaW1temllbCUyMiUzRSUzQyUyRmFyZyUzRSUzQ2FyZyUyMG5hbWUlM0QlMjJEaW1tQWt0dWVsbCUyMiUzRSUzQyUyRmFyZyUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVJHMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyWiUyNUZsJTI0cyElN0NsTnglMjR2eEoyNnZGeiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRXRyYWRmcmkuMC5MLTY1NTQ2LmxpZ2h0YnVsYi5icmlnaHRuZXNzJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQVJHMSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm1hdGhfbnVtYmVyJTIyJTIwaWQlM0QlMjJOUSUzQSU1RGg1LUR2NX5tJTJDJTdDTHolMjVoR0MlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJOVU0lMjIlM0U1JTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnByb2NlZHVyZXNfZGVmY3VzdG9tcmV0dXJuJTIyJTIwaWQlM0QlMjJ6JTJDOEdqUUxFNTF2eFZUdCU1RUYqUXIlMjIlMjB4JTNEJTIyLTEzNyUyMiUyMHklM0QlMjItMzI4OCUyMiUzRSUzQ211dGF0aW9uJTIwc3RhdGVtZW50cyUzRCUyMmZhbHNlJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmRhdGFiYXNlJTIyJTIwdmFyaWQlM0QlMjJvX2pOMWElNUQ4RWo5LlUlMjNFb08wKXolMjIlM0UlM0MlMkZhcmclM0UlM0NhcmclMjBuYW1lJTNEJTIyaWQlMjIlMjB2YXJpZCUzRCUyMi5xUTI3ZyU0MGMlN0IlMkN2cCUyMy5SdkFaJTIzeSUyMiUzRSUzQyUyRmFyZyUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTkFNRSUyMiUzRXNhdmVJbnRlcnZhbChJbnRlcnZhbGwpJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJTQ1JJUFQlMjIlM0VhV1lnS0dSaGRHRmlZWE5sSUQwOVBTQjFibVJsWm1sdVpXUXBJR1JoZEdGaVlYTmxJRDBnZTMwN0RRcGtZWFJoWW1GelpWdHBaRjBnUFNCSmJuUmxjblpoYkd3N0RRcHlaWFIxY200Z1pHRjBZV0poYzJVNyUzQyUyRmZpZWxkJTNFJTNDY29tbWVudCUyMHBpbm5lZCUzRCUyMmZhbHNlJTIyJTIwaCUzRCUyMjgwJTIyJTIwdyUzRCUyMjE2MCUyMiUzRUJlc2NocmVpYmUlMjBkaWVzZSUyMEZ1bmt0aW9uJTIwJUUyJTgwJUE2JTNDJTJGY29tbWVudCUzRSUzQyUyRmJsb2NrJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIycHJvY2VkdXJlc19kZWZjdXN0b21yZXR1cm4lMjIlMjBpZCUzRCUyMiU3Q2s2VnFZUTZzRmMlNUVNLUklNUUuJTYwOTYlMjIlMjB4JTNEJTIyLTEzOCUyMiUyMHklM0QlMjItMzI2MyUyMiUzRSUzQ211dGF0aW9uJTIwc3RhdGVtZW50cyUzRCUyMmZhbHNlJTIyJTNFJTNDYXJnJTIwbmFtZSUzRCUyMmRhdGFiYXNlJTIyJTIwdmFyaWQlM0QlMjJvX2pOMWElNUQ4RWo5LlUlMjNFb08wKXolMjIlM0UlM0MlMkZhcmclM0UlM0NhcmclMjBuYW1lJTNEJTIyaWQlMjIlMjB2YXJpZCUzRCUyMi5xUTI3ZyU0MGMlN0IlMkN2cCUyMy5SdkFaJTIzeSUyMiUzRSUzQyUyRmFyZyUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyTkFNRSUyMiUzRWNsZWFySW50ZXJ2YWwoSW50ZXJ2YWxsKSUzQyUyRmZpZWxkJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyU0NSSVBUJTIyJTNFYVdZZ0tHUmhkR0ZpWVhObElEMDlQU0IxYm1SbFptbHVaV1FwSUhKbGRIVnliaUI3ZlRzTkNtbG1JQ2hrWVhSaFltRnpaVnRwWkYwZ1BUMDlJSFZ1WkdWbWFXNWxaQ2tnY21WMGRYSnVJR1JoZEdGaVlYTmxPdzBLYVdZZ0tHUmhkR0ZpWVhObFcybGtYU2tnZXcwS0lDQWdJR05zWldGeVNXNTBaWEoyWVd3b1pHRjBZV0poYzJWYmFXUmRLVHNOQ2lBZ0lDQmtZWFJoWW1GelpWdHBaRjBnUFNCdWRXeHNPdzBLZlEwS2NtVjBkWEp1SUdSaGRHRmlZWE5sT3clM0QlM0QlM0MlMkZmaWVsZCUzRSUzQ2NvbW1lbnQlMjBwaW5uZWQlM0QlMjJmYWxzZSUyMiUyMGglM0QlMjI4MCUyMiUyMHclM0QlMjIxNjAlMjIlM0VCZXNjaHJlaWJlJTIwZGllc2UlMjBGdW5rdGlvbiUyMCVFMiU4MCVBNiUzQyUyRmNvbW1lbnQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnhtbCUzRQ==
                          
                          1 Reply Last reply Reply Quote 0
                          • T
                            ticaki Developer last edited by ticaki

                            Tausche den Code innerhalb von saveInterval gegen diesen hier:

                            if (database === undefined) database = {};
                            if (database[id] !== undefined && database[id]) clearInterval(database[id]);
                            database[id] = Intervall;
                            return database;
                            

                            Damit wird bei mehrfach Aufrufen der alte gelöscht.

                            Das hier ist von mehr Erfolg gesegnet als das was ich versuche 😁 Ich möchte die Ausgabe des Float-Adapters mit der Script-Engine in ein png umwandeln.

                            A 1 Reply Last reply Reply Quote 1
                            • A
                              azmo @ticaki last edited by azmo

                              Moin!
                              Ich habe die Änderungen entsprechend deiner Hinweise umgesetzt.
                              Dennoch bleibt es beim Fehlerverhalten. Ich habe das ganze jetzt noch einmal mit nur einer Instanz getestet, gleicher Fehler (Dimm Farbe von 11 auf 15). Jetzt bin ich ganz verwirrt, da muss sich etwas neues eingeschlichen haben. Er gibt den Debug "Ende" korrekt aus. Aber beendet nicht.

                              10.4.2020, 14:05:25.458	[info ]: javascript.0 (1293) Start javascript script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest
                              10.4.2020, 14:05:25.464	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: registered 1 subscription and 0 schedules
                              10.4.2020, 14:05:26.547	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: test
                              10.4.2020, 14:05:27.548	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 11
                              10.4.2020, 14:05:28.549	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 11.5
                              10.4.2020, 14:05:29.549	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 12
                              10.4.2020, 14:05:30.549	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 12.5
                              10.4.2020, 14:05:31.550	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 13
                              10.4.2020, 14:05:32.550	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 13.5
                              10.4.2020, 14:05:33.550	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 14
                              10.4.2020, 14:05:34.551	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 14.5
                              10.4.2020, 14:05:35.551	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 15
                              10.4.2020, 14:05:35.552	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Ende: tradfri.0.L-65546.lightbulb.colorTemperature
                              10.4.2020, 14:05:36.551	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 15
                              10.4.2020, 14:05:36.552	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Ende: tradfri.0.L-65546.lightbulb.colorTemperature
                              10.4.2020, 14:05:37.551	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 15
                              10.4.2020, 14:05:37.552	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Ende: tradfri.0.L-65546.lightbulb.colorTemperature
                              10.4.2020, 14:05:38.551	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: obj-id: tradfri.0.L-65546.lightbulb.colorTemperature
                              DimmAktuell: 15
                              10.4.2020, 14:05:38.552	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Ende: tradfri.0.L-65546.lightbulb.colorTemperature
                              10.4.2020, 14:05:39.170	[info ]: javascript.0 (1293) Stop script script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest
                              

                              @ticaki sagte in Lichtsteuerung (langsam dimmen lassen):

                              Das hier ist von mehr Erfolg gesegnet als das was ich versuche Ich möchte die Ausgabe des Float-Adapters mit der Script-Engine in ein png umwandeln.

                              Für Visualisierung? Oder zum wegloggen der png? Auf jeden Fall auch interessant, bisher reicht mir die Ausgabe via Grafana und die aktuelle Temperatur in IQontrol ^^
                              So wird es wohl immer sein, ein Projekt nach dem anderen. Viel Erfolg damit auf jeden Fall.
                              Ich hoffe wir kommen hier auch noch weiter; zwei Schritt vor, einer zurück...

                              Ich muss mich jetzt ein wenig mit meiner Familie beschäftigen und komme erst frühestens heute Abend wieder an den Rechner.

                              T 1 Reply Last reply Reply Quote 0
                              • T
                                ticaki Developer @azmo last edited by ticaki

                                @azmo
                                Oh hab in deinem Bild eine Fehler übersehen. saveInterval kann natürlich nur den Interval sichern, wenn der gestartet wurde. Verschiebe den Aufruf hinter starte zyklische Ausführung.

                                Zu meinem Projekt - das soll mal in die Richtung gehen:
                                Bildschirmfoto 2020-04-10 um 14.12.43.png

                                aber hab noch eine zu große Verzögerung drin

                                A 1 Reply Last reply Reply Quote 1
                                • A
                                  azmo @ticaki last edited by

                                  @ticaki ah danke ich teste das später.
                                  Also für Telegram...
                                  Habe noch gar nicht gewusst dass das mit Grafiken geht. Auch interessant. Finde mein Grafana schicker aber Telegram ist sicher bequemer unterwegs...
                                  20200410_142135.jpg

                                  1 Reply Last reply Reply Quote 0
                                  • T
                                    ticaki Developer last edited by

                                    Ich hab doch gerade erst hinbekommen, dass ich das Flot Diagramm über eine headless Chromiumbrowser und ein Nodemodul in ein png umwandeln kann. Optik kommt am Ende, wenn mir die Funktionen gefallen. 😁

                                    1 Reply Last reply Reply Quote 1
                                    • A
                                      azmo last edited by azmo

                                      @ticaki
                                      Na klar muss das erst laufen ^^

                                      So, habe es ausprobiert - nächster Bug:

                                      10.4.2020, 19:09:33.268	[info ]: javascript.0 (1293) Start javascript script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest
                                      10.4.2020, 19:09:33.272	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: registered 1 subscription and 0 schedules
                                      10.4.2020, 19:09:34.706	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: Starte Dimmer2
                                      10.4.2020, 19:09:34.706	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: In Dimmer2
                                      10.4.2020, 19:09:35.707	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: In Interval
                                      10.4.2020, 19:09:36.707	[info ]: javascript.0 (1293) script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest: In Interval
                                      10.4.2020, 19:09:46.874	[info ]: javascript.0 (1293) Stop script script.js.Zeitsteuerung.Lichtsteuerung_Dimmertest
                                      

                                      Hier nochmal der Aufbau und der Inhalt der beiden Funktionen:
                                      Anmerkung 2020-04-10 2.png

                                      saveInterval:

                                      if (database === undefined) database = {};
                                      if (database[id] !== undefined && database[id]) clearInterval(database[id]);
                                      database[id] = Intervall;
                                      return database;
                                      

                                      clearInterval:

                                      if (database === undefined) return {};
                                      if (database[id] === undefined) return database;
                                      if (database[id]) {
                                          clearInterval(database[id]);
                                          database[id] = null;
                                      }
                                      return database;
                                      

                                      Wie ich das verstehe, stoppt er jetzt mit saveInterval. Alles was danach kommen soll, passiert nicht mehr.

                                      <xml xmlns="http://www.w3.org/1999/xhtml">
                                        <variables>
                                          <variable type="" id="=W_p,[ot^(ajIy0Nam5}">obj-id</variable>
                                          <variable type="" id="pwW]mm~16AJwvaB/jMpp">Dimmziel</variable>
                                          <variable type="" id="/3ajE3V-|nBR1!;GbK1a">DimmAktuell</variable>
                                          <variable type="" id="o_jN1a]8Ej9.U#EoO0)z">database</variable>
                                          <variable type="" id=".qQ27g@c{,vp#.RvAZ#y">id</variable>
                                          <variable type="undefined" id="Intervall">Intervall</variable>
                                        </variables>
                                        <block type="procedures_defnoreturn" id="M6|8O4xr2^|sECz*~e+D" x="-837" y="-4138">
                                          <mutation>
                                            <arg name="obj-id" varid="=W_p,[ot^(ajIy0Nam5}"></arg>
                                            <arg name="Dimmziel" varid="pwW]mm~16AJwvaB/jMpp"></arg>
                                            <arg name="DimmAktuell" varid="/3ajE3V-|nBR1!;GbK1a"></arg>
                                          </mutation>
                                          <field name="NAME">Dimmer2</field>
                                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                          <statement name="STACK">
                                            <block type="debug" id="DzYW]e2x?4tl?.A/=6oq">
                                              <field name="Severity">log</field>
                                              <value name="TEXT">
                                                <shadow type="text" id="krqX%vQvzU4qX`ZTP2CT">
                                                  <field name="TEXT">In Dimmer2</field>
                                                </shadow>
                                              </value>
                                              <next>
                                                <block type="variables_set" id="aZ@7G[Q?f)1M{KJ=s3w:">
                                                  <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                  <value name="VALUE">
                                                    <block type="math_round" id="_:X2mKmq%D/`1=,JA6%J">
                                                      <field name="OP">ROUND</field>
                                                      <value name="NUM">
                                                        <shadow type="math_number" id="z*CIwTs9uuHG],-VvBH0">
                                                          <field name="NUM">3.1</field>
                                                        </shadow>
                                                        <block type="get_value_var" id="T}_h[JI7s4IJ$^cVhq;n">
                                                          <field name="ATTR">val</field>
                                                          <value name="OID">
                                                            <shadow type="text" id="s;{pr9L[y,-;xT=yNB90">
                                                              <field name="TEXT"></field>
                                                            </shadow>
                                                            <block type="variables_get" id="yd3#B9bZE,S=8F94AbJ}">
                                                              <field name="VAR" id="=W_p,[ot^(ajIy0Nam5}" variabletype="">obj-id</field>
                                                            </block>
                                                          </value>
                                                        </block>
                                                      </value>
                                                    </block>
                                                  </value>
                                                  <next>
                                                    <block type="timeouts_setinterval" id="Or~8F;ps!?_Qk^9PcYvB">
                                                      <field name="NAME">Intervall</field>
                                                      <field name="INTERVAL">1000</field>
                                                      <field name="UNIT">ms</field>
                                                      <statement name="STATEMENT">
                                                        <block type="debug" id="Df4s~38Goa-:7E{=TWHG">
                                                          <field name="Severity">log</field>
                                                          <value name="TEXT">
                                                            <shadow type="text" id="m)%]WBk]mD6OAsd7*CXh">
                                                              <field name="TEXT">In Interval</field>
                                                            </shadow>
                                                          </value>
                                                          <next>
                                                            <block type="variables_set" id="+H(tfJ?*H|HhWrJZBO|}">
                                                              <field name="VAR" id="o_jN1a]8Ej9.U#EoO0)z" variabletype="">database</field>
                                                              <value name="VALUE">
                                                                <block type="procedures_callcustomreturn" id="Zkt`+Vea]H~~ck5_DteF">
                                                                  <mutation name="saveInterval(Intervall)">
                                                                    <arg name="database"></arg>
                                                                    <arg name="id"></arg>
                                                                  </mutation>
                                                                  <value name="ARG0">
                                                                    <block type="variables_get" id="gd_(6p$qfOR@)G(:)/oc">
                                                                      <field name="VAR" id="o_jN1a]8Ej9.U#EoO0)z" variabletype="">database</field>
                                                                    </block>
                                                                  </value>
                                                                  <value name="ARG1">
                                                                    <block type="variables_get" id="1=blF-AQ%OM4bhJ`w^bd">
                                                                      <field name="VAR" id="=W_p,[ot^(ajIy0Nam5}" variabletype="">obj-id</field>
                                                                    </block>
                                                                  </value>
                                                                </block>
                                                              </value>
                                                              <next>
                                                                <block type="debug" id="[N)HnTxL9i!9}G-:UUG,">
                                                                  <field name="Severity">debug</field>
                                                                  <value name="TEXT">
                                                                    <shadow type="text" id="#2f?mVyoJ_n.8QMWG%Y]">
                                                                      <field name="TEXT">test</field>
                                                                    </shadow>
                                                                    <block type="text_join" id="suu:*QHCG`7P){c0|*r3">
                                                                      <mutation items="5"></mutation>
                                                                      <value name="ADD0">
                                                                        <block type="text" id="i2B1MhaV([^_1X(4`8o,">
                                                                          <field name="TEXT">obj-id: </field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD1">
                                                                        <block type="variables_get" id=")(.t72y4J:o%uV9X]}S$">
                                                                          <field name="VAR" id="=W_p,[ot^(ajIy0Nam5}" variabletype="">obj-id</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD2">
                                                                        <block type="text_newline" id="oCo_IC,ufd3*q5a~W4rz">
                                                                          <field name="Type">\n</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD3">
                                                                        <block type="text" id="*r4Dl/:BCZz.#D7Pohv3">
                                                                          <field name="TEXT">DimmAktuell: </field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="ADD4">
                                                                        <block type="variables_get" id="o{Ric?iypQcEaDY+nc]W">
                                                                          <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                                        </block>
                                                                      </value>
                                                                    </block>
                                                                  </value>
                                                                  <next>
                                                                    <block type="control_ex" id="}gor{1d?aR35gEv3toxD">
                                                                      <field name="TYPE">false</field>
                                                                      <field name="CLEAR_RUNNING">FALSE</field>
                                                                      <value name="OID">
                                                                        <shadow type="field_oid" id="?hx9v}?WVl5W,S;J%QeF">
                                                                          <field name="oid">Object ID</field>
                                                                        </shadow>
                                                                        <block type="variables_get" id="SfQ{weqdB:sW$Dcc@UuU">
                                                                          <field name="VAR" id="=W_p,[ot^(ajIy0Nam5}" variabletype="">obj-id</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="VALUE">
                                                                        <shadow type="logic_boolean" id="c8F%!]`Z1TdB2V{c[$}I">
                                                                          <field name="BOOL">TRUE</field>
                                                                        </shadow>
                                                                        <block type="variables_get" id="e#DT-~)_qqTY`ZfCcjud">
                                                                          <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                                        </block>
                                                                      </value>
                                                                      <value name="DELAY_MS">
                                                                        <shadow type="math_number" id="@#D7ID-z`m|p)_UCD;Nn">
                                                                          <field name="NUM">0</field>
                                                                        </shadow>
                                                                      </value>
                                                                      <next>
                                                                        <block type="controls_if" id="=pX$hSc`x;,=R}9[}4bu">
                                                                          <mutation elseif="1" else="1"></mutation>
                                                                          <value name="IF0">
                                                                            <block type="logic_compare" id="6T,j,~fvcIm==XR-PFDM">
                                                                              <field name="OP">LT</field>
                                                                              <value name="A">
                                                                                <block type="variables_get" id="s=yznV:F3rh{j+!5%u*!">
                                                                                  <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <block type="variables_get" id="(!,5PG#02t{4/MV$ZkL6">
                                                                                  <field name="VAR" id="pwW]mm~16AJwvaB/jMpp" variabletype="">Dimmziel</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="DO0">
                                                                            <block type="variables_set" id=",L5.(-ujIG9D1EAEtzDG">
                                                                              <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                                              <value name="VALUE">
                                                                                <block type="math_arithmetic" id="{6n$poWCt9?T4w1FHPQg">
                                                                                  <field name="OP">ADD</field>
                                                                                  <value name="A">
                                                                                    <shadow type="math_number" id="3aKgCngRtQ[Bm{RR*1P^">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                    <block type="variables_get" id="z5wc-Z(RU$o#Xw7QEB5S">
                                                                                      <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="B">
                                                                                    <shadow type="math_number" id="/uA+Gkmg9.kT6`ES.h~y">
                                                                                      <field name="NUM">0.5</field>
                                                                                    </shadow>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                          <value name="IF1">
                                                                            <block type="logic_compare" id="FPalg/el*|.u!1BHc%UN">
                                                                              <field name="OP">GT</field>
                                                                              <value name="A">
                                                                                <block type="variables_get" id="xq?Y!b%,h)l(Nt5-C3IL">
                                                                                  <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="B">
                                                                                <block type="variables_get" id="jt4!%Si|4~^[}^)COU/D">
                                                                                  <field name="VAR" id="pwW]mm~16AJwvaB/jMpp" variabletype="">Dimmziel</field>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </value>
                                                                          <statement name="DO1">
                                                                            <block type="variables_set" id="gvjz`GP(ICz/?m-t3b4v">
                                                                              <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                                              <value name="VALUE">
                                                                                <block type="math_arithmetic" id="As`CQZA.mdD:`|MvF!XG">
                                                                                  <field name="OP">MINUS</field>
                                                                                  <value name="A">
                                                                                    <shadow type="math_number" id="3aKgCngRtQ[Bm{RR*1P^">
                                                                                      <field name="NUM">1</field>
                                                                                    </shadow>
                                                                                    <block type="variables_get" id="1q[(#-1?/$tUKgy35sGF">
                                                                                      <field name="VAR" id="/3ajE3V-|nBR1!;GbK1a" variabletype="">DimmAktuell</field>
                                                                                    </block>
                                                                                  </value>
                                                                                  <value name="B">
                                                                                    <shadow type="math_number" id="XJm=5aIM-{I;dX)b/`Hf">
                                                                                      <field name="NUM">0.5</field>
                                                                                    </shadow>
                                                                                  </value>
                                                                                </block>
                                                                              </value>
                                                                            </block>
                                                                          </statement>
                                                                          <statement name="ELSE">
                                                                            <block type="control_ex" id="FEA8hy/IJ)1zR?[V0F$B">
                                                                              <field name="TYPE">false</field>
                                                                              <field name="CLEAR_RUNNING">FALSE</field>
                                                                              <value name="OID">
                                                                                <shadow type="field_oid" id="?hx9v}?WVl5W,S;J%QeF">
                                                                                  <field name="oid">Object ID</field>
                                                                                </shadow>
                                                                                <block type="variables_get" id="/gnRK}J1HM+P.8Yn:`}5">
                                                                                  <field name="VAR" id="=W_p,[ot^(ajIy0Nam5}" variabletype="">obj-id</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="VALUE">
                                                                                <shadow type="logic_boolean" id="c8F%!]`Z1TdB2V{c[$}I">
                                                                                  <field name="BOOL">TRUE</field>
                                                                                </shadow>
                                                                                <block type="variables_get" id="L]GeHeoNe2Dc[h0EnV@y">
                                                                                  <field name="VAR" id="pwW]mm~16AJwvaB/jMpp" variabletype="">Dimmziel</field>
                                                                                </block>
                                                                              </value>
                                                                              <value name="DELAY_MS">
                                                                                <shadow type="math_number" id="6tZDBm{],|fSY|%P*a_7">
                                                                                  <field name="NUM">0</field>
                                                                                </shadow>
                                                                              </value>
                                                                              <next>
                                                                                <block type="variables_set" id="]tYvIat_T6X4dMa?5fBf">
                                                                                  <field name="VAR" id="o_jN1a]8Ej9.U#EoO0)z" variabletype="">database</field>
                                                                                  <value name="VALUE">
                                                                                    <block type="procedures_callcustomreturn" id="oM]WlY{eWO!f]-FkH^Wx">
                                                                                      <mutation name="clearInterval(Intervall)">
                                                                                        <arg name="database"></arg>
                                                                                        <arg name="id"></arg>
                                                                                      </mutation>
                                                                                      <value name="ARG0">
                                                                                        <block type="variables_get" id="FLWx75},j^gw0@;MV%:v">
                                                                                          <field name="VAR" id="o_jN1a]8Ej9.U#EoO0)z" variabletype="">database</field>
                                                                                        </block>
                                                                                      </value>
                                                                                      <value name="ARG1">
                                                                                        <block type="variables_get" id="@,U.Px8xwR|NlI+qe$FC">
                                                                                          <field name="VAR" id="=W_p,[ot^(ajIy0Nam5}" variabletype="">obj-id</field>
                                                                                        </block>
                                                                                      </value>
                                                                                    </block>
                                                                                  </value>
                                                                                  <next>
                                                                                    <block type="debug" id="rEN{+,!AUY+uoENeO|{K">
                                                                                      <field name="Severity">warn</field>
                                                                                      <value name="TEXT">
                                                                                        <shadow type="text" id="@6{W)M@h,n%QICeoy{en">
                                                                                          <field name="TEXT">Intervall Beenden</field>
                                                                                        </shadow>
                                                                                        <block type="text_join" id="~w|.1of}fqap/S=,0Dw0">
                                                                                          <mutation items="2"></mutation>
                                                                                          <value name="ADD0">
                                                                                            <block type="text" id="7Wo%rGKA@JtK?6r-9bY(">
                                                                                              <field name="TEXT">Ende: </field>
                                                                                            </block>
                                                                                          </value>
                                                                                          <value name="ADD1">
                                                                                            <block type="variables_get" id="S,7C,2_?SS~WI6LiLFSM">
                                                                                              <field name="VAR" id="=W_p,[ot^(ajIy0Nam5}" variabletype="">obj-id</field>
                                                                                            </block>
                                                                                          </value>
                                                                                        </block>
                                                                                      </value>
                                                                                    </block>
                                                                                  </next>
                                                                                </block>
                                                                              </next>
                                                                            </block>
                                                                          </statement>
                                                                        </block>
                                                                      </next>
                                                                    </block>
                                                                  </next>
                                                                </block>
                                                              </next>
                                                            </block>
                                                          </next>
                                                        </block>
                                                      </statement>
                                                    </block>
                                                  </next>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                        <block type="on_ext" id="ZIvKxjZ4_as.SxllAd}n" x="-138" y="-3862">
                                          <mutation items="1"></mutation>
                                          <field name="CONDITION">ne</field>
                                          <field name="ACK_CONDITION"></field>
                                          <value name="OID0">
                                            <shadow type="field_oid" id="Chdzg!{lPR[FDTYg[0F$">
                                              <field name="oid">0_userdata.0.Eigene_Datenpunkte.Testschalter</field>
                                            </shadow>
                                          </value>
                                          <statement name="STATEMENT">
                                            <block type="debug" id="WP9$ku!nlWWuf/Q2)Z;p">
                                              <field name="Severity">log</field>
                                              <value name="TEXT">
                                                <shadow type="text" id="F[}@OiSyz;m)/rm6+?z$">
                                                  <field name="TEXT">Starte Dimmer2</field>
                                                </shadow>
                                              </value>
                                              <next>
                                                <block type="procedures_callnoreturn" id="V81.azz`_)ev~K?6sFGX">
                                                  <mutation name="Dimmer2">
                                                    <arg name="obj-id"></arg>
                                                    <arg name="Dimmziel"></arg>
                                                    <arg name="DimmAktuell"></arg>
                                                  </mutation>
                                                  <value name="ARG0">
                                                    <block type="field_oid" id="GE9W*l(55Gor2ku*Ip]{">
                                                      <field name="oid">tradfri.0.L-65546.lightbulb.colorTemperature</field>
                                                    </block>
                                                  </value>
                                                  <value name="ARG1">
                                                    <block type="math_number" id="ztrAlJ+P:kM9fO]eV7LK">
                                                      <field name="NUM">1</field>
                                                    </block>
                                                  </value>
                                                </block>
                                              </next>
                                            </block>
                                          </statement>
                                        </block>
                                        <block type="procedures_defcustomreturn" id="z,8GjQLE51vxVTt^F*Qr" x="-137" y="-3288">
                                          <mutation statements="false">
                                            <arg name="database" varid="o_jN1a]8Ej9.U#EoO0)z"></arg>
                                            <arg name="id" varid=".qQ27g@c{,vp#.RvAZ#y"></arg>
                                          </mutation>
                                          <field name="NAME">saveInterval(Intervall)</field>
                                          <field name="SCRIPT">aWYgKGRhdGFiYXNlID09PSB1bmRlZmluZWQpIGRhdGFiYXNlID0ge307DQppZiAoZGF0YWJhc2VbaWRdICE9PSB1bmRlZmluZWQgJiYgZGF0YWJhc2VbaWRdKSBjbGVhckludGVydmFsKGRhdGFiYXNlW2lkXSk7DQpkYXRhYmFzZVtpZF0gPSBJbnRlcnZhbGw7DQpyZXR1cm4gZGF0YWJhc2U7</field>
                                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                        </block>
                                        <block type="procedures_defcustomreturn" id="|k6VqYQ6sFc^M-I^.`96" x="-138" y="-3237">
                                          <mutation statements="false">
                                            <arg name="database" varid="o_jN1a]8Ej9.U#EoO0)z"></arg>
                                            <arg name="id" varid=".qQ27g@c{,vp#.RvAZ#y"></arg>
                                          </mutation>
                                          <field name="NAME">clearInterval(Intervall)</field>
                                          <field name="SCRIPT">aWYgKGRhdGFiYXNlID09PSB1bmRlZmluZWQpIHJldHVybiB7fTsNCmlmIChkYXRhYmFzZVtpZF0gPT09IHVuZGVmaW5lZCkgcmV0dXJuIGRhdGFiYXNlOw0KaWYgKGRhdGFiYXNlW2lkXSkgew0KICAgIGNsZWFySW50ZXJ2YWwoZGF0YWJhc2VbaWRdKTsNCiAgICBkYXRhYmFzZVtpZF0gPSBudWxsOw0KfQ0KcmV0dXJuIGRhdGFiYXNlOw==</field>
                                          <comment pinned="false" h="80" w="160">Beschreibe diese Funktion …</comment>
                                        </block>
                                      </xml>
                                      

                                      T 1 Reply Last reply Reply Quote 0
                                      • T
                                        ticaki Developer @azmo last edited by ticaki

                                        @azmo
                                        Save Interval muß unterhalb und außerhalb von starte zyklische Ausführung(nenne ich ab jetzt Interval) sein. Wie ich es oben mal gezeigt habe.

                                        Du mußt die Ausführung von Interval starten um eine Referenz zu haben und sie dann sofort speichern. Der Interval startet nicht sofort.

                                        Hier nochmal:
                                        Bildschirmfoto 2020-04-10 um 12.31.11.png

                                        A 1 Reply Last reply Reply Quote 1
                                        • A
                                          azmo @ticaki last edited by

                                          @ticaki
                                          Unterhalb! Das war es!
                                          Eigentlich logisch, der Intervall muss ja erst definiert sein bevor er etwas damit machen kann m(

                                          Aber jedenfalls:
                                          HEUREKA! Es klappt!
                                          DANKE!
                                          Jetzt muss ich nur noch die alte Funktion ersetzen und dann ist das nächste Projekt an der Reihe ^^

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

                                          Support us

                                          ioBroker
                                          Community Adapters
                                          Donate

                                          495
                                          Online

                                          32.0k
                                          Users

                                          80.4k
                                          Topics

                                          1.3m
                                          Posts

                                          blockly
                                          4
                                          31
                                          1574
                                          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