3 <title>Merica Terminal</title>
4 <script type="text/javascript" src="//dejvice.merica.cz:5000/js" async></script>
9 console.log("connecting...");
10 socket = new WebSocket(
11 "ws://" + document.domain + ':' + location.port,
12 "merica-terminal-protocol"
15 socket.onopen = function() {
16 console.log("socket open");
17 document.getElementById("inputStatus").innerHTML = "connected";
20 socket.onclose = function() {
21 console.log("socket closed");
22 document.getElementById("inputStatus").innerHTML = "disconnected";
24 setTimeout(connect, 10000);
27 socket.onmessage = function(msg) {
28 updateJSONmsg(msg.data);
29 if (typeof updateRemote === "function") {
30 updateRemote(msg.data);
34 localStorage.setItem(now, msg.data);
35 console.log(now + ": " + msg.data);
43 function updateJSONmsg(msg) {
44 document.getElementById("localJSON").innerHTML = msg;
46 function printLocalStorage() {
49 if (localStorage.length) {
50 for (var i = 0; i < localStorage.length; i++) {
51 output += localStorage.key(i) + ': ' + localStorage.getItem(localStorage.key(i)) + '<br>';
54 output += "nobody here anymore!";
57 output += "localStorage not supported";
60 updateJSONmsg(output);
63 function clearLocalStorage() {
69 function sendReset() {
74 function sendClose() {
82 <h1>IID Coffee Terminal</h1>
85 <div id="remote"><center>No data from server.</center></div>
91 <button onclick="sendReset()">reset</button>
92 <span style="display:inline-block; width: 20pt;"></span>
93 <button onclick="sendClose()">close</button>
94 <span style="display:inline-block; width: 20pt;"></span>
95 <button onclick="printLocalStorage()">storage</button>
96 <span style="display:inline-block; width: 20pt;"></span>
97 <button onclick="clearLocalStorage()">clear</button>
98 <span style="display:inline-block; width: 20pt;"></span>
99 <button onclick="location.reload()">reload</button>
100 <p>Input: <span id="inputStatus"></span>, JSON message: <span id="localJSON">no data received</span></p>