#!/usr/bin/perl use strict; use CGI; use IO::Socket::INET; # CONFIG OPTIONS: my $irc_server="irc.somewhere.net"; my $server_port="6667"; my $nick=sprintf("MSG-%05d",rand(100000)); my $channel="chat"; my $s=IO::Socket::INET->new( PeerAddr=>$irc_server, PeerPort=>$server_port, Timeout=>1); my $q = new CGI; my $bitte = $q->param('Text'); # connected to server die (print $q->redirect('https://example.net/test/err.html') and exit) unless $s; # sending nickname print $s "user ",$nick," B C D\r\n"; print $s "nick ",$nick,"\r\n"; while( my $buffer = <$s> ) { if( $buffer =~ /^PING(.*)$/i ) { # response to server if send us PING request print $s "PONG ".$1."\r\n"; } elsif( $buffer =~ /^(.*?) 376 (.*) :(.*)/i ) { ## Received end of MOTD, join a channel and say hi. print $s "JOIN #",$channel,"\r\n"; print $s "PRIVMSG #",$channel," :",$bitte,"\r\n"; print $s "QUIT\r\n"; ($s->close)?(print $q->redirect('https://example.net/test/ok.html')):(print $q->redirect('https://example.net/test/err.html')); exit; } }