<!--
  - Authors:
  -   Nils Franzen (nilsf@sics.se)
  -   Simon Lindblom (simon@sics.se)
  -
  - Copyright:
  -   Nils Franzen, Simon Lindblom, 1998
  -
  - Last change:
  -   $Date: 1999/02/05 15:36:12 $ by $Author: nilsf $
  -   $Revision: 1.4 $
  -
  - This file is part of Mozart, an implementation
  - of Oz 3
  -    http://www.mozart-oz.org
  -
  - See the file "LICENSE" or
  -    http://www.mozart-oz.org/LICENSE.html
  - for information on usage and redistribution
  - of this file, and for a DISCLAIMER OF ALL
  - WARRANTIES.
  -
  -->

<CHAPTER ID="chapter.intro">
<TITLE/Introduction/
<P>Mozart Instant Messenger (&micq;) is an implementation inspired by the popular program ICQ 
(<REF.EXTERN TO="http://www.icq.com">www.icq.com</REF.EXTERN>).
The &micq; system is an example of what can be accomplished in a short period when a language like Mozart is used.

<P>The whole system consists of &lt;5000 lines of code, my guess is that 2/3 of all lines are related to the 
User-Interface. 

<SECTION><TITLE/Features/
<P>At this moment the system offers:

<LIST>

<ITEM>Contact list. Search for friends (by name, email or
organization) and add them to your contact list. The contact list lets
you to see when your friends are <EM>online</EM>/<EM>away</EM>/<EM>offline</EM>.

<ITEM>Messaging. Send store-and-forward messages to friends. You will
be notified when the receiver has read the message.

<ITEM>Applications. It is possible to start a chat server and invite
your friends to join. Other applications are GO - a Japanese board
game, Multi-worms and a chess game.

<ITEM>Extensible. We provide an interface to hook in application that
the users can run. For example, the chat system is not a core part of
the system; rather it is a standalone application.

<ITEM>Security 1.  Unreliable applications that you launch on your
Computer will not have access to your local file system, etc. We have
not solved resource accounting, but we hope to take a closer look at
it in the future.

<ITEM>Security 2. Since the source is available, we have protection
against hooking up modified clients. In short, we can say that clients
can only communicate with a special instance of the server.

<ITEM>Persistent database. All client settings, the contact list
and all messages is stored on the server. This means that you can start your &micq;
client from both your work-computer and your home-computer and have everything available.

</LIST>

<SECTION><TITLE/Coming features/
<P>We have plans to introduce RSA cryptography of messages and a more refined resource
accountin. Better interface for applications (persistence, etc) and adding more cool applications, 
such as file-transfer, transaction based whiteboard, blackboards, etc. 
Use a standard protocol for
<REF.EXTERN TO="http://www.research.att.com/~vj/imp.html">Instant Messaging and Presence</REF.EXTERN>

</CHAPTER>
