1) $descr .= " Phase $i"; $current = snmp_get($device, $current_oid, "-Oqv"); if (!$current) { $current_oid .= ".0"; $current = snmp_get($device, $current_oid, "-Oqv"); } $current /= 10; $type = "mge-ups"; $precision = 10; $index = $i; $warnlimit = NULL; $lowlimit = 0; $limit = NULL; $lowwarnlimit = NULL; echo discover_sensor($valid_sensor, 'current', $device, $current_oid, $index, $type, $descr, '10', '1', $lowlimit, $lowwarnlimit, $warnlimit, $limit, $current); } $oids = trim(snmp_walk($device, "1.3.6.1.4.1.705.1.6.1", "-OsqnU")); if ($debug) { echo($oids."\n"); } list($unused,$numPhase) = explode(' ',$oids); for($i = 1; $i <= $numPhase;$i++) { unset($current); $current_oid = ".1.3.6.1.4.1.705.1.6.2.1.6.$i"; $descr = "Input"; if ($numPhase > 1) $descr .= " Phase $i"; $current = snmp_get($device, $current_oid, "-Oqv"); if (!$current) { $current_oid .= ".0"; $current = snmp_get($device, $current_oid, "-Oqv"); } $current /= 10; $type = "mge-ups"; $precision = 10; $index = 100+$i; $warnlimit = NULL; $lowlimit = 0; $limit = NULL; $lowwarnlimit = NULL; echo discover_sensor($valid_sensor, 'current', $device, $current_oid, $index, $type, $descr, '10', '1', $lowlimit, $lowwarnlimit, $warnlimit, $limit, $current); } } ## Riello UPS if ($device['os'] == "netmanplus" || $device['os'] == 'deltaups') { echo("RFC1628 "); $oids = snmp_walk($device, "1.3.6.1.2.1.33.1.2.6", "-Osqn", "UPS-MIB"); if ($debug) { echo($oids."\n"); } $oids = trim($oids); foreach(explode("\n", $oids) as $data) { $data = trim($data); if ($data) { list($oid,$descr) = explode(" ", $data,2); $split_oid = explode('.',$oid); $current_id = $split_oid[count($split_oid)-1]; $current_oid = "1.3.6.1.2.1.33.1.2.6.$current_id"; $precision = 10; $current = snmp_get($device, $current_oid, "-O vq") / $precision; $descr = "Battery" . (count(explode("\n",$oids)) == 1 ? '' : ' ' . ($current_id+1)); $type = "rfc1628"; $index = 500+$current_id; echo discover_sensor($valid_sensor, 'current', $device, $current_oid, $index, $type, $descr, '10', '1', NULL, NULL, NULL, NULL, $current); } } $oids = trim(snmp_walk($device, "1.3.6.1.2.1.33.1.4.3.0", "-OsqnU")); if ($debug) { echo($oids."\n"); } list($unused,$numPhase) = explode(' ',$oids); for($i = 1; $i <= $numPhase;$i++) { $current_oid = ".1.3.6.1.2.1.33.1.4.4.1.3.$i"; $descr = "Output"; if ($numPhase > 1) $descr .= " Phase $i"; $current = snmp_get($device, $current_oid, "-Oqv"); $type = "rfc1628"; $precision = 1; $index = $i; echo discover_sensor($valid_sensor, 'current', $device, $current_oid, $index, $type, $descr, '1', '1', NULL, NULL, NULL, NULL, $current); } $oids = trim(snmp_walk($device, "1.3.6.1.2.1.33.1.3.2.0", "-OsqnU")); if ($debug) { echo($oids."\n"); } list($unused,$numPhase) = explode(' ',$oids); for($i = 1; $i <= $numPhase;$i++) { $current_oid = "1.3.6.1.2.1.33.1.3.3.1.4.$i"; $descr = "Input"; if ($numPhase > 1) $descr .= " Phase $i"; $current = snmp_get($device, $current_oid, "-Oqv"); $type = "rfc1628"; $precision = 1; $index = 100+$i; echo discover_sensor($valid_sensor, 'current', $device, $current_oid, $index, $type, $descr, '1', '1', NULL, NULL, NULL, NULL, $current); } $oids = trim(snmp_walk($device, "1.3.6.1.2.1.33.1.5.2.0", "-OsqnU")); if ($debug) { echo($oids."\n"); } list($unused,$numPhase) = explode(' ',$oids); for($i = 1; $i <= $numPhase;$i++) { $current_oid = "1.3.6.1.2.1.33.1.5.3.1.3.$i"; $descr = "Bypass"; if ($numPhase > 1) $descr .= " Phase $i"; $current = snmp_get($device, $current_oid, "-Oqv"); $type = "rfc1628"; $precision = 1; $index = 200+$i; echo discover_sensor($valid_sensor, 'current', $device, $current_oid, $index, $type, $descr, '1', '1', NULL, NULL, NULL, NULL, $current); } } if ($device['os'] == "gamatronicups") { for($i = 1; $i <= 3 ;$i++) { $current_oid = "GAMATRONIC-MIB::gamatronicLTD.5.4.1.1.3.$i"; $descr = "Input Phase $i"; $current = snmp_get($device, $current_oid, "-Oqv"); $type = "gamatronicups"; $precision = 1; $index = $i; $lowlimit = 0; $warnlimit = NULL; $limit = NULL; echo discover_sensor($valid_sensor, 'current', $device, $current_oid, $index, $type, $descr, '1', '1', $lowlimit, NULL, NULL, NULL, $current); } for($i = 1; $i <= 3 ;$i++) { $current_oid = "GAMATRONIC-MIB::gamatronicLTD.5.5.1.1.3.$i"; $descr = "Output Phase $i"; $current = snmp_get($device, $current_oid, "-Oqv"); $type = "gamatronicups"; $precision = 1; $index = 100+$i; $lowlimit = 0; $warnlimit = NULL; $limit = NULL; echo discover_sensor($valid_sensor, 'current', $device, $current_oid, $index, $type, $descr, '1', '1', $lowlimit, NULL, NULL, NULL, $current); } } if($debug) { print_r($valid['current']); } check_valid_sensors($device, 'current', $valid_sensor); echo("\n"); ?>