Skip to content
  • Home
  • Recent
  • Tags
  • 0 Unread 0
  • Categories
  • Unreplied
  • Popular
  • 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

  • Default (No Skin)
  • No Skin
Collapse
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
    17
    1
    3.1k

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

  • Weihnachtsangebot 2025! 🎄
    BluefoxB
    Bluefox
    25
    1
    2.4k

Alle Objekte mit einer Rolle

Scheduled Pinned Locked Moved JavaScript
javascript
12 Posts 3 Posters 900 Views 2 Watching
  • Oldest to Newest
  • Newest to Oldest
  • Most Votes
Reply
  • Reply as topic
Log in to reply
This topic has been deleted. Only users with topic management privileges can see it.
  • M Offline
    M Offline
    mariva
    wrote on last edited by
    #1

    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.

    T paul53P 2 Replies Last reply
    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.

      T Do not disturb
      T Do not disturb
      ticaki
      wrote on last edited by
      #2

      @mariva sagte in Alle Objekte mit einer Rolle:

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

      var x  = $('state[role=window.sensor](functions="Fenster")');
      

      Weather-Warnings Espresense NSPanel-Lovelace-ui Tagesschau

      Spenden

      M 1 Reply Last reply
      0
      • 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
        wrote on last edited by 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 Reply Last reply
        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 Do not disturb
          T Do not disturb
          ticaki
          wrote on last edited by
          #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 Reply Last reply
          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
            wrote on last edited by
            #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 Replies Last reply
            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 Do not disturb
              T Do not disturb
              ticaki
              wrote on last edited by 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 Reply Last reply
              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
                wrote on last edited by
                #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 Reply Last reply
                0
                • paul53P paul53

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

                  $('*.sensor*');
                  
                  T Do not disturb
                  T Do not disturb
                  ticaki
                  wrote on last edited by
                  #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 Reply Last reply
                  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
                    wrote on last edited by
                    #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 Reply Last reply
                    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
                      wrote on last edited by
                      #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 Reply Last reply
                      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
                        wrote on last edited by 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 Reply Last reply
                        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
                          wrote on last edited by
                          #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 Reply Last reply
                          0
                          Reply
                          • Reply as topic
                          Log in to reply
                          • Oldest to Newest
                          • Newest to Oldest
                          • Most Votes


                          Support us

                          ioBroker
                          Community Adapters
                          Donate

                          722

                          Online

                          32.7k

                          Users

                          82.3k

                          Topics

                          1.3m

                          Posts
                          Community
                          Impressum | Datenschutz-Bestimmungen | Nutzungsbedingungen | Einwilligungseinstellungen
                          ioBroker Community 2014-2025
                          logo
                          • Login

                          • Don't have an account? Register

                          • Login or register to search.
                          • First post
                            Last post
                          0
                          • Home
                          • Recent
                          • Tags
                          • Unread 0
                          • Categories
                          • Unreplied
                          • Popular
                          • GitHub
                          • Docu
                          • Hilfe