PHP Forum - Coding Board
Juni 18, 2018, 02:30:23 *
Willkommen Gast. Bitte einloggen oder registrieren.

Einloggen mit Benutzername, Passwort und Sitzungslänge
News:
 
   Übersicht   Hilfe Suche Einloggen Registrieren  
Seiten: [1]
  Drucken  
Autor Thema: IRC Bot  (Gelesen 96 mal)
0 Mitglieder und 1 Gast betrachten dieses Thema.
DiZZaStEr
Newbie
*
Beiträge: 13



Profil anzeigen E-Mail
« am: März 06, 2009, 01:00:58 »

[N.e.0] hat ja schon nen kleinen Bot gebastelt -> http://board.scenecoderz.com/showthread.php?t=3012

Hab hier eine andere Variante, die basiert auf PircBot.
Pircbot ist ein Java IRCBOT Framework, das Ding ersparrt halt einem
manche Arbeit und hat ganz klardefinierte Methoden.

Benötigt PircBot: http://www.jibble.org/pircbot.php
-> http://www.jibble.org/javadocs/pircbot/org/jibble/pircbot/PircBot.html

Der Bot kann nicht viel, aber darauf kann man vllt was bauen ;-)

Zitat
!help
-IrcBot- -> !op, !voice, !slap
!slap DiZZaStEr
* IrcBot slaps DiZZaStEr with a big large trout!! .: Slap Nr. 1 :.
!slap IrcBot
* IrcBot slaps DiZZaStEr with a big large trout!! .: Slap Nr. 2 :.
!voice
* IrcBot gives voice to DiZZaStEr
!op
* IrcBot gives channel operator status to DiZZaStEr

/**
 * IrcBot by DiZZaStEr
 */

import org.jibble.pircbot.*;
import java.io.*;
import java.util.*;
import java.sql.*;

public class 
IrcBot extends PircBot
{
    private 
String serverchanchanKey;
    private 
int slaps 0;
    private 
String version "IrcBot v1.0";     
    private 
boolean end false;
    
    
// Der Konstruktor braucht den Nick, den Server, den chan und optimal den chankey
    
public IrcBot(String nickString serverString chanString chanKeythrows Exception
    
{
        
this.server server;
        
this.chan chan;
        
this.chanKey chanKey;
        
        
this.setName(nick);
        
this.setLogin(nick);
        
this.setFinger(nick);
        
this.setVersion(version);
               
        
this.start(server);
        
this.joinChannel(chanchanKey);
    }
    
    public static 
void main(String[] argsthrows Exception
    
{
        
IrcBot ircbot = new IrcBot(args[0], args[1], args[2], args[3]);
    }    
    
// ----------------------------------------------------
    // CONNECTING THE BOT
    // ----------------------------------------------------
    
public void start(String netthrows Exception
    
{
        
this.connect(net);
    }
    
    public 
void end() throws Exception
    
{
        
end true;
        
this.disconnect();
    }
    
// ----------------------------------------------------
    // ON MESSAGE
    // ----------------------------------------------------
    
protected void onMessage(String channelString nickString loginString hostnameString message)
    {
        
// SLAPS
        
if ( message.startsWith("!slap") )
        {
            
String action[] = message.split("\\s");
            if( 
action.length )
            {
                if( 
action[1].equals(this.getNick()) )
                {
                    
slaps++;
                    
this.sendAction(channel"slaps " nick " with a big large trout!! .: Slap Nr. " slaps " :.");
                    
this.kick(nick"Don't mess with me!!");
                }
                else
                {
                    
slaps++;
                    
this.sendAction(channel"slaps " action[1] + " with a big large trout!! .: Slap Nr. " slaps " :.");
                }
            }
        }
        
        
// GIVE OP
        
else if ( message.startsWith("!op") )
        {
            
String action[] = message.split("\\s");
            if( 
action.length )
            {
                
op(channelaction[1]);
            }
            else
            {
                
op(channelnick);
            }
        }
        
        
// GIVE VOICE
        
else if ( message.startsWith("!voice") )
        {
            
String action[] = message.split("\\s");
            if( 
action.length )
            {
                
voice(channelaction[1]);
            }
            else
            {
                
voice(channelnick);
            }
        }
        
        
// !help
        
else if ( message.equals("!help") )
        {
            
sendNotice(nick"-> !op, !voice, !slap");
        }
    }
}
Gespeichert

Seiten: [1]
  Drucken  
 
Gehe zu:  

Powered by MySQL Powered by PHP Powered by SMF 1.1.21 | SMF © 2006-2009, Simple Machines | New Look by Nolt Prüfe XHTML 1.0 Prüfe CSS