On Tue, Feb 21, 2013 at 16:21, Ralph Meijer wrote:
On 2013-02-21 17:05, Kevin Smith wrote:
>> On Tue, Feb 19, 2013 at 7:58 PM, Ralph Meijer <ralphm at ik.nu >> <http://mail.jabber.org/mailman/listinfo/standards>> wrote: >>> On 2013-02-19 12:06, Dave Cridland wrote: >> [..] >> >> So, my follow-up question is whether this should be triggered when >> a user goes offline (no remaning presence) or a session becomes >> unavailable. That is, if you have multiple resources, do you get >> partial purges each time a resource goes offline, or do you just >> get a complete purge once all resources are offline (I would assume >> the latter, given earlier discussions about 'just one publisher'). > > I would go for fully unavailable, as affiliations and subscriptions > are also based on bare JIDs. I does appear that XEP-0060 allows for > the publisher JID, that is optionally sent along with notifications, > to be a full JID. > > In general I would try to stay away from partial purges to keep > things simple.
The use case I have for this is where I want to use a PEP node (in XEP-0223 style) as a way for multiple online resources to coordinate working together. A resource publishes to the PEP node to say what it's doing, and so when it goes offline unexpectedly I need some way for its item on the PEP node to be removed. Though I can work around this by checking the presence of the publisher for each published item, the purge_offline feature (at least as I interpreted it) seems like an ideal solution.
The other reason for doing partial purges on individual publishing resources going offline, rather than waiting for all resources to go offline is for increased predictability. If a user has e.g. a mobile client, which is going on and offline as the signal comes and goes, the purging of items will appear to be fairly random to the user publishing from another client. If the purge is tied only to the publishing resource, the user can be certain that when that resource goes offline, the items it published will be purged.
-- Paul
