HUE Szenen via Z2M nachstellen

Naja, ich würde das Script dann um paar Zeilen erweitern …

// AKTION VIA RUNSCRIPT
if ($_IPS['SENDER'] == 'RunScript') {
    // Speichern (Wert übernehmen)
    SetValue($_IPS['VARIABLE'], $_IPS['VALUE']);
    // Szene ausführen
    SetScene($LIGHTS[$_IPS['VARIABLE']], $ACTIONS[$_IPS['VALUE']]);
}

und dann mit folgendem Aufruf schalten …

IPS_RunScriptEx($actionScript, array("VARIABLE" => $targetVariable, "VALUE" => $targetValue));  

$targetVariable & $targetValue musst Du dann entsprechend setzen bzw. übergeben!!!

Gruß Heiko

Ich würde gerne eine Szene schalten über einen Homematic 6-fach Taster. Bei Taste 6 Long und Short. Vorher mit dem HUE Modul ging das über PHUE_SceneSet(17246, ‚Nordlichter‘);

Hier mal das Skript:

//Wohnzimmer Decke

//Taster Links und Rechts / Tastfeld 1 / Kurz

switch ($_IPS['EVENT']) {
    case 24763: //Ereignis Taste 1 SHORT (Schalter 1 Links)
    case 33609: //Ereignis Taste 1 SHORT (Schalter 2 Rechts)
        //Wohnzimmer Decke An/Aus in Kaltweiß und 20%
        if (GetValueBoolean('38990') == false) { //Status Variable der Gruppe Wohnzimmer Decke
            RequestAction('39327', 50); //Variable Helligkeit Wohnzimmer Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('35311', 153); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        } else {
            RequestAction('38990', false); //Status Variable der Gruppe Wohnzimmer Decke
        }
        break;

//Taster Links und Rechts / Tastfeld 1 / Lang        

    case 38157: //Ereignis Taste 1 LONG (Schalter 1 Links)
    case 35985: //Ereignis Taste 1 LONG (Schalter 2 Rechts)
        //Wohnzimmer Decke in Warmweiß und 20%
            RequestAction('39327', 50); //Variable Helligkeit Wohnzimmer Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('35311', 350); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        break;

//Taster Links und Rechts / Tastfeld 3 / Kurz   

    case 56226: //Ereignis Taste 3 SHORT (Schalter 1 Links)
    case 18199: //Ereignis Taste 3 SHORT (Schalter 2 Rechts)	
        //Wohnzimmer Decke in Kaltweiß und 50%
            RequestAction('39327', 127); //Variable Helligkeit Wohnzimmer Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('35311', 153); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        break; 

//Taster Links und Rechts / Tastfeld 3 / Lang    

    case 27790: //Ereignis Taste 3 LONG (Schalter 1 Links)
    case 24435: //Ereignis Taste 3 LONG (Schalter 2 Rechts)	
        //Wohnzimmer Decke in Warmweiß und 50%
            RequestAction('39327', 127); //Variable Helligkeit Wohnzimmer Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('35311', 350); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        break;  

//Taster Links und Rechts / Tastfeld 5 / Kurz       

    case 26528: //Ereignis Taste 5 SHORT (Schalter 1 Links)
    case 36706: //Ereignis Taste 5 SHORT (Schalter 2 Rechts)	
        //Wohnzimmer Decke in Kaltweiß und 100%
            RequestAction('39327', 254); //Variable Helligkeit Wohnzimmer Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('35311', 153); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        break;  

//Taster Links und Rechts / Tastfeld 5 / Lang          

    case 24542: //Ereignis Taste 5 LONG (Schalter 1 Links)
    case 39495: //Ereignis Taste 5 LONG (Schalter 2 Rechts)	
        //Wohnzimmer Decke in Warmweiß und 100%
            RequestAction('39327', 254); //Variable Helligkeit Wohnzimmer Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('35311', 350); //Variable Farb Temperatur KaltWeiß (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        break;


//Flur Decke        

//Taster Links und Rechts / Tastfeld 2 / Kurz  

    case 58468: //Ereignis Taste 2 SHORT (Schalter 1 Links)
	case 15355: //Ereignis Taste 2 SHORT (Schalter 2 Rechts)
        //Flur Decke An/Aus in Kaltweiß und 20%
        if (GetValueBoolean(26677) == false) { //Status Variable der Gruppe Flur Decke
            RequestAction('13658', 50); //Variable Helligkeit Flur Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('42691', 153); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        } else {
            RequestAction('26677', false);  //Status Variable der Gruppe Flur Decke
        }
        break;

//Taster Links und Rechts / Tastfeld 2 / Lang        

    case 49601: //Ereignis Taste 2 LONG (Schalter 1 Links)
    case 20478: //Ereignis Taste 2 LONG (Schalter 2 Rechts)	
        //Flur Decke in Warmweiß und 20%
            RequestAction('13658', 15); //Variable Helligkeit Flur Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('42691', 350); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        break;

//Taster Links und Rechts / Tastfeld 4 / Kurz       

    case 18705: //Ereignis Taste 4 SHORT (Schalter 1 Links)
    case 39819: //Ereignis Taste 4 SHORT (Schalter 2 Rechts)	
        //Flur Decke in Kaltweiß und 100%
            RequestAction('13658', 254); //Variable Helligkeit Flur Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('42691', 153); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        break; 

//Taster Links und Rechts / Tastfeld 4 / Lang     

    case 11715: //Ereignis Taste 4 LONG (Schalter 1 Links)
    case 49764: //Ereignis Taste 4 LONG (Schalter 2 Rechts)	
        //Flur Decke in Warmweiß und 100%
            RequestAction('13658', 254); //Variable Helligkeit Flur Decke (Helligkeit Wert 0-254) (Prozentzahl x 2,54)
            RequestAction('42691', 350); //Variable Farb Temperatur (Temperatur Wert 153-500 Mired) (Kaltweiß bis Warmweiß)
        break;   

//Taster Links und Rechts / Tastfeld 6 / Kurz      

    case 24960: //Ereignis Taste 6 SHORT (Schalter 1 Links)
    case 53435: //Ereignis Taste 6 SHORT (Schalter 2 Rechts)	
        //Flur Decke Szene „Nordlichter“ an
            PHUE_SceneSet(31806, 'Nordlichter'); //Instanz des Raumes Flur
        break;   

//Taster Links und Rechts / Tastfeld 6 / Lang        

    case 56203: //Ereignis Taste 6 LONG (Schalter 1 Links)
    case 24809: //Ereignis Taste 6 LONG (Schalter 2 Rechts)	
        //Wohnzimmer Decke Szene „Nordlichter“ an
            PHUE_SceneSet(17246, 'Nordlichter'); //Instanz der Zone Essbereich
        break;



    default:
        trigger_error('Unerwartetes Event: ' . $_IPS['EVENT']);
}

Naja, du erweiterst wie geschrieben das Scene-Script mit dem oberen Teil und das

IPS_RunScriptEx($actionScript, array("VARIABLE" => $targetVariable, "VALUE" => $targetValue));  

kopierst an die Stelle wo PHUE_SceneSet steht.

Das sollte es gewesen sein.

Heiko

1 „Gefällt mir“

Version 3.0.20231220

Dank @Stefan71 gibt es jetzt vieeeeeeel mehr Szenen zum genießen :slight_smile:

Update im ersten Post!

Gruß Heiko

Hallo Heiko,
was hat es mit der Warnmeldung auf sich, wenn ich das Skript ausführe?

Warning: Cannot auto-convert value for parameter Digits (Type does not match) in /var/lib/symcon/scripts/System.Functions.ips.php on line 296

Das Profil Z2M.LightScene bleibt bei mir jetzt auch leer.

Ups, bei mir nicht - ich schau mal!

Ich hatte das „alte“ Profil gelöscht und seitdem wird es nicht mehr befüllt. Hast du die Szenen mal probiert? Ich habe das Gefühl das die All4HUE App die Farbcodes nicht korrekt ausgibt. Aber konnte es ja noch nicht richtig testen wegen dem fehlendem Profil.

Bei mir wird das Profil schön neu angelegt/überschrieben!

Hast Du die neuste Version von Systems.Function.ips.php im Einsatz? Da hatte ich einen Fehler in der Profilfunktion drin :frowning:

War wohl nicht so ne dolle Idee mit der Scriptbibo für alle - schwer Änderungen und Abhängigkeiten zu tracken :frowning:

Gruß Heiko

Ne, habe da schon lange nichts mehr aktualisiert. Mache es gleich mal. Habe noch die Version 2.1.20230121

Da war ja in dem Systems.Function.ips.php Skript nichts anzupassen/ergänzen?

Irgendwas mache ich schon wieder falsch. Wenn ich das Skript aktualisieren möchte bekomme ich eine Fehlermeldung:

Das hat aber nix mit meinem Script zu tun! Console nochmal neu starten bzw. Pro nutzen!?

Ne klar. Habe jetzt neu gestartet und die Neue Version des Skriptes per Copy&Paste einfügen wollen und bekomme wieder die gleiche Meldung.

Wie bist Du genau vorgegangen?

(?) Github copy RAW → paste Console

Geh doch mal den Umweg über einen lokalen Texteditor - nur zum Test!

Habe das Skript markiert, kopiert und wollte es dann in der Console einfügen.

Edit: über Notepad geht es. Habe es auch eben kopiert und eingefügt in einem neuen Skript. Das geht jetzt auch nicht mehr.

Es geht über Strg+V.
Vorher habe ich es über Rechtsklick → „Einfügen“ gemacht und das geht nicht.

Geht es bei anderen Scripten auch nicht mehr → dann hier im Forum melden!

Der kopieren Befehl geht auch nicht mehr. Also geht nur Strg+C/V.

Könnte an dem selben Problem liegen was ich gestern schon reportet habe! Kannst ja erweitern!

Habe gerade gesehen das der Name einer Szene nicht korrekt ist:

Das steht Kuhl Hölle anstatt Kühl Hell :joy:

image

1 „Gefällt mir“

Komisch, gerade oben geschaut das ist es korrekt???