use Net::IRC; $irc = new Net::IRC; my $server = "irc.zirc.org"; my $nick = "GZ3r0"; my $chan = "#Min0ria"; $conn = $irc->newconn(Nick => $nick, Server => $server); sub on_connect { my $self = shift; print "Joining $chan\n"; $self->join("$chan"); # $self->privmsg("$chan", "Well, at least I'm connected"); } sub on_msg { my ($irc, $event) = @_; my $text = $event->{args}[0] . "\n"; print "$text"; if ($text =~ /^\!(.+)$/) { on_public_command($irc, $1, $event->{nick}, $irc); } } sub on_public_command { my ($irc, $command, $nick, $irc) = @_; @array = split(/ /,$command); $cmd = "$array[0]"; $command =~ s/$cmd //; if ($cmd == "say" && $nick == "GZero|UK") { $irc->privmsg("$chan", "$command"); } } $conn->add_global_handler('376', \&on_connect); # global $conn->add_handler('public', \&on_msg); # local $conn->add_handler('msg', \&on_msg); # local $irc->start;