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. Alle Objekte mit einer Rolle

NEWS

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

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.2k

Alle Objekte mit einer Rolle

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascript
12 Beiträge 3 Kommentatoren 852 Aufrufe 2 Watching
  • Ä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.
  • T ticaki

    @mariva sagte in Alle Objekte mit einer Rolle:

    var x = $('channelstate.id=*.SENSOR');

    var x  = $('state[role=window.sensor](functions="Fenster")');
    
    M Offline
    M Offline
    mariva
    schrieb am zuletzt editiert von mariva
    #3

    @ticaki

    Ok Danke. Kann ich channel state.id und state role auch kombinieren?

    var reedContacts  = $('state[id=*.SENSOR][role=sensor.window]');
    
    // on Change
    reedContacts.on(function(obj){
        updateStates(obj);
    });
    

    scheint nicht mehr zu gehen. vermutlich weil ich nun keine objekte mehr bekomme. mit channel ist das anderst oder ?

    T 1 Antwort Letzte Antwort
    0
    • M mariva

      @ticaki

      Ok Danke. Kann ich channel state.id und state role auch kombinieren?

      var reedContacts  = $('state[id=*.SENSOR][role=sensor.window]');
      
      // on Change
      reedContacts.on(function(obj){
          updateStates(obj);
      });
      

      scheint nicht mehr zu gehen. vermutlich weil ich nun keine objekte mehr bekomme. mit channel ist das anderst oder ?

      T Nicht stören
      T Nicht stören
      ticaki
      schrieb am zuletzt editiert von
      #4

      @mariva
      Da muß ich passen. Das ich state benutze ist ne Angewohnheit, mir ist noch kein Unterschied aufgefallen.

      Ich mache das so:

      const devices = 'state(functions=switch)(functions=humidity)';
      const sensor = 'state(functions=sumroom)(functions=humidity)';
      const targethumidity = 'state(functions=target)(functions=humidity)';
      const windows = 'state(functions=window)';
      
      var x = $(devices) //usw.
      

      weil nicht jeder Adapter die gleiche Role verwendet und ids noch unsicherer sind. Ich hab hier shelly, homematic und deconz im Einsatz. Deshalb benutze ich jetzt 2 Funktionen um ein Gerät zu identifizieren.

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      1 Antwort Letzte Antwort
      0
      • M mariva

        Hallo,

        hatte früher immer folgende funktion um alle reedkontakte zulesen.

        var x  = $('channel[state.id=*.SENSOR](functions="Fenster")');
        

        nach dem update auf Admin 5. scheint das nicht mehr zu gehen. Ist es möglich das ich die ROLE = window.sensor selektieren kann ?

        Danke schonmal.

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

        @mariva sagte: Ist es möglich das ich die ROLE = window.sensor selektieren kann ?

        Gerade getestet: Bei mir funktioniert es so:

        const idsSetpoint = $('[role=level.temperature]');
        idsSetpoint.each(function(id, i) {
            log(id);
        });
        

        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

        T M 2 Antworten Letzte Antwort
        0
        • paul53P paul53

          @mariva sagte: Ist es möglich das ich die ROLE = window.sensor selektieren kann ?

          Gerade getestet: Bei mir funktioniert es so:

          const idsSetpoint = $('[role=level.temperature]');
          idsSetpoint.each(function(id, i) {
              log(id);
          });
          
          T Nicht stören
          T Nicht stören
          ticaki
          schrieb am zuletzt editiert von ticaki
          #6

          @paul53 sagte in Alle Objekte mit einer Rolle:
          Scheine die Frage falsch verstanden zu haben

          suchen nach [role=xyz] geht natürlich nur nicht mit *

          Den Unterschied zwischen state/channel/nichts erschließt sich mir nicht. Habs getestet sehe das wieso jedoch nicht.

          Der erste State($('channel(id=sensor)')) wird nicht gefunden, der 2. schon...

          {
            "mihome-vacuum.0.consumable.sensors": {
              "_id": "mihome-vacuum.0.consumable.sensors",
              "type": "state",
              "common": {
                "name": "sensors lifetime",
                "type": "number",
                "role": "value.usage.sensors",
                "read": true,
                "write": false,
                "unit": "%"
              },
              "native": {},
              "from": "system.adapter.mihome-vacuum.0",
              "user": "system.user.admin",
              "ts": 1628194429902,
              "acl": {
                "object": 1632,
                "state": 1632,
                "owner": "system.user.admin",
                "ownerGroup": "system.group.administrator"
              }
            }
          }
          
              "daikin.0.sensorInfo.cmpfreq": {
                  "type": "state",
                  "common": {
                      "role": "value",
                      "read": true,
                      "write": false,
                      "type": "number",
                      "name": "Wohnzimmer Jr. sensorInfo.cmpfreq"
                  },
                  "native": {
                      "id": "sensorInfo.cmpfreq"
                  },
                  "from": "system.adapter.daikin.0",
                  "user": "system.user.admin",
                  "ts": 1575113145790,
                  "_id": "daikin.0.sensorInfo.cmpfreq",
                  "acl": {
                      "object": 1636,
                      "state": 1636
                  }
              },
          

          Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

          Spenden

          paul53P 1 Antwort Letzte Antwort
          0
          • T ticaki

            @paul53 sagte in Alle Objekte mit einer Rolle:
            Scheine die Frage falsch verstanden zu haben

            suchen nach [role=xyz] geht natürlich nur nicht mit *

            Den Unterschied zwischen state/channel/nichts erschließt sich mir nicht. Habs getestet sehe das wieso jedoch nicht.

            Der erste State($('channel(id=sensor)')) wird nicht gefunden, der 2. schon...

            {
              "mihome-vacuum.0.consumable.sensors": {
                "_id": "mihome-vacuum.0.consumable.sensors",
                "type": "state",
                "common": {
                  "name": "sensors lifetime",
                  "type": "number",
                  "role": "value.usage.sensors",
                  "read": true,
                  "write": false,
                  "unit": "%"
                },
                "native": {},
                "from": "system.adapter.mihome-vacuum.0",
                "user": "system.user.admin",
                "ts": 1628194429902,
                "acl": {
                  "object": 1632,
                  "state": 1632,
                  "owner": "system.user.admin",
                  "ownerGroup": "system.group.administrator"
                }
              }
            }
            
                "daikin.0.sensorInfo.cmpfreq": {
                    "type": "state",
                    "common": {
                        "role": "value",
                        "read": true,
                        "write": false,
                        "type": "number",
                        "name": "Wohnzimmer Jr. sensorInfo.cmpfreq"
                    },
                    "native": {
                        "id": "sensorInfo.cmpfreq"
                    },
                    "from": "system.adapter.daikin.0",
                    "user": "system.user.admin",
                    "ts": 1575113145790,
                    "_id": "daikin.0.sensorInfo.cmpfreq",
                    "acl": {
                        "object": 1636,
                        "state": 1636
                    }
                },
            
            paul53P Offline
            paul53P Offline
            paul53
            schrieb am zuletzt editiert von
            #7

            @ticaki
            Was soll "channel" im Selektor? Das sind Datenpunkte mit sehr unterschiedlichen IDs. Versuche mal

            $('*.sensor*');
            

            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

            T 1 Antwort Letzte Antwort
            0
            • paul53P paul53

              @ticaki
              Was soll "channel" im Selektor? Das sind Datenpunkte mit sehr unterschiedlichen IDs. Versuche mal

              $('*.sensor*');
              
              T Nicht stören
              T Nicht stören
              ticaki
              schrieb am zuletzt editiert von
              #8

              @paul53 sagte in Alle Objekte mit einer Rolle:

              @ticaki
              Was soll "channel" im Selektor? Das sind Datenpunkte mit sehr unterschiedlichen IDs. Versuche mal

              $('*.sensor*');
              

              Die * waren drin das kursiv :)

              Es geht um:

              Format of selector:
              
              "name[commonAttr=something1](enumName=something2){nativeName=something3}[id=idfilter][state.id=idfilter]"
              name can be: state, channel, device or schedule "idfilter" can have wildcards '*'
              

              channel und state unterscheiden sich, jedoch nicht nachvollziehbar für mich. Dachte du wüsstest es vielleicht.

              Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

              Spenden

              paul53P 1 Antwort Letzte Antwort
              0
              • T ticaki

                @paul53 sagte in Alle Objekte mit einer Rolle:

                @ticaki
                Was soll "channel" im Selektor? Das sind Datenpunkte mit sehr unterschiedlichen IDs. Versuche mal

                $('*.sensor*');
                

                Die * waren drin das kursiv :)

                Es geht um:

                Format of selector:
                
                "name[commonAttr=something1](enumName=something2){nativeName=something3}[id=idfilter][state.id=idfilter]"
                name can be: state, channel, device or schedule "idfilter" can have wildcards '*'
                

                channel und state unterscheiden sich, jedoch nicht nachvollziehbar für mich. Dachte du wüsstest es vielleicht.

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

                @ticaki sagte: channel und state unterscheiden sich, jedoch nicht nachvollziehbar für mich.

                Der Selektor wurde im Laufe der Zeit überarbeitet, so dass es wohl keinen Unterschied mehr macht. Früher musste bei HomeMatic "channel" angegeben werden, da Aufzählungen (Räume, Gewerke) bei HomeMatic den Kanälen zugeordnet sind.

                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
                0
                • paul53P paul53

                  @mariva sagte: Ist es möglich das ich die ROLE = window.sensor selektieren kann ?

                  Gerade getestet: Bei mir funktioniert es so:

                  const idsSetpoint = $('[role=level.temperature]');
                  idsSetpoint.each(function(id, i) {
                      log(id);
                  });
                  
                  M Offline
                  M Offline
                  mariva
                  schrieb am zuletzt editiert von
                  #10

                  @paul53 said in Alle Objekte mit einer Rolle:

                  const idsSetpoint = $('[role=level.temperature]'); idsSetpoint.each(function(id, i) { log(id); });

                  Ich möchte ja ein On Change auf jedes dieser Objekte welche ich mit dem selektor greife.
                  Sicher das ich das jetzt vorher noch iterieren muss um dann dort das on change zu machen ?

                  Möchte einfach der möglichst performanteste Code, da es doch einige Sensoren sind ;-)

                  paul53P 1 Antwort Letzte Antwort
                  0
                  • M mariva

                    @paul53 said in Alle Objekte mit einer Rolle:

                    const idsSetpoint = $('[role=level.temperature]'); idsSetpoint.each(function(id, i) { log(id); });

                    Ich möchte ja ein On Change auf jedes dieser Objekte welche ich mit dem selektor greife.
                    Sicher das ich das jetzt vorher noch iterieren muss um dann dort das on change zu machen ?

                    Möchte einfach der möglichst performanteste Code, da es doch einige Sensoren sind ;-)

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

                    @mariva sagte: Ich möchte ja ein On Change auf jedes dieser Objekte welche ich mit dem selektor greife.

                    Wenn

                    Selektor.each(function(id, i) {});
                    

                    funktioniert, dann funktioniert auch

                    Selektor.on(function(dp) {});
                    

                    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

                    M 1 Antwort Letzte Antwort
                    1
                    • paul53P paul53

                      @mariva sagte: Ich möchte ja ein On Change auf jedes dieser Objekte welche ich mit dem selektor greife.

                      Wenn

                      Selektor.each(function(id, i) {});
                      

                      funktioniert, dann funktioniert auch

                      Selektor.on(function(dp) {});
                      
                      M Offline
                      M Offline
                      mariva
                      schrieb am zuletzt editiert von
                      #12

                      @paul53 said in Alle Objekte mit einer Rolle:

                      iert, dann funktioniert

                      DAnke. Es klappt mit :

                      var reedContacts = $('state[id=*.SENSOR][role=sensor.window]');

                      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

                      760

                      Online

                      32.6k

                      Benutzer

                      82.2k

                      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