IRC Script

Einklappen
X
 
  • Filter
  • Zeit
  • Anzeigen
Alles löschen
neue Beiträge

  • IRC Script

    Hi...
    Ich suche ein script, welches online anzeigen kann, wieviel channels im IRC garde sind und wieviel User sich auf dem IRC Server befinden...

    Sprich, eine anzeige wie diese:

    Derzeit im IRC:

    xxx User
    xxx Channels


    Kann mir da wer helfen ...?

    LG

  • #2
    Hallo lhhosting,

    dazu schaust du dir einfach die socket funktionen von php an - stichwort fsockopen() - dann einfach mit den nötigen befehlen zum server verbinden und chanliste abfragen und mit regulären ausdrücken dann die informationen die du brauchst rausholen - falls du ne kleine hilfe brauchst hab ich hier meinen irc bot für dich, der sollte die nötigen elemente beinhalten.

    Gruß
    Robert

    Kommentar


    • #3
      Re...

      Hi, Danke für die Antwort und Hilfe...
      Mit dem fsock... werde ich noch Probleme haben...

      Wenn Du mir erklärst, wie ich diesen Bot einsetzen kann, habe ich sicherlich die möglichkeit, herraus zu lesen, wie er funktioniert...

      Somit dann auch die Möglichkeit, mehr in dieser Richtung an PHP zu lernen und zu verstehen...

      LG
      Volker

      Kommentar


      • #4
        Hallo nochmal,

        so hab mal ein Script gebastelt - geht auf allen gängigen servern (unreal):

        PHP-Code:

        <?php

        //Nur ausnahme Fehler anzeigen
        error_reporting(1);

        //nick und realname vergeben
        $nickn 'ibor';
        $realn 'robert';

        //serverdaten
        $ircserver 'irc.quakenet.org';
        $ircport 6667;

        //Verbindung zum irc server aufbauen
        $connect fsockopen($ircserver,$ircport);

        //NICK und REALNAME senden
        fputs($connect"USER ".$nickn." 0 0 :".$realn."\\r\\n");
        fputs($connect"NICK ".$nickn."\\r\\n");

        //Antwort Array
        $status = array();

        //Jetzt Daten empfangen und auswerten
        while($current_line fgets($connect))
        {
           
           if(
        preg_match("/PING :([A-Z0-9]{1,})/",$current_line,$treffer))
           {
             
        fputs($connect"PONG :".$treffer[1]."\\r\\n");
           }
           
           if(
        preg_match("/25[1-9] ".$nickn."/",$current_line))
           {
             
        $status[] = $current_line;
           }
           
           if(
        preg_match("/End of \\/MOTD/",$current_line,$treffer))
           {
             break;
           }
           
        }

        foreach(
        $status as $key => $value)
        {
          
          
        //Zuerst User
          
        if(preg_match("/There are ([0-9]{1,}) users and ([0-9]{1,}) invisible/",$value,$treffer))
          {
            
        $user $treffer[2]+$treffer[1];
          }
          
          
        //Dann Channels
          
        if(preg_match("/([0-9]{1,}) :channels formed/",$value,$treffer2))
          {
            
        $channels $treffer2[1];
          }

        }

        //Verbindung trennen
        fclose($connect);

        echo 
        $user."<br />";
        echo 
        $channels."<br />";

        ?>
        wobei man sagen muss das es wohl nicht die beste lösung ist ...
        naja besser als nix - also hf &gl!

        Gruß
        Robert
        Zuletzt geändert von subabrain; 16.01.2007, 12:45.

        Kommentar

        Lädt...
        X