diff options
| author | 2007-06-06 21:30:25 +0000 | |
|---|---|---|
| committer | 2007-06-06 21:30:25 +0000 | |
| commit | 04c4d4ae0d6fdfe9e59a50e79b40047a08feefb7 (patch) | |
| tree | 3db7aa17c73151e038f08e3cd0c1b2faffc0c482 /modules/services.pl | |
| parent | 110cb874fc58ae4a214889bb8d6545201a57dd2f (diff) | |
Added files
Diffstat (limited to 'modules/services.pl')
| -rw-r--r-- | modules/services.pl | 44 |
1 files changed, 44 insertions, 0 deletions
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; |
