diff -r a165f6c20a44 -r cfe232710027 www/js/mon_node.js --- a/www/js/mon_node.js Sun May 24 12:12:34 2020 +0200 +++ b/www/js/mon_node.js Thu May 28 14:23:14 2020 +0200 @@ -23,7 +23,8 @@ $(document).ready(function() { - var url = 'getnode.php?uuid="' + my_uuid + '"', + var record = {}, + url = 'getnode.php?uuid="' + my_uuid + '"', source = { datatype: 'json', datafields: [ @@ -55,50 +56,78 @@ }, dataAdapter = new $.jqx.dataAdapter(source, { loadComplete: function(records) { - var record = dataAdapter.records[0], - oline = (record.online) ? 'On-line' : 'Off-line', - html = '
'; - html += ''; - html += ''; - html += ''; - html += ''; - html += ''; - html += ''; - html += ''; - html += ''; + record = dataAdapter.records[0]; + updateScreen(); + } + }); + + function updateScreen() { + var oline = (record.online) ? 'On-line' : 'Off-line', + html = '
'; + html += '
Systeem overzicht
Uuid' + record.uuid + '
Systeem' + record.node + '
Online' + oline + '
Type' + record.group_id + '
Eerst gezien' + record.firstseen + '
Laatst gezien' + record.lastseen + '
'; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + html += ''; + if (record.online) { html += ''; html += ''; html += ''; html += ''; + + if (record.temperature > 0) + html += ''; + if (record.humidity > 0) + html += ''; + if (record.barometer > 0) + html += ''; + if ((record.gps_latitude != 0) && (record.gps_longitude != 0)) + html += ''; + html += ''; + if (record.net_rssi < 0) + html += ''; + html += ''; + } + html += ''; + html += ''; + $('#ContentPanel').html(html); + } + + // Get the data. + dataAdapter.dataBind(); + + websocket.onmessage = function(evt) { + var msg = evt.data; + var obj = JSON.parse(msg); + if (! obj.device && obj.node == record.node) { + record.online = obj.online; if (record.online) { - if (record.temperature > 0) { - html += ''; - } - if (record.humidity > 0) { - html += ''; - } - if (record.barometer > 0) { - html += ''; - } - if ((record.gps_latitude != 0) && (record.gps_longitude != 0)) { - html += ''; - } - html += ''; - if (record.net_rssi < 0) { - html += ''; - } - html += ''; + record.group_id = obj.group_id; + record.lastseen = obj.lastseen; + if (obj.hardwaremake) + record.harwaremake = obj.hardwaremake; + if (obj.hardwaremodel) + record.hardwaremodel = obj.hardwaremodel; + if (obj.os) + record.os = obj.os; + if (obj.os_version) + record.os_version = obj.os_version; + if (obj.firmware) + record.firmware = obj.firmware; + if (obj.temperature) + record.temperature = obj.temperature; + if (obj.humidity) + record.humidity = obj.humidity; + record.net_ifname = obj.net_ifname; + record.net_address = obj.net_address; + if (obj.net_rssi) + record.net_rssi = obj.net_rssi; } - html += ''; - html += ''; - $('#ContentPanel').html(html); + updateScreen(); } - }); - - // Get the data immediatly and then at regular intervals to refresh. - dataAdapter.dataBind(); - setInterval(function() { - dataAdapter.dataBind(); - }, 30000); + } });
Systeem overzicht
Uuid' + record.uuid + '
Systeem' + record.node + '
Online' + oline + '
Type' + record.group_id + '
Eerst gezien' + record.firstseen + '
Laatst gezien' + record.lastseen + '
Hardware maker' + record.hardwaremake + '
Hardware model' + record.hardwaremodel + '
OS' + record.os + ' versie: ' + record.os_version + '
Firmware' + record.firmware + '
Temperatuur' + record.temperature.toFixed(1) + '°C
Vochtigheid' + record.humidity.toFixed(1) + '%
Luchtdruk' + record.barometer.toFixed(0) + '
GPS' + record.gps_latitude + ' ' + record.gps_longitude + ' ' + record.gps_altitude + '
Netwerk' + record.net_ifname + ' ' + record.net_address + '
WiFi signaal' + record.net_rssi + '
Update interval' + record.up_interval + ' sec.
Temperatuur' + record.temperature.toFixed(1) + '°C
Vochtigheid' + record.humidity.toFixed(1) + '%
Luchtdruk' + record.barometer.toFixed(0) + '
GPS' + record.gps_latitude + ' ' + record.gps_longitude + ' ' + record.gps_altitude + '
Netwerk' + record.net_ifname + ' ' + record.net_address + '
WiFi signaal' + record.net_rssi + '
Update interval' + record.up_interval + ' sec.