All pastes #616659 Raw Edit

Someone

public text v1 · immutable
·published 2007-07-12 19:16 UTC
rendered paste body
#!/usr/bin/perl
#perl ircbot by netcomm


#lets set some varibles

$server = "irc.efnet.net";     #server
$port = 6667;                    #port
$nick = "perlieBOT";             #nick
$ident = "perlieBOT";            #ident
$realname = "perlieBOT";         #realname
$chan = "#shiteaters";               #channel
$pass = "";                #pass
$su = "NetComm";                 #super user
$owners = "NetComm";      #owners




use IO::Socket;

$irc=IO::Socket::INET->new(
        PeerAddr=>$server,
        PeerPort=>$port,
        Proto=>'tcp')or die "DEAD!";
        
                print "PerlBot by netcomm\n";
                print "$nick has connected to $server on $chan\n";
                print $irc "USER $ident $ident $ident $ident :$realname\n";
                print $irc "NICK $nick\n";
                print $irc "PRIVMSG nickserv/@/services.dal.net :identify $pass\n";
                print $irc "join $chan\n";
                print $irc "PRIVMSG $owners :$nick is online\n";
              
               while(defined($in=<$irc>)){
                      
                        
                        
                        
                            ### Start of commands  
                        



if($in=~/^:(.+)\!.+ JOIN\b/){print $irc "PRIVMSG $1 :hello $1 welcome to $chan\n";}
if($in=~/PING(.*)/){print $irc "PONG :$1\n";} # MUST LEAVE THIS LINE
print "$in\n"; # AND THIS ONE



next unless $in =~ /^:$owners\b/; #makes bot only respond to owner


sub about {
if($in=~/!about/)
{print $irc "PRIVMSG $chan :I am a ircbot written in perl by netcomm\n";}
}

sub opdeop {
if($in=~/!op /)
{print $irc "MODE $chan +o $'\n";}
if($in=~/!deop /)
{print $irc "MODE $chan -o $'\n";}
}

sub joinpart {
if($in=~/!join / & $in=~/$su/)
{print $irc "join :$'\n";}
if($in=~/!part / & $in=~/$su/)
{print $irc "part :$'\n";}
}
                
sub kickban {
if($in=~/!kickban /)
{print $irc "kick $chan $' :TXTbot ownz da world\n";}
if($in=~/!kickban /)
{print $irc "mode $chan +b $'\n";}
}

sub kick {
if($in=~/!kick /)
{print $irc "kick $chan $' :TXTbot ownz da world\n";}
}

sub raw {
if($in=~/!raw / & $in=~/$su/)
{print $irc " $'\n";}
}


sub say {
if($in=~/!say /)
{print $irc "PRIVMSG $chan :$'\n";}
}

sub quit {
if($in=~/!quit/ & $in=~/$su/)
{print $irc "PRIVMSG $chan :Seya\n";}
if($in=~/!quit/)
{print $irc "QUIT\n";}
}

sub name {
if($in=~/!nick / & $in=~/$su/)
{print $irc "nick :$'\n";}
}

sub rehash {
if($in=~/!rehash/ & $in=~/$su/)
{print $irc "PRIVMSG $chan :Rehashing...\n";}
if($in=~/!rehash/ & $in=~/$su/)
{print $irc "QUIT\n";}
if($in=~/!rehash/ & $in=~/$su/){
system("bot.pl");}
if($in=~/!rehash/ & $in=~/$su/){
print $irc "join $chan";}
}

sub viewusers {
if($in=~/!users/)
{print $irc "PRIVMSG $chan :Current Users:$owners\n";}
}


#sub calls

&viewusers;
&rehash;
&raw;
&kickban;
&say;
&name;
&kick;
&about;
&opdeop;
&joinpart;
&quit;

}
close($irc);