1<html>
2 <head>
3 <meta charset="UTF-8">
4  <script src="/lws-common.js"></script>
5  <link rel="stylesheet" type="text/css" href="lwsgs.css"/>
6  <script src="lwsgs.js"></script>
7  </head>
8
9  <body class="seats">
10    <table class="lwsgs">
11     <tr>
12      <td class="logo">
13       <img src="lwsgs-logo.png">
14      </td>
15      <td class="">
16	<div id=lwsgs class="lwsgs"></div>
17      </td>
18     </tr>
19
20     <tr><td colspan=2 class="h99">
21        <table class="c100"><tr>
22        <td class="c">
23     	<span id="nolog" class="group2">
24     	This is a demo application for lws generic-sessions.<br><br>
25     	It's a simple messageboard.<br><br>
26     	What's interesting about it is there is <b>no serverside scripting</b>,<br>
27     	instead client js makes a wss:// connection back to the server<br>
28     	and then reacts to JSON from the ws protocol.  Sessions stuff is <br>
29     	handled by lws generic sessions, making the <a href="https://libwebsockets.org/git/libwebsockets/tree/plugins/generic-sessions/protocol_generic_sessions.c">actual<br>
30     	test application</a> <a href="https://libwebsockets.org/git/libwebsockets/tree/plugins/generic-sessions/protocol_lws_messageboard.c">very small</a>.<br><br>
31	And because it's natively websocket, it's naturally connected<br>
32	for dynamic events and easy to maintain.
33     	<br><br>
34     	Register / Login at the top right to see and create new messages.
35     	</span>
36     	<span id="logged" class="group2">
37     	<div id="newmsg">
38     		<form action="msg" method="post" target="hidden">
39     		New message<br>
40         <textarea id="msg" placeholder="type your message here" cols="40" rows="5" name="msg">
41         	</textarea><br>
42         	<input type="submit" id="send" name="send" disabled=1>
43         	</form>
44     	</div>
45     	</span>
46     	<div id="dmessages">
47     	 <span id="messages" ></span>
48     	</div>
49     	<span id="debug" class="group2"></span>
50     	</td></tr></table>
51     </td></tr>
52    </table>
53   </form>
54   <iframe name="hidden" class="hidden"></iframe>
55 </body>
56</html>
57