Delphi-PRAXiS
Seite 2 von 3     12 3      

Delphi-PRAXiS (https://www.delphipraxis.net/forum.php)
-   Netzwerke (https://www.delphipraxis.net/14-netzwerke/)
-   -   Delphi IRC Service (https://www.delphipraxis.net/50729-irc-service.html)

supermuckl 30. Jul 2005 20:24

Re: IRC Service
 
Liste der Anhänge anzeigen (Anzahl: 1)
ich geb dir mal mein irc client projekt, das ich damals nicht fertig gemacht hab.
hab es grad getestet
wenn ich z.b. auf irc.spacetronix.net connecte (dauert ein wenig) und nach dem connect unten in das editfeld folgendes eingebe:

/join #test

dann bin ich auch im channel usw.. also es tut mit meinem code. eventuell findest du damit die lösung in deinem problemchen

Cyberaxx 30. Jul 2005 20:32

Re: IRC Service
 
Ich danke Dir.

Ja der Funktioniert, muss mich da zwar erstmal reindenken aber denke das wird gehen. Naja Client connect geht mal sehen ob ich den jetzt auch zum Server machen kann.

Ohne jetzt zu nerven würd mich das mit der Socket Komponente schon interessieren warum es da nicht geht.
Im Prinzip reden wir ja nur drum herum. :?

Cyberaxx 30. Jul 2005 21:43

Re: IRC Service
 
:-D SERVER läuft :-D

Jetzt gehts wieder ans eingemachte. Hatte aber beim starten deines Projektes nen netten Fehler

pop: Tpopupmenu ind Unit3 machte da doch ein wenig schwierigkeiten und auch der Timer der direkt anspringt als Autoconnect. Habs mal kurzerhand entfernt.

Ich hoffe es ist Dir recht wenn ich Deinen nun als Vorlage nehme für meinen ServiceBot.

Warum hast Du Dein Projekt aufgegeben sah doch garnicht so schlecht aus. :)

Nomma dickes Danke :)

supermuckl 30. Jul 2005 22:30

Re: IRC Service
 
jo kein problem ;) nehm ruhig

ach.. fertig hab ichs mangels zeit nicht gemacht.. hab immer 20 projekte gleichzeitig am laufen ;)

Cyberaxx 30. Jul 2005 22:53

Re: IRC Service
 
Danke.

Ja das kenn ich zu gute aber ich häng jetzt schon was länger an dem dummen Service.
Neben der Arbeit hatte ich bis vor kurzem noch was kleines laufen seitdem versuch ich nur am Bot rumzuschrauben.

Das Problem ist natürlich jetzt das der Bot bisher auf der Indy Komp basierte also heisst es nun alles mal wieder umschreiben. Ich kann ja nun ganz andere Informationen bezüglich des Channelmanagments und usermanagmets auslesen. Das ist schon eine tolle Sache. Bisher musste man sich Authen und es wurde dann anhand der Ident, Nick und Passwort dann erkannt und die Host wurd sich dann gemerkt. Problem dabei war die Host kann auch gleich sein. Es ist einfach nie genug Kontrolle da gewesen wür einen ganzen Channel.
Der Service dagegen bekommt egal wo nen User was macht alles mit Nickänderungen, Modeänderungen, Joins, Parts, usw... So kann man das nun alles was vereinfachen.

Dachte zuerst daran das aufzugeben und nen IRC Clone zu schreiben aber hatte schon zu viel Zeit reingesteckt.

Zitat:

--> :Lightbow.Home MODE #test +o Zicken_Cyb 1122756056
--> :Lightbow.Home KILL servicebot :Lightbow.Home (servicebot(?) <- services.192.168.10.3.net)
--> NICK Rhenaya 1 1122757287 Rhenaya 82-194-141-165.dyn.salzburg-online.at Lightbow.Home 0 :Rhenaya
--> :Rhenaya MODE Rhenaya :+iwxG
--> :Rhenaya JOIN #welcome
--> :Rhenaya QUIT :Quit: [21:12:04] <Rhenaya> RETTET DIE WOLPERTINGER! [21:13:19] <@Glorfindel> Genau... esst mewhr wichtel
--> :Zicken_Cyb NICK abx 1122757762
--> :abx NICK Zicken_Cyb 1122757786
Mal ein kleiner Auszug. Der Service befindet sich in keinem Channel.

Cyberaxx 31. Jul 2005 02:08

Re: IRC Service
 
Jetzt habe ich endlich den Fehler in meinem Code gefunden warum er nicht ins IF geht.

Ich verweise mal auf sECuRE. Jetzt weiss ich endlich was Du damit meintest.

Das was ich bekomme sieht folgendermassen aus

Zitat:

Lightbow.Home NOTICE TestBot :*** If you are having problems connecting due to ping timeouts, please type /quote pong 82906E44 or /raw pong 82906E44 now.
PING :82906E44
Ist natürlich klar das er dort am Anfang nicht den PING findet und ins IF springt.

Ich könnt mich über die Memo Komp ärgern, dort kommt es so schön gegliedert an als wäre es mehrere Zeilen.

Nachdem der Regirtrierungs PONG durch ist denke ich wirds so hinhauen. Da muss aber einer drauf kommen das diese sich so arg unterscheiden. :/

Cyberaxx 31. Jul 2005 02:41

Re: IRC Service
 
Letzter Beitrag dann geh ich erstmal in die Ecke und schäm micht...

Innerhalb des Netzerkes findet er keinen Hostnamen und somit ist die voherig zitierte Zeile gekommen. Connected man nun ins internet bekommt man durch den ISP einen Host und ab da trennen sich dann die Wege.

Zitat:

[ClanShells.DE.EU.GameSurge.net]NOTICE AUTH :*** Checking Ident

--------------------------------------
[ClanShells.DE.EU.GameSurge.net]NOTICE AUTH :*** Found your hostname

--------------------------------------
[ClanShells.DE.EU.GameSurge.net]NOTICE AUTH :*** No ident response

--------------------------------------
[ClanShells.DE.EU.GameSurge.net]PING :1290980233

--------------------------------------
<<< PONG den SERVER an >>> :1290980233
Genau da gehts nämlich mit dem PONG. Warum der Socket-Fehler kam weiss ich nun auch. Er kann den DNS nicht in eine IP umsetzen.

Ich versuche seit Stunden nen Fehler zu beheben der eigentlich keiner ist.

So ich bin dann mal hinten in der Ecke...

sECuRE 31. Jul 2005 07:11

Re: IRC Service
 
Hi,

sagte ich doch *g*.
Wozu brauchst du zwingend einen Hostname? Man kann doch auch eine IP angeben zum verbinden, oder verwendest du den Hostname etwa später im Code erneut für irgendwelche abfragen? Sollte man nicht tun, da einen zum Beispiel die großen Netzwerke nur weiterleiten: irc.efnet.org auf efnet.demon.co.uk, beim nächsten connect ircd.arcti.ca. Genauso beim Quakenet: irc.quakenet.org auf den nächstbesten Quakenet-server. Nennt sich Round Robin und muss vom jeweiligen Nameserver unterstützt werden. Lange Rede, kurzer Sinn: Wenn du den Hostname irc.efnet.org angibst und nachher damit prüfen willst, ob die Nachricht vom Server stammt, kommt dein Client/Bot/Wasauchimmer ganz schon durcheinander, schließlich bist du ja mit efnet.demon.co.uk verbunden (was die Socketkomponenten natürlich auch so anzeigen).

cu

Cyberaxx 31. Jul 2005 10:18

Re: IRC Service
 
Ich weiss nicht wie es bei anderen Netzwerken ist, bei mir kommt eigentlich nur .dip0.t-ipconnect.dem .dip.t-dialin.net das ist die Host und die sollte gleich bleiben.

Ich nutze UnrealIRCD und er fragt beim connect automatisch nach einem Host, findet er diesen nicht nutzt er die IP Adresse. Solange nen Bot als Client angemeldet ist, ist es von vorteil die Host und Ident zu verareiten. Jetzt wo ich ihn als Service laufen habe geht es zum Glück auch anders. :)

Jetzt wo ich den Fehler kenn, könnt ich ihn ja auch beheben.

sECuRE 31. Jul 2005 10:42

Re: IRC Service
 
Hi,

achso, das meinst du. Ich bezog mich auf den Hostname des Servers, du dich auf den USERNAME (auch als Ident bekannt, gemeinhin "der Teil vor dem @" im /whois ;)), der nicht gefunden wurde - bitte das nächste mal klarer ausdrücken ;).

Einen Identd kannst du sehr einfach nachbauen, du musst dazu nur einen ServerSocket auf Port 113 aufmachen, der bei einer Anfrage im Format "<port1>,<port2>" die Antwort "<port1>,<port2> : USERID : UNIX : <identname>" zurückgibt. Mehr Informationen zum Ident-Protokoll gibt's im RFC 1413.

cu


Alle Zeitangaben in WEZ +1. Es ist jetzt 12:19 Uhr.
Seite 2 von 3     12 3      

Powered by vBulletin® Copyright ©2000 - 2025, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024-2025 by Thomas Breitkreuz