Hallo. Ich versuche grad einen IRC-Bot zu schreiben... bin aber momentan noch in der "Experimentierphase"... und... tja... ich habe ein Problem. Der folgende Code
den ich vorher mit
starte (die klasse implementiert Runnable) sollte eigentlich in einem Endless-Loop immer wieder die Messages vom Server ausgeben.
Um zu überprüfen ob der loop auch funktioniert habe ich das
eingefügt...
Nunja... es geht nicht immer... Also der Loop geht seltsamerweise nur teilweise - wann genau kann ich nicht sagen... ich sehe da keinen Zusammenhang.
Jedenfalls... Mir gibt das Ding auch absolut NICHTS aus. Abhängig vom Server gibt es mir mal die erste Zeile aus, die der Server sendet, mal garnichts. Ein Fehler ist nie da - der server scheint connected zu bleiben.
Ich möchte eigentlich nur dass mir alles was der Server sendet ausgegeben wird. Und ich hab leider keine Ahnung was ich falschmache.
Kann mir jemand helfen?
Code:
public void run () {
String buffer;
try {
ircin = new BufferedReader (
new InputStreamReader (s.getInputStream()));
do {
if ((buffer = ircin.readLine())!=null) {
//Ping-Pong
if (buffer.substring(0, 5).equals("PING ")) {
ircout.println("PONG " +
buffer.substring(6, buffer.length()-6));
System.out.println("PINGPONG - \"" + buffer + "\"");
} else {
System.out.println("Message>"+buffer);
}}
System.out.print("*"); //<-----Kontrolle
} while(true);
} catch (Exception e) {
System.out.println("Fehler in run(); !");
}
}
Code:
Thread t = new Thread(this);
t.start();
Um zu überprüfen ob der loop auch funktioniert habe ich das
Code:
System.out.print("*"); //<-----Kontrolle
Nunja... es geht nicht immer... Also der Loop geht seltsamerweise nur teilweise - wann genau kann ich nicht sagen... ich sehe da keinen Zusammenhang.
Jedenfalls... Mir gibt das Ding auch absolut NICHTS aus. Abhängig vom Server gibt es mir mal die erste Zeile aus, die der Server sendet, mal garnichts. Ein Fehler ist nie da - der server scheint connected zu bleiben.
Ich möchte eigentlich nur dass mir alles was der Server sendet ausgegeben wird. Und ich hab leider keine Ahnung was ich falschmache.
Kann mir jemand helfen?