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.
On other pages in this section, you’ll find information on M-Link’s use of Directory for configuration/authentication, security features, support for wide and local area clustering, operation over constrained/unreliable networks, Federated/Multi-User Chat and support for Military Forms using FDP.
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)
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 as part of M-Link.
The M-Link MAM web application allows the user to select MUC or 1:1 chats, and then search over a selected time range, as shown in the screenshot above. Further details are provided on the M-Link Web Applications page.
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.
- Archive backup.
- Archive import and export in XML format, to allow interchange with other archives. This also permits using M-Link to provide an offline archive access service.
M-Link Console supports scripted access to enable automation of regular tasks.
XML Archive Storage
M-Link 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.
Message archive is central to audit of the services provided by M-Link. M-Link also provides extensive additional audit logging of key server activities using Isode event logging and Isode audit logging which are described on the Audit Logging & Event Handling page.
Very Long Term Archive
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. A sample PDF/A archive file is here.