ScriptTimer

Hallo zusammen ich bin leider nicht so gut in Skripte schreiben und brauche mal eure Hilfe.

Ich brauche ein Skript was eine Zeit von X (ca. 5 min) im Zustand True bleibt und dann in den Zustand false wechselt für X (ca. 1 Minute) und wieder zurück in True. Und von vorn.

Wollte das ganz einfach für ein Homematic Aktor in der CCU machen aber leider überträgt er die Aktionen nicht.
Meine Idee ist es irgendwie mi ein Skript Timer zu machen

das sind meine ersten Versuche

<?
if($_IPS['SENDER'] == "TimerEvent")
{
    //Aus Befehl
    HM_WriteValueBoolean(12949 /*[CCU Homematic Devices\Schlafzimmer\Lampe Schlafzimmer\Lampe Schlafzimmer]*/, "STATE", false);

    //Timer ausschalten
    IPS_SetScriptTimer($_IPS['SELF'], 0);
} else {
    //An Befehl
    HM_WriteValueBoolean(12949 /*[CCU Homematic Devices\Schlafzimmer\Lampe Schlafzimmer\Lampe Schlafzimmer]*/, "STATE", true);

    //Timer anschalten
    IPS_SetScriptTimer($_IPS['SELF'], 60);
}
 


?>

if(IPS_GetScriptTimer($_IPS['SELF']) != 300) {
    //An Befehl 
    HM_WriteValueBoolean(12949 /*[CCU Homematic Devices\Schlafzimmer\Lampe Schlafzimmer\Lampe Schlafzimmer]*/, "STATE", true); 

    //Timer umschalten 
    IPS_SetScriptTimer($_IPS['SELF'], 300); 
} else { 
    //Aus Befehl 
    HM_WriteValueBoolean(12949 /*[CCU Homematic Devices\Schlafzimmer\Lampe Schlafzimmer\Lampe Schlafzimmer]*/, "STATE", false); 

    //Timer umschalten
    IPS_SetScriptTimer($_IPS['SELF'], 60); 
}

Nur getippt (nicht getestet), aber als Idee kannst du vielleicht was damit anfangen :slight_smile:

paresy

danke dir werde es mal testen wie

mit was für ein ereignis starte ich das Skript das läuft doch nicht permanent oder ?

bekomme leider eine Fehlermeldung in diesen zeile
if(IPS_SetScriptTimer($_IPS[‚SELF‘]) != 300) {

Warning: Wrong parameter count for IPS_SetScriptTimer() in [Garten\Markise\Markise verzögert schalten ] on line 2

Das muss doch GetScriptTimer heißen oder nicht!?
Peter

Gesendet von iPhone mit Tapatalk

Ja, richtig :slight_smile: Und einfach Ausführen. Ab dann läuft es für immer weiter.

paresy

Vielen Dank euch beiden