Helmut
1
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);
}
?>
paresy
2
hofi61
3
Helmut
4
Vielen Dank!
Wiedermal schnelle und hilfreiche Antworten hier im Forum.![:slight_smile: :slight_smile:](https://community.symcon.de/images/emoji/win10/slight_smile.png?v=9)
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.