10-09-2009, 03:32 PM
A basic irc bot written by me brett7 in perl, this will connect to a server and channel of your choice then idle. There is some example commands you can use to make your own!
http://brett7.pastebin.com/f7232f0be
http://brett7.pastebin.com/f7232f0be
Code:
#!/usr/bin/perl -w
# Basic IRC Bot.
# Coded by brett7.
use strict;
use IO::Socket;
use Socket;
my $server = $ARGV[0];
my $port= '6667';
my $channel = $ARGV[1];
my $nick = $ARGV[2];
my $identify = "brett";
my $name = "brett";
if (@ARGV != 3){
print q{
#########################################################
# brett7's irc bot #
#Error: correct usage "irc.pl <server> <channel> <nick>"#
#########################################################
};
exit;
}
my $socket = new IO::Socket::INET(PeerAddr => $server, PeerPort => $port, Proto => "tcp") or die "Error connecting";
print " - brett7's irc bot\n\n";
print " - Connecting To $server on channel $channel with nickname $nick!\n\n";
print $socket "NICK $nick\r\n";
print $socket "USER $identify 8 * :$name\r\n";
print $socket "JOIN $channel\r\n";
print " - Connected To $server successfully!\n\n";
while (my $response = <$socket>)
{
chop $response;
if ($response =~ /^PING(.*)$/i) { print $socket "PONG $1\r\n"; }
if ($response =~ /^.*!ver(.*)$/i) { print $socket ("PRIVMSG $channel brett7's bot\r\n"); }
if ($response =~ /^.*!quit(.*)$/i) { print $socket ("QUIT\r\n"); }
}