Jump to content
GIGN Forum

[perl] Irc Bots.


Recommended Posts

Praktiski nekas īpaš, šovakar pielikšu klāt lai var izvilkt status /gostats (eg. !stats Saime)

print $socket ("PRIVMSG $chanel K:D = 1:2\r\n");

print $socket ("PRIVMSG $chanel Online Time = 1:20:00\r\n");

karoč kaut ko tamlīdzīgu. Lai gan kodu izlieku šeit publiski, paturu tiesības to jebkurā laika aizvākt ja kāds izdomas Author: vietā ielikt savu niku. Anyway, tad jau vakar iepostēšu kas sanāca.

Ja ir kāda ideja ko pielikt, droši speriet vaļā.

#!/usr/bin/perl -w
# Author: Saime
# Date: xx/xx/xxxx
use strict;
use LWP::Simple;
use IO::Socket;
use Socket; 
my $server = ""; # Servera adrese. (eg. irc.lv)
my $port= ''; # Servera ports. (eg. 6667)
my $chanel = ""; # Server kanals kura velaties botam pievienoties. (eg. #saime)
my $nick = ""; # Bota niks. (eg. Saime)
my $url = ""; # Serveru adrese, prieksh !gign-status
### Identify/Name ###
my $identify = ""; # Bota identifikacija (eg. noob)
my $name = ""; # Bota /vards/ (eg. 123)
### END ###
my $socket = new IO::Socket::INET(PeerAddr => $server, PeerPort => $port, Proto => "tcp") or die "Kkas nav...";
print $socket "NICK $nick\r\n";
print $socket "USER $identify 8 * :$name\r\n";
print $socket "JOIN $chanel\r\n"; 
while (my $body = <$socket>) { 
chop $body; 
if ($body =~ /^PING(.*)$/i) { print $socket "PONG $1\r\n"; } # Atbildam uz servera ping requestiem.
if ($body =~ /^.*!admins(.*)$/i) { print $socket ("PRIVMSG $chanel Saime\r\n"); } # Bota admins/owneris.
if ($body =~ /^.*!quit(.*)$/i) { print $socket ("QUIT\r\n"); } # Nogalinaat botu.
# if ($body =~ /^.*!stati(.*)$/i){}
}
# EOF

Edited by NereaaliKrutsChalis
Link to comment
Share on other sites

Please sign in to comment

You will be able to leave a comment after signing in



Sign In Now
 Share

×
×
  • Create New...