summaryrefslogtreecommitdiff
path: root/webhogg/game_server/src/ws_test.html
diff options
context:
space:
mode:
Diffstat (limited to 'webhogg/game_server/src/ws_test.html')
-rw-r--r--webhogg/game_server/src/ws_test.html74
1 files changed, 74 insertions, 0 deletions
diff --git a/webhogg/game_server/src/ws_test.html b/webhogg/game_server/src/ws_test.html
new file mode 100644
index 0000000..3b3d4ce
--- /dev/null
+++ b/webhogg/game_server/src/ws_test.html
@@ -0,0 +1,74 @@
+<!doctype html>
+<html>
+ <head>
+ <title>WS Test</title>
+ <style>
+.b {
+ border-bottom: 1px solid black;
+}
+ </style>
+ </head>
+ <body style='background: black; color: white'>
+ <div id='cons'>connected</div><br>
+ <button onclick='test_connection()'>Launch</button><br>
+ <span>Server address: </span><input id='addr'></input>
+ <div align='right'><span>Message</span><input id='msg'></input> <button onclick='send_text()'>Send</button></div>
+ <div id='chat' style='background: rgb(20, 20, 20); padding-left: 20px; margin: 40px' />
+ </body>
+ <script>
+function get_addr() {
+ return document.getElementById('addr').value;
+}
+
+function test_connection() {
+ let a = 'ws://' + get_addr();
+ add_text('create a new connection at "' + a + '"');
+ ws = new WebSocket(a, 'tuesday');
+ ws.addEventListener('open', function (event) {
+ add_text('connection established');
+ toggle_connected(true);
+ // send token
+ ws.send('42');
+ });
+ ws.addEventListener('error', function (event) {
+ add_text('ws error occured: "' + event + '"');
+ toggle_connected(false);
+ });
+ ws.addEventListener('close', function (event) {
+ add_text('ws is closed now');
+ toggle_connected(false);
+ });
+ ws.addEventListener('message', function (event) {
+ add_text('got ws message: "' + event.data + '"');
+ });
+}
+
+function send_text() {
+ let msg = document.getElementById('msg').value;
+ ws.send(msg);
+ add_text('sent message: "' + msg + '"');
+}
+
+function add_text(text, color='white') {
+ let c = document.getElementById('chat');
+ let n = document.createElement('span');
+ n.setAttribute('class', 'b');
+ n.style = 'color: ' + color;
+ n.textContent = (new Date()).toTimeString().substring(0, 8) + '|> '+ text;
+ c.appendChild(n);
+ c.appendChild(document.createElement('br'));
+}
+function toggle_connected(con) {
+ let c = document.getElementById('cons');
+ if (con) {
+ c.style = 'background: green'
+ c.textContent = 'connected';
+ } else {
+ c.style = 'background: red'
+ c.textContent = 'not connected';
+ }
+}
+toggle_connected(false);
+add_text("JS loaded");
+ </script>
+</html>