# irc client: Fehler 451



## crazy_N (16. Aug 2004)

Mein irc-client läuft auf 4 von 5 getesteten irc-servern. Nur bei einem macht er beim login Schwierigkeiten. Und zwar kommt der Fehler 451 

```
451     ERR_NOTREGISTERED
                        ":You have not registered"

                - Returned by the server to indicate that the client
                  must be registered before the server will allow it
                  to be parsed in detail.
```

im clienten sieht das so aus:

```
Client gebunden an lokalen Port: 2558
1:fuckup.geoirc.org NOTICE AUTH :*** Looking up your hostname...
:fuckup.geoirc.org NOTICE AUTH :*** Found your hostname (cached)
:fuckup.geoirc.org NOTICE n-bot :*** If you are having problems connecting due t
o ping timeouts, please type /quote pong 1E799CC9 or /raw pong 1E799CC9 now.
PING :1E799CC9
:fuckup.geoirc.org 451 join :You have not registered
```

Laut RFC 1495 müssen 3 Befehle ausgeführt werden um sich beim Server zu registrieren: PASS, NICK und USER.

Das erledige ich so:

```
sockout.write("PASS test \r\n");
      sockout.flush();

      sockout.write("NICK "+nick +" \r\n");
      sockout.flush();

      sockout.write("USER "+user+" 0 0 :"+realname+" \r\n");
      sockout.flush();
```

Ich habe schon folgendes versucht ohne Erfolg: 


Vertauschen der Reihenfolge der Befehle
Entfernen von \r
Einfügen von Pausen

Sobald ich ein Befehl danach sende (wie z.B. JOIN) bekomm ich diesen Fehler. Weiß jemand woher dieser stammt?


----------



## thE_29 (16. Aug 2004)

das ist ein netzwerk in dem du deinen Nick registrieren musst (bei einem Bot, meistens Chanserv im quakenet ein Q)

Dort musst du dich entweder zuerst registrieren und danach authen!

deswegen kannst du auch keinen join befehl ausführen, weil du dich erst registrieren/authen musst!


_Verschoben: Netzwerkprogrammierung_


----------



## crazy_N (16. Aug 2004)

1. Wenn ich mich per mirc einlogge, muss ich meinen Nick nicht registrieren.

2. Wenn ich den Nick identifizieren soll, muss ich eine PRIVMSG an den nickserv schreiben. Die ist aber ebenfalls nicht möglich, da auch dort der Fehler 451 zurückgegeben wird.


----------



## thE_29 (16. Aug 2004)

mh, komisch!


jo, dass das bei mirc so ist weiß ich auch, nur vor 2 jahren im c forum hatte einer das gleiche Problem, auf ne Lösung sind wir nie gekommen! Oder vielleicht sind sie doch draufgekommen (KP)

Musst suchen im google, ist sicher öfter diskutiert!


----------



## crazy_N (16. Aug 2004)

Ja, hab mich gestern Abend schon damit beschäftigt. Es wurde vermutet, dass der client zu früh ein Befehl sendet. Deshalb hab ich nach jeder Login-Anweisung dort open Thread.sleep() ausgeführt, aber das hatte nix an der Sache geändert.

Ich habe mir gerade den Quelltext eines c++ clienten angeschaut, aber dort ist der login genau so geschrieben wie dort oben.

Inzwischen hab ich noch eine Reihe von Befehlen hinzugeschrieben (alle geben 451 zurück) und erhalte dann irgenwann eine VERSION Anfrage. Ich hab aber noch nicht herausgefunden wie man darauf reagieren muss.

Update: Inzwischen hab ich das, aber das hat überhaupt nix damit zu tun.


----------



## Guest (12. Apr 2005)

Ich weiss noch ob ich hier richtig bin aber ich habe mit dem nbot folgendes Problem


> java.net.ConnectException: Connection refused
> at java.net.PlainSocketImpl.socketConnect(Native Method)
> at java.net.PlainSocketImpl.doConnect(Unknown Source)
> at java.net.PlainSocketImpl.connectToAddress(Unknown Source)
> ...



Habe einen freien Port in der config eingestellt


----------



## thE_29 (13. Apr 2005)

@crazy-N: es wäre super, wenn du deine Antwort/Fehleranalyse posten würdest, sodaß andere das gleiche Problem nicht nochmal haben!


----------



## Gast (14. Apr 2005)

Könnt ihr Modsoder Admins den crazy_N nicht ne Mail schreiben weil ich wörde den NBot schon gerne zum laufen bekommen (ist ne tolle sache) 

Wäre echt net


----------



## Illuvatar (14. Apr 2005)

Du kannst ihm ne pn schreiben mehr können wir auch net.


----------



## crazy_N (14. Apr 2005)

schreib doch mal bitte, auf welchen server du dich verbinden willst.  was hast du als port eingestellt? dies ist der port des irc servers und somit in den meisten fällen 6667.

ich werd morgen abend auch eine aktualisierte version auf die seite stellen.


----------



## Gast (16. Apr 2005)

Es geht jetzt 
Habe den Port falsch angegeben *roll*

Kann man eigentlich auch eigene News einbinden??


----------



## crazy_N (17. Apr 2005)

eigene newsfeeds aus rss dokumenten zu erstellen geht in sekunden. das problem ist jedoch, dass ich es noch nicht geschafft habe die plugins zu laden wenn sie ausserhalb der jar sind. Dieses Feature werde ich aber irgendwann implementieren.

Wenn du jetzt schon einen speziellen Wunsch hast, schick mir den rss link und ich binde die News mit ein.


----------



## Guest (4. Jul 2005)

Wenn ich den Bot starten will kommt immer diese Meldung:


> 5 Such Plugin(s) gefunden
> werden geladen
> Client gebunden an lokalen Port: 37202
> *File not found - Liste einlesen*



Und der Bot erscheint nicht im Channel obwohl ich die Config richtig angepasst habe  :cry:


----------

