A real time chat server (610) not only maintains the chat session but also
synchronizes the browse and chat functions by dynamically linking the
browser and chat applications to allow the contents of the browser window
and the chat window to change in a coordinated manner. The chat server is
built from a number of core software objects, namely user objects (616,
618), connection objects, and room objects (612, 614). In this way,
multiple users' browsers may be connected into one powerful distributed
chat/HTTP server and all such users are able to fully interact with one
another in a coordinated manner via type-written messages, HTML web
documents, and file transfers. The usefulness of chat is enhanced by
embedding the chat functions into the browser window.