]> git.donarmstrong.com Git - infobot.git/blobdiff - src/IRC/IrcHooks.pl
more multinick
[infobot.git] / src / IRC / IrcHooks.pl
index af96470589624f5854bdf4d98501566ae5a73045..158cf548283c37c25778296d9fc232c144da61c0 100644 (file)
@@ -150,7 +150,7 @@ sub on_ison {
     &DEBUG("on_ison: x1 = '$x1', x2 => '$x2'");
 }
 
-sub on_endofmotd {
+sub on_connected {
     $conn = shift(@_);
 
     # update IRCStats.
@@ -170,12 +170,9 @@ sub on_endofmotd {
 
     if ( scalar keys %users < 2 ) {
         &status( '!' x 40 );
-        &status(
-"!!! Ok.  Now type '/msg $ident PASS <pass>' to get master access through DCC CHAT."
-        );
+        &status("!!! Ok.  Now type '/msg $ident PASS <pass>' to get master access through DCC CHAT.");
         &status( '!' x 40 );
     }
-
     # end of first time run.
 
     if ( &IsChanConf('Wingate') > 0 ) {
@@ -213,12 +210,10 @@ sub on_endofmotd {
     # Q, as on quakenet.org.
     if ( &IsParam('Q_pass') ) {
         &status('Authing to Q...');
-        &rawout(
-"PRIVMSG Q\@CServe.quakenet.org :AUTH $param{'Q_user'} $param{'Q_pass'}"
-        );
+        &rawout("PRIVMSG Q\@CServe.quakenet.org :AUTH $param{'Q_user'} $param{'Q_pass'}");
     }
 
-    &status('End of motd. Now lets join some channels...');
+    &status("$ident End of motd. Now lets join some channels...");
 
     #&joinNextChan();
 }
@@ -816,24 +811,25 @@ sub on_notice {
     my $nick    = $event->nick();
     my $chan    = ( $event->to )[0];
     my $args    = ( $event->args )[0];
+    my $mynick  = $conn->nick();
 
     if ( $nick =~ /^NickServ$/i ) {    # nickserv.
-        &status("NickServ: <== '$args'");
+        &status("NickServ: $mynick <== '$args'");
 
         my $check = 0;
         $check++ if ( $args =~ /^This nickname is registered/i );
         $check++ if ( $args =~ /nickname.*owned/i );
 
         if ($check) {
-            &status('nickserv told us to register; doing it.');
+            &status("nickserv told $mynick to register; doing it.");
 
             if ( &IsParam('nickServ_pass') ) {
-                &status('NickServ: ==> Identifying.');
+                &status("NickServ: ==> Identifying as $mynick.");
                 &rawout("PRIVMSG NickServ :IDENTIFY $param{'nickServ_pass'}");
                 return;
             }
             else {
-                &status("We can't tell nickserv a passwd ;(");
+                &status("$mynick can't tell nickserv a passwd ;(");
             }
         }
 
@@ -844,8 +840,7 @@ sub on_notice {
             foreach ( &ChanConfList('chanServ_ops') ) {
                 next unless &chanServCheck($_);
                 next if ($done);
-                &DEBUG(
-                    'nickserv activated or restarted; doing chanserv check.');
+                &DEBUG('nickserv activated or restarted; doing chanserv check.');
                 $done++;
             }
 
@@ -1201,11 +1196,17 @@ sub on_crversion {
     }
     push( @vernick, $nick );
 
+    &DEBUG("on_crversion: Got '$ver' from $nick");
+
     if ( $ver =~ /bitchx/i ) {
         $ver{bitchx}{$nick} = $ver;
 
     }
-    elsif ( $ver =~ /xc\!|xchat/i ) {
+    elsif ( $ver =~ /infobot/i ) {
+        $ver{infobot}{$nick} = $ver;
+
+    }
+    elsif ( $ver =~ /(xc\!|xchat)/i ) {
         $ver{xchat}{$nick} = $ver;
 
     }
@@ -1213,20 +1214,19 @@ sub on_crversion {
         $ver{irssi}{$nick} = $ver;
 
     }
-    elsif ( $ver =~ /epic|(Third Eye)/i ) {
+    elsif ( $ver =~ /(epic|Third Eye)/i ) {
         $ver{epic}{$nick} = $ver;
 
     }
-    elsif ( $ver =~ /ircII|PhoEniX/i ) {
+    elsif ( $ver =~ /(ircII|PhoEniX)/i ) {
         $ver{ircII}{$nick} = $ver;
 
     }
     elsif ( $ver =~ /mirc/i ) {
-
-        #      &DEBUG("verstats: mirc: $nick => '$ver'.");
+        # Apparently, mIRC gets the reply as "VERSION " and doesnt like the
+        # space, so mirc matching is considered bugged.
         $ver{mirc}{$nick} = $ver;
 
-        # ok... then we get to the lesser known/used clients.
     }
     elsif ( $ver =~ /ircle/i ) {
         $ver{ircle}{$nick} = $ver;