[gelöst]WeekdayTimer --> problem calculating dynamic param: ...........

Begonnen von Marcel_R, 06 Februar 2017, 22:20:43

Vorheriges Thema - Nächstes Thema

Marcel_R

Grüezi,

Ich schalte mit folgender Definition:
[define FernsehAn WeekdayTimer harmonyWZ 17:58|{fhem("set harmonyWZ activity Fernsehen")}
den Fernseher ein.

Dies funktioniert (d.h. der Fernseher wird zur richtigen Zeit eingeschaltet) - jedoch meldet  das Logfile
Zitat2017.02.06 17:39:00 1: [FernsehAn] problem calculating dynamic param: ........... {fhem("set harmonyWZ activity Fernsehen")}
.

Das Ziel ist, den Fernseher unter einer Bedingung einzuschalten, wegen dem Problem komme ich nicht weiter.

Kann mir jemand auf die Sprünge helfen?

Danke im Voraus!
Marcel

FHEM / Fritz!Box 7490 / CULv3 / Raspi / COC / MAX! / HomeMatic /

Thorsten Pferdekaemper

Hi,
kannst Du mal beschreiben, was Du machen willst? Mir wird das durch das define nicht so ganz klar.
Gruß,
   Thorsten
FUIP

Marcel_R

#2
Hi Thorsten,

Gerne.

An jedem Tag soll der Fernseher via Harmony kurz vor 18:00 eingeschaltet werden.

Als Timer-Programm habe ich den WeekdayTimer gewählt. Ist der am Besten geeignet für diesen Zweck?

Zum (normalen, d.h. ohne Timer) Einschalten lautet der Befehl:
Zitatset harmonyWZ activity Fernsehen

Die Definition von WeekdayTimer ist:
define <name> WeekdayTimer <device> [<language>] [weekdays] <profile> <command>|<condition>

Kann ich damit Deine Frage beantworten?

Danke im Voraus!
Marcel

P.S.:
Sollte ich die Frage eventuell eher im Forum http://forum.fhem.de Unterstuetzende Dienste (Maintainer WeekdayTimer) stellen?
FHEM / Fritz!Box 7490 / CULv3 / Raspi / COC / MAX! / HomeMatic /

Thorsten Pferdekaemper

Ach so, das mit der Harmony ist das Kommando, das den Fernseher einschalten soll.
Also dann so:

define FernsehAn WeekdayTimer harmonyWZ 17:58 set harmonyWZ activity Fernsehen

...nicht ausprobiert, aber das entspricht ein bisschen mehr dem Schema laut Commandref.
Gruß,
   Thorsten
FUIP

Marcel_R

Hi Thorsten,

Danke für die Hilfe.

Das Schema laut Commandref verlangt zwingend <profile> und <profile> verlangt zwingend <time>|<parameter>.

Der <parameter> kann ein Text oder Perl-Code sein. In der Zwischenzeit habe ich herausgefunden wie "activity Fernsehen" als Text im Parameter eingegeben werden muss (" " ersetzt durch ":") (wieso wohl dasselbe als Perlcode richtig ausgeführt wurde, aber einen Fehler im Logfile generierte?). Somit kann ich jetzt diesen Befehl auch mit condition ausführen lassen:

harmonyWZ 13:29|activity:Fernsehen (ReadingsVal("harmonyWZ","currentActivity","Fernsehen") eq "PowerOff")

LG
Marcel
FHEM / Fritz!Box 7490 / CULv3 / Raspi / COC / MAX! / HomeMatic /

Dietmar63

Perlcode als Parameter ist ein recht neues Feature, das leider schwer zu benutzten ist.
Wahrscheinlich werde ich es ausbauen und über eine verbesserte Version nachdenken.
Gruß Dietmar
FB7390, CUL, 2 FHT, FS20
modules: 98_WOL.pm, 98_Heating_Control.pm,   98_WeekdayTimer.pm, 98_RandomTimer.pm, 59_Twilight.pm

carzl

Ich habe seit ein paar Tagen dieselbe Fehlermeldung, ich nutze den Weekdaytimer dafür, die Lautstärke der Sprachausgabe (ein Speaker direkt am RPi) morgens hoch- und abends runterzuregeln:

AR_Sprachausgabe 12345|06:30|{fhem("set AR_Sprachausgabe volume 30")} 12345|21:01|{fhem("set AR_Sprachausgabe volume 10")} 60|08:30|{fhem("set AR_Sprachausgabe volume 30")} 60|21:01|{fhem("set AR_Sprachausgabe volume 10")}

Dietmar, sollte ich das generell anders lösen und Perlcode im WDT vermeiden?

Danke!
Fhem 6.0 auf RPi3: CUL, JeeLink, Hue Bridge v2, HarmonyHub, Fritzbox7590+7412, 6x FHT80b, 2x FS20S6A, FS20S4A, S300TH, 4x FritzDECT200/210, 4x TX29DTH, 4x Hue LightStripe, 5x Hue Smart Plug, Sonos mit 5x Play:1, Beam und Sub; 3x Lenovo Tab M10 mit FTUI