1 <%@ Page Language="C#" %>

    2 

    3 <%@ Register Assembly="System.Web.Silverlight" Namespace="System.Web.UI.SilverlightControls"

    4     TagPrefix="asp" %>

    5 <asp:content id="Content1" contentplaceholderid="head" runat="server">

    6 </asp:content>

    7 <asp:content id="Content2" contentplaceholderid="MainContent" runat="server">

    8     <asp:ScriptManager ID="ScriptManager1" runat="server">

    9     </asp:ScriptManager>

   10     <div style="height: 270px;">

   11     <asp:Silverlight ID="Xaml1" runat="server" Source="~/ClientBin/WEBSWAPP.Silverlight.Samples.ChatClient.xap" MinimumVersion="2.0.31005.0" Width="100%" Height="270px"  />

   12     </div>

   13     <div style="height: 270px;">

   14     <asp:Silverlight ID="Xaml2" runat="server" Source="~/ClientBin/WEBSWAPP.Silverlight.Samples.ChatAdmin.xap" MinimumVersion="2.0.31005.0" Width="100%" Height="270px"  />

   15     </div>

   16     <p>

   17     You will see on this page 2 separate Silverlight controls; one represent the conversation terminal used by the end user and

   18     the other represents the Help Desk support interaction screen.  They are placed on the same page in this demo so that you may

   19     view the screen on the other end of the chat session.  The End User posts a message to an asmx web service then the Admin

   20     interface polls these messages using a timer and displays them to the Help Desk Support Staff.  In production both controls

   21     could be on 2 different servers and the client could be using the “Client Interface” over the web from a country other than the

   22     Customer Help Staff who would be looking at the “Admin Interface”.  Both interfaces connect to a webservice that is exposed over

   23     the web.

   24     </p>

   25     <p> To use it: type in the client interface a name and a message, it will appear in the Admin Interface box because I have setup a timer in

   26     the admin interface that polls the chat users and their messages from an asmx web service.  Repeat this process several times.  </p>

   27     <p>In the Admin Interface, select a user you wish to respond to from the list of users, then select the message you want to respond to,

   28     type a response and click send.</p>

   29     <p> Return back to the Client Interface, type in a name of the user names you have entered, wait for a second, a timer will fire up

   30     and poll your conversation from the webservice. You then see the conversation for that user.

   31     </p>

   32     <p>Notice that the Silverlight ListBox control template has 4 columns for the TimeOfQuestion, Question, TimeOfResponse, and the Response</p>

   33     <div class="SourceCodeDiv">

   34         <h3>

   35             Source code:</h3>

   36             <span style="display:block;width:200px;float:left;">

   37             <a href="/Common/Chat.asmx.cs.html" target="_blank"">The webservice code</a>

   38             </span>

   39             <span style="display:block;width:200px;float:left;"><a href="/Common/ChatAdmin.xaml.html" target="_blank"">ChatAdmin.xaml</a>

   40             </span>

   41             <span style="display:block;width:200px;float:left;">

   42             <a href="/Common/ChatAdmin.xaml.cs.html" target="_blank"">

   43                 ChatAdmin.xaml.cs</a>

   44             </span>

   45 

   46             <span style="display:block;width:200px;float:left;"><a href="/Common/ChatClient.xaml.html" target="_blank"">ChatClient.xaml</a>

   47             </span>

   48             <span style="display:block;width:200px;float:left;">

   49             <a href="/Common/ChatClient.xaml.cs.html" target="_blank"">

   50                 ChatClient.xaml.cs</a>

   51             </span>

   52             <span style="display:block;width:200px;float:left;">

   53             <a href="/Common/ChatApp.aspx.html" target="_blank"">

   54                 This WebForm</a>

   55             </span>

   56 

   57             <span style="display:block;width:200px;float:left;">

   58             <a href="/Common/chat.cs.html" target="_blank"">

   59                 classes used as datacontracts</a>

   60             </span>

   61 

   62     </div>

   63 </asp:content>