On Sunday, September 18, 2011 09:19:54 AM Tomasz Sterna wrote:
> Quoting from RFC6121:
> 4.3.2. Server Processing of Inbound Presence Probe
> "If there is a resource matching the full JID and the probing entity has
> authorization via a presence subscription to see the contact's presence,
> then the server MUST return an available presence notification, which
> SHOULD communicate only the fact that the resource is available (not
> detailed information such as the <show/>, <status/>, <priority/>, or
> presence extensions)."
>
> May I ask what is the rationale behind this?
> Why the server should not answer with the presence stanza of the probed
> resource?
I believe this is to ensure consistency with section 4.6.6. Basically, if you
are probing a full JID then it means you're checking on a known session.
Whether the user is in your roster (4.3.2) or not (4.6.6), the response should
be the same.
The meaning of these empty presence stanzas is a little funky. I think it's
supposed to mean "the presence is unchanged since the last one sent". As far
as I can tell this conflicts with the fact that an empty presence stanza
already has meaning ("online") but perhaps in most modern client
implementations there is at least some other element like <c> in there to
ensure distinction.
Justin