[Perl] Dove sono gli altri nick?
gambry
gambrys@gmail.com
Gio 19 Gen 2006 18:53:07 CET
Allora visto che siete tutti perl ( |_|/ Yo! \|_| ), mi potreste
spiegare cosa non va nel codice?
In pratica uso il modulo Net::IRC per aprire una sessione di irc, e
listare, tramite la chiamata names, gli utenti presenti in un
determinato canale.
Il fatto e' che la chiamata mi prende si gli utenti, ma solo quelli di
posto dispari (0,2,4,6).
Gli altri dove sono?
Cosa sbaglio?
#!/usr/bin/perl -w
use strict;
use Net::IRC;
use Data::Dumper;
use vars qw($find_user $output);
my $irc_server = 'calvino.freenode.net';
my $irc_port = 6667;
my $irc_nick = 'xambry';
my $irc_name = 'reDFog non e' etero';
my $output = './suca.txt';
my %event_lookup = (
'endofmotd' => 376,
'names_reply' => 353,
);
my $irc = new Net::IRC;
my $conn = $irc->newconn(
Nick => $irc_nick,
Server => $irc_server,
Port => $irc_port,
Ircname => $irc_name);
$conn->add_global_handler($event_lookup{endofmotd}, \&on_connect);
$conn->add_handler($event_lookup{names_reply},\&on_names_reply);
$irc->start;
sub on_connect {
my $self = shift;
$self->names('#palug');
}
sub on_names_reply {
my $self = shift;
my $event = shift;
#print Data::Dumper::Dumper($event);
my @visible_channels = split(/ /,$event->{args}->[3]);
foreach (@visible_channels) {
print $_;
}
$self->quit;
}
Maggiori informazioni sulla lista
palermo