Hi,
ich würde gerne aus einem notify heraus etwas auf meinen TV schicken wenn mein PC an ist. Wenn der PC aus ist soll er den teil überspringen.
Also nach 11 sek soll er prüfen ob der PC an ist und wenn ja (set wz_TV remoteControl input). Wenn nicht dann nichts tun.
...
{fhem("define tmp_FilmVonPC_6 at +00:00:11 {if (Value("NAS_PC") eq "on")(set wz_TV remoteControl input) ") ") }}
...
Hab schon diverse Varianten versucht, bekomme aber immer einen Syntax error :-\
Perl Syntax für if ist: if (Bedingung){mach was}
Kurz, weil mobil...
So geht der Code wenn ich ihn direkt eingebe
define tmp_FilmVonPC_6 at +00:00:11 { if (Value("NAS_PC") eq "on") { fhem("set wz_TV remoteControl input") }}
Es ist etwas schwer zu ergründen, was du mit #3 beabsichtigst.
Ist das noch eine Frage, oder bedeutet das, dass das Problem gelöst ist?
Du kannst jetzt entweder den funktionierenden Code direkt als Anweisung in das notify packen (man muß nicht alles dort in Perl hinschreiben), oder du mußt die Anführungszeichen etwas anders gestalten. Dazu könntest du z.B. die vorhandenen doppelten Anführungszeichen durch einfache ersetzen und dann nur doppelte Anführungszeichen in die einleitende {fhem ("-Anweisung reinnehmen und ganz am Ende...
Jedenfalls wäre es bei weiteren Problemen sinnvoll, wenn du ein list des notify postest ;)
Zitat{fhem("define tmp_FilmVonPC_6 at +00:00:11 {if (Value("NAS_PC") eq "on")(set wz_TV remoteControl input) ") ") }}
Statt define würde ich hier defmod nehmen.
Warum die Abfrage erst 11 sek später? Der Usecase bleibt mir unklar.