mapserver/server/static/js/WebsocketChannel.js
2019-01-29 18:00:00 +01:00

38 lines
814 B
JavaScript

var WebSocketChannel = (function(){
'use strict';
var wsUrl = location.protocol.replace("http", "ws") + "//" + location.host + location.pathname.substring(0, location.pathname.lastIndexOf("/")) + "/api/ws";
function connect(){
var ws = new WebSocket(wsUrl);
ws.onmessage = function(e){
var event = JSON.parse(e.data);
if (event.type == "rendered-tile"){
//Update tiles
RealtimeTileLayer.update(event.data)
} else if (event.type == "mapobject-created"){
//TODO
console.log(event);
} else if (event.type == "mapobjects-cleared"){
//TODO
console.log(event);
}
}
ws.onerror = function(){
//reconnect after some time
setTimeout(connect, 1000);
}
}
return {
connect: connect
};
}());