mirror of
https://github.com/librenms/librenms.git
synced 2024-10-07 16:52:45 +00:00
newdevice: Added additional sensors for APC IRRP100 Air Conditionner series (#7006)
* Added detection for Hirschmann Railswitch * Update AUTHORS.md I agree to the conditions of the Contributor Agreement contained in doc/General/Contributing.md. * Fixes for PR 6207 requested changes * Fixes for PR 6207 requested changes * Fixes for PR 6207 requested changes * Fix for PR 6207 requested changes * Fix for PR 6207 requested changes * Synchro Fork * Synchro Fork * Added additional sensors for APC IRRP100 Air conditionner series * Updated apc.yaml @laf I modified the yaml file according to your comment. I forgot the index line in a few definitions... * Rollback hirschmann.inc.php to original file * Roolback to original hirschmann.inc.php file * Updated apc.yaml file to include data section * Update apc.yaml * Update apc.yaml * Updated apc.inc.php after @laf requests Modified $current calculation, including $multiplier in place of static value and added 'PowerNet-MIB' as an argument of the snmp_get function (detached from OID writing) * missing new line * reverted hirschmann updates * reverted hirschmann updates
This commit is contained in:
@@ -238,3 +238,69 @@ modules:
|
||||
index: 'airIRRP100UnitStatusHumidifierCurrent.{{ $index }}'
|
||||
descr: Humidifier
|
||||
divisor: 10
|
||||
fanspeed:
|
||||
data:
|
||||
-
|
||||
oid: airIRRP100UnitStatusFanSpeed
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.12.
|
||||
index: 'airIRRP100UnitStatusFanSpeed.{{ $index }}'
|
||||
descr: 'Fan Speed (%)'
|
||||
divisor: 10
|
||||
-
|
||||
oid: airIRRP500UnitStatusFanSpeed
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.12.
|
||||
index: 'airIRRP500UnitStatusFanSpeed.{{ $index }}'
|
||||
descr: 'Fan Speed (%)'
|
||||
divisor: 10
|
||||
frequency:
|
||||
data:
|
||||
-
|
||||
oid: airIRRP100UnitStatusCompressorDriveSpeed
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.35.
|
||||
index: 'airIRRP100UnitStatusCompressorDriveSpeed.{{ $index }}'
|
||||
descr: 'Drive Speed'
|
||||
divisor: 10
|
||||
-
|
||||
oid: airIRRP500UnitStatusCompressorDriveSpeed
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.35.
|
||||
index: 'airIRRP500UnitStatusCompressorDriveSpeed.{{ $index }}'
|
||||
descr: 'Drive Speed'
|
||||
divisor: 10
|
||||
power:
|
||||
data:
|
||||
-
|
||||
oid: airIRRP100UnitStatusCompressorDrivePower
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.35.
|
||||
index: 'airIRRP100UnitStatusCompressorDrivePower.{{ $index }}'
|
||||
descr: 'Drive Power'
|
||||
multiplier: 10
|
||||
-
|
||||
oid: airIRRP100UnitStatusCoolDemand
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.13.
|
||||
index: 'airIRRP100UnitStatusCoolDemand.{{ $index }}'
|
||||
descr: 'Cooling Demand'
|
||||
multiplier: 100
|
||||
-
|
||||
oid: airIRRP100UnitStatusCoolOutput
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.1.2.2.14.
|
||||
index: 'airIRRP100UnitStatusCoolOutput.{{ $index }}'
|
||||
descr: 'Cooling Output'
|
||||
multiplier: 100
|
||||
-
|
||||
oid: airIRRP500UnitStatusCompressorDrivePower
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.35.
|
||||
index: 'airIRRP500UnitStatusCompressorDrivePower.{{ $index }}'
|
||||
descr: 'Drive Power'
|
||||
multiplier: 10
|
||||
-
|
||||
oid: airIRRP500UnitStatusCoolDemand
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.13.
|
||||
index: 'airIRRP500UnitStatusCoolDemand.{{ $index }}'
|
||||
descr: 'Cooling Demand'
|
||||
multiplier: 100
|
||||
-
|
||||
oid: airIRRP500UnitStatusCoolOutput
|
||||
num_oid: .1.3.6.1.4.1.318.1.1.13.3.3.2.2.2.14.
|
||||
index: 'airIRRP500UnitStatusCoolOutput.{{ $index }}'
|
||||
descr: 'Cooling Output'
|
||||
multiplier: 100
|
@@ -15,3 +15,65 @@ if ($oids) {
|
||||
$high_limit = 3000;
|
||||
discover_sensor($valid['sensor'], 'runtime', $device, $oid, $index, $type, $descr, $divisor, '1', $low_limit, $low_limit_warn, $warn_limit, $high_limit, $current);
|
||||
}
|
||||
|
||||
// InRow IRRP100
|
||||
$oids = snmp_get($device, 'airIRRP100GroupSetpointsCoolMetric.0', '-OsqnU', 'PowerNet-MIB');
|
||||
if ($oids) {
|
||||
echo 'APC InRow IRRP100 ';
|
||||
// airIRRP100UnitRunHoursAirFilter
|
||||
$index = 0;
|
||||
$cur_oid = '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.3.1.';
|
||||
$current = snmp_get($device, 'airIRRP100UnitRunHoursAirFilter.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$service_interval = snmp_get($device, 'airIRRP100UnitServiceIntervalAirFilter.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$alarm_status= snmp_get($device, 'airIRRP100UnitServiceIntervalAirFilterAlarm.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$multiplier = 60;
|
||||
$current = ($current * $multiplier);
|
||||
if ($alarm_status == 'enable') {
|
||||
$service_interval = ($service_interval * 10080);
|
||||
} else {
|
||||
$service_interval = null;
|
||||
}
|
||||
$descr = 'Filter';
|
||||
$sensorType = 'apc';
|
||||
|
||||
discover_sensor($valid['sensor'], 'runtime', $device, $cur_oid.$index, 'airIRRP100UnitRunHoursAirFilter.'.$index, $sensorType, $descr, '1', $multiplier, null, null, null, $service_interval, $current);
|
||||
|
||||
// airIRRP100UnitRunHoursFan1
|
||||
$index = 0;
|
||||
$cur_oid = '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.3.4.';
|
||||
$current = snmp_get($device, 'airIRRP100UnitRunHoursFan1.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$service_interval = snmp_get($device, 'airIRRP100UnitServiceIntervalFans.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$multiplier = 60;
|
||||
$current = ($current * $multiplier);
|
||||
$service_interval = ($service_interval * 10080);
|
||||
$descr = 'Fan 1';
|
||||
$sensorType = 'apc';
|
||||
|
||||
discover_sensor($valid['sensor'], 'runtime', $device, $cur_oid.$index, 'airIRRP100UnitRunHoursFan1.'.$index, $sensorType, $descr, '1', $multiplier, null, null, null, $service_interval, $current);
|
||||
|
||||
// airIRRP100UnitRunHoursFan2
|
||||
$index = 0;
|
||||
$cur_oid = '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.3.6.';
|
||||
$current = snmp_get($device, 'airIRRP100UnitRunHoursFan2.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$service_interval = snmp_get($device, 'airIRRP100UnitServiceIntervalFans.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$multiplier = 60;
|
||||
$current = ($current * $multiplier);
|
||||
$service_interval = ($service_interval * 10080);
|
||||
$descr = 'Fan 2';
|
||||
$sensorType = 'apc';
|
||||
|
||||
discover_sensor($valid['sensor'], 'runtime', $device, $cur_oid.$index, 'airIRRP100UnitRunHoursFan2.'.$index, $sensorType, $descr, '1', $multiplier, null, null, null, $service_interval, $current);
|
||||
|
||||
// airIRRP100UnitRunHoursCompressor
|
||||
$index = 0;
|
||||
$cur_oid = '.1.3.6.1.4.1.318.1.1.13.3.3.1.2.3.8.';
|
||||
$current = snmp_get($device, 'airIRRP100UnitRunHoursCompressor.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$service_interval = snmp_get($device, 'airIRRP100UnitServiceIntervalCompressor.'.$index, '-Oqv', 'PowerNet-MIB');
|
||||
$multiplier = 60;
|
||||
$current = ($current * $multiplier);
|
||||
$service_interval = ($service_interval * 10080);
|
||||
$descr = 'Compressor';
|
||||
$sensorType = 'apc';
|
||||
|
||||
discover_sensor($valid['sensor'], 'runtime', $device, $cur_oid.$index, 'airIRRP100UnitRunHoursCompressor.'.$index, $sensorType, $descr, '1', $multiplier, null, null, null, $service_interval, $current);
|
||||
}
|
||||
|
Reference in New Issue
Block a user