Hallo zusammen,
ich möchte von meinem AVR-Net-IO (ohne Ethersex) Werte loggen. Dazu habe ich folgendes in den FritzBoxUtils.pm eingefügt.
sub AVR (@) {
my ($ip) = @_;
use Net::Telnet;
my $telnet = new Net::Telnet ( Timeout=>5, Errmode=>'die');
$telnet->open($ip);
$telnet->waitfor('/Start Telnet Server AVR II:/i');
$telnet->waitfor('/SPS/i');
sleep 1 ;
my $test = $telnet->get;
Log 2, "moin $test";
$telnet->close;
fhem "set AVR wert $test";
"$test";
}
im Log steht alles wie erwartet drinn (5;?0;05;23,0;19,9; 36,4; 4,9;20,2; 550; 6; 0;27,7; 7,0;��;A2; | ; 0|130|023;OFF |WW; )
in der Variable AVR steht nur 5 also anscheinend nur der erste Wert. Habe schon etliche Sachen probiert sprint etc. und bin jetzt ratlos.
Wollte die Daten nur erst mal loggen sie gleich zu trennen wäre auch eine Möglichkeit aber wie?
Hi,
mach dich mal zu Arrays in Perl schlau! Das ist das was du brauchst. Die Vaiable wird als Array definiert und dann kannst du die einzelnen Werte per "AVR[0] ; AVR[1] ; AVR[2]" usw. abrufen.
Danke! Probiere ich heute Abend gleich mal aus.
Hi,
diese Frage hat wohl nix mit der Forums-Software zu tun, verschiebe ich mal.
=8-)