I realize this topic is old, but here's my findings about the flaws with the Ping function...
A friend and I were playing around with the "/ping" function, but he has the "Enable commands (messages beging with a '/')" disabled, so here was our conversation:
quote:
(1:01 AM) Me:
*try typing "Ping? [msgplus]"
(1:01 AM) Me:
*I wonder if that would work
(1:01 AM) Friend:
*Ping? [request]
(1:01 AM) Me:
* Pong! [resps]
(1:01 AM) Friend:
* Pong! [resps]
(1:01 AM) Friend:
*there
(1:01 AM) Friend:
*lolz
(1:01 AM) Friend:
*Ping? [request]
(1:01 AM) Me:
* Pong! [resps]
(1:01 AM) Friend:
* Pong! [resps]
(1:01 AM) Friend:
*i pongmyself then it pongs you? XD
(1:01 AM) Friend:
*wtf?
(1:01 AM) Friend:
*lol
(1:02 AM) Friend:
*my ISP is so weird
(1:02 AM) Me:
*The way it works, is that when you type "/ping", MsgPlus actually sends "Ping? [msgplus]" as a regular message.
(1:02 AM) Me:
*I think it has to do with the alternative way of doing it, that it pongs yourself.
(1:03 AM) Me:
*So if someone doesn't have MsgPlus, then all they see is "Ping? [msgplus]", but if they have it their MsgPlus filters the message, and displays something else.
(1:03 AM) Friend:
*hah
(1:04 AM) Me:
*I wonder what the pong looks like lol
(1:04 AM) Friend:
*pong? [msgplus]
(1:04 AM) Friend:
*XD
(1:04 AM) Me:
*Pong! [resps]
(1:04 AM) Me:
*Ping? [request]
(1:04 AM) Friend:
* Pong! [02sec]
(1:04 AM) Friend:
*Ping? [msgpluss]
(1:04 AM) Friend:
*Ping? [request]
(1:04 AM) Me:
* Pong! [resps]
(1:04 AM) Friend:
* Pong! [resps]
(1:04 AM) Friend:
*there
(1:04 AM) Me:
*Pong! [02sec]
(1:05 AM) Me:
*I think I understand it now, and why it displays to "pong".
(1:07 AM) Me:
*Say I send "Ping? [msgplus]", MsgPlus filters it and displays "Ping? [request]" then it sends a the same message to me "Ping? [msgplus]". Me while my MsgPlus is timing how long it takes to get the response...
(1:10 AM) Me:
*However, mine doesn't start timeing it unless I use "/ping", because it's part of the translation process. So my MsgPlus doesn't actually realize I sent a ping request. Your MsgPlus however thinks I did, and it bounces the message back. Now my MsgPlus thinks you are send a ping request, because you sent me "Ping? [msgplus]", and it bounces it back. But niether of our MsgPlus actually registers the timing function, because each time it thinks the the other guy is sending the request.
(1:10 AM) Me:
*Make sense? lol
Technically, using "Ping? [msgplus]" instead of "/ping" should result in an infinate loop, and crash both of our WLM. However I guess Patchou realized this, and some how limited it. I think the function that limits this, can be adopted to also detect who sent the "Ping? [msgplus]" first, and time it respectively so "Pong! [resps]" doesn't get outputed, and instead the correct "Pong! [x amount of sec]" is used.
Edit:
I wonder if it would be possible for MsgPlus to use a different MSN Messenger Protocol command to send the ping request, instead of MSG command.