-- ****************************************************************************
--
--            Hewelett-Packard Dynamic Smart Cooling Features
--         Management Information Base for SNMP Network Management
--
--
--      Copyright 2001,2007 Hewlett-Packard Development Company, L.P.
--
--      Hewlett-Packard Company shall not be liable for technical or
--      editorial errors or omissions contained herein. The information in
--      this document is provided "as is" without warranty of any kind and
--      is subject to change without notice. The warranties for HP products
--      are set forth in the express limited warranty statements
--      accompanying such products. Nothing herein should be construed as
--      constituting an additional warranty.
--
--      Confidential computer software. Valid license from HP required for
--      possession, use or copying. Consistent with FAR 12.211 and 12.212,
--      Commercial Computer Software, Computer Software Documentation, and
--      Technical Data for Commercial Items are licensed to the U.S.
--      Government under vendor's standard commercial license.
--
--      Refer to the READMIB.RDM file for more information about the
--      organization of the information in the Compaq Enterprise.
--
--      The Compaq Enterprise number is 232.
--      The ASN.1 prefix to, and including the Compaq Enterprise is:
--           1.3.6.1.4.1.232
--
--
--    MIB Version 1.0 for MGMT CD 7.9
--
--    *********************************************************************
--
-- VARIABLES REQUIRED FOR HP MANAGEMENT
-- ===================================================================================
--
-- ===================================================================================
-- sysDescr (1.3.6.1.2.1.1.1) which is defined in RFC1213.MIB.
-- sysContact (1.3.6.1.2.1.1.4) which is defined in RFC1213.MIB.
-- sysName (1.3.6.1.2.1.1.5) is which is defined in RFC1213.MIB.
-- sysLocation (1.3.6.1.2.1.1.6) which is defined in RFC1213.MIB.
-- 
-- sysDescr OBJECT-TYPE
--     SYNTAX  DisplayString (SIZE (0..255))
--     ACCESS  read-only
--     STATUS  mandatory
--
--
--     DESCRIPTION
--             "A textual description of the entity.  This value
--             should include the full name and version
--             identification of the system's hardware type,
--             software operating-system, and networking
--             software.  It is mandatory that this only contain
--             printable ASCII characters."
--     ::= { system 1 }
--
-- sysContact OBJECT-TYPE
--     SYNTAX  DisplayString (SIZE (0..255))
--     ACCESS  read-write
--     STATUS  mandatory
--     DESCRIPTION
--             "The textual identification of the contact person
--             for this managed node, together with information
--             on how to contact this person."
--     ::= { system 4 }
--
-- sysName OBJECT-TYPE
--     SYNTAX  DisplayString (SIZE (0..255))
--
--
--     ACCESS  read-write
--     STATUS  mandatory
--     DESCRIPTION
--             "An administratively-assigned name for this
--             managed node.  By convention, this is the node's
--             fully-qualified domain name."
--     ::= { system 5 }
--
-- sysLocation OBJECT-TYPE
--     SYNTAX  DisplayString (SIZE (0..255))
--     ACCESS  read-write
--     STATUS  mandatory
--     DESCRIPTION
--             "The physical location of this node (e.g.,
--             `telephone closet, 3rd floor')."
--     ::= { system 6 }
-- ===================================================================================
--
-- ===================================================================================
-- cpqSiProductName (1.3.6.1.4.1.232.2.2.4.2) which is defined in CPQSINFO.MIB.
-- This is the dynamic smart cooling product name 
--
--  cpqSiProductName OBJECT-TYPE
--         SYNTAX  DisplayString (SIZE (0..255))
--         ACCESS  read-only
--         STATUS  mandatory
--         DESCRIPTION
--             "This device product name."
--         ::= { cpqSiSystemBoard 2 }
-- ====================================================================================
--
-- ====================================================================================
-- cpqSiSysSerialNum (1.3.6.1.4.1.232.2.2.2.1) which is defined in CPQSINFO.MIB.
-- This is the dynamic smart cooling serial number
--
-- cpqSiSysSerialNum OBJECT-TYPE
--      SYNTAX  DisplayString (SIZE (0..255))
--      ACCESS  read-only
--      STATUS  mandatory
--      DESCRIPTION
--          "The serial number of the system unit.
--
--          The string will be empty if the system does not report the
--          serial number function."
--      ::= { cpqSiAsset 1 }
-- ====================================================================================
--
-- ====================================================================================
-- cpqHoGUID (1.3.6.1.4.1.232.11.2.10.3) which is defined in CPQHOST.MIB 
-- This field needs to be filled with the unique
-- dynamic smart cooling unit serial number (16 bytes)
--
-- cpqHoGUID OBJECT-TYPE
--         SYNTAX  OCTET STRING (SIZE (16))
--         ACCESS  read-write
--         STATUS  mandatory
--         DESCRIPTION
--             "The globally unique identifier of this device."

--         ::= { cpqHoSystemStatus 3 }
-- ====================================================================================
--
-- ====================================================================================
-- cpqHoMibStatusArray (1.3.6.1.4.1.232.11.2.10.1) which is defined in CPQHOST.MIB 
-- Pretty complicated to decipher if you do not have the guide.  We only use the first 
-- 4 octets.
--
-- Octet 0 = 00000001 (always)
-- Octet 1 = 00000000 through 00000100 depending on Device H/W Condition below
-- Octet 2 = 00000001 (always)
-- Octet 3 = 00010000 (always decimal 16 see table below)
--
-- For example: With a UPS device with OK status, the values of the 4 octets would be:
--
-- Octet 0 = 0x01 (fixed)
-- Octet 1 = 0x02 (OK overall status)
-- Octet 2 = 0x01 (fixed)
-- Octet 3 = 0x10 (Device type = 16 for UPS)
--
-- cpqHoMibStatusArray OBJECT-TYPE
--         SYNTAX  OCTET STRING (SIZE (4..256))
--         ACCESS  read-only
--         STATUS  mandatory
--         DESCRIPTION
--             "The MIB Status Array is an array of MIB status structures. Each
--             structure is made up of 4 octets.
--
--             Array element 0 is the status for all MIBs in the Compaq
--             Enterprise.
--
--             Device H/W Condition (Octet 1)
--                0 - Not available (e.g. Loss/lack of communication between card and device UPS/PDU)  
--                1 - Other (unknown) (mapped to device unknown status)
--                2 - OK 		(mapped to device normal status/events)
--                3 - Degraded 	(UPS: device warning status/events
--                                   PDU: overload warning, voltage out of tolerance)
--                4 - Failed 		(UPS: device critical status/events
--                                   PDU: overload condition)
--
--             Detailed Type (octet 3)
--                Bits 0-7    Detailed Type, only used if bit 0 in octect 2 is 1.
--
--             Type Values for Bits 0-4 (maps to CIM7 types)
--             Unknown                    =  0
--             Server                     =  1  (yes a duplicate of the server flag)
--             Desktop                    =  2
--             Workstation                =  3
--             Portable                   =  4
--             Router                     =  5
--             Cluster                    =  6
--             Printer                    =  7
--             Switch                     =  8  (network switch)
--             Repeater                   =  9
--             Remote Access Device       = 10
--             Other                      = 11
--             Management Processor       = 12  (rib, RILOE, iLo)
--             Rack                       = 13
--             Enclosure                  = 14
--             KVM Switch                 = 15  (IP enabled keyboard video mouse switch).
--             UPS                        = 16
--             Power Distribution Unit    = 17
--             Environmental Monitor      = 18  (eg CMC, dynamic smart cooling)"
--
--         ::= { cpqHoSystemStatus 1 }
-- ====================================================================================

CPQDSCCS-MIB DEFINITIONS ::= BEGIN

IMPORTS
    compaq        FROM CPQHOST-MIB
    DisplayString FROM RFC1213-MIB
    sysName       FROM RFC1213-MIB
    sysDescr      FROM RFC1213-MIB
    sysContact    FROM RFC1213-MIB
    sysLocation   FROM RFC1213-MIB  
    OBJECT-TYPE   FROM RFC-1212
    TRAP-TYPE     FROM RFC-1215;

--  compaq                          OBJECT IDENTIFIER       ::= { enterprises 232 }
cpqDsccs                        OBJECT IDENTIFIER       ::= {compaq 171}

dsccsTrapInfo                   OBJECT IDENTIFIER       ::= { cpqDsccs 1 }


--  
--  dsccsTrapInfo                  OBJECT IDENTIFIER       ::= { cpqDsccs 1 }
--  trap information group
--
csRoomName OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..63))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"The location of the room."
    ::= { dsccsTrapInfo 1 }

csContactName OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..63))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"The contact person name."
    ::= { dsccsTrapInfo 2 }

csContactPhoneNumber OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..63))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"The contact person phone number."
    ::= { dsccsTrapInfo 3 }

csProductName OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..25))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The product name:  Dynamic Smart Cooling."
    ::= { dsccsTrapInfo 4 }

csProductId OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..10))
    ACCESS read-write
    STATUS mandatory
    DESCRIPTION
	"The product ID."
    ::= { dsccsTrapInfo 5 }

csSerialNumber OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..10))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"The product serial number."
    ::= { dsccsTrapInfo 6 }

csSoftwareVersion OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..16))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"The product software version."
    ::= { dsccsTrapInfo 7 }

trapEventId OBJECT-TYPE
    SYNTAX INTEGER {
               webGuiDscAutoMode (1001),
		   webGuiDscMonitoringMode (1002),
		   webGuiDscEmergencyOverrideMode (1003),
		   webGuiDscOff (1004),
		   webGuiUserLoggedIn (1005),
		   webGuiUserLoggedOut (1006),
		   webGuiUserSessionExpired (1007),
		   ctrlMasterSensorTempAboveAcceptBand (2001),
		   ctrlOrphanSensorTempAboveAcceptBand (2002),
		   ctrlTempSensorAboveAcceptBand (2003),
		   ctrlRegionInfluenceAhuNoSensors (2004),
		   ctrlNoTciDataForSensorAndAhu (2005),
		   ctrlTciDataExistsForSensorsRemovedFromDsc (2006),
		   ctrlSensorTimestampOld (2007),
		   ctrlAhuOff (2008),
		   ctrlStarted (2009),
		   ctrlStopped (2010),
               commisFullStartedByUser (3001),
		   commisPartialStartedByUserForAhu (3002),
		   commisAbortedByUseer (3003),
		   commisFinishedSuccessfully (3004),
		   commisFailedSupplyAirTempForAhuDidNotChange (3005),
		   commisFailedCouldNotChangeAhuSetPoint (3006),
		   commisFailedDataCenterTempExceedThresholdLimit (3007),
		   commisCannotPerformOperation (3008),
		   commisLoadingConfigProfile (3009),
		   commisLoadingPropertiesForConfigProfile (3010),
		   commisLoadingConfigParamForProfile (3011),
		   commisPerformCheckForAhusInConfigProfile (3012),
		   commisInitSubsystemForConfigProfile (3013),
		   commisInitSubsystemForCOnfigProfileAndInstance (3014),
		   commisStartingForConfigProfile (3015),
		   commisBeginInitCycle (3016),
		   commisProcessCompletedSuccessfullyForConfiguration (3017),
		   commisHaltActiveCommmissioningExecution (3018),
		   commisExecutionFailedForConfiguration (3019),
		   commisPerformPerturbationForInitDistributionLevel (3020),
		   commisPerformPerturbationForAhu (3021),
		   commisAttestSystemPerturbationForAhu (3022),
		   commisAssertionFailedForAhuFeedbackOnTest (3023),
		   commisWaitingForSystemSteadinessFromSensorNetwork (3024),
		   commisValidatingAhuSupplyAirTempHasChanged (3025),
               commisStoreSensorNetworkStateAndDataForPerturbation (3026),
		   commisStoreBasecaseSensorTempAndData (3027),
		   commisStoreSystemPerturbationSensorTempAndData (3028),
		   commisMergeDataForConfig (3029),
		   commisRollbackAndCleanFromDatabaseChanges (3030),
		   commisInitDefaultConfigProfiles (3031),
		   commisAhuPerturbationWithinConfig (3032),
		   commisCannotPerformMergeOpWhenRunningCommissioning (3033),
		   commisCannotHaltCommissioningNoActiveInstanceRunning (3034),
		   commisBeginExecutionCycleSettingAhuToConfiguredLevels (3035),
		   commisSettingAhusToUniformDistributionLevel (3036),
		   commuOpcCommunicationsLost (4001),
		   commuMbcHostIsUnreachablePingFailed (4002),
		   commuOpcStatus (4003),
		   commuTempForSensorOutOfRange (4004),
		   commuFailsafeDeviceHeartbeatNotPresent (4005),
		   commuReverseAirFlowDetectedInRack (4006),
		   commuAhuSupplyAirTempReachedHighLimit (4007),
		   commuAhuSupplyAirTempReachedLowLimit (4008),
		   commuAhuReturnAirTempReachedHighLimit (4009),
		   commuAhuReturnAirTempReachedLowLimit (4010),
		   commuAhuPoweredOff (4011),
		   commuAhuFluidLeakDetected (4012),
		   commuAhuSwitchedToLocalControl (4013),
		   commuSensorTimestampOld (4014),
		   internalSoftwareUnhandledException (6001),
		   other (7001)
	}
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"The event ID."
    ::= { dsccsTrapInfo 8 }

trapDescription OBJECT-TYPE
    SYNTAX DisplayString (SIZE (0..255))
    ACCESS read-only
    STATUS mandatory
    DESCRIPTION
	"The description of the event that generates the trap."
    ::= { dsccsTrapInfo 9 }


--
-- DSCCS Trap Definition
--
trapDscTest TRAP-TYPE
	ENTERPRISE cpqDsccs
	VARIABLES  { sysName,
	             csRoomName,
	             csContactName,
	             csContactPhoneNumber,
	             csProductName,
                   csProductId,
                   csSerialNumber,
                   csSoftwareVersion,	              
	             trapEventId, 
	             trapDescription }
    DESCRIPTION
        "Test trap sent to a trap receiver to check proper reception of traps"
    --#TYPE      "Test Trap"
    --#SEVERITY  INFORMATIONAL
    --#CATEGORY  "Cpqdsccs"
    ::= 1

trapDscCritical TRAP-TYPE
	ENTERPRISE cpqDsccs
	VARIABLES  { sysName,
	             csRoomName,
	             csContactName,
	             csContactPhoneNumber,
	             csProductName,
                   csProductId,
                   csSerialNumber,
                   csSoftwareVersion,	              
	             trapEventId, 
	             trapDescription }
	DESCRIPTION
        "A critical alarm has occurred. Action: Check the Trap Description for more information."
    --#TYPE      "Critical Alarm"
    --#SEVERITY  CRITICAL
    --#CATEGORY  "Cpqdsccs"
    ::= 2

trapDscWarning TRAP-TYPE
	ENTERPRISE cpqDsccs
	VARIABLES  { sysName,
	             csRoomName,
	             csContactName,
	             csContactPhoneNumber,
	             csProductName,
                   csProductId,
                   csSerialNumber,
                   csSoftwareVersion,	              
	             trapEventId, 
	             trapDescription }
	DESCRIPTION
        "A warning alarm has occurred. Action: Check the Trap Description for more information."
    --#TYPE      "Warning Alarm"
    --#SEVERITY  WARNING
    --#CATEGORY  "Cpqdsccs"
	::= 3

trapDscInformation TRAP-TYPE
	ENTERPRISE cpqDsccs
	VARIABLES  { sysName,
	             csRoomName,
	             csContactName,
	             csContactPhoneNumber,
	             csProductName,
                   csProductId,
                   csSerialNumber,
                   csSoftwareVersion,	              
	             trapEventId, 
	             trapDescription }
	DESCRIPTION
        "An informational alarm has occurred. Action: Check the Trap Description for more information."
    --#TYPE      "Information Alarm"
    --#SEVERITY  INFORMATIONAL
    --#CATEGORY  "Cpqdsccs"
	::= 4


END
