From 04c4d4ae0d6fdfe9e59a50e79b40047a08feefb7 Mon Sep 17 00:00:00 2001 From: William Heimbigner Date: Wed, 6 Jun 2007 21:30:25 +0000 Subject: Added files --- modules/services.pl | 44 ++++++++++++++++++++++++++++++++++++++++++++ 1 file changed, 44 insertions(+) create mode 100644 modules/services.pl (limited to 'modules/services.pl') diff --git a/modules/services.pl b/modules/services.pl new file mode 100644 index 0000000..d110b60 --- /dev/null +++ b/modules/services.pl @@ -0,0 +1,44 @@ +use warnings; +use strict; + +sub doServices { + my ($conn, $event) = @_; + if ($event->{from} eq 'NickServ!NickServ@services.') + { + print "NickServ: $event->{args}->[0]\n"; + if ( $event->{args}->[0] eq 'This nickname is owned by someone else' ) + { + $conn->privmsg( 'NickServ', "identify $::pass" ); + } + elsif ( $event->{args}->[0] eq 'Password accepted - you are now recognized' ) + { + $conn->join($_) foreach ( @{$::settings->{autojoins}} ); + } + elsif ($event->{args}->[0] =~ /has been killed$/ ) + { + $conn->nick( $::settings->{nick} ); + } + elsif ($event->{args}->[0] =~ /Password Incorrect/ ) + { + $conn->join($_) foreach ( @{$::settings->{autojoins}} ); + } + } + elsif ($event->{from} eq 'ChanServ!ChanServ@services.') + { + print "ChanServ: $event->{args}->[0] \n"; + if ($event->{args}->[0] =~ /You are already opped on \[.(.*).\]/) + { + doQueue($conn, $1); + } + elsif ( $event->{args}->[0] =~ /^All.*bans matching.*have been cleared on(.*)/) + { + $conn->join($1); + } + } +} + +sub Services::killsub { + undef &doServices; +} + +return 1; -- cgit v1.2.3