<?xml version="1.0" encoding="ISO-8859-1" ?>
<messages>
  <message id="introduction">

<h2><span>Wt Chat client</span></h2>

<p>This is a multi-user chat client and server.</p>

<p>To keep the example simple, server and clients all run in the same
process. Still, because all I/O in Wt is asynchronous even when using
"server push" which requires an open connection with each client at
all times, clients do not tie up threads, and as such the application
could easily support thousands of simultaneous users as well.</p>

<p>The client is contained in a widget (SimpleChatWidget), and can be
instantiated as many times as you like, even in the same
application.<br />

Because of the widget abstraction, it is straight forward to include a
chat client in your own application, by linking both the client and
server classes into your application.</p>
  </message>

  <message id="details">

<p>The implementation uses server-initiated updates, a feature that is
not much different from regular client-server communication in Wt, and
allows updating a session from outside its regular event loop. When a
message is received, the user interface (i.e. widget tree) not only of
the current session, but also of all other sessions is updated and
"pushed" to these clients simultanously.</p>

  </message>

 <message id="serverpushwarning">Note, you do not have JavaScript and this chat will have degraded functionality</message>


 <message id="join-msg.template">
   <span class='chat-info'>You are joining as ${name}.</span>
 </message>

</messages>
