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. Gelöst: Lichter zählen (die hundertste) - Homematic und Hue?

NEWS

  • Verwendung von KI bitte immer deutlich kennzeichnen
    HomoranH
    Homoran
    5
    1
    59

  • Monatsrückblick Januar/Februar 2026 ist online!
    BluefoxB
    Bluefox
    18
    1
    839

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

Gelöst: Lichter zählen (die hundertste) - Homematic und Hue?

Scheduled Pinned Locked Moved JavaScript
5 Posts 2 Posters 618 Views 4 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.
  • A Offline
    A Offline
    asman-hm
    wrote on last edited by asman-hm
    #1

    Hallo zusammen,

    ich habe es mit Hilfe der diversen Posts und Skriptbeispiele geschafft die eingeschaltenen Lichter in meinen Zimmern zu zählen.

    Ich selbst habe sehr wenig bis gar keine Ahnung von JavaSkript - ich habe einfach ein wenig experimentiert, bis es geklappt hat.

    Ich habe für jeden Raum eine Aufzählung erstellt und in diese meine Homematic Schalter eingefügt. Funktioniert perfekt

    Bildschirmfoto 2020-02-07 um 17.08.10.png

      
    createState('16DieleOG.anzahlLichteran', {
        type: 'number',
        min: 0,
        def: 0,
        role: 'value'
    });
    
    var cacheSelectorState  = $('channel[state.id=*.STATE](functions="16DieleOGLicht")');
     
    function countLichter(obj) {
    
        var anzahlLichteran = 0;
    
        
        cacheSelectorState.each(function (id, i) {
            var status = getState(id).val;
            var obj    = getObject(id);
    
            if (status == true ) {
                 ++anzahlLichteran;
             }
    
        });
      
      
        setState("16DieleOG.anzahlLichteran", anzahlLichteran);
    
    }
     
    cacheSelectorState.on(function(obj) {
        countLichter(obj);
    });
    

    Das gleiche funktioniert auch mit einer Aufzählung für meine Hue Lampen.

    Bildschirmfoto 2020-02-07 um 17.08.01.png

     
    createState('99hue.anzahlLichteran', {
        type: 'number',
        min: 0,
        def: 0,
        role: 'value'
    });
    
    var cacheSelectorState  = $('channel[state.id=*.on](functions="99hue")');
     
    function countLichter(obj) {
    
        var anzahlLichteran = 0;
       
        cacheSelectorState.each(function (id, i) {
            var status = getState(id).val;
            var obj    = getObject(id);
    
            if (status == true ) {
                 ++anzahlLichteran;
             }
        });
        setState("99hue.anzahlLichteran", anzahlLichteran);
    }
    cacheSelectorState.on(function(obj) {
        countLichter(obj);
    });
    
    

    Und jetzt zu meinem Problem:
    Ich habe Räume in denen ich sowohl Hue- als auch Homematic-Lampen einsetzte. Gerne würde ich nur eine "gemischte" Aufzählung (Hue + Homematic) für jeden Raum erstellen und auch nur ein Skript verwenden.

    Soweit ich das verstehe, muss ich aber für Homematic auf Änderungen bei "*.STATE" reagieren

    Bildschirmfoto 2020-02-07 um 17.09.58.png

    Und bei Hue auf Änderungen bei "*.on".

    Bildschirmfoto 2020-02-07 um 17.11.48.png

    Und genau das bekomme ich leider nicht hin.

    Wie müsste ich meine Skripte anpassen, damit sie sowohl auf Änderungen der Hue-Lampen als auch der Homematic-Schalter reagieren?

    Vielen Dank für Eure Hilfe!

    dslraserD 1 Reply Last reply
    0
    • A asman-hm

      Hallo zusammen,

      ich habe es mit Hilfe der diversen Posts und Skriptbeispiele geschafft die eingeschaltenen Lichter in meinen Zimmern zu zählen.

      Ich selbst habe sehr wenig bis gar keine Ahnung von JavaSkript - ich habe einfach ein wenig experimentiert, bis es geklappt hat.

      Ich habe für jeden Raum eine Aufzählung erstellt und in diese meine Homematic Schalter eingefügt. Funktioniert perfekt

      Bildschirmfoto 2020-02-07 um 17.08.10.png

        
      createState('16DieleOG.anzahlLichteran', {
          type: 'number',
          min: 0,
          def: 0,
          role: 'value'
      });
      
      var cacheSelectorState  = $('channel[state.id=*.STATE](functions="16DieleOGLicht")');
       
      function countLichter(obj) {
      
          var anzahlLichteran = 0;
      
          
          cacheSelectorState.each(function (id, i) {
              var status = getState(id).val;
              var obj    = getObject(id);
      
              if (status == true ) {
                   ++anzahlLichteran;
               }
      
          });
        
        
          setState("16DieleOG.anzahlLichteran", anzahlLichteran);
      
      }
       
      cacheSelectorState.on(function(obj) {
          countLichter(obj);
      });
      

      Das gleiche funktioniert auch mit einer Aufzählung für meine Hue Lampen.

      Bildschirmfoto 2020-02-07 um 17.08.01.png

       
      createState('99hue.anzahlLichteran', {
          type: 'number',
          min: 0,
          def: 0,
          role: 'value'
      });
      
      var cacheSelectorState  = $('channel[state.id=*.on](functions="99hue")');
       
      function countLichter(obj) {
      
          var anzahlLichteran = 0;
         
          cacheSelectorState.each(function (id, i) {
              var status = getState(id).val;
              var obj    = getObject(id);
      
              if (status == true ) {
                   ++anzahlLichteran;
               }
          });
          setState("99hue.anzahlLichteran", anzahlLichteran);
      }
      cacheSelectorState.on(function(obj) {
          countLichter(obj);
      });
      
      

      Und jetzt zu meinem Problem:
      Ich habe Räume in denen ich sowohl Hue- als auch Homematic-Lampen einsetzte. Gerne würde ich nur eine "gemischte" Aufzählung (Hue + Homematic) für jeden Raum erstellen und auch nur ein Skript verwenden.

      Soweit ich das verstehe, muss ich aber für Homematic auf Änderungen bei "*.STATE" reagieren

      Bildschirmfoto 2020-02-07 um 17.09.58.png

      Und bei Hue auf Änderungen bei "*.on".

      Bildschirmfoto 2020-02-07 um 17.11.48.png

      Und genau das bekomme ich leider nicht hin.

      Wie müsste ich meine Skripte anpassen, damit sie sowohl auf Änderungen der Hue-Lampen als auch der Homematic-Schalter reagieren?

      Vielen Dank für Eure Hilfe!

      dslraserD Offline
      dslraserD Offline
      dslraser
      Forum Testing Most Active
      wrote on last edited by dslraser
      #2

      @asman-hm

      Schau mal in den Spoiler Licht zählen
      (ich habe die gleiche Mischung, HUE und HMIP Steckdosen)

      https://forum.iobroker.net/post/346230

      A 1 Reply Last reply
      1
      • dslraserD dslraser

        @asman-hm

        Schau mal in den Spoiler Licht zählen
        (ich habe die gleiche Mischung, HUE und HMIP Steckdosen)

        https://forum.iobroker.net/post/346230

        A Offline
        A Offline
        asman-hm
        wrote on last edited by
        #3

        @dslraser
        Vielen Dank! Hab den Spoiler eben überflogen - bin total überfordert.

        Ich seh es mir heute Abend im Detail an, vll. komme ich damit klar. Hoffe ich darf mich nochmal melden wenn ich scheitere.

        dslraserD 1 Reply Last reply
        0
        • A asman-hm

          @dslraser
          Vielen Dank! Hab den Spoiler eben überflogen - bin total überfordert.

          Ich seh es mir heute Abend im Detail an, vll. komme ich damit klar. Hoffe ich darf mich nochmal melden wenn ich scheitere.

          dslraserD Offline
          dslraserD Offline
          dslraser
          Forum Testing Most Active
          wrote on last edited by
          #4

          @asman-hm sagte in Lichter zählen (die hundertste) - Homematic und Hue?:

          Hoffe ich darf mich nochmal melden wenn ich scheitere.

          Na klar.

          A 1 Reply Last reply
          0
          • dslraserD dslraser

            @asman-hm sagte in Lichter zählen (die hundertste) - Homematic und Hue?:

            Hoffe ich darf mich nochmal melden wenn ich scheitere.

            Na klar.

            A Offline
            A Offline
            asman-hm
            wrote on last edited by
            #5

            @dslraser

            Ich habe ein paar Blöcke gelöscht und diverse Variablen- und Listennamen angepasst und jetzt funktioniert es!

            Ich verstehe zwar noch nicht genau wieso es funktioniert, aber das bekomme ich vll. auch noch hin.

            Tausend Dank!!

            1 Reply Last reply
            1

            Hello! It looks like you're interested in this conversation, but you don't have an account yet.

            Getting fed up of having to scroll through the same posts each visit? When you register for an account, you'll always come back to exactly where you were before, and choose to be notified of new replies (either via email, or push notification). You'll also be able to save bookmarks and upvote posts to show your appreciation to other community members.

            With your input, this post could be even better 💗

            Register Login
            Reply
            • Reply as topic
            Log in to reply
            • Oldest to Newest
            • Newest to Oldest
            • Most Votes


            Support us

            ioBroker
            Community Adapters
            Donate

            491

            Online

            32.8k

            Users

            82.7k

            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