diff --git a/cmd/mesh/main.go b/cmd/mesh/main.go index 2d981fb1..447a2095 100644 --- a/cmd/mesh/main.go +++ b/cmd/mesh/main.go @@ -201,7 +201,7 @@ func run(args yggArgs, ctx context.Context) { // that neither -autoconf, -useconf or -useconffile were set above. Stop // if we don't. if cfg == nil { - return + panic("broken configuration") } n := &node{} // Have we been asked for the node address yet? If so, print it and then stop. @@ -230,13 +230,6 @@ func run(args yggArgs, ctx context.Context) { } return } - //override httpaddress and wwwroot parameters in cfg - if len(cfg.HttpAddress) == 0 { - cfg.HttpAddress = args.httpaddress - } - if len(cfg.WwwRoot) == 0 { - cfg.WwwRoot = args.wwwroot - } // Setup the RiV-mesh node itself. { @@ -274,6 +267,14 @@ func run(args yggArgs, ctx context.Context) { // Setup the REST socket. { + //override httpaddress and wwwroot parameters in cfg + if len(cfg.HttpAddress) == 0 { + cfg.HttpAddress = args.httpaddress + } + if len(cfg.WwwRoot) == 0 { + cfg.WwwRoot = args.wwwroot + } + if n.rest_server, err = restapi.NewRestServer(restapi.RestServerCfg{ Core: n.core, Log: logger, diff --git a/contrib/ui/mesh-ui/ui/assets/mesh-ui-es5.js b/contrib/ui/mesh-ui/ui/assets/mesh-ui-es5.js index d8916fcc..82c308a5 100644 --- a/contrib/ui/mesh-ui/ui/assets/mesh-ui-es5.js +++ b/contrib/ui/mesh-ui/ui/assets/mesh-ui-es5.js @@ -299,8 +299,6 @@ ui.getConnectedPeers = function () { ui.updateConnectedPeersHandler = function (peers) { ui.updateStatus(peers); - ui.updateSpeed(peers); - ui.updateCoordsInfo(); $("peers").innerText = ""; if (peers) { var regexStrip = /%[^\]]*/gm; @@ -381,7 +379,7 @@ ui.updateSelfInfo = function () { return ui.getSelfInfo().then(function (info) { $("ipv6").innerText = info.address; $("subnet").innerText = info.subnet; - $("coordinates").innerText = ''.concat('[',info.coords.join(' '),']'); + $("coordinates").innerText = ''.concat('[', info.coords.join(' '), ']'); $("pub_key").innerText = info.key; $("priv_key").innerText = info.private_key; $("ipv6").innerText = info.address; @@ -391,16 +389,6 @@ ui.updateSelfInfo = function () { }); }; -ui.updateCoordsInfo = function () { - return ui.getSelfInfo().then(function (info) { - $("coordinates").innerText = ''.concat('[',info.coords.join(' '),']'); - }).catch(function (error) { - $("ipv6").innerText = error.message; - }); -}; - -ui.sse = new EventSource('/api/sse'); - function main() { window.addEventListener("load", function () { @@ -412,6 +400,8 @@ function main() { ui.updateSelfInfo(); + ui.sse = new EventSource('/api/sse'); + ui.sse.addEventListener("ping", function (e) { var data = JSON.parse(e.data); setPingValue(data.peer, data.value); @@ -420,7 +410,16 @@ function main() { ui.sse.addEventListener("peers", function (e) { ui.updateConnectedPeersHandler(JSON.parse(e.data)); }); + + ui.sse.addEventListener("rxtx", function (e) { + ui.updateSpeed(JSON.parse(e.data)); + }); + + ui.sse.addEventListener("coord", function (e) { + var coords = JSON.parse(e.data); + $("coordinates").innerText = ''.concat('[', coords.join(' '), ']'); + }); }); } -main(); +main(); \ No newline at end of file diff --git a/contrib/ui/mesh-ui/ui/assets/mesh-ui.css b/contrib/ui/mesh-ui/ui/assets/mesh-ui.css index 0565d85b..63cbfb33 100644 --- a/contrib/ui/mesh-ui/ui/assets/mesh-ui.css +++ b/contrib/ui/mesh-ui/ui/assets/mesh-ui.css @@ -68,7 +68,7 @@ img { display: block; } -body { +body, #notification_windowx { max-width: 690px; margin: auto; } @@ -94,11 +94,12 @@ footer { white-space: nowrap; } -#version { +#footer-row #version { padding-left: 20px; + padding-right: 20px; } -#status { +#footer-row #status { padding-right: 20px; padding-left: 20px; } diff --git a/contrib/ui/mesh-ui/ui/assets/mesh-ui.js b/contrib/ui/mesh-ui/ui/assets/mesh-ui.js index 8caa39bc..36b84cd4 100644 --- a/contrib/ui/mesh-ui/ui/assets/mesh-ui.js +++ b/contrib/ui/mesh-ui/ui/assets/mesh-ui.js @@ -286,8 +286,6 @@ ui.getConnectedPeers = () => ui.updateConnectedPeersHandler = (peers) => { ui.updateStatus(peers); - ui.updateSpeed(peers); - ui.updateCoordsInfo(); $("peers").innerText = ""; if(peers) { const regexStrip = /%[^\]]*/gm; @@ -368,16 +366,6 @@ ui.updateSelfInfo = () => $("ipv6").innerText = error.message; }); -ui.updateCoordsInfo = function () { - return ui.getSelfInfo().then(function (info) { - $("coordinates").innerText = ''.concat('[',info.coords.join(' '),']'); - }).catch(function (error) { - $("ipv6").innerText = error.message; - }); -}; - -ui.sse = new EventSource('/api/sse'); - function main() { window.addEventListener("load", () => { @@ -386,7 +374,8 @@ function main() { ui.getAllPeers().then(() => ui.updateConnectedPeers()); ui.updateSelfInfo(); - //setInterval(ui.updateSelfInfo, 5000); + + ui.sse = new EventSource('/api/sse'); ui.sse.addEventListener("ping", (e) => { let data = JSON.parse(e.data); @@ -397,6 +386,15 @@ function main() { ui.updateConnectedPeersHandler(JSON.parse(e.data)); }) + ui.sse.addEventListener("rxtx", (e) => { + ui.updateSpeed(JSON.parse(e.data)); + }) + + ui.sse.addEventListener("coord", (e) => { + let coords = JSON.parse(e.data); + $("coordinates").innerText = ''.concat('[',coords.join(' '),']'); + }) + }); } diff --git a/contrib/ui/mesh-ui/ui/index.html b/contrib/ui/mesh-ui/ui/index.html index c67918e3..8836b92a 100755 --- a/contrib/ui/mesh-ui/ui/index.html +++ b/contrib/ui/mesh-ui/ui/index.html @@ -33,7 +33,7 @@