M-Link has extensive archiving capabilities including search of 1:1 and multi-user chat history, export to XML archives and long-term archiving in PDF/A documents. This page describes those capabilities including architecture, end-user access archives, and configuration & management.

The diagram below illustrates the M-Link Search and Archive architecture. An archive process will usually run on the same machine as the core M-Link server. In a clustered configuration, an archive process will run on each cluster node, and there is an archive clustering protocol that connects those processes, so that each holds information from each cluster node.

End user access to the cluster is provided using the protocol specified in XEP-0313: Message Archive Management (MAM) for both standard XMPP Clients and web access using XEP-0206: XMPP over BOSH. M-Link Console, the M-Link Management GUI, connects directly to an M-Link Archive process to provide operator access to the archives for other search and archive management capabilities.

Further information on search and archive architecture used by M-Link can be found in the whitepaper [M-Link Archive and Search].

End-User Access using Message Archive Management

MAM operates over the standard XMPP Client to Server protocol and XMPP Clients that implement MAM can directly access M-Link to search and access XMPP archive information. MAM provides a number of capabilities, including:

  • Access to the key XMPP message types:
  • 1:1 User Chat.
  • MUC (Multi-User Chat).
  • PubSub (Publish/Subscribe).
  • Selection of messages over a date/time range.
  • Filtering by user and free form text.
  • Paged results to deal with large search results.

In many XMPP deployments some or all of the XMPP Clients may not yet support MAM. For those deployments (and for situations where web access to XMPP and other services is the preferred route) Isode supplies a web interface to MAM in the form of the Message Archive Browser. More information can be found in the whitepaper [XMPP Archive and Search].

The M-Link MAM web application allows the user to select MUC or 1:1 chats, and then search over a selected time range.

Configuration and Management

Configuration and management of archives is done using M-Link's management GUI, M-Link Console (MLC). Capabilities include:

  • Archive configuration and selection of data to be archived.
  • Search of all archived data including:
    • Search refinement
    • Zoom, to see activity around a specific record
    • Save search as PDF/A
    • Expire data from archive older than a certain age.
  • Redact data, to remove sensitive information from the archive.


M-Link Console also provides an option to archive messages into separate XML files which are organized by date, user and MUC room. These files cover activity over one day. The archive files themselves are an XML representation of the messages exchanged. These can be processed in any way desired. M-Link Console provides a GUI to browse and render archived messages in the audit files. Archiving can be configured independently for 1:1 messages and MUC messages.

Where M-Link is providing critical services for which there is a need to record activity for a long period, such records need to be stored in a format that will be usable many years in the future. To support this, MLC allows for export of archives to PDF/A documents. PDF/A is an ISO-standardized version of the Portable Document Format (PDF) specialized for the digital preservation electronic documents.