#!/usr/bin/perl # Listbot by arza , distributed freely and without any warranty, licensed under GPL3 # Arguments: network_name server [port] use IO::Socket; my $net = shift; my $sock = new IO::Socket::INET( PeerAddr => shift || 'localhost', PeerPort => shift || 6667, Proto => 'tcp' ) or die "fail $@"; print $sock "USER bot 0 0 :listbot\nNICK Listbot$$\n"; while(<$sock>){ if(/^:\S+ 001/){ last; } elsif(/^PING :(\S+)/){ print $sock "PONG :$1\n"; } else{ print STDERR $_; } } print $sock "LIST\n"; while(<$sock>){ if(/:\S+ 322 \S+ (\S+) (\d+) :(.*)/){ print "$net $1 $2 $3\n"; }elsif(/^:\S+ 323/){ print $sock "QUIT\n"; exit; }else{ print STDERR $_; } }