AGB  ·  Datenschutz  ·  Impressum  







Anmelden
Nützliche Links
Registrieren
Zurück Delphi-PRAXiS Programmierung allgemein Netzwerke Delphi IdIRC: Ping Timeout nach 2-3 min?
Thema durchsuchen
Ansicht
Themen-Optionen

IdIRC: Ping Timeout nach 2-3 min?

Ein Thema von Basic-Master · begonnen am 28. Mai 2004 · letzter Beitrag vom 3. Jan 2005
Antwort Antwort
Seite 1 von 2  1 2      
Basic-Master

Registriert seit: 9. Mär 2003
Ort: Brilon
395 Beiträge
 
Delphi 2007 Enterprise
 
#1

IdIRC: Ping Timeout nach 2-3 min?

  Alt 28. Mai 2004, 20:34
Hi,
ich arbeite inmoment mit der indy irc komponente, wenn ich allerdings 2-3 min nichts sage, gibts n quit wegen ping timeout. was kann ich dagegen tun? ich hab die onpingpong-procedure gesehen, allerdings weiss ich nicht wie man einen pong senden kann
Christian
  Mit Zitat antworten Zitat
_master_

Registriert seit: 13. Mär 2004
22 Beiträge
 
Delphi 6 Enterprise
 
#2

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 28. Mai 2004, 21:01
hi, vielleicht hilft dir das [TClientSocket] :

Delphi-Quellcode:
..
var
s:string; i:integer; sl:TStringList;
begin
sl:=tstringlist.create;
sl.text:=socket.receivetext;
for i:=0 to sl.count-1 do
begin
s:=sl.strings[i];
  If Pos('PING', s)<>0 Then begin
        s[Pos('PING', s)+1]:='O';
        cs.Socket.SendText(s+#13#10);
  end;
  if Pos('376', s)<>0 then
  begin
        cs.socket.SendText('JOIN #testchannel'+#13#10);
  end;
end;
..
  Mit Zitat antworten Zitat
Basic-Master

Registriert seit: 9. Mär 2003
Ort: Brilon
395 Beiträge
 
Delphi 2007 Enterprise
 
#3

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 28. Mai 2004, 21:39
hmm thx, nur wenn ich das an den server sende, krieg ich die fehlermeldung hier:
Zitat:
[22:40] Error: *meinnick* :No origin specified
Christian
  Mit Zitat antworten Zitat
_master_

Registriert seit: 13. Mär 2004
22 Beiträge
 
Delphi 6 Enterprise
 
#4

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 28. Mai 2004, 21:54
zuerst ja nick geben oder?

Delphi-Quellcode:
//On Connect
Socket.sendtext('USER abc '+cs.socket.localhost+' '+cs.socket.localaddress+' :test'+#13#10);
socket.SendText('NICK abc'+#13#10);
//nick ist dann abc
  Mit Zitat antworten Zitat
Basic-Master

Registriert seit: 9. Mär 2003
Ort: Brilon
395 Beiträge
 
Delphi 2007 Enterprise
 
#5

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 29. Mai 2004, 11:22
hmm thx, hab gerade nochma nachgeguckt, dein code wird beim onconnect schon ausgeführt (gerade nachgeguckt), jetz sende ich beim onconnect ein PING und es funzt thx
Christian
  Mit Zitat antworten Zitat
Basic-Master

Registriert seit: 9. Mär 2003
Ort: Brilon
395 Beiträge
 
Delphi 2007 Enterprise
 
#6

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 29. Mai 2004, 12:00
hmm hab gerade nochma ins irc geguckt und wieder ping timeout.. allerdings erst nach 10 min.. muss ich irgentwo ein timer stellen der alle x sekunden PING sendet?
Christian
  Mit Zitat antworten Zitat
_master_

Registriert seit: 13. Mär 2004
22 Beiträge
 
Delphi 6 Enterprise
 
#7

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 29. Mai 2004, 13:37
So muss es funktionieren
Delphi-Quellcode:
//on read
procedure TMainForm.csRead(Sender: TObject; Socket: TCustomWinSocket);
var
s:string; i:integer; sl:TStringList;
begin
sl:=tstringlist.create;
sl.text:=socket.receivetext;
for i:=0 to sl.count-1 do
begin
s:=sl.strings[i];
  If Pos('PING', s)<>0 Then begin
        s[Pos('PING', s)+1]:='O';
        cs.Socket.SendText(s+#13#10);
  end;
  if Pos('376', s)<>0 then
  begin
        cs.socket.SendText('JOIN #testchannel'+#13#10);
  end;
end;

//on connect
procedure TMainForm.csConnect(Sender: TObject; Socket: TCustomWinSocket);
begin
Socket.sendtext('USER abc '+cs.socket.localhost+' '+cs.socket.localaddress+' :test'+#13#10);
socket.SendText('NICK abc'+#13#10);
end;
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#8

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 29. Mai 2004, 14:44
ihr solltet euch mal die RFC's durchlesen

@Basic-Master:
du musst immer dann einen PONG(nicht PING!) senden, wenn der Server dir einen PING sendet, das kannst du im onRaw Ereignis abfangen!!

der server sendet den ping um zu gucken ob du überhaupt noch da bist, was der fall ist wenn PONG zurückkommt
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
sharkx

Registriert seit: 24. Feb 2003
Ort: St. Ingbert
211 Beiträge
 
Delphi 7 Enterprise
 
#9

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 29. Mai 2004, 14:51
nur mal so nebenbei...
a.) die Indy kompo schickt schon ein pong zurück!
b.) nen pong zurück senden musst du also nur bei TClientSocket
x.) Indy IdIRC is mist
Programming today is a race between Software Engineers striving to build bigger and better idiot-proof Programs, and the Universe trying to produce bigger and better idiots. So far, the Universe is winning!
  Mit Zitat antworten Zitat
Benutzerbild von Pseudemys Nelsoni
Pseudemys Nelsoni

Registriert seit: 24. Dez 2002
Ort: Hamburg-Harburg
3.551 Beiträge
 
#10

Re: IdIRC: Ping Timeout nach 2-3 min?

  Alt 29. Mai 2004, 14:52
*zustimm*


hab ganz vergessen das es hier um die indys geht
obwohl in onraw erwähnte
Mario
MSN: cyanide@ccode.de
  Mit Zitat antworten Zitat
Antwort Antwort
Seite 1 von 2  1 2      


Forumregeln

Es ist dir nicht erlaubt, neue Themen zu verfassen.
Es ist dir nicht erlaubt, auf Beiträge zu antworten.
Es ist dir nicht erlaubt, Anhänge hochzuladen.
Es ist dir nicht erlaubt, deine Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus

Gehe zu:

Impressum · AGB · Datenschutz · Nach oben
Alle Zeitangaben in WEZ +1. Es ist jetzt 08:12 Uhr.
Powered by vBulletin® Copyright ©2000 - 2024, Jelsoft Enterprises Ltd.
LinkBacks Enabled by vBSEO © 2011, Crawlability, Inc.
Delphi-PRAXiS (c) 2002 - 2023 by Daniel R. Wolf, 2024 by Thomas Breitkreuz