diff options
author | Devaev Maxim <[email protected]> | 2018-07-12 02:32:56 +0000 |
---|---|---|
committer | Devaev Maxim <[email protected]> | 2018-07-12 02:32:56 +0000 |
commit | 52c94958f7b56d6d59b3ef8e7a145489cec9be1d (patch) | |
tree | 54f2e73189c50d22803f8504860fdca775b17145 /kvmd/web/js | |
parent | cd0ce2d6bef69975d713f55eeba24abe379e4f25 (diff) |
better web
Diffstat (limited to 'kvmd/web/js')
-rw-r--r-- | kvmd/web/js/kvmd.js | 43 |
1 files changed, 31 insertions, 12 deletions
diff --git a/kvmd/web/js/kvmd.js b/kvmd/web/js/kvmd.js index 9e72aebe..dc69bc73 100644 --- a/kvmd/web/js/kvmd.js +++ b/kvmd/web/js/kvmd.js @@ -1,12 +1,7 @@ -KVMD_BASE_URL = "/kvmd" - - -// ----------------------------------------------------------------------------- function runKvmdSession() { - var ws = new WebSocket("ws://" + location.host + KVMD_BASE_URL + "/ws"); + var ws = new WebSocket("ws://" + location.host + "/kvmd/ws"); ws.onopen = function(event) { - alert("Session opened and keyboard will be captured"); __installHidHandlers(ws); __setSessionStatus("session-opened", "Session opened (keyboard captured)"); }; @@ -86,15 +81,39 @@ function clickResetButton() { function __clickButton(button) { var http = new XMLHttpRequest(); - http.open("POST", KVMD_BASE_URL + "/atx/click?button=" + button, true); + http.open("POST", "/kvmd/atx/click?button=" + button, true); http.onreadystatechange = function() { - if (http.readyState == 4) { - if (http.status == 200) { - alert("Clicked!") - } else { - alert("Click error: " + http.responseText); + if (http.readyState == 4 && http.status != 200) { + alert("Click error: " + http.responseText); + } + } + http.send(); +} + + +// ----------------------------------------------------------------------------- +function pollStreamer() { + var http = new XMLHttpRequest(); + http.open("GET", "/streamer/?action=snapshot", true); + http.onreadystatechange = function() { + if (http.readyState == 2) { + http.abort(); + if (http.status != 200) { + document.getElementById("stream-image").src = "/streamer/?action=stream&time=" + new Date().getTime(); } } } http.send(); + setTimeout(pollStreamer, 2000); +} + +function resetStreamer() { + var http = new XMLHttpRequest(); + http.open("POST", "/kvmd/streamer/reset", true); + http.onreadystatechange = function() { + if (http.readyState == 4 && http.status != 200) { + alert("Can't reset streamer: " + http.responseText); + } + } + http.send(); } |