use IO::Socket; use strict; my @ping = qw(PING1 PING2 PING3); my @list = ("CONNECT", @ping,"DISCONNECT","END SESSION"); my $socket = new IO::Socket::INET (PeerAddr =>'PC110197',PeerPort => 1810) or die "Konnte Socket nicht erstellen: $!\n"; $socket->autoflush(1); ########## CREATE CLIENT ########### print "\nSende ein Client Create zum Server...\n"; print $socket "CLIENT CREATE\n"; my $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!"; ######### Befehle ############ for my $befehl (@list) { print "\nSende ein $befehl\n"; print $socket "$befehl\n"; $line = getlinefromsocket ($socket); if ($line eq "ACK") { print "erfolgreich!" } elsif ($line eq "NACK") { print "fehlgeschlagen!" } else { print "nichts geht!" } } } elsif ($line eq "NACK") { print "fehlgeschlagen!" } else { print "Keine Verbindung!"} print "\n"; $socket->close(); ########## UNTERPROGRAMM ########### sub getlinefromsocket { my $buffer; my $char; while ( $socket->recv( $char, 1 ) ) { last if $char eq "\0"; $buffer .= $char; } return $buffer; }