Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Tester
    4. Test Adapter shuttercontrol v2.0.x

    NEWS

    • ioBroker goes Matter ... Matter Adapter in Stable

    • 15. 05. Wartungsarbeiten am ioBroker Forum

    • Monatsrückblick - April 2025

    Test Adapter shuttercontrol v2.0.x

    This topic has been deleted. Only users with topic management privileges can see it.
    • simatec
      simatec Developer Most Active @guitardoc last edited by

      @guitardoc ich hatte es letztes mal schon geschrieben… bei deinen ganzen Scripten, die in die Funktion eingreifen, kann man kein verwehrtbares Debugging machen.

      1 Reply Last reply Reply Quote 0
      • M
        mameier1234 @crunchip last edited by

        @crunchip

        Das würde einiges erklären.. Warum es unter der Woche geht... (Bei mir steht der Wert auf 20 Minuten)

        Wenn ich jetzt am Wochenende 11:00 eingestellt habe, damit man, wenn man doch mal ausschlafen möchte nicht unsanft geweckt wird, dann müsste die Zeit ja standardmäßig auf über 4 Stunden stehen, damit die Dinger nicht hochgehen, sollte man sie doch schon um 7.30 etwas hochfährt...

        Da wäre es irgendwie cool, wenn man das Wochenende anders behandeln könnte als die normalen Tage..

        1 Reply Last reply Reply Quote 0
        • simatec
          simatec Developer Most Active @guitardoc last edited by

          @guitardoc sagte in Test Adapter shuttercontrol v1.7.x:

          0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Kombination_der_Kontaktsensoren

          Grundsätzlich wird Shuttercontrol getriggert, wenn sich ein State ändert... Was dein 0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Kombination_der_Kontaktsensoren State mit dahinterliegenden Script macht, kann Shuttercontrol nicht beeinflussen...

          G 1 Reply Last reply Reply Quote 0
          • G
            guitardoc @simatec last edited by

            @simatec Jetzt muss ich noch mal gezielt nachfragen. Letztens sagtest du, Shuttercontrol reagiert auf Änderungen der Helligkeit. Jetzt sagst du, auch states triggern SC. Oder ist es so, dass states SC nur triggern, solange die Helligkeit > 0 ist? Bitte gib mir noch mal eine definitive Info dazu.

            Natürlich kann SC mein Script nicht beeinflussen. Das Script fasst aber nur zwei Kontaktsensoren zusammen - einmal den Sensor der Terrassentür und einmal den Sensor des Fliegengitters was davor ist. Am Ende steht in dem state auch nur true oder false drin, je nachdem, wie die beiden Kontaktsensoren geöffnet oder geschlossen sind.

            Ich habe mir jetzt das Debuglog noch mal ganz genau angesehen. Das passiert ja alles innerhalb von wenigen Millisekunden. Vermutlich kann SC die Daten nicht so schnell verarbeiten, wie sie geliefert werden, das wäre eine Erklärung. Ich werde es mal testen, was passiert, wenn erst der Kontaktsensor geschlossen wird (bei mir die Kombination der Sensoren) und dann erst eine Minute später die Helligkeit "gewackelt" wird. Das sollte SC genügend Zeit geben, die Daten richtig zu verarbeiten. Oder was denkst du?

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

              @guitardoc sagte in Test Adapter shuttercontrol v1.7.x:

              Bitte gib mir noch mal eine definitive Info dazu.

              ääähm!???
              von welche States redest du?
              nur dass man nicht aneinander vorbei redet!
              Mir scheint du denkst an ganz was anderes.

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

                @guitardoc Shuttercontrol reagiert auf alle von dir in Shuttercontrol konfigurierten States.
                Das sind unter anderem ja logischerweise auch die Fensterkontakte und Helligkeitssensoren...

                Woher soll sonst Shuttercontrol wissen, was passiert in deinem System.
                Da ich aber sehe, dass du sicher mit einem Script da mehrere Dinge machst, um den geschlossen Kontakt zu simulieren, bin ich da raus... Du hast da einfach zu viele Scripte, die da rumwerkeln und alles verzerren...

                G 1 Reply Last reply Reply Quote 0
                • G
                  guitardoc @simatec last edited by

                  @simatec Hmm, jetzt wird es zu durcheinander. Bitte zunächst erst mal die Frage worauf reagiert SC:
                  a) auf die Änderung aller States, egal zu welcher Tages- oder Nachtzeit,
                  b) nur auf Helligkeitsänderungen,
                  c) auf Änderungen aller States, solange die Helligkeit >0 ist.
                  Nicht falsch verstehen, du bist natürlich nicht verpflichtet das zu beantworten und das soll auch keinesfalls wie Prüfungsfragen klingen, ich versuche doch nur eventuelle Punkte zu finden wo es bei MEINER Konfiguration hakt und wo auch ANDERE drüber stolpern könnten - also am Ende SC für ALLE Anwender besser zu machen.

                  simatec Homoran 3 Replies Last reply Reply Quote 0
                  • simatec
                    simatec Developer Most Active @guitardoc last edited by

                    @guitardoc Hatte ich doch bereits geschrieben… auf alle Änderungen von States reagiert Shuttercontrol. Alle States, die Shtuttercontrol bekannt sind, wird bei einer Änderung reagiert.

                    Bekannte States sind alle die, die du in der Config von Shuttercontrol eingetragen hast. Angefangen von den Rollläden, über Temperaturen, Helligkeit, Fensterkontakten, anderen Triggern wie Alarmen und Feiertagstriggern. Es wird auf jeder Änderung reagiert.

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

                      @guitardoc sagte in Test Adapter shuttercontrol v1.7.x:

                      jetzt wird es zu durcheinander.

                      richtig! Deswegen bittet dich @simatec seit langem alle Fremdsteuerungen abzuschalten, damit das debug-log auswertbar wird.

                      @guitardoc sagte in Test Adapter shuttercontrol v1.7.x:

                      worauf reagiert SC

                      reagiert wird, wie grundsätzlich unter js, auf alle states, die SC bekannt sind.
                      Ob und was dann aber daraus für eine Aktion erfolgt hängt von den diversen Einstellungen ab.

                      Das siehst du doch im debug-log!

                      1 Reply Last reply Reply Quote 0
                      • simatec
                        simatec Developer Most Active @guitardoc last edited by

                        @guitardoc Hier wäre erstmal der States inkl. Script, welcher den State schaltet interessant.

                        0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Kombination_der_Kontaktsensoren

                        Wird Ack gesetzt, was macht der Script etc...

                        Du manipulierst mit deinen Scripten States und ich soll so debuggen? Das geht nicht...

                        G 1 Reply Last reply Reply Quote 0
                        • G
                          guitardoc @simatec last edited by

                          @simatec said in Test Adapter shuttercontrol v1.7.x:

                          Wird Ack gesetzt

                          Ich hole mir zunächst von den Geräten die Datenpunkte, die ich für Skripte brauche, in Alias-Datenpunkte. In den Skripten arbeite ich ausschließlich mit diesen und schreibe Ausgaben in Datenpunkte unter 0_userdata mittels "steuere", z.B.

                          f541a3c7-b827-4726-91d9-ffdaf4e11572-image.png

                          Wenn ich es richtig verstände habe, dann wird Ack nicht gesetzt.

                          simatec 1 Reply Last reply Reply Quote 0
                          • simatec
                            simatec Developer Most Active @guitardoc last edited by

                            @guitardoc das ist nicht der Script für die Kontaktsensoren... Ack sollte immer gesetzt werden

                            G 1 Reply Last reply Reply Quote 0
                            • G
                              guitardoc @simatec last edited by

                              @simatec Hier mal das Script für die Kombination der Kontaktsensoren:
                              32f8f317-52a0-44e9-8780-638281d9c664-image.png

                              simatec 1 Reply Last reply Reply Quote 0
                              • simatec
                                simatec Developer Most Active @guitardoc last edited by

                                @guitardoc Gehe mal bitte in dem Script oben rechts in die Menüleiste und lasse es dir als Javascript anzeigen.
                                Die Ausgabe bitte mal posten

                                G 1 Reply Last reply Reply Quote 0
                                • G
                                  guitardoc @simatec last edited by

                                  @simatec

                                  var k1, k2, k;
                                  
                                  
                                  // Wohnzimmer Tür zur Terrasse
                                  on({ id: [].concat(['0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Virtueller_Kontaktsensor']).concat(['0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.offen_geschlossen/angekippt']), change: 'ne' }, async (obj) => {
                                    k1 = getState('0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Virtueller_Kontaktsensor').val;
                                    k2 = getState('0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.offen_geschlossen/angekippt').val;
                                    k = false;
                                    if ((k1 == true) || (k2 == true)) {
                                      k = true;
                                    }
                                    setState('0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Kombination_der_Kontaktsensoren' /* Kombination der Kontaktsensoren Wohnzimmer Tür zur Terrasse */, k);
                                  });
                                  // Gästezimmer
                                  on({ id: [].concat(['0_userdata.0.Fenster.Gästezimmer.Virtueller_Kontaktsensor']).concat(['alias.0.Fenster.Gästezimmer.Offen']), change: 'ne' }, async (obj) => {
                                    k1 = getState('0_userdata.0.Fenster.Gästezimmer.Virtueller_Kontaktsensor').val;
                                    k2 = getState('alias.0.Fenster.Gästezimmer.Offen').val;
                                    k = false;
                                    if ((k1 == true) || (k2 == true)) {
                                      k = true;
                                    }
                                    setState('0_userdata.0.Fenster.Gästezimmer.Kombination_der_Kontaktsensoren' /* Kombination der Kontaktsensoren Gästezimmer */, k);
                                  });
                                  // Schlafzimmer
                                  on({ id: [].concat(['0_userdata.0.Fenster.Schlafzimmer.Virtueller_Kontaktsensor']).concat(['0_userdata.0.Fenster.Schlafzimmer.offen_geschlossen/angekippt']), change: 'ne' }, async (obj) => {
                                    k1 = getState('0_userdata.0.Fenster.Schlafzimmer.Virtueller_Kontaktsensor').val;
                                    k2 = getState('0_userdata.0.Fenster.Schlafzimmer.offen_geschlossen/angekippt').val;
                                    k = false;
                                    if ((k1 == true) || (k2 == true)) {
                                      k = true;
                                    }
                                    setState('0_userdata.0.Fenster.Schlafzimmer.Kombination_der_Kontaktsensoren' /* Kombination der Kontaktsensoren Schlafzimmer */, k);
                                  });
                                  
                                  //JTNDeG1sJTIweG1sbnMlM0QlMjJodHRwcyUzQSUyRiUyRmRldmVsb3BlcnMuZ29vZ2xlLmNvbSUyRmJsb2NrbHklMkZ4bWwlMjIlM0UlM0N2YXJpYWJsZXMlM0UlM0N2YXJpYWJsZSUyMGlkJTNEJTIyalJnYTMhZ0RYeEEhNGJ4SSUzQk16JTVFJTIyJTNFazElM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjJFNGVqLTBsNjE2JTdESCUzQVUlNjBUJTNBJTVFJTdDJTNCJTIyJTNFazIlM0MlMkZ2YXJpYWJsZSUzRSUzQ3ZhcmlhYmxlJTIwaWQlM0QlMjJNMkxWRmMuSFhtJTNCQTVhekElMkNuQiUyNSUyMiUzRWslM0MlMkZ2YXJpYWJsZSUzRSUzQyUyRnZhcmlhYmxlcyUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbW1lbnQlMjIlMjBpZCUzRCUyMllPQWM5Ti4lMjM5M3IzbyElN0N4JTI0dXUhJTIyJTIweCUzRCUyMjExMyUyMiUyMHklM0QlMjIzOCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTU1FTlQlMjIlM0VXb2huemltbWVyJTIwVCVDMyVCQ3IlMjB6dXIlMjBUZXJyYXNzZSUzQyUyRmZpZWxkJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMm9uX2V4dCUyMiUyMGlkJTNEJTIyJTQwLXlffml6MFdMJTI1N3g5JTNGJTdCZk1QRCUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMiUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQ09ORElUSU9OJTIyJTNFbmUlM0MlMkZmaWVsZCUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFDS19DT05ESVRJT04lMjIlM0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRDAlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJSIUMhJTQwcUNrMXM4JTNBKW4lN0JJV1dmVyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5GZW5zdGVyLldvaG56aW1tZXIuVCVDMyVCQ3JfenVyX1RlcnJhc3NlLlZpcnR1ZWxsZXJfS29udGFrdHNlbnNvciUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQxJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyZzh6IThnJTdCMyUyQjVITlFkViU2MDhlJTVFdiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5GZW5zdGVyLldvaG56aW1tZXIuVCVDMyVCQ3JfenVyX1RlcnJhc3NlLm9mZmVuX2dlc2NobG9zc2VuJTJGYW5nZWtpcHB0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJTVEFURU1FTlQlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjIuQUhqbHpaOCpnJTdEJTIzMm5qbGhpdWElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMmpSZ2EzIWdEWHhBITRieEklM0JNeiU1RSUyMiUzRWsxJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZV92YXIlMjIlMjBpZCUzRCUyMmdBfiUyRlYzZ3N2VlNOJTI1bSUyQi5uUFA5JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQVRUUiUyMiUzRXZhbCUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT0lEJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyJTJCJTI1NDUlNUVjYi4lM0ROeEctRHdhQTA3TCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5GZW5zdGVyLldvaG56aW1tZXIuVCVDMyVCQ3JfenVyX1RlcnJhc3NlLlZpcnR1ZWxsZXJfS29udGFrdHNlbnNvciUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMk8udjklM0ZmUmolN0RTdSUyQ0ZyNmQlN0J+azIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMkU0ZWotMGw2MTYlN0RIJTNBVSU2MFQlM0ElNUUlN0MlM0IlMjIlM0VrMiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWVfdmFyJTIyJTIwaWQlM0QlMjJJJTNEQSE4JTNEREpwKXZVYVpmXypLeGQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJsJTI1aTdoayU1QiU3QyU3QjJpQVZfeiUzRkklM0ZmXyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5GZW5zdGVyLldvaG56aW1tZXIuVCVDMyVCQ3JfenVyX1RlcnJhc3NlLm9mZmVuX2dlc2NobG9zc2VuJTJGYW5nZWtpcHB0JTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIybyU3Q2olN0Jhfi1CUkQwRyUyQlZJJTJDUE0lM0Q4JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJNMkxWRmMuSFhtJTNCQTVhekElMkNuQiUyNSUyMiUzRWslM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyLXclMjRzZnlYOVozVCUyNGJtciUzQiUzRmglM0R2JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRUZBTFNFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2xzX2lmJTIyJTIwaWQlM0QlMjI0cSUzQWdjOHRnZTRLTU5WTzMhJTYweUMlMjIlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJJRjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19tdWx0aV9vciUyMiUyMGlkJTNEJTIyKjBTKUg1JTI1V2hHZDJhLml+OF8uJTdDJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwaXRlbXMlM0QlMjIyJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPUjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjJpKVdGJTdEUSU3QjQxJTJDUVF5U29OfkxTZCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFRVElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjI4fkslNjB6R0JhJTJDaUhpVSU1RGVQJTJGJTdDJTVFJTQwJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJqUmdhMyFnRFh4QSE0YnhJJTNCTXolNUUlMjIlM0VrMSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJfYiU2ME85dFp5JTdCTEthJTIzWUxpJTI1TmJ6JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT1IxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfY29tcGFyZSUyMiUyMGlkJTNEJTIydjJqTCplN0VhY21TKiUyNSUyRiklM0ItJTQwXyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFRVElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjIlN0MlM0YlMjRVKUIteFVyU3RpUSU3RElzJTNEVjglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMkU0ZWotMGw2MTYlN0RIJTNBVSU2MFQlM0ElNUUlN0MlM0IlMjIlM0VrMiUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjI2JTJGJTVCcyU0MEd5JTI1NCpmcyUyQ2t+fjguYjYlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMiUyMzlZLlBoLWklMkIlNjBWcyU0MCU1RHolNDAlM0EtMjMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMk0yTFZGYy5IWG0lM0JBNWF6QSUyQ25CJTI1JTIyJTNFayUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJ6cnM4a2FHVUxMY25KZUNfJTdDJTNCWiUyQiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VUUlVFJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbCUyMiUyMGlkJTNEJTIydjglMjMlMkZrMiU3QzQlNUQlM0QlNDBUMiU1QnBlJTdEWWElN0IlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBkZWxheV9pbnB1dCUzRCUyMmZhbHNlJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPSUQlMjIlM0UwX3VzZXJkYXRhLjAuRmVuc3Rlci5Xb2huemltbWVyLlQlQzMlQkNyX3p1cl9UZXJyYXNzZS5Lb21iaW5hdGlvbl9kZXJfS29udGFrdHNlbnNvcmVuJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyQ3l0NSU3RFEuLWxuNzZtcnElMkZfdWhCJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJNMkxWRmMuSFhtJTNCQTVhekElMkNuQiUyNSUyMiUzRWslM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRm5leHQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb21tZW50JTIyJTIwaWQlM0QlMjJELTdzSDhXR0diRFdWZlpNKHBZVSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTU1FTlQlMjIlM0VHJUMzJUE0c3RlemltbWVyJTNDJTJGZmllbGQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fZXh0JTIyJTIwaWQlM0QlMjJrTShqKnhyVSU1RCkyJTQwcyU1RTNZJTJGcVIlM0YlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBpdGVtcyUzRCUyMjIlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRW5lJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQwJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyJTI1KSUyMzRvYyU1RWIoaVNRR24tNUFsV3AlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJvaWQlMjIlM0UwX3VzZXJkYXRhLjAuRmVuc3Rlci5HJUMzJUE0c3RlemltbWVyLlZpcnR1ZWxsZXJfS29udGFrdHNlbnNvciUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQxJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyLiUyQlowKCU2MCUyNCUyRmZ3JTVEMyU1RCU3Q1ZMQnklN0R4JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFYWxpYXMuMC5GZW5zdGVyLkclQzMlQTRzdGV6aW1tZXIuT2ZmZW4lM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMlNUQVRFTUVOVCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMndiZ0cxbzhsZjVZKTIpdkh1SXolM0ElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMmpSZ2EzIWdEWHhBITRieEklM0JNeiU1RSUyMiUzRWsxJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZV92YXIlMjIlMjBpZCUzRCUyMlhMciU3QyU2MCU2MHk3WGNHIV9lSVduJTYwYkMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjJ+azglNDA3JTdEJTdDdyU3QiU1QiUyQiUzQVouaE9qN0x4JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFMF91c2VyZGF0YS4wLkZlbnN0ZXIuRyVDMyVBNHN0ZXppbW1lci5WaXJ0dWVsbGVyX0tvbnRha3RzZW5zb3IlM0MlMkZmaWVsZCUzRSUzQyUyRnNoYWRvdyUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjJ3KiUzRkhxJTJGJTJDUnV2SU9VKEN1cFI4MSUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyRTRlai0wbDYxNiU3REglM0FVJTYwVCUzQSU1RSU3QyUzQiUyMiUzRWsyJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmdldF92YWx1ZV92YXIlMjIlMjBpZCUzRCUyMl9CWl9tM0lmUmlTbSooJTJDRlhMciElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBVFRSJTIyJTNFdmFsJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQlMjIlM0UlM0NzaGFkb3clMjB0eXBlJTNEJTIyZmllbGRfb2lkJTIyJTIwaWQlM0QlMjIuRyUzQUVLaCUyNEYlM0FDOSUyM3MqSjcpMSU1RCU3RCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRWFsaWFzLjAuRmVuc3Rlci5HJUMzJUE0c3RlemltbWVyLk9mZmVuJTNDJTJGZmllbGQlM0UlM0MlMkZzaGFkb3clM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIySSUyRkE0WkNuUGglNUI5VH41Q2ElN0QlNDAlMjRhJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJNMkxWRmMuSFhtJTNCQTVhekElMkNuQiUyNSUyMiUzRWslM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyVCUyQjNpJTdEJTVCVjVQJTVFbGwlNjB2KDUlNURuJTVCNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkJPT0wlMjIlM0VGQUxTRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sc19pZiUyMiUyMGlkJTNEJTIyJTNCJTVCbjM4X2FOTVVFTSUzRl8xeEJNJTNCJTYwJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfbXVsdGlfb3IlMjIlMjBpZCUzRCUyMjJ6QU4lN0NtJTNENnBLJTYwYVIlMjRGbWwlM0FEZyUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGl0ZW1zJTNEJTIyMiUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT1IwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfY29tcGFyZSUyMiUyMGlkJTNEJTIyRGM5NUs3WVBkJTNGbTZvSlhVJTJDOXpiJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT1AlMjIlM0VFUSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19nZXQlMjIlMjBpZCUzRCUyMnAyTFpQSXYlN0IlM0FLMGtxJTdDMXhqR28lNDAlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMmpSZ2EzIWdEWHhBITRieEklM0JNeiU1RSUyMiUzRWsxJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMm1mRElDRGslM0FpRyUzQWJQeHBwJTI0RyU3RDElMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPUjElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjJVZm01bUUlNUJTRFdlOHQlM0ZGQ2RIdyU1QiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9QJTIyJTNFRVElM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkElMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfZ2V0JTIyJTIwaWQlM0QlMjJ2RUhFVHYlMjRvb2c5Q1h5RUkzJTVFRSU3QyUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyRTRlai0wbDYxNiU3REglM0FVJTYwVCUzQSU1RSU3QyUzQiUyMiUzRWsyJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyQiUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMihOfiU1RTM0NiU3Q3pyb245JTI0VyUyQmhjbU4lMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDc3RhdGVtZW50JTIwbmFtZSUzRCUyMkRPMCUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMnQlNURoJTVFJTNBTEoyVWxLandvdWElMjRCa1IlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMk0yTFZGYy5IWG0lM0JBNWF6QSUyQ25CJTI1JTIyJTNFayUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJWNklWNDQhM1ZhMDN5JTNCR09CbFI3JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnN0YXRlbWVudCUzRSUzQ25leHQlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJjb250cm9sJTIyJTIwaWQlM0QlMjIlMjQlNUVjJTVCTG1ITyU3QmVLRWFKUi5OaElSJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwZGVsYXlfaW5wdXQlM0QlMjJmYWxzZSUyMiUzRSUzQyUyRm11dGF0aW9uJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyT0lEJTIyJTNFMF91c2VyZGF0YS4wLkZlbnN0ZXIuRyVDMyVBNHN0ZXppbW1lci5Lb21iaW5hdGlvbl9kZXJfS29udGFrdHNlbnNvcmVuJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyJTI1ZW1WKCUyNVAlMjROflBndUZiV3ZVJTNCeiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyTTJMVkZjLkhYbSUzQkE1YXpBJTJDbkIlMjUlMjIlM0VrJTNDJTJGZmllbGQlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZzdGF0ZW1lbnQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29tbWVudCUyMiUyMGlkJTNEJTIyTGwlMjNldGk3MiU3RGpteW5jTCUyNE5jUkQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJDT01NRU5UJTIyJTNFU2NobGFmemltbWVyJTNDJTJGZmllbGQlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyb25fZXh0JTIyJTIwaWQlM0QlMjIoX1Z3JTVEKTczMlhnJTNEJTJCMCUyQmNOSSU3RGMlMjIlM0UlM0NtdXRhdGlvbiUyMHhtbG5zJTNEJTIyaHR0cCUzQSUyRiUyRnd3dy53My5vcmclMkYxOTk5JTJGeGh0bWwlMjIlMjBpdGVtcyUzRCUyMjIlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkNPTkRJVElPTiUyMiUzRW5lJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJBQ0tfQ09ORElUSU9OJTIyJTNFJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQwJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyWEVLSFQoQXU1YkpqfiUzRiUzQktMSiF0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFMF91c2VyZGF0YS4wLkZlbnN0ZXIuU2NobGFmemltbWVyLlZpcnR1ZWxsZXJfS29udGFrdHNlbnNvciUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPSUQxJTIyJTNFJTNDc2hhZG93JTIwdHlwZSUzRCUyMmZpZWxkX29pZCUyMiUyMGlkJTNEJTIyJTNGTjVwJTI1QyU3REQlNjBTZCElMjVBJTQwM0olN0IzRCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5GZW5zdGVyLlNjaGxhZnppbW1lci5vZmZlbl9nZXNjaGxvc3NlbiUyRmFuZ2VraXBwdCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0NzdGF0ZW1lbnQlMjBuYW1lJTNEJTIyU1RBVEVNRU5UJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX3NldCUyMiUyMGlkJTNEJTIyZU1tSlBGdiF3MzhidFlpSyUzQWMlM0JMJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJqUmdhMyFnRFh4QSE0YnhJJTNCTXolNUUlMjIlM0VrMSUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWVfdmFyJTIyJTIwaWQlM0QlMjIlMjVPJTNCTzMtSUE5aCUyNSk2JTNENksuZyUzQiUzRiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMnR3WiUyQlhObmNhQyU0MGklNjAlMjQ0JTNGViUyQ0h0JTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyb2lkJTIyJTNFMF91c2VyZGF0YS4wLkZlbnN0ZXIuU2NobGFmemltbWVyLlZpcnR1ZWxsZXJfS29udGFrdHNlbnNvciUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMkl2b1FRMGMlMkNSeHMyXzFKLW5KenMlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMkU0ZWotMGw2MTYlN0RIJTNBVSU2MFQlM0ElNUUlN0MlM0IlMjIlM0VrMiUzQyUyRmZpZWxkJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyVkFMVUUlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJnZXRfdmFsdWVfdmFyJTIyJTIwaWQlM0QlMjJnJTNBJTNCME5KZVZPJTNBUlNTJTI1RXd1JTQwRiUyNCUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMkFUVFIlMjIlM0V2YWwlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMk9JRCUyMiUzRSUzQ3NoYWRvdyUyMHR5cGUlM0QlMjJmaWVsZF9vaWQlMjIlMjBpZCUzRCUyMi1PVVdofnN0OW5aJTNGKSUyNVl6bWpEdiUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMm9pZCUyMiUzRTBfdXNlcmRhdGEuMC5GZW5zdGVyLlNjaGxhZnppbW1lci5vZmZlbl9nZXNjaGxvc3NlbiUyRmFuZ2VraXBwdCUzQyUyRmZpZWxkJTNFJTNDJTJGc2hhZG93JTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMnZhcmlhYmxlc19zZXQlMjIlMjBpZCUzRCUyMkJNY34lMjVpZ0olM0IqZ2htTlRnJTI0VU9OJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJNMkxWRmMuSFhtJTNCQTVhekElMkNuQiUyNSUyMiUzRWslM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyTzNVciU1RCUyNVRtMyUyNWcoJTIzUyklMkJOMEclMjQlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0NuZXh0JTNFJTNDYmxvY2slMjB0eXBlJTNEJTIyY29udHJvbHNfaWYlMjIlMjBpZCUzRCUyMmIlMjN3RlRBVHNVKSklNDB2V003Y0VVJTdEJTIyJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIySUYwJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfbXVsdGlfb3IlMjIlMjBpZCUzRCUyMktIYSU1RCElMkIlN0IlM0J1JTdENkQ1JTI0UDZMKE4xJTIyJTNFJTNDbXV0YXRpb24lMjB4bWxucyUzRCUyMmh0dHAlM0ElMkYlMkZ3d3cudzMub3JnJTJGMTk5OSUyRnhodG1sJTIyJTIwaXRlbXMlM0QlMjIyJTIyJTNFJTNDJTJGbXV0YXRpb24lM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJPUjAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19jb21wYXJlJTIyJTIwaWQlM0QlMjIlN0MuUURISVREJTI0JTdDbk8lN0MlN0Rod2FZZlIlMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUVRJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyXzUlN0MlNDBCRSolN0IlN0Mzc0UlN0MlMkNiJTdCU28lNUJHJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJqUmdhMyFnRFh4QSE0YnhJJTNCTXolNUUlMjIlM0VrMSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMkIlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJsb2dpY19ib29sZWFuJTIyJTIwaWQlM0QlMjJaNiE3ZnpQWEV5TSUyQk8tRyptMHZSJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDdmFsdWUlMjBuYW1lJTNEJTIyT1IxJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfY29tcGFyZSUyMiUyMGlkJTNEJTIyR2ElM0RIV2NrVXppRFQlNDAxbSUyQ2dINyglMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJPUCUyMiUzRUVRJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJBJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyQVJhJTdCVXd6ZWZvLSUyQjBYb0hHcklMJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyVkFSJTIyJTIwaWQlM0QlMjJFNGVqLTBsNjE2JTdESCUzQVUlNjBUJTNBJTVFJTdDJTNCJTIyJTNFazIlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJCJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIybG9naWNfYm9vbGVhbiUyMiUyMGlkJTNEJTIyJTJDSClnTlUtZiFXdmtwKCUzQkdsNlhFJTIyJTNFJTNDZmllbGQlMjBuYW1lJTNEJTIyQk9PTCUyMiUzRVRSVUUlM0MlMkZmaWVsZCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGdmFsdWUlM0UlM0MlMkZibG9jayUzRSUzQyUyRnZhbHVlJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQ3N0YXRlbWVudCUyMG5hbWUlM0QlMjJETzAlMjIlM0UlM0NibG9jayUyMHR5cGUlM0QlMjJ2YXJpYWJsZXNfc2V0JTIyJTIwaWQlM0QlMjIlNjBwRUUlM0JURSUyNTQlMjNpLiElN0MlN0RsUDlDciUyMiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMlZBUiUyMiUyMGlkJTNEJTIyTTJMVkZjLkhYbSUzQkE1YXpBJTJDbkIlMjUlMjIlM0VrJTNDJTJGZmllbGQlM0UlM0N2YWx1ZSUyMG5hbWUlM0QlMjJWQUxVRSUyMiUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmxvZ2ljX2Jvb2xlYW4lMjIlMjBpZCUzRCUyMiU2MHMqTTVjeSUyQnFwJTdDZmQwU3U0RyUzRkslMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJCT09MJTIyJTNFVFJVRSUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDbmV4dCUzRSUzQ2Jsb2NrJTIwdHlwZSUzRCUyMmNvbnRyb2wlMjIlMjBpZCUzRCUyMk5uJTNGeVJydWpobVRYJTYwMH4lNURNUSUzQSUzRCUyMiUzRSUzQ211dGF0aW9uJTIweG1sbnMlM0QlMjJodHRwJTNBJTJGJTJGd3d3LnczLm9yZyUyRjE5OTklMkZ4aHRtbCUyMiUyMGRlbGF5X2lucHV0JTNEJTIyZmFsc2UlMjIlM0UlM0MlMkZtdXRhdGlvbiUzRSUzQ2ZpZWxkJTIwbmFtZSUzRCUyMk9JRCUyMiUzRTBfdXNlcmRhdGEuMC5GZW5zdGVyLlNjaGxhZnppbW1lci5Lb21iaW5hdGlvbl9kZXJfS29udGFrdHNlbnNvcmVuJTNDJTJGZmllbGQlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJXSVRIX0RFTEFZJTIyJTNFRkFMU0UlM0MlMkZmaWVsZCUzRSUzQ3ZhbHVlJTIwbmFtZSUzRCUyMlZBTFVFJTIyJTNFJTNDYmxvY2slMjB0eXBlJTNEJTIydmFyaWFibGVzX2dldCUyMiUyMGlkJTNEJTIyd1ZPJTVCaSU3QzduOFd3aSglMkZSYUM1M2slMjIlM0UlM0NmaWVsZCUyMG5hbWUlM0QlMjJWQVIlMjIlMjBpZCUzRCUyMk0yTFZGYy5IWG0lM0JBNWF6QSUyQ25CJTI1JTIyJTNFayUzQyUyRmZpZWxkJTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ2YWx1ZSUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGbmV4dCUzRSUzQyUyRmJsb2NrJTNFJTNDJTJGc3RhdGVtZW50JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZuZXh0JTNFJTNDJTJGYmxvY2slM0UlM0MlMkZ4bWwlM0U=
                                  
                                  simatec 1 Reply Last reply Reply Quote 0
                                  • simatec
                                    simatec Developer Most Active @guitardoc last edited by simatec

                                    @guitardoc

                                    // Wohnzimmer Tür zur Terrasse
                                    on({ id: [].concat(['0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Virtueller_Kontaktsensor']).concat(['0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.offen_geschlossen/angekippt']), change: 'ne' }, async (obj) => {
                                      const k1 = await getStateAsync('0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Virtueller_Kontaktsensor');
                                      const k2 = await getStateAsync('0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.offen_geschlossen/angekippt');
                                      const k = await getStateAsync('0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Kombination_der_Kontaktsensoren');
                                    
                                      await setStateAsync('0_userdata.0.Fenster.Wohnzimmer.Tür_zur_Terrasse.Kombination_der_Kontaktsensoren' /* Kombination der Kontaktsensoren Wohnzimmer Tür zur Terrasse */, (k1.val || k2.val) && !k.val ? true : false, true);
                                    });
                                    

                                    Und alle Scripte prüfen, dass überall die States sauber mit ack gesetzt werden

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

                                      @simatec sagte in Test Adapter shuttercontrol v1.7.x:

                                      Und alle Scripte prüfen, dass überall die States sauber mit ack gesetzt werden

                                      @guitardoc
                                      übersetzt für Blockly:
                                      nimm aktualisiere und nicht steuere

                                      simatec G 2 Replies Last reply Reply Quote 1
                                      • simatec
                                        simatec Developer Most Active @Homoran last edited by

                                        @homoran Da mache ich doch mal ein wenig Werbung für unseren Matthias mit seinem befreundeten Youtubekanal.

                                        @haus-automatisierung hat dazu ein schönes Video gemacht

                                        1 Reply Last reply Reply Quote 2
                                        • G
                                          guitardoc @Homoran last edited by

                                          @homoran said in Test Adapter shuttercontrol v1.7.x:

                                          nimm aktualisiere und nicht steuere

                                          Vielen Dank für die Info! Das werde ich gleich einbauen!
                                          Ich hatte mich da an Blocklys für Dummies gehalten, wo stand, dass es (in den meisten Fällen) nur eine kosmetische Sache ist.

                                          Eine Frage noch - was muss ich in Blockly nehmen für await getStateAsync?

                                          haus-automatisierung 1 Reply Last reply Reply Quote 0
                                          • haus-automatisierung
                                            haus-automatisierung Developer Most Active @guitardoc last edited by

                                            @guitardoc sagte in Test Adapter shuttercontrol v1.7.x:

                                            dass es (in den meisten Fällen) nur eine kosmetische Sache ist.

                                            Ist es leider oft nicht. Bitte einfach richtig machen und entweder die Werte selbst mit einem eigenen Script bestätigen (weil man etwas tun möchte, nachdem der Wert angesteuert wird) oder direkt bestätigt setzen.

                                            Ersteres ist ja mit dem "neuen" bestätige-Baustein nochmal deutlich einfacher geworden:

                                            Screenshot 2024-06-11 at 19.42.20.png

                                            Siehe https://forum.iobroker.net/topic/75237/javascript-8-5-2-blockly-10-bausteine-überarbeitet

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

                                            Support us

                                            ioBroker
                                            Community Adapters
                                            Donate

                                            839
                                            Online

                                            31.6k
                                            Users

                                            79.5k
                                            Topics

                                            1.3m
                                            Posts

                                            rollladen rollladensteuerung shuttercontrol
                                            325
                                            7256
                                            6577049
                                            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