On Thu Apr 30 17:16:40 2009, Peter Saint-Andre wrote:
1. Who has implemented XEP-0199? Please note that the protocol must be implemented in at least two separate codebases (and preferably more).

Isode M-Link has implemented XEP-0199 for some time, both responding cleanly to pings, and sending them to actively check for "ghosted" client connections as part of its timeout strategy. Both these pings have been tested for interoperability with existing clients claiming to support XEP-0199, and we have found no issues.

2. Have developers experienced any problems with the protocol as defined
in XEP-0199? If so, please describe the problems and, if possible,
suggested solutions.

There exist a number of clients, often on mobile devices, which do not respond to unknown <iq/> stanzas, in violation of RFC 3920. This can cause servers using pings to detect unresponsive clients to disconnect clients which are actually live.

Whilst it's obviously not the place of this specification to fix this problem - if these client authors are ignoring RFC 3920 anyway they'll hardly conform to this - it may be useful to note this issue.

3. Is the text of XEP-0199 clear and unambiguous? Are more examples
needed? Is the conformance language (MAY/SHOULD/MUST) appropriate? Have
developers found the text confusing at all? Please describe any
suggestions you have for improving the text.

Just prior to Example 15, there is a MUST which repeats a requirement in RFC 3920. Instead, I suggest replacing this with:

"If the pinged entity does not support the ping namespace, RFC 3920 requires it to return a <service-unavailable/> stanza error."

There is a similar case with the first MUST in the Security Considerations.

Dave.
--
Dave Cridland - mailto:[email protected] - xmpp:[email protected]
 - acap://acap.dave.cridland.net/byowner/user/dwd/bookmarks/
 - http://dave.cridland.net/
Infotrope Polymer - ACAP, IMAP, ESMTP, and Lemonade

Reply via email to