Script nach Ausführung für Zeit x sperren

Hallo,

wenn jemand durch den Bewegungsmelder läuft lasse ich ein Script ausführen das mein Tablet an der Wand aus dem Standby aufweckt.
Was ich aber noch einbauen will ist, das wenn das Skript gestartet wurde Dieses für 10min nicht mehr ausführbar ist wenn wieder jemand durch den BWM spaziert. Erst nach den abelaufenen 10min soll das Script wieder ausführbar sein.
Leider finde ich in der Doku bzw. Forum nicht den geeigneten Befehl dafür. Wäre super wenn hier jemand nen Tip geben könnte!!

<?
$Bewegungsmelder = GetValue(58600 /*[Bewegungsmelder Diele\Status]*/);

if($Bewegungsmelder==true)
	{
	IPS_RunScript(28002 /*[TZMTab1\DisplayON_TZM_Tab1]*/);
   	}
?>

Danke!

Abend!

Entweder abfragen, wann das Skript zuletzt gelaufen ist und wenn weniger als 10 Min, dann „return“:
IPS_GetScript — IP-Symcon :: Automatisierungssoftware >> LastExecute

Oder mit einer Hilfsvariable und einem Timer arbeiten, der eine Sperre setzt und per Timer nach 10 Min. wieder entsperrt.

Hier findest du noch andere schöne Skript-Beispiele, die man immer wieder mal brauchen kann:
IP-Symcon - Wie kann ich… 2.0

Grüße,
Chris

Hallo.

So z.B.


<?

$Array = IPS_GetScript($_IPS['SELF']);
$Zeitstempel = time()-$Array['LastExecute'];
$Pause = 10; // "Auszeit" in Sekunden

if ($Zeitstempel > $Pause) {
      $Bewegungsmelder = GetValue(58600 /*[Bewegungsmelder Diele\Status]*/);
      if($Bewegungsmelder)
      {
           IPS_RunScript(28002 /*[TZMTab1\DisplayON_TZM_Tab1]*/);
      }
}

?>

…mit einer kleinen Änderung f. 4.0 funktioniert das 1a!!

Danke, Kronos!!

Und was ist denn nun die kleine Änderung? :smiley:

Guckst du Doku :wink: :stuck_out_tongue: :smiley:

IPS_GetScript — IP-Symcon :: Automatisierungssoftware
IPS 3.4:

$Zeitstempel = time()-$Array['LastExecute'];

IPS 4.x:

$Zeitstempel = time()-$Array['ScriptExecuted'];

Grüße,
Chris