Помогите кто может.
Хочу научиться перл. В 100/101 номере был пример ирц бота на перл. если он у кого есть завершенный выложите пожалуйста.
Или допишите что бы я смог разобраться в нем дальше.
Код: Выделить всё
use Net::IRC;
$server = 'irc.tic-tac.ru';
$channel = '#dragon';
$botnick = 'Akar';
$password = 'Nopass';
$botadmin = 'Noob';
$irc = new Net::IRC;
$conn = $irc->newconn(Nick => $botnick,
Server => $server, Port => 6669);
$conn->add_global_handler('376', \&on_connect);
$conn->add_global_handler('disconnect', \&on_disconnect);
$conn->add_global_handler('kick', \&on_kick);
$conn->add_global_handler('msg', \&on_msg);
$irc->start;
sub on_connect {
$self = shift;
$self->privmsg('nickserv', "identify $password");
$self->join($channel);
$self->privmsg($channel, "Lo! I'm just a silent bot.");
}
sub on_disconnect {
$self = shift;
$self->connect();
}
sub on_kick {
$self = shift;
$self->join($channel);
$self->privmsg($channel, "Please don't kick me!");
}
sub on_msg {
$self = shift;
$event = shift;
if ($event->nick eq $botadmin) {
foreach $arg ($event->args) {
if ($arg =~ m/uptime/) {
@output = 'uptime';
foreach $line (@output) {
$self->privmsg($botadmin, $line);
}
}
if ($arg =~ m/df/) {
@output = 'df';
foreach $line (@output) {
$self->privmsg($botadmin, $line);
}
}
}
}
}Хочу разобраться как делать общедоступные команды для этого бота, т.е что бы люди на канале набрали !тест а бот ответил тест
или !кто я а бот ответил ты ник_пользователя
Заранее спасибо.