$entry) { if ($entry['ostPoePortPseEnable'] == 'pseDisabled') { continue; } $options = ['entPhysicalIndex' => $index, 'entPhysicalClass' => 'port']; $port = get_port_by_ifIndex($device['device_id'], $index); // print_vars($port); if (is_array($port)) { $entry['ifDescr'] = $port['port_label']; $options['measured_class'] = 'port'; $options['measured_entity'] = $port['port_id']; $options['entPhysicalIndex_measured'] = $port['ifIndex']; } else { $entry['ifDescr'] = "Port $index"; } // Current Supplied $descr = $entry['ifDescr'] . ' PoE Current'; $scale = 0.001; $oid_name = 'ostPoePortPseCurrentSupplied'; $oid_num = '.1.3.6.1.4.1.7342.15.2.1.6.' . $index; $type = $mib . '-' . $oid_name; $value = $entry[$oid_name]; discover_sensor('current', $device, $oid_num, $index, $type, $descr, $scale, $value, $options); // Voltage Supplied $descr = $entry['ifDescr'] . ' PoE Voltage'; $scale = 1; $oid_name = 'ostPoePortPseVoltageSupplied'; $oid_num = '.1.3.6.1.4.1.7342.15.2.1.5.' . $index; $type = $mib . '-' . $oid_name; $value = $entry[$oid_name]; discover_sensor('voltage', $device, $oid_num, $index, $type, $descr, $scale, $value, $options); $descr = $entry['ifDescr'] . ' PoE Status'; $oid_name = 'ostPoePortPseStatus'; $oid_num = '.1.3.6.1.4.1.7342.15.2.1.7.' . $index; $type = 'ostPoePortPseStatus'; $value = $entry[$oid_name]; discover_status($device, $oid_num, $oid_name . '.' . $index, $type, $descr, $value, $options); } // EOF