diff --git a/html/images/os/cambium.png b/html/images/os/cambium.png index 941fdbfd5..4f1aa055d 100644 Binary files a/html/images/os/cambium.png and b/html/images/os/cambium.png differ diff --git a/html/includes/collectd/definitions.php b/html/includes/collectd/definitions.php index 932524da1..3ab39e1ce 100644 --- a/html/includes/collectd/definitions.php +++ b/html/includes/collectd/definitions.php @@ -1371,6 +1371,18 @@ function load_graph_definitions($logarithmic = false, $tinylegend = false) { 'GPRINT:temp_avg:AVERAGE:%4.1lf', 'GPRINT:temp_max:MAX:%4.1lf', 'GPRINT:temp_avg:LAST:%4.1lf\l'); + $GraphDefs['signal'] = array( + 'DEF:signal_avg={file}:value:AVERAGE', + 'DEF:signal_min={file}:value:MIN', + 'DEF:signal_max={file}:value:MAX', + 'CDEF:average=signal_avg,0.2,*,PREV,UN,signal_avg,PREV,IF,0.8,*,+', + "AREA:signal_max#$HalfRed", + "AREA:signal_min#$Canvas", + "LINE1:signal_avg#$FullRed:Signal", + 'GPRINT:signal_min:MIN:%4.1lf', + 'GPRINT:signal_avg:AVERAGE:%4.1lf', + 'GPRINT:signal_max:MAX:%4.1lf', + 'GPRINT:signal_avg:LAST:%4.1lf\l'); $GraphDefs['timeleft'] = array( #'-v', 'Minutes', 'DEF:avg={file}:timeleft:AVERAGE', diff --git a/html/includes/graphs/device/signal.inc.php b/html/includes/graphs/device/signal.inc.php new file mode 100644 index 000000000..5bf416ee1 --- /dev/null +++ b/html/includes/graphs/device/signal.inc.php @@ -0,0 +1,7 @@ + '); } -$icons = array('fanspeed'=>'tachometer','humidity'=>'tint','temperature'=>'fire','current'=>'bolt','frequency'=>'line-chart','power'=>'power-off','voltage'=>'bolt','charge'=>'plus-square','dbm'=>'sun-o', 'load'=>'spinner','state'=>'bullseye'); -foreach (array('fanspeed','humidity','temperature') as $item) { +$icons = array('fanspeed'=>'tachometer','humidity'=>'tint','temperature'=>'fire','current'=>'bolt','frequency'=>'line-chart','power'=>'power-off','voltage'=>'bolt','charge'=>'plus-square','dbm'=>'sun-o', 'load'=>'spinner','state'=>'bullseye','signal'=>'wifi'); +foreach (array('fanspeed','humidity','temperature','signal') as $item) { if (isset($menu_sensors[$item])) { echo('
  • '.nicecase($item).'
  • '); unset($menu_sensors[$item]);$sep++; diff --git a/html/pages/device/health.inc.php b/html/pages/device/health.inc.php index 21f41389b..7c04d6ccc 100644 --- a/html/pages/device/health.inc.php +++ b/html/pages/device/health.inc.php @@ -16,6 +16,7 @@ $power = dbFetchCell("select count(*) from sensors WHERE sensor_class='po $dBm = dbFetchCell("select count(*) from sensors WHERE sensor_class='dBm' AND device_id = ?", array($device['device_id'])); $states = dbFetchCell("select count(*) from sensors WHERE sensor_class='state' AND device_id = ?", array($device['device_id'])); $load = dbFetchCell("select count(*) from sensors WHERE sensor_class='load' AND device_id = ?", array($device['device_id'])); +$signal = dbFetchCell("select count(*) from sensors WHERE sensor_class='signal' AND device_id = ?", array($device['device_id'])); unset($datas); $datas[] = 'overview'; @@ -79,6 +80,10 @@ if ($load) { $datas[] = 'load'; } +if ($signal) { + $datas[] = 'signal'; +} + $type_text['overview'] = 'Overview'; $type_text['charge'] = 'Battery Charge'; $type_text['temperature'] = 'Temperature'; @@ -95,6 +100,7 @@ $type_text['power'] = 'Power'; $type_text['dbm'] = 'dBm'; $type_text['state'] = 'State'; $type_text['load'] = 'Load'; +$type_text['signal'] = 'Signal'; $link_array = array( 'page' => 'device', diff --git a/html/pages/device/health/signal.inc.php b/html/pages/device/health/signal.inc.php new file mode 100644 index 000000000..14665c3c8 --- /dev/null +++ b/html/pages/device/health/signal.inc.php @@ -0,0 +1,7 @@ + static-config ? $type_text['overview'] = "Overview"; @@ -31,6 +32,7 @@ $type_text['toner'] = "Toner"; $type_text['dbm'] = "dBm"; $type_text['load'] = "Load"; $type_text['state'] = "State"; +$type_text['signal'] = "Signal"; if (!$vars['metric']) { $vars['metric'] = "processor"; diff --git a/html/pages/health/signal.inc.php b/html/pages/health/signal.inc.php new file mode 100644 index 000000000..8d9d41fd4 --- /dev/null +++ b/html/pages/health/signal.inc.php @@ -0,0 +1,7 @@ + -80) { + $limit = -80; + } + break; }//end switch return $limit; @@ -378,6 +385,10 @@ function sensor_limit($class, $current) { case 'power': $limit = ($current * 1.50); break; + + case 'signal'; + $limit = 0; + break; }//end switch return $limit; diff --git a/includes/discovery/sensors.inc.php b/includes/discovery/sensors.inc.php index 32d4fdd9e..67da5bc8e 100644 --- a/includes/discovery/sensors.inc.php +++ b/includes/discovery/sensors.inc.php @@ -27,3 +27,4 @@ require 'includes/discovery/sensors/charge.inc.php'; require 'includes/discovery/sensors/load.inc.php'; require 'includes/discovery/sensors/states.inc.php'; require 'includes/discovery/sensors/dbm.inc.php'; +require 'includes/discovery/sensors/signal.inc.php'; \ No newline at end of file diff --git a/includes/discovery/sensors/signal.inc.php b/includes/discovery/sensors/signal.inc.php index 55ab39291..39808c4d4 100644 --- a/includes/discovery/sensors/signal.inc.php +++ b/includes/discovery/sensors/signal.inc.php @@ -9,4 +9,4 @@ d_echo($valid['sensor']['signal']); check_valid_sensors($device, 'signal', $valid['sensor']); -echo "\n"; +echo "\n"; \ No newline at end of file diff --git a/includes/discovery/sensors/signal/cambium.inc.php b/includes/discovery/sensors/signal/cambium.inc.php new file mode 100644 index 000000000..9104ab9b8 --- /dev/null +++ b/includes/discovery/sensors/signal/cambium.inc.php @@ -0,0 +1,73 @@ + '%', 'load' => '%', 'state' => '#', + 'signal' => 'dBm', ); foreach ($supported_sensors as $sensor_type => $sensor_unit) { diff --git a/includes/polling/signal/cambium.inc.php b/includes/polling/signal/cambium.inc.php new file mode 100644 index 000000000..41582d93d --- /dev/null +++ b/includes/polling/signal/cambium.inc.php @@ -0,0 +1,51 @@ +