Source: techdict.phps - download
<?php
//daif.net techdict bot 1.0 beta
$server = "irc.freenode.net";
$port = 6667;
$user = "TechDict";
$join = "#arabeyes";
print "TechDict Started on ".date("Y/m/d h:i:s")."\n";
set_time_limit(0);
$socket = fsockopen($server, $port );
fputs($socket,"NICK $user\n");
fputs($socket,"USER TechDict * * :arabeyes.org\n");
fputs( $socket , "JOIN $join\n");
while(true){
while($data = fgets($socket, 256)){
$data = trim($data);
$buff = explode(" ",$data);
print $data."\n";
if($buff[0] == "PING"){
fputs($socket, "PONG $buff[1]\n");
}
if(preg_match("/(.+) PRIVMSG (.+) :($user):(.+)/",$data,$out)){
list(,$host,$chan,$nick,$msg) = $out;
$msg = strtolower(trim($msg));
fputs($socket,"PRIVMSG ".$chan." :".dict($msg)."\n");
}
}
}
function dict($term){
$url = "http://wiki.arabeyes.org/api.php?action=query&prop=revisions&titles=API|techdict:".$term."&rvprop=timestamp|user|comment|content&format=xml";
$data = file_get_contents($url);//get page
preg_match_all("/\|(.+) = (.+)\n/U",$data,$out);
foreach($out[1] as $k=>$v){
$msg .= trim($out[1][$k]) .'='. trim($out[2][$k]) .', ';
}
if($msg){
return("$term: $msg");
}else{
return("Term '$term' Not Found, try http://qamoose.arabeyes.org/");
}
}
?>