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. [Vorlage] LightControl

NEWS

  • UPDATE 31.10.: Amazon Alexa - ioBroker Skill läuft aus ?
    apollon77A
    apollon77
    48
    3
    8.6k

  • Monatsrückblick – September 2025
    BluefoxB
    Bluefox
    13
    1
    2.1k

  • Neues Video "KI im Smart Home" - ioBroker plus n8n
    BluefoxB
    Bluefox
    16
    1
    2.9k

[Vorlage] LightControl

Geplant Angeheftet Gesperrt Verschoben JavaScript
javascripttemplate
224 Beiträge 25 Kommentatoren 38.2k Aufrufe 36 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.
  • P Pittini

    @denis1988 sagte in [Vorlage] LightControl:

    @cino meine Lampe kann durchaus 2100 K. In javascript.0.LightControl2.0.ct wird auch nur der Wert von 2700K geschrieben und nicht tiefer. wenn ich manuell 2100K reinschreibe wird die Lampe auch mit 2100K geschalten. Nur das Skript macht das scheinbar nicht bei mir

    Hast Du auch minVal, maxVal für ct entsprechend bei der Lampe konfiguriert?

    D Offline
    D Offline
    Denis1988
    schrieb am zuletzt editiert von
    #140

    @pittini ja hab ich. Denke du meinst das hier:

    const LightGroups = {
        0:  {
            description: "Büro Denis",
            lights: {
                0: {
                    description: "Tischlampe",
                    power: { oid: "hue.1.Schreibtischlampe_Denis.on"/*Schreibtischlampe Denis on*/, onVal: true, offVal: false },
                    bri: { oid: "hue.1.Schreibtischlampe_Denis.level"/*Schreibtischlampe Denis level*/, minVal: 0, maxVal: 100, defaultVal: 100 },
                    ct: { oid: "hue.1.Schreibtischlampe_Denis.ct"/*Schreibtischlampe Denis ct*/, minVal: 2100, maxVal: 6500 },
                    sat: { oid: "", minVal: null, maxVal: null },
                    modeswitch: { oid: "", whiteModeVal: false, colorModeVal: true },
                    color: { oid: "", type: "", default: "" }
                }
    
    P 2 Antworten Letzte Antwort
    0
    • D Denis1988

      @pittini ja hab ich. Denke du meinst das hier:

      const LightGroups = {
          0:  {
              description: "Büro Denis",
              lights: {
                  0: {
                      description: "Tischlampe",
                      power: { oid: "hue.1.Schreibtischlampe_Denis.on"/*Schreibtischlampe Denis on*/, onVal: true, offVal: false },
                      bri: { oid: "hue.1.Schreibtischlampe_Denis.level"/*Schreibtischlampe Denis level*/, minVal: 0, maxVal: 100, defaultVal: 100 },
                      ct: { oid: "hue.1.Schreibtischlampe_Denis.ct"/*Schreibtischlampe Denis ct*/, minVal: 2100, maxVal: 6500 },
                      sat: { oid: "", minVal: null, maxVal: null },
                      modeswitch: { oid: "", whiteModeVal: false, colorModeVal: true },
                      color: { oid: "", type: "", default: "" }
                  }
      
      P Offline
      P Offline
      Pittini
      Developer
      schrieb am zuletzt editiert von
      #141

      @denis1988 Ja, genau das meinte ich. Das passt soweit auch. Müßte dann auch gesetzt werden so, ich schau mal ob da noch nen Problem ist, meld mich dann.

      1 Antwort Letzte Antwort
      0
      • D Denis1988

        @pittini ja hab ich. Denke du meinst das hier:

        const LightGroups = {
            0:  {
                description: "Büro Denis",
                lights: {
                    0: {
                        description: "Tischlampe",
                        power: { oid: "hue.1.Schreibtischlampe_Denis.on"/*Schreibtischlampe Denis on*/, onVal: true, offVal: false },
                        bri: { oid: "hue.1.Schreibtischlampe_Denis.level"/*Schreibtischlampe Denis level*/, minVal: 0, maxVal: 100, defaultVal: 100 },
                        ct: { oid: "hue.1.Schreibtischlampe_Denis.ct"/*Schreibtischlampe Denis ct*/, minVal: 2100, maxVal: 6500 },
                        sat: { oid: "", minVal: null, maxVal: null },
                        modeswitch: { oid: "", whiteModeVal: false, colorModeVal: true },
                        color: { oid: "", type: "", default: "" }
                    }
        
        P Offline
        P Offline
        Pittini
        Developer
        schrieb am zuletzt editiert von
        #142

        @denis1988 So, hier die versprochene Meldung. Ja, das ist/war noch ein Bug chen. Ist in der nächsten Version gefixt, bis dahin ist der Workaround: Zeile 392, min von 2700 auf 2100 ändern. Alle ct Datenpunkte löschen und skript neustarten.

        D 2 Antworten Letzte Antwort
        0
        • P Pittini

          @denis1988 So, hier die versprochene Meldung. Ja, das ist/war noch ein Bug chen. Ist in der nächsten Version gefixt, bis dahin ist der Workaround: Zeile 392, min von 2700 auf 2100 ändern. Alle ct Datenpunkte löschen und skript neustarten.

          D Offline
          D Offline
          Denis1988
          schrieb am zuletzt editiert von
          #143

          @pittini super vielen Dank werde ich später ausprobieren und Rückmeldung geben.

          Ist es auch möglich, dass bei Aktualisierung des Bewegungsstatuses, die Lampe geschaltet wird? Zur Zeit funktioniert es bei mir nur bei Änderung von false auf true. Bei mir ist es zur Zeit wie folgt:
          wenn ich schon vorher, bevor die mindest Helligkeit unterschritten wurde im Raum bin und dann erst die Helligkeit unterschritten wird, schaltet die Lame erst ein wenn ich den Raum verlasse, warte bis der Bewegungsmelder auf false springt, und dann wieder den Erfassungsbereich betrete.

          Vielen Dank für deine tolle Arbeit!!

          SchmakusS 1 Antwort Letzte Antwort
          0
          • SchmakusS Offline
            SchmakusS Offline
            Schmakus
            Developer
            schrieb am zuletzt editiert von Schmakus
            #144

            Hi,
            Ich habe LightControl2 installiert und erste Tests durchgeführt.
            Folgende Fragen habe ich hierzu:

            1. Welche Helligkeit wird gesetzt, wenn das Putzlicht eingeschaltet wird? Aktuell stelle ich fest, dass hier der aktuelle Brighness-Wert verwendet wird. Wäre es möglich, den Default-Wert zu verwenden? Evtl. sogar wählbar?

            2. Zum Thema Putzlicht hätte ich noch eine Idee: Ein AutoOff, damit wenn man das Putzlicht einschaltet, dieses nach einer bestimmten Zeit wieder deaktiviert wird. Weil wenn dies vergessen wird, brennt im schlechtesten Fall das Licht die ganze Zeit. On Top: durch die BWM wird das AutoOff jedesmal zurückgesetzt.

            3. Wenn ich das Putzlicht einschalte, kann ich die Helligkeit nachträglich nicht über den Datenpunkt "bri" verändern.
              Ich muss gleichzeitig "power" ebenfalls aktivieren. Ist das so gewollt oder ein Bug? Wünschenswert wäre, die Helligkeit unabhängig vom Datenpunkt "power" ändern zu können.

            4. all.power: Werden bei aktivierung von all.power die vorherigen Zustände zwischengespeichert, damit beim Deaktivieren von all.power die Lichter in Ihren Ursprungszustand zurückgehen? Wenn nicht, wäre das ein tolles Feature.

            Danke und Grüße

            Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

            P 1 Antwort Letzte Antwort
            0
            • P Pittini

              Thread zum Skript LightControl: https://github.com/Pittini/iobroker-LightControl

              iobroker-LightControl - ALPHAVERSION

              Lichtsteuerung für Leuchtmittel unterschiedlicher Hersteller

              Features

              • Gruppierung beliebig vieler Lampen/Leuchtmittel
              • Verwendung gemischter Lampen/Farbsystemen und Umrechnung der Farbsysteme (Hex,Rgb,Hsl,Xy)
              • Möglichkeit der Zuweisung von defaultwerten zu jedem Leuchtmittel
              • Ramping (langsame Änderung der Helligkeit bis Zielwert) für on und off
              • AutoOff nach Zeit / Kein off bei Bewegung
              • AutoOn bei Bewegung
              • Override on (Putzlicht)
              • Adaptive Helligkeit
              • Adaptive Farbtemperatur
              sigi234S Online
              sigi234S Online
              sigi234
              Forum Testing Most Active
              schrieb am zuletzt editiert von sigi234
              #145

              @pittini

              Hallo,

              kann es nicht installieren? Code 25

              host.MedionHome)
              2021-11-24 14:39:20.801	error	host.Medion(Home) iobroker host.Medion(Home) Cannot install Pittini/iobroker-LightControl#c5720a05c924bbdda8da2e0e0af76bdff4626a2b: 1
              host.MedionHome)
              2021-11-24 14:39:20.762	info	host.Medion(Home) iobroker npm ERR! A complete log of this run can be found in: npm ERR! C:\Program Files\iobroker\Home\env\npm-cache\_logs\2021-11-24T13_39_20_728Z-debug.log
              host.MedionHome)
              2021-11-24 14:39:20.761	info	host.Medion(Home) iobroker
              host.MedionHome)
              2021-11-24 14:39:20.728	info	host.Medion(Home) iobroker npm ERR! premature close
              host.MedionHome)
              2021-11-24 14:39:09.780	info	host.Medion(Home) iobroker npm install Pittini/iobroker-LightControl#c5720a05c924bbdda8da2e0e0af76bdff4626a2b --loglevel error (System call)
              host.MedionHome)
              2021-11-24 14:39:09.778	info	host.Medion(Home) iobroker NPM version: 6.14.15
              host.MedionHome)
              2021-11-24 14:39:08.541	info	host.Medion(Home) iobroker install Pittini/iobroker-LightControl#c5720a05c924bbdda8da2e0e0af76bdff4626a2b
              
              

              Plattform: Windows
              RAM: 16 GB
              Node.js: 14.18.1
              NPM: 6.14.15
              JS Controller: 3.3.19
              Admin: 5.1.28
              Web: 3.4.16
              Socket.io: 3.1.4
              Script Engine: 5.2.16

              ERLEDIGT, ist ja ein Skript.

              Bitte benutzt das Voting rechts unten im Beitrag wenn er euch geholfen hat.
              Immer Daten sichern!

              SchmakusS 1 Antwort Letzte Antwort
              0
              • sigi234S sigi234

                @pittini

                Hallo,

                kann es nicht installieren? Code 25

                host.MedionHome)
                2021-11-24 14:39:20.801	error	host.Medion(Home) iobroker host.Medion(Home) Cannot install Pittini/iobroker-LightControl#c5720a05c924bbdda8da2e0e0af76bdff4626a2b: 1
                host.MedionHome)
                2021-11-24 14:39:20.762	info	host.Medion(Home) iobroker npm ERR! A complete log of this run can be found in: npm ERR! C:\Program Files\iobroker\Home\env\npm-cache\_logs\2021-11-24T13_39_20_728Z-debug.log
                host.MedionHome)
                2021-11-24 14:39:20.761	info	host.Medion(Home) iobroker
                host.MedionHome)
                2021-11-24 14:39:20.728	info	host.Medion(Home) iobroker npm ERR! premature close
                host.MedionHome)
                2021-11-24 14:39:09.780	info	host.Medion(Home) iobroker npm install Pittini/iobroker-LightControl#c5720a05c924bbdda8da2e0e0af76bdff4626a2b --loglevel error (System call)
                host.MedionHome)
                2021-11-24 14:39:09.778	info	host.Medion(Home) iobroker NPM version: 6.14.15
                host.MedionHome)
                2021-11-24 14:39:08.541	info	host.Medion(Home) iobroker install Pittini/iobroker-LightControl#c5720a05c924bbdda8da2e0e0af76bdff4626a2b
                
                

                Plattform: Windows
                RAM: 16 GB
                Node.js: 14.18.1
                NPM: 6.14.15
                JS Controller: 3.3.19
                Admin: 5.1.28
                Web: 3.4.16
                Socket.io: 3.1.4
                Script Engine: 5.2.16

                ERLEDIGT, ist ja ein Skript.

                SchmakusS Offline
                SchmakusS Offline
                Schmakus
                Developer
                schrieb am zuletzt editiert von
                #146

                @sigi234 Es handelt sich um ein Javascript, kein Adapter! Installation erfolgt, indem du ein neues JS-Script erstellst und dir den Code aus der Datei "LichtControl.js" auf Github kopierst und in dein Script einfügst.

                Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                1 Antwort Letzte Antwort
                0
                • D Denis1988

                  @pittini super vielen Dank werde ich später ausprobieren und Rückmeldung geben.

                  Ist es auch möglich, dass bei Aktualisierung des Bewegungsstatuses, die Lampe geschaltet wird? Zur Zeit funktioniert es bei mir nur bei Änderung von false auf true. Bei mir ist es zur Zeit wie folgt:
                  wenn ich schon vorher, bevor die mindest Helligkeit unterschritten wurde im Raum bin und dann erst die Helligkeit unterschritten wird, schaltet die Lame erst ein wenn ich den Raum verlasse, warte bis der Bewegungsmelder auf false springt, und dann wieder den Erfassungsbereich betrete.

                  Vielen Dank für deine tolle Arbeit!!

                  SchmakusS Offline
                  SchmakusS Offline
                  Schmakus
                  Developer
                  schrieb am zuletzt editiert von Schmakus
                  #147

                  EDIT: Mein Vorschlag kann verworfen werden. Hab den falschen Trigger angenommen.
                  EDIT: @Pittini: Das ist doch der Trigger für den BWM?, wenn ja, dann wäre mein Vorschlag wieder aktuell.

                  @denis1988 said in [Vorlage] LightControl:

                  @pittini super vielen Dank werde ich später ausprobieren und Rückmeldung geben.

                  Ist es auch möglich, dass bei Aktualisierung des Bewegungsstatuses, die Lampe geschaltet wird? Zur Zeit funktioniert es bei mir nur bei Änderung von false auf true. Bei mir ist es zur Zeit wie folgt:
                  wenn ich schon vorher, bevor die mindest Helligkeit unterschritten wurde im Raum bin und dann erst die Helligkeit unterschritten wird, schaltet die Lame erst ein wenn ich den Raum verlasse, warte bis der Bewegungsmelder auf false springt, und dann wieder den Erfassungsbereich betrete.

                  Vielen Dank für deine tolle Arbeit!!

                  @Pittini Das müsste doch gehen, indem der Trigger auf change: "any" anstatt "ne" geändert wird, oder? Hätte das noch irgendwelche Auswirkungen auf das restliche Script?

                          //Trigger für Dp Inhalt erzeugen wenn nicht leer
                          if (LightGroups[Group].sensors[sensorCount].id != "") {
                              on({ id: LightGroups[Group].sensors[sensorCount].id, change: "ne", ack: true }, function (dp) { //Trigger erstellen für eingetragenen Sensor
                                  if (logging) log("Triggered linked Sensor " + dp.id + " new value is " + dp.state.val);
                                  if (dp.state.val == LightGroups[Group].sensors[sensorCount].motionVal) {//Inhalt lesen und neues Property anlegen und füllen
                                      LightGroups[Group].sensors[sensorCount].isMotion = true;
                                  } else {
                                      LightGroups[Group].sensors[sensorCount].isMotion = false;
                                  };
                                  SummarizeSensors(Group);
                              });
                          } 
                  

                  Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                  1 Antwort Letzte Antwort
                  0
                  • SchmakusS Schmakus

                    Hi,
                    Ich habe LightControl2 installiert und erste Tests durchgeführt.
                    Folgende Fragen habe ich hierzu:

                    1. Welche Helligkeit wird gesetzt, wenn das Putzlicht eingeschaltet wird? Aktuell stelle ich fest, dass hier der aktuelle Brighness-Wert verwendet wird. Wäre es möglich, den Default-Wert zu verwenden? Evtl. sogar wählbar?

                    2. Zum Thema Putzlicht hätte ich noch eine Idee: Ein AutoOff, damit wenn man das Putzlicht einschaltet, dieses nach einer bestimmten Zeit wieder deaktiviert wird. Weil wenn dies vergessen wird, brennt im schlechtesten Fall das Licht die ganze Zeit. On Top: durch die BWM wird das AutoOff jedesmal zurückgesetzt.

                    3. Wenn ich das Putzlicht einschalte, kann ich die Helligkeit nachträglich nicht über den Datenpunkt "bri" verändern.
                      Ich muss gleichzeitig "power" ebenfalls aktivieren. Ist das so gewollt oder ein Bug? Wünschenswert wäre, die Helligkeit unabhängig vom Datenpunkt "power" ändern zu können.

                    4. all.power: Werden bei aktivierung von all.power die vorherigen Zustände zwischengespeichert, damit beim Deaktivieren von all.power die Lichter in Ihren Ursprungszustand zurückgehen? Wenn nicht, wäre das ein tolles Feature.

                    Danke und Grüße

                    P Offline
                    P Offline
                    Pittini
                    Developer
                    schrieb am zuletzt editiert von
                    #148

                    @schmakus sagte in [Vorlage] LightControl:

                    Hi,
                    Ich habe LightControl2 installiert und erste Tests durchgeführt.
                    Folgende Fragen habe ich hierzu:

                    1. Welche Helligkeit wird gesetzt, wenn das Putzlicht eingeschaltet wird? Aktuell stelle ich fest, dass hier der aktuelle Brighness-Wert verwendet wird. Wäre es möglich, den Default-Wert zu verwenden? Evtl. sogar wählbar?

                    Es soll die max. Helligkeit verwendet werden. Möglich wär alles, aber den default zu nehmen führt den Sinn des Putzlichtes ad absurdum. Dieses soll frei von allen Automatiken weißes Licht zur Raumreinigung haben.

                    1. Zum Thema Putzlicht hätte ich noch eine Idee: Ein AutoOff, damit wenn man das Putzlicht einschaltet, dieses nach einer bestimmten Zeit wieder deaktiviert wird. Weil wenn dies vergessen wird, brennt im schlechtesten Fall das Licht die ganze Zeit. On Top: durch die BWM wird das AutoOff jedesmal zurückgesetzt.

                    Siehe Antwort oben, keine Automatiken. Wenn die Putzfrau mal länger braucht soll se ja nich im dunkeln stehen.

                    1. Wenn ich das Putzlicht einschalte, kann ich die Helligkeit nachträglich nicht über den Datenpunkt "bri" verändern.
                      Ich muss gleichzeitig "power" ebenfalls aktivieren. Ist das so gewollt oder ein Bug? Wünschenswert wäre, die Helligkeit unabhängig vom Datenpunkt "power" ändern zu können.

                    Siehe Antwort oben.Die Helligkeit sollte überhaupt nicht eingestellt werden können beim Putzlicht, das steht völlig außerhalb des Systems

                    1. all.power: Werden bei aktivierung von all.power die vorherigen Zustände zwischengespeichert, damit beim Deaktivieren von all.power die Lichter in Ihren Ursprungszustand zurückgehen? Wenn nicht, wäre das ein tolles Feature.

                    Nein, aktuell wird da nix gespeichert. Die Funktion kam gestern erst dazu, da kann sich noch was ändern und das speichern wär diskutabel, würde aber den angedachten Sinn der Funktion etwas ändern. Ich hab das reingebaut weil wir hier öfters mal kleine Stromausfälle haben, danach sind alle smarten Lampen im Haus an, weil die das automatisch so machen. Das System weis aber nicht dass die an sind, deswegen will ich eben sagen können all.power aus und gut is..

                    SchmakusS 1 Antwort Letzte Antwort
                    0
                    • P Pittini

                      @denis1988 So, hier die versprochene Meldung. Ja, das ist/war noch ein Bug chen. Ist in der nächsten Version gefixt, bis dahin ist der Workaround: Zeile 392, min von 2700 auf 2100 ändern. Alle ct Datenpunkte löschen und skript neustarten.

                      D Offline
                      D Offline
                      Denis1988
                      schrieb am zuletzt editiert von
                      #149

                      @pittini kann die Zeile leider nicht finden, weder in deinem Skript noch bei mir bei V.2.0.14

                      P 1 Antwort Letzte Antwort
                      0
                      • D Denis1988

                        @pittini kann die Zeile leider nicht finden, weder in deinem Skript noch bei mir bei V.2.0.14

                        P Offline
                        P Offline
                        Pittini
                        Developer
                        schrieb am zuletzt editiert von
                        #150

                        @denis1988 Na dann nimm doch einfach die aktuelle 2.0.15, da is der fix ja schon drin. Die ct Datenpunkte mußt trotzdem löschen, damit die neu angelegt werden können.

                        1 Antwort Letzte Antwort
                        0
                        • P Pittini

                          @schmakus sagte in [Vorlage] LightControl:

                          Hi,
                          Ich habe LightControl2 installiert und erste Tests durchgeführt.
                          Folgende Fragen habe ich hierzu:

                          1. Welche Helligkeit wird gesetzt, wenn das Putzlicht eingeschaltet wird? Aktuell stelle ich fest, dass hier der aktuelle Brighness-Wert verwendet wird. Wäre es möglich, den Default-Wert zu verwenden? Evtl. sogar wählbar?

                          Es soll die max. Helligkeit verwendet werden. Möglich wär alles, aber den default zu nehmen führt den Sinn des Putzlichtes ad absurdum. Dieses soll frei von allen Automatiken weißes Licht zur Raumreinigung haben.

                          1. Zum Thema Putzlicht hätte ich noch eine Idee: Ein AutoOff, damit wenn man das Putzlicht einschaltet, dieses nach einer bestimmten Zeit wieder deaktiviert wird. Weil wenn dies vergessen wird, brennt im schlechtesten Fall das Licht die ganze Zeit. On Top: durch die BWM wird das AutoOff jedesmal zurückgesetzt.

                          Siehe Antwort oben, keine Automatiken. Wenn die Putzfrau mal länger braucht soll se ja nich im dunkeln stehen.

                          1. Wenn ich das Putzlicht einschalte, kann ich die Helligkeit nachträglich nicht über den Datenpunkt "bri" verändern.
                            Ich muss gleichzeitig "power" ebenfalls aktivieren. Ist das so gewollt oder ein Bug? Wünschenswert wäre, die Helligkeit unabhängig vom Datenpunkt "power" ändern zu können.

                          Siehe Antwort oben.Die Helligkeit sollte überhaupt nicht eingestellt werden können beim Putzlicht, das steht völlig außerhalb des Systems

                          1. all.power: Werden bei aktivierung von all.power die vorherigen Zustände zwischengespeichert, damit beim Deaktivieren von all.power die Lichter in Ihren Ursprungszustand zurückgehen? Wenn nicht, wäre das ein tolles Feature.

                          Nein, aktuell wird da nix gespeichert. Die Funktion kam gestern erst dazu, da kann sich noch was ändern und das speichern wär diskutabel, würde aber den angedachten Sinn der Funktion etwas ändern. Ich hab das reingebaut weil wir hier öfters mal kleine Stromausfälle haben, danach sind alle smarten Lampen im Haus an, weil die das automatisch so machen. Das System weis aber nicht dass die an sind, deswegen will ich eben sagen können all.power aus und gut is..

                          SchmakusS Offline
                          SchmakusS Offline
                          Schmakus
                          Developer
                          schrieb am zuletzt editiert von
                          #151

                          @pittini said in [Vorlage] LightControl:

                          Es soll die max. Helligkeit verwendet werden. Möglich wär alles, aber den default zu nehmen führt den Sinn des Putzlichtes ad absurdum. Dieses soll frei von allen Automatiken weißes Licht zur Raumreinigung haben.

                          Siehe Antwort oben, keine Automatiken. Wenn die Putzfrau mal länger braucht soll se ja nich im dunkeln stehen.

                          Ok, Deshalb ja mein Vorschlag, das AutoOff des Putzlichts zurückzusetzen, sofern Bewegung erkannt. Aber dann muss ich selbst einen Timer setzen, wenn ich das Putzlicht aktiviere. Bei uns kommt es öfters vor, dass meine Frau das Licht per Taster einschaltet, jedoch vergisst, es wieder auszuschalten, weil wir ja eigentlich BWMs haben und das Licht i.d.R. von alleine wieder ausgeht.

                          Siehe Antwort oben.Die Helligkeit sollte überhaupt nicht eingestellt werden können beim Putzlicht, das steht völlig außerhalb des Systems

                          Ok, dann werde ich die Funktion des Putzlichts so nicht nutzen. Mein Gedanke ist, dass ich ein Licht auf Dauer-Ein schalten möchte, wenn z.B. Gäste im Haus. Aber dann muss ich als Workaround bei mir dein vorhandenes AutoOff einfach deaktivieren, wenn ich das Licht per Taster einschalte und wieder aktivieren, wenn ich per Taster ausschalte.

                          Nein, aktuell wird da nix gespeichert. Die Funktion kam gestern erst dazu, da kann sich noch was ändern und das speichern wär diskutabel, würde aber den angedachten Sinn der Funktion etwas ändern. Ich hab das reingebaut weil wir hier öfters mal kleine Stromausfälle haben, danach sind alle smarten Lampen im Haus an, weil die das automatisch so machen. Das System weis aber nicht dass die an sind, deswegen will ich eben sagen können all.power aus und gut is.

                          Ja, diesen Fall hatte ich auch schon. Mir gehts es z.B. darum, dass ich "all.Power" mit meiner Alarmanlage oder Rauchmelder verknüpfe. Wenn der Alarm dann zurückgesetzt wird, sollen alle Lampen wieder in den Zustand, welchen sie vor dem Alarm hatten. Aber das ist wirklich nice to have.

                          Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                          P 1 Antwort Letzte Antwort
                          0
                          • SchmakusS Schmakus

                            @pittini said in [Vorlage] LightControl:

                            Es soll die max. Helligkeit verwendet werden. Möglich wär alles, aber den default zu nehmen führt den Sinn des Putzlichtes ad absurdum. Dieses soll frei von allen Automatiken weißes Licht zur Raumreinigung haben.

                            Siehe Antwort oben, keine Automatiken. Wenn die Putzfrau mal länger braucht soll se ja nich im dunkeln stehen.

                            Ok, Deshalb ja mein Vorschlag, das AutoOff des Putzlichts zurückzusetzen, sofern Bewegung erkannt. Aber dann muss ich selbst einen Timer setzen, wenn ich das Putzlicht aktiviere. Bei uns kommt es öfters vor, dass meine Frau das Licht per Taster einschaltet, jedoch vergisst, es wieder auszuschalten, weil wir ja eigentlich BWMs haben und das Licht i.d.R. von alleine wieder ausgeht.

                            Siehe Antwort oben.Die Helligkeit sollte überhaupt nicht eingestellt werden können beim Putzlicht, das steht völlig außerhalb des Systems

                            Ok, dann werde ich die Funktion des Putzlichts so nicht nutzen. Mein Gedanke ist, dass ich ein Licht auf Dauer-Ein schalten möchte, wenn z.B. Gäste im Haus. Aber dann muss ich als Workaround bei mir dein vorhandenes AutoOff einfach deaktivieren, wenn ich das Licht per Taster einschalte und wieder aktivieren, wenn ich per Taster ausschalte.

                            Nein, aktuell wird da nix gespeichert. Die Funktion kam gestern erst dazu, da kann sich noch was ändern und das speichern wär diskutabel, würde aber den angedachten Sinn der Funktion etwas ändern. Ich hab das reingebaut weil wir hier öfters mal kleine Stromausfälle haben, danach sind alle smarten Lampen im Haus an, weil die das automatisch so machen. Das System weis aber nicht dass die an sind, deswegen will ich eben sagen können all.power aus und gut is.

                            Ja, diesen Fall hatte ich auch schon. Mir gehts es z.B. darum, dass ich "all.Power" mit meiner Alarmanlage oder Rauchmelder verknüpfe. Wenn der Alarm dann zurückgesetzt wird, sollen alle Lampen wieder in den Zustand, welchen sie vor dem Alarm hatten. Aber das ist wirklich nice to have.

                            P Offline
                            P Offline
                            Pittini
                            Developer
                            schrieb am zuletzt editiert von Pittini
                            #152

                            @schmakus sagte in [Vorlage] LightControl:

                            Ja, diesen Fall hatte ich auch schon. Mir gehts es z.B. darum, dass ich "all.Power" mit meiner Alarmanlage oder Rauchmelder verknüpfe. Wenn der Alarm dann zurückgesetzt wird, sollen alle Lampen wieder in den Zustand, welchen sie vor dem Alarm hatten. Aber das ist wirklich nice to have.

                            Dafür hab ich das blink in jeder Gruppe, das speichert auch den vorherigen Zustand. Wär evtl. ne Überlegung nochn all.blink zu machen.

                            Ok, dann werde ich die Funktion des Putzlichts so nicht nutzen. Mein Gedanke ist, dass ich ein Licht auf Dauer-Ein schalten möchte, wenn z.B. Gäste im Haus.

                            Es heisst ja Putzlicht und nicht Gästelicht und ist eben wirklich nur zum putzen gedacht.

                            SchmakusS 1 Antwort Letzte Antwort
                            0
                            • SchmakusS Offline
                              SchmakusS Offline
                              Schmakus
                              Developer
                              schrieb am zuletzt editiert von Schmakus
                              #153

                              @Pittini
                              Ich bekomme eine Fehler im Javascript. Dieser Fehler führt sporadisch zum Neustart der Instanz und macht das Script extrem langsam.
                              Version: 2.0.15
                              js-controller: 3.3.18
                              Node-js: 12.22.6

                              Bildschirmfoto 2021-11-26 um 09.14.31.png

                              Hier die Zeilen 1085 - 1121 aus dem Script:

                              /* ------------------------- FUNCTIONS FOR Switching Off --------------------------------- */
                              
                              async function AutoOffLux(Group) {//Handling für AutoOffLux
                                  if (logging) log("Reaching AutoOffLux, for Group=" + Group + " =" + LightGroups[Group].description)
                              
                                  if (LightGroups[Group].autoOffLux.operator == "<" && LightGroups[Group].actualLux < LightGroups[Group].autoOffLux.minLux && LightGroups[Group].autoOffLux.enabled && LightGroups[Group].power && !LightGroups[Group].autoOffLux.dailyLock) {
                                      GroupPowerOnOff(Group, false);
                                      LightGroups[Group].autoOffLux.dailyLock = true;
                                      await setStateAsync(praefix + "." + Group + ".autoOffLux.dailyLock", true, true);
                                  } else if (LightGroups[Group].autoOffLux.operator == ">" && LightGroups[Group].actualLux > LightGroups[Group].autoOffLux.minLux && LightGroups[Group].autoOffLux.enabled && LightGroups[Group].power && !LightGroups[Group].autoOffLux.dailyLock) {
                                      GroupPowerOnOff(Group, false);
                                      LightGroups[Group].autoOffLux.dailyLock = true;
                                      await setStateAsync(praefix + "." + Group + ".autoOffLux.dailyLock", true, true);
                                  };
                              
                                  if (LightGroups[Group].autoOffLux.operator == "<") { //DailyLock resetten
                                      if (LightGroups[Group].actualLux > LightGroups[Group].autoOffLux.minLux && LightGroups[Group].autoOffLux.dailyLock) {
                                          LightGroups[Group].autoOffLux.dailyLockCounter++;
                                          if (LightGroups[Group].autoOffLux.dailyLockCounter >= 5) {
                                              LightGroups[Group].autoOffLux.dailyLock = false;
                                              await setStateAsync(praefix + "." + Group + ".autoOffLux.dailyLock", false, true);
                                              LightGroups[Group].autoOffLux.dailyLockCounter = 0;
                                          };
                                      };
                                  } else if (LightGroups[Group].autoOffLux.operator == ">") {
                                      if (LightGroups[Group].actualLux < LightGroups[Group].autoOffLux.minLux && LightGroups[Group].autoOffLux.dailyLock) {
                                          LightGroups[Group].autoOfLux.dailyLockCounter++;
                                          if (LightGroups[Group].autoOnLux.dailyLockCounter >= 5) {
                              
                              
                                              LightGroups[Group].autoOffLux.dailyLock = false;
                                              await setStateAsync(praefix + "." + Group + ".autoOffLux.dailyLock", false, true);
                                              LightGroups[Group].autoOffLux.dailyLockCounter = 0;
                                          };
                                      };
                                  };
                              }
                              

                              Hier die Zeilen 263 - 280 aus dem Script:

                                                  LightGroups[Group][prop1][z] = (await getStateAsync(GroupTemplate[prop1][z].id)).val; //Daten in Lightgroups einlesen (auch wenn neu erzeugt), dann
                              
                                                  if (GroupTemplate[prop1][z].common.write) {
                                                      //  log("Setting Trigger for: " + GroupTemplate[prop1][z].id)
                              
                                                      on({ id: GroupTemplate[prop1][z].id, change: "any", ack: false }, function (dp) { //Trigger erstellen
                                                          if (logging) log("Triggered " + dp.id + " new value is " + dp.state.val)
                                                          LightGroups[Group][prop1][z] = dp.state.val;
                                                          Controller(Group, prop1 + "." + z, dp.oldState.val, dp.state.val);
                                                      });
                                                  };
                                              };
                              
                                              if (!await existsObjectAsync(praefix + "." + Group + "." + prop1)) { // Channel erstellen wenn noch nicht vorhanden
                                                  await setObjectAsync(praefix + "." + Group + "." + prop1, { type: 'channel', common: { name: LightGroups[Group].description + " " + prop1 }, native: {} });
                                                  log("Init: Subchannel " + praefix + "." + Group + "." + prop1 + " created");
                                              };
                              
                              

                              Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                              P 1 Antwort Letzte Antwort
                              0
                              • SchmakusS Schmakus

                                @Pittini
                                Ich bekomme eine Fehler im Javascript. Dieser Fehler führt sporadisch zum Neustart der Instanz und macht das Script extrem langsam.
                                Version: 2.0.15
                                js-controller: 3.3.18
                                Node-js: 12.22.6

                                Bildschirmfoto 2021-11-26 um 09.14.31.png

                                Hier die Zeilen 1085 - 1121 aus dem Script:

                                /* ------------------------- FUNCTIONS FOR Switching Off --------------------------------- */
                                
                                async function AutoOffLux(Group) {//Handling für AutoOffLux
                                    if (logging) log("Reaching AutoOffLux, for Group=" + Group + " =" + LightGroups[Group].description)
                                
                                    if (LightGroups[Group].autoOffLux.operator == "<" && LightGroups[Group].actualLux < LightGroups[Group].autoOffLux.minLux && LightGroups[Group].autoOffLux.enabled && LightGroups[Group].power && !LightGroups[Group].autoOffLux.dailyLock) {
                                        GroupPowerOnOff(Group, false);
                                        LightGroups[Group].autoOffLux.dailyLock = true;
                                        await setStateAsync(praefix + "." + Group + ".autoOffLux.dailyLock", true, true);
                                    } else if (LightGroups[Group].autoOffLux.operator == ">" && LightGroups[Group].actualLux > LightGroups[Group].autoOffLux.minLux && LightGroups[Group].autoOffLux.enabled && LightGroups[Group].power && !LightGroups[Group].autoOffLux.dailyLock) {
                                        GroupPowerOnOff(Group, false);
                                        LightGroups[Group].autoOffLux.dailyLock = true;
                                        await setStateAsync(praefix + "." + Group + ".autoOffLux.dailyLock", true, true);
                                    };
                                
                                    if (LightGroups[Group].autoOffLux.operator == "<") { //DailyLock resetten
                                        if (LightGroups[Group].actualLux > LightGroups[Group].autoOffLux.minLux && LightGroups[Group].autoOffLux.dailyLock) {
                                            LightGroups[Group].autoOffLux.dailyLockCounter++;
                                            if (LightGroups[Group].autoOffLux.dailyLockCounter >= 5) {
                                                LightGroups[Group].autoOffLux.dailyLock = false;
                                                await setStateAsync(praefix + "." + Group + ".autoOffLux.dailyLock", false, true);
                                                LightGroups[Group].autoOffLux.dailyLockCounter = 0;
                                            };
                                        };
                                    } else if (LightGroups[Group].autoOffLux.operator == ">") {
                                        if (LightGroups[Group].actualLux < LightGroups[Group].autoOffLux.minLux && LightGroups[Group].autoOffLux.dailyLock) {
                                            LightGroups[Group].autoOfLux.dailyLockCounter++;
                                            if (LightGroups[Group].autoOnLux.dailyLockCounter >= 5) {
                                
                                
                                                LightGroups[Group].autoOffLux.dailyLock = false;
                                                await setStateAsync(praefix + "." + Group + ".autoOffLux.dailyLock", false, true);
                                                LightGroups[Group].autoOffLux.dailyLockCounter = 0;
                                            };
                                        };
                                    };
                                }
                                

                                Hier die Zeilen 263 - 280 aus dem Script:

                                                    LightGroups[Group][prop1][z] = (await getStateAsync(GroupTemplate[prop1][z].id)).val; //Daten in Lightgroups einlesen (auch wenn neu erzeugt), dann
                                
                                                    if (GroupTemplate[prop1][z].common.write) {
                                                        //  log("Setting Trigger for: " + GroupTemplate[prop1][z].id)
                                
                                                        on({ id: GroupTemplate[prop1][z].id, change: "any", ack: false }, function (dp) { //Trigger erstellen
                                                            if (logging) log("Triggered " + dp.id + " new value is " + dp.state.val)
                                                            LightGroups[Group][prop1][z] = dp.state.val;
                                                            Controller(Group, prop1 + "." + z, dp.oldState.val, dp.state.val);
                                                        });
                                                    };
                                                };
                                
                                                if (!await existsObjectAsync(praefix + "." + Group + "." + prop1)) { // Channel erstellen wenn noch nicht vorhanden
                                                    await setObjectAsync(praefix + "." + Group + "." + prop1, { type: 'channel', common: { name: LightGroups[Group].description + " " + prop1 }, native: {} });
                                                    log("Init: Subchannel " + praefix + "." + Group + "." + prop1 + " created");
                                                };
                                
                                
                                P Offline
                                P Offline
                                Pittini
                                Developer
                                schrieb am zuletzt editiert von
                                #154

                                @schmakus Hmm, ich denke nicht dass das ein Skriptfehler ist, sonst hätte ich den Fehler auch, und auch jeder andere der AutoOffLux verwendet. Kann den Fehler auch nicht reproduzieren. Bitte mal genau zeigen/schreiben was da eingestellt ist und dazu ein Log posten, idealerweise mit aktiviertem logging. Aber bitte keinen Programmcode posten, weil....den kenn ich ;)

                                SchmakusS 2 Antworten Letzte Antwort
                                0
                                • P Pittini

                                  @schmakus Hmm, ich denke nicht dass das ein Skriptfehler ist, sonst hätte ich den Fehler auch, und auch jeder andere der AutoOffLux verwendet. Kann den Fehler auch nicht reproduzieren. Bitte mal genau zeigen/schreiben was da eingestellt ist und dazu ein Log posten, idealerweise mit aktiviertem logging. Aber bitte keinen Programmcode posten, weil....den kenn ich ;)

                                  SchmakusS Offline
                                  SchmakusS Offline
                                  Schmakus
                                  Developer
                                  schrieb am zuletzt editiert von
                                  #155

                                  @pittini ok, werde ich morgen in Ruhe nochmal testen. Hab jetzt AutoOffLux mal deaktiviert.

                                  Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                                  1 Antwort Letzte Antwort
                                  0
                                  • SchmakusS Offline
                                    SchmakusS Offline
                                    Schmakus
                                    Developer
                                    schrieb am zuletzt editiert von Schmakus
                                    #156

                                    Erledigt.

                                    Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                                    D 1 Antwort Letzte Antwort
                                    0
                                    • SchmakusS Schmakus

                                      Erledigt.

                                      D Offline
                                      D Offline
                                      denjo
                                      schrieb am zuletzt editiert von
                                      #157

                                      kann mir jemand erklären wie ich sowas installiere, bin da ein neuling drin?

                                      SchmakusS 1 Antwort Letzte Antwort
                                      0
                                      • D denjo

                                        kann mir jemand erklären wie ich sowas installiere, bin da ein neuling drin?

                                        SchmakusS Offline
                                        SchmakusS Offline
                                        Schmakus
                                        Developer
                                        schrieb am zuletzt editiert von
                                        #158

                                        @denjo Du erstellst unter „Scripte“ ein neues Jacascript - idealerweise mit dem Namen „LightControl2“ - und kopierst den Inhalt der „LightControl.js“ welche auf GitHub liegt (link im ersten Post) in dein angelegtes Script.

                                        Dev of LightControl Adapter, Contributor of HUE and DoorBird Adapter

                                        D 1 Antwort Letzte Antwort
                                        0
                                        • SchmakusS Schmakus

                                          @denjo Du erstellst unter „Scripte“ ein neues Jacascript - idealerweise mit dem Namen „LightControl2“ - und kopierst den Inhalt der „LightControl.js“ welche auf GitHub liegt (link im ersten Post) in dein angelegtes Script.

                                          D Offline
                                          D Offline
                                          denjo
                                          schrieb am zuletzt editiert von
                                          #159

                                          @schmakus das habe ich gemacht und hab mal die werte von kugel lampe angepasst, wenn ich dann den script starte kommt folgende fehler meldung

                                          12:11:08.584	error	javascript.0 (6766) script.js.Lampen.LightControl2: TypeError: Cannot read property 'val' of null
                                          12:11:08.585	error	javascript.0 (6766) at GlobalPresenceHandling (script.js.Lampen.LightControl2:473:70)
                                          12:11:08.587	error	javascript.0 (6766) at main (script.js.Lampen.LightControl2:1397:5)
                                          
                                          P 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

                                          808

                                          Online

                                          32.4k

                                          Benutzer

                                          81.5k

                                          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