Hallo zusammen,
möchte über Telnet ein Command absetzen mit einer IF Abfrage, irgendwie meckert er immer...
In der Telnetkonsole funktioniert das bereits:
{fhem("set FL.EG.anzeige.led10 led green") if(Value('FL.EG.anzeige.led10') ne "green")}
in meinem Script (als Cron) aber nicht:
sudo /opt/fhem/fhem.pl 7072 {fhem("set FL.EG.anzeige.led10 led green") if(Value('FL.EG.anzeige.led10') ne "green")}
Hier kommt die Fehlermeldung: -bash: syntax error near unexpected token `('
Oder geht das garnicht im Script ?
Gruß Klaus
da fehlt noch perl und " "
Und warum eigentlich den Befehl in perl gekapselt?
Probier mal das:
/usr/bin/perl /opt/fhem/fhem.pl 7072 "set FL.EG.anzeige.led10:FILTER=STATE!=green led green"
Fehlt da nicht der Host vor dem Port oder ist localhost default?
Danke für die Antworten:
Diese beide Varianten funktionieren:
/usr/bin/perl /opt/fhem/fhem.pl 7072 "set FL.EG.anzeige.led10:FILTER=STATE!=green led green"
/opt/fhem/fhem.pl 7072 "{fhem('set FL.EG.anzeige.led10 led green') if(Value('FL.EG.anzeige.led10') ne 'green')}"
DANKE