Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. On(); mehrere Bedingungen in einem on()?

    NEWS

    • Neuer Blog: Fotos und Eindrücke aus Solingen

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

    • ioBroker goes Matter ... Matter Adapter in Stable

    On(); mehrere Bedingungen in einem on()?

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

      @Marco:

      Bin mir nicht ganz sicher was du meinst. Das Beispiel müsste schon bei jeder Änderung reagieren.

      @Dutchman:

      Vielen Dank für die Klärung!

      1 Reply Last reply Reply Quote 0
      • S
        stan23 last edited by

        Hi Andreas,

        in meinem Enum sind HomeMatic Wired Rolloaktoren (HMW-LC-Bl1-DR) aufgeführt, dies bei SHORT_PRESS immer nur TRUE aktualisieren, aber den Wert nicht ändern.

        Der Trigger muss daher nicht auf ne (not equal) sondern auf any stehen.

        Im erweiterten Log steht aber dass per default "change":"ne" ausgewählt ist:
        > script.js.common.Rollos.RolloOgDoppelklick: subscribe: {"pattern":{"id":"hm-rpc.0.LEQ1322734.2.PRESS_SHORT",****"change":"ne"****},"name":"script.js.common.Rollos.RolloOgDoppelklick"}

        1 Reply Last reply Reply Quote 0
        • andreaskos
          andreaskos last edited by

          Ah, verstehe! Ich hab hatte es bisher nur mit Lichtern ausprobiert. Diese ändern sich natürlich jedesmal, also geht es auch immer. Du hast recht Marco, die Taster frischen ihr "true" nur immer wieder auf, da geht es dann nicht mehr. Ich habe leider bislang auch noch keine Möglichkeit gefunden, das change: any im $-Selektor mit rein zu packen.

          Kann uns jemand weiterhelfen?

          1 Reply Last reply Reply Quote 0
          • T
            Tefi last edited by

            Irgendwie habe ich das noch nicht gepackt.

            Ich füge die state aller Bewegungsmelder in enum.roomcontroller.kueche.motions.

            subscribe ( {id: "enum.roomcontroller.kueche.motions", change: 'any'}, function (data) {
                log('Test');
            } );
            
            

            Was ist da falsch?

            Bei Bewegung wird nicht regaiert.

            Besten Dnak für alle Tipps

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

              @Tefi:

              Was ist da falsch?

              Bei Bewegung wird nicht regaiert. `
              Man kann nicht auf enums triggern, sondern nur auf Datenpunkte. Will man enums auswerten, muss man den https://github.com/ioBroker/ioBroker.javascript/blob/master/doc/en/javascript.md#–-selector anwenden.

              1 Reply Last reply Reply Quote 0
              • T
                Tefi last edited by

                Ok, danke

                enum.functions.Beleuchtung wurde bei der Installation des Adapeters angelegt und funktioniert:

                const testDps = $('state(functions=Beleuchtung)');

                testDps.each(function(id, i) {

                log(id + ': ' + getState(id).val);

                });

                enum.roomcontroller.test abe ich von Hand angelegt und brings nichts, obwohl auf Datenpunkte vorhanden sind:

                const testDps = $('state(roomcontroller=test)');
                testDps.each(function(id, i) {
                    log(id + ': ' + getState(id).val);
                });
                
                1 Reply Last reply Reply Quote 0
                • paul53
                  paul53 last edited by

                  Wenn enum.roomcontroller.test und die Zuordnung der Datenpunkte neu ist, muss erst die JS-Instanz neu gestartet werden, damit der Selektor die Datenpunkte findet.
                  493_enum_neu.jpg
                  493_enum_neu_log.jpg

                  1 Reply Last reply Reply Quote 0
                  • T
                    Tefi last edited by

                    Super. Genau das war es.

                    Wie hole ich mir jetzt alle Enum's nicht die Mitglieder?

                    zB enum.functions =(Bewegung, Beleuchtung, usw)?

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

                      @Tefi:

                      Wie hole ich mir jetzt alle Enum's nicht die Mitglieder?

                      zB enum.functions =(Bewegung, Beleuchtung, usw)? `
                      Versuche es mal mit https://github.com/ioBroker/ioBroker.javascript/blob/master/doc/en/javascript.md#getenums.

                      `var functions = getEnums('functions');
                      for(var i = 0; i < functions.length; i++) {
                         log(functions[i].name);
                      }`[/i]
                      
                      1 Reply Last reply Reply Quote 0
                      • T
                        Tefi last edited by

                        Ja genau das war es.

                        Besten Dank

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        812
                        Online

                        31.7k
                        Users

                        79.9k
                        Topics

                        1.3m
                        Posts

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