begin process at 2010 02 10 13:38:22
  Trouver un code source :
 
dans
 
Accueil > Forum > 

JAVA / J2EE / J2ME

 > 

Divers

 > 

Général

 > 

Bot IRC


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Bot IRC

samedi 15 décembre 2007 à 13:47:16 | Bot IRC

Palleas_44

Bonjour les gens :)

J'ai envie de coder un bot en Java histoire de comprendre comment ça marche tout ça. Mais je rame, j'arrive apparement à me connecter au serveur et à gérer les pings, vu que je suis tout déconnecter et que j'arrive à pinger le serveur. Mais impossible de me connecter à un canal, voila mon code :

package classes;

import java.io.BufferedReader;
import java.io.IOException;
import java.io.InputStreamReader;
import java.io.PrintStream;
import java.net.Socket;

public class Canal {
    private int port;
    private String server,name, botUser, botRealName, botHost, botNick,line;
    private BufferedReader input;
    private PrintStream output;
    private Boolean connected = false;
   
    public static final String __N = "\015";
    public Canal(String server,String name, int port, String botUser, String botRealName, String botHost, String botNick) {
        this.server = server.trim();
        this.name = name.trim();
        this.port = port;
        this.botUser = botUser.trim();
        this.botRealName = botRealName.trim();
        this.botHost = botHost.trim();
        this.botNick = botNick.trim();
        connect();
        try {
            send("JOIN #nextwizard"+__N);
            while(isConnected()) {
                line = input.readLine();
                System.out.println(line);
                if(getCommand().equals("ping")) {
                    pong(line.substring(6));
                }
                ping();
            }
        } catch(IOException e) {
            System.out.println(e);
        }
    }
   
    public void connect() {
        try {
            Socket ircSock = new Socket(server,port);
            output = new PrintStream(ircSock.getOutputStream());
            send("USER "+botUser+" UNIX "+botRealName+"@"+botHost+" "+botUser+__N);
            send("NICK "+botNick+__N);
            input = new BufferedReader(new InputStreamReader(ircSock.getInputStream()));
        } catch(IOException e) {
            System.out.println("Exception : ");
            e.printStackTrace();
        }
    }
   
    public void disconnect() {}
   
    public void send(String msg) {
        output.print(msg);
        output.flush();
    }
   
    public String getCommand() {
        String ret = line.substring(0,line.indexOf(" ")).toLowerCase();
        return ret;
    }
   
    public void ping() {
        send("PING "+server+__N);
    }
   
    public void pong(String msg) {
        System.out.println("(PONG) Message à renvoyer au serveur : "+msg);
        output.print("PONG "+msg+__N);
        output.flush();
    }
   
    public boolean isConnected() { return true; }
// Accesseurs (j'enleve pour ne pas surcharger l'affichage :p)  
// toString
   
    public static void main(String[] args) {
        new Canal("irc.epiknet.org","nextwizard",6667,"NWBot","PalleasNextWizard40","nextwizard.com","PalleasNextWizard40");
    }
}

J'avoue que je sèche un peu, car il ne me retourne pas d'erreur, c'est un problème de méconnaissance d'IRC ou il manque des choses à mon java ? :x
Merci d'avance :)

Palleas
mardi 18 décembre 2007 à 21:06:24 | Re : Bot IRC

shown

Essaye de remplacer ça :

send("USER "+botUser+" UNIX "+botRealName+"@"+botHost+" "+botUser+__N);
send("NICK "+botNick+__N);

par ça :

send("NICK "+botNick+__N);
send("USER "+botUser+" "+botRealName+" "+botHost+" :"+botUser+__N);


Et dans cet ordre-ci ! Tu peux vérifier en te connectant par telnet si tes commandes sont bonnes.



Cette discussion est classée dans : java, public, string, server, botuser


Répondre à ce message

Sujets en rapport avec ce message

passer de fichier texte a des classes java [ par anneli ] alo,je travaille avec des fichiers textes contenant des données sous la forme suivante:class Voiture extends class java.lang.Object{ public stat Gestion des exceptions par le compilateur [ par xav44 ] Bonjour, Suite à un developpement (pas mal mouvementé) d'una application Web complexe en Java, mon collegue m'a fait remarqué que dans certains cas d Verification de login et de mot de passe [ par Sapphire77 ] Bonjour, voici mon code et pourriez vous me dire s'il y a des erreurs s'il vous plait : je travaille avec visual cafe et lorsque je compile, il me don Demande d'aide pour une connexion mysql [ par mabeur ] Bonjour, je suis nouveau, et j'essaye de créer une connexion mysql. Mon niveau étant assez bas en java, j'aurais besoin de quelques conseils afin de r affectation variable dans un tableau [ par developvbdebut ] bonjour tout le mondeJ'ai un problème, je n'arrive pas à affecter des variable dans une JTableVoici la class tableaupreveimport java.awt.*;import java Problème Base de Données [ par Maiku ] SalutJe viens de commencer a étudier le java, et suit en train de faire une bibliothèque de classe , pour l'instant j'y ai mis une classe pour manipul question servlet [ par tof008 ] Bonjour à tous!Je dois créer un petit logiciel en utilisant jsp et les servlets. J'ai donc créer une classe java qui se connecte à une base de données utilisation de JNA en java [ par lak75 ] salut, je suis arrivé a charger ma dll (rapi.dll) avec la librairie jna. j'ai defini une interface JNADemo.java : *********************************** Vercor [ par mariam1987 ] Salut a tous.je commence a programmer en java et j'ai ecrit un morceau de code  qui ne marche pas et je ne sais pas ou est le probleme::  import java. quoi que je fait, impossible de serialiser un objet [ par sikove ] salut j'ai testé à plusieurs rprises mais impossible de serialiser un objet, pourtant je suis sur que je n'ai fait aucune erreur : voila le code erreu


Nos sponsors


Sondage...

CalendriCode

Février 2010
LMMJVSD
1234567
891011121314
15161718192021
22232425262728

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,934 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales