<title>Merica Terminal</title>
<script type="text/javascript" src="//dejvice.merica.cz:5000/js" async></script>
<script>
- var socket = new WebSocket(
- "ws://" + document.domain + ':' + location.port,
- "merica-terminal-protocol"
- );
+ var socket;
- function updateLocal(msg) {
- document.getElementById("localJSON").innerHTML = msg;
- }
+ function connect() {
+ console.log("connecting...");
+ socket = new WebSocket(
+ "ws://" + document.domain + ':' + location.port,
+ "merica-terminal-protocol"
+ );
- socket.onopen = function() {
- console.log("socket open");
- updateLocal("socket open");
- }
+ socket.onopen = function() {
+ console.log("socket open");
+ updateLocal("socket open");
+ }
- socket.onclose = function() {
- console.log("socket closed");
- updateLocal("socket closed");
- }
+ socket.onclose = function() {
+ console.log("socket closed");
+ updateLocal("socket closed");
+ delete socket;
+ setTimeout(connect, 10000);
+ }
- socket.onmessage = function(msg) {
- updateLocal(msg.data);
- if (typeof updateRemote === "function") {
- updateRemote(msg.data);
- } else {
- if (localStorage) {
- var now = Date.now();
- localStorage.setItem(now, msg.data);
- console.log(now + ": " + msg.data);
+ socket.onmessage = function(msg) {
+ updateLocal(msg.data);
+ if (typeof updateRemote === "function") {
+ updateRemote(msg.data);
+ } else {
+ if (localStorage) {
+ var now = Date.now();
+ localStorage.setItem(now, msg.data);
+ console.log(now + ": " + msg.data);
+ }
}
- }
+ }
}
+ connect();
+
+ function updateLocal(msg) {
+ document.getElementById("localJSON").innerHTML = msg;
+ }
function printLocalStorage() {
var output = "";
if (localStorage) {