Пример #1
0
    foreach ($oids as $index => $data) {
        $last_index = substr($index, strrpos($index, '.') + 1);
        if ($os == 'ricoh' || $os == 'nrg' || $os == 'lanier') {
            $toner_oid = ".1.3.6.1.4.1.367.3.2.1.2.24.1.1.5.{$last_index}";
            $descr_oid = ".1.3.6.1.4.1.367.3.2.1.2.24.1.1.3.{$last_index}";
            $capacity_oid = '';
            $descr = snmp_get($device, $descr_oid, '-Oqva');
            $raw_toner = snmp_get($device, $toner_oid, '-Oqv');
        } else {
            $toner_oid = ".1.3.6.1.2.1.43.11.1.1.9.{$index}";
            $capacity_oid = ".1.3.6.1.2.1.43.11.1.1.8.{$index}";
            $descr = $data['prtMarkerSuppliesDescription'];
            $raw_toner = $data['prtMarkerSuppliesLevel'];
        }
        $type = 'jetdirect';
        $capacity = get_toner_capacity($data['prtMarkerSuppliesMaxCapacity']);
        $current = get_toner_levels($device, $raw_toner, $capacity);
        discover_toner($valid_toner, $device, $toner_oid, $last_index, $type, $descr, $capacity_oid, $capacity, $current);
    }
}
// Delete removed toners
d_echo("\n Checking valid toner ... \n");
d_echo($valid_toner);
$sql = "SELECT * FROM toner WHERE device_id = '" . $device['device_id'] . "'";
foreach (dbFetchRows($sql) as $test_toner) {
    $toner_index = $test_toner['toner_index'];
    $toner_type = $test_toner['toner_type'];
    if (!$valid_toner[$toner_type][$toner_index]) {
        echo '-';
        dbDelete('toner', '`toner_id` = ?', array($test_toner['toner_id']));
    }
Пример #2
0
                if (is_numeric($role)) {
                    //ricoh using private oids to expose toner levels
                    if ($os == 'ricoh' || $os == 'nrg' || $os == 'lanier') {
                        $toner_oid = ".1.3.6.1.4.1.367.3.2.1.2.24.1.1.5.{$index}";
                        $descr_oid = ".1.3.6.1.4.1.367.3.2.1.2.24.1.1.3.{$index}";
                        $capacity_oid = '';
                    } else {
                        $toner_oid = ".1.3.6.1.2.1.43.11.1.1.9.1.{$index}";
                        $descr_oid = ".1.3.6.1.2.1.43.11.1.1.6.1.{$index}";
                        $capacity_oid = ".1.3.6.1.2.1.43.11.1.1.8.1.{$index}";
                    }
                    $descr = trim(str_replace("\n", '', preg_replace('/[^ \\w]+/', '', snmp_get($device, $descr_oid, '-Oqva'))));
                    if ($descr != '') {
                        $oid_toner = snmp_get($device, $toner_oid, '-Oqv');
                        $oid_capacity = snmp_get($device, $capacity_oid, '-Oqv');
                        $capacity = get_toner_capacity($device, $oid_capacity);
                        $current = get_toner_levels($device, $oid_toner, $oid_capacity);
                        $type = 'jetdirect';
                        discover_toner($valid_toner, $device, $toner_oid, $index, $type, $descr, $capacity_oid, $capacity, $current);
                    }
                }
            }
        }
    }
}
// Delete removed toners
d_echo("\n Checking ... \n");
d_echo($valid_toner);
$sql = "SELECT * FROM toner WHERE device_id = '" . $device['device_id'] . "'";
foreach (dbFetchRows($sql) as $test_toner) {
    $toner_index = $test_toner['toner_index'];