Navigation

    Logo
    • Register
    • Login
    • Search
    • Recent
    • Tags
    • Unread
    • Categories
    • Unreplied
    • Popular
    • GitHub
    • Docu
    • Hilfe
    1. Home
    2. Deutsch
    3. Skripten / Logik
    4. HUE Script like Sonos Script (6 face Schalter)

    NEWS

    • ioBroker@Smart Living Forum Solingen, 14.06. - Agenda added

    • ioBroker goes Matter ... Matter Adapter in Stable

    • Monatsrückblick - April 2025

    HUE Script like Sonos Script (6 face Schalter)

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

      Hallo zusammen,

      ich habe dieses Endgeile Script zum Thema Sonos und 6 fach Schalter gefunden.

      http://forum.iobroker.net/viewtopic.php … nos+Taster

      Hat einer von euch so etwas für HUE Lampen?

      Ich glaube mit solchen Sachen treiben wir die Verkaufszahlen für die 6fach Schalter Bausätze bei EQ3 in unerreichte Höhen 🙂

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

        Hi Dirk,

        ich steuere meine hue Lampen mit einem 4-fach-Taster mit zusätzlicher Unterscheidung kurzer und langer Druck.

        Das auf einen 6-fach-Taster umzumünzen sind nur noch zusätzliche Datenpunkte.

        Gruß

        Michael

        [EDIT]

        Das Skript für den Taster:

        ! // Channel-IDs idTaster = "hm-rpc.0.FEQ0052402"/*Taster-2-ol*/; idHueLampe = "hue.0.Philips_hue.wohnzimmer.kugel"/*Philips_hue.wohnzimmer.kugel*/; ! // DimDown on({id: idTaster + ".1.PRESS_CONT", change: "any"} , function(obj) { if (obj.newState.val === true || obj.newState.val === "true") { setState("javascript.0.hue.szene.wohnzimmer.bri_inc", -16); } }); ! // DimUp on({id: idTaster + ".2.PRESS_CONT", change: "any"} , function(obj) { if (obj.newState.val === true || obj.newState.val === "true") { setState("javascript.0.hue.szene.wohnzimmer.bri_inc", 16); } }); ! // Off on({id: idTaster + ".1.PRESS_SHORT", change: "any"}, function (obj) { if (obj.newState.val === true || obj.newState.val === "true") { setState("javascript.0.hue.szene.wohnzimmer.szene"/*hue.szene.wohnzimmer.szene*/, "aus"); } }); ! // On on({id: idTaster + ".2.PRESS_SHORT", change: "any"}, function (obj) { if (obj.newState.val === true || obj.newState.val === "true") { setState("javascript.0.hue.szene.wohnzimmer.szene"/*hue.szene.wohnzimmer.szene*/, "sonne"); } }); ! // CtDown on({id: idTaster + ".3.PRESS_CONT", change: "any"} , function(obj) { if (obj.newState.val === true || obj.newState.val === "true") { setState(idHueLampe+".ct", getState(idHueLampe+".ct").val - 16); } }); ! // CtUp on({id: idTaster + ".4.PRESS_CONT", change: "any"} , function(obj) { if (obj.newState.val === true || obj.newState.val === "true") { setState(idHueLampe+".ct", getState(idHueLampe+".ct").val + 16); } }); ! // Cold on({id: idTaster + ".3.PRESS_SHORT", change: "any"}, function (obj) { if (obj.newState.val === true || obj.newState.val === "true") { setState(idHueLampe+".ct", 153); } }); ! // Warm on({id: idTaster + ".4.PRESS_SHORT", change: "any"}, function (obj) { if (obj.newState.val === true || obj.newState.val === "true") { setState(idHueLampe+".ct", 500); } }); !

        Ich steuere damit u.a. dynamische Szenen. Man kann aber z.B. auch Szenen vom Szenen-Adapter steuern.

        Das Skript für dynamische hue Szenen:

        ! ```
        // hue Szenzen - Script für ioBroker // V 0.3.0 // // es empfiehlt sich den hue-Adapter-Loglevel auf "warn" zu stellen (viele Farbänderungen) // // Benutzung über Vis, bzw. Datenpunkte // ------------------------------------ // // die Szenen können über Datenpunkte, z.B. über Vis eingeschaltet und gesteuert werden. // // javascript.0.hue.szene.arbeitszimmer.szene = "love" -> schaltet die Szene "love" im Arbeitszimmer ein // javascript.0.hue.szene.arbeitszimmer.szene = "aus" -> schaltet die aktive Szene im Arbeitszimmer aus, die Lampen gehen aus // javascript.0.hue.szene.arbeitszimmer.szene = "stop" -> stoppt die Szene, die Lampen der Gruppe "arbeitszimmer" leuchten weiter // // javascript.0.hue.szene.arbeitszimmer.bri_inc = -16 -> reduziert de Helligkeit der Szene um 16 Punkte // // javascript.0.hue.szene.arbeitszimmer.bri = 200 -> ändert die Helligkeit der Szene direkt auf den Wert 200 // javascript.0.hue.szene.arbeitszimmer.sat = 200 -> ändert die Sättigung der Szene direkt auf den Wert 200 // // // Benutzung über Javascript (Funktionen) // -------------------------------------- // // szeneStart(lampenGruppe,szene,bri); // bri ist optional // // Beispiel: // // szeneStart("wohnzimmer","sonne"); // startet in der Lampengruppe "wohnzimmer" die Szene "sonne" // // // szeneStop(lampenGruppe); // // // lampenAus(lampenGruppe); // // // // // // // // ! // todo // ---- // // strobo Effekt // Rotalarm Effekt // Feuer Effekt // // prüfen: // ------- // // // erledigt: // --------- // bri optional übergeben (zur Laufzeit veränderbar) // Einschaltzeit beim ersten Einschalten // sat optional übergeben (zur Laufzeit veränderbar) // Änderungen sat, bri per on() überwachen und Lampen in aktiver Gruppe sofort anpassen // neue DP Strukutur () // // ! // ------------ ANFANG der individuellen Konfiguration ------------ ! // die eigenen Lampen in Gruppen sortiert (die Farbverläufe und Effekte werden nach Gruppen aktiviert) ! var lampen ={ "wohnzimmer": // Lampengruppe [ "hue.0.Philips_hue.wohnzimmer.kugel", "hue.0.Philips_hue.wohnzimmer.stehlampe.oben", "hue.0.Philips_hue.wohnzimmer.stehlampe.mitte", "hue.0.Philips_hue.wohnzimmer.stehlampe.unten", "hue.0.Philips_hue.küche.kühlschrank.lc" ], "schlafzimmer": // Lampengruppe [ "hue.0.Philips_hue.schlafzimmer.decke.hinten.links", "hue.0.Philips_hue.schlafzimmer.decke.hinten.mitte", "hue.0.Philips_hue.schlafzimmer.decke.hinten.rechts", "hue.0.Philips_hue.schlafzimmer.decke.vorne.links", "hue.0.Philips_hue.schlafzimmer.decke.vorne.mitte", "hue.0.Philips_hue.schlafzimmer.decke.vorne.rechts" ], "arbeitszimmer": // Lampengruppe [ "hue.0.Philips_hue.arbeitszimmer.schreibtisch.ls", "hue.0.Philips_hue.arbeitszimmer.regal.li.re" ] }; ! var hueSzenenApapterPfad = "hue.szene."; // wo sollen die Datenpunkte in den ioBroker Objekten angelegt werden // je Lampengruppe werden die Datenpunkte: // .szene -> Änderung der Szene per Datenpunkt, z.B. über VIS oder im Script per szeneStart(lampenGruppe,szene,bri); // .bri -> Änderung der Helligkeit per Datenpunkt (0-254) // .sat -> Änderung der Farbsättigung per Datenpunkt ())0-254) // .bri_inc -> Erhöhung/Verminderung der Helligkeit per Datenpunkt (positiver Wert = Heller, negativer Wert = dunkler) // .sat_inc -> Erhöhung/Verminderung der Sättigung per Datenpunkt (positiver Wert = mehr Farbe, negativer Wert = blasser) // angelegt // z.B. unter: javascript.0.hue.szene.arbeitszimmer.szene (Javascfript Instanz 0, Pfad = "hue.szene.") ! // globaler Parameter: Zufällige Zeit zwischen den Wechsel zwischen zwei Farben, je Lampe, in der aktivierten Szene in ms // (wenn keine individuelle Zeit in der Szene definiert ist) var delayMin = 1000; // minimale Zeit in ms einer Lampe, um in die nächste Farbe zu wechseln var delayMax = 3000; // maximale Zeit in ms einer Lampe, um in die nächste Farbe zu wechseln ! // ------------ ENDE der individuellen Konfiguration ------------ ! // ------------------------------------------------------------------------- // Script: Logik & Szenen - ab hier muss in der Regel nichts geändert werden // ------------------------------------------------------------------------- ! var szenen = { "beispiel": { "description": "Beispielszene", // optional: Beschreibung der Szene "delayMin": 2000, // optional (ohne werden die globalen Einstellungen verwendet) "delayMax": 9000, // optional (ohne werden die globalen Einstellungen verwendet) "hueMin": 0, // niedrigste Farbe im Verlauf "hueMax": 50000 // höchste Farbe im Verlauf }, "kamin": { "description": "roter Farbverlauf", "hueMin": 0, "hueMax": 10000 }, "wald": { "description": "grüner Farbverlauf", "hueMin": 20000, "hueMax": 27000 }, "sonne": { "description": "gelb/oranger Farbverlauf", "hueMin": 10000, "hueMax": 17000 }, "blau": { "description": "Energie, blauer Farbverlauf", "hueMin": 44000, "hueMax": 48000 }, "strobo": { "description": "Stroboskop", "ct": 153, "delayMin": 500, "delayMax": 800 }, "feuer": { "description": "pulsierende Farben", "delayMin": 200, "delayMax": 600, "hueMin": 0, "hueMax": 17000 }, "regenbogen": { "description": "das gesamte Farbspektrum", "delayMin": 1000, "delayMax": 8000, "hueMin": 0, "hueMax": 65355 }, ! "love": { "description": "langsam wechselnder Farbverlauf im lila/violetten Bereich, bis zu den Endpunkten blau und rot", "delayMin": 5000, "delayMax": 8000, "hueMin": 46920, "hueMax": 65355 } }; ! // ##### Script Variablen ##### ! var timer = {}; var nextDelay = {}; var szeneAktiv = []; var szene = []; ! // ##### Script Funktionen ##### ! function rand(min, max) { return Math.floor(Math.random() * (max - min + 1)) + min; } ! function dpAnlegen() { for (var lampenGruppe in lampen) { createState(hueSzenenApapterPfad + lampenGruppe + ".szene","aus"); createState(hueSzenenApapterPfad + lampenGruppe + ".infoAktiveSzene","keine"); createState(hueSzenenApapterPfad + lampenGruppe + ".bri",254); createState(hueSzenenApapterPfad + lampenGruppe + ".bri_inc",0); createState(hueSzenenApapterPfad + lampenGruppe + ".sat",254); createState(hueSzenenApapterPfad + lampenGruppe + ".sat_inc",0); log(hueSzenenApapterPfad + lampenGruppe + " wurde angelegt","info"); } } ! function restoreSzenen() { for (var lampenGruppe in lampen) { var aktiveSzene = getState(hueSzenenApapterPfad + lampenGruppe + ".szene").val; var bri = getState(hueSzenenApapterPfad + lampenGruppe + ".bri").val; if (aktiveSzene != "aus") { log("im der Gruppe: " + lampenGruppe + " wurde die Szene: " + aktiveSzene + " wieder aktiviert."); setState(hueSzenenApapterPfad + lampenGruppe + ".infoAktiveSzene",aktiveSzene); szeneStart(lampenGruppe,aktiveSzene,bri); } } } ! function varsAnlegen() { // Script-Variablen für jede Lampengruppe anlagen for (var lampenGruppe in lampen) { timer[lampenGruppe] = []; nextDelay[lampenGruppe] = []; szeneAktiv[lampenGruppe] = false; szene[lampenGruppe] = null; // Script-Variablen für jede Lampe in jeder Lampengruppe anlegen for (var i = 0; i < lampen[lampenGruppe].length; i++) { // timer und die nächste Delayzeit für jede Lampe zurückstellen timer[lampenGruppe][i] = null; nextDelay[lampenGruppe][i] = 0; } } } ! function szenenwechsel (lampenGruppe,lampe,delay) { delay = Math.floor(delay / 100); // der zufällige Wert für die nächste Lichtfarbe wird auch als transitiontime verwendet (dazu wird das delay durch 100 geteilt) //log("aktive Szene: hueMin: " + szenen[szene[lampenGruppe]]["hueMin"] + " hueMax: " + szenen[szene[lampenGruppe]]["hueMax"]); var hue = rand(szenen[szene[lampenGruppe]].hueMin,szenen[szene[lampenGruppe]].hueMax); var bri = getState(hueSzenenApapterPfad + lampenGruppe+".bri").val; var sat = getState(hueSzenenApapterPfad + lampenGruppe+".sat").val; var command = '{"on":true,"hue":' + hue + ',"sat":' + sat + ',"bri":' + bri + ',"transitiontime":' + delay + ',"colormode":"hs"}'; //log ("Lampe: " + lampen[lampenGruppe][lampe] + " # command: " + command); if (bri == 0) command = '{"on":false,"bri":0}'; setState(lampen[lampenGruppe][lampe] + ".command", command); } ! function stroboskop(lampenGruppe,lampe) { var command = '{"on":true,"ct":153,"bri":254,"transitiontime":0,"colormode":"ct"}'; setState(lampen[lampenGruppe][lampe] + ".command", command); command = '{"on":false,"transitiontime":0}'; setState(lampen[lampenGruppe][lampe] + ".command", command); } ! function berechneDelay (lampenGruppe,lampe){ // globale Delay-Einstellungen übernehmen var delayMinTemp = delayMin; var delayMaxTemp = delayMax; // globale Delay-Einstellungen überschreiben, wenn in der Szene ein eingener Delay definiert ist if (szenen[szene[lampenGruppe]].delayMin) delayMinTemp = szenen[szene[lampenGruppe]].delayMin; if (szenen[szene[lampenGruppe]].delayMax) delayMaxTemp = szenen[szene[lampenGruppe]].delayMax; nextDelay[lampenGruppe][lampe] = rand(delayMinTemp,delayMaxTemp); } ! function szeneTimer(lampenGruppe,lampe) { var delay = nextDelay[lampenGruppe][lampe] || 0; var aktuelleSzene = szene[lampenGruppe]; //log("gesetztes Delay: " + delay); if (timer[lampenGruppe][lampe]) clearTimeout(timer[lampenGruppe][lampe]); timer[lampenGruppe][lampe] = setTimeout(function() { timer[lampenGruppe][lampe] = null; berechneDelay(lampenGruppe,lampe); switch (aktuelleSzene) { case "strobo": stroboskop(lampenGruppe,lampe); break; default: szenenwechsel(lampenGruppe,lampe,nextDelay[lampenGruppe][lampe]); break; } //log("Delay = " + nextDelay[lampenGruppe][lampe] + " # Lampe: " + lampen[lampenGruppe][lampe]); szeneTimer(lampenGruppe,lampe); // ruft den Timer nach Ablauf wieder auf },delay); } ! function check254(check) { if (check !== 0) if (!check) check = 254; check = parseInt(check); if (check > 254) check =254; if (check <= 0 ) check = 0; return check; } ! function setBri(lampenGruppe,aktiveSzene,bri) { if (szenen[aktiveSzene].bri) bri = szenen[aktiveSzene].bri; bri = check254(bri); setState(hueSzenenApapterPfad + lampenGruppe+".bri", bri); } ! function setSat(lampenGruppe,aktiveSzene,sat) { if (szenen[aktiveSzene].sat) sat = szenen[aktiveSzene].sat; sat = check254(sat); setState(hueSzenenApapterPfad + lampenGruppe+".sat", sat); } ! function szeneStart(lampenGruppe,aktiveSzene,bri,sat) { if (!szenen[aktiveSzene]) { // undefinierte Szenen abfangen log("# hue Szenen Script: undefinierte Szene wurde versucht aufzurufen: " + aktiveSzene,"error"); return; } szene[lampenGruppe] = aktiveSzene; setBri(lampenGruppe,aktiveSzene,bri); setSat(lampenGruppe,aktiveSzene,sat); if (!szeneAktiv[lampenGruppe]) { szeneAktiv[lampenGruppe] = true; for (var i = 0; i < lampen[lampenGruppe].length; i++) { // für alle Lampen den timer starten nextDelay[lampenGruppe][i] = 0; szeneTimer(lampenGruppe,i); } } } ! function szeneStop(lampenGruppe) { // alle aktiven timer löschen for (var i = 0; i < lampen[lampenGruppe].length; i++) { clearTimeout(timer[lampenGruppe][i]); log("Timer: " + lampen[lampenGruppe][i] + " gestoppt"); } szeneAktiv[lampenGruppe] = false; szene[lampenGruppe] = null; } ! function lampenAus(lampenGruppe) { for (var i = 0; i < lampen[lampenGruppe].length; i++) { setState(lampen[lampenGruppe][i]+".command",'{"on":false}'); } } ! function setBriSat(com,wert,lampenGruppe) { if (wert != check254(wert)) { wert = check254(wert); setState(hueSzenenApapterPfad + lampenGruppe + "." + com, wert); //korrigiert bri/sat und ruft diese on() Funktion direkt wieder auf } else { //log("Lampengruppe: " + lampenGruppe + " # " + com + ": " + wert + " empfangen","warn"); if (szeneAktiv[lampenGruppe]) { // wenn die Szene in der Gruppe aktiv ist: for (var i = 0; i < lampen[lampenGruppe].length; i++) { // für alle Lampen der Gruppe setState(lampen[lampenGruppe][i] + "." + com, wert); // die Helligkeit/Saturation direkt ändern //log(com + ": " + wert + " # " + lampen[lampenGruppe][i] + " gesetzt","warn"); } } } } ! function changeBriSat (com, wert, lampenGruppe) { com = com.replace("_inc", ""); var alterWert = getState(hueSzenenApapterPfad + lampenGruppe + "." + com).val; wert = parseInt(wert) + alterWert; setState(hueSzenenApapterPfad + lampenGruppe + "." + com, wert); //setzt bri/sat neu. Dies ruft die on() Funktion direkt wieder auf, diesmal mit bri/sat } ! // ##### Überwachte Datenpunkte ##### ! // Änderung der Helligkeit (.bri) oder Farbsättigung (.sat) während der Laufzeit über einen Datenpunkt ! var reg = new RegExp("^javascript\\.\\d+\\." + hueSzenenApapterPfad.replace('.', '\\.') + ".*\\.(sat|bri)"); on({"id":reg , "change": "ne"}, function (obj) { var com = obj.id.split('.').pop(); var str = obj.id.replace(/\.(bri|sat)$/, ""); var reg2 = new RegExp("^javascript\\.\\d+\\."+ hueSzenenApapterPfad.replace('.', '\\.')); var lampenGruppe = str.replace(reg2, ""); var wert = obj.newState.val; setBriSat (com, wert, lampenGruppe); }); ! // Änderung der Helligkeit oder Farbsättignung als adaptiver Wert (.bri_inc, .sat_inc) ! var reg = new RegExp("^javascript\\.\\d+\\." + hueSzenenApapterPfad.replace('.', '\\.') + ".*\\.(sat_inc|bri_inc)"); on({"id":reg , "change": "any"}, function (obj) { var com = obj.id.split('.').pop(); var str = obj.id.replace(/\.(sat_inc|bri_inc)$/, ""); var reg2 = new RegExp("^javascript\\.\\d+\\."+ hueSzenenApapterPfad.replace('.', '\\.')); var lampenGruppe = str.replace(reg2, ""); var wert = obj.newState.val; changeBriSat (com, wert, lampenGruppe); }); ! // Änderung einer Szene während der Laufzeit, z.B. über VIS ! var reg = new RegExp("^javascript\\.\\d+\\." + hueSzenenApapterPfad.replace('.', '\\.') + ".*\\.szene"); on(reg , function (obj) { var str = obj.id.replace(/\.szene$/, ""); var reg2 = new RegExp("^javascript\\.\\d+\\."+ hueSzenenApapterPfad.replace('.', '\\.')); var lampenGruppe = str.replace(reg2, ""); var neueSzene = obj.newState.val; log("Lampengruppe: " + lampenGruppe + " # Szene: " + neueSzene + " empfangen"); switch (neueSzene) { case "aus": szeneStop(lampenGruppe); lampenAus(lampenGruppe); log(lampenGruppe + " Szene deaktiviert"); break; case "stop": szeneStop(lampenGruppe); log(lampenGruppe + " Szene angehalten"); break; default: if (szenen[neueSzene]) { // TODO: bri nur ermitteln, wenn in der Szene kein eigener bri festgelegt ist var bri = getState(hueSzenenApapterPfad + lampenGruppe+".bri").val; bri = check254(bri); if (bri == 0) bri = 254; szeneStart(lampenGruppe,neueSzene,bri); setState(hueSzenenApapterPfad + lampenGruppe+".infoAktiveSzene", neueSzene); log(lampenGruppe + " Szene: " + neueSzene + " gestartet"); break; } log("### unbekannte Szene: " + neueSzene,"error"); break; } }); ! // ##### Scriptstart ##### ! dpAnlegen(); // je einen Datenpunkt pro Lampengruppe anlegen varsAnlegen(); // die für das Script notwendigen Variablen erstellen ! // warte bis alle States und Objekte angelegt werden. // 500ms und dann starte main(); function main() { ! // ##### Scriptstart main() ##### ! restoreSzenen(); // aktiviert zuletzt eingestellte Szenen ! } setTimeout(main, 500); [/i][/i][/i][/i][/i][/i][/i][/i]

        1 Reply Last reply Reply Quote 0
        • Eisbaeeer
          Eisbaeeer Developer last edited by

          Ich hab eins für die Ansteuerung der 2. Zone für einen Onkyo Receicer.

          Findest du in der Scriptsammlung.

          1 Reply Last reply Reply Quote 0
          • D
            DiJaexxl last edited by

            Hallo zusammen,

            ich habe das Script nun angepasst, und es läuft auch.

            ! // Channel-IDs
            ! idTaster = "hm-rpc.0.MEQ0027273"/Taster-2-ol/;
            ! idHueLampe = "hue.0.Philips_hue.hgrp-0000000028";
            ! // HUE Gruppe WZ
            ! // "hue.0.Philips_hue.hgrp-0000000028"/Philips_hue.hgrp-0000000028/
            ! // 6fach Schalter WZ
            ! // "hm-rpc.0.MEQ0027273
            ! // DimDown
            ! on({id: idTaster + ".3.PRESS_CONT", change: "any"} , function(obj) {
            ! if (obj.newState.val === true || obj.newState.val === "true") {
            ! setState("javascript.0.hue.szene.wohnzimmer.bri_inc", -16);
            ! }
            ! });
            ! // DimUp
            ! on({id: idTaster + ".4.PRESS_CONT", change: "any"} , function(obj) {
            ! if (obj.newState.val === true || obj.newState.val === "true") {
            ! setState("javascript.0.hue.szene.wohnzimmer.bri_inc", 16);
            ! }
            ! });
            ! // On
            ! on({id: idTaster + ".3.PRESS_SHORT", change: "any"}, function (obj) {
            ! if (obj.newState.val === true || obj.newState.val === "true") {
            ! setState("hue.0.Philips_hue.hgrp-0000000028.on", "true");
            ! setState("hue.0.Philips_hue.hgrp-0000000028.level", "50");
            ! }
            ! });
            ! // Off
            ! on({id: idTaster + ".4.PRESS_SHORT", change: "any"}, function (obj) {
            ! if (obj.newState.val === true || obj.newState.val === "true") {
            ! setState("hue.0.Philips_hue.hgrp-0000000028.on", "false");
            ! setState("hue.0.Philips_hue.hgrp-0000000028.level", "0");
            ! }
            ! });
            ! // CtDown
            ! on({id: idTaster + ".5.PRESS_CONT", change: "any"} , function(obj) {
            ! if (obj.newState.val === true || obj.newState.val === "true") {
            ! setState(idHueLampe+".ct", getState(idHueLampe+".ct").val - 16);
            ! }
            ! });
            ! // CtUp
            ! on({id: idTaster + ".6.PRESS_CONT", change: "any"} , function(obj) {
            ! if (obj.newState.val === true || obj.newState.val === "true") {
            ! setState(idHueLampe+".ct", getState(idHueLampe+".ct").val + 16);
            ! }
            ! });
            ! // Cold
            ! on({id: idTaster + ".5.PRESS_SHORT", change: "any"}, function (obj) {
            ! if (obj.newState.val === true || obj.newState.val === "true") {
            ! setState(idHueLampe+".ct", 196);
            ! }
            ! });
            ! // Warm
            ! on({id: idTaster + ".6.PRESS_SHORT", change: "any"}, function (obj) {
            ! if (obj.newState.val === true || obj.newState.val === "true") {
            ! setState(idHueLampe+".ct", 500);
            ! }
            ! });

            Aber…. wenn ich die Lampe Ein und Aus schalte, bekomme ich den folgenden Log Eintrag:

            hue-0	2016-06-15 20:39:01.025	info	final lightState: {"bri":127,"on":true,"level":50}
            hue-0	2016-06-15 20:39:01.015	info	final lightState: {"bri":127,"on":true,"level":50}
            javascript-0	2016-06-15 20:39:00.916	warn	Wrong type of hue.0.Philips_hue.hgrp-0000000028.level: "string". Please fix, while deprecated and will not work in next versions.
            javascript-0	2016-06-15 20:39:00.913	warn	Wrong type of hue.0.Philips_hue.hgrp-0000000028.on: "string". Please fix, while deprecated and will not work in next versions.
            hue-0	2016-06-15 20:38:58.531	info	final lightState: {"bri":0,"on":false,"level":0}
            hue-0	2016-06-15 20:38:58.524	info	final lightState: {"bri":0,"on":false,"level":0}
            javascript-0	2016-06-15 20:38:58.456	warn	Wrong type of hue.0.Philips_hue.hgrp-0000000028.level: "string". Please fix, while deprecated and will not work in next versions.
            javascript-0	2016-06-15 20:38:58.454	warn	Wrong type of hue.0.Philips_hue.hgrp-0000000028.on: "string". Please fix, while deprecated and will not work in next versions.
            
            

            Was mache ich da falsch?

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

              @Eisbaeeer:

              Ich hab eins für die Ansteuerung der 2. Zone für einen Onkyo Receicer.

              Findest du in der Scriptsammlung. `
              Wo finde ich die Script Sammlung?

              Edit: die sind auf io broker Homepage. Hab ich gefunden.

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

                @DiJaexxl:

                Was mache ich da falsch? `
                Du sendest Werte in Anführungszeichen, also als String, was falsch ist. Entferne die Anführungszeichen (Beispiel: //On):

                // On
                on({id: idTaster + ".3.PRESS_SHORT", change: "any"}, function (obj) {
                if (obj.newState.val === true || obj.newState.val === "true") {
                	setState("hue.0.Philips_hue.hgrp-0000000028.on", true);
                	setState("hue.0.Philips_hue.hgrp-0000000028.level", 50);
                	}
                });
                
                

                oder einfacher:

                // On
                on({id: idTaster + ".3.PRESS_SHORT", val: true}, function (obj) {
                	setState("hue.0.Philips_hue.hgrp-0000000028.on", true);
                	setState("hue.0.Philips_hue.hgrp-0000000028.level", 50);
                });
                
                1 Reply Last reply Reply Quote 0
                • D
                  DiJaexxl last edited by

                  Hallo und guten Morgen,

                  klappt! Danke

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

                  Support us

                  ioBroker
                  Community Adapters
                  Donate

                  1.0k
                  Online

                  31.7k
                  Users

                  79.7k
                  Topics

                  1.3m
                  Posts

                  5
                  7
                  1316
                  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