Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. [Frage]Aufzählungen/Gewerke STATES nicht CHANNELS abfragen

    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

    [Frage]Aufzählungen/Gewerke STATES nicht CHANNELS abfragen

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

      Hallo,

      im Skript zum Zählen der eingeschalteten Lichter http://forum.iobroker.net/viewtopic.php … 79c1#p6625 frage ich alle dem Gewerk Licht zugeordneten Channels mit der State.id STATE oder LEVEL ab````
      var cacheSelectorState = $('channelstate.id=*.STATE'); // Gewerk Licht
      var cacheSelectorLevel = $('channelstate.id=*.LEVEL');

      Diese werden dann später im Skript überwacht und bei Änderung zu true bzw. >0% gezählt. Soweit klar.
      
      Ich nutze nun für die Steuerung meines Lichtes bei vielen Dimmern (wenn vorhanden) die virtuellen Kanäle. Da kann es durchaus vorkommen, dass einer der Kanäle 1-3 einen LEVEL Datenpunkt hat, der auf über 0% steht und das Licht wegen der Verknüpfungsregeln trotzdem aus ist. Für genau diesen Fall gibt es ja den Datenpunkt LEVEL_REAL. Der zeigt über alle Kanäle den gleichen Wert und zwar die wirkliche Helligkeit der angeschlossenen Leuchtmittel, level real eben :-D
      
      Da liegt es nahe, diesen Datenpunkt im Lichter-zählen-Skript abzufragen. Das geht ja auch sehr leicht analog zu obigen Code mit````
      var cacheSelectorLevelReal = $('channel[state.id=*.LEVEL_REAL](functions="Licht")');
      

      Problem: Alle Dimmer, die einen LEVEL_REAL Datenpunkt haben, haben natürlich auch drei LEVEL Datenpunkte und werden daher mehrfach gezählt.

      Ich habe versucht, das zu umgehen. Ich habe im Reiter Aufzählungen eine neue Aufzählung/Gewerk "countLights" angelegt und nur jeweils die relevanten Datenpunkte der Geräte zugeordnet (Schalter -> STATE, alte Dimmer ohne virtuelle Kanäle -> LEVEL, neue Dimmer mit virtuellen Kanälen LEVEL_REAL).
      261_bildschirmfoto_2017-11-12_um_14.06.18.jpg
      Den Code geändert:

      var cacheSelectorState = $('channel[state.id=*.STATE](functions="countLights")'); // Gewerk countLights
      var cacheSelectorLevel = $('channel[state.id=*.LEVEL](functions="countLights")'); 
      var cacheSelectorLevelReal = $('channel[state.id=*.LEVEL_REAL](functions="countLights")');
      
      

      Funktioniert nicht.

      Beim Vergleich mit der dem Homematic-Gewerk Licht fällt mir auf, dass in dieser Aufzählung die Kanäle gelistet sind, nicht die States.
      261_bildschirmfoto_2017-11-12_um_14.06.35.jpg

      Frage: Wie muss ich den Selektor abändern, damit die States durchgezählt werden?

      Gruß

      Pix

      1 Reply Last reply Reply Quote 0
      • T
        tempestas last edited by

        kommt mir vor wie meine Hue Versuche. Da hat er auch immer alles gedoppelt, egal ob ich nur in einigen Bereichen als function "Hue" eingetragen hatte.

        Lösung habe ich leider nicht gefunden (bzw ich habe manuell ein Array erstellt)

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

          > Frage: Wie muss ich den Selektor abändern, damit die States durchgezählt werden?

          Das würde mich auch interessieren! Wenn nämlich die Datem aus einer CCU übernommen werden, dann werden in den Gewerken (also den enum.functions) die Einträge als "channels" und nicht als "states" eingetragen. Manuell habe ich dazu aber noch keine Möglichkeit gefunden. Weiß hier jemand Abhilfe?

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

          Support us

          ioBroker
          Community Adapters
          Donate

          576
          Online

          31.9k
          Users

          80.2k
          Topics

          1.3m
          Posts

          3
          3
          732
          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