So Jungs,
hier mein Skript nebst Screenshots des Objektbaumes und des Profiles der Variable Programm.
Nicht vergessen, in die Variable Programm und Dimmer-Programm, also das Profil muss als Aktionskript das unten angehängte Skript ausgewählt werden.
Die farbigen Icons für das Webfront habe ich auch noch angehängt, gehören in …/webfront/user/icons/fixed.
@Stephan: Ja, ich habe die Variablen inkl. der Chromoflex-Instanz unter einer Dummy-Instanz.
@Uwe: Sorry:D
@B71, hier das Skript
<?
// Variablendifinition zum einfach Transport
define("chromo_id", 59513 /*[Erdgeschoß\Wohnzimmer\Hintergrundbeleuchtung\Chromoflex III RC STRIPE]*/, true); // ID der ChromoFlex Instanz
define("rot", 28471 /*[Erdgeschoß\Wohnzimmer\Hintergrundbeleuchtung\Rot]*/, true); // ID der Variable ROT
define("gruen", 46150 /*[Erdgeschoß\Wohnzimmer\Hintergrundbeleuchtung\Grün]*/, true); // ID der Variable GRUEN
define("blau", 57455 /*[Erdgeschoß\Wohnzimmer\Hintergrundbeleuchtung\Blau]*/, true); // ID der Variable BLAU
define("dimmer", 31368 /*[Erdgeschoß\Wohnzimmer\Hintergrundbeleuchtung\Dimmer]*/, true); // ID der Variable DIMMER
define("dimmer_prg", 58228 /*[Erdgeschoß\Wohnzimmer\Hintergrundbeleuchtung\Dimmer Programm]*/, true); // ID der Variable DIMMER_PRG
define("programm", 29650 /*[Erdgeschoß\Wohnzimmer\Hintergrundbeleuchtung\Programm]*/, true); // ID der Variable PROGRAMM (Programm kommen von 1-18)
//Farbpalette (wie die im Herstellertool)
$cf_color_table=array(
array(255, 0, 0), /*/0: Rot */
array(255, 20, 0), /*/1: Hell3rot */
array(255, 40, 0), /*/2: Hell2rot*/
array(255, 80, 0), /*/3: Hellrot*/
array(255, 120, 0), /*/4: Orange*/
array(255, 255, 0), /*/5: Gelb*/
array(200, 255, 0), /*/6: Gruengelb*/
array(100, 255, 0), /*/7: Hellgruen*/
array(0, 255, 0), /*/8: Reingruen*/
array(0, 255, 80), /*/9: Leicht Indigo*/
array(0, 255, 144), /*/10: Indigo*/
array(0, 255, 255), /*/11: Hellblau*/
array(0, 100, 255), /*/12: Hellblau*/
array(0, 50, 255), /*/13: Dunkelblau*/
array(0, 0, 255), /*/14: Royal*/
array(50, 0, 255), /*/15:*/
array(100, 0, 255), /*/16:*/
array(255, 0, 255), /*/17: Magenta*/
array(255, 0, 100), /*/18 */
array(255, 0, 50), /*/19 */
array(255, 255, 255), /*/ 20 *Weiss */
array(255, 255, 80), /*/ 21 Ungefaehr Weiss*/
array(120, 255, 120), /*/ 22 Ungefaehr Weiss*/
array(190, 255, 180), /*/ 23 Ungefaehr Weiss*/
array(160, 255, 255) /*/ 24 Ungefaehr Weiss */
);
// Passende Funktion für Palette
function ChromoflexRC_SetPalColor($objectId, $palColor, $dimm) {
global $cf_color_table;
ChromoflexRC_SetColor($objectId, $cf_color_table[$palColor][0],$cf_color_table[$palColor][1],$cf_color_table[$palColor][2],$dimm);
}
// WebFront werte an Variablen zurückgeben
if($IPS_SENDER == "WebFront")
{
SetValue($IPS_VARIABLE, $IPS_VALUE);
}
// Variablenwerte einlesen
$rot = GetValue(rot);
$gruen = GetValue(gruen);
$blau = GetValue(blau);
$dimmer = GetValue(dimmer);
$dimmer_prg = GetValue(dimmer_prg);
$programm = GetValue(programm);
// $chromo_net = GetValue(chromo_net); // Welcher ChromoFlexRCIII soll bedient werden (kommt später)
if (($IPS_VARIABLE != programm)) {
// Wenn Slider für rot, gruen, blau oder dimmer betätigt wurde
if ($IPS_VARIABLE != dimmer_prg) { // reagiere nicht auf Programm-Dimmer
ChromoflexRC_BroadcastSetColor(chromo_id, $rot, $gruen, $blau, $dimmer);
SetValue(programm, 99); // Programm auf Manuell umschalten
}
} else {
// Wenn Programmtaste in WebFront betätigt wurde
if ($IPS_VALUE < 50) {
ChromoflexRC_SetProgram(chromo_id, $programm, $dimmer_prg);
} else {
// Wenn Programm größer 50 dann Farb-Array benutzen
ChromoflexRC_SetPalColor(chromo_id, $programm-50, $dimmer_prg); // -50 wegen beginn des Array bei 0 und Variablenprofil bei 50
}
}
?>
Skript ist kommentiert sollte aber auch so selbsterklärend sein, ist ja nicht wirklich viel drin ![:wink: :wink:](https://community.symcon.de/images/emoji/win10/wink.png?v=9)
Sollten Fragen auftauchen dann aber schnell. Morgen vormittag geht es für eine Woche noch Österreich zum Skifahren. Wird wieder eine IPS-Gipfeltreffen mit bmwm3 (Uwe), pleibling und unseren Frauen.
fixed.rar (56.6 KB)