Merge branch 'websocket-ui'

This commit is contained in:
Jeff Becker 2016-11-01 10:42:08 -04:00
commit 9ab415da9d
No known key found for this signature in database
GPG key ID: AB950234D6EA286B
2 changed files with 64 additions and 36 deletions

View file

@ -31,6 +31,10 @@
</style> </style>
</head> </head>
<body> <body>
<div id="login-wrapper">
<input id="ws-url" value="ws://127.0.0.1:7666"></input>
<button id="connect-button" onclick="startui()">connect</button>
</div>
<pre id="log"></pre> <pre id="log"></pre>
<canvas id="main"> <canvas id="main">
</canvas> </canvas>

View file

@ -1,5 +1,3 @@
var url = "ws://127.0.0.1:7665";
var l = document.getElementById("log"); var l = document.getElementById("log");
var c = document.getElementById("main"); var c = document.getElementById("main");
var nodes = { var nodes = {
@ -119,18 +117,16 @@ function tunnelState(tid, state) {
tunnelFailed(tid); tunnelFailed(tid);
} else if (state == "6" ) { } else if (state == "6" ) {
tunnelExpiring(tid); tunnelExpiring(tid);
} else {
logit("tunnel "+tid+" state "+state);
} }
} }
function tunnelCreated(tid) { function tunnelCreated(tid) {
logit("tunnel "+tid+" was created"); logit("Tunnel "+tid+" was created");
} }
function logit(msg) { function logit(msg) {
console.log(msg); console.log(msg);
var t = document.createTextNode(leftpad(msg, 25)); var t = document.createTextNode(msg);
var e = document.createElement("div"); var e = document.createElement("div");
e.appendChild(t); e.appendChild(t);
l.appendChild(e); l.appendChild(e);
@ -138,10 +134,37 @@ function logit(msg) {
l.removeChild(l.children[0]); l.removeChild(l.children[0]);
} }
function socketClosed() {
var b = document.getElementById("connect-button");
b.onclick = startui
b.innerHTML = "connect";
}
function startui() {
var el = document.getElementById("ws-url");
var url;
if(el)
url = el.value;
else
url = "ws://127.0.0.1:7666";
var ws = new WebSocket(url); var ws = new WebSocket(url);
ws.onclose = function (ev) { ws.onclose = function (ev) {
if (ev.code == 1000)
logit("connection closed");
else
logit("failed to connect to "+url);
nodes = { length: 0 }; nodes = { length: 0 };
tpeers = { length: 0 }; tpeers = { length: 0 };
socketClosed();
}
ws.onopen = function(ev) {
logit("connected to "+url);
var b = document.getElementById("connect-button");
b.onclick = function() {
ws.close();
}
b.innerHTML = "disconnect";
} }
ws.onmessage = function(ev) { ws.onmessage = function(ev) {
var j = JSON.parse(ev.data); var j = JSON.parse(ev.data);
@ -170,6 +193,7 @@ ws.onmessage = function(ev) {
} }
} }
}; };
}
function getPeer(h, us) { function getPeer(h, us) {
if (tpeers[h]) { if (tpeers[h]) {