ALCATEL-ENT1-INLINE-POWER-MIB DEFINITIONS ::= BEGIN

IMPORTS
  MODULE-IDENTITY, OBJECT-TYPE, Integer32, NOTIFICATION-TYPE
    FROM SNMPv2-SMI
  RowStatus
    FROM SNMPv2-TC
  pethMainPsePower, pethPsePortEntry, pethMainPseEntry, pethPsePortGroupIndex, pethPsePortIndex
    FROM POWER-ETHERNET-MIB
  SnmpAdminString
    FROM SNMP-FRAMEWORK-MIB
        MODULE-COMPLIANCE, OBJECT-GROUP, NOTIFICATION-GROUP
    FROM SNMPv2-CONF
  softentIND1InLinePower
    FROM ALCATEL-ENT1-BASE;

alcatelIND1INLINEPOWERMIB MODULE-IDENTITY
    LAST-UPDATED "201311220000Z"
    ORGANIZATION "Alcatel-Lucent"
    CONTACT-INFO
        "Please consult with Customer Service to ensure the most appropriate
         version of this document is used with the products in question:

                    Alcatel-Lucent, Enterprise Solutions Division
                   (Formerly Alcatel Internetworking, Incorporated)
                           26801 West Agoura Road
                        Agoura Hills, CA  91301-5122
                          United States Of America

        Telephone:               North America  +1 800 995 2696
                                 Latin America  +1 877 919 9526
                                 Europe         +31 23 556 0100
                                 Asia           +65 394 7933
                                 All Other      +1 818 878 4507

        Electronic Mail:         support@ind.alcatel.com
        World Wide Web:          http://alcatel-lucent.com/wps/portal/enterprise
        File Transfer Protocol:  ftp://ftp.ind.alcatel.com/pub/products/mibs"

    DESCRIPTION
        "This module describes an authoritative enterprise-specific Simple
         Network Management Protocol (SNMP) Management Information Base (MIB):

             Propietary InLinePower Extensions MIB definitions

         The right to make changes in specification and other information
         contained in this document without prior notice is reserved.

         No liability shall be assumed for any incidental, indirect, special,
         or consequential damages whatsoever arising from or related to this
         document or the information contained herein.

         Vendors, end-users, and other interested parties are granted
         non-exclusive license to use this specification in connection with
         management of the products for which it is intended to be used.

                     Copyright (C) 1995-2007 Alcatel-Lucent
                         ALL RIGHTS RESERVED WORLDWIDE"

    REVISION      "200704030000Z"
    DESCRIPTION
        "The latest version of this MIB Module."

    ::= { softentIND1InLinePower 1 }

   alaPethNotificationObjects OBJECT IDENTIFIER ::= { alcatelIND1INLINEPOWERMIB 0 }
   alaPethObjects       OBJECT IDENTIFIER ::= { alcatelIND1INLINEPOWERMIB 1 }
   alaPethConformance   OBJECT IDENTIFIER ::= { alcatelIND1INLINEPOWERMIB 2 }

   -- PSE Objects

     alaPethPsePortTable OBJECT-TYPE
          SYNTAX      SEQUENCE OF AlaPethPsePortEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION
              "A table of objects that augments the standard pethPsePortTable
              entry."
          ::= { alaPethObjects 1 }

     alaPethPsePortEntry OBJECT-TYPE
          SYNTAX      AlaPethPsePortEntry
          MAX-ACCESS  not-accessible
          STATUS      current
          DESCRIPTION
                  "A set of objects that display and control the power
                  characteristics of a power Ethernet PSE port."
          AUGMENTS  { pethPsePortEntry }
          ::= { alaPethPsePortTable 1 }


     AlaPethPsePortEntry ::= SEQUENCE {
           alaPethPsePortPowerMaximum
                INTEGER,
           alaPethPsePortPowerActual
                INTEGER,
           alaPethPsePortPowerStatus
                INTEGER,
           alaPethPsePortPowerClass
                INTEGER
      }

     alaPethPsePortPowerMaximum OBJECT-TYPE
       SYNTAX INTEGER ( 3000 .. 60000 )
       MAX-ACCESS read-write
       STATUS current
       DESCRIPTION
           "This object controls maximum amount of power per port."
       ::= { alaPethPsePortEntry 1 }

     alaPethPsePortPowerActual OBJECT-TYPE
       SYNTAX INTEGER ( 0 .. 60000 )
       MAX-ACCESS read-only
       STATUS current
       DESCRIPTION
           "This object contains the actual amount of power used by a port"
       ::= { alaPethPsePortEntry 2 }

     alaPethPsePortPowerStatus OBJECT-TYPE
       SYNTAX INTEGER   {
                  powerOn(1),
                  powerOff(2)
           }
       MAX-ACCESS read-only
       STATUS current
       DESCRIPTION
           "This object contains the power status of a port"
       ::= { alaPethPsePortEntry 3 }

     alaPethPsePortPowerClass OBJECT-TYPE
       SYNTAX INTEGER  {
                class0 (0),
                class1 (1),
                class2 (2),
                class3 (3),
                class4 (4),
                class5 (5)
                }
       MAX-ACCESS read-only
       STATUS current
       DESCRIPTION
           "This object controls class of poe device attached on a port.
           class0 - The device can draw PD power from 0.44W to 12.95W and
                    current less than 5.0 mA.
           class1 - The device can draw PD power from 0.44W to 3.84W and
                    current 10.5 mA.
           class2 - The device can draw PD power from 3.84W to 6.49W and
                    current 12.95 mA.
           class3 - The device can draw PD power from 6.49W to 12.95W and
                    current 28 mA.
           class4 - This class is reserved for future use.
           class5 - No Powered Device is connected to this POE port, or the
                                port is powered down."
       ::= { alaPethPsePortEntry 4 }

   -- Main PSE Objects

   alaPethMainPseTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF AlaPethMainPseEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "This table augments the standard table PethMainPseTable by allowing the
            admin status for a group to be set to on/off as well as
            showing the values for the max power for that group."
        ::= { alaPethObjects 2 }

   alaPethMainPseEntry OBJECT-TYPE
        SYNTAX      AlaPethMainPseEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
             "A set of objects that display and control the Main power
              of a PSE. "
        AUGMENTS  { pethMainPseEntry }
        ::= { alaPethMainPseTable 1 }

   AlaPethMainPseEntry ::= SEQUENCE {
          alaPethMainPseAdminStatus
              INTEGER,
          alaPethMainPseMaxPower
              Integer32,
          alaPethMainPsePriorityDisconnect
              INTEGER,
          alaPethMainPseCapacitorDetect
              INTEGER,
          alaPethMainPsePriority
              INTEGER,
          alaPethMainPseComboPort
              INTEGER,
          alaPethMainPseClassDetection
              INTEGER
   }

    alaPethMainPseAdminStatus OBJECT-TYPE
      SYNTAX INTEGER   {
              on(1),
              off(2)
         }
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
              "The object is used to set the status of the main PSE to ON or OFF."
      ::= { alaPethMainPseEntry 1 }

    alaPethMainPseMaxPower OBJECT-TYPE
      SYNTAX      Integer32  (37..1500)
      UNITS      "Watts"
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
              "The maximum amount of power allowed for main PSE."
      ::= { alaPethMainPseEntry 2 }

    alaPethMainPsePriorityDisconnect OBJECT-TYPE
      SYNTAX INTEGER   {
              enable(1),
              disable(2)
         }
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
              "The object is used to set the priority disconnect of the
       main PSE to Enabled or Disable."
      ::= { alaPethMainPseEntry 3 }

    alaPethMainPseCapacitorDetect OBJECT-TYPE
      SYNTAX INTEGER   {
              enable(1),
              disable(2)
         }
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
              "The object is used to enable or disable the PowerDsine
       Capacitor detection method."
      ::= { alaPethMainPseEntry 4 }

    alaPethMainPsePriority OBJECT-TYPE
      SYNTAX INTEGER   {
              critical(1),
              high(2),
              low(3)
         }
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
              "The object is set the power down priority for the slot"
      ::= { alaPethMainPseEntry 5 }

    alaPethMainPseComboPort OBJECT-TYPE
      SYNTAX INTEGER   {
              enable(1),
              disable(2)
         }
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
              "The object is used to set the combo port option of the
              main PSE to Enable or Disable."
      ::= { alaPethMainPseEntry 6 }

    alaPethMainPseClassDetection OBJECT-TYPE
      SYNTAX INTEGER   {
              enable(1),
              disable(2)
         }
      MAX-ACCESS  read-write
      STATUS      current
      DESCRIPTION
              "The object is used to set the class detection of the
       main PSE to Enabled or Disable."
      ::= { alaPethMainPseEntry 7 }

  -- Peth Main

   alaPethMainChassisTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF AlaPethMainChassisEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "A table of objects that display and control power 
            characteristics per chassis."
        ::= { alaPethObjects 3 }

   alaPethMainChassisEntry OBJECT-TYPE
        SYNTAX      AlaPethMainChassisEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
                "A set of objects that display and control the power
                characteristics of a power Ethernet PSE chassis."
        INDEX { alaPethMainChassisId }
        ::= { alaPethMainChassisTable 1 }

   AlaPethMainChassisEntry ::= SEQUENCE {
         alaPethMainChassisId
           Integer32,
         alaPethMainChassisPowerRedundancy
           INTEGER,
	 alaPethMainChassisDynamicPowerManagement
	   INTEGER,
	 alaPethMainChassisNumberOfPowerSupply
	   Integer32,
	 alaPethMainChassisAvailableReservePower
           Integer32
   }

   alaPethMainChassisId OBJECT-TYPE
        SYNTAX       Integer32 (1..16)
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION
            "The virtual chassis ID for this entry."
        ::= { alaPethMainChassisEntry  1 }

   alaPethMainChassisPowerRedundancy OBJECT-TYPE
        SYNTAX INTEGER   {
                enable(1),
                disable(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "This object controls power supply redundancy for the power 
            Ethernet PSE slots in a chassis."
        ::= { alaPethMainChassisEntry  2 }

   alaPethMainChassisDynamicPowerManagement OBJECT-TYPE
        SYNTAX INTEGER   {
                enable(1),
                disable(2)
        }
        MAX-ACCESS read-write
        STATUS current
        DESCRIPTION
            "This object controls dynamic power management for 
            Ethernet PSE slots in a chassis."
        ::= { alaPethMainChassisEntry  3 }

    alaPethMainChassisNumberOfPowerSupply OBJECT-TYPE
      SYNTAX      Integer32  (1..8)
      UNITS      "scaler"
      MAX-ACCESS  read-only
      STATUS      current
      DESCRIPTION
              "The number of power supplies this chassis."
      ::= { alaPethMainChassisEntry 4 }

    alaPethMainChassisAvailableReservePower OBJECT-TYPE
      SYNTAX      Integer32 
      UNITS      "watts"
      MAX-ACCESS  read-only
      STATUS      current
      DESCRIPTION
              "Available reserve power this chassis."
      ::= { alaPethMainChassisEntry 5 }

    --- Power Rule Objects

   alaPethPowerRuleTable OBJECT-TYPE
       SYNTAX    SEQUENCE OF AlaPethPowerRuleEntry
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION "A list of lanpower power rules that define specific
           times at which to power on/off port(s) associated
           in alaPethPowerPortTable with a policy defined in
           alaPethPowerPolicyTable."
       ::= { alaPethObjects 4 }

   alaPethPowerRuleEntry OBJECT-TYPE
       SYNTAX    AlaPethPowerRuleEntry
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION
           "A lanpower power rule to be bound to a policy."
       INDEX { alaPethPowerRuleName }
       ::= { alaPethPowerRuleTable 1 }

   AlaPethPowerRuleEntry ::=
       SEQUENCE {
           alaPethPowerRuleName         SnmpAdminString,
           alaPethPowerRuleAdminStatus  INTEGER,
           alaPethPowerRulePowerStatus  INTEGER,
           alaPethPowerRuleAtMinute     Integer32,
           alaPethPowerRuleAtTime       Integer32,
           alaPethPowerRuleDaysOfWeek   BITS,
           alaPethPowerRuleDaysOfMonth  BITS,
           alaPethPowerRuleMonths       BITS,
           alaPethPowerRuleTimezone     INTEGER,
           alaPethPowerRuleRowStatus    RowStatus
       }

   alaPethPowerRuleName OBJECT-TYPE
       SYNTAX    SnmpAdminString (SIZE (1..32))
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "The name of the power policy rule of this entry."
       ::= { alaPethPowerRuleEntry 1 }

   alaPethPowerRuleAdminStatus  OBJECT-TYPE
       SYNTAX    INTEGER { enabled(1),
                 disabled(2)
           }
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "Whether this policy rule is enforced when enabled(1) or
       ignored when disabled(2)."
       ::= { alaPethPowerRuleEntry 2 }

   alaPethPowerRulePowerStatus  OBJECT-TYPE
       SYNTAX    INTEGER { on(1),
                 off(2)
           }
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "Whether to power on(1) or off(2) the port(s)
       associated with the lanpower policy this rule is bound to."
       ::= { alaPethPowerRuleEntry 3 }

   alaPethPowerRuleAtMinute  OBJECT-TYPE
       SYNTAX    Integer32(-1|0..59)
       UNITS       "minutes"
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "At what minute of every hour (0..59)  
           to power on/off the port(s) associated with the lanpower 
           policy this rule is bound to. The value -1 is for 
           Not Applicable. Mutually exclusive with 
           alaPethPowerRuleAtTime; a set of either will automatically 
           set the other to -1. Default value is -1."
       DEFVAL  { -1 }
       ::= { alaPethPowerRuleEntry 4 }

   alaPethPowerRuleAtTime  OBJECT-TYPE
       SYNTAX    Integer32(-1|0..1439)
       UNITS       "minutes"
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "At what time minute of the day (0..1439),
           to power on/off the port(s) associated with the lanpower 
           policy this rule is bound to. The value -1 is for 
           Not Applicable. Mutually exclusive with 
           alaPethPowerRuleAtMinute; a set of either will automatically 
           set the other to -1. Default value is every 
           day at 0:00."
       DEFVAL  { 0 }
       ::= { alaPethPowerRuleEntry 5 }

   alaPethPowerRuleDaysOfWeek  OBJECT-TYPE
       SYNTAX    BITS { 
                   sun(0),
                   mon(1),
                   tue(2),
                   wed(3),
                   thu(4),
                   fri(5),
                   sat(6)
           }
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "On which days of the week to power on(1) or off(2) the port(s)
           associated with the lanpower policy this rule is bound to.
           Mutually exclusive with alaPethPowerRuleDaysOfMonth; a set of
           either will automatically set the other to {}.
           Default is every day of the week."
       DEFVAL    { {sun, mon, tue, wed, thu, fri, sat} }
       ::= { alaPethPowerRuleEntry 6 }

   alaPethPowerRuleDaysOfMonth  OBJECT-TYPE
       SYNTAX    BITS { 
                   d1(0),d2(1),d3(2),d4(3),d5(4),d6(5),d7(6),d8(7),d9(8),d10(9),
                   d11(10),d12(11),d13(12),d14(13),d15(14),d16(15),d17(16),d18(17),d19(18),d20(19),
                   d21(20),d22(21),d23(22),d24(23),d25(24),d26(25),d27(26),d28(27),d29(28),d30(29),
                   d31(30)
           }
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "On which days of the month to power on(1) or off(2) the port(s)
           associated with the lanpower policy this rule is bound to.
           Mutually exclusive with alaPethPowerRuleDaysOfWeek; a set of
           either will automatically set the other to none.
           Note: on months that have no day 31st d31(31) will be interpreted as
           the last day of the month.
           Default is none."
       DEFVAL    { {} }
       ::= { alaPethPowerRuleEntry 7 }

   alaPethPowerRuleMonths  OBJECT-TYPE
       SYNTAX    BITS { jan(0),
                feb(1),
                mar(2),
                apr(3),
                may(4),
                jun(5),
                jul(6),
                aug(7),
                sep(8),
                oct(9),
                nov(10),
                dec(11)
           }
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "On which months to power on(1) or off(2) the port(s)
           associated with the lanpower policy this rule is bound to.
           Default is every month."
       DEFVAL    { {jan, feb, mar, apr, may, jun, jul, aug, sep, oct, nov, dec} }
       ::= { alaPethPowerRuleEntry 8 }

   alaPethPowerRuleTimezone  OBJECT-TYPE
       SYNTAX    INTEGER { localServer(1),
                 originatorServer(2),
                 utc(3)
           }
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "The timezone to use when activating the rule minute/time.
       localServer(1) is the time given by the local server,
       originatorServer(2) is the time given by the originator server
       (which may or may not be the localServer) and
       utc(3) is the UTC / Greenwich Mean Time."
       DEFVAL { localServer }
       ::= { alaPethPowerRuleEntry 9 }

   alaPethPowerRuleRowStatus  OBJECT-TYPE
       SYNTAX    RowStatus
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "Create or delete a lanpower policy rule."
       ::= { alaPethPowerRuleEntry 10 }


       --- Power Policy Objects

   alaPethPowerPolicyTable OBJECT-TYPE
       SYNTAX    SEQUENCE OF AlaPethPowerPolicyEntry
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION "A list of lanpower power policies to which
           rules defined in alaPethPowerRuleTable are
           bound to. Rules schedule power on/off of ports
           associated with policies defined in alaPethPowerPortTable."
       ::= { alaPethObjects 5 }

   alaPethPowerPolicyEntry OBJECT-TYPE
       SYNTAX    AlaPethPowerPolicyEntry
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION "A power policy to which a rule is bound."
       INDEX { alaPethPowerPolicyName, alaPethPowerRuleName }
       ::= { alaPethPowerPolicyTable 1 }

   AlaPethPowerPolicyEntry ::=
       SEQUENCE {
           alaPethPowerPolicyName        SnmpAdminString,
           alaPethPowerPolicyRowStatus    RowStatus
       }

   alaPethPowerPolicyName OBJECT-TYPE
       SYNTAX    SnmpAdminString (SIZE (1..32))
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION "The name of the power policy of this entry."
       ::= { alaPethPowerPolicyEntry 1 }

   alaPethPowerPolicyRowStatus  OBJECT-TYPE
       SYNTAX    RowStatus
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION
           "Create or delete a lanpower policy."
       ::= { alaPethPowerPolicyEntry 2 }


       --- Power Policy Port Objects

   alaPethPowerPortTable OBJECT-TYPE
       SYNTAX    SEQUENCE OF AlaPethPowerPortEntry
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION "A list of lanpower ports associated with a policy
           defined in alaPethPowerPolicyTable to which rules
           defined in alaPethPowerRuleTable are bound to.
           Rules schedule the power on/off of these ports."
       ::= { alaPethObjects 6 }

   alaPethPowerPortEntry OBJECT-TYPE
       SYNTAX    AlaPethPowerPortEntry
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION "A port associated with a power policy."
       INDEX { pethPsePortGroupIndex, pethPsePortIndex }
       ::= { alaPethPowerPortTable 1 }

   AlaPethPowerPortEntry ::=
       SEQUENCE {
           alaPethPowerPortPolicyName        SnmpAdminString,
           alaPethPowerPortRowStatus    RowStatus
       }

   alaPethPowerPortPolicyName OBJECT-TYPE
       SYNTAX    SnmpAdminString (SIZE (1..32))
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "The name of the power policy of this port. Cannot be modified -
       first delete entry with old name and then create entry with new name."
       ::= { alaPethPowerPortEntry 1 }

   alaPethPowerPortRowStatus  OBJECT-TYPE
       SYNTAX    RowStatus
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "Create or delete a port lanpower policy."
       ::= { alaPethPowerPortEntry 2 }

       --- Power Policy Slot Objects

   alaPethPowerSlotTable OBJECT-TYPE
       SYNTAX    SEQUENCE OF AlaPethPowerSlotEntry
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION "A list of lanpower slots associated with a policy
           defined in alaPethPowerPolicyTable to which rules
           defined in alaPethPowerRuleTable are bound to.
           Rules schedule the power on/off of these slots."
       ::= { alaPethObjects 7 }

   alaPethPowerSlotEntry OBJECT-TYPE
       SYNTAX    AlaPethPowerSlotEntry
       MAX-ACCESS  not-accessible
       STATUS    current
       DESCRIPTION "A slot associated with a power policy."
       INDEX { pethPsePortGroupIndex }
       ::= { alaPethPowerSlotTable 1 }

   AlaPethPowerSlotEntry ::=
       SEQUENCE {
           alaPethPowerSlotPolicyName        SnmpAdminString,
           alaPethPowerSlotRowStatus    RowStatus
       }

   alaPethPowerSlotPolicyName OBJECT-TYPE
       SYNTAX    SnmpAdminString (SIZE (1..32))
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "The name of the power policy defined in 
                  alaPethPowerPolicyTable to associate with this slot."
       ::= { alaPethPowerSlotEntry 1 }

   alaPethPowerSlotRowStatus  OBJECT-TYPE
       SYNTAX    RowStatus
       MAX-ACCESS  read-create
       STATUS    current
       DESCRIPTION "Associate or disassociate slot to lanpower policy."
       ::= { alaPethPowerSlotEntry 2 }


   -- the alaPethUpdate Group ********************************************

   alaPethUpdate OBJECT IDENTIFIER ::= { alaPethObjects 8 }

   alaPethUpdatePortGroupIndex     OBJECT-TYPE
       SYNTAX       Integer32 (-1|0|1..2147483647)
       MAX-ACCESS   read-write
       STATUS       current
       DESCRIPTION "The pethPsePortGroupIndex slot to perform the update on.
                    To update all slots, use reserved value of zero (0).
                    The default value (no slot) is negative one (-1)."
       DEFVAL  { -1 }
       ::= { alaPethUpdate 1 }

   alaPethUpdateFilename  OBJECT-TYPE
       SYNTAX       SnmpAdminString (SIZE (1..32))
       MAX-ACCESS   read-write
       STATUS       current
       DESCRIPTION "The lanpower update filename to use."
       ::= { alaPethUpdate 2 }

   alaPethUpdateAction   OBJECT-TYPE
       SYNTAX       INTEGER { 
                      noOp(1),
                      doUpdate(2)
                    }
       MAX-ACCESS   read-write
       STATUS       current
       DESCRIPTION  "The current update action, set to doUpdate(2)
                    to start the update operation. It will automatically
                    be restored to the default no operation value noOp(1)."
       DEFVAL  { noOp }
       ::= { alaPethUpdate 3 }

   alaPethUpdateStatus   OBJECT-TYPE
       SYNTAX       INTEGER {
                      inProgress(1),
                      doneOk(2),
                      doneNotOk(3),
                      noOp(4)
                    }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION  "Status of a lanpower update action. In the case of doneNotOk,
                    further information can be obtained from alaPethUpdateErrorCode.
                    In the case of updating all slots, doneOk(2) is for all slots
                    updated successfully whereas doneNotOk(3) is for at least one
                    slot update failed."
       DEFVAL  { noOp }
       ::= { alaPethUpdate 4 }

   alaPethUpdateErrorCode OBJECT-TYPE
       SYNTAX  INTEGER {
              noError(1),
              notAllSlotsUpdated(2),
              noUpdateStatusErr(3),
              programmingImageBadErr(4),
              programmingFailed(5),
              controllerFileChecksumErr(6),
              controllerFileReadErr(7),
              controllerFileStatusErr(8),
              controllerFileWriteErr(9),
              dataErr(10),
              dataConflictErr(11),
              invalidResponseErr(12),
              programUndefinedErr(13)
       }
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION "Error codes for alaPethUpdateStatus doneNotOk(3) for the last
                    alaPethUpdateAction operation; otherwise, it defaults to noError(1).
                    In the case of updating all slots, 
                    noError(1) is returned when all slots updated doneOk(2) whereas 
                    notAllSlotsUpdated(1) when at least one slot updated doneNotOk(3)
                    in which case alaPethUpdateErrorString will list the error 
                    for each failed slot update."
       DEFVAL  { noError }
       ::= { alaPethUpdate 5 }

   alaPethUpdateErrorString OBJECT-TYPE
       SYNTAX       SnmpAdminString (SIZE (0..255))
       MAX-ACCESS   read-only
       STATUS       current
       DESCRIPTION "Any further details of alaPethUpdateErrorCodefor 
                    alaPethUpdateStatus doneNotOk(3) for the last alaPethUpdateAction
                    operation.
                    In the case of updating all slots for alaPethUpdateStatus doneNotOk(3),
                    it contains the total number slots that failed followed by a semi-colon
                    delimited list of error codes in the format 
                    'chassis/slot (error string, line:number)'."
       ::= { alaPethUpdate 6 }

  -- Notification Objects

   alaPethPwrSupplyConflictTrap  NOTIFICATION-TYPE
     OBJECTS {
         pethPsePortGroupIndex -- (VC slot)
     }
     STATUS   current
     DESCRIPTION
         "Power supply type conflict trap."
     ::= { alaPethNotificationObjects 1 }

   alaPethPwrSupplyNotSupportedTrap  NOTIFICATION-TYPE
     OBJECTS {
         pethPsePortGroupIndex,  -- (VC slot)
         pethPsePortIndex  -- (port)
     }
     STATUS   current
     DESCRIPTION
         "Power supply not supported trap."
     ::= { alaPethNotificationObjects 2 }

   pethMainPowerUsageNIFailNotification  NOTIFICATION-TYPE
     OBJECTS {
         pethPsePortGroupIndex,  -- (VC slot)
	alaPethMainChassisNumberOfPowerSupply,
	alaPethMainChassisPowerRedundancy,
	pethMainPsePower,
	alaPethMainPseMaxPower, 
	alaPethMainChassisAvailableReservePower
     }
     STATUS   current
     DESCRIPTION
         "NI cannot be powered trap"
     ::= { alaPethNotificationObjects 3 }

   --
   -- Conformance Section
   --
   alaPethCompliances OBJECT IDENTIFIER ::= { alaPethConformance 1 }
   alaPethGroups      OBJECT IDENTIFIER ::= { alaPethConformance 2 }

   alaPethCompliance MODULE-COMPLIANCE
       STATUS  current
       DESCRIPTION
               "Describes the requirements for conformance to the
               Alcatel Power Ethernet MIB."
       MODULE  -- this module
           GROUP   alaPethPsePortGroup
           DESCRIPTION
               "The alaPethPsePortGroup is mandatory for systems which
               implement PSE ports."
           GROUP   alaPethMainPseGroup
           DESCRIPTION
               "The alaPethMainPseGroup is mandatory for systems which
               implement main power supply within a PSE Device."
           GROUP   alaPethMainChassisGroup
           DESCRIPTION
               "The alaPethMainChassisGroup is mandatory for systems which
               implement main power supply within a group of PSE Devices."
           GROUP   alaPethPowerRuleGroup
           DESCRIPTION
               "The alaPethPowerRuleGroup is mandatory for systems which
               implement main power supply within a PSE Device."
           GROUP   alaPethPowerPolicyGroup
           DESCRIPTION
               "The alaPethPowerPolicyGroup is mandatory for systems which
               implement main power supply within a PSE Device."
           GROUP   alaPethPowerPortGroup
           DESCRIPTION
               "The alaPethPowerPortGroup is mandatory for systems which
               implement main power supply within a PSE Device."
           GROUP   alaPethPowerSlotGroup
           DESCRIPTION
               "The alaPethPowerSlotGroup is mandatory for systems which
               implement main power supply within a PSE Device."
           GROUP   alaPethUpdateGroup
           DESCRIPTION
               "The alaPethUpdateGroup is mandatory for systems which
               implement main power supply within a PSE Device."
           GROUP   pethTrapsGroup
           DESCRIPTION
               "The pethTrapsGroup is mandatory for systems which
               implement PSE ports."
   ::= { alaPethCompliances 1 }

   alaPethPseCompliance MODULE-COMPLIANCE
       STATUS  current
       DESCRIPTION
               "Describes the requirements for conformance to the PSE"
       MODULE  -- this module
       MANDATORY-GROUPS {alaPethPsePortGroup, alaPethMainPseGroup, 
                         alaPethMainChassisGroup, alaPethPowerRuleGroup, alaPethPowerPolicyGroup, alaPethPowerPortGroup, alaPethPowerSlotGroup, alaPethUpdateGroup, pethTrapsGroup}
        ::= { alaPethCompliances 2 }

   alaPethPsePortGroup OBJECT-GROUP
       OBJECTS {
          alaPethPsePortPowerMaximum,
          alaPethPsePortPowerActual,
          alaPethPsePortPowerStatus,
          alaPethPsePortPowerClass
       }
       STATUS  current
       DESCRIPTION
             "The pethPsePortGroup is mandatory for systems which
             implement PSE ports."
       ::= { alaPethGroups 1 }

   alaPethMainPseGroup OBJECT-GROUP
       OBJECTS {
          alaPethMainPseAdminStatus,
          alaPethMainPseMaxPower,
          alaPethMainPsePriorityDisconnect,
          alaPethMainPseCapacitorDetect,
          alaPethMainPsePriority,
          alaPethMainPseComboPort,
          alaPethMainPseClassDetection
       }
       STATUS  current
       DESCRIPTION
               "Main PSE Objects. "
       ::= { alaPethGroups 2 }

   alaPethMainChassisGroup OBJECT-GROUP
        OBJECTS {
           alaPethMainChassisPowerRedundancy,
	   alaPethMainChassisDynamicPowerManagement,
	   alaPethMainChassisNumberOfPowerSupply,
	   alaPethMainChassisAvailableReservePower
        }
       STATUS  current
       DESCRIPTION
               "Main Chassis Objects. "
       ::= { alaPethGroups 3 }


    alaPethPowerRuleGroup OBJECT-GROUP
       OBJECTS {
          alaPethPowerRuleName,
          alaPethPowerRuleAdminStatus,
          alaPethPowerRulePowerStatus,
          alaPethPowerRuleAtMinute,
          alaPethPowerRuleDaysOfWeek,
          alaPethPowerRuleDaysOfMonth,
          alaPethPowerRuleMonths,
          alaPethPowerRuleTimezone,
          alaPethPowerRuleRowStatus,
          alaPethPowerRuleAtTime
       }
       STATUS  current
       DESCRIPTION "Power Policy Rule Objects. "
       ::= { alaPethGroups 4 }

    alaPethPowerPolicyGroup OBJECT-GROUP
       OBJECTS {
          alaPethPowerPolicyRowStatus
       }
       STATUS  current
       DESCRIPTION "Power Policy Objects. "
       ::= { alaPethGroups 5 }

    alaPethPowerPortGroup OBJECT-GROUP
       OBJECTS {
          alaPethPowerPortPolicyName,
          alaPethPowerPortRowStatus
       }
       STATUS  current
       DESCRIPTION "Power Policy Port Objects. "
       ::= { alaPethGroups 6 }

    alaPethPowerSlotGroup OBJECT-GROUP
       OBJECTS {
          alaPethPowerSlotPolicyName,
          alaPethPowerSlotRowStatus
       }
       STATUS  current
       DESCRIPTION "Power Policy Slot Objects. "
       ::= { alaPethGroups 7 }

    alaPethUpdateGroup OBJECT-GROUP
       OBJECTS {
          alaPethUpdatePortGroupIndex,
          alaPethUpdateFilename,
          alaPethUpdateAction,
          alaPethUpdateStatus,
          alaPethUpdateErrorCode,
          alaPethUpdateErrorString
       }
       STATUS  current
       DESCRIPTION "Power Update Objects. "
       ::= { alaPethGroups 8 }

   --  NOTIFICATIONS

        pethTrapsGroup NOTIFICATION-GROUP

       NOTIFICATIONS
       {
          alaPethPwrSupplyConflictTrap,
          alaPethPwrSupplyNotSupportedTrap,
	  pethMainPowerUsageNIFailNotification
       }
       STATUS  current
       DESCRIPTION
               "Notifications for PETH MIB"
       ::= { alaPethGroups 9 }

END
