Howdy, Stranger!

It looks like you're new here. If you want to get involved, click one of these buttons!

Top Posters

Who's Online (1)

Powered by Vanilla. Made with Bootstrap.
[Java] IRC Connection
  • GT3X
    Posts: 20
    nothing special just a simple IRC connection in java

    import java.io.*;
    import java.net.*;

    public class IRCConnection {

    private String tmp = null;
    private String nick = \"Test5000\";
    private String channel = \"#back2hack\";

    public void connectToIRC(String url, int port) {
    try {
    Socket sock = new Socket(url, port);
    BufferedReader br = new BufferedReader(new InputStreamReader(sock
    .getInputStream()));
    BufferedWriter bw = new BufferedWriter(new OutputStreamWriter(sock
    .getOutputStream()));

    // Connection shizzl
    bw.write(\"NICK \" + nick + \"\r\n\");
    bw.write(\"USER \" + nick + \" aaa bbb ccc\r\n\");

    // Ping Pong Shizzle

    while ((tmp = br.readLine()) != null) {
    System.out.println(tmp);
    if (tmp.startsWith(\"PING \")) {
    bw.write(\"PONG \" + tmp.substring(5) + \"\r\n\");
    bw.flush();
    }

    // 004 = erfolgreich connected
    if (tmp.indexOf(\"004\") >= 0) {
    break;
    }
    // Falls nick schon in use is
    else if (tmp.indexOf(\"433\") >= 0) {
    System.out.println(\"Nickname already in use\");
    return;
    }

    }

    // join channel

    bw.write(\"JOIN \" + channel + \"\r\n\");
    bw.write(\"PRIVMSG \" + channel + \" :blaaa\r\n\");
    bw.flush();

    // chat weiterhin einlesen
    while ((tmp = br.readLine()) != null) {
    System.out.println(tmp);
    // antworten auf bla
    if ((tmp.contains(\"PRIVMSG\"))) {
    if ((tmp.contains(\"bla\"))) {
    bw.write(\"PRIVMSG \" + channel + \" :blaaaaaaa\r\n\");
    }
    }
    // Still looking for ping pong shizzle
    else if (tmp.startsWith(\"PING \")) {
    bw.write(\"PONG \" + tmp.substring(5) + \"\r\n\");
    bw.flush();
    }

    }

    } catch (UnknownHostException e) {
    System.out.println(\"host fail\");
    } catch (IOException e) {

    }
    }

    public static void main(String[] args) {
    new IRCConnection().connectToIRC(\"irc.freenode.org\", 6667);
    }

    }
  • Xin
    Posts: 3,251
    Nice share good job
    Xin