Ha Ha, I just figured out that irc servers do not send out real ping requests, just ping MESSAGES. I spent a week working on a ping client for my irc program.

4.6.2 Ping message

Command: PING
Parameters: <server1> [<server2>]

The PING message is used to test the presence of an active client at
the other end of the connection. A PING message is sent at regular
intervals if no other activity detected coming from a connection. If
a connection fails to respond to a PING command within a set amount
of time, that connection is closed.

Any client which receives a PING message must respond to <server1>
(server which sent the PING message out) as quickly as possible with
an appropriate PONG message to indicate it is still there and alive.
Servers should not respond to PING commands but rely on PINGs from
the other end of the connection to indicate the connection is alive.
If the <server2> parameter is specified, the PING message gets
forwarded there.

Numeric Replies:



PING tolsun.oulu.fi ; server sending a PING message to
another server to indicate it is still

PING WiZ ; PING message being sent to nick WiZ

Good Grief. Any more surprises that I should be aware of?:mad:
Posted on 2002-03-12 15:07:31 by bdjames
Read the RFC? =)
Posted on 2002-03-12 15:42:48 by f0dder
Yes, I read that part of the rfc 1459 before I started working on the pinger, but I did not take it literally. It was not till I found some irc ping code that I realized that all they were doing was replying to a "PING" message. (cute)

Stay tuned I am sure to make a lot more lame attempts.

Posted on 2002-03-12 16:01:13 by bdjames
When I was doing an IRC client one of the first things I did was connect to an irc server using telnet to see how the responses looked.
Posted on 2002-03-13 00:21:36 by Quantum
Alright, my client logs on to the server, handles
ident and ping requests, logs into a channel,
displays the raw server messages, and allows
you to send raw messages all in a slick window.

Next on my list was processing the raw messages.
I have looked at the code for other clients and
I found something distressing:

How much processing time between receives
is appropriate, as in before you start to lose
messages? Should I use 'receive' threads?
None of the clients I have seen worry about this.

I am about to rewrite/organize/redesign the code,
but this has been holding me up.
Posted on 2002-03-29 12:29:14 by bdjames
Has anyone done dcc/ctcp? Control characters?

Yes those are on two different servers.

Posted on 2002-04-18 14:36:52 by bdjames