/[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 112 by dpavlin, Mon Mar 10 13:02:32 2008 UTC revision 116 by dpavlin, Wed Mar 12 17:21:07 2008 UTC
# Line 61  chomp($HOSTNAME); Line 61  chomp($HOSTNAME);
61  my $CHANNEL = '#razmjenavjestina';  my $CHANNEL = '#razmjenavjestina';
62    
63  if ( $HOSTNAME =~ m/llin/ ) {  if ( $HOSTNAME =~ m/llin/ ) {
64          $irc_config->{nick} = 'irc-logger-dev';          $irc_config->{nick} = 'irc-logger-llin';
65  #       $irc_config = {  #       $irc_config = {
66  #               nick => 'irc-logger-dev',  #               nick => 'irc-logger-llin',
67  #               server => 'localhost',  #               server => 'localhost',
68  #               port => 6668,  #               port => 6668,
69  #       };  #       };
# 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 696  sub rss_fetch { Line 696  sub rss_fetch {
696                  $msg .= prefix( ' | ' , $entry->title );                  $msg .= prefix( ' | ' , $entry->title );
697                  $msg .= prefix( ' | ' , $link );                  $msg .= prefix( ' | ' , $link );
698  #               $msg .= prefix( ' id ' , $entry->id );  #               $msg .= prefix( ' id ' , $entry->id );
699                    if ( my $tags = $entry->category ) {
700                            $tags =~ s!^\s+!!;
701                            $tags =~ s!\s*$! !;
702                            $tags =~ s!\s+!// !g;
703                            $msg .= prefix( ' ' , $tags );
704                    }
705    
706                  if ( $args->{kernel} && $send_rss_msgs ) {                  if ( $args->{kernel} && $send_rss_msgs ) {
707                          $send_rss_msgs--;                          $send_rss_msgs--;
# Line 1009  POE::Session->create( inline_states => { Line 1015  POE::Session->create( inline_states => {
1015          irc_376 => sub {          irc_376 => sub {
1016                  _log "<< motd", $_[ARG0], "end";                  _log "<< motd", $_[ARG0], "end";
1017          },          },
1018    #       irc_433 => sub {
1019    #               print "# irc_433: ",$_[ARG1], "\n";
1020    #               warn "## indetify $NICK\n";
1021    #               $_[KERNEL]->post( $irc => privmsg => 'nickserv', "IDENTIFY $NICK" );
1022    #       },
1023    #       irc_451 # please register
1024          irc_477 => sub {          irc_477 => sub {
1025                  _log "<< irc_477: ",$_[ARG1];                  _log "<< irc_477: ",$_[ARG1];
1026                  $_[KERNEL]->post( $irc => privmsg => 'nickserv', "register $NICK" );                  _log ">> IDENTIFY $NICK";
1027                    $_[KERNEL]->post( $irc => privmsg => 'NickServ', "IDENTIFY $NICK" );
1028          },          },
1029          irc_505 => sub {          irc_505 => sub {
1030                  _log "<< irc_505: ",$_[ARG1];                  _log "<< irc_505: ",$_[ARG1];
1031                  $_[KERNEL]->post( $irc => privmsg => 'nickserv', "register $NICK" );                  _log ">> register $NICK";
1032                    $_[KERNEL]->post( $irc => privmsg => 'NickServ', "register $NICK" );
1033    #               $_[KERNEL]->post( $irc => privmsg => 'nickserv', "IDENTIFY $NICK" );
1034  #               $_[KERNEL]->post( $irc => privmsg => 'nickserv', "set hide email on" );  #               $_[KERNEL]->post( $irc => privmsg => 'nickserv', "set hide email on" );
1035  #               $_[KERNEL]->post( $irc => privmsg => 'nickserv', "set email dpavlin\@rot13.org" );  #               $_[KERNEL]->post( $irc => privmsg => 'nickserv', "set email dpavlin\@rot13.org" );
1036          },          },
# Line 1032  POE::Session->create( inline_states => { Line 1047  POE::Session->create( inline_states => {
1047                  sleep($sleep_on_error);                  sleep($sleep_on_error);
1048                  $_[KERNEL]->post( $irc => connect => {} );                  $_[KERNEL]->post( $irc => connect => {} );
1049          },          },
 #       irc_433 => sub {  
 #               print "# irc_433: ",$_[ARG1], "\n";  
 #               warn "## indetify $NICK\n";  
 #               $_[KERNEL]->post( $irc => privmsg => 'nickserv', "IDENTIFY $NICK" );  
 #       },  
 #       irc_451 # please register  
1050          irc_notice => sub {          irc_notice => sub {
1051                  _log "<< notice",$_[ARG0];                  _log "<< notice from ", $_[ARG0], $_[ARG1], $_[ARG2];
1052                  if ( $_[ARG0] =~ m!/msg\s+NickServ\s+IDENTIFY!i ) {                  my $m = $_[ARG2];
1053                    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);
# Line 1065  POE::Session->create( inline_states => { Line 1081  POE::Session->create( inline_states => {
1081    
1082  # http server  # http server
1083    
1084    _log "WEB archive at $url";
1085    
1086  my $httpd = POE::Component::Server::HTTP->new(  my $httpd = POE::Component::Server::HTTP->new(
1087          Port => $http_port,          Port => $http_port,
1088          PreHandler => {          PreHandler => {
# Line 1111  foreach my $c (@cols) { Line 1129  foreach my $c (@cols) {
1129          $style .= ".col-${max_color} { background: $c }\n";          $style .= ".col-${max_color} { background: $c }\n";
1130          $max_color++;          $max_color++;
1131  }  }
1132  warn "defined $max_color colors for users...\n";  _log "WEB defined $max_color colors for users...";
1133    
1134  sub root_handler {  sub root_handler {
1135          my ($request, $response) = @_;          my ($request, $response) = @_;
# Line 1233  sub root_handler { Line 1251  sub root_handler {
1251                          $feed->add_entry( $feed_entry );                          $feed->add_entry( $feed_entry );
1252    
1253                  } else {                  } else {
1254                          _log "unknown rss request $r_url";                          _log "WEB unknown rss request $r_url";
1255                          $feed->title( "unknown $r_url" );                          $feed->title( "unknown $r_url" );
1256                          foreach my $c ( @commands ) {                          foreach my $c ( @commands ) {
1257                                  my $feed_entry = XML::Feed::Entry->new($type);                                  my $feed_entry = XML::Feed::Entry->new($type);

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

  ViewVC Help
Powered by ViewVC 1.1.26