Evet arkadaşlar belki lazım olan olacaktır bana lazım oldu ve böyle bir şey çıkardım ortaya..
Bu bir bot ve sunucuya baglaniyor kendisini tanıtıp list komutunu gönderiyor daha sonra gelen veriler arasında "#kanal" olan bölümü ayıklayıp kanallar.txt adında bir dosya oluşturup kaydediyor.
Bu işlem sadece 60 saniye sürüyor. safe mod on ve limit suresi 30 saniye ise hata verebilir ama o 30 saniye içerisinde kanallar.txt yi oluşturabilir.
Bu bir bot ve sunucuya baglaniyor kendisini tanıtıp list komutunu gönderiyor daha sonra gelen veriler arasında "#kanal" olan bölümü ayıklayıp kanallar.txt adında bir dosya oluşturup kaydediyor.
Bu işlem sadece 60 saniye sürüyor. safe mod on ve limit suresi 30 saniye ise hata verebilir ama o 30 saniye içerisinde kanallar.txt yi oluşturabilir.
PHP:
<?
class CN_Bot
{
var $localhost;
var $remotehost;
var $port;
var $timeout;
var $channel;
var $nick;
var $closecode;
var $logfile;
var $yonetim;
var $liste;
var $server;
var $log;
function CN_Bot()
{
define(n, "\n");
$this->localhost = 'adsluser-2866.adsl.ttnet.net.tr';
$this->remotehost = 'irc.ttnet.net.tr';
$this->port = 6667;
$this->timeout = 0;
$this->channel = 'coders';
$this->nick = 'PHPBot';
$this->closecode = 'byebye';
$this->liste = 'kanallar.txt';
}
function Connect()
{
set_time_limit($this->timeout);
$this->server = fsockopen ($this->remotehost, $this->port, $hatano, $hatastr, $this->timeout) or
die('Sunucuya Bağlanamadı');
$this->logliste = fopen ($this->liste, 'w+') or
die('Dosya Yaratılamadı');
fputs($this->server, 'NICK '.$this->nick.n);
fputs($this->server, 'USER '.$this->nick.' '.$this->localhost.' '.$this->remotehost.' :'.$this->nick.n);
fputs($this->server, 'IDENTIFY şifre'.n);
return;
}
function Run()
{
$this->Connect();
while (!feof($this->server))
{
$data = fgets ($this->server,1024);
if(preg_match("'PING(.*?)'si", $data, $set))
fputs($this->server,'PONG '.trim($set[1]).n);
fputs($this->server, 'LIST'.n);
for ($i=1; $i!=0; $i++) {
$tut=fgets($this->server, 1024);
if ($tut == lisanssız) {
exit();
} else {
if (strstr($tut, "322")!=lisanssız) {
preg_match("|#(.*?)[^a-z]|",$tut,$yaz);
fputs($this->logliste, '#'.$tut.n);
}
}
}
}
fclose($this->server);
fclose($this->logliste);
}
}
$CN_Bot = new CN_Bot();
$CN_Bot->Run();
?>