Verzögerungen im Script einbauen

Hallo,
habe das Forum durchsucht, bin aber nicht fündig geworden. ich möchte z. B. nach einer Minute zuerst die die Lampen über Wozi-Tisch auf 20% dimmen, nach 70 Sekunden die Lampen Mitte Wozi und nach 90 Senkunden die Lampen vor der Leinwand.

Weiß jemand, ob das geht und wenn ja würde ich mich über eine kleine Hilfestellung sehr freuen.
Viele Grüße
Uwe

<?

 //Fügen Sie hier ihren Skriptquellcode ein
ZW_SwitchMode(51753 /*[2 Lampen vor Leinwand]*/, true);
ZW_SwitchMode(54080 /*[4 Lampen Mitte Wozi]*/, true);
ZW_SwitchMode(30154 /*[4 Lampen über Wozi Tisch]*/, true);


ZW_DimSet(30154 /*[4 Lampen über Wozi Tisch]*/, 50);




?>

Danke für die Antwort. Das mit dem Step-Befehl habe ich nicht so gut verstanden. Habe folgendes ausprobiert. Problem ist nur dass der erste Timer ignoriert wird und alles mit dem 2. Timer geschaltet wird.

Was mache ich bloß falsch? Hatte mit Scripten und PHP bisher wenig zu tun :o und will mich hier reindenken, aber mir fehlt der Faden für den Anfang.

Gruß
Uwe

<?

 //Fügen Sie hier ihren Skriptquellcode ein
ZW_SwitchMode(51753 /*[2 Lampen vor Leinwand]*/, true);
ZW_SwitchMode(54080 /*[4 Lampen Mitte Wozi]*/, true);
ZW_SwitchMode(30154 /*[4 Lampen über Wozi Tisch]*/, true);


if($IPS_SENDER == "TimerEvent")
 {
  //Dimm Befehl
  ZW_DimSet(30154 /*[4 Lampen über Wozi Tisch]*/, 30);

  //Timer ausschalten
  IPS_SetScriptTimer($IPS_SELF, 0);
 } else {
  //An Befehl mit voller Leistung
  ZW_DimSet(30154 /*[4 Lampen über Wozi Tisch]*/, 100);
  //Laufzeit des Timers 
  IPS_SetScriptTimer($IPS_SELF, 5);
 }



if($IPS_SENDER == "TimerEvent")
 {
  //Dimm Befehl
  ZW_DimSet(54080 /*[4 Lampen Mitte Wozi]*/, 30);

  //Timer ausschalten
  IPS_SetScriptTimer($IPS_SELF, 0);
 } else {
  //An Befehl mit voller Leistung
  ZW_DimSet(54080 /*[4 Lampen Mitte Wozi]*/, 100);
  //Laufzeit des Timers
  IPS_SetScriptTimer($IPS_SELF, 30);
 }







?>

OT
Wenn Du PHP-Code einbindest, nimm doch die PHP-Tags, dann ist das für uns leichter lesbar.
Das kannst Du über „Ändern“ noch berichtigen.

xxx

[Edit] Ich sehe, ist schon berichtigt.

Hallo Rainer, hatte das gleich nach dem Erstellen gemerkt und auch geändert. Bei mir wurde es richtig angzeigt (PHP extra umrandet). Bei dir nicht - oder hatte sich das zeitlich überschnitten?
Gruß
Uwe

:slight_smile: Alles klar

Hier ist ein Anfang.

Eine IntegerVariable anlegen Namen ‚step‘. Die ID der Variable im Script eintragen!

Das Script über ein Event starten. (Trigger)Fernbedienung usw…

Das Script ist ungetestet, nur zur Orientierung!

<?
$step = GetValueInteger(xxxxx);

if(($IPS_SENDER != "TimerEvent")and($step == 0))
{
   SetValue(xxxxx/*[Step]*/, 1);
   IPS_SetScriptTimer($IPS_SELF, 60);
   ZW_SwitchMode(51753 /*[2 Lampen vor Leinwand]*/, true);
    ZW_SwitchMode(54080 /*[4 Lampen Mitte Wozi]*/, true);
    ZW_SwitchMode(30154 /*[4 Lampen über Wozi Tisch]*/, true);
   return;
}

if($IPS_SENDER == "TimerEvent")
{
    switch($step)
    {
      case 1:
      SetValue(xxxxx/*[Step]*/, 2);
      ZW_DimSet(30154 /*[4 Lampen über Wozi Tisch]*/, 30);
      IPS_SetScriptTimer($IPS_SELF, 60);
      break;
       case 2:
      SetValue(xxxxx/*[Step]*/, 3);
      ZW_DimSet(54080 /*[4 Lampen Mitte Wozi]*/, 30);
      IPS_SetScriptTimer($IPS_SELF, 70);
        break;
       case 3:
      SetValue(xxxxx/*[Step]*/, 4);
      ZW_DimSet(51753 /*[2 Lampen vor Leinwand]*/, 30);
      IPS_SetScriptTimer($IPS_SELF, 90);
      break;
      case 4:
      SetValue(xxxxx/*[Step]*/, 0);
      IPS_SetScriptTimer($IPS_SELF, 0);
      break;
    }
}
?>

Hallo Rainer, danke für die Antwort.

Habe das XXXXX durch 10000 ersetzt. Denke, dass es Millisekunden sind? Oder habe ich das falsch verstanden?

Jedenfalls kommt folgende Meldung:
Warning: Variable #10000 existiert nicht in C:\IP-Symcon\scripts\24891.ips.php on line 2

Muss ich das xxxxx durch etwas anderes ersetzen?

Viele Grüße
Uwe

Eine IntegerVariable anlegen Namen ‚step‘. Die ID der Variable im Script eintragen!

das sind die xxxxx. Überall wo diese sind kommt die 5 stellige VariablenID rein!

Hallo Rainer,

vielen Dank für die Mühe!

Aber ich kapier es einfach nicht und die Dokumentation gibt auch nicht viel her.

Wenn man sich damit schon länger beschäftigt oder sich mit PHP auskennt, ist das wahrscheinlich nicht nachvollziehbar - aber für mich sieht das ganze nach einem Buch mit sieben Siegeln aus. Morgen probiere ich es noch mal in neuer Frische.

Gruß
Uwe

Vorgehensweisen - IP-Symcon :: Automatisierungssoftware

Es kann aber auch nicht so schwierig sein, eine IntegerVariable anzulegen und die xxxxx mit deren ID-Nummer zuersetzen.