2010-07-31 19:49:11 +00:00
|
|
|
<?php
|
|
|
|
|
2017-02-03 12:39:38 +00:00
|
|
|
echo 'RFC1628 ';
|
|
|
|
|
2017-09-19 14:12:04 -05:00
|
|
|
$input_freq = snmpwalk_group($device, 'upsInputFrequency', 'UPS-MIB');
|
|
|
|
foreach ($input_freq as $index => $data) {
|
|
|
|
$freq_oid = ".1.3.6.1.2.1.33.1.3.3.1.2.$index";
|
|
|
|
$divisor = get_device_divisor($device, $pre_cache['poweralert_serial'], 'frequency', $freq_oid);
|
2017-02-03 12:39:38 +00:00
|
|
|
$descr = 'Input';
|
2017-09-19 14:12:04 -05:00
|
|
|
if (count($input_freq) > 1) {
|
|
|
|
$descr .= " Phase $index";
|
2015-07-13 20:10:26 +02:00
|
|
|
}
|
2016-09-20 03:11:56 +03:00
|
|
|
|
2017-09-19 14:12:04 -05:00
|
|
|
discover_sensor(
|
|
|
|
$valid['sensor'],
|
|
|
|
'frequency',
|
|
|
|
$device,
|
|
|
|
$freq_oid,
|
|
|
|
"3.2.0.$index",
|
|
|
|
'rfc1628',
|
|
|
|
$descr,
|
|
|
|
$divisor,
|
|
|
|
1,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
$data['upsInputFrequency'] / $divisor
|
|
|
|
);
|
2017-02-03 12:39:38 +00:00
|
|
|
}
|
2011-03-15 09:57:13 +00:00
|
|
|
|
2017-09-19 14:12:04 -05:00
|
|
|
$output_freq = snmp_get($device, 'upsOutputFrequency.0', '-OqvU', 'UPS-MIB');
|
|
|
|
if (is_numeric($output_freq)) {
|
|
|
|
$freq_oid = '.1.3.6.1.2.1.33.1.4.2.0';
|
2017-03-15 04:15:27 -05:00
|
|
|
$divisor = get_device_divisor($device, $pre_cache['poweralert_serial'], 'frequency', $freq_oid);
|
2016-09-20 03:11:56 +03:00
|
|
|
|
2017-09-19 14:12:04 -05:00
|
|
|
discover_sensor(
|
|
|
|
$valid['sensor'],
|
|
|
|
'frequency',
|
|
|
|
$device,
|
|
|
|
$freq_oid,
|
|
|
|
'4.2.0',
|
|
|
|
'rfc1628',
|
|
|
|
'Output',
|
|
|
|
$divisor,
|
|
|
|
1,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
$output_freq / $divisor
|
|
|
|
);
|
2017-03-15 04:15:27 -05:00
|
|
|
}
|
2017-02-03 12:39:38 +00:00
|
|
|
|
2017-09-19 14:12:04 -05:00
|
|
|
$bypass_freq = snmp_get($device, 'upsBypassFrequency.0', '-OqvU', 'UPS-MIB');
|
|
|
|
if (is_numeric($bypass_freq)) {
|
|
|
|
$freq_oid = '.1.3.6.1.2.1.33.1.5.1.0';
|
2017-03-15 04:15:27 -05:00
|
|
|
$divisor = get_device_divisor($device, $pre_cache['poweralert_serial'], 'frequency', $freq_oid);
|
2017-02-03 12:39:38 +00:00
|
|
|
|
2017-09-19 14:12:04 -05:00
|
|
|
discover_sensor(
|
|
|
|
$valid['sensor'],
|
|
|
|
'frequency',
|
|
|
|
$device,
|
|
|
|
$freq_oid,
|
|
|
|
'5.1.0',
|
|
|
|
'rfc1628',
|
|
|
|
'Bypass',
|
|
|
|
$divisor,
|
|
|
|
1,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
null,
|
|
|
|
$bypass_freq / $divisor
|
|
|
|
);
|
2017-03-15 04:15:27 -05:00
|
|
|
}
|
2017-09-19 14:12:04 -05:00
|
|
|
|
|
|
|
unset($input_freq, $output_freq, $bypass_freq);
|