Hejsan! Jo precis, men saken är den att registrera på IRC-språk innebär att man skall köra ett USER- och ett NICK-kommando. Sedan skall servern svara på dessa med ett ok och sen en massa information. En spontan ide skulle ju i så fall vara att vända så att user och nick-raderna och se om du får någon skillnad. Och att byta till bara "\n" är ju kanske ingen dum ide heller. det är inte så att du måste ha nån identd typs tjänst snurrande (som stöder dina påståenden om användarnamn osv)? Inte enligt admininstratörerna på nätverket. Vet heller inte exakt vad denna identd gör eller hur det fungerar om jag skall vara ärlig. Hej, Nu har jag tittat vad jag skickar för att "registrera" min IrcBot som det är jag har gjort. Då har jag provat det, gick tyvärr inget bättre. Testa den här: http://www.c-sharpcorner.com/Network/IrcBotPH.asp. Jag använder ungefär den fast en egen lösning för att svara på ett PING. Den har jag provat, blir samma resultat. Jag lutar nog åt att det är just det här med IdentD som är problemet. Dock vet jag inte riktigt hur jag ska lösa det. Förslag? du har missat att du måste avsluta alla dina rader du skickar till servern på Quakenet med "\n" alltså ny rad ,, Därför det fungerade så fint för mig då :) IRC-klient i C#
Skriver en enklare IRC-klient i C#. Den funkar bra för att ansluta till vissa servrar, men tyvärr inte till alla. Använder mig av TcpClient för anslutningen.
Om vi tar quakenet som exempel, som verkar använda en nyare version av servermjukvara.
Det som är markerat med > skickar jag till servern, resten tar jag emot.
NOTICE AUTH :*** Looking up your hostname
NOTICE AUTH :*** Checking Ident
NOTICE AUTH :*** Found your hostname
>NICK RoffE99
>USER frazIRC 0 0 :FrazerIRC
PING :288586432
>PONG :288586432
>JOIN #flyg
:wineasy1.se.quakenet.org 451 RoffE99 RoffE99 :Register first.
Efter en stund får jag även:
:wineasy1.se.quakenet.org 513 RoffE99 :Your client may not be compatible with this server.
:wineasy1.se.quakenet.org 513 RoffE99 :Compatible clients are available at ftp://ftp.undernet.org/pub/irc/clients
ERROR :Closing Link: RoffE99 by wineasy1.se.quakenet.org (Registration Timeout)
Verkar som att den antingen inte uppfattar mina kommandon eller så gör jag något annat fel i anslutningen.
Någon som har någon idé?Sv:IRC-klient i C#
Jag funderar på om det är så att jag inte terminerar mina rader rätt. Just nu är StreamWriterns property NewLine satt till "\r\n".Sv: IRC-klient i C#
Sv: IRC-klient i C#
Sv:IRC-klient i C#
Sv: IRC-klient i C#
jag har en fungerande IRC klient i C# som jag egenhändigt har knåpat ihop, jag ska försöka komma ihåg att titta hur det ser ut i den i morgon när jag har tillgång till min dator.Sv:IRC-klient i C#
Du skickar
USER frazIRC 0 0 :FrazerIRC
Testa med att skicka
USER frazIRC 0 * :FrazerIRC
Och så ska du vända på NICK och USER, USER ska skickas innan NICK skickas.
Alltså
USER frazIRC 0 * :FrazerIRC
NICK RoffE99
Du kan ju testa med att bara vända på NICK och USER innan du lägger in stjärnan.
Sedan fortsätter du bara som vanligt med att skicka tillbaka ett PONG och sedan joinar du. Kom ihåg att du måste svara på alla PING med ett PONG som kommer med jämna mellanrum.
Lycka till!Sv: IRC-klient i C#
Detta är det jag skickar och tar emot som det är nu:
NOTICE AUTH :*** Looking up your hostname
NOTICE AUTH :*** Checking Ident
>USER frazIRC 0 * :FrazerIRC
>NICK RoffE99
NOTICE AUTH :*** Found your hostname
PING :1509687184
>PONG :1509687184
>JOIN #flyg
:port80c.se.quakenet.org 451 RoffE99 RoffE99 :Register first.
:port80c.se.quakenet.org 513 RoffE99 :Your client may not be compatible with this server.
:port80c.se.quakenet.org 513 RoffE99 :Compatible clients are available at ftp://ftp.undernet.org/pub/irc/clients
ERROR :Closing Link: RoffE99 by port80c.se.quakenet.org (Registration Timeout)
Samma kod funkar utmärkt på t.ex. dalnet.Sv:IRC-klient i C#
Sv: IRC-klient i C#
Sv: IRC-klient i C#
t.ex.
writer.Write("NICK RoffE99\n");
writer.Flush();
writer.Write("USER frazIRC 0 0 :FrazerIRC\n");
writer.Flush();
writer.Write("PONG :288586432\n");
writer.Flush();
writer.Write("JOIN #KANAL\n");
writer.Flush();
DENNA som jag skrev igår funkar till quakenet >>
(Inte särskilt nogran skriven men den ger dig en hint om hur det funkar)
en "socket" tolk till tcpClient med EVents och lite annat smått o gott
sammt ett enkelt exempel på några IRC funktioner som jag skrev ihop snabbt o enkelt
funkar prima ,,
Enjoy!
LÄNK > http://www.speedyshare.com/461537317.html
BILD > http://img212.imageshack.us/img212/410/ircsockethg8.jpg
Mvh Kristoffer SchroederSv:IRC-klient i C#
Jag använder WriteLine() och inte Write() ...