diff --git a/includes/definitions.inc.php b/includes/definitions.inc.php index 9d1e960dc..07550b2e3 100644 --- a/includes/definitions.inc.php +++ b/includes/definitions.inc.php @@ -1436,6 +1436,14 @@ $config['os'][$os]['icon'] = 'generic'; $config['os'][$os]['over'][0]['graph'] = 'device_bits'; $config['os'][$os]['over'][0]['text'] = 'Traffic'; +// EATON PDU +$os = 'eatonpdu'; +$config['os'][$os]['text'] = 'Eaton PDU'; +$config['os'][$os]['type'] = 'power'; +$config['os'][$os]['icon'] = 'eaton'; +$config['os'][$os]['over'][0]['graph'] = 'device_current'; +$config['os'][$os]['over'][0]['text'] = 'Current'; + // Appliances $os = 'fortios'; $config['os'][$os]['text'] = 'FortiOS'; diff --git a/includes/discovery/os/eatonpdu.inc.php b/includes/discovery/os/eatonpdu.inc.php new file mode 100644 index 000000000..8445e1817 --- /dev/null +++ b/includes/discovery/os/eatonpdu.inc.php @@ -0,0 +1,17 @@ + + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. Please see LICENSE.txt at the top level of + * the source code distribution for details. + */ + +if (!$os) { + if (strstr($sysObjectId, '.1.3.6.1.4.1.534.6.6.7')) { + $os = 'eatonpdu'; + } +} diff --git a/includes/discovery/sensors/current/eatonpdu.inc.php b/includes/discovery/sensors/current/eatonpdu.inc.php new file mode 100644 index 000000000..f69ada216 --- /dev/null +++ b/includes/discovery/sensors/current/eatonpdu.inc.php @@ -0,0 +1,23 @@ + + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. Please see LICENSE.txt at the top level of + * the source code distribution for details. + */ + +if ($device['os'] == 'eatonpdu') { + $data = snmpwalk_cache_multi_oid($device, 'outletCurrent', array(), 'EATON-EPDU-MIB'); + $descr = snmpwalk_cache_multi_oid($device, 'outletName', array(), 'EATON-EPDU-MIB'); + if (is_array($data)) { + $cur_oid = '.1.3.6.1.4.1.534.6.6.7.6.4.1.3.'; + foreach ($data as $index => $entry) { + $i++; + discover_sensor($valid['sensor'], 'current', $device, $cur_oid.$index, $i, 'eatonpdu', $descr[$index]['outletName'], '1000', '1', null, null, null, null, $data[$index]['outletCurrent'], 'snmp', $index); + } + } +} diff --git a/includes/polling/os/eatonpdu.inc.php b/includes/polling/os/eatonpdu.inc.php new file mode 100644 index 000000000..c5343e743 --- /dev/null +++ b/includes/polling/os/eatonpdu.inc.php @@ -0,0 +1,15 @@ + + * This program is free software: you can redistribute it and/or modify it + * under the terms of the GNU General Public License as published by the + * Free Software Foundation, either version 3 of the License, or (at your + * option) any later version. Please see LICENSE.txt at the top level of + * the source code distribution for details. + */ + +$hardware = trim(snmp_get($device, 'partNumber.0', '-Ovq', 'EATON-EPDU-MIB'), '"'); +$version = trim(snmp_get($device, 'firmwareVersion.0', '-Ovq', 'EATON-EPDU-MIB'), '"'); +$serial = trim(snmp_get($device, 'serialNumber.0', '-Ovq', 'EATON-EPDU-MIB'), '"'); diff --git a/mibs/EATON-EPDU-MIB b/mibs/EATON-EPDU-MIB new file mode 100755 index 000000000..9cda4f47f --- /dev/null +++ b/mibs/EATON-EPDU-MIB @@ -0,0 +1,3013 @@ + +EATON-EPDU-MIB DEFINITIONS ::= BEGIN + +IMPORTS + OBJECT-TYPE, NOTIFICATION-TYPE, MODULE-IDENTITY, + Counter32, Unsigned32, Integer32 + FROM SNMPv2-SMI + NOTIFICATION-GROUP, OBJECT-GROUP, MODULE-COMPLIANCE + FROM SNMPv2-CONF + TEXTUAL-CONVENTION, DateAndTime, DisplayString + FROM SNMPv2-TC + pduAgent + FROM EATON-OIDS; + +eatonEpdu MODULE-IDENTITY + LAST-UPDATED "201312181200Z" + ORGANIZATION + "Eaton Corporation" + CONTACT-INFO + "www.eaton.com/epdu" + DESCRIPTION + "The MIB module for Eaton ePDUs (Enclosure Power Distribution Units)." + + REVISION "201409291200Z" + DESCRIPTION + "Added outletControlSwitchable and outletControlShutoffDelay object." + + REVISION "201312181200Z" + DESCRIPTION + "Added notifyStrappingStatus and strappingStatus object." + + REVISION "201309021200Z" + DESCRIPTION + "- Add values for commInterface : ftp (4), xml (5)" + + REVISION "201305291200Z" + DESCRIPTION + "- Edited values for outletType: removed nema51520(21); added nemaL715(29), rf203p277 (30)" + + REVISION "201302211200Z" + DESCRIPTION + "- Added unit objects : unitType. + - Added input objects : inputCurrentCrestFactor, inputCurrentPercentLoad, inputPowerFactor, inputVAR, inputPlugType. + - Added gang objects : groupCurrentCrestFactor, groupCurrentPercentLoad, groupPowerFactor, groupVAR. + - Added outlet objects : outletCurrentCrestFactor, outletCurrentPercentLoad, outletPowerFactor, outletVAR." + + REVISION "201111211200Z" + DESCRIPTION + "- Added notifyGroupBreakerStatus object. + - Renamed groupStatus object to groupBreakerStatus. This object had not yet + been implemented so there is no user impact. + - Updated descriptions for inputWhTimer, groupWhTimer, and outletWhTimer." + + REVISION "201110241200Z" + DESCRIPTION + "- Added notifyBootUp object. + - Added outletType object. + - Updated description for all lower and upper thresholds to indicate that + a value of -1 indicates that it is not supported by a particular ePDU model. + - Updated descriptions for inputVA, inputWatts, groupVA, groupWatts, outletVA, + outletWatts to indicate that a value of -1 indicates that it is not + supported by a particular ePDU model. + - Added a note to unit, group, and outlet level control command objects + indicating that some products (mainly with part numbers that begin with IPV + or IPC) do not support delayed outlet control commands and will reply with + an error if a command value is written that is > 0. + - Corrected description for inputType. + - Added a UnixTimeStamp Textual Convention and changed the SYNTAX of + inputWhTimer, groupWhTimer, and outletWhTimer to use it. + - Updated the contact info to reference the ePDU website." + + REVISION "201102071529Z" + DESCRIPTION + "Initial release." +::= { pduAgent 7 } + + +UnixTimeStamp ::= TEXTUAL-CONVENTION + STATUS current + DESCRIPTION + "Unix time stamp. Measured in seconds since January 1, 1970." + SYNTAX Counter32 + + +-- eatonEpdu { iso org(3) dod(6) internet(1) private(4) +-- enterprises(1) eaton(534) products(6) pduAgent(6) (7) } + +notifications OBJECT IDENTIFIER ::= { eatonEpdu 0 } +units OBJECT IDENTIFIER ::= { eatonEpdu 1 } +inputs OBJECT IDENTIFIER ::= { eatonEpdu 3 } +groups OBJECT IDENTIFIER ::= { eatonEpdu 5 } +outlets OBJECT IDENTIFIER ::= { eatonEpdu 6 } +environmental OBJECT IDENTIFIER ::= { eatonEpdu 7 } +conformance OBJECT IDENTIFIER ::= { eatonEpdu 25 } +objectGroups OBJECT IDENTIFIER ::= { conformance 5 } + +notifyUserLogin NOTIFICATION-TYPE + OBJECTS { userName, + commInterface } + STATUS current + DESCRIPTION + "Sent whenever a user logs in." + ::= { notifications 1 } + +notifyUserLogout NOTIFICATION-TYPE + OBJECTS { userName, + commInterface } + STATUS current + DESCRIPTION + "Sent whenever a user logs out." + ::= { notifications 2 } + +notifyFailedLogin NOTIFICATION-TYPE + OBJECTS { userName, + commInterface } + STATUS current + DESCRIPTION + "Sent when someone attempts to log in and fails. On some models, may be + sent after three failed login attempts." + ::= { notifications 3 } + +notifyBootUp NOTIFICATION-TYPE + OBJECTS { strappingIndex } + STATUS current + DESCRIPTION + "Sent whenever an ePDU finishes booting up (hard or soft reboot)." + ::= { notifications 4 } + +notifyInputVoltageThStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + inputIndex, + inputVoltageIndex, + inputVoltage, + inputVoltageThStatus } + STATUS current + DESCRIPTION + "Sent whenever an input voltage threshold status changes." + ::= { notifications 11 } + +notifyInputCurrentThStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + inputIndex, + inputCurrentIndex, + inputCurrent, + inputCurrentThStatus } + STATUS current + DESCRIPTION + "Sent whenever an input current threshold status changes." + ::= { notifications 12 } + +notifyInputFrequencyStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + inputIndex, + inputFrequency, + inputFrequencyStatus } + STATUS current + DESCRIPTION + "Sent whenever the input frequency status changes." + ::= { notifications 13 } + +notifyGroupVoltageThStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + groupIndex, + groupVoltage, + groupVoltageThStatus } + STATUS current + DESCRIPTION + "Sent whenever a group voltage threshold status changes." + ::= { notifications 21 } + +notifyGroupCurrentThStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + groupIndex, + groupCurrent, + groupCurrentThStatus } + STATUS current + DESCRIPTION + "Sent whenever a group current threshold status changes." + ::= { notifications 22 } + +notifyGroupBreakerStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + groupIndex, + groupBreakerStatus } + STATUS current + DESCRIPTION + "Sent whenever a group status changes to indicate whether the circuit + breaker is on or off." + ::= { notifications 23 } + +notifyOutletVoltageThStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + outletIndex, + outletVoltage, + outletVoltageThStatus } + STATUS current + DESCRIPTION + "Sent whenever an outlet voltage threshold status changes." + ::= { notifications 31 } + +notifyOutletCurrentThStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + outletIndex, + outletCurrent, + outletCurrentThStatus } + STATUS current + DESCRIPTION + "Sent whenever an outlet current threshold status changes." + ::= { notifications 32 } + +notifyOutletControlStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + outletIndex, + outletControlStatus } + STATUS current + DESCRIPTION + "Sent whenever an outlet state On / Off changes." + ::= { notifications 33 } + +notifyTemperatureThStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + temperatureIndex, + temperatureValue, + temperatureThStatus } + STATUS current + DESCRIPTION + "Sent whenever a temperature threshold status changes." + ::= { notifications 41 } + +notifyHumidityThStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + humidityIndex, + humidityValue, + humidityThStatus } + STATUS current + DESCRIPTION + "Sent whenever a humidity threshold status changes." + ::= { notifications 42 } + +notifyContactState NOTIFICATION-TYPE + OBJECTS { strappingIndex, + contactIndex, + contactState } + STATUS current + DESCRIPTION + "Sent whenever a contact sensor state changes." + ::= { notifications 43 } + +notifyProbeStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + temperatureIndex, + temperatureProbeStatus } + STATUS current + DESCRIPTION + "Sent whenever the environment probe status changes." + ::= { notifications 44 } + +notifyCommunicationStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + communicationStatus } + STATUS current + DESCRIPTION + "Sent whenever the PDU communication status changes." + ::= { notifications 51 } + +notifyInternalStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + internalStatus } + STATUS current + DESCRIPTION + "Sent whenever the PDU internal status changes." + ::= { notifications 52 } + +notifyTest NOTIFICATION-TYPE + STATUS current + DESCRIPTION + "Sent whenever the trap test feature is used by the communication card." + ::= { notifications 53 } + +notifyStrappingStatus NOTIFICATION-TYPE + OBJECTS { strappingIndex, + strappingStatus } + STATUS current + DESCRIPTION + "Sent whenever the strapping communication status changes." + ::= { notifications 54 } + +unitsPresent OBJECT-TYPE + SYNTAX DisplayString + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Each unit is identified by a Strapping Index. This object returns a comma-delimited list of the + Strapping Indexes of all units present in the strapping group. For example, if units 0, 1, 5, + and 7 are present, this value will be '0,1,5,7'. For units that do not support strapping, + a Strapping Index of '0' is assumed." + ::= { units 1 } + +unitTable OBJECT-TYPE + SYNTAX SEQUENCE OF UnitEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of units. In most cases this list will only contain one entry. + However, some units have a 'strapping' feature which allow units to be + daisy-chained together such that all of them can be accessed through + the SNMP interface of the master. If strapping is enabled, the + strapping indexes of the units that can be accessed will be listed in the + unitsPresent object." + ::= { units 2 } + +unitEntry OBJECT-TYPE + SYNTAX UnitEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a PDU." + INDEX { strappingIndex } + ::= { unitTable 1 } + +UnitEntry ::= SEQUENCE { + strappingIndex + Integer32, + productName + OCTET STRING, + partNumber + OCTET STRING, + serialNumber + OCTET STRING, + firmwareVersion + OCTET STRING, + unitName + OCTET STRING, + lcdControl + INTEGER, + clockValue + DateAndTime, + temperatureScale + INTEGER, + unitType + INTEGER, + inputCount + Integer32, + groupCount + Integer32, + outletCount + Integer32, + temperatureCount + Integer32, + humidityCount + Integer32, + contactCount + Integer32, + communicationStatus + INTEGER, + internalStatus + INTEGER, + strappingStatus + INTEGER, + userName + OCTET STRING, + commInterface + INTEGER +} + +strappingIndex OBJECT-TYPE + SYNTAX Integer32 (0..23) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "For units that support 'strapping' functionality, this will be a unique + value for each unit. If units do not support 'strapping', this will + always be '0'." + ::= { unitEntry 1 } + +productName OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(1..127)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Name of the product." + ::= { unitEntry 2 } + +partNumber OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Part number of the unit." + ::= { unitEntry 3 } + +serialNumber OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Serial number of the unit." + ::= { unitEntry 4 } + +firmwareVersion OBJECT-TYPE + SYNTAX OCTET STRING + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Firmware version." + ::= { unitEntry 5 } + +unitName OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(1..63)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Descriptive name for the unit." + ::= { unitEntry 6 } + +lcdControl OBJECT-TYPE + SYNTAX INTEGER { + notApplicable (0), + lcdScreenOff (1), + lcdKeyLock (2), + lcdScreenOffAndKeyLock (3) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Control the local LCD." + ::= { unitEntry 7 } + +clockValue OBJECT-TYPE + SYNTAX DateAndTime + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Clock value. This could be from either a real-time clock (in which case + it is likely writeable) or from a time server via NTP (probably read-only)." + ::= { unitEntry 8 } + +temperatureScale OBJECT-TYPE + SYNTAX INTEGER { + celsius (0), + fahrenheit (1) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Scale used to return temperature objects." + ::= { unitEntry 9 } + +unitType OBJECT-TYPE + SYNTAX INTEGER { + unknown (0), + switched (1), + advancedMonitored (2), + managed (3), + monitored (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Technical capabilities of the PDU. Functionality is as follows: + Monitored (MI) - input and usually section/group monitoring. + Advanced Monitored (AM) - input, section/group, and outlet monitoring. + Switched (SW) - input and section/group monitoring, outlet switching. + Managed (MA) - input, section/group, and outlet monitoring plug outlet switching." + ::= { unitEntry 10 } + +inputCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of inputs on this ePDU." + ::= { unitEntry 20 } + +groupCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of groups on this ePDU. Groups include breakers, outlet sections, + and user-defined groups." + ::= { unitEntry 21 } + +outletCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of outlets on this ePDU." + ::= { unitEntry 22 } + +temperatureCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Max number of temperature measurements on this ePDU." + ::= { unitEntry 23 } + +humidityCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Max number of humidity measurements on this ePDU." + ::= { unitEntry 24 } + +contactCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Max number of contact sensors on this ePDU." + ::= { unitEntry 25 } + +communicationStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + communicationLost (1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the internal communication with the PDU." + ::= { unitEntry 30 } + +internalStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + internalFailure (1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the internal failure inside the PDU." + ::= { unitEntry 31 } + +strappingStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + communicationLost (1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the external communication with a strapping unit." + ::= { unitEntry 32 } + +userName OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(0..31)) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Username used to log into the PDU." + ::= { unitEntry 40 } + +commInterface OBJECT-TYPE + SYNTAX INTEGER { + serial (0), + usb (1), + telnet (2), + web (3), + ftp (4), + xml (5) + } + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "Communications interface used to log into the PDU." + ::= { unitEntry 41 } + +unitControlTable OBJECT-TYPE + SYNTAX SEQUENCE OF UnitControlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of units that have controllable outlets." + ::= { units 3 } + +unitControlEntry OBJECT-TYPE + SYNTAX UnitControlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a PDU which has controllable outlets." + INDEX { strappingIndex } + ::= { unitControlTable 1 } + +UnitControlEntry ::= SEQUENCE { + unitControlOffCmd + Integer32, + unitControlOnCmd + Integer32 +} + +unitControlOffCmd OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Unit-level outlet control command. + + Once the command is issued, outlets will turn Off. + 0-n : Time in seconds until the outlet Sequence Off command is issued + -1 : Cancel a pending unit-level Off command + + When read, returns -1 if no command is pending, or the current downcount in seconds of a pending command. + + Certain ePDUs (mainly those with part numbers beginning with IPV or IPC) do not support delayed control + commands. These will respond with an error if a command value of > 0 is written to this object." + ::= { unitControlEntry 2 } + +unitControlOnCmd OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Unit-level outlet control command. + + Once the command is issued, outlets will turn On according to their outletControlSequenceDelay value. + 0-n : Time in seconds until the outlet Sequence On command is issued + -1 : Cancel a pending unit-level On command + + When read, returns -1 if no command is pending, or the current downcount in seconds of a pending command. + + Certain ePDUs (mainly those with part numbers beginning with IPV or IPC) do not support delayed control + commands. These will respond with an error if a command value of > 0 is written to this object." + ::= { unitControlEntry 3 } + +inputTable OBJECT-TYPE + SYNTAX SEQUENCE OF InputEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "List of inputs to the PDU." + ::= { inputs 1 } + +inputEntry OBJECT-TYPE + SYNTAX InputEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a particular input." + INDEX { strappingIndex, + inputIndex } + ::= { inputTable 1 } + +InputEntry ::= SEQUENCE { + inputIndex + Integer32, + inputType + INTEGER, + inputFrequency + Integer32, + inputFrequencyStatus + INTEGER, + inputVoltageCount + Integer32, + inputCurrentCount + Integer32, + inputPowerCount + Integer32, + inputPlugType + INTEGER +} + +inputIndex OBJECT-TYPE + SYNTAX Integer32 (1..2) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "A unique value for each input. Its value ranges from 1 to inputCount." + ::= { inputEntry 1 } + +inputType OBJECT-TYPE + SYNTAX INTEGER { + singlePhase (1), + splitPhase (2), + threePhaseDelta (3), + threePhaseWye (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Type of input - single phase, split phase, three phase delta, or three + phase wye." + ::= { inputEntry 2 } + +inputFrequency OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Units are 0.1 Hz; divide by ten to get Hz." + ::= { inputEntry 3 } + +inputFrequencyStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + outOfRange (1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured input frequency relative to the nominal frequency and the admitted tolerance." + ::= { inputEntry 4 } + +inputVoltageCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of input voltage measurements on this ePDU." + ::= { inputEntry 5 } + +inputCurrentCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of input current measurements on this ePDU." + ::= { inputEntry 6 } + +inputPowerCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of rows in the inputPowerTable." + ::= { inputEntry 7 } + +inputPlugType OBJECT-TYPE + SYNTAX INTEGER { + other1Phase (100), + other2Phase (200), + other3Phase (300), + iecC14Inlet (101), + iecC20Inlet (102), + iec316P6 (103), + iec332P6 (104), + iec360P6 (105), + iecC14Plug (106), + iecC20Plug (107), + nema515 (120), + nemaL515 (121), + nema520 (122), + nemaL520 (123), + nema615 (124), + nemaL615 (125), + nemaL530 (126), + nema620 (127), + nemaL620 (128), + nemaL630 (129), + cs8265 (130), + french (150), + schuko (151), + uk (152), + nemaL1420 (201), + nemaL1430 (202), + iec516P6 (301), + iec460P9 (302), + iec560P9 (303), + iec532P6 (304), + iec563P6 (306), + nemaL1520 (320), + nemaL2120 (321), + nemaL1530 (322), + nemaL2130 (323), + cs8365 (324), + nemaL2220 (325), + nemaL2230 (326), + bladeUps208V (350), + bladeUps400V (351) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Identifies which plug is on the input." + ::= { inputEntry 8 } + +inputVoltageTable OBJECT-TYPE + SYNTAX SEQUENCE OF InputVoltageEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of input voltage measurements. The number of entries + is given by inputVoltageCount." + ::= { inputs 2 } + +inputVoltageEntry OBJECT-TYPE + SYNTAX InputVoltageEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a particular input voltage measurement." + INDEX { strappingIndex, + inputIndex, + inputVoltageIndex } + ::= { inputVoltageTable 1 } + +InputVoltageEntry ::= SEQUENCE { + inputVoltageIndex + Integer32, + inputVoltageMeasType + INTEGER, + inputVoltage + Integer32, + inputVoltageThStatus + INTEGER, + inputVoltageThLowerWarning + Integer32, + inputVoltageThLowerCritical + Integer32, + inputVoltageThUpperWarning + Integer32, + inputVoltageThUpperCritical + Integer32 +} + +inputVoltageIndex OBJECT-TYPE + SYNTAX Integer32 (1..3) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "A unique value for each input voltage measurement. Its value ranges + from 1 to inputVoltageCount." + ::= { inputVoltageEntry 1 } + +inputVoltageMeasType OBJECT-TYPE + SYNTAX INTEGER { + singlePhase (1), + phase1toN (2), + phase2toN (3), + phase3toN (4), + phase1to2 (5), + phase2to3 (6), + phase3to1 (7) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value indicates what input voltage is being measured in this table row - single phase + voltage, phase 1 to neutral, phase 2 to neutral, phase 3 to neutral, phase 1 to phase 2, + phase 2 to phase 3, or phase 3 to phase 1." + ::= { inputVoltageEntry 2 } + +inputVoltage OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input voltage measurement value. Units are millivolts." + ::= { inputVoltageEntry 3 } + +inputVoltageThStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + lowWarning (1), + lowCritical (2), + highWarning (3), + highCritical (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured input voltage relative to the configured thresholds." + ::= { inputVoltageEntry 4 } + +inputVoltageThLowerWarning OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower warning threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { inputVoltageEntry 5 } + +inputVoltageThLowerCritical OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower critical threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { inputVoltageEntry 6 } + +inputVoltageThUpperWarning OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper warning threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { inputVoltageEntry 7 } + +inputVoltageThUpperCritical OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper critical threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { inputVoltageEntry 8 } + +inputCurrentTable OBJECT-TYPE + SYNTAX SEQUENCE OF InputCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of input current measurements. The number of entries + is given by inputCurrentCount." + ::= { inputs 3 } + +inputCurrentEntry OBJECT-TYPE + SYNTAX InputCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a particular input current measurement." + INDEX { strappingIndex, + inputIndex, + inputCurrentIndex } + ::= { inputCurrentTable 1 } + +InputCurrentEntry ::= SEQUENCE { + inputCurrentIndex + Integer32, + inputCurrentMeasType + INTEGER, + inputCurrentCapacity + Integer32, + inputCurrent + Integer32, + inputCurrentThStatus + INTEGER, + inputCurrentThLowerWarning + Integer32, + inputCurrentThLowerCritical + Integer32, + inputCurrentThUpperWarning + Integer32, + inputCurrentThUpperCritical + Integer32, + inputCurrentCrestFactor + Integer32, + inputCurrentPercentLoad + Integer32 +} + +inputCurrentIndex OBJECT-TYPE + SYNTAX Integer32 (1..4) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "A unique value for each input current measurement. Its value ranges + from 1 to inputCurrentCount." + ::= { inputCurrentEntry 1 } + +inputCurrentMeasType OBJECT-TYPE + SYNTAX INTEGER { + singlePhase (1), + neutral (2), + phase1 (3), + phase2 (4), + phase3 (5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Which input wire is being measured in this table row - single phase, neutral, phase 1, + phase 2, or phase 3." + ::= { inputCurrentEntry 2 } + +inputCurrentCapacity OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Rated current capacity of the input. A negative value indicates that + the hardware current capacity is unknown. Units are milliamps." + ::= { inputCurrentEntry 3 } + +inputCurrent OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input current measurement value. Units are milliamps." + ::= { inputCurrentEntry 4 } + +inputCurrentThStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + lowWarning (1), + lowCritical (2), + highWarning (3), + highCritical (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured input current relative to the configured thresholds." + ::= { inputCurrentEntry 5 } + +inputCurrentThLowerWarning OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower warning threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { inputCurrentEntry 6 } + +inputCurrentThLowerCritical OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower critical threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { inputCurrentEntry 7 } + +inputCurrentThUpperWarning OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper warning threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { inputCurrentEntry 8 } + +inputCurrentThUpperCritical OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper critical threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { inputCurrentEntry 9 } + +inputCurrentCrestFactor OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current crest factor. Units are in milli, for example a crest factor of + 1.414 will be returned as 1414. A negative value indicates + that this object is not available." + ::= { inputCurrentEntry 10 } + +inputCurrentPercentLoad OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current percent load, based on the rated current capacity. Units are + percentage, for example 80% will be returned as 80. A negative + value indicates that this object is not available." + ::= { inputCurrentEntry 11 } + +inputPowerTable OBJECT-TYPE + SYNTAX SEQUENCE OF InputPowerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of input power measurements. The number of entries + is given by inputPowerCount." + ::= { inputs 4 } + +inputPowerEntry OBJECT-TYPE + SYNTAX InputPowerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for an input power measurement." + INDEX { strappingIndex, + inputIndex, + inputPowerIndex } + ::= { inputPowerTable 1 } + +InputPowerEntry ::= SEQUENCE { + inputPowerIndex + Integer32, + inputPowerMeasType + INTEGER, + inputVA + Integer32, + inputWatts + Integer32, + inputWh + Unsigned32, + inputWhTimer + UnixTimeStamp, + inputPowerFactor + Integer32, + inputVAR + Integer32 +} + +inputPowerIndex OBJECT-TYPE + SYNTAX Integer32 (1..12) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A unique value for each input power measurement. Its value ranges + from 1 to inputPowerCount." + ::= { inputPowerEntry 1 } + +inputPowerMeasType OBJECT-TYPE + SYNTAX INTEGER { + unknown (0), + phase1 (1), + phase2 (2), + phase3 (3), + total (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value indicates what is being measured in this table row." + ::= { inputPowerEntry 2 } + +inputVA OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input VA value. Units are VA. A negative value indicates + that this object is not available." + ::= { inputPowerEntry 3 } + +inputWatts OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input Watts value. Units are Watts. A negative value indicates + that this object is not available." + ::= { inputPowerEntry 4 } + +inputWh OBJECT-TYPE + SYNTAX Unsigned32 (0..4294967295) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Units are Watt-hours. This object is writable so that it can be reset to 0. When it is + written to, the inputWhTimer will be reset updated as well." + ::= { inputPowerEntry 5 } + +inputWhTimer OBJECT-TYPE + SYNTAX UnixTimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Timestamp of when input Watt-hours (inputWh) was last reset." + ::= { inputPowerEntry 6 } + +inputPowerFactor OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input PF value. Units are in thousandths, for example a power factor + of 0.958 would be returned as 958, and 0.92 would be returned + as 920. A negative value indicates that this object is not + available." + ::= { inputPowerEntry 7 } + +inputVAR OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input VAR value. Units are VAR. A negative value indicates + that this object is not available." + ::= { inputPowerEntry 8 } + + + + + +inputTotalPowerTable OBJECT-TYPE + SYNTAX SEQUENCE OF InputTotalPowerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of total input power measurements." + ::= { inputs 5 } + +inputTotalPowerEntry OBJECT-TYPE + SYNTAX InputTotalPowerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a total input power measurement." + INDEX { strappingIndex, + inputIndex } + ::= { inputTotalPowerTable 1 } + +InputTotalPowerEntry ::= SEQUENCE { + inputTotalVA + Integer32, + inputTotalWatts + Integer32, + inputTotalWh + Unsigned32, + inputTotalWhTimer + UnixTimeStamp, + inputTotalPowerFactor + Integer32, + inputTotalVAR + Integer32 +} + +inputTotalVA OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input VA value. Units are VA. A negative value indicates + that this object is not available." + ::= { inputTotalPowerEntry 3 } + +inputTotalWatts OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input Watts value. Units are Watts. A negative value indicates + that this object is not available." + ::= { inputTotalPowerEntry 4 } + +inputTotalWh OBJECT-TYPE + SYNTAX Unsigned32 (0..4294967295) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Units are Watt-hours. This object is writable so that it can be reset to 0. When it is + written to, the inputWhTimer will be reset updated as well." + ::= { inputTotalPowerEntry 5 } + +inputTotalWhTimer OBJECT-TYPE + SYNTAX UnixTimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Timestamp of when input Watt-hours (inputWh) was last reset." + ::= { inputTotalPowerEntry 6 } + +inputTotalPowerFactor OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input PF value. Units are in thousandths, for example a power factor + of 0.958 would be returned as 958, and 0.92 would be returned + as 920. A negative value indicates that this object is not + available." + ::= { inputTotalPowerEntry 7 } + +inputTotalVAR OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An input VAR value. Units are VAR. A negative value indicates + that this object is not available." + ::= { inputTotalPowerEntry 8 } + + + + + +groupTable OBJECT-TYPE + SYNTAX SEQUENCE OF GroupEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of groups. The number of entries is given by groupCount." + ::= { groups 1 } + +groupEntry OBJECT-TYPE + SYNTAX GroupEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a particular group." + INDEX { strappingIndex, + groupIndex } + ::= { groupTable 1 } + +GroupEntry ::= SEQUENCE { + groupIndex + Integer32, + groupID + DisplayString, + groupName + OCTET STRING, + groupType + INTEGER, + groupBreakerStatus + INTEGER, + groupChildCount + Integer32 +} + +groupIndex OBJECT-TYPE + SYNTAX Integer32 (1..64) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "A unique value for each group. Its value ranges from 1 to groupCount." + ::= { groupEntry 1 } + +groupID OBJECT-TYPE + SYNTAX DisplayString (SIZE(2..4)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Alphanumeric designator for the group. This value may be written + on the face of the unit." + ::= { groupEntry 2 } + +groupName OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(1..31)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A descriptive name for the group." + ::= { groupEntry 3 } + +groupType OBJECT-TYPE + SYNTAX INTEGER { + unknown (0), + breaker1pole (1), + breaker2pole (2), + breaker3pole (3), + outletSection (4), + userDefined (5) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of the group." + ::= { groupEntry 4 } + +groupBreakerStatus OBJECT-TYPE + SYNTAX INTEGER { + notApplicable (0), + breakerOn (1), + breakerOff (2) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Only applicable to breaker-groups. Indicates whether a breaker is turned + off or on." + ::= { groupEntry 5 } + +groupChildCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of children for this group." + ::= { groupEntry 6 } + +groupChildTable OBJECT-TYPE + SYNTAX SEQUENCE OF GroupChildEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of children for this group. For example, this table will link + to all of the outlets that are contained in a particular group." + ::= { groups 2 } + +groupChildEntry OBJECT-TYPE + SYNTAX GroupChildEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a particular child." + INDEX { strappingIndex, + groupIndex, + groupChildIndex } + ::= { groupChildTable 1 } + +GroupChildEntry ::= SEQUENCE { + groupChildIndex + Integer32, + groupChildType + INTEGER, + groupChildOID + OBJECT IDENTIFIER +} + +groupChildIndex OBJECT-TYPE + SYNTAX Integer32 (1..32) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A unique value for each child. Its value ranges from 1 to groupChildCount." + ::= { groupChildEntry 1 } + +groupChildType OBJECT-TYPE + SYNTAX INTEGER { + unknown (0), + section (2), + custom (3), + outlet (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of the child." + ::= { groupChildEntry 2 } + +groupChildOID OBJECT-TYPE + SYNTAX OBJECT IDENTIFIER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Object ID of a child object." + ::= { groupChildEntry 3 } + +groupVoltageTable OBJECT-TYPE + SYNTAX SEQUENCE OF GroupVoltageEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of group voltage measurements. There can be only one voltage + measurement for each group." + ::= { groups 3 } + +groupVoltageEntry OBJECT-TYPE + SYNTAX GroupVoltageEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a group voltage measurement." + INDEX { strappingIndex, + groupIndex } + ::= { groupVoltageTable 1 } + +GroupVoltageEntry ::= SEQUENCE { + groupVoltageMeasType + INTEGER, + groupVoltage + Integer32, + groupVoltageThStatus + INTEGER, + groupVoltageThLowerWarning + Integer32, + groupVoltageThLowerCritical + Integer32, + groupVoltageThUpperWarning + Integer32, + groupVoltageThUpperCritical + Integer32 +} + +groupVoltageMeasType OBJECT-TYPE + SYNTAX INTEGER { + unknown (0), + singlePhase (1), + phase1toN (2), + phase2toN (3), + phase3toN (4), + phase1to2 (5), + phase2to3 (6), + phase3to1 (7) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Value indicates what voltage is being measured in this table row." + ::= { groupVoltageEntry 2 } + +groupVoltage OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Units are millivolts." + ::= { groupVoltageEntry 3 } + +groupVoltageThStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + lowWarning (1), + lowCritical (2), + highWarning (3), + highCritical (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured group voltage relative to the configured thresholds." + ::= { groupVoltageEntry 4 } + +groupVoltageThLowerWarning OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower warning threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { groupVoltageEntry 5 } + +groupVoltageThLowerCritical OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower critical threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { groupVoltageEntry 6 } + +groupVoltageThUpperWarning OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper warning threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { groupVoltageEntry 7 } + +groupVoltageThUpperCritical OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper critical threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { groupVoltageEntry 8 } + +groupCurrentTable OBJECT-TYPE + SYNTAX SEQUENCE OF GroupCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of group current measurements. There can be only one current + measurement for each group." + ::= { groups 4 } + +groupCurrentEntry OBJECT-TYPE + SYNTAX GroupCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a group current measurement." + INDEX { strappingIndex, + groupIndex } + ::= { groupCurrentTable 1 } + +GroupCurrentEntry ::= SEQUENCE { + groupCurrentCapacity + Integer32, + groupCurrent + Integer32, + groupCurrentThStatus + INTEGER, + groupCurrentThLowerWarning + Integer32, + groupCurrentThLowerCritical + Integer32, + groupCurrentThUpperWarning + Integer32, + groupCurrentThUpperCritical + Integer32, + groupCurrentCrestFactor + Integer32, + groupCurrentPercentLoad + Integer32 +} + +groupCurrentCapacity OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Rated current capacity of the group. Units are milliamps. A negative + value indicates that the hardware current capacity is unknown (it + will always be unknown for custom groups)." + ::= { groupCurrentEntry 2 } + +groupCurrent OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A group current measurement value. Units are milliamps." + ::= { groupCurrentEntry 3 } + +groupCurrentThStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + lowWarning (1), + lowCritical (2), + highWarning (3), + highCritical (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured group current relative to the configured thresholds." + ::= { groupCurrentEntry 4 } + +groupCurrentThLowerWarning OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower warning threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { groupCurrentEntry 5 } + +groupCurrentThLowerCritical OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower critical threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { groupCurrentEntry 6 } + +groupCurrentThUpperWarning OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper warning threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { groupCurrentEntry 7 } + +groupCurrentThUpperCritical OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper critical threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { groupCurrentEntry 8 } + +groupCurrentCrestFactor OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current crest factor. Units are in milli, for example a crest factor of + 1.414 will be returned as 1414. A negative value indicates + that this object is not available." + ::= { groupCurrentEntry 9 } + +groupCurrentPercentLoad OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current percent load, based on the rated current capacity. Units are + percentage, for example 80% will be returned as 80. A negative + value indicates that this object is not available." + ::= { groupCurrentEntry 10 } + +groupPowerTable OBJECT-TYPE + SYNTAX SEQUENCE OF GroupPowerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of group power measurements. There can be only one power + measurement for each group." + ::= { groups 5 } + +groupPowerEntry OBJECT-TYPE + SYNTAX GroupPowerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a group power measurement." + INDEX { strappingIndex, + groupIndex } + ::= { groupPowerTable 1 } + +GroupPowerEntry ::= SEQUENCE { + groupVA + Integer32, + groupWatts + Integer32, + groupWh + Unsigned32, + groupWhTimer + UnixTimeStamp, + groupPowerFactor + Integer32, + groupVAR + Integer32 +} + +groupVA OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A group VA value. Units are VA. A negative value indicates + that this object is not available." + ::= { groupPowerEntry 2 } + +groupWatts OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A group Watts value. Units are Watts. A negative value indicates + that this object is not available." + ::= { groupPowerEntry 3 } + +groupWh OBJECT-TYPE + SYNTAX Unsigned32 (0..4294967295) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Units are Watt-hours. This object is writable so that it can be reset to 0. When it is + written to, the inputWhTotalTimer will be reset to 0 as well." + ::= { groupPowerEntry 4 } + +groupWhTimer OBJECT-TYPE + SYNTAX UnixTimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Timestamp of when group Watt-hours (groupWh) was last reset." + ::= { groupPowerEntry 5 } + +groupPowerFactor OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A group PF value. Units are in thousandths, for example a power factor + of 0.958 would be returned as 958, and 0.92 would be returned + as 920. A negative value indicates that this object is not available." + ::= { groupPowerEntry 6 } + +groupVAR OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "A group VAR value. Units are VAR. A negative value indicates + that this object is not available." + ::= { groupPowerEntry 7 } + +groupControlTable OBJECT-TYPE + SYNTAX SEQUENCE OF GroupControlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of controllable groups." + ::= { groups 6 } + +groupControlEntry OBJECT-TYPE + SYNTAX GroupControlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a controllable group." + INDEX { strappingIndex, + groupIndex } + ::= { groupControlTable 1 } + +GroupControlEntry ::= SEQUENCE { + groupControlStatus + INTEGER, + groupControlOffCmd + Integer32, + groupControl0nCmd + Integer32, + groupControlRebootCmd + Integer32 +} + +groupControlStatus OBJECT-TYPE + SYNTAX INTEGER { + off (0), + on (1), + rebooting (2), + mixed (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current state of a controlled group. A value of 'mixed' means that + that the outlets within the group have differing states." + ::= { groupControlEntry 2 } + +groupControlOffCmd OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Group-level outlet control command. + + Once the command is issued, the outlets in the group will turn Off immediately. + 0-n : Time in seconds until the group command is issued + -1 : Cancel a pending group-level Off command + + When read, returns -1 if no command is pending, or the current downcount in seconds of a pending command. + + Certain ePDUs (mainly those with part numbers beginning with IPV or IPC) do not support delayed control + commands. These will respond with an error if a command value of > 0 is written to this object." + ::= { groupControlEntry 3 } + +groupControl0nCmd OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Group-level outlet control command. + + Once the command is issued, the outlets in the group will turn On immediately. + 0-n : Time in seconds until the group command is issued + -1 : Cancel a pending group-level On command + + When read, returns -1 if no command is pending, or the current downcount in seconds of a pending command. + + Certain ePDUs (mainly those with part numbers beginning with IPV or IPC) do not support delayed control + commands. These will respond with an error if a command value of > 0 is written to this object." + ::= { groupControlEntry 4 } + +groupControlRebootCmd OBJECT-TYPE + SYNTAX Integer32 (-1..0) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Group-level outlet control command. + + For outlets that are On prior to the Reboot command, they will switch Off immediately when the command is + issued, remain Off for outletControlRebootOffTime seconds, and then turn back On. + For outlets that are Off prior to the Reboot command, they will turn On after a delay of outletControlRebootOffTime + seconds from when the command is issued. + 0-n : Time in seconds until the Reboot command is issued + -1 : Cancel a pending group-level Reboot command + + When read, returns -1 if no command is pending, or the current downcount in seconds of a pending command. + + Certain ePDUs (mainly those with part numbers beginning with IPV or IPC) do not support delayed control + commands. These will respond with an error if a command value of > 0 is written to this object." + ::= { groupControlEntry 5 } + +outletTable OBJECT-TYPE + SYNTAX SEQUENCE OF OutletEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of outlets. The number of entries is given by outletCount." + ::= { outlets 1 } + +outletEntry OBJECT-TYPE + SYNTAX OutletEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a particular outlet." + INDEX { strappingIndex, + outletIndex } + ::= { outletTable 1 } + +OutletEntry ::= SEQUENCE { + outletIndex + Integer32, + outletID + DisplayString, + outletName + OCTET STRING, + outletParentCount + Integer32, + outletType + INTEGER +} + +outletIndex OBJECT-TYPE + SYNTAX Integer32 (1..64) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "A unique value for each outlet. its value ranges from 1 to outletCount." + ::= { outletEntry 1 } + +outletID OBJECT-TYPE + SYNTAX DisplayString (SIZE(2..4)) + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Alphanumeric designator for the outlet." + ::= { outletEntry 2 } + +outletName OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(1..31)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A descriptive name for the outlet." + ::= { outletEntry 3 } + +outletParentCount OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Number of parents for this outlet." + ::= { outletEntry 4 } + +outletType OBJECT-TYPE + SYNTAX INTEGER { + unknown (0), + iecC13 (1), + iecC19 (2), + uk (10), + french (11), + schuko (12), + nema515 (20), + nema51520 (21), + nema520 (22), + nemaL520 (23), + nemaL530 (24), + nema615 (25), + nema620 (26), + nemaL620 (27), + nemaL630 (28), + nemaL715 (29), + rf203p277 (30) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The physical type of outlet." + ::= { outletEntry 5 } + +outletParentTable OBJECT-TYPE + SYNTAX SEQUENCE OF OutletParentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of parents for this outlet. For example, this table will link + to all of the groups that have this outlet as a child." + ::= { outlets 2 } + +outletParentEntry OBJECT-TYPE + SYNTAX OutletParentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a particular parent." + INDEX { strappingIndex, + outletIndex, + outletParentIndex } + ::= { outletParentTable 1 } + +OutletParentEntry ::= SEQUENCE { + outletParentIndex + Integer32, + outletParentType + INTEGER, + outletParentOID + OBJECT IDENTIFIER +} + +outletParentIndex OBJECT-TYPE + SYNTAX Integer32 (1..32) + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A unique value for each parent. Its value ranges from 1 to outletParentCount." + ::= { outletParentEntry 1 } + +outletParentType OBJECT-TYPE + SYNTAX INTEGER { + unknown (0), + breaker (1), + section (2), + custom (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The type of the parent." + ::= { outletParentEntry 2 } + +outletParentOID OBJECT-TYPE + SYNTAX OBJECT IDENTIFIER + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Object ID of a parent object." + ::= { outletParentEntry 3 } + +outletVoltageTable OBJECT-TYPE + SYNTAX SEQUENCE OF OutletVoltageEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of outlet voltage measurements." + ::= { outlets 3 } + +outletVoltageEntry OBJECT-TYPE + SYNTAX OutletVoltageEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for an outlet voltage measurement." + INDEX { strappingIndex, + outletIndex } + ::= { outletVoltageTable 1 } + +OutletVoltageEntry ::= SEQUENCE { + outletVoltage + Integer32, + outletVoltageThStatus + INTEGER, + outletVoltageThLowerWarning + Integer32, + outletVoltageThLowerCritical + Integer32, + outletVoltageThUpperWarning + Integer32, + outletVoltageThUpperCritical + Integer32 +} + +outletVoltage OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Units are millivolts." + ::= { outletVoltageEntry 2 } + +outletVoltageThStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + lowWarning (1), + lowCritical (2), + highWarning (3), + highCritical (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured outlet voltage relative to the configured thresholds." + ::= { outletVoltageEntry 3 } + +outletVoltageThLowerWarning OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower warning threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { outletVoltageEntry 4 } + +outletVoltageThLowerCritical OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower critical threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { outletVoltageEntry 5 } + +outletVoltageThUpperWarning OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper warning threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { outletVoltageEntry 6 } + +outletVoltageThUpperCritical OBJECT-TYPE + SYNTAX Integer32 (-1..500000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper critical threshold. Units are millivolts. A negative value indicates + that this object is not available." + ::= { outletVoltageEntry 7 } + +outletCurrentTable OBJECT-TYPE + SYNTAX SEQUENCE OF OutletCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of outlet current measurements." + ::= { outlets 4 } + +outletCurrentEntry OBJECT-TYPE + SYNTAX OutletCurrentEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for an outlet current measurement." + INDEX { strappingIndex, + outletIndex } + ::= { outletCurrentTable 1 } + +OutletCurrentEntry ::= SEQUENCE { + outletCurrentCapacity + Integer32, + outletCurrent + Integer32, + outletCurrentThStatus + INTEGER, + outletCurrentThLowerWarning + Integer32, + outletCurrentThLowerCritical + Integer32, + outletCurrentThUpperWarning + Integer32, + outletCurrentThUpperCritical + Integer32, + outletCurrentCrestFactor + Integer32, + outletCurrentPercentLoad + Integer32 +} + +outletCurrentCapacity OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Rated current capacity of the outlet. Units are milliamps. A negative + value indicates that the hardware current capacity is unknown." + ::= { outletCurrentEntry 2 } + +outletCurrent OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An outlet current measurement value. Units are milliamps." + ::= { outletCurrentEntry 3 } + +outletCurrentThStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + lowWarning (1), + lowCritical (2), + highWarning (3), + highCritical (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured outlet current relative to the configured thresholds." + ::= { outletCurrentEntry 4 } + +outletCurrentThLowerWarning OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower warning threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { outletCurrentEntry 5 } + +outletCurrentThLowerCritical OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower critical threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { outletCurrentEntry 6 } + +outletCurrentThUpperWarning OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper warning threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { outletCurrentEntry 7 } + +outletCurrentThUpperCritical OBJECT-TYPE + SYNTAX Integer32 (-1..100000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper critical threshold. Units are milliamps. A negative value indicates + that this object is not available." + ::= { outletCurrentEntry 8 } + +outletCurrentCrestFactor OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current crest factor. Units are in milli, for example a crest factor of + 1.414 will be returned as 1414. A negative value indicates + that this object is not available." + ::= { outletCurrentEntry 9 } + +outletCurrentPercentLoad OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current percent load, based on the rated current capacity. Units are + percentage, for example 80% will be returned as 80. A negative + value indicates that this object is not available." + ::= { outletCurrentEntry 10 } + +outletPowerTable OBJECT-TYPE + SYNTAX SEQUENCE OF OutletPowerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of outlet power measurements." + ::= { outlets 5 } + +outletPowerEntry OBJECT-TYPE + SYNTAX OutletPowerEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for an outlet power measurement." + INDEX { strappingIndex, + outletIndex } + ::= { outletPowerTable 1 } + +OutletPowerEntry ::= SEQUENCE { + outletVA + Integer32, + outletWatts + Integer32, + outletWh + Unsigned32, + outletWhTimer + UnixTimeStamp, + outletPowerFactor + Integer32, + outletVAR + Integer32 +} + +outletVA OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An outlet VA value. Units are VA. A negative value indicates + that this object is not available." + ::= { outletPowerEntry 2 } + +outletWatts OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An outlet Watts value. Units are Watts. A negative value indicates + that this object is not available." + ::= { outletPowerEntry 3 } + +outletWh OBJECT-TYPE + SYNTAX Unsigned32 (0..4294967295) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Units are Watt-hours. This object is writable so that it can be reset to 0. When it is + written to, the inputWhTotalTimer will be reset to 0 as well." + ::= { outletPowerEntry 4 } + +outletWhTimer OBJECT-TYPE + SYNTAX UnixTimeStamp + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Timestamp of when outlet Watt-hours (outletWh) was last reset." + ::= { outletPowerEntry 5 } + +outletPowerFactor OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An outlet PF value. Units are in thousandths, for example a power factor + of 0.958 would be returned as 958, and 0.92 would be returned + as 920. A negative value indicates that this object is not available." + ::= { outletPowerEntry 6 } + +outletVAR OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "An outlet VAR value. Units are VAR. A negative value indicates + that this object is not available." + ::= { outletPowerEntry 7 } + +outletControlTable OBJECT-TYPE + SYNTAX SEQUENCE OF OutletControlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of controllable outlets." + ::= { outlets 6 } + +outletControlEntry OBJECT-TYPE + SYNTAX OutletControlEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a controllable outlet." + INDEX { strappingIndex, + outletIndex } + ::= { outletControlTable 1 } + +OutletControlEntry ::= SEQUENCE { + outletControlStatus + INTEGER, + outletControlOffCmd + Integer32, + outletControlOnCmd + Integer32, + outletControlRebootCmd + Integer32, + outletControlPowerOnState + INTEGER, + outletControlSequenceDelay + Integer32, + outletControlRebootOffTime + Integer32, + outletControlSwitchable + INTEGER, + outletControlShutoffDelay + Integer32 +} + +outletControlStatus OBJECT-TYPE + SYNTAX INTEGER { + off (0), + on (1), + pendingOff (2), + pendingOn (3) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Current state of a controlled outlet." + ::= { outletControlEntry 2 } + +outletControlOffCmd OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Outlet control command. + + Once the command is issued, the outlet will turn Off immediately. + 0-n : Time in seconds until the outlet command is issued + -1 : Cancel a pending outlet Off command + + When read, returns -1 if no command is pending, or the current downcount in seconds of a pending command. + + Certain ePDUs (mainly those with part numbers beginning with IPV or IPC) do not support delayed control + commands. These will respond with an error if a command value of > 0 is written to this object." + ::= { outletControlEntry 3 } + +outletControlOnCmd OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Outlet control command. + + Once the command is issued, the outlet will turn On immediately. + 0-n : Time in seconds until the outlet command is issued + -1 : Cancel a pending outlet On command + + When read, returns -1 if no command is pending, or the current downcount in seconds of a pending command. + + Certain ePDUs (mainly those with part numbers beginning with IPV or IPC) do not support delayed control + commands. These will respond with an error if a command value of > 0 is written to this object." + ::= { outletControlEntry 4 } + +outletControlRebootCmd OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Outlet control command. + + For outlets that are On prior to this Reboot command, they will switch Off immediately when the command is + issued, remain Off for outletControlRebootOffTime seconds, and then turn back On. + For outlets that are Off prior to the Reboot command, they will turn On after a delay of outletControlRebootOffTime + seconds from when the command is issued. + 0-n : Time in seconds until the Reboot command is issued + -1 : Cancel a pending outlet Reboot command + + When read, returns -1 if no command is pending, or the current downcount in seconds of a pending command. + + Certain ePDUs (mainly those with part numbers beginning with IPV or IPC) do not support delayed control + commands. These will respond with an error if a command value of > 0 is written to this object." + ::= { outletControlEntry 5 } + +outletControlPowerOnState OBJECT-TYPE + SYNTAX INTEGER { + off (0), + on (1), + lastState (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Determines the outlet state when power is applied to the unit. + 0 : not restart at device startup + 1 : should sequence back ON in line with outletControlSequenceTime + 2 : should take the state the outlet had when power was lost. + If the state was ON, should sequence back ON in line with outletControlSequenceTime." + ::= { outletControlEntry 6 } + +outletControlSequenceDelay OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time delay in seconds from when a Global Sequence On command is issued to + when the command is executed on this outlet. This delay is also used as a power-on + delay. Set to -1 to exclude this outlet from Global Sequence On + commands." + ::= { outletControlEntry 7 } + +outletControlRebootOffTime OBJECT-TYPE + SYNTAX Integer32 (1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time delay in seconds that the outlet should remain in the Off state when executing a Reboot command." + ::= { outletControlEntry 8 } + +outletControlSwitchable OBJECT-TYPE + SYNTAX INTEGER { + switchable (1), + notSwitchable (2) + } + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Determines the outlet capability to be controlled On/Off from the communication channels. + 1 : control On/Off enabled + 2 : control On/Off disabled." + ::= { outletControlEntry 9 } + +outletControlShutoffDelay OBJECT-TYPE + SYNTAX Integer32 (-1..99999) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Time delay in seconds that could be taken in account before shutting of the outlet. + An application which need to shutoff properly an outlet will read this parameter first + then write it to the command outletControlOffCmd." + ::= { outletControlEntry 10 } + +temperatureTable OBJECT-TYPE + SYNTAX SEQUENCE OF TemperatureEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of temperature probe measurements. The number of entries is + given by temperatureCount." + ::= { environmental 1 } + +temperatureEntry OBJECT-TYPE + SYNTAX TemperatureEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a temperature measurement." + INDEX { strappingIndex, + temperatureIndex } + ::= { temperatureTable 1 } + +TemperatureEntry ::= SEQUENCE { + temperatureIndex + Integer32, + temperatureName + OCTET STRING, + temperatureProbeStatus + INTEGER, + temperatureValue + Integer32, + temperatureThStatus + INTEGER, + temperatureThLowerWarning + Integer32, + temperatureThLowerCritical + Integer32, + temperatureThUpperWarning + Integer32, + temperatureThUpperCritical + Integer32 +} + +temperatureIndex OBJECT-TYPE + SYNTAX Integer32 (1..2) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "A unique value for each temperature probe measurement. Its value + ranges from 1 to temperatureCount." + ::= { temperatureEntry 1 } + +temperatureName OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(1..31)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A descriptive name for the temperature probe." + ::= { temperatureEntry 2 } + +temperatureProbeStatus OBJECT-TYPE + SYNTAX INTEGER { + bad (-1), + disconnected (0), + connected (1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether a probe is connected or not." + ::= { temperatureEntry 3 } + +temperatureValue OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Units are in tenths of a degree according to the scale specified by + temperatureScale (either Fahrenheit or Celsius). Divide by ten to get + degrees." + ::= { temperatureEntry 4 } + +temperatureThStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + lowWarning (1), + lowCritical (2), + highWarning (3), + highCritical (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured temperature relative to the configured + thresholds." + ::= { temperatureEntry 5 } + +temperatureThLowerWarning OBJECT-TYPE + SYNTAX Integer32 (-1..150000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower warning threshold. Units are tenths of a degree. A negative value + indicates that this object is not available." + ::= { temperatureEntry 6 } + +temperatureThLowerCritical OBJECT-TYPE + SYNTAX Integer32 (-1..150000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower critical threshold. Units are tenths of a degree. A negative value + indicates that this object is not available." + ::= { temperatureEntry 7 } + +temperatureThUpperWarning OBJECT-TYPE + SYNTAX Integer32 (-1..150000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper warning threshold. Units are tenths of a degree. A negative value + indicates that this object is not available." + ::= { temperatureEntry 8 } + +temperatureThUpperCritical OBJECT-TYPE + SYNTAX Integer32 (-1..150000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper critical threshold. Units are tenths of a degree. A negative value + indicates that this object is not available." + ::= { temperatureEntry 9 } + +humidityTable OBJECT-TYPE + SYNTAX SEQUENCE OF HumidityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of humidity probe measurements. The number of entries is + given by humidityCount." + ::= { environmental 2 } + +humidityEntry OBJECT-TYPE + SYNTAX HumidityEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a humidity measurement." + INDEX { strappingIndex, + humidityIndex } + ::= { humidityTable 1 } + +HumidityEntry ::= SEQUENCE { + humidityIndex + Integer32, + humidityName + OCTET STRING, + humidityProbeStatus + INTEGER, + humidityValue + Integer32, + humidityThStatus + INTEGER, + humidityThLowerWarning + Integer32, + humidityThLowerCritical + Integer32, + humidityThUpperWarning + Integer32, + humidityThUpperCritical + Integer32 +} + +humidityIndex OBJECT-TYPE + SYNTAX Integer32 (1..2) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "A unique value for each humidity probe measurement. Its value + ranges from 1 to humidityCount." + ::= { humidityEntry 1 } + +humidityName OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(1..31)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A descriptive name for the humidity probe." + ::= { humidityEntry 2 } + +humidityProbeStatus OBJECT-TYPE + SYNTAX INTEGER { + bad (-1), + disconnected (0), + connected (1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether a probe is connected or not." + ::= { humidityEntry 3 } + +humidityValue OBJECT-TYPE + SYNTAX Integer32 + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Units are tenths of a percent relative humidity. Divide the value by 10 to get %RH." + ::= { humidityEntry 4 } + +humidityThStatus OBJECT-TYPE + SYNTAX INTEGER { + good (0), + lowWarning (1), + lowCritical (2), + highWarning (3), + highCritical (4) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Status of the measured humidity relative to the configured + thresholds." + ::= { humidityEntry 5 } + +humidityThLowerWarning OBJECT-TYPE + SYNTAX Integer32 (-1..1000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower warning threshold. Units are 0.1 %RH. A negative value + indicates that this object is not available." + ::= { humidityEntry 6 } + +humidityThLowerCritical OBJECT-TYPE + SYNTAX Integer32 (-1..1000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Lower critical threshold. Units are 0.1 %RH. A negative value + indicates that this object is not available." + ::= { humidityEntry 7 } + +humidityThUpperWarning OBJECT-TYPE + SYNTAX Integer32 (-1..1000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper warning threshold. Units are 0.1 %RH. A negative value + indicates that this object is not available." + ::= { humidityEntry 8 } + +humidityThUpperCritical OBJECT-TYPE + SYNTAX Integer32 (-1..1000) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "Upper critical threshold. Units are 0.1 %RH. A negative value + indicates that this object is not available." + ::= { humidityEntry 9 } + +contactTable OBJECT-TYPE + SYNTAX SEQUENCE OF ContactEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "A list of contact sensors. The number of entries is + given by contactCount." + ::= { environmental 3 } + +contactEntry OBJECT-TYPE + SYNTAX ContactEntry + MAX-ACCESS not-accessible + STATUS current + DESCRIPTION + "An entry for a contact sensor" + INDEX { strappingIndex, + contactIndex } + ::= { contactTable 1 } + +ContactEntry ::= SEQUENCE { + contactIndex + Integer32, + contactName + OCTET STRING, + contactProbeStatus + INTEGER, + contactState + INTEGER +} + +contactIndex OBJECT-TYPE + SYNTAX Integer32 (1..3) + MAX-ACCESS accessible-for-notify + STATUS current + DESCRIPTION + "A unique value for each contact sensor. Its value ranges from 1 to + contactCount." + ::= { contactEntry 1 } + +contactName OBJECT-TYPE + SYNTAX OCTET STRING (SIZE(1..31)) + MAX-ACCESS read-write + STATUS current + DESCRIPTION + "A descriptive name for the contact sensor." + ::= { contactEntry 2 } + +contactProbeStatus OBJECT-TYPE + SYNTAX INTEGER { + bad (-1), + disconnected (0), + connected (1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "Indicates whether a probe is connected or not. + Will not be returned if the contact sensor is internal to the ePDU, + in that case only contactState should be read." + ::= { contactEntry 3 } + +contactState OBJECT-TYPE + SYNTAX INTEGER { + contactBad (-1), + contactOpen (0), + contactClosed (1) + } + MAX-ACCESS read-only + STATUS current + DESCRIPTION + "The state of the contact sensor." + ::= { contactEntry 4 } + +eatonEpduCompliances MODULE-COMPLIANCE + STATUS current + DESCRIPTION + "The requirements for conforming to the ePDU MIB." + MODULE + MANDATORY-GROUPS { epduRequiredGroup } + GROUP epduOptionalGroup + DESCRIPTION + "Different ePDUs will support a subset of the defined objects." + GROUP epduNotifyGroup + DESCRIPTION + "Different ePDUs will support a subset of the defined notifications." + ::= { conformance 1 } + +epduRequiredGroup OBJECT-GROUP + OBJECTS { unitName, + firmwareVersion } + STATUS current + DESCRIPTION + "Minimal objects are required to conform to this MIB." + ::= { objectGroups 1 } + +epduOptionalGroup OBJECT-GROUP + OBJECTS { clockValue, + commInterface, + communicationStatus, + contactCount, + contactIndex, + contactName, + contactProbeStatus, + contactState, + groupChildCount, + groupChildOID, + groupChildType, + groupControl0nCmd, + groupControlOffCmd, + groupControlRebootCmd, + groupControlStatus, + groupCount, + groupCurrent, + groupCurrentCapacity, + groupCurrentCrestFactor, + groupCurrentPercentLoad, + groupCurrentThLowerCritical, + groupCurrentThLowerWarning, + groupCurrentThStatus, + groupCurrentThUpperCritical, + groupCurrentThUpperWarning, + groupID, + groupIndex, + groupName, + groupBreakerStatus, + groupPowerFactor, + groupType, + groupVA, + groupVAR, + groupVoltage, + groupVoltageMeasType, + groupVoltageThLowerCritical, + groupVoltageThLowerWarning, + groupVoltageThStatus, + groupVoltageThUpperCritical, + groupVoltageThUpperWarning, + groupWatts, + groupWh, + groupWhTimer, + humidityCount, + humidityIndex, + humidityName, + humidityProbeStatus, + humidityThLowerCritical, + humidityThLowerWarning, + humidityThStatus, + humidityThUpperCritical, + humidityThUpperWarning, + humidityValue, + inputCount, + inputCurrent, + inputCurrentCapacity, + inputCurrentCount, + inputCurrentCrestFactor, + inputCurrentIndex, + inputCurrentMeasType, + inputCurrentPercentLoad, + inputCurrentThLowerCritical, + inputCurrentThLowerWarning, + inputCurrentThStatus, + inputCurrentThUpperCritical, + inputCurrentThUpperWarning, + inputFrequency, + inputFrequencyStatus, + inputIndex, + inputPlugType, + inputPowerCount, + inputPowerFactor, + inputPowerMeasType, + inputType, + inputVA, + inputVAR, + inputVoltage, + inputVoltageCount, + inputVoltageIndex, + inputVoltageMeasType, + inputVoltageThLowerCritical, + inputVoltageThLowerWarning, + inputVoltageThStatus, + inputVoltageThUpperCritical, + inputVoltageThUpperWarning, + inputWatts, + inputWh, + inputWhTimer, + inputTotalVA, + inputTotalWatts, + inputTotalWh, + inputTotalWhTimer, + inputTotalPowerFactor, + inputTotalVAR, + internalStatus, + lcdControl, + outletControlSwitchable, + outletControlShutoffDelay, + outletControlOffCmd, + outletControlOnCmd, + outletControlPowerOnState, + outletControlRebootCmd, + outletControlRebootOffTime, + outletControlSequenceDelay, + outletControlStatus, + outletCount, + outletCurrent, + outletCurrentCapacity, + outletCurrentCrestFactor, + outletCurrentPercentLoad, + outletCurrentThLowerCritical, + outletCurrentThLowerWarning, + outletCurrentThStatus, + outletCurrentThUpperCritical, + outletCurrentThUpperWarning, + outletID, + outletIndex, + outletName, + outletParentCount, + outletParentOID, + outletParentType, + outletPowerFactor, + outletType, + outletVA, + outletVAR, + outletVoltage, + outletVoltageThLowerCritical, + outletVoltageThLowerWarning, + outletVoltageThStatus, + outletVoltageThUpperCritical, + outletVoltageThUpperWarning, + outletWatts, + outletWh, + outletWhTimer, + partNumber, + productName, + serialNumber, + strappingIndex, + strappingStatus, + temperatureCount, + temperatureIndex, + temperatureName, + temperatureProbeStatus, + temperatureScale, + unitType, + temperatureThLowerCritical, + temperatureThLowerWarning, + temperatureThStatus, + temperatureThUpperCritical, + temperatureThUpperWarning, + temperatureValue, + unitControlOffCmd, + unitControlOnCmd, + unitName, + unitsPresent, + userName } + STATUS current + DESCRIPTION + "Most objects in this MIB are optional." + ::= { objectGroups 2 } + +epduNotifyGroup NOTIFICATION-GROUP + NOTIFICATIONS { notifyBootUp, + notifyCommunicationStatus, + notifyContactState, + notifyFailedLogin, + notifyGroupCurrentThStatus, + notifyGroupVoltageThStatus, + notifyGroupBreakerStatus, + notifyHumidityThStatus, + notifyInputCurrentThStatus, + notifyInputFrequencyStatus, + notifyInputVoltageThStatus, + notifyInternalStatus, + notifyOutletControlStatus, + notifyOutletCurrentThStatus, + notifyOutletVoltageThStatus, + notifyProbeStatus, + notifyStrappingStatus, + notifyTemperatureThStatus, + notifyTest, + notifyUserLogin, + notifyUserLogout } + STATUS current + DESCRIPTION + "These notifications will be supported depending on the features of the ePDU. + Check the web interface for options to turn these notifications on/off. If + an option is not listed, then the ePDU likely does not support that + notification." + ::= { objectGroups 3 } +END + + +-- This MIB was created using NuDesign Team's Visual MIBuilder (Ver 4.7). + diff --git a/mibs/EATON-OIDS b/mibs/EATON-OIDS new file mode 100755 index 000000000..7a318f013 --- /dev/null +++ b/mibs/EATON-OIDS @@ -0,0 +1,171 @@ +EATON-OIDS DEFINITIONS ::= BEGIN + +IMPORTS + MODULE-IDENTITY, enterprises FROM SNMPv2-SMI + Integer32 FROM SNMPv2-SMI + TEXTUAL-CONVENTION FROM SNMPv2-TC; + +eaton MODULE-IDENTITY + LAST-UPDATED "201001240000Z" + ORGANIZATION "Eaton Corporation" + CONTACT-INFO + "Eaton Power Quality Technical Support (PQTS) group + www.eaton.com/powerxpert + Technical Resource Center phone numbers + United States: 1.800.843.9433 or 919.870.3028 + Canada: 1.800.461.9166 ext. 260 + All other countries: Call your local service representative." + DESCRIPTION + "Assigns major branches from the root of + Eaton's OID tree (534). + + Copyright (C) Exide Electronics 1992-98 + Copyright (C) Powerware Corporation 1999-2004 + Copyright (C) Eaton Corporation (2005-)." + + REVISION "201001240000Z" + DESCRIPTION + "Added assignments for eatonEpdu and eatonEpduMa." + + REVISION "200906180000Z" + DESCRIPTION + "Added assignments for powerCmnd and OSDCIIMIB." + + + REVISION "200708060000Z" + DESCRIPTION + "Added assignments for pcdMIB and pxmMIB. + Added common Textual Conventions for Integers." + + REVISION "200707050000Z" + DESCRIPTION + "Added assignment for eatonEpduMIB. + Cleaned up file for public consumption." + + REVISION "200610150000Z" + DESCRIPTION + "Added assignments for powerChain and pxgMIB." + + REVISION "200605250000Z" + DESCRIPTION + "Revised from the original assignments in XUPS-MIB.txt. + Note that enterprises.534. was originally assigned to Exide + Electronics before Powerware was acquired by Eaton." + + ::= { enterprises 534 } + +-- EATON-OIDS { iso org(3) dod(6) internet(1) private(4) +-- enterprises(1) eaton(534) } + + +-- The Powerware "PowerMIB" for UPSs +xupsMIB OBJECT IDENTIFIER ::= {eaton 1} +-- Define the Environment group here since it is used in the Eaton-EMP-MIB as well +xupsEnvironment OBJECT IDENTIFIER ::= {xupsMIB 6} + +-- +-- The root of the list of Object Identifiers that are used to +-- distinguish Eaton's SNMP agents (for use in sysObjId): +xupsObjectId OBJECT IDENTIFIER ::= {eaton 2} + powerwareEthernetSnmpAdapter OBJECT IDENTIFIER ::= {xupsObjectId 1} + powerwareNetworkSnmpAdapterEther OBJECT IDENTIFIER ::= {xupsObjectId 2} + powerwareNetworkSnmpAdapterToken OBJECT IDENTIFIER ::= {xupsObjectId 3} + onlinetDaemon OBJECT IDENTIFIER ::= {xupsObjectId 4} + connectUPSAdapterEthernet OBJECT IDENTIFIER ::= {xupsObjectId 5} + powerwareNetworkDigitalIOEther OBJECT IDENTIFIER ::= {xupsObjectId 6} + connectUPSAdapterTokenRing OBJECT IDENTIFIER ::= {xupsObjectId 7} + simpleSnmpAdapter OBJECT IDENTIFIER ::= {xupsObjectId 8} + powerwareEliSnmpAdapter OBJECT IDENTIFIER ::= {xupsObjectId 9} + powerwareBasicEmbeddedEthernet OBJECT IDENTIFIER ::= {xupsObjectId 10} + eatonPowerChainGateway OBJECT IDENTIFIER ::= {xupsObjectId 11} + eatonPowerChainDevice OBJECT IDENTIFIER ::= {xupsObjectId 12} + eatonPowerXpertMeter OBJECT IDENTIFIER ::= {xupsObjectId 13} + + +-- Digital IO MIB (deprecated) +-- File XUPSIOV1.MIB +xupsIoMIB OBJECT IDENTIFIER ::= {eaton 3} + +-- DataTrax Forseer and Powervision branch +powerVision OBJECT IDENTIFIER ::= {eaton 4} + +-- orphaned: BEEP (Basic Embedded Ethernet Product) +-- File XUPS-BASIC-MIB.txt +--xupsBasic OBJECT IDENTIFIER ::= {eaton 5} + +-- A branch for Powerware Product MIBs +products OBJECT IDENTIFIER ::= {eaton 6} + -- Product assignments + + pduAgent OBJECT IDENTIFIER ::= {products 6} + -- pduAgent product assignments + -- File MIB_hdpdu.mib for HD PDU + hdpdu OBJECT IDENTIFIER ::= {pduAgent 2} + + -- MIB for Eaton PDU, first for 9315's 3-phase PDU + -- Defined in EATON-PDU-MIB.txt + eatonPdu OBJECT IDENTIFIER ::= {pduAgent 4} + + -- MIB for Eaton Powerware first-generation Managed ePDUs + -- Defined in EATON-EPDU-MA-MIB.txt + -- eatonEpduMa OBJECT IDENTIFIER ::= {pduAgent 6} + + -- MIB for Eaton Powerware ePDUs + -- Defined in EATON-EPDU-MIB.txt + -- eatonEpdu OBJECT IDENTIFIER ::= {pduAgent 7} + + + dataCenter OBJECT IDENTIFIER ::= {products 7} + -- dataCenter product assignments + environmentalMonitor OBJECT IDENTIFIER ::= {dataCenter 1} + + +-- A branch for Eaton IT Department +itProjects OBJECT IDENTIFIER ::= {eaton 7} + pki OBJECT IDENTIFIER ::= {itProjects 1} + +-- A branch for PowerChain Product MIBs +powerChain OBJECT IDENTIFIER ::= {eaton 8} + -- Product assignments + + -- MIB to support Alarms and Events in PowerXpert toolkit-enabled + -- Devices, Gateways, PXMeters + -- Defined in file EATON-PXG-MIB.txt + -- pxgMIB OBJECT IDENTIFIER ::= {powerChain 1} + + -- MIB to support common measures in Power Chain Devices + -- Defined in file EATON-PCD-MIB.txt + -- pcdMIB OBJECT IDENTIFIER ::= {powerChain 2} + + -- MIB to support power measures in Power Meters + -- Defined in file EATON-PWR-MTR-MIB.txt + -- pxmMIB OBJECT IDENTIFIER ::= {powerChain 3} + +-- A branch for powercomand commercial control Product MIBs +powerCmnd OBJECT IDENTIFIER ::= {eaton 9} + + -- Product assignments + -- MIB to support the OSDCII controller + -- Defined in file EATON-OSDCII-MIB.txt + -- osdcMIB OBJECT IDENTIFIER ::= {powerCmnd 1} + +-- Define some common Textual Conventions +-- PositiveInteger and NonNegativeInteger are borrowed from RFC1628 + PositiveInteger ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "This data type is a non-zero and non-negative value." + SYNTAX Integer32 (1..2147483647) + + NonNegativeInteger ::= TEXTUAL-CONVENTION + DISPLAY-HINT "d" + STATUS current + DESCRIPTION + "This data type is a non-negative value." + SYNTAX Integer32 (0..2147483647) + + + + END +