choriss писал(а):
ок. Т.е. вы имеете ввиду 12 запустить с i 1
Да
choriss писал(а):
Хорошо, а как забрать результаты оборванного кабеля?
Примерно так работало на php:
Код:
if (($ModelType != 'DES-3526' && $skipcablediaginitfor3526 == 'false') || $ModelType != 'DES-3026' || $ModelType != 'DGS-3100-24TG')
{
for ($pi = 1; $pi < 25; $pi++)
if (@snmpset($ip, $wcomm, ".1.3.6.1.4.1.171.12.58.1.1.1.12." . $pi, "i", "1", $writetimeout, $retries) == false) $noerror = false;
// Для 3200-28 делаем паузу в опросе, иначе часто получаем статус пары 'other'. Может исправят в новых прошивках
if ($ModelType == 'DES-3200-28') usleep($timeout);
}
//Диагностика кабеля
for ($pi = 1; $pi < 25; $pi++)
{
//без этой конструкции у меня не работал скрипт на 3026, с ней на 3028
if ($ModelType == 'DES-3026')
if (@snmpset($ip, $wcomm, ".1.3.6.1.4.1.171.12.58.1.1.1.12." . $pi, "i", "1", $writetimeout, $retries) == false) $noerror = false;
// Статус линка
$cableDiagLinkStatus[$pi - 1] = @snmpget($ip, $rcomm, ".1.3.6.1.4.1.171.12.58.1.1.1.3." . $pi, $timeout, $retries);
// Статус 1-й пары
$cableDiagPair1Status[$pi - 1] = @snmpget($ip, $rcomm, ".1.3.6.1.4.1.171.12.58.1.1.1.4." . $pi, $timeout, $retries);
// Статус 2-й пары
$cableDiagPair2Status[$pi - 1] = @snmpget($ip, $rcomm, ".1.3.6.1.4.1.171.12.58.1.1.1.5." . $pi, $timeout, $retries);
// Длина 1-й пары
$cableDiagPair1Length[$pi - 1] = @snmpget($ip, $rcomm, ".1.3.6.1.4.1.171.12.58.1.1.1.8." . $pi, $timeout, $retries);
// Длина 2-й пары
$cableDiagPair2Length[$pi - 1] = @snmpget($ip, $rcomm, ".1.3.6.1.4.1.171.12.58.1.1.1.9." . $pi, $timeout, $retries);
}