FHEM Forum

FHEM => Anfängerfragen => Thema gestartet von: arokh12 am 09 März 2015, 19:25:28

Titel: Perl Problem
Beitrag von: arokh12 am 09 März 2015, 19:25:28
Hallo,

habe am notify folgenden Code angehangen:
define Fernseher_Off notify Fernseher:off {\
if (Value("Fernseher") eq "on)\
{fhem("set TV_Fernbedienung KEY_POWER;; define a1 at +00:01:00 {system("sudo /usr/local/bin/pilight-send -p rev2_switch -i B1 -u 56 -f&")}")}}


Leider funktioniert er nicht und ich bekomme folgende Fehlermeldung:
2015.03.09 19:25:16 1: PERL WARNING: Bareword found where operator expected at (eval 19926) line 3, near ""set TV_Fernbedienung KEY_POWER; define a1 at +00:01:00 {system("sudo"
2015.03.09 19:25:16 3: eval: {
if (Value("Fernseher") eq "on"){
fhem("set TV_Fernbedienung KEY_POWER; define a1 at +00:01:00 {system("sudo /usr/local/bin/pilight-send -p rev2_switch -i B1 -u 56 -f&")}")}}
2015.03.09 19:25:16 1: PERL WARNING: Having no space between pattern and following word is deprecated at (eval 19926) line 3.
2015.03.09 19:25:16 3: eval: {
if (Value("Fernseher") eq "on"){
fhem("set TV_Fernbedienung KEY_POWER; define a1 at +00:01:00 {system("sudo /usr/local/bin/pilight-send -p rev2_switch -i B1 -u 56 -f&")}")}}
2015.03.09 19:25:16 1: PERL WARNING: Warning: Use of "-f" without parentheses is ambiguous at (eval 19926) line 3.
2015.03.09 19:25:16 3: eval: {
if (Value("Fernseher") eq "on"){
fhem("set TV_Fernbedienung KEY_POWER; define a1 at +00:01:00 {system("sudo /usr/local/bin/pilight-send -p rev2_switch -i B1 -u 56 -f&")}")}}
2015.03.09 19:25:16 3: Fernseher_Off return value: Can't find string terminator '"' anywhere before EOF at (eval 19926) line 3.


Die IF schleife fragt die Steckdose des Fernsehers ab.

Vielen Dank im voraus

arokh12
Titel: Antw:Perl Problem
Beitrag von: nesges am 09 März 2015, 19:30:36
http://forum.fhem.de/index.php/topic,34649.msg269519.html#msg269519 und http://www.if-schleife.de/
Titel: Antw:Perl Problem
Beitrag von: betateilchen am 09 März 2015, 20:23:31
falsche Klammersetzung und an der einen oder anderen Stelle ein Anführungszeichen zuwenig oder zuviel...

Ich würde das Ganze in eine Funktion in die 99_myUtils.pm auslagern, dann wird das viel einfacher.