2009-09-07 11:07:59 +00:00
|
|
|
<?php
|
2007-04-08 18:08:50 +00:00
|
|
|
|
2011-03-15 11:59:47 +00:00
|
|
|
echo("Polling SNOM device...\n");
|
|
|
|
|
|
|
|
// Get SNOM specific version string from silly SNOM location. Silly SNOM!
|
|
|
|
|
|
|
|
## FIXME - This needs a good cleanup...
|
|
|
|
|
|
|
|
$cmd = "snmpget -O qv -" . $device['snmpver'] . " -c " . $device['community'] . " " . $device['hostname'].":".$device['port'] . " 1.3.6.1.2.1.7526.2.4";
|
2011-05-03 21:46:25 +00:00
|
|
|
$poll_device[sysDescr] = `$cmd`;
|
|
|
|
$poll_device[sysDescr] = str_replace("-", " ", $poll_device[sysDescr]);
|
|
|
|
$poll_device[sysDescr] = str_replace("\"", "", $poll_device[sysDescr]);
|
|
|
|
list($hardware, $features, $version) = explode(" ", $poll_device[sysDescr]);
|
2011-03-15 11:59:47 +00:00
|
|
|
|
|
|
|
// Get data for calls and network from SNOM specific SNMP OIDs.
|
|
|
|
|
|
|
|
$cmda = "snmpget -O qv -" . $device['snmpver'] . " -c " . $device['community'] . " " . $device['hostname'].":".$device['port'] . " 1.3.6.1.2.1.7526.2.1.1 1.3.6.1.2.1.7526.2.1.2 1.3.6.1.2.1.7526.2.2.1 1.3.6.1.2.1.7526.2.2.2";
|
|
|
|
$cmdb = "snmpget -O qv -" . $device['snmpver'] . " -c " . $device['community'] . " " . $device['hostname'].":".$device['port'] . " 1.3.6.1.2.1.7526.2.5 1.3.6.1.2.1.7526.2.6";
|
|
|
|
#echo($cmda);
|
|
|
|
$snmpdata = `$cmda`;
|
|
|
|
$snmpdatab = `$cmdb`;
|
|
|
|
|
|
|
|
list($rxbytes, $rxpkts, $txbytes, $txpkts) = explode("\n", $snmpdata);
|
|
|
|
list($calls, $registrations) = explode("\n", $snmpdatab);
|
|
|
|
$txbytes = 0 - $txbytes * 8;
|
|
|
|
$rxbytes = 0 - $rxbytes * 8;
|
|
|
|
echo("$rxbytes, $rxpkts, $txbytes, $txpkts, $calls, $registrations");
|
|
|
|
|
|
|
|
$rrdfile = $config['rrd_dir'] . "/" . $device['hostname'] . "/data.rrd";
|
|
|
|
if (!is_file($rrdfile))
|
|
|
|
{
|
|
|
|
rrdtool_create($rrdfile,"DS:INOCTETS:COUNTER:600:U:100000000000 \
|
|
|
|
DS:OUTOCTETS:COUNTER:600:U:10000000000 \
|
|
|
|
DS:INPKTS:COUNTER:600:U:10000000000 \
|
|
|
|
DS:OUTPKTS:COUNTER:600:U:10000000000 \
|
|
|
|
DS:CALLS:COUNTER:600:U:10000000000 \
|
|
|
|
DS:REGISTRATIONS:COUNTER:600:U:10000000000 \
|
|
|
|
RRA:AVERAGE:0.5:1:600 \
|
|
|
|
RRA:AVERAGE:0.5:6:700 \
|
|
|
|
RRA:AVERAGE:0.5:24:775 \
|
|
|
|
RRA:AVERAGE:0.5:288:797 \
|
|
|
|
RRA:MAX:0.5:1:600 \
|
|
|
|
RRA:MAX:0.5:6:700 \
|
|
|
|
RRA:MAX:0.5:24:775 \
|
|
|
|
RRA:MAX:0.5:288:797");
|
|
|
|
}
|
|
|
|
|
|
|
|
$rrdupdate = "N:$rxbytes:$txbytes:$rxpkts:$rxbytes:$calls:$registrations";
|
|
|
|
rrdtool_update("$rrdfile", $rrdupdate);
|
|
|
|
|
|
|
|
?>
|