Skip to content
  • Home
  • Aktuell
  • Tags
  • 0 Ungelesen 0
  • Kategorien
  • Unreplied
  • Beliebt
  • GitHub
  • Docu
  • Hilfe
Skins
  • Light
  • Brite
  • Cerulean
  • Cosmo
  • Flatly
  • Journal
  • Litera
  • Lumen
  • Lux
  • Materia
  • Minty
  • Morph
  • Pulse
  • Sandstone
  • Simplex
  • Sketchy
  • Spacelab
  • United
  • Yeti
  • Zephyr
  • Dark
  • Cyborg
  • Darkly
  • Quartz
  • Slate
  • Solar
  • Superhero
  • Vapor

  • Standard: (Kein Skin)
  • Kein Skin
Einklappen
ioBroker Logo

Community Forum

donate donate
  1. ioBroker Community Home
  2. Deutsch
  3. Skripten / Logik
  4. JavaScript
  5. [gelöst] Selector $ findet States mit Raum-An...

NEWS

  • Jahresrückblick 2025 – unser neuer Blogbeitrag ist online! ✨
    BluefoxB
    Bluefox
    16
    1
    1.8k

  • Neuer Blogbeitrag: Monatsrückblick - Dezember 2025 🎄
    BluefoxB
    Bluefox
    13
    1
    891

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.1k

[gelöst] Selector $ findet States mit Raum-An...

Geplant Angeheftet Gesperrt Verschoben JavaScript
5 Beiträge 2 Kommentatoren 790 Aufrufe
  • Älteste zuerst
  • Neuste zuerst
  • Meiste Stimmen
Antworten
  • In einem neuen Thema antworten
Anmelden zum Antworten
Dieses Thema wurde gelöscht. Nur Nutzer mit entsprechenden Rechten können es sehen.
  • echoDaveE Offline
    echoDaveE Offline
    echoDave
    schrieb am zuletzt editiert von echoDave
    #1

    Hallo zusammen,

    ich habe Probleme mit dem Selector in meiner Installation, die ich mir nicht erklären kann:

    Wenn ich nach States *.1.SET_TEMPERATURE suche findet er alle, Testhalber lass ich mir die Räume und Funktionen ausgeben:

    log("Alle States");
    $('channel[state.id=*.1.SET_TEMPERATURE]').each(function (id, i) {                        
    		var status = getState(id).val;                                  
    		var obj    = getObject(id);
            var roomsX = getObject(id, 'rooms');
            var functionsX = getObject(id, 'functions');
            log(id+"     |     "+roomsX.enumNames+"     |     "+functionsX.enumNames);                                                              
    	}); 
    
    
    Ausgabe:
    20:04:50.491	info	javascript.0 script.js.common.test: Alle States
    20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1773015.1.SET_TEMPERATURE | Bad | Thermostate
    20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1450924.1.SET_TEMPERATURE | Gaestezimmer | Thermostate
    20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1452909.1.SET_TEMPERATURE | Wohnzimmer | Thermostate
    20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1773431.1.SET_TEMPERATURE | Flur | Thermostate
    20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1773490.1.SET_TEMPERATURE | Esszimmer | Thermostate
    20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1457539.1.SET_TEMPERATURE | Kueche | Thermostate
    

    Nun versuche ich dem Selector einen Raum mitzugeben

    log("Nur Esszimmer");
    $('channel[state.id=*.1.SET_TEMPERATURE](rooms=Esszimmer)').each(function (id, i) {                        
    		var status = getState(id).val;                                  
    		var obj    = getObject(id);
            var roomsX = getObject(id, 'rooms');
            var functionsX = getObject(id, 'functions');
            log(id+"     |     "+roomsX.enumNames+"     |     "+functionsX.enumNames);                                                              
    	});
    
    Ausgabe:
    20:04:50.491	info	javascript.0 script.js.common.test: Nur Esszimmer
    

    Ich habe Esszimmer auch klein versucht, auch die volle enumid kommt immer aufs gleiche hinaus.
    Interessanterweise habe ich es in anderen Script ähnlich und es läuft.

    Was muss ich eigentlich generell bei rooms/functions beim selector eintragen den Namen oder den letzten part der id?

    Woran kann das legen, hat jemand eine Idee?

    paul53P 1 Antwort Letzte Antwort
    0
    • echoDaveE echoDave

      Hallo zusammen,

      ich habe Probleme mit dem Selector in meiner Installation, die ich mir nicht erklären kann:

      Wenn ich nach States *.1.SET_TEMPERATURE suche findet er alle, Testhalber lass ich mir die Räume und Funktionen ausgeben:

      log("Alle States");
      $('channel[state.id=*.1.SET_TEMPERATURE]').each(function (id, i) {                        
      		var status = getState(id).val;                                  
      		var obj    = getObject(id);
              var roomsX = getObject(id, 'rooms');
              var functionsX = getObject(id, 'functions');
              log(id+"     |     "+roomsX.enumNames+"     |     "+functionsX.enumNames);                                                              
      	}); 
      
      
      Ausgabe:
      20:04:50.491	info	javascript.0 script.js.common.test: Alle States
      20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1773015.1.SET_TEMPERATURE | Bad | Thermostate
      20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1450924.1.SET_TEMPERATURE | Gaestezimmer | Thermostate
      20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1452909.1.SET_TEMPERATURE | Wohnzimmer | Thermostate
      20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1773431.1.SET_TEMPERATURE | Flur | Thermostate
      20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1773490.1.SET_TEMPERATURE | Esszimmer | Thermostate
      20:04:50.491	info	javascript.0 script.js.common.test: hm-rpc.0.MEQ1457539.1.SET_TEMPERATURE | Kueche | Thermostate
      

      Nun versuche ich dem Selector einen Raum mitzugeben

      log("Nur Esszimmer");
      $('channel[state.id=*.1.SET_TEMPERATURE](rooms=Esszimmer)').each(function (id, i) {                        
      		var status = getState(id).val;                                  
      		var obj    = getObject(id);
              var roomsX = getObject(id, 'rooms');
              var functionsX = getObject(id, 'functions');
              log(id+"     |     "+roomsX.enumNames+"     |     "+functionsX.enumNames);                                                              
      	});
      
      Ausgabe:
      20:04:50.491	info	javascript.0 script.js.common.test: Nur Esszimmer
      

      Ich habe Esszimmer auch klein versucht, auch die volle enumid kommt immer aufs gleiche hinaus.
      Interessanterweise habe ich es in anderen Script ähnlich und es läuft.

      Was muss ich eigentlich generell bei rooms/functions beim selector eintragen den Namen oder den letzten part der id?

      Woran kann das legen, hat jemand eine Idee?

      paul53P Offline
      paul53P Offline
      paul53
      schrieb am zuletzt editiert von
      #2

      @echoDave sagte:

      den letzten part der id?

      Ja.

      Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
      Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

      1 Antwort Letzte Antwort
      1
      • echoDaveE Offline
        echoDaveE Offline
        echoDave
        schrieb am zuletzt editiert von
        #3

        Danke Schon mal, das Hauptproblem besteht jedoch weiterhin.

        Hier noch ein Screenshot von den Objekten, korrekt angelegt ist es.

        Bildschirmfoto 2019-09-17 um 20.48.28.png

        Bildschirmfoto 2019-09-17 um 20.47.59.png

        paul53P 1 Antwort Letzte Antwort
        0
        • echoDaveE echoDave

          Danke Schon mal, das Hauptproblem besteht jedoch weiterhin.

          Hier noch ein Screenshot von den Objekten, korrekt angelegt ist es.

          Bildschirmfoto 2019-09-17 um 20.48.28.png

          Bildschirmfoto 2019-09-17 um 20.47.59.png

          paul53P Offline
          paul53P Offline
          paul53
          schrieb am zuletzt editiert von paul53
          #4

          @echoDave
          Der Raum "Esszimmer" ist dem Datenpunkt zugeordnet, nicht dem Kanal. Also muss der Selektor anders aussehen.

          $('state[id=*.1.SET_TEMPERATURE](rooms=esszimmer)')
          

          Welche Thermostate haben den Sollwert auf dem Kanal 1 ?

          Bitte verzichtet auf Chat-Nachrichten, denn die Handhabung ist grauenhaft !
          Produktiv: RPi 2 mit S.USV, HM-MOD-RPI und SLC-USB-Stick mit root fs

          echoDaveE 1 Antwort Letzte Antwort
          1
          • paul53P paul53

            @echoDave
            Der Raum "Esszimmer" ist dem Datenpunkt zugeordnet, nicht dem Kanal. Also muss der Selektor anders aussehen.

            $('state[id=*.1.SET_TEMPERATURE](rooms=esszimmer)')
            

            Welche Thermostate haben den Sollwert auf dem Kanal 1 ?

            echoDaveE Offline
            echoDaveE Offline
            echoDave
            schrieb am zuletzt editiert von
            #5

            @paul53 o.O das macht jetzt natürlich total Sinn :D danke jetzt wird mir einiges klar.

            Das sind die MAX!(BC-RT-TRX-CyN) Thermostate über Homegear eingebunden in ioBroker.

            1 Antwort Letzte Antwort
            0
            Antworten
            • In einem neuen Thema antworten
            Anmelden zum Antworten
            • Älteste zuerst
            • Neuste zuerst
            • Meiste Stimmen


            Support us

            ioBroker
            Community Adapters
            Donate

            725

            Online

            32.6k

            Benutzer

            82.1k

            Themen

            1.3m

            Beiträge
            Community
            Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
            ioBroker Community 2014-2025
            logo
            • Anmelden

            • Du hast noch kein Konto? Registrieren

            • Anmelden oder registrieren, um zu suchen
            • Erster Beitrag
              Letzter Beitrag
            0
            • Home
            • Aktuell
            • Tags
            • Ungelesen 0
            • Kategorien
            • Unreplied
            • Beliebt
            • GitHub
            • Docu
            • Hilfe