87 lines
4.0 KiB
PHP
87 lines
4.0 KiB
PHP
<?php
|
|
/**
|
|
* Observium
|
|
*
|
|
* This file is part of Observium.
|
|
*
|
|
* @package observium
|
|
* @subpackage discovery
|
|
* @copyright (C) Adam Armstrong
|
|
*
|
|
*/
|
|
|
|
$oids = snmpwalk_cache_oid($device, 'brzaccVLNewAdbUnitName', [], 'ALVARION-DOT11-WLAN-MIB', NULL, OBS_SNMP_ALL_NUMERIC_INDEX);
|
|
/// NOTE. New table prefer, because old use weird indexes
|
|
if ($oids) {
|
|
//ALVARION-DOT11-WLAN-MIB::brzaccVLNewAdbUnitName.0.16.231.20.145.216 = "Kern Waste Tehachapi"
|
|
//ALVARION-DOT11-WLAN-MIB::brzaccVLNewAdbSNR.0.16.231.20.145.216 = 25
|
|
//ALVARION-DOT11-WLAN-MIB::brzaccVLNewAdbRSSI.0.16.231.20.145.216 = -76
|
|
$oids = snmpwalk_cache_oid($device, 'brzaccVLNewAdbSNR', $oids, 'ALVARION-DOT11-WLAN-MIB', NULL, OBS_SNMP_ALL_NUMERIC_INDEX);
|
|
$oids = snmpwalk_cache_oid($device, 'brzaccVLNewAdbRSSI', $oids, 'ALVARION-DOT11-WLAN-MIB', NULL, OBS_SNMP_ALL_NUMERIC_INDEX);
|
|
|
|
foreach ($oids as $index => $entry) {
|
|
$descr = $entry['brzaccVLNewAdbUnitName'];
|
|
|
|
// Signal-to-Noise Ratio
|
|
if (is_numeric($entry['brzaccVLNewAdbSNR'])) {
|
|
$oid = ".1.3.6.1.4.1.12394.1.1.11.5.1.3.1.26.$index";
|
|
$value = $entry['brzaccVLNewAdbSNR'];
|
|
discover_sensor_ng($device, 'snr', $mib, 'brzaccVLNewAdbSNR', $oid, $index, "$descr (SNR)", 1, $value, ['rename_rrd' => "alvarion-dot11.$index"]);
|
|
|
|
}
|
|
|
|
// Received signal strength indication
|
|
if (is_numeric($entry['brzaccVLNewAdbRSSI'])) {
|
|
$oid = ".1.3.6.1.4.1.12394.1.1.11.5.1.3.1.54.$index";
|
|
$value = $entry['brzaccVLNewAdbRSSI'];
|
|
discover_sensor_ng($device, 'dbm', $mib, 'brzaccVLNewAdbRSSI', $oid, $index, "$descr (RSSI)", 1, $value, ['rename_rrd' => "alvarion-dot11.$index"]);
|
|
}
|
|
}
|
|
} else {
|
|
//ALVARION-DOT11-WLAN-MIB::brzaccVLAdbUnitName.1 = STRING: "Kern Waste Tehachapi"
|
|
//ALVARION-DOT11-WLAN-MIB::brzaccVLAdbSNR.1 = INTEGER: 28
|
|
//ALVARION-DOT11-WLAN-MIB::brzaccVLAdbRSSI.1 = INTEGER: -75
|
|
$oids = snmpwalk_cache_oid($device, 'brzaccVLAdbUnitName', [], 'ALVARION-DOT11-WLAN-MIB');
|
|
$oids = snmpwalk_cache_oid($device, 'brzaccVLAdbSNR', $oids, 'ALVARION-DOT11-WLAN-MIB');
|
|
$oids = snmpwalk_cache_oid($device, 'brzaccVLAdbRSSI', $oids, 'ALVARION-DOT11-WLAN-MIB');
|
|
|
|
foreach ($oids as $index => $entry) {
|
|
$descr = $entry['brzaccVLAdbUnitName'];
|
|
|
|
// Signal-to-Noise Ratio
|
|
if (is_numeric($entry['brzaccVLAdbSNR'])) {
|
|
$oid = ".1.3.6.1.4.1.12394.1.1.11.5.1.2.1.5.$index";
|
|
$value = $entry['brzaccVLAdbSNR'];
|
|
discover_sensor_ng($device, 'snr', $mib, 'brzaccVLAdbSNR', $oid, $index, "$descr (SNR)", 1, $value, ['rename_rrd' => "alvarion-dot11.$index"]);
|
|
}
|
|
|
|
// Received signal strength indication
|
|
if (is_numeric($entry['brzaccVLAdbRSSI'])) {
|
|
$oid = ".1.3.6.1.4.1.12394.1.1.11.5.1.2.1.46.$index";
|
|
$value = $entry['brzaccVLAdbRSSI'];
|
|
discover_sensor_ng($device, 'dbm', $mib, 'brzaccVLAdbRSSI', $oid, $index, "$descr (RSSI)", 1, $value, ['rename_rrd' => "alvarion-dot11.$index"]);
|
|
|
|
}
|
|
}
|
|
}
|
|
|
|
//ALVARION-DOT11-WLAN-MIB::brzaccVLAverageReceiveSNR.0 = INTEGER: 23
|
|
//ALVARION-DOT11-WLAN-TST-MIB::brzLighteShowAuAvgSNR.0 = INTEGER: 23
|
|
$average_snr = snmp_get_oid($device, 'brzaccVLAverageReceiveSNR.0', 'ALVARION-DOT11-WLAN-MIB');
|
|
if (is_numeric($average_snr)) {
|
|
$oid = '.1.3.6.1.4.1.12394.1.1.11.1.0';
|
|
discover_sensor_ng($device, 'snr', $mib, 'brzaccVLAverageReceiveSNR', $oid, 0, "Average SNR", 1, $average_snr, [ 'rename_rrd' => "alvarion-dot11-average.0" ]);
|
|
|
|
}
|
|
|
|
//ALVARION-DOT11-WLAN-TST-MIB::brzLighteAvgRssiRecieved.0 = INTEGER: 0
|
|
$average_rssi = snmp_get_oid($device, 'brzLighteAvgRssiRecieved.0', 'ALVARION-DOT11-WLAN-TST-MIB');
|
|
if (is_numeric($average_rssi) && $average_rssi) {
|
|
$oid = '.1.3.6.1.4.1.12394.3.2.3.2.1.0';
|
|
discover_sensor_ng($device, 'dbm', $mib, 'brzLighteAvgRssiRecieved', $oid, 0, "Average RSSI", 1, $average_rssi, [ 'rename_rrd' => "alvarion-dot11-average.0" ]);
|
|
}
|
|
|
|
unset($oids, $oid, $value, $average_snr, $average_rssi, $descr);
|
|
|
|
// EOF
|