Hallo und guten Abend zusammen,
ich bin gerade dabei meinem FHEM beizubringen, daß er meine Satelitenreceiver zeitgesteuert updatet und neu startet.
habe folgende Zeilen in der fhem.cfg:
define STB2Update at *18:53 {fhem("{UpdateSTB2}")}
attr STB2Update group Updates
attr STB2Update room Technik
und in der 99_myUtils.pm
UpdateSTB2()
{
use Net::Telnet();
my $STB2U = new Net::Telnet (Timeout => 50,Port => 23);
#my $STB2U1 = $STB2U->dump_log("STB2telnetclient.txt");
#my $STB2U2 = $STB2U->input_log("STB2telnetclient_input.txt");
#my $STB2U3 = $STB2U->output_log("STB2telnetclient_output.txt");
$STB2U->open("192.168.10.72");
$STB2U->print("sudo opkg update && sudo opkg upgrade && reboot");
}
und erhalte im Log folgende Fehlermeldung:
2015.02.15 18:53:00 3: {UpdateSTB2} : Bareword "UpdateSTB2" not allowed while "strict subs" in use at (eval 2727) line 1.
2015.02.15 18:53:00 3: STB2Update: Bareword "UpdateSTB2" not allowed while "strict subs" in use at (eval 2727) line 1.
,
mit der ich momentan wenig anfangen kann.
Hat jmd eine Idee?
Danke schonmal im Voraus
Gruß
Thorsten
Dir fehlt ein "sub" ganz am Anfang in der myUtils
sub UpdateSTB2()
{
use Net::Telnet();
my $STB2U = new Net::Telnet (Timeout => 50,Port => 23);
#my $STB2U1 = $STB2U->dump_log("STB2telnetclient.txt");
#my $STB2U2 = $STB2U->input_log("STB2telnetclient_input.txt");
#my $STB2U3 = $STB2U->output_log("STB2telnetclient_output.txt");
$STB2U->open("192.168.10.72");
$STB2U->print("sudo opkg update && sudo opkg upgrade && reboot");
}
lg, Ici
Und das hier ist Quatsch, auch wenn es vermutlich funktioniert:
define STB2Update at *18:53 {fhem("{UpdateSTB2}")}
So:
define STB2Update at *18:53 {UpdateSTB2}