Hi, today I stumbled over an interesting behaviour of ejabberd MAM implementation. While ejabberd usually does not store messages of type groupchat into the users archive (ignoring the »A server SHOULD also include messages of type 'groupchat' that have a <body>« statement from the XEP.) it does store them if they contain a <store/> hint. Meaning the general rule of not storing type groupchat is overwritten by the existence of the hint. The hint is added by Conversations in an attempt to get the MUC archive server! to store OMEMO messages and chat markers.
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. And even worse the messages will be included in a normal catchup (when I don't necessarily want them) I think traditionally most implementations have never stored groupchat messages in the user archiving making the statement »A server SHOULD also include messages of type 'groupchat' that have a <body>, but where such history is accessible through another method (e.g. through an archive on the MUC JID), a server MAY exclude these from the archive.« very confusing. How should the user archive even know? This opens up two questions; 1) Should that statement be changed to something like 'group chat messages should never be stored in the users archive' 2) If we don't want to store group chat messages should the <store/> hint overwrite that behaviour? If not how can we make the definition of the <store/> hint clearer to communicate that this should not be the case? How are other implementations handling this and what would client developers want? cheers Daniel _______________________________________________ Standards mailing list Info: https://mail.jabber.org/mailman/listinfo/standards Unsubscribe: standards-unsubscr...@xmpp.org _______________________________________________