[Standards] XEP-0313: Treatment of type=groupchat in user archive with or without <store/> hint
kevin.smith at isode.com
Mon Dec 11 15:50:34 UTC 2017
Sorry, I’m going to revisit this…
On 23 Nov 2017, at 17:11, Daniel Gultsch <daniel at gultsch.de> wrote:
> For me it doesn't ever make sense to store type=groupchat messages in
> the user archive. That archive will be incomplete, thus forcing me to
> query the MUC servers archive upon join anyway.
I’ve become unconvinced by this - surely the archive will be complete for its intention, which is to archive those messages the user received. It won’t contain messages that the user wasn’t in the MUC for, but that seems like the correct behaviour.
So if a user wants an archive of the messages they’ve seen, it seems to me that MUC messages are a significant part of this, so we would want them to be stored, and want them to be returned by a client.
I think this is another example of the ‘two types of MAM’. Some people want to use MAM for ‘complete sync’, whereby the download all the messages the user has seen, and maintain a full local archive. For this, ISTM you’re going to want gc in your archive. Other people want to only do ‘catch up’ and receive recent relevant messages (e.g. ‘only unread’) - gc is only sometimes going to be useful for this (but there are examples where it is).
I’m increasingly coming back to the idea that we should add a filter to allow not fetching type=gc for clients that want to ignore it, but leave core behaviour as-is.
More information about the Standards