Zufällige Schaltdauer mittel Perl-Code klappt nicht

Begonnen von BerlinerBär, 20 September 2015, 16:15:56

Vorheriges Thema - Nächstes Thema

BerlinerBär

Ich möchte ein device nach einer zufällig berechneten Zeit wieder ausschalten.
Dachte das geht mit Hilfe eines Perl-Ausdrucks: define Zufallsdauer at * 20:00:00 set Lampe on-for-timer {int(rand(180))}
Bekomme jedoch die Fehlermeldung im Logfile: Zufallsdauer: please enter the duration in seconds
Ersetze ich die geschweiften Klammern durch eine Zahl (z.B. 180) klappt es wunderbar. Was mach ich falsch?

rapster

Perl Code an einer Stelle verwenden an der keiner erwartet wird.

k.A. in welchem Kontext du das define gerade verwendest, z.B. das hier müsste z.B. funktionieren:

{fhem("define Zufallsdauer at * 20:00:00 set Lampe on-for-timer ".int(rand(180)))}

BerlinerBär

Ja, so klappts. Habe Dank Deiner Antwort nun besser verstanden, wie Perlcode und FHEM zusammenwirken. Deine Hilfe geht damit weit über mein konkretes Problem hinaus. Tausend Dank!