Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. JavaScript
    5. Alle Mitglieder einer Aufzählung schalten (gelöst)

    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

    SOLVED Alle Mitglieder einer Aufzählung schalten (gelöst)

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

      Hallo mein repo ist auf latest...

      Js-controller 2.2.9

      Javascript 4.4.2

      Ist aber schon länger so.. Habe jetzt erst nach unzähligen lösungsversuchen das Thema hier angesprochen..

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

        @paul53
        Hi Paul53,
        konntest du das nachvollziehen?
        vlt. kannst du das mit einem Homematic 2 Kanalaktor nachvollziehen.
        Das 1. Relais einer anderen Funktion zuordnen als das 2.
        Damit müsste es gehen.

        Hier die Ausgabe zu meinem Problem mit folgendem script.....

        const pruef = $('state[state.id=hm-rpc.0*.STATE](functions= Licht)'); //Gewerk Licht
        pruef.each(function(id, i) {
        log(id);
        });
        

        dabei ist zu sagen, dass die HM Geräte mit dem 2. Relais nicht dem Gerwerk Licht zugeordnet sind, sondern Steckose...Dennoch tauchen sie hier auf...


        javascript.0 2020-02-16 16:43:17.340 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: registered 20 subscriptions and 0 schedules
        javascript.0 2020-02-16 16:43:17.338 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.PEQ0196501.2.STATE
        javascript.0 2020-02-16 16:43:17.337 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.PEQ0196501.1.STATE
        javascript.0 2020-02-16 16:43:17.336 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.PEQ0195359.2.STATE
        javascript.0 2020-02-16 16:43:17.336 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.PEQ0195359.1.STATE
        javascript.0 2020-02-16 16:43:17.335 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.OEQ1228156.2.STATE
        javascript.0 2020-02-16 16:43:17.334 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.OEQ1228156.1.STATE
        javascript.0 2020-02-16 16:43:17.333 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.OEQ1157843.1.STATE
        javascript.0 2020-02-16 16:43:17.331 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.OEQ1156787.1.STATE
        javascript.0 2020-02-16 16:43:17.331 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.OEQ1155055.1.STATE
        javascript.0 2020-02-16 16:43:17.330 info (10061) script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung: hm-rpc.0.OEQ1154738.1.STATE
        javascript.0 2020-02-16 16:43:16.796 info (10061) Start javascript script.js.common.Status_Geraete.Sonstige.Licht_mit_Rückmeldung

        Wenn ich wüsste im welchen Bereich der fehler liegt, würde ich auch ein issue auf github aufmachen..Weiß nur nicht ob es am javascript Adapter oder dem js-controller liegt...

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

          @smartboart sagte:

          konntest du das nachvollziehen?

          Nein, bei mir funktionieren die Selektoren wie erwartet. Versuche mal

          const pruef = $('*.STATE(functions=Licht)'); //Gewerk Licht
          

          ohne Leerzeichen vor Licht.

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

            Ja das Leerzeichen macht keinen Unterschied...wenn es bei dir funktioniert, hast du Objekt und state als redis oder file? Vlt. Wird das nicht sauber überschrieben oder gelöscht wenn die Zuordnung der functions vorher schon mal anders war?

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

              @smartboart sagte:

              hast du Objekt und state als redis oder file?

              Beides als file. Wobei das keine Rolle spielen sollte, da js-Controller und Javascript-Adapter alle Objekte und Zustände puffern. Deshalb ist nach Änderungen an den enums per Admin ein Restart der Javascript-Instanz hilfreich.

              smartboart 1 Reply Last reply Reply Quote 1
              • smartboart
                smartboart last edited by

                Werde mal die enums der betroffenen states löschen, neustarten, neu zuordnen und wieder neustarten.... Habe das aber denke ich schon gemacht... Aufgefallen ist mir das Verhalten aber erst nachdem ich auf redis umgestellt habe.. Deshalb die Frage...

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

                  @paul53 also habe weiter getestet...da ist definitiv ein bug...
                  habe jetzt 2 objekte mit jeweils den selben Informationsinhalt erstellt. Der Unterschied ist nur die Instanz...ein objekt instanz 0 das andere instanz 1.
                  0 ist einer enum zugeordnet , 1 nicht....Auch hier werden beide mit der selector funktion eingesammelt.

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

                    @smartboart
                    Gerade noch mal getestet (JS 4.4.0):

                    const smoke = $('*.STATE(functions=smoke)');
                    
                    smoke.each(function(id, i) {
                        log(id);
                    });
                    

                    Gewerk smoke ist nur rpc.0.XEQ1234567.2.STATE zugeordnet, rpc.0.XEQ1234567.1.STATE nicht. Log:

                    22:37:42.456	info	javascript.1 (8747) Start javascript script.js.common.Test
                    22:37:42.459	info	javascript.1 (8747) script.js.common.Test: hm-rpc.0.XEQ1234567.2.STATE
                    22:37:42.459	info	javascript.1 (8747) script.js.common.Test: registered 0 subscriptions and 0 schedules
                    

                    Vorher mit umgekehrter Zuordnung getestet.

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

                      @paul53 sagte in Alle Mitglieder einer Aufzählung schalten (gelöst):

                      @smartboart
                      Gerade noch mal getestet (JS 4.4.0):

                      const smoke = $('*.STATE(functions=smoke)');
                      
                      smoke.each(function(id, i) {
                          log(id);
                      });
                      

                      Gewerk smoke ist nur rpc.0.XEQ1234567.2.STATE zugeordnet, rpc.0.XEQ1234567.1.STATE nicht. Log:

                      22:37:42.456	info	javascript.1 (8747) Start javascript script.js.common.Test
                      22:37:42.459	info	javascript.1 (8747) script.js.common.Test: hm-rpc.0.XEQ1234567.2.STATE
                      22:37:42.459	info	javascript.1 (8747) script.js.common.Test: registered 0 subscriptions and 0 schedules
                      

                      Vorher mit umgekehrter Zuordnung getestet.

                      Danke für deine Tests ....Das ist bei mir definitv leider nicht so...

                      testest du auch mit repo latest und alle Adapter aktuell?

                      hatte noch mal anders getestet...
                      admin.0.alive ist der enumeration Adapter zugeordnet, admin.1.alive nicht...
                      unten siehe die log Ausgabe....Beides dabei...

                      Das müsste mal einer mit Redis testen.

                      const test = $('*.alive(functions=Adapter)'); // test Fenster
                      test.each(function(id, i) {
                      if(logging)log(id);
                      });
                      
                      

                      javascript.0 2020-02-22 22:49:16.450 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.zigbee.0.alive
                      javascript.0 2020-02-22 22:49:16.449 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.wiffi-wz.0.alive
                      javascript.0 2020-02-22 22:49:16.449 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.web.0.alive
                      javascript.0 2020-02-22 22:49:16.448 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.tr-064-community.2.alive
                      javascript.0 2020-02-22 22:49:16.448 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.tr-064-community.1.alive
                      javascript.0 2020-02-22 22:49:16.447 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.tr-064-community.0.alive
                      javascript.0 2020-02-22 22:49:16.447 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.telegram.0.alive
                      javascript.0 2020-02-22 22:49:16.446 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.statistics.0.alive
                      javascript.0 2020-02-22 22:49:16.446 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.sonoff.0.alive
                      javascript.0 2020-02-22 22:49:16.445 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.socketio.0.alive
                      javascript.0 2020-02-22 22:49:16.445 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.rpi2.0.alive
                      javascript.0 2020-02-22 22:49:16.444 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.roadtraffic.0.alive
                      javascript.0 2020-02-22 22:49:16.443 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.modbus.1.alive
                      javascript.0 2020-02-22 22:49:16.443 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.modbus.0.alive
                      javascript.0 2020-02-22 22:49:16.442 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.javascript.1.alive
                      javascript.0 2020-02-22 22:49:16.442 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.javascript.0.alive
                      javascript.0 2020-02-22 22:49:16.441 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.info.0.alive
                      javascript.0 2020-02-22 22:49:16.441 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.hm-rpc.0.alive
                      javascript.0 2020-02-22 22:49:16.440 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.hm-rega.0.alive
                      javascript.0 2020-02-22 22:49:16.440 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.history.0.alive
                      javascript.0 2020-02-22 22:49:16.439 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.gruenbeck.0.alive
                      javascript.0 2020-02-22 22:49:16.438 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.fullybrowser.0.alive
                      javascript.0 2020-02-22 22:49:16.438 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.fritzbox.0.alive
                      javascript.0 2020-02-22 22:49:16.437 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.email.0.alive
                      javascript.0 2020-02-22 22:49:16.437 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.broadlink2.0.alive
                      javascript.0 2020-02-22 22:49:16.436 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.backitup.0.alive
                      javascript.0 2020-02-22 22:49:16.436 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.admin.1.alive
                      javascript.0 2020-02-22 22:49:16.435 info (1709) script.js.common.Status_Geraete.Adapter.Systemadapter: system.adapter.admin.0.alive

                      smartboart 1 Reply Last reply Reply Quote 0
                      • smartboart
                        smartboart @smartboart last edited by

                        @smartboart sagte in Alle Mitglieder einer Aufzählung schalten (gelöst):

                        Danke für deine Tests ....Das ist bei mir definitv leider nicht so...

                        Also nach dem js-controller update und den latest updates der letzten Tage ist alles tutti. Nur der Vollständigkeithalber. In der Sache gab es laut changelog auch änderungen..Super!!!

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

                        Support us

                        ioBroker
                        Community Adapters
                        Donate

                        510
                        Online

                        31.9k
                        Users

                        80.2k
                        Topics

                        1.3m
                        Posts

                        7
                        30
                        2003
                        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