add some map basics

This commit is contained in:
Jakob Ketterl 2019-07-01 16:49:39 +02:00
parent f283a1ad68
commit a4a306374d
4 changed files with 49 additions and 2 deletions

12
htdocs/map.html Normal file
View File

@ -0,0 +1,12 @@
<!DOCTYPE HTML>
<html>
<head>
<title>OpenWebRX | Open Source SDR Web App for Everyone!</title>
<script src="static/jquery-3.2.1.min.js"></script>
<script src="static/map.js"></script>
<link rel="stylesheet" type="text/css" href="static/nanoscroller.css" />
<meta charset="utf-8">
</head>
<body>
</body>
</html>

30
htdocs/map.js Normal file
View File

@ -0,0 +1,30 @@
(function(){
var protocol = 'ws';
if (window.location.toString().startsWith('https://')) {
protocol = 'wss';
}
var ws_url = protocol + "://" + (window.location.origin.split("://")[1]) + "/ws/";
if (!("WebSocket" in window)) return;
var ws = new WebSocket(ws_url);
ws.onopen = function(){
console.info("onopen");
ws.send("SERVER DE CLIENT client=map.js type=map");
};
ws.onmessage = function(){
console.info("onmessage");
};
ws.onclose = function(){
console.info("onclose");
};
window.onbeforeunload = function() { //http://stackoverflow.com/questions/4812686/closing-websocket-correctly-html5-javascript
ws.onclose = function () {};
ws.close();
};
ws.onerror = function(){
console.info("onerror");
};
})();

View File

@ -79,6 +79,10 @@ class IndexController(AssetsController):
def handle_request(self): def handle_request(self):
self.serve_file("index.html", content_type = "text/html") self.serve_file("index.html", content_type = "text/html")
class MapController(AssetsController):
def handle_request(self):
self.serve_file("map.html", content_type = "text/html")
class WebSocketController(Controller): class WebSocketController(Controller):
def handle_request(self): def handle_request(self):
conn = WebSocketConnection(self.handler, WebSocketMessageHandler()) conn = WebSocketConnection(self.handler, WebSocketMessageHandler())

View File

@ -1,4 +1,4 @@
from owrx.controllers import StatusController, IndexController, AssetsController, WebSocketController from owrx.controllers import StatusController, IndexController, AssetsController, WebSocketController, MapController
from http.server import BaseHTTPRequestHandler from http.server import BaseHTTPRequestHandler
import re import re
@ -20,7 +20,8 @@ class Router(object):
{"route": "/ws/", "controller": WebSocketController}, {"route": "/ws/", "controller": WebSocketController},
{"regex": "(/favicon.ico)", "controller": AssetsController}, {"regex": "(/favicon.ico)", "controller": AssetsController},
# backwards compatibility for the sdr.hu portal # backwards compatibility for the sdr.hu portal
{"regex": "/(gfx/openwebrx-avatar.png)", "controller": AssetsController} {"regex": "/(gfx/openwebrx-avatar.png)", "controller": AssetsController},
{"route": "/map", "controller": MapController}
] ]
def find_controller(self, path): def find_controller(self, path):
for m in Router.mappings: for m in Router.mappings: