/[irc-logger]/trunk/bin/irc-logger.pl
This is repository of my old source code which isn't updated any more. Go to git.rot13.org for current projects!
ViewVC logotype

Diff of /trunk/bin/irc-logger.pl

Parent Directory Parent Directory | Revision Log Revision Log | View Patch Patch

revision 114 by dpavlin, Mon Mar 10 21:52:49 2008 UTC revision 116 by dpavlin, Wed Mar 12 17:21:07 2008 UTC
# Line 112  GetOptions( Line 112  GetOptions(
112  #       confess "fatal error";  #       confess "fatal error";
113  #};  #};
114    
 open(STDOUT, '>', $log_path) || warn "can't redirect log to $log_path: $!";  
   
115  sub _log {  sub _log {
116          print strftime($TIMESTAMP,localtime()) . ' ' . join(" ",@_) . $/;          print strftime($TIMESTAMP,localtime()) . ' ' . join(" ",map { ref($_) ? dump( $_ ) : $_ } @_) . $/;
117  }  }
118    
119    open(STDOUT, '>', $log_path) && warn "log to $log_path: $!\n";
120    
121  # HTML formatters  # HTML formatters
122    
123  my %escape = ('<'=>'&lt;', '>'=>'&gt;', '&'=>'&amp;', '"'=>'&quot;');  my %escape = ('<'=>'&lt;', '>'=>'&gt;', '&'=>'&amp;', '"'=>'&quot;');
# Line 1048  POE::Session->create( inline_states => { Line 1048  POE::Session->create( inline_states => {
1048                  $_[KERNEL]->post( $irc => connect => {} );                  $_[KERNEL]->post( $irc => connect => {} );
1049          },          },
1050          irc_notice => sub {          irc_notice => sub {
1051                  _log "<< notice",$_[ARG0],dump($_[ARG1]);                  _log "<< notice from ", $_[ARG0], $_[ARG1], $_[ARG2];
1052                  if ( $_[ARG0] =~ m!/msg\s+NickServ\s+IDENTIFY!i ) {                  my $m = $_[ARG2];
1053                          _log ">> IDENTIFY";                  if ( $m =~ m!/msg.*(NickServ).*(IDENTIFY)!i ) {
1054                            _log ">> suggested to $1 $2";
1055                            $_[KERNEL]->post( $irc => privmsg => $1, "$2 $NICK" );
1056                    } elsif ( $m =~ m!\Q$NICK\E.*registered!i ) {
1057                            _log ">> registreted, so IDENTIFY";
1058                          $_[KERNEL]->post( $irc => privmsg => 'nickserv', "IDENTIFY $NICK" );                          $_[KERNEL]->post( $irc => privmsg => 'nickserv', "IDENTIFY $NICK" );
1059                    } else {
1060                            warn "## ignore $m\n";
1061                  }                  }
1062          },          },
1063          irc_snotice => sub {          irc_snotice => sub {
1064                  _log "<< snotice",$_[ARG0];                  _log "<< snotice", $_[ARG0]; #dump( $_[ARG0],$_[ARG1], $_[ARG2] );
1065                  if ( $_[ARG0] =~ m!/(QUOTE)\s+(PASS\s+\d+)!i ) {                  if ( $_[ARG0] =~ m!/(QUOTE)\s+(PASS\s+\d+)!i ) {
1066                          warn ">> $1 | $2\n";                          warn ">> $1 | $2\n";
1067                          $_[KERNEL]->post( $irc => lc($1) => $2);                          $_[KERNEL]->post( $irc => lc($1) => $2);

Legend:
Removed from v.114  
changed lines
  Added in v.116

  ViewVC Help
Powered by ViewVC 1.1.26