2010-11-19 18 views
1

Şu anda IRC ana kanalına bir mesaj gönderen bir IRC oluşturuyorum.PHP - IRC Bot Mesaj gönder Yardım

<?php 


$ircServer = "xxxx"; 
$ircPort = "6667"; 
$ircChannel = "#bots"; 

set_time_limit(0); 

$msg = $_GET['msg']; 

$ircSocket = fsockopen($ircServer, $ircPort, $eN, $eS); 

if ($ircSocket) 
{ 

    fwrite($ircSocket, "USER Lost rawr.test lol :code\n"); 
    fwrite($ircSocket, "NICK Rawr" . rand() . "\n"); 
    fwrite($ircSocket, "JOIN " . $ircChannel . "\n"); 
    fwrite($ircSocket, "PRIVMSG " . $channel . " :" . $msg = $_GET['msg'] . "\n"); 

    while(1) 
    { 
     while($data = fgets($ircSocket, 128)) 
     { 
      echo nl2br($data); 
      flush(); 

      // Separate all data 
      $exData = explode(' ', $data); 

      // Send PONG back to the server 
      if($exData[0] == "PING") 
      { 
       fwrite($ircSocket, "PONG ".$exData[1]."\n"); 
      } 
} 
    echo $eS . ": " . $eN; 
} 
} 
?> 

<html><body> 
<h4>IRC Bot Tester</h4> 
<form action="irc.php" method="post"> 
Command: <input type="text" name="msg" /> 
<input type="submit" /> 
</form> 
</body></html> 

benim sorunum ben yayınını kullandı + kanala gönderilen mesaj bilgi için veri almak gördüğünüz gibi BOT, kanala herhangi bir mesaj göndermiyor geçerli: İşte benim kodudur. İşte

ben ararken neyi günlüğü geçerli:

Ben neden hangi bölümünün bilmiyorum

:irc.underworld.no 366 Rawr30517 #bots :End of /NAMES list. :irc.underworld.no 411 Rawr30517 :No recipient given (PRIVMSG) : 0: 0PING :irc.underworld.no

bu:

(PRIVMSG) verilen

alıcı: 0:

Teşekkür herkes olabilir eğer 0PING bana yardım et. Bot'a mesaj göndermeyi ve botun ana kanala iletilmesini sağlamaya çalışıyorum.

cevap

4

Değişimi:

$msg = $_GET['msg']; 
... 
fwrite($ircSocket, "PRIVMSG " . $channel . " :" . $msg = $_GET['msg'] . "\n"); 

için:

$msg = $_POST['msg']; 
... 
fwrite($ircSocket, "PRIVMSG " . $ircChannel . " :" . $msg . "\n"); 
+0

onun bana bu hatayı veriyor: 366 Rawr6090 #bots irc.underworld.no :/NAMES listesinin sonu. : irc.underworld.no 412 Rawr6090: Gönderilecek metin yok – Ray

+0

@Sean: beat me it !! : P –

+0

Hala bana şunu veriyor: Hata:: irc.underworld.no 366 Rawr6090 #bots:/NAMES listesinin sonu. : irc.underworld.no 412 Rawr6090: Gönderilecek yazı yok. Bazıları mesaj alamadığı için. – Ray

1
fwrite($ircSocket, "PRIVMSG " . $ircChannel . " " . $msg = $_GET['msg'] . "\n"); 

için: Şimdi

fwrite($ircSocket, "PRIVMSG " . $ircChannel . " " .$msg. "\n");