PDU-MIB DEFINITIONS ::= BEGIN IMPORTS MODULE-IDENTITY,OBJECT-TYPE,enterprises FROM SNMPv2-SMI Integer32, NOTIFICATION-TYPE, IpAddress FROM SNMPv2-SMI DisplayString,DateAndTime,MacAddress FROM SNMPv2-TC MODULE-COMPLIANCE, OBJECT-GROUP FROM SNMPv2-CONF; aphel MODULE-IDENTITY LAST-UPDATED "200702140000Z" ORGANIZATION "Aphel Ltd" CONTACT-INFO " Author: Aphel Ltd postal: Aphel Ltd Wayside Business Park Wilsons Lane Coventry West Midlands CV6 6NY United Kingdom email: info@aphel.co.uk phone: +44 (0) 870 754 1880 " DESCRIPTION "This mib describes the SNMP functions of the Power Distribution Unit by Aphel Ltd." ::= { enterprises 13742 } pdu OBJECT IDENTIFIER ::= { aphel 2 } board OBJECT IDENTIFIER ::= { pdu 1 } traps OBJECT IDENTIFIER ::= { pdu 2 } info OBJECT IDENTIFIER ::= { board 1 } outlets OBJECT IDENTIFIER ::= { board 2 } sensors OBJECT IDENTIFIER ::= { board 3 } -- the info group firmwareVersion OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The current firmware version" ::= { info 1 } serialNumber OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "The serial number." ::= { info 2 } ipAddress OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The current IP address. A value of 0.0.0.0 indicates an error or an unset option." ::= { info 3 } netmask OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The current Netmask. A value of 0.0.0.0 indicates an error or an unset option." ::= { info 4 } gateway OBJECT-TYPE SYNTAX IpAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The current Gateway. A value of 0.0.0.0 indicates an error or an unset option." ::= { info 5 } mac OBJECT-TYPE SYNTAX MacAddress MAX-ACCESS read-only STATUS current DESCRIPTION "The current MAC address." ::= { info 6 } hardwareRev OBJECT-TYPE SYNTAX Integer32(0..255) MAX-ACCESS read-only STATUS current DESCRIPTION "The hardware revision number." ::= { info 7 } userName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The login of a user." ::= { info 10 } objectName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The model type of the device" ::= { info 12 } objectInstance OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The device name" ::= { info 13} targetUser OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The user record being operated on" ::= { info 14} groupName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The group record being operated on" ::= { info 15 } imageVersion OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The version of the Upgrade image" ::= { info 18 } status OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The success status of an operation" ::= { info 19 } outletName OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The power outlet being operated on" ::= { info 20 } outletState OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The state of a power outlet" ::= { info 22 } sensorNumber OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The sensor number." ::= { info 23 } sensorEvent OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS not-accessible STATUS current DESCRIPTION "The sensor event." ::= { info 24 } -- the outlets group -- Implementation for managing the outlets outletCount OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "The number of outlets (regardless of their current state) present on this pdu." ::= { outlets 1 } -- the outlets table -- The outlets table contains information on the pdu's outlets. -- It further provides functions for managing them. outletTable OBJECT-TYPE SYNTAX SEQUENCE OF OutletEntryStruct MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of outlet entries. The number of entries is given by the value of ifNumber." ::= { outlets 2 } outletEntry OBJECT-TYPE SYNTAX OutletEntryStruct MAX-ACCESS not-accessible STATUS current DESCRIPTION "An outlet entry containing objects at the for a particular outlet." INDEX { outletIndex } ::= { outletTable 1 } OutletEntryStruct ::= SEQUENCE { outletIndex INTEGER, outletLabel DisplayString, outletOperationalState INTEGER, outletSendorNumberRMSCurrent INTEGER, outletSendorNumberRMSPhase INTEGER, outletSendorNumberMaxRMSCurrent INTEGER, outletSendorNumberTrueRMSPower INTEGER, outletSendorNumberApparentRMSPower INTEGER, outletSendorNumberMaxTrueRMSPower INTEGER, outletSendorNumberAverageRealRMSPower INTEGER, outletSendorNumberRMSVoltage INTEGER, outletSendorNumberFrequency INTEGER } outletIndex OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for each outlet. Its value ranges between 1 and the value of outletNumber." ::= { outletEntry 1 } outletLabel OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A textual string containing information about the outlet." ::= { outletEntry 2 } outletOperationalState OBJECT-TYPE SYNTAX INTEGER { error(-1), off(0), on(1), cycling(2) } MAX-ACCESS read-write STATUS current DESCRIPTION "A value for each outlet which describes the operational state of the outlet. It is also used to set the operational state of the outlet" ::= { outletEntry 3 } outletSensorNumberRMSCurrent OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the RMS current sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 4 } outletSensorNumberRMSPhase OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the RMS phase sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 5 } outletSensorNumberMaxRMSCurrent OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the max. RMS current sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 6 } outletSensorNumberTrueRMSPower OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the true RMS power sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 7 } outletSensorNumberApparentRMSPower OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the apparent RMS power sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 8 } outletSensorNumberMaxTrueRMSPower OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the max. true RMS power sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 9 } outletSensorNumberAverageRealRMSPower OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the average real RMS power sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 10 } outletSensorNumberRMSVoltage OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the RMS voltage sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 11 } outletSensorNumberFrequency OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the frequency sensor attached to the outlet. This is also an index into the sensors table sensorTable." ::= { outletEntry 12 } -- the sensors group -- Implementation for managing the sensors sensorCount OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "The number of sensors (regardless of their current state) present on this pdu." ::= { sensors 1 } -- the sensors table -- The sensors table contains information on the sensors atteched to the pdu's outlets. sensorTable OBJECT-TYPE SYNTAX SEQUENCE OF SensorEntryStruct MAX-ACCESS not-accessible STATUS current DESCRIPTION "A list of sensors of the pdu. The number of entries is given by the value of sensorNumber." ::= { sensors 2 } sensorEntry OBJECT-TYPE SYNTAX SensorEntryStruct MAX-ACCESS not-accessible STATUS current DESCRIPTION "An sensor entry containing objects at the for a particular sensor." INDEX { sensorIndex } ::= { sensorTable 1 } SensorEntryStruct ::= SEQUENCE { sensorIndex INTEGER, sensorLabel DisplayString, sensorType INTEGER, sensorValue Opaque, sensorUnit DisplayString, sensorState INTEGER, sensorAssociatedOutlet INTEGER, sensorLowerNonCriticalThreshold Opaque, sensorUpperNonCriticalThreshold Opaque, sensorLowerCriticalThreshold Opaque, sensorUpperCriticalThreshold Opaque, sensorLowerNonRecoverableThreshold Opaque, sensorUpperNonRecoverableThreshold Opaque } sensorIndex OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for each sensor. Its value ranges between 1 and may exceed the value of sensorNumber." ::= { sensorEntry 1 } sensorLabel OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A textual string containing information about the sensor." ::= { sensorEntry 2 } sensorType OBJECT-TYPE SYNTAX INTEGER { receptacle-rms-current(0), receptacle-rms-phase(1), receptacle-max-rms-current(2), receptacle-true-rms-power(3), receptacle-apparent-rms-power(4), receptacle-max-true-rms-power(5), receptacle-average-real-rms-power(6), power-branch-rms-voltage(192), power-branch-frequency(193), power-branch-temperature(194), power-branch-rms-current(195), environmental-temp-3(197), environmental-temp-2(198), environmental-temp-1(199), environmental-humidity-2(206), environmental-humidity-1(207), unit-circuit-break-0(240), unit-circuit-break-1(241), unit-rms-current(242), unit-max-rms-current(243), unit-temp(244), unit-true-power(245), unit-apparent-power(246), unit-rms-voltage(247) } MAX-ACCESS read-only STATUS current DESCRIPTION "The type of the sensor." ::= { sensorEntry 3 } sensorValue OBJECT-TYPE SYNTAX Opaque MAX-ACCESS read-only STATUS current DESCRIPTION "The value the sensor delivers. This value is provided as ASN_OPAQUE_FLOAT type. In case of an error or unavailability NaN is returned" ::= { sensorEntry 4 } sensorUnit OBJECT-TYPE SYNTAX DisplayString MAX-ACCESS read-only STATUS current DESCRIPTION "A string that containes the unit of the value." ::= { sensorEntry 5 } sensorState OBJECT-TYPE SYNTAX INTEGER { unavailable(-1), ok(0), below-lower-non-critical(1), above-upper-non-critical(2), below-lower-critical(3), above-upper-critical(4), below-lower-non-recoverable(5), above-upper-non-recoverable(6)} MAX-ACCESS read-only STATUS current DESCRIPTION "To state of the sensor." ::= { sensorEntry 6 } sensorAssociatedOutlet OBJECT-TYPE SYNTAX INTEGER MAX-ACCESS read-only STATUS current DESCRIPTION "A unique value for the outlet the sensor is associated to, if any. This is also an index into the outlets table outletTable. An value of 0 indicates no associated outlet." ::= { sensorEntry 7 } sensorLowerNonCriticalThreshold OBJECT-TYPE SYNTAX Opaque MAX-ACCESS read-write STATUS current DESCRIPTION "The value for the lower non-critical threshold of the sensor. This value is provided as ASN_OPAQUE_FLOAT type. In case of an error or unavailability NaN is returned. Setting this value is possible via: ASN_INTEGER, ASN_OCTET_STR, ASN_OPAQUE_FLOAT or ASN_OPAQUE_DOUBLE." ::= { sensorEntry 8 } sensorUpperNonCriticalThreshold OBJECT-TYPE SYNTAX Opaque MAX-ACCESS read-write STATUS current DESCRIPTION "The value for the upper non-critical threshold of the sensor. This value is provided as ASN_OPAQUE_FLOAT type. In case of an error or unavailability NaN is returned. Setting this value is possible via: ASN_INTEGER, ASN_OCTET_STR, ASN_OPAQUE_FLOAT or ASN_OPAQUE_DOUBLE." ::= { sensorEntry 9 } sensorLowerCriticalThreshold OBJECT-TYPE SYNTAX Opaque MAX-ACCESS read-write STATUS current DESCRIPTION "The value for the lower critical threshold of the sensor. This value is provided as ASN_OPAQUE_FLOAT type. In case of an error or unavailability NaN is returned. Setting this value is possible via: ASN_INTEGER, ASN_OCTET_STR, ASN_OPAQUE_FLOAT or ASN_OPAQUE_DOUBLE." ::= { sensorEntry 10 } sensorUpperCriticalThreshold OBJECT-TYPE SYNTAX Opaque MAX-ACCESS read-write STATUS current DESCRIPTION "The value for the upper critical threshold of the sensor. This value is provided as ASN_OPAQUE_FLOAT type. In case of an error or unavailability NaN is returned. Setting this value is possible via: ASN_INTEGER, ASN_OCTET_STR, ASN_OPAQUE_FLOAT or ASN_OPAQUE_DOUBLE." ::= { sensorEntry 11 } sensorLowerNonRecoverableThreshold OBJECT-TYPE SYNTAX Opaque MAX-ACCESS read-write STATUS current DESCRIPTION "The value for the lower non-recoverable threshold of the sensor. This value is provided as ASN_OPAQUE_FLOAT type. In case of an error or unavailability NaN is returned. Setting this value is possible via: ASN_INTEGER, ASN_OCTET_STR, ASN_OPAQUE_FLOAT or ASN_OPAQUE_DOUBLE." ::= { sensorEntry 12 } sensorUpperNonRecoverableThreshold OBJECT-TYPE SYNTAX Opaque MAX-ACCESS read-write STATUS current DESCRIPTION "The value for the upper non-recoverable threshold of the sensor. This value is provided as ASN_OPAQUE_FLOAT type. In case of an error or unavailability NaN is returned. Setting this value is possible via: ASN_INTEGER, ASN_OCTET_STR, ASN_OPAQUE_FLOAT or ASN_OPAQUE_DOUBLE." ::= { sensorEntry 13 } -- Start the traps rebootStarted NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName } STATUS current DESCRIPTION "The reboot process has started" ::= { traps 1 } rebootCompleted NOTIFICATION-TYPE OBJECTS { objectName, objectInstance } STATUS current DESCRIPTION "The reboot process is complete" ::= { traps 2 } userLogin NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, ipAddress } STATUS current DESCRIPTION "A user logged in" ::= { traps 3 } userLogout NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, ipAddress } STATUS current DESCRIPTION "A user logged out" ::= { traps 4 } userAuthenticationFailure NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, ipAddress } STATUS current DESCRIPTION "A user authentication attempt failed" ::= { traps 5 } userSessionTimeout NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, ipAddress } STATUS current DESCRIPTION "A user timed out from the device" ::= { traps 8 } userAdded NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, targetUser } STATUS current DESCRIPTION "A user was added to the system" ::= { traps 11 } userModified NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, targetUser } STATUS current DESCRIPTION "A user account was modified" ::= { traps 12 } userDeleted NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, targetUser } STATUS current DESCRIPTION "A user was deleted from the system" ::= { traps 13 } groupAdded NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, groupName } STATUS current DESCRIPTION "A group was added to the system" ::= { traps 14 } groupModified NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, groupName } STATUS current DESCRIPTION "A group was modified" ::= { traps 15 } groupDeleted NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, groupName } STATUS current DESCRIPTION "A group was deleted from the system" ::= { traps 16 } deviceUpdateStarted NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, ipAddress, imageVersion } STATUS current DESCRIPTION "The device update has started" ::= { traps 20 } userBlocked NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, ipAddress } STATUS current DESCRIPTION "A blocked user tried to log in" ::= { traps 22 } powerControl NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, ipAddress, outletName, outletState } STATUS current DESCRIPTION "An outlet has been switched" ::= { traps 23 } userPasswordChanged NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, targetUser, ipAddress } STATUS current DESCRIPTION "A user password was changed" ::= { traps 24 } powerSensors NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, sensorNumber, sensorEvent } STATUS current DESCRIPTION "An sensor event has been triggered" ::= { traps 27 } passwordSettingsChanged NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, status } STATUS current DESCRIPTION " Strong password settings changed " ::= { traps 28 } -- Start new event to support RP products firmwareFileDiscarded NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName } STATUS current DESCRIPTION "A firmware file discarded " ::= { traps 36 } firmwareValidationFailed NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName } STATUS current DESCRIPTION "A firmware validation failed " ::= { traps 38 } securityViolation NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName, ipAddress } STATUS current DESCRIPTION "Security violation." ::= { traps 39 } deviceUpdateFailed NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName } STATUS current DESCRIPTION "Device update has failed." ::= { traps 40 } logFileCleared NOTIFICATION-TYPE OBJECTS { objectName, objectInstance, userName } STATUS current DESCRIPTION "The log file has been cleared." ::= { traps 41 } END