On 04/01/11 18:35, Justin Karneges wrote:
I think it's going to have to be (b).  Clients assume a blank slate at session
start, which is why the bare-jid unavailable works today in the way you'd
expect.  However, in general, I believe clients treat bare-jid presence as
referring to a single session with a 0-length resource (residual effect of how
legacy transports would send out resource-less presence).  So, I would expect
that existing behavior would be for the client to remove an empty session if
it exists, but not to touch any other sessions.

As a conflicting data point: telepathy-gabble forgets about any resources' presence if it gets presence from a bare JID. (Presence of any type, not just unavailable; in practice this is essentially equivalent.)

So Gabble will basically behave identically with servers which do (a) or (b). I think in a perfect world servers doing (b) would be unnecessary.

I agree that dropping dups is fine.  My feeling with presence is that it
indicates an ongoing state.  The stanza transmission alone is independent of
this state.  Similarly, it should be possible to intentionally replay presence
without effect to that state (as servers already do).

I agree that dropping dups is fine, as long as they're exact dups.

--
Will

Reply via email to