Wie bekomme ich die Statusvariable aktualisiert?

Nach Ablauf des Timers wird die Statusvariable für die Instance nicht aktualsiert, wie schaffe ich das?

<?
 /*
*******************************
IP-SYMCON Event Scripting
*******************************
*/
 //File: Treppenhausautomat.ips.php
 //Trigger: Sender_1_Kanal_1_Data
 


$timer=1*60; //1 Minute an!

//Wenn über laengeren Tastendruck getriggert, anschalten nach Zeit ausschalten
 $Sender_1_Kanal_1_Data= GetValueInteger("Sender_1_Kanal_1_Data");
    if ($Sender_1_Kanal_1_Data ==21) {
      IPS_SetScriptTimer("Treppenhausautomat", $timer);
      FS20_SwitchDuration(49890,true,$timer);
      SetValueInteger("Sender_1_Kanal_1_Data", 0);
   // } else { //andernfalls status auf false setzten


//IPS_SetScriptTimer("Treppenhausautomat", 0);
    }


 ?>

http://www.ipsymcon.de/forum/showthread.php?t=647 <-- Da passiert genau das was du suchst…

paresy

Hallo Helmut,

schau mal hier:

http://www.ipsymcon.de/forum/showthread.php?p=3495#post3495

Gruß Hofi

Vielen Dank!
Wiedermal schnelle und hilfreiche Antworten hier im Forum.:slight_smile:
Mein Script sieht jetzt so aus:

<?
 /*
*******************************
IP-SYMCON Event Scripting
*******************************
*/
 //File: Treppenhausautomat.ips.php
 //Trigger: Sender_1_Kanal_1_Data
 


$timer=1*60; //1 Minute an!

//Wenn über laengeren Tastendruck getriggert, anschalten nach Zeit ausschalten
 $Sender_1_Kanal_1_Data= GetValueInteger("Sender_1_Kanal_1_Data");
    if ($Sender_1_Kanal_1_Data ==21) {
      IPS_SetScriptTimer("Treppenhausautomat", $timer);
      FS20_SwitchDuration(49890,true,$timer);
      SetValueInteger("Sender_1_Kanal_1_Data", 0);
     IPS_SetScriptTimer("Treppenhauslicht_Status_RET", $timer);
    } else { //andernfalls status auf false setzten
     //SetValueBoolean("Empfaenger_1_Kanal_1", False);

IPS_SetScriptTimer("Treppenhausautomat", 0);
    }


 ?>

Das „Aus“-Script so:

<?
/*
*******************************
 IP-SYMCON Event Scripting
*******************************
File     : Treppenhauslicht_Status_RET.ips.php
Trigger  : Treppenhausautomat.ips.php 
Interval : 
*/
SetValueBoolean("Empfaenger_1_Kanal_1", False);
SetValueBoolean("Sender_1_Kanal_1", False);
IPS_SetScriptTimer("Treppenhauslicht_Status_RET", 0);


?>

Den Taster setze ich nochmal hier extra zurück weil er schon gedrückt (18) sein könnte, wenn er nochmal länger betätigt wurde.