Leser: 1
![]() |
|< 1 2 3 4 5 >| | ![]() |
42 Einträge, 5 Seiten |
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
if($socket == $server) {
my $client = $socket->accept;
$select->add($client);
$client->print("Connected"); # Aufforderung Username zu senden
} else {
my $line = $socket->getline;
if(defined $line) {
$line =~ s!\r?\n$!!g;
if(substr($line,0,4) eq 'name') {
push @users, substr($line,4,20);
$socket->print("In Userlist aufgenommen\n");
} else {
if(lc($line) eq "quit") {
print "Client quits\n";
delete_socket($select, $socket);
} else {
print "Client says: [$line]\n";
$socket->print("$line\n");
}
}
} else {
print "Connection closed by client\n";
delete_socket($select, $socket);
}
}
1
2
3
4
5
6
7
8
9
$from = get_username($hash{$1});
$socket_tmp->print("Nachricht von: $from\n");
sub get_username {
foreach (my ($user_key, $user_value) = each(%hash)) {
return $user_key and last if $user_value eq $_[0];
}
}
1
2
3
4
5
6
7
sub delete_socket {
my ($sel, $sock) = @_;
my %delete_hash = reverse %hash;
print "Verbindung zu Client $delete_hash{$sock} wurde abgebrochen\n";
$sel->remove($sock);
$sock->close();
}
![]() |
|< 1 2 3 4 5 >| | ![]() |
42 Einträge, 5 Seiten |