Hauptmenü

Telnet Befehl Senden

Begonnen von ostseehuepfer, 11 Oktober 2015, 11:37:51

Vorheriges Thema - Nächstes Thema

franky08

#15
Entweder
sudo apt-get install telnetd
oder sudo apt-get install telnet, denke da wird telnet-perl gebraucht

Wie das Paket genau heißt, müsstest du selber mal suchen

Guckst du hier: https://packages.debian.org/sid/perl/libnet-telnet-perl
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

ostseehuepfer

#16
so in etwa??

Voraussetzungen

    Telnet auf der Fritzbox aktiviert
    perl NET::Telnet Modul auf dem Host wo FHEM läuft installiert. Beim Raspberry-PI geht das so:

sudo apt-get install libnet-telnet-perl


ändert nix

franky08

#17
Wird an dem beschränkten Perl auf der Fritte liegen, vlt. kann es auf der Fritte nicht installiert werden. Telnet ist auf der Fritte seit einiger Zeit von AVM nicht mehr aktiviert/unterstützt.
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

ostseehuepfer


franky08

Da frag im Einplatinencomputer Bereich noch mal nach, da sind die Linux Leute unterwegs.

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

dev0

Zeig mal deine vollständige 99_myUtils.pm, wenn sie nicht kilometer lang ist.

ostseehuepfer


#########################################################################
## Funktion......: FHEM Backup
## Besonderheiten: Anzeige der vorhandenen Backups im dummy
#########################################################################
SYS_Backup:* {
fhem("backup");;
opendir DIR, \media\usbstick\backup or die $!;;
my $mybackups = "";;
while(my $file = readdir DIR){
  next if($file eq "." || $file eq "..");;
  $mybackups = $mybackups."$file
";;
}
closedir DIR;;
fhem("set SYS_Backup ".$mybackups);;
}
#########################################################################

package main;
sub Kanal_Umschalten()
{
    use Net::Telnet();
    my $tab = new Net::Telnet (Timeout => 50);
    #my $fh1 = $tab->dump_log("telnetclient.txt"); <-- macht zum debuggen Sinn.
    #my $fh2 = $tab->input_log("telnetclient_input.txt"); <-- macht zum debuggen Sinn.
    #my $fh3 = $tab->output_log("telnetclient_output.txt"); <-- macht zum debuggen Sinn.

    $tab->open("192.168.11.15");
    $tab->print("xyz");
}



hatte use ... auch schon ganz oben

grüsse

dev0

schau mal ins wiki, wie die 99_myUtils.pm aufgebaut sein muss. Am Anfang/Ende fehlt was und die Deklaration der ersten sub ist falsch...

franky08

Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

ostseehuepfer

Moin,

habe die Config angepasst

package main;
use strict;
use warnings;
use POSIX;
use Net::Telnet();
sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}
#########################################################################
## Funktion......: FHEM Backup
## Besonderheiten: Anzeige der vorhandenen Backups im dummy
#########################################################################
SYS_Backup:* {
fhem("backup");;
opendir DIR, \media\usbstick\backup or die $!;;
my $mybackups = "";;
while(my $file = readdir DIR){
  next if($file eq "." || $file eq "..");;
  $mybackups = $mybackups."$file
";;
}
closedir DIR;;
fhem("set SYS_Backup ".$mybackups);;
}
#########################################################################

sub Kanal_Umschalten($)
{
    use Net::Telnet();
    my $tab = new Net::Telnet (Timeout => 50);
    #my $fh1 = $tab->dump_log("telnetclient.txt"); <-- macht zum debuggen Sinn.
    #my $fh2 = $tab->input_log("telnetclient_input.txt"); <-- macht zum debuggen Sinn.
    #my $fh3 = $tab->output_log("telnetclient_output.txt"); <-- macht zum debuggen Sinn.

    $tab->open("192.168.11.15");
    $tab->print("xyz");
}


der Fehler bleibt der selbe


franky08

Da fehlt am Ende der utils noch was immens wichtiges in die letzte Zeile ein 1;

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1

dev0

Und dann lösche den SYS_backup Krams raus, das funktioniert so auch nicht.
Dann reload 99_myUtils und schaust du in das log...

ostseehuepfer

Also so

package main;
use strict;
use warnings;
use POSIX;
use Net::Telnet();
sub
myUtils_Initialize($$)
{
  my ($hash) = @_;
}
#########################################################################
## Funktion......: FHEM Backup
## Besonderheiten: Anzeige der vorhandenen Backups im dummy
#########################################################################
SYS_Backup:* {
fhem("backup");;
opendir DIR, \media\usbstick\backup or die $!;;
my $mybackups = "";;
while(my $file = readdir DIR){
  next if($file eq "." || $file eq "..");;
  $mybackups = $mybackups."$file
";;
}
closedir DIR;;
fhem("set SYS_Backup ".$mybackups);;
}
#########################################################################

sub Kanal_Umschalten()
{
    use Net::Telnet();
    my $tab = new Net::Telnet (Timeout => 50);
    #my $fh1 = $tab->dump_log("telnetclient.txt"); <-- macht zum debuggen Sinn.
    #my $fh2 = $tab->input_log("telnetclient_input.txt"); <-- macht zum debuggen Sinn.
    #my $fh3 = $tab->output_log("telnetclient_output.txt"); <-- macht zum debuggen Sinn.

    $tab->open("192.168.11.15");
    $tab->print("xyz");
}

1;


???

rapster

Reduzier das ganze doch erstmal auf das notwendigste!, also auf deine Problem-Subroutine!

package main;
use strict;
use warnings;
use POSIX;

use Net::Telnet ();

sub myUtils_Initialize($$) { my ($hash) = @_; }

sub Kanal_Umschalten() {
    my $tab = new Net::Telnet (Timeout => 50);

    $tab->open("192.168.11.15");
    $tab->print("xyz");
}

1;


Starte Fhem anschließend am besten mal neu und schau dir im Log alle Warning usw. an!

Wenn Net::Telnet nicht installiert ist musst du das natürlich auch erst installieren!
Bei Debian ist es das Paket libnet-telnet-perl, evtl. ist es das auch bei raspbian, oder über CPAN installieren.

Gruß
  Claudiu

franky08

ZitatGuckst du hier: https://packages.debian.org/sid/perl/libnet-telnet-perl

Das hatte ich ihm oben auch schon gepostet.
Zitat von: ostseehuepfer am 11 Oktober 2015, 21:25:54
so in etwa??

Voraussetzungen

    Telnet auf der Fritzbox aktiviert
    perl NET::Telnet Modul auf dem Host wo FHEM läuft installiert. Beim Raspberry-PI geht das so:

sudo apt-get install libnet-telnet-perl


ändert nix

Da war die sub aber auch noch nicht OK.

VG
Frank
Debian Bookworm auf HUNSN / Debian Bullseye auf 2.ter HUNSN F2F an 2x RaspiB
mit FHEM aktuell
22Zoll ViewSonic als Infodislay (WVC)
3xHMLAN mit vccu, raspmatic_rpi3, HMIP-HCU1