------------------------------------------------------------------------------------------------------------------------
--
-- MIB file for the NTSS PDU (Power Distribution Unit) equipments.
-- Product Series: NET-POWER-PDUATS
-- Last Updated: 2023-05-12
--
------------------------------------------------------------------------------------------------------------------------
NET-POWER-PDUATS-MIB DEFINITIONS ::= BEGIN

    IMPORTS
        TruthValue, DisplayString FROM SNMPv2-TC
        MODULE-IDENTITY, OBJECT-TYPE,
        NOTIFICATION-TYPE, enterprises, IpAddress, Integer32 FROM SNMPv2-SMI;

    net-Power MODULE-IDENTITY
        LAST-UPDATED "202305120000Z"
        ORGANIZATION "NTSS"
        CONTACT-INFO ""
        DESCRIPTION  "MIB file for the PDU (Power Distribution Unit) equipments."
        ::= { enterprises 55508 }

    pduAts OBJECT IDENTIFIER ::= { net-Power 1 }

    -- **********************************************
    --                  system
    -- **********************************************

    system OBJECT IDENTIFIER ::= {pduAts 1}

    eventInfo OBJECT IDENTIFIER ::= {system 1}

    sourceID OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The ID (address code) of sources(PDU/ATS/SENSOR).
                The OID is bound in a trap message."
            ::= { eventInfo 1 }

    powerDescr OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The description to source PDU/ATS.
                The OID is bound in a trap message."
            ::= { eventInfo 2 }

    eventSource OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The event sources: PDU(fuse/load), ATS(switching/voltage), SENSOR(temp./humid./wind/environment).
                The OID is bound in a trap message."
            ::= { eventInfo 3 }

    sensorDescr OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The description to source SENSOR.
                The OID is bound in a trap message."
            ::= { eventInfo 4 }

    eventType OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The type of the event (trap). The value would be 'recovery' or 'alarm' or 'notify'.
                'recovery': An alarm is recovery.
                'alarm': An alarm is issued or repeated.
                'notify': Only a notification, not an alarm or a recovery event.
                NMS can use this OID to judge and how to handle the trap message.
                The OID is bound in a trap message."
            ::= { eventInfo 5 }

    eventDateTime OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Alert time.
                The OID is bound in a trap message."
            ::= { eventInfo 6 }

    loadValue OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The load value of OUTLET/TOTAL.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available.
                The OID is bound in a trap message."
            ::= { eventInfo 7 }

    loadLowValue OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The setting of low limit of load of OUTLET/TOTAL.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available.
                The OID is bound in a trap message."
            ::= { eventInfo 8 }

    loadHighValue OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The setting of high limit of load of OUTLET/TOTAL.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available.
                The OID is bound in a trap message."
            ::= { eventInfo 9 }
            
    voltageValue OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The voltage value of input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available.
                The OID is bound in a trap message."
            ::= { eventInfo 10 }

    voltageLowValue OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The setting of low limit of voltage of input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available.
                The OID is bound in a trap message."
            ::= { eventInfo 11 }

    voltageHighValue OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The setting of high limit of voltage of input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available.
                The OID is bound in a trap message."
            ::= { eventInfo 12 }
    sysNetwork OBJECT IDENTIFIER ::= {system 2}

    ipAddress OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The IP address of this management node where this SNMP agent is running(Default value: 192.168.0.254).
                NOTATION: When ipAddress is changed, the IP address of the node pointing to this equipment in NMS
                should be changed accordingly.
                NOTATION: When changed, this equipment should be reboot to take effect.
                WARNING: TAKE CARE BEFORE SET!
                The OID is also bound in a trap message."
            ::= { sysNetwork 1}

    maskIpAddress OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The mask IP address,default value: 255.255.255.0
                NOTATION: When changed, this equipment should be reboot to take effect."
            ::= { sysNetwork 2}

    gatewayIpAddress OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The gateway IP address,default value: 0.0.0.0
                NOTATION: When changed, this equipment should be reboot to take effect."
            ::= { sysNetwork 3}

    dnsIpAddress1 OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The DNS#1 IP address,default value: 0.0.0.0
                NOTATION: When changed, this equipment should be reboot to take effect."
            ::= { sysNetwork 4}

    dnsIpAddress2 OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The DNS#2 IP address,default value: 0.0.0.0
                NOTATION: When changed, this equipment should be reboot to take effect."
            ::= { sysNetwork 5}

    rebootSystem OBJECT-TYPE
            SYNTAX      INTEGER(0..1)
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Set value 1 to the OID to reboot the system. set value 0 would not be allowed.
                WARNING: TAKE CARE BEFORE SET!"
            ::= { sysNetwork 6}

    trapDestIP1 OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The trap destination IP address #1,default value: 0.0.0.0"
            ::= { sysNetwork 7}

    trapDestIP2 OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The trap destination IP address #2,default value: 0.0.0.0"
            ::= { sysNetwork 8}

    trapDestIP3 OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The trap destination IP address #3,default value: 0.0.0.0"
            ::= { sysNetwork 9}

    trapDestIP4 OBJECT-TYPE
            SYNTAX      IpAddress
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The trap destination IP address #2,default value: 0.0.0.0"
            ::= { sysNetwork 10}

    powerTables OBJECT IDENTIFIER ::= {pduAts 2}

    -- **********************************************
    --                  power1
    -- **********************************************

    power1OutletTable OBJECT-TYPE
            SYNTAX  SEQUENCE OF Power1OutletEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "A table list the status of all outlets. "
            ::= { powerTables 1 }

    power1OutletEntry OBJECT-TYPE
            SYNTAX  Power1OutletEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "Row definition for the status list."
            INDEX       { p1OutletSeq }
            ::= { power1OutletTable 1 }

    Power1OutletEntry ::= SEQUENCE {
            p1OutletSeq           INTEGER,
            p1OutletNo            DisplayString,
            p1OutletDesc          DisplayString,
            p1OutletSocket        DisplayString,
            p1OutletFuse          DisplayString,
            p1OutletOnOff         INTEGER,
            p1OutletLoad          INTEGER,
            p1OutletLoadLowLimit  INTEGER,
            p1OutletLoadHighLimit INTEGER,
            p1OutletEnergy        INTEGER,
            p1Power               INTEGER,
            p1PowerFactor         INTEGER}

    p1OutletSeq OBJECT-TYPE
            SYNTAX  INTEGER(0..47)
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sequence of table."
            ::= { power1OutletEntry 1 }

    p1OutletNo OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's No."
            ::= { power1OutletEntry 2 }

    p1OutletDesc OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Outlet's description."
            ::= { power1OutletEntry 3 }

    p1OutletSocket OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's socket standard description."
            ::= { power1OutletEntry 4 }

    p1OutletFuse OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's fuse status. Normal or Alarm."
            ::= { power1OutletEntry 5 }

    p1OutletOnOff OBJECT-TYPE
            SYNTAX      INTEGER{none(-1),off(0),on(1)}
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's ON/OFF status."
            ::= { power1OutletEntry 6 }

    p1OutletLoad OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's load amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power1OutletEntry 7 }

    p1OutletLoadLowLimit OBJECT-TYPE
            SYNTAX  INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's load low-limit in amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power1OutletEntry 8 }

    p1OutletLoadHighLimit OBJECT-TYPE
            SYNTAX  INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's load high-limit in amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power1OutletEntry 9 }

    p1OutletEnergy OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth kWh"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's energy (unit in 0.01kWh).
                A non-negative value indicates the measured energy hundredth of kWh.
                A negative value indicates that the energy value was not available."
            ::= { power1OutletEntry 10 }

    p1Power OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's active power (unit in 0.01W).
                A non-negative value indicates the measured active power hundredth of W.
                A negative value indicates that the active power value was not available."
            ::= { power1OutletEntry 11 }

    p1PowerFactor OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's power factor (unit in 0.01).
                A non-negative value indicates the measured power factor hundredth.
                A negative value indicates that the power factor value was not available."
            ::= { power1OutletEntry 12 }

    -- **********************************************
    --                  power2
    -- **********************************************

    power2OutletTable OBJECT-TYPE
            SYNTAX  SEQUENCE OF Power2OutletEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "A table list the status of all outlets. "
            ::= { powerTables 2 }

    power2OutletEntry OBJECT-TYPE
            SYNTAX  Power2OutletEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "Row definition for the status list."
            INDEX       { p2OutletSeq }
            ::= { power2OutletTable 1 }

    Power2OutletEntry ::= SEQUENCE {
            p2OutletSeq           INTEGER,
            p2OutletNo            DisplayString,
            p2OutletDesc          DisplayString,
            p2OutletSocket        DisplayString,
            p2OutletFuse          DisplayString,
            p2OutletOnOff         INTEGER,
            p2OutletLoad          INTEGER,
            p2OutletLoadLowLimit  INTEGER,
            p2OutletLoadHighLimit INTEGER,
            p2OutletEnergy        INTEGER,
            p2Power               INTEGER,
            p2PowerFactor         INTEGER}

    p2OutletSeq OBJECT-TYPE
            SYNTAX  INTEGER(0..47)
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sequence of table."
            ::= { power2OutletEntry 1 }

    p2OutletNo OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's No."
            ::= { power2OutletEntry 2 }

    p2OutletDesc OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Outlet's description."
            ::= { power2OutletEntry 3 }

    p2OutletSocket OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's socket standard description."
            ::= { power2OutletEntry 4 }

    p2OutletFuse OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's fuse status. Normal or Alarm."
            ::= { power2OutletEntry 5 }

    p2OutletOnOff OBJECT-TYPE
            SYNTAX      INTEGER{none(-1),off(0),on(1)}
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's ON/OFF status."
            ::= { power2OutletEntry 6 }

    p2OutletLoad OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's load amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power2OutletEntry 7 }

    p2OutletLoadLowLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's load low-limit in amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power2OutletEntry 8 }

    p2OutletLoadHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's load high-limit in amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power2OutletEntry 9 }

    p2OutletEnergy OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth kWh"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's energy (unit in 0.01kWh).
                A non-negative value indicates the measured energy hundredth of kWh.
                A negative value indicates that the energy value was not available."
            ::= { power2OutletEntry 10 }

    p2Power OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's active power (unit in 0.01W).
                A non-negative value indicates the measured active power hundredth of W.
                A negative value indicates that the active power value was not available."
            ::= { power2OutletEntry 11 }

    p2PowerFactor OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's power factor (unit in 0.01).
                A non-negative value indicates the measured power factor hundredth.
                A negative value indicates that the power factor value was not available."
            ::= { power2OutletEntry 12 }

    -- **********************************************
    --                  power3
    -- **********************************************

    power3OutletTable OBJECT-TYPE
            SYNTAX  SEQUENCE OF Power3OutletEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "A table list the status of all outlets. "
            ::= { powerTables 3 }

    power3OutletEntry OBJECT-TYPE
            SYNTAX  Power3OutletEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "Row definition for the status list."
            INDEX       { p3OutletSeq }
            ::= { power3OutletTable 1 }

    Power3OutletEntry ::= SEQUENCE {
            p3OutletSeq           INTEGER,
            p3OutletNo            DisplayString,
            p3OutletDesc          DisplayString,
            p3OutletSocket        DisplayString,
            p3OutletFuse          DisplayString,
            p3OutletOnOff         INTEGER,
            p3OutletLoad          INTEGER,
            p3OutletLoadLowLimit  INTEGER,
            p3OutletLoadHighLimit INTEGER,
            p3OutletEnergy        INTEGER,
            p3Power               INTEGER,
            p3PowerFactor         INTEGER}

    p3OutletSeq OBJECT-TYPE
            SYNTAX  INTEGER(0..47)
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sequence of table."
            ::= { power3OutletEntry 1 }

    p3OutletNo OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's No."
            ::= { power3OutletEntry 2 }

    p3OutletDesc OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Outlet's description."
            ::= { power3OutletEntry 3 }

    p3OutletSocket OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's socket standard description."
            ::= { power3OutletEntry 4 }

    p3OutletFuse OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's fuse status. Normal or Alarm."
            ::= { power3OutletEntry 5 }

    p3OutletOnOff OBJECT-TYPE
            SYNTAX      INTEGER{none(-1),off(0),on(1)}
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's ON/OFF status."
            ::= { power3OutletEntry 6 }

    p3OutletLoad OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's load amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power3OutletEntry 7 }

    p3OutletLoadLowLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's load low-limit in amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power3OutletEntry 8 }

    p3OutletLoadHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Outlet's load high-limit in amperes.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { power3OutletEntry 9 }

    p3OutletEnergy OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth kWh"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's energy (unit in 0.01kWh).
                A non-negative value indicates the measured energy hundredth of kWh.
                A negative value indicates that the energy value was not available."
            ::= { power3OutletEntry 10 }

    p3Power OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's active power (unit in 0.01W).
                A non-negative value indicates the measured active power hundredth of W.
                A negative value indicates that the active power value was not available."
            ::= { power3OutletEntry 11 }

    p3PowerFactor OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Outlet's power factor (unit in 0.01).
                A non-negative value indicates the measured power factor hundredth.
                A negative value indicates that the power factor value was not available."
            ::= { power3OutletEntry 12 }

    -- **********************************************
    --                  power Branch
    -- **********************************************

    powerBranchTable OBJECT-TYPE
            SYNTAX  SEQUENCE OF powerBranchEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "A table list the status of all branchs. "
            ::= { powerTables 4 }

    powerBranchEntry OBJECT-TYPE
            SYNTAX  powerBranchEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "Row definition for the status list."
            INDEX       { branchSeq }
            ::= { powerBranchTable 1 }

    powerBranchEntry ::= SEQUENCE {
            branchSeq             INTEGER,
            branchRate            INTEGER,
            branchVoltage         INTEGER,
            branchEnergy          INTEGER,
            branchPower           INTEGER,
            branchPowerFactor     INTEGER,          
            branchLoad            INTEGER,
            branchLoadHighLimit   INTEGER}
 
    branchSeq OBJECT-TYPE
            SYNTAX  INTEGER(0..7)
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sequence of table."
            ::= { powerBranchEntry 1 }
            
    branchRate OBJECT-TYPE
            SYNTAX      INTEGER(-1..6400)
            UNITS       "hundredth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "Branch rated current (unit in 0.01A).
                A non-negative value indicates the measured load in hundredth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerBranchEntry 2 }

   branchVoltage OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "tenth V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The voltage of branch (unit in 0.1V).
                A non-negative value indicates the measured voltage in tenth of volts.
                A negative value indicates that a voltage value was not available."
            ::= { powerBranchEntry 3 }
            
    branchEnergy OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "tenth kWh"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The energy of branch (unit in 0.1kWh).
                A non-negative value indicates the measured energy tenth of kWh.
                A negative value indicates that the energy value was not available."
            ::= { powerBranchEntry 4 }

    branchPower OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The active power of branch (unit in W).
                A non-negative value indicates the measured active power.
                A negative value indicates that the active power value was not available."
            ::= { powerBranchEntry 5 }

    branchPowerFactor OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The power factor of branch (unit in 0.01).
                A non-negative value indicates the measured power factor hundredth.
                A negative value indicates that the power factor value was not available."
            ::= { powerBranchEntry 6 }
            
    branchLoad OBJECT-TYPE
            SYNTAX      INTEGER
            UNITS       "hundredth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The load of branch (unit in 0.01A).
                A non-negative value indicates the measured load in hundredth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerBranchEntry 7 }

    branchLoadHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..6400)
            UNITS       "hundredth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "Branch's load high-limit in amperes.
                A non-negative value indicates the measured load in hundredth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerBranchEntry 8 }

    -- **********************************************
    --                  power summary
    -- **********************************************

    powerSummaryTable OBJECT-TYPE
            SYNTAX  SEQUENCE OF PowerSummaryEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "A table list the summary status information for all PDUs."
            ::= { powerTables 5 }

    powerSummaryEntry OBJECT-TYPE
            SYNTAX  PowerSummaryEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "Row definition for the status list."
            INDEX       { powerSeq }
            ::= { powerSummaryTable 1 }

    PowerSummaryEntry ::= SEQUENCE {
            powerSeq            INTEGER,
            powerID             DisplayString,
            powerName           DisplayString,
            powerType           DisplayString,
            powerModel          DisplayString,
            powerOnGap          INTEGER,
            totalLoadA          INTEGER,
            totalLoadALowLimit  INTEGER,
            totalLoadAHighLimit INTEGER,
            totalLoadB          INTEGER,
            totalLoadBLowLimit  INTEGER,
            totalLoadBHighLimit INTEGER,
            totalLoadC          INTEGER,
            totalLoadCLowLimit  INTEGER,
            totalLoadCHighLimit INTEGER,
            voltageA            INTEGER,
            voltageB            INTEGER,
            voltageC            INTEGER,
            powerEnergy         INTEGER,
            activePowerA        INTEGER,
            ratedPowerA         INTEGER,
            remainPowerA        INTEGER,
            apparentPowerA      INTEGER,
            powerFactorA        INTEGER,
            activePowerB        INTEGER,
            ratedPowerB         INTEGER,
            remainPowerB        INTEGER,
            apparentPowerB      INTEGER,
            powerFactorB        INTEGER,
            activePowerC        INTEGER,
            ratedPowerC         INTEGER,
            remainPowerC        INTEGER,
            apparentPowerC      INTEGER,
            powerFactorC        INTEGER,
            atsInput            DisplayString,
            atsPriority         DisplayString,
            atsAVoltage         INTEGER,
            atsBVoltage         INTEGER,
            atsAEnergy          INTEGER,
            atsBEnergy          INTEGER,
            atsSwitchLow        INTEGER,
            atsSwitchHigh       INTEGER,
            atsSwitchTime       INTEGER,
            atsSwitchLock       DisplayString,
            atsMonitor          DisplayString,
            allOutletsSwitch    INTEGER,          
            frequency           INTEGER,
            voltageALowLimit    INTEGER,
            voltageAHighLimit   INTEGER,
            voltageBLowLimit    INTEGER,
            voltageBHighLimit   INTEGER,
            voltageCLowLimit    INTEGER,
            voltageCHighLimit   INTEGER}

    powerSeq OBJECT-TYPE
            SYNTAX  INTEGER(0..0)
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sequence of table."
            ::= { powerSummaryEntry 1 }

    powerID OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Outlet's No."
            ::= { powerSummaryEntry 2 }

    powerName OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..30))
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The PDU description."
            ::= { powerSummaryEntry 3 }

    powerType OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The PDU type."
            ::= { powerSummaryEntry 4 }

    powerModel OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The PDU type."
            ::= { powerSummaryEntry 5 }

    powerOnGap OBJECT-TYPE
            SYNTAX  INTEGER(0..255)
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "The interval of outlets' of the PDU when power on."
            ::= { powerSummaryEntry 6 }

    totalLoadA OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The A total load of the PDU when it is Three-phase input,
                or the total load of the PDU when it is Single-phase input.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 7 }

    totalLoadALowLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The A total load low limit of the PDU when it is Three-phase input,
                or the total load of the PDU when it is Single-phase input.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 8 }

    totalLoadAHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The A total load high limit of the PDU when it is Three-phase input,
                or the total load of the PDU when it is Single-phase input.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 9 }

    totalLoadB OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The B total load of the PDU when it is Three-phase input.
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 10 }

    totalLoadBLowLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The B total load low limit of the PDU when it is Three-phase input,
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 11 }

    totalLoadBHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The B total load high limit of the PDU when it is Three-phase input,
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 12 }

    totalLoadC OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The C total load of the PDU when it is Three-phase input,
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 13 }

    totalLoadCLowLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The C total load low limit of the PDU when it is Three-phase input,
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 14 }

    totalLoadCHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..640)
            UNITS       "tenth A"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The C total load high limit of the PDU when it is Three-phase input,
                A non-negative value indicates the measured load in tenth of amperes.
                A negative value indicates that a load value was not available."
            ::= { powerSummaryEntry 15 }

    voltageA OBJECT-TYPE
            SYNTAX      INTEGER(-1..500)
            UNITS       "V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The A voltage of the PDU when it is Three-phase input,
                or the voltage of the PDU when it is Single-phase input,
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 16 }

    voltageB OBJECT-TYPE
            SYNTAX      INTEGER(-1..500)
            UNITS       "V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The B voltage of the PDU when it is Three-phase input,
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 17 }

    voltageC OBJECT-TYPE
            SYNTAX      INTEGER(-1..500)
            UNITS       "V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The C voltage of the PDU when it is Three-phase input,
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 18 }

    powerEnergy OBJECT-TYPE
            SYNTAX      INTEGER(-1..2147483647)
            UNITS       "tenth kWh"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The ACC. energy of the PDU,
                A non-negative value indicates the measured value in tenth of kWh.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 19 }

    activePowerA OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The active power of the input power A.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 20 }

    ratedPowerA OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The rated power of the input power B.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 21 }

    remainPowerA OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The remain power of the input power A.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 22 }

    apparentPowerA OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The apparent power of the input power A.
                A non-negative value indicates the measured value in tenth of W.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 23 }

    powerFactorA OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "hundredth"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The power factor of the input power A.
                A non-negative value indicates the power factor in hundredth.
                A negative value indicates that the power factor was not able to be measured."
            ::= { powerSummaryEntry 24 }

    activePowerB OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The active power of the input power B.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 25 }

    ratedPowerB OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The rated power of the input power B.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 26 }

    remainPowerB OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The remain power of the input power B.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 27 }

    apparentPowerB OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The apparent power of the input power B.
                A non-negative value indicates the measured value in tenth of W.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 28 }

    powerFactorB OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "hundredth"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The power factor of the input power B.
                A non-negative value indicates the power factor in hundredth.
                A negative value indicates that the power factor was not able to be measured."
            ::= { powerSummaryEntry 29 }

    activePowerC OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The active power of the input power C.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 30 }

    ratedPowerC OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The rated power of the input power C.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 31 }

    remainPowerC OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The remain power of the input powerC.
                A non-negative value indicates the measured value in tenth of watts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 32 }

    apparentPowerC OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "tenth W"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The apparent power of the input power C.
                A non-negative value indicates the measured value in tenth of W.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 33 }

    powerFactorC OBJECT-TYPE
            SYNTAX      INTEGER(-1..14417700)
            UNITS       "hundredth"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The power factor of the input power C.
                A non-negative value indicates the power factor in hundredth.
                A negative value indicates that the power factor was not able to be measured."
            ::= { powerSummaryEntry 34 }

    atsInput OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The power input of ATS, which would be A or B."
            ::= { powerSummaryEntry 35 }

    atsPriority OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..10))
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The priority input of ATS."
            ::= { powerSummaryEntry 36 }

    atsAVoltage OBJECT-TYPE
            SYNTAX      INTEGER(-1..500)
            UNITS       "V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The A voltage of ATS,
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 37 }

    atsBVoltage OBJECT-TYPE
            SYNTAX      INTEGER(-1..500)
            UNITS       "V"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The B voltage of ATS,
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 38 }

    atsAEnergy OBJECT-TYPE
            SYNTAX      INTEGER(-1..2147483647)
            UNITS       "tenth kWh"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The A energy of ATS,
                A non-negative value indicates the measured value in tenth of kWh.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 39 }

    atsBEnergy OBJECT-TYPE
            SYNTAX      INTEGER(-1..2147483647)
            UNITS       "tenth kWh"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The B energy of ATS,
                A non-negative value indicates the measured value in tenth of kWh.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 40 }

    atsSwitchLow OBJECT-TYPE
            SYNTAX      INTEGER(-1..500)
            UNITS       "V"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The switch voltage low-limit of ATS,
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 41 }

    atsSwitchHigh OBJECT-TYPE
            SYNTAX      INTEGER(-1..500)
            UNITS       "V"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The switch voltage high-limit of ATS,
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 42 }

    atsSwitchTime OBJECT-TYPE
            SYNTAX      INTEGER(-1..255)
            UNITS       "min"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The switch time of ATS.
                A non-negative value indicates the measured load in minutes.
                A negative value indicates that a time value was not available."
            ::= { powerSummaryEntry 43 }

    atsSwitchLock OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..10))
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The switch lock status of ATS."
            ::= { powerSummaryEntry 44 }

    atsMonitor OBJECT-TYPE
            SYNTAX      DisplayString(SIZE(0..10))
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The stability monitor status of ATS."
            ::= { powerSummaryEntry 45 }

    allOutletsSwitch OBJECT-TYPE
            SYNTAX      INTEGER{none(-1),off(0),on(1)}
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "To set the switches of all outlets belong to this Power(PDU).
                A negative value none(-1) would be returned for GET command. Nothing to do when SET with the value none(-1)."
            ::= { powerSummaryEntry 46 }

    frequency OBJECT-TYPE
            SYNTAX      INTEGER(-1..65)
            UNITS       "Hz"
            MAX-ACCESS  read-only
            STATUS      current
            DESCRIPTION
                "The frequency value of the input.
                A non-negative value indicates the measured value in hertz."
            ::= { powerSummaryEntry 47 }
			
    voltageALowLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The A voltage low limit of the PDU when it is Three-phase input,
				or the voltage low limit of the PDU when it is Single-phase input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 48 }
			
    voltageAHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The A voltage high limit of the PDU when it is Three-phase input,
				or the voltage high limit of the PDU when it is Single-phase input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 49 }
			
    voltageBLowLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The B voltage low limit of the PDU when it is Three-phase input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 50 }
            
    voltageBHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The B voltage high limit of the PDU when it is Three-phase input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 51 }

    voltageCLowLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The C voltage low limit of the PDU when it is Three-phase input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 52 }
			
    voltageCHighLimit OBJECT-TYPE
            SYNTAX      INTEGER(-1..5000)
            UNITS       "V"
            MAX-ACCESS  read-write
            STATUS      current
            DESCRIPTION
                "The C voltage high limit of the PDU when it is Three-phase input.
                A non-negative value indicates the measured value in volts.
                A negative value indicates that a value was not available."
            ::= { powerSummaryEntry 53 }
    -- **********************************************
    --                  sensor tables
    -- **********************************************

    environmentTable OBJECT IDENTIFIER ::= {pduAts 3}

    sensorTable OBJECT-TYPE
            SYNTAX  SEQUENCE OF SensorEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "A table list the status of all sensors. "
            ::= { environmentTable 1 }

    sensorEntry OBJECT-TYPE
            SYNTAX  SensorEntry
            MAX-ACCESS  not-accessible
            STATUS  current
            DESCRIPTION
                "Row definition for the status list."
            INDEX       { sensorSeq }
            ::= { sensorTable 1 }

    SensorEntry ::= SEQUENCE {
            sensorSeq            INTEGER,
            sensorNo             DisplayString,
            sensorType           DisplayString,
            sensorID             DisplayString,
            sensorLocation       DisplayString,
            sensorValue          DisplayString,
            temperatureValue     INTEGER,
            temperatureLowLimit  INTEGER,
            temperatureHighLimit INTEGER,
            humidityValue        INTEGER,
            humidityLowLimit     INTEGER,
            humidityHighLimit    INTEGER,
            windValue            INTEGER,
            windLowLimit         INTEGER,
            windHighLimit        INTEGER}

    sensorSeq OBJECT-TYPE
            SYNTAX  INTEGER(0..7)
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sequence of table."
            ::= { sensorEntry 1 }

    sensorNo OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sensor's No."
            ::= { sensorEntry 2 }

    sensorType OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sensor's Type."
            ::= { sensorEntry 3 }

    sensorID OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..10))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sensor's ID."
            ::= { sensorEntry 4 }

    sensorLocation OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Sensor's location."
            ::= { sensorEntry 5 }

    sensorValue OBJECT-TYPE
            SYNTAX  DisplayString(SIZE(0..30))
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Sensor's value of smog/door/water."
            ::= { sensorEntry 6 }

    temperatureValue OBJECT-TYPE
            SYNTAX  INTEGER(-40..120)
            UNITS       "Deg.C or Deg.F"
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "Temperature Value.
                NOTE: the UNIT is Deg.C or Deg.F which is select from the setting WEB page."
            ::= { sensorEntry 7 }

    temperatureLowLimit OBJECT-TYPE
            SYNTAX  INTEGER(-40..120)
            UNITS       "Deg.C or Deg.F"
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Temperature low limit.
                NOTE: the UNIT is Deg.C or Deg.F which is select from the setting WEB page."
            ::= { sensorEntry 8 }

    temperatureHighLimit OBJECT-TYPE
            SYNTAX  INTEGER(-40..120)
            UNITS       "Deg.C or Deg.F"
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Temperature high limit.
                NOTE: the UNIT is Deg.C or Deg.F which is select from the setting WEB page."
            ::= { sensorEntry 9 }

    humidityValue OBJECT-TYPE
            SYNTAX  INTEGER(-1..100)
            UNITS       "percentage relative humidity"
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "The humidity measured by the sensor.  A non-negative value
                indicates the measured humidity in percentage relative
                humidity.  A negative value indicates that a humidity value
                was not available."
            ::= { sensorEntry 10 }

    humidityLowLimit OBJECT-TYPE
            SYNTAX  INTEGER(0..100)
            UNITS       "percentage relative humidity"
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Humidity low limit."
            ::= { sensorEntry 11 }

    humidityHighLimit OBJECT-TYPE
            SYNTAX  INTEGER(0..100)
            UNITS       "percentage relative humidity"
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Humidity high limit."
            ::= { sensorEntry 12 }

    windValue OBJECT-TYPE
            SYNTAX  INTEGER(0..836)
            UNITS       "tenth of ft/s or m/s"
            MAX-ACCESS  read-only
            STATUS  current
            DESCRIPTION
                "The wind speed is measured by the sensor.  A non-negative value
                indicates the measured wind speed. A negative value indicates that
                a wind speed value was not available.
                NOTE: When the unit is selected as m/s, a value of 123 means 12.3m/s. If the value is 255,
                means the wind speed is equal to or great than 25.5m/s.
                NOTE: when unit is ft/s: range would be (0..836); when unit is m/s: range would be (0..255).
                NOTE: the UNIT is tenth of ft/s or m/s which is select from the setting WEB page."
            ::= { sensorEntry 13 }

    windLowLimit OBJECT-TYPE
            SYNTAX  INTEGER(0..836)
            UNITS       "tenth of ft/s or m/s"
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Wind speed low limit. see windValue for more detail."
            ::= { sensorEntry 14 }

    windHighLimit OBJECT-TYPE
            SYNTAX  INTEGER(0..836)
            UNITS       "tenth of ft/s or m/s"
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION
                "Wind speed high limit. see windValue for more detail."
            ::= { sensorEntry 15 }

    -- **********************************************
    --                  Notifications
    -- **********************************************

    netPowerTraps OBJECT IDENTIFIER ::= { pduAts 100 }

    netPowerPduAtsEvents OBJECT IDENTIFIER ::= { netPowerTraps 1 }

    fuseEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                eventSource,
                powerDescr,
                sourceID,
                eventType}
            STATUS      current
            DESCRIPTION
                "Fuse event for the PDU outlets. The event would occurred when the fuse is burned/repaired.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 1 }

    loadEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                eventSource,
                powerDescr,
                sourceID,
                eventType,
                loadValue,
                loadLowValue,
                loadHighValue}
            STATUS      current
            DESCRIPTION
                "Load event for the PDU outlets and total power. The event would occurred when load is
                lower/higher than the limit setting or recovery to normal.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 2 }

    temperatureSensorEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                sensorDescr,
                powerDescr,
                sourceID,
                eventType,
                temperatureValue,
                temperatureLowLimit,
                temperatureHighLimit}
            STATUS      current
            DESCRIPTION
                "Temperature sensor event. The event would occurred when temperature value is
                lower/higher than the limit setting or recovery to normal.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 3 }

    humiditySensorEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                sensorDescr,
                powerDescr,
                sourceID,
                eventType,
                humidityValue,
                humidityLowLimit,
                humidityHighLimit}
            STATUS      current
            DESCRIPTION
                "Humidity sensor event.The event would occurred when humidity value is
                lower/higher than the limit setting or recovery to normal.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 4 }

    windSensorEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                sensorDescr,
                powerDescr,
                sourceID,
                eventType,
                windValue,
                windLowLimit,
                windHighLimit}
            STATUS      current
            DESCRIPTION
                "Wind sensor event.The event would occurred when wind speed value is
                lower/higher than the limit setting or recovery to normal.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 5 }

    environmentSensorEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                sensorDescr,
                powerDescr,
                sourceID,
                eventType}
            STATUS      current
            DESCRIPTION
                "Environment sensor event, including smog, water, door and so on. The
                event would occurred when the sensor detects an alarm or recovery.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 6 }

    atsSwitchingEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                eventSource,
                powerDescr,
                sourceID,
                eventType,
                atsAVoltage,
                atsBVoltage}
            STATUS      current
            DESCRIPTION
                "ATS switch event. The event would occurred when ATS switched the input
                power A to B, or B to A.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 7 }

    atsVoltageEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                eventSource,
                powerDescr,
                sourceID,
                eventType,
                atsSwitchLow,
                atsSwitchHigh}
            STATUS      current
            DESCRIPTION
                "ATS voltage event. The event would occurred when voltage is
                lower/higher than the limit setting or recovery to normal.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 8 }

    snmpQueryTimeoutEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                eventSource,
                powerDescr,
                sourceID,
                eventType}
            STATUS      current
            DESCRIPTION
                "Snmp Query Timeout event for the PDU snmp connection. The event would occurred when no any query until timeout is come.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 9 }
			
    voltageEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                eventSource,
                powerDescr,
                sourceID,
                eventType,
                voltageValue,
                voltageLowValue,
                voltageHighValue}
            STATUS      current
            DESCRIPTION
                "Voltage event for the PDU input. The event would occurred when voltage is
                lower/higher than the limit setting or recovery to normal.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 10 }
            
    connectEvent NOTIFICATION-TYPE
            OBJECTS {
                ipAddress,
                eventDateTime,
                eventSource,
                powerDescr,
                sourceID,
                eventType}
            STATUS      current
            DESCRIPTION
                "Connect event for the PDU failure. The event would occurred when the power module 
				or outlets module is disconnect/repaired.
                NMS can check the bound OID 'eventType' for handling the trap."
            ::= { netPowerPduAtsEvents 11 }            
END
------------------------------------------------------------------------------------------------------------------------
