diff --git a/public/index.html b/public/index.html index 8dc10aedae08eb665152424decb399cac1b2bccb..dca7bd09ae93f2276f595f474c3142f73cff6b46 100755 --- a/public/index.html +++ b/public/index.html @@ -257,7 +257,7 @@ This IoT Gateway includes Node-RED, a web-based tool for building Node.js applications. <br> The Node-RED web application is accessible at: - <a href="http://params_hostname:80">http://params_hostname:80</a> + <a href="http://params_hostname:params_node_red_http_port">http://params_hostname:params_node_red_http_port</a> </div> <div class="warning"> diff --git a/server.js b/server.js index 89406d3fdd62e5fed034159ad1327977e50225e1..3c45c61e1cfeba6ab10496900e8a689245598706 100755 --- a/server.js +++ b/server.js @@ -28,6 +28,7 @@ var supportedExtensions = { "png" : "image/png" }; var PORT = 8000; +var NODE_RED_PORT = 80; var STATE_DIR = '/var/lib/gateway_config_tools'; var BIN_DIR = './bin'; var NETWORKS_FILE = STATE_DIR + '/networks.txt'; @@ -235,11 +236,9 @@ function submitForm(params, res, req) { } - var nameobj; - // no errors occurred. Do success response. exec (BIN_DIR+'/configure_gateway --showNames', function (error, stdout, stderr) { - nameobj = {hostname: "unknown", ssid: "unknown", default_ssid: "unknown"}; + var nameobj = {hostname: "unknown", ssid: "unknown", default_ssid: "unknown"}; try { nameobj = JSON.parse(stdout); } catch (ex) { @@ -341,9 +340,21 @@ function requestHandler(req, res) { } }); } else { - var res_str = getStateBasedIndexPage(); - res_str.replace(/params_hostname/g, nameobj.hostname + ".local"); - res.end(res_str); + exec ('/usr/bin/unit_serial_number', function (error, stdout, stderr) { + var sn = stdout.trim(); + if(!sn) { + sn = "unknown" + } + + var res_str = getStateBasedIndexPage(); + var host_url = sn + ".local"; + var host_port = NODE_RED_PORT.toString().trim(); + console.log("host_url=%s, port=%s", host_url, host_port); + + res_str = res_str.replace(/params_hostname/g, host_url); + res_str = res_str.replace(/params_node_red_http_port/g, host_port); + res.end(res_str); + }); } } else if (urlobj.pathname === '/wifiNetworks') { if (fs.existsSync(NETWORKS_FILE)) {