IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası

IRCForumları - IRC ve mIRC Kullanıcılarının Buluşma Noktası (https://www.ircforumlari.net/)
-   Eggdrop, NeoStats, BNC (https://www.ircforumlari.net/eggdrop-neostats-bnc/)
-   -   Php Bot Sorunu (https://www.ircforumlari.net/eggdrop-neostats-bnc/499269-php-bot-sorunu.html)

ŞaH 06 Ağustos 2012 03:01

Php Bot Sorunu
 
Arkadaşlar php ile hazırlanmış sockopen ile giriş yapan bir bot istediğim kanala girip mesaj atıp çıkıyor fakat ben istiyorum nicki XX ile başlayan kişinin özeline yazıp çıksın veya sadece #sohbet kanalındaki nicki XX ile başlayan kişinin özeline yazsın.

Kod:

fputs($baglan, 'privmsg #radyo :İstek Yapan:'.$isim.'  Sanatçı:'.$sanatci.'  Şarkı:'.$sarki.'  Mesaj:'.$mesaj.$n);
İçerisinde mesaj gönderen komut bu şekilde.Bir çok yolu denememe rağmen olmadı.

Kod:

fputs($baglan, 'privmsg XX*!*@* :İstek Yapan:'.$isim.'  Sanatçı:'.$sanatci.'  Şarkı:'.$sarki.'  Mesaj:'.$mesaj.$n);
Bu şekildede denedim yinede olmuyor.

CLubber 06 Ağustos 2012 11:28

Cevap: Php Bot Sorunu
 
Alıntı:

ŞaH Nickli Üyeden Alıntı (Mesaj 1041188552)
Arkadaşlar php ile hazırlanmış sockopen ile giriş yapan bir bot istediğim kanala girip mesaj atıp çıkıyor fakat ben istiyorum nicki XX ile başlayan kişinin özeline yazıp çıksın veya sadece #sohbet kanalındaki nicki XX ile başlayan kişinin özeline yazsın.

Kod:

fputs($baglan, 'privmsg #radyo :İstek Yapan:'.$isim.'  Sanatçı:'.$sanatci.'  Şarkı:'.$sarki.'  Mesaj:'.$mesaj.$n);
İçerisinde mesaj gönderen komut bu şekilde.Bir çok yolu denememe rağmen olmadı.

Kod:

fputs($baglan, 'privmsg XX*!*@* :İstek Yapan:'.$isim.'  Sanatçı:'.$sanatci.'  Şarkı:'.$sarki.'  Mesaj:'.$mesaj.$n);
Bu şekildede denedim yinede olmuyor.

/MSG komutunda wildcard kabul edilmez, bu yüzden çalışmaması doğal. Bunun yerine #Radyo yerine, #DJ gibi bir kanal yazabilirsiniz veya, sabit bir nick.

ŞaH 06 Ağustos 2012 17:20

Cevap: Php Bot Sorunu
 
Evet sabit nicklere denedim bende onda oluyor.Zaten nerdeyse bütün yolları denedim dediğimi yapmak için ama olmadı bende umudumu kesmiştim yolu yok diye ama belki bi ihtimal var diye onun için açtım konuyu.
Teşekkürler ilginiz için.

qeweSe 11 Ağustos 2012 20:19

Cevap: Php Bot Sorunu
 
PHP- Kodu:

<html>
<head>
    <title>eskimynetim.com radyo istek paneli</title>
    <meta name="keywords" content="eski mynet, eski mynet sohbet, eskimynet, eskimynetsohbet, mynet sohbet eski, mynet sohbet, mynet, mynet eski, mynet eski sohbet" />
    <meta name="description" content="eskimynetim.com olarak siz mynet sohbet kullanicilarina en kaliteli sohbet odalarini olustura bilmek için çalismalara devam ediyoruz" />
    <meta name="robots" content="index,follow" />
    <link rel="shortcut icon" href="images/mynet.ico" type="shortcut icon" />
    <link href="
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
style="color: #0000BB"><?php
if(!$_GET) {?>
<form method="post" action="bot.php/?Radyo=istek" id="iletisim">
        <table width="300" height="100" border="0">
          <tr>
            <td><input type="text" name="nick" size="20" value="Rumuzunuz.." onfocus="if (this.value == 'Rumuzunuz..') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Rumuzunuz..';}">&nbsp;</td>
          </tr>
          <tr>
            <td><input type="text" name="sanatci" size="20" value="Istek Parca?" onfocus="if (this.value == 'Istek Parca?') {this.value = '';}" onblur="if (this.value == '') {this.value = 'Istek Parca?';}">&nbsp;</td>
          </tr>
          <tr>
            <td colspan="2"><label for="eposta"> <b>Mesajiniz</b> </label>&nbsp;<br><textarea rows="6" name="istek" cols="30"></textarea></td>
          </tr>
          <tr>
            <td colspan="2"><input type="reset" value="Sıfırla"><input type="submit" value="Gönder"></td>
          </tr>
        </table>
    </form>
<?} if($_GET[Radyo]=="istek") {
    if(
$_POST[nick]=="" || $_POST[nick]=="Rumuzunuz..") { die('<p align="center">Istek Gönderilemedi<br> <font color="red">ErrorName :</font>Rumuz Girmelisiniz <br><input type="button" name="btn" value="Geri Dön!" onclick="history.go(-1);"></p>'); }
    if(
$_POST[istek]=="") { die('<p align="center">Istek Gönderilemedi<br> <font color="red">ErrorName :</font>Mesaj Bölümü Bos Birakilamaz <br><input type="button" name="btn" value="Geri Dön!" onclick="history.go(-1);"></p>'); }
    if(
$_POST[sanatci]=="" || $_POST[sanatci]=="Istek Parca?") { die('<p align="center">Istek Gönderilemedi<br> <font color="red">ErrorName :</font>Isteginizi Belirmelisiniz <br><input type="button" name="btn" value="Geri Dön!" onclick="history.go(-1);"></p>'); }
    
set_time_limit(0); 
    
$istek = array('nick' => $_POST[nick], 'istek' => $_POST[istek], 'sanatci' => $_POST[sanatci]); 
    
$conf = array('server' => 'mynetde.com''port' => '6600''channel' => '#MynetFM''nick' => 'WebIstek-'.rand(1,9999), 'name' => 'Radyo Istek Bot''description' => '
Bu forumdaki linkleri ve resimleri görebilmek için en az 25 mesajınız olması gerekir.
style="color: #007700">); 
    
$replies = array('ver' => 'Eve 1.0''part' => 'Good-bye!''quit' => 'Shutting down. Talk to you all later!''regUsername' => 'example[MENTION=3713]yahoo[/MENTION].com''regPassword' => 'Example');    
 
    
$socket fsockopen($conf['server'], $conf['port']); 
    
fputs($socket"USER ".$conf['nick'].' '.$conf['server'].' '.$conf['nick'].' :'.$conf['description']."\n"); 
    
fputs($socket"NICK ".$conf['nick']."\n"); 
    
fputs($socket"JOIN ".$conf['channel']."\n"); 
    while(
1) { 
        while(
$data fgets($socket128)) { 
            
//echo nl2br($data); 
            
flush();  
            
$grip explode(' '$data); 
            if (
$grip[0] == "PING") { 
                
fputs($socket"PONG ".$grip[1]."\n"); 
            }
            if (
$grip[1] == "NOTICE") { 
                
fputs($socket"PRIVMSG ".$conf['channel']." !istek Rumuzum: ".$istek['nick']." ".$istek['sanatci']." ".$istek['istek']."\n"); 
            } elseif (
$grip[1] == "404") {
                
usleep(5,die('<p align="center">Bu kadadar Sik istekte bulunamazsiniz!<br><input type="button" name="btn" value="Bu Pencereyi Kapat" onclick="window.close();"></p>'));
            }
            if (
$grip[3] == $conf['channel']) { 
                
usleep(100,die('<p align="center">Istek Gönderildi <br><input type="button" name="btn" value="Bu Pencereyi Kapat" onclick="window.close();"></p>'));
            }
            
//echo "<b>".$grip[3]."</b>\n";
        

    }
}    
?>
</body>
</html>

kendi arşivimden

SHBiLisim 30 Aralık 2012 13:53

Cevap: Php Bot Sorunu
 
Bunun kurulumunu veya nasıl yapılacagını anlatırmısınız daha yararlı olacaktır

saywhat 30 Aralık 2012 14:42

Cevap: Php Bot Sorunu
 
basit yapıda örnek bir php.bottur.kod içinde nick ident realname bilgileri bağlanacağı sunucu deneyeceği bağlantı portları kodun alt kısmında $ircBot = new ircBot(); satırının altında ,kendinize göre değişip Shell'deki web klasörünüze atıyorsunuz ssh ile bağlanıp web klasöründeyken php dosya-adı.php komutu verdiniz mi bağlanıyor.bunu bikaç ay evvel yeğenim yazmıştı ben istemiştim ..geliştirmeye açıktır.istediğiniz değişiklikleri ekleri yapabilirsiniz.
[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

[Üye Olmadan Linkleri Göremezsiniz. Üye Olmak için TIKLAYIN...]

PHP- Kodu:

<?php header("Content-Type:text/html;charset=utf-8"); set_time_limit(0); ?>
<?php ini_set
('zlib.output_compression''Off'); ?> 
<?php ini_set('output_buffering''Off'); ?>
<?php phpinfo
(); ?>
<?php
class ircBot{
 private 
$socket NULL;
 
 protected 
$nickName NULL;
 protected 
$altNickName NULL;
 protected 
$identName NULL;
 protected 
$realName NULL;
 protected 
$quitReason NULL;
 
 private 
$hostName NULL;
 private 
$portsArr = array();
 private 
$chansArr = array();
 private 
$selfGod "bot-sahibi";
 
 function 
ircConfig($nickName$identName$realName$altNickName "Guest"$quitReason){
  
$this->nickName $nickName;
  
$this->identName $identName;
  
$this->realName $realName;
  
$this->altNickName $altNickName.rand(0,99999);
  
$this->quitReason $quitReason;
 }
 
 function 
serverConfig($hostName$portsArr){
  
$this->hostName $hostName;
  
$this->portsArr = !is_array($portsArr) ? array($portsArr) : $portsArr;
 }
 
 function 
addChannels($chansArr){
  
$this->chansArr = !is_array($chansArr) ? array($chansArr) : $chansArr
 }
 
 function 
connect(){
  
$connStatus false;
  
$jumpPos 0;
  
$timeOut 5;
  while(!
$connStatus):
   
$currPort $this->portsArr[$jumpPos % (count($this->portsArr) - 1)];
   echo 
"Connecting to ".$this->hostName." on port ".$currPort."...<br \>\n\r";
   
flush();
   @
$this->socket fsockopen($this->hostName$currPort$errNo$errStr);
   if (!
$this->socket):
    switch(
$errNo):
     case 
10060:
      echo 
$errStr."<br />\r\r";
      
flush();
      echo 
"Trying another port... ";
      
flush();
      
$jumpPos++;
     case 
10061:
      echo 
$errStr."<br />\r\r";
      
flush();
      if(
$jumpPos > (count($this->portsArr) - 1)):
       echo 
"Connection canceled.";
       
flush();
       return 
false;
      else:
       echo 
"Trying another port... ";
       
flush();
       
$jumpPos++;
      endif;
      break;
    endswitch;
   else:
    echo 
"Connection established.<br />\n\r";
    
flush();
    
$connStatus true;
   endif;
   
flush();
  endwhile;
  echo 
"[RUN_FUNCTION] doLogin()<br />\n\r";
  
flush();
  echo 
$this->doLogin();
  
flush();
  echo 
"[RUN_FUNCTION] readStream()<br />\n\r";
  
flush();
  
$this->readStream();
  
flush();
  return 
true;
 }
 
 function 
readStream(){
  while(!
feof($this->socket)):
   
$serverMsg trim(fgets($this->socket1024));
   if (
$serverMsg != "") echo "[RECEIVE] ".$serverMsg."<br />\n\r";
   
flush();
   if(
substr($serverMsg06) == "PING :"):
    echo 
"[SENT] ".$this->writeStream("PONG"substr($serverMsg6));
    
flush();
   elseif(
strpos($serverMsg"005")):
    echo 
"[RUN_FUNCTION] joinChannels(chansArr)<br />\n\r";
    
flush();
    
$this->joinChannels($this->chansArr);
   elseif(
strpos($serverMsg"433")):
    echo 
"[RUN_FUNCTION] changeNick()<br />\n\r";
    
flush();
    
$this->changeNick();
   elseif(
strpos($serverMsg"Get off!")):
    echo 
"[RUN_FUNCTION] quitIRC(Okay... QQ)<br />\n\r";
    
flush();
    
$this->quitIRC("Okay... QQ");
    break;
   elseif(
strpos($serverMsg"376")):
    echo 
"[RUN_FUNCTION] identifyNS(123456)<br />\n\r";
    
$this->identifyNS("123456");
    
flush();
   endif;
   
flush();
  endwhile;
  
fclose($this->socket);
 }
 
 function 
writeStream($type$target NULL$message NULL){
  
$cmdText "";
  
$commandSuffix "\r\n";
  switch(
$type):
   case 
"NICK":
    
$cmdText $type." ".$target;
    break;
   case 
"USER":
    
$cmdText $type." ".$this->identName." 8 * : ".$this->realName;
    break;
   case 
"JOIN":
   case 
"PART":
   case 
"PING":
   case 
"PONG":
   case 
"QUIT":
    
$cmdText $type." :".$target;
    break;
   case 
"PRIVMSG":
    
$cmdText $type." ".$target." :".$message;
    break;
  endswitch;
  
$cmdText.=$commandSuffix;
  try{
   
fwrite($this->socket$cmdTextstrlen($cmdText));
  } catch(
Exception $e) {
   echo 
$e->getMessage(); 
  }
  return 
$cmdText."<br />\n\r";
 }
 
 function 
doLogin(){
  echo 
"[SENT] ".$this->writeStream("NICK"$this->nickName);
  echo 
"[SENT] ".$this->writeStream("USER");
 }
 
 function 
joinChannels($chanInput){
  foreach(
$chanInput as $channel):
   echo 
"[SENT] ".$this->writeStream("JOIN"$channel);    
  endforeach;
 }
 
 function 
changeNick($newNickName NULL){
  if (
$newNickName == NULL$newNickName $this->altNickName;
  echo 
"[SENT] ".$this->writeStream("NICK"$newNickName);
 }
 
 function 
quitIRC($quitReason NULL){
  
$quitReason = ($quitReason == NULL) ? $this->quitReason $quitReason;
  echo 
"[SENT] ".$this->writeStream("QUIT"$quitReason);
 }
 
 function 
identifyNS($password){
  echo 
"[SENT] ".$this->writeStream("PRIVMSG""NickServ""identify ".$password);
 }
}
?>
<?php
$ircBot 
= new ircBot();
$ircBot->ircConfig("botie-bot""botties""bots don't cry!""php-bot""kiss me and i kiss you back!");
$ircBot->serverConfig("irc.freenode.net", array(6667666866697000));
$ircBot->addChannels(array("##HNC"));
$ircBot->connect();
?>


SHBiLisim 30 Aralık 2012 15:15

Cevap: Php Bot Sorunu
 
Tesekkürler paylaşımınız için daha yararlı olacaktır.


Tüm Zamanlar GMT +3 Olarak Ayarlanmış. Şuanki Zaman: 23:32.

Powered by vBulletin® Version 3.8.11
Copyright ©2000 - 2025, vBulletin Solutions, Inc.
Search Engine Friendly URLs by vBSEO
Copyright ©2004 - 2025 IRCForumlari.Net Sparhawk