Version 14 (modified by anonymous, 16 years ago) (diff)



The importance of Instant Messaging (IM) for private and organizational communication increased over the last years. IM became one of the most used communication channels and more and more valuable information is exchanged via instant messages. In contrast to the increasing amount of information exchanged, the IM implementations lack support to archive the information and retrieve it later when needed. Instant messaging is still transient and information gets lost. While E-Mail can be archived long-term server-side using the IMAP standard, there is no standard for archiving IM conversations. Chat logs are mostly stored locally on the client machine, using IM-client-specific file formats. This has several disadvantages: Storing the archive locally on the client computers is inconvenient when using more than one computer, archives is spread over different installations, are out of sync and get easily lost. Using proprietary, client- and protocol-specific formats to store the information makes it hard to manage and search the stored information using other interfaces as the client UI.

This thesis addresses theses issues by developing Nabu, a system providing server-side logging of instant messages. It tries to integrate instant messaging into the efforts made in the Semantic Web community to store and retrieve information in a unified way. It uses the semantic web standard RDF to describe the stored information on the server. For retrieving the stored information, it supports the SPARQL query language, which is currently in an ongoing standardization process at the W3C.

Besides the logging of chat messages, there are further requirements:

  • It should be possible for users to add further metadata to the logged messages by adding their own RDF statements. That way information can be categorized and structured, making retrieval of relevant information easier.
  • Nabu should support sharing of logged messages between users, to make e.g. a conference log available to other group members. This must be implemented with care though, to ensure the user's privacy.
  • Nabu should integrate instant messaging into the context elicitation framework of EPOS, sending message notifications to the EPOS user observation (when enabled by the user).

Related to Nabu, Justin Karneges proposed a protocol for server-side message archives as Jabber protocol enhancement. The proposal suggests a simple protocol and storage format for message archiving. While being simple, it defines its own format and does not use existing standards. In my opinion using existing technology as RDF and SPARQL makes the Nabu approach more powerful without having to reinvent the wheel. Also, Nabu can be more easily integrated with other information sources, and offers additional features as log sharing and adding custom metadata.

The following chapters discuss Nabu's functionality, concepts and implementation in detail. The Handbook chapter describes Nabu's features and is targeted towards users. Design and implementation are discussed in the Development chapter. It also explains how to make use of Nabu by integrating it into software. Being an open-source project, this documentation is created and maintained online on the Nabu homepage.

Attachments (1)

Download all attachments as: .zip