mod_archive implements XEP-0136 version 0.6 except otr (off-the-record).
Usually Jabber clients can store the conversations in the user hard drive. But sometimes this isn't possible or affordable, for example when using a mobile phone, or in a public access machine. XEP-0136 proposes that the Jabber server archives the messages as they pass through the server, if the Jabber client requested it. Later, the client can request to the server the messages. As a summary, mod_archive allows a Jabber client to request the server to store his own conversations, and later request them.
There are three different versions of this module. The main difference between them is the storage method:
- mod_archive uses Mnesia (old)
- mod_archive_sql uses PostgreSQL (old)
- mod_archive_odbc uses MySQL or SQLite3, and includes other improvements
- Automatic archiving
- User may enable/disable automatic archiving for one contact or globally
- Manual archiving
- Retreive or remove archive
- Off the record
- Groupchats message
- true or false: whether or not messages should be saved by default
- The time in seconds before a session timeout (for a collection). The default value is 30 minutes.
- Implemented, but does not work, since it implements an old version. An update on JWChat is expected in the mid-term.
- Web reader
- Php web interface
- Version 0.6 of the JEP-0136
- Support for JEP-0136: Message Archiving
- State of JEP-0136 implementation
- Old document advocating for server-side history storage: Jabber Client Design: Message History
- Tutorial to install Datasink, a Perl based alternative for mod_archive
- Open Archive, another implementation (for Openfire only)