Skripttimer aktivieren/deaktivieren

Hallo Zusammen,

Habe gerade folgende Lage.

Thema Rolladensteuerung.

Der Variable die die höhe steuert sind 2 Ereignisstimer mit Script zugeortnet. siehe Bild.

habe mir jetzt ne Variable Automatik angelegt. und sie folgendem Script zugeortnet.


<?
// Rolladen Fenster Flur Automatisierung

//*** Werte bei betätigung aus dem Webfront einlesen
if($IPS_SENDER == "WebFront")
	{
    	SetValue($IPS_VARIABLE, $IPS_VALUE);
	}
	
// Variablendefinition

define("Automatik",  34955 /**/, true);	// 

// Werte holen

$Automatik = GetValue(Automatik);

/// Schaltung

if ($Automatik == 0  )
	{
      IPS_SetEventActive(25499 /*[Rolladensteuerung\Flur\Fenster\Rolladen Fenster Flur\Rolladen Steuerung\]*/, false);  // Aktivert Ereignis
      IPS_SetEventActive(53448 /*[Rolladensteuerung\Flur\Fenster\Rolladen Fenster Flur\Rolladen Steuerung\]*/, false);  // Aktivert Ereignis
	}
if ($Automatik == 1  )
	{
      IPS_SetEventActive(25499 /*[Rolladensteuerung\Flur\Fenster\Rolladen Fenster Flur\Rolladen Steuerung\]*/, true);  // Aktivert Ereignis
      IPS_SetEventActive(53448 /*[Rolladensteuerung\Flur\Fenster\Rolladen Fenster Flur\Rolladen Steuerung\]*/, true);  // Aktivert Ereignis
	}
if ($Automatik == 2  )
	{
      IPS_SetEventActive(25499 /*[Rolladensteuerung\Flur\Fenster\Rolladen Fenster Flur\Rolladen Steuerung\]*/, false);  // Aktivert Ereignis
      IPS_SetEventActive(53448 /*[Rolladensteuerung\Flur\Fenster\Rolladen Fenster Flur\Rolladen Steuerung\]*/, false);  // Aktivert Ereignis
	}
?>

Die Timer werden auch sauber abgeschaltet oder an.

Jetzt kann man ja im WF auf die Uhr klicken und den Timer wieder aktivieren.
Das Programm würde aber Beispilsweise auf aus oder Auto bleiben.

Wie kann ich das verhindern oder bei Timeraktevierung reagieren.

Gruß Nick

RolladenFW.JPG

Weiss nicht, ob ich es verstanden habe:

Im Objektbaum Skript markieren, rechte Mt, Objekt bearbeiten, zweiter Reiter, Objekt verstecken.

Gruß
Bruno

Moin…

hab ich das so richtig verstanden? Wenn Du die Automatik mit dem Button „AUS“ deaktiviert hast ( sind die Ereignisse nicht aktiv ) und stellst nun über die „Uhr“ bei Rolladen Steuerung eine neue Zeit ein, wird das dazugehörige Ereignis wieder aktiv!? Deine Automatik zeigt aber noch „AUS“ an?!

Hmm… sollte ich das so richtig verstanden haben könnte dieser Befehl Dir eventuell weiter helfen.

IPS_GetEvent

Über „EventActive“ kannst Du sehen ob das Ereignis aktiv ist und deine Anzeigen nachführen!

<?

$EreignisID = 25499 /*[Rolladensteuerung\Flur\Fenster\Rolladen Fenster Flur\Rolladen Steuerung\]*/;
$EreignisInfo = IPS_GetEvent($EreignisID);
//print_r($EreignisInfo);
echo($EreignisInfo['EventActive']);
?>

Wenn dein Ereignis „Aktiv“ ist bekommst eine „1“, wenn es deaktiviert ist eine „0“.
Nächtlichen Gruß,
Peter

Hallo…
@PeterChrisben:

Wenn dein Ereignis „Aktiv“ ist bekommst eine „1“, wenn es deaktiviert ist eine „0“.
Nächtlichen Gruß,

… dann müsste mann doch ständig diese Abfrage tiggern und hätte somit einen entsprechenden Zeitverzug zwischen Aktivierung/Deaktivierung des Timers im WFE und der Neujustierung der Anzeige.

So wie ich das Problem von NickBlue verstanden habe fragt er nach einem Weg, die Variable >> Automatik << in Abhängigkeit von der Veränderung Timers setzen zu können.
D.h., das Skript sollte bei Veränderung der Timereinstellungen getiggert werden. Was am Timer geändert wurde, könnte man dann mittels IPS_GetEvent() auswerten.

Ich habe ein ähnliches Problem und bin daher auch an einer Lösung interessiert.

Gruß

Swifty

@ Swifty ganu das ist es ;-).

Aber die Lösung mit dem Timmer verstecken geht. Was mein Frauchen nicht sieht da kann sie auch nicht dran Rumfummeln. Und bei „Timer Manuell“ wird er wieder eingeblendet.

Danke @ all