Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- #!/usr/bin/env perl
- use 5.016;
- use warnings;
- use strict;
- use AnyEvent;
- use AnyEvent::IRC::Client;
- use Chatbot::Eliza;
- my $HOST = "localhost";
- my $PORT = 6667;
- my $NICK = "Jameson";
- my $CHANNEL = "#test";
- my $eliza = Chatbot::Eliza->new;
- my $c = AnyEvent->condvar;
- my $timer;
- my $con = new AnyEvent::IRC::Client;
- $con->reg_cb(
- registered => sub {
- $con->send_srv(JOIN => $CHANNEL);
- },
- disconnect => sub {
- $c->broadcast;
- },
- publicmsg => sub {
- my $ircmsg = pop @_;
- my ($channel, $text) = @{$ircmsg->{params}};
- my ($in) = $text =~ m/^$NICK\b.?\s+(.*)/i;
- if ($in) {
- my $out = $eliza->transform($in);
- my (undef, $who) = $con->split_nick_mode($ircmsg->{prefix});
- $con->send_srv(PRIVMSG => $CHANNEL, "$who: $out");
- }
- },
- );
- $con->connect ($HOST, $PORT, { nick => $NICK });
- $c->wait;
- $con->disconnect;
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement