[Standards] XEP-0313: Storage Rules for Archives

Tobias Kräntzer info at tobias-kraentzer.de
Mon Jan 30 22:52:01 UTC 2017


I searched the archive to see, if this has already been discussed recently, but didn’t finde anything. Please bear with me, if this has been already discussed too much.

I’m recently implemented message archive management on the client side and have an issue with the suggested rules for storing messages (I know, that this are only suggestions).

The current version of the specification suggests, that only a subset of messages should be archived and other messages might be archived. I would suggest, that all messages should be archived and the the sending entity can use the storage hints to controls this.

For example the current implementation of ejabberd does not store messages of type error in the archive. To have the same outcome while using multiple devices I also need the error message an all those devices. If not, the sending client can show the error message along the message that „produced the error“, but the other client not.

This also applies for other playloads send via a message stanza. If such a message does not contain a body element (or maybe an html element), it will not end up in the archive.

My suggestion for the storage rules:

1. All messages SHOULD be stored, except those containing a 'no-store‘ hint or excluded via the archiving preferences.
2. The entire message stanza SHOULD be stored and not only the body element.

This would make the message archive agnostic to the payload of the message.


Tobias Kräntzer
Simplontraße 59 | 10245 Berlin

xmpp:info at tobias-kraentzer.de
Twitter: @anagrom_ataf

More information about the Standards mailing list