IPDUSX DEFINITIONS ::= BEGIN
IMPORTS
   NOTIFICATION-GROUP, OBJECT-GROUP             FROM SNMPv2-CONF
   MODULE-IDENTITY, OBJECT-TYPE, 
   NOTIFICATION-TYPE, enterprises,
   Integer32                                    FROM  SNMPv2-SMI
   DisplayString                                FROM  SNMPv2-TC;
      
ipdusx MODULE-IDENTITY
     LAST-UPDATED "201301210000Z"
     ORGANIZATION "Network Technologies Inc."
     CONTACT-INFO 
         "Network Technologies Inc.
         
          Postal: 1275 Danner Dr,
                  Aurora, OH 442022
                  US
                 
          Tel: 330-562-7070
          Fax: 330-562-1999
             
          WEB: www.networktechinc.com"
	 
     DESCRIPTION 
         "NTI IPDU-SX Secure Remote Power Reboot Switch MIB file." 

    
     REVISION     "201301210000Z" 
         DESCRIPTION  "Rev. 1.01 - fixed read-write attributes"
     REVISION     "201011020000Z" 
         DESCRIPTION  "Rev. 1.00 - initial version"
     ::= { hardware 6 }

-- the root of the subtree for Network Technologies Inc
nti		        OBJECT IDENTIFIER ::= { enterprises 3699 }

-- subtree for products
products		        OBJECT IDENTIFIER ::= { nti 1 }
hardware		        OBJECT IDENTIFIER ::= { products 1 }
software		        OBJECT IDENTIFIER ::= { products 2 }
otherProduct            	OBJECT IDENTIFIER ::= { hardware 200 }

-- ipdusx subtree
masterUnit	        OBJECT IDENTIFIER ::= { ipdusx 1 }
envTraps                OBJECT IDENTIFIER ::= { ipdusx 100 }
hostSystem              OBJECT IDENTIFIER ::= { masterUnit 1 }
users                   OBJECT IDENTIFIER ::= { masterUnit 2 }
groups			OBJECT IDENTIFIER ::= { masterUnit 3 }
intSensors		OBJECT IDENTIFIER ::= { masterUnit 4 }
extSensors		OBJECT IDENTIFIER ::= { masterUnit 5 }
rlyOutputs		OBJECT IDENTIFIER ::= { masterUnit 7 }
ipDevices 		OBJECT IDENTIFIER ::= { masterUnit 8 }
envGroups               OBJECT IDENTIFIER ::= { masterUnit 200 }

-- groups

sysGroup                OBJECT-GROUP
    OBJECTS             { sysTime, sysEnterpriseName, sysEnterpriseLocation, sysEnterpriseContact, sysEnterprisePhone }
    STATUS              current
    DESCRIPTION         "System parameters group"
    ::= {envGroups 1}

intSensorsGrp           OBJECT-GROUP
    OBJECTS             { intSensorIndex, intSensorType, intSensorDescription, intSensorGroupNb, intSensorGroup,
                        intSensorValue, intSensorUnit, intSensorUnitName, intSensorStatus, intSensorMinThreshold, intSensorMaxThreshold }
    STATUS              current
    DESCRIPTION         "Line monitor group"
    ::= {envGroups 2}
    

extSensorsGrp           OBJECT-GROUP
    OBJECTS             { extSensorIndex, extSensorType, extSensorDescription, extSensorConnector, extSensorGroupNb, extSensorGroup,
                        extSensorValue, extSensorUnit, extSensorUnitName, extSensorStatus, extSensorMinThreshold, extSensorMaxThreshold }
    STATUS              current
    DESCRIPTION         "External sensors group"
    ::= {envGroups 3}

rlyOutputGrp            OBJECT-GROUP
    OBJECTS             { rlyOutputIndex, rlyOutputDescription, rlyOutputGroupNb, rlyOutputGroup, rlyOutputValue, rlyOutputNormalValue }
    STATUS              current
    DESCRIPTION         "Relay outputs group"
    ::= {envGroups 5}

ipDeviceGrp            OBJECT-GROUP
    OBJECTS             { ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceGroupNb, ipDeviceGroup, ipDeviceTimeout, ipDeviceRetries, 
                        ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "IP devices group"
    ::= {envGroups 6}


miscTrapFields          OBJECT-GROUP
    OBJECTS             { envTrapDescription, envTrapValue }
    STATUS              current
    DESCRIPTION         "General Information Traps"
    ::= {envGroups 8}

intSensorTrapGrp        NOTIFICATION-GROUP
    NOTIFICATIONS       { intSensor1Trap, intSensor2Trap, intSensor3Trap, intSensor4Trap, intSensor5Trap, intSensor6Trap, intSensor7Trap, intSensor8Trap }
    STATUS              current
    DESCRIPTION         "Line Monitor Traps Group"
    ::= {envGroups 9}
    
extSensorTrapGrp        NOTIFICATION-GROUP
    NOTIFICATIONS       { extSensor1Trap, extSensor2Trap, extSensor3Trap, extSensor4Trap, extSensor5Trap, extSensor6Trap, extSensor7Trap, extSensor8Trap }
    STATUS              current
    DESCRIPTION         "External Sensors Traps Group"
    ::= {envGroups 10}
    
rlyOutputTrapGrp        NOTIFICATION-GROUP
    NOTIFICATIONS       { rlyOutput1Trap, rlyOutput2Trap, rlyOutput3Trap, rlyOutput4Trap, rlyOutput5Trap, rlyOutput6Trap, rlyOutput7Trap, rlyOutput8Trap }
    STATUS              current
    DESCRIPTION         "Relay Outputs Traps Group"
    ::= {envGroups 12}

ipDeviceTrapGrp        NOTIFICATION-GROUP
    NOTIFICATIONS       { ipDevice1Trap, ipDevice2Trap, ipDevice3Trap, ipDevice4Trap, ipDevice5Trap, ipDevice6Trap, ipDevice7Trap, ipDevice8Trap, 
                        ipDevice9Trap,  ipDevice10Trap, ipDevice11Trap, ipDevice12Trap, ipDevice13Trap, ipDevice14Trap, ipDevice15Trap, ipDevice16Trap }
    STATUS              current
    DESCRIPTION         "IP Device Traps Group"
    ::= {envGroups 13}

miscNotificationGrp    NOTIFICATION-GROUP
    NOTIFICATIONS       { evLogFileTrap, dataLogFileTrap, remoteDataLogFileTrap}
    STATUS              current
    DESCRIPTION         "Other Traps Group"
    ::= {envGroups 14}

-- hostSystem subtree

sysTime					OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION		    "System time"
	::= { hostSystem 1 }

sysEnterpriseName		OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION		    "Enterprise Name"
	::= { hostSystem 2 }

sysEnterpriseLocation	OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION		    "Enterprise Location"
	::= { hostSystem 3 }

sysEnterpriseContact	OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION		    "Enterprise Contact"
	::= { hostSystem 4 }

sysEnterprisePhone  	OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION		    "Enterprise Phone"
	::= { hostSystem 5 }


-- internal sensors description

intSensorTable			OBJECT-TYPE
	SYNTAX	            SEQUENCE OF	IntSensorEntry
	MAX-ACCESS          not-accessible
	STATUS	            current
	DESCRIPTION         "Table of Line Monitor Sensor entries"
	::= { intSensors 1 }

intSensorEntry     		OBJECT-TYPE
    SYNTAX              IntSensorEntry
	MAX-ACCESS          not-accessible
	STATUS	            current
	DESCRIPTION         "An line monitor entry"
	INDEX               { intSensorIndex }
	::= { intSensorTable 1 }

IntSensorEntry ::= 
	SEQUENCE {
		intSensorIndex
			Integer32,
		intSensorType
			INTEGER,
		intSensorDescription
			DisplayString,
		intSensorGroupNb
			Integer32,
		intSensorGroup
			DisplayString,
        intSensorValue
            Integer32,
		intSensorUnit
			Integer32,
		intSensorUnitName
			DisplayString,
		intSensorStatus
			INTEGER,
		intSensorMinThreshold
			Integer32,
		intSensorMaxThreshold						
			Integer32
	}

intSensorIndex			OBJECT-TYPE
	SYNTAX				Integer32 (1..3)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The index of the line monitor sensor entry 1..12"
	::= { intSensorEntry 1 }

intSensorType		    OBJECT-TYPE
	SYNTAX				INTEGER { undefined(0), voltage(1), current(2), frequency(3), breaker(4) }
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Sensor Type"
	::= { intSensorEntry 2 }

intSensorDescription    OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Internal Sensor Description"
	::= { intSensorEntry 3 }
    
intSensorGroupNb        OBJECT-TYPE
	SYNTAX				Integer32 (0..15)
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Internal Sensor Group Number"
	::= { intSensorEntry 4 }
    
intSensorGroup          OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Internal Sensor Group Name"
	::= { intSensorEntry 5 }
    
intSensorValue			OBJECT-TYPE
	SYNTAX				Integer32 (0..1000)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The value of the internal sensor reading. For  power it is presented in tenths of degrees/volts"
	::= { intSensorEntry 6 }
	
intSensorUnit			OBJECT-TYPE
	SYNTAX				Integer32 (0..1)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The measuremnet unit for this sensor. It is important only if internal temperature sensor is present"
	::= { intSensorEntry 7 }
	
intSensorUnitName   	OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The measuremnet unit for this sensor in readable format"
	::= { intSensorEntry 8 }
	
intSensorStatus			OBJECT-TYPE
	SYNTAX				INTEGER {notconnected(0), normal(1), prealert(2), alert(3), acknowledged(4), dismissed(5), disconnected(6) }
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The status of the sensor"
	::= { intSensorEntry 9 }
	
intSensorMinThreshold	OBJECT-TYPE
	SYNTAX				Integer32 (0..1000)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The value of the line monitor sensor lower threshold"
	::= { intSensorEntry 10 }
	
intSensorMaxThreshold	OBJECT-TYPE
	SYNTAX				Integer32 (0..1000)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The value of the line monitor sensor upper threshold"
	::= { intSensorEntry 11 }
	

-- external sensors description

extSensorTable			OBJECT-TYPE
	SYNTAX	            SEQUENCE OF	ExtSensorEntry
	MAX-ACCESS          not-accessible
	STATUS	            current
	DESCRIPTION         "Table of external Sensors entries"
	::= { extSensors 1 }

extSensorEntry     		OBJECT-TYPE
    SYNTAX              ExtSensorEntry
	MAX-ACCESS          not-accessible
	STATUS	            current
	DESCRIPTION         "An external sensor entry"
	INDEX               { extSensorIndex }
	::= { extSensorTable 1 }

ExtSensorEntry ::= 
	SEQUENCE {
		extSensorIndex
			Integer32,
		extSensorType
			INTEGER,
		extSensorDescription
			DisplayString,
		extSensorConnector
			Integer32,
		extSensorGroupNb
			Integer32,
		extSensorGroup
			DisplayString,
        extSensorValue
            INTEGER,
		extSensorUnit
			Integer32,
		extSensorUnitName
			DisplayString,
		extSensorStatus
			INTEGER,
		extSensorMinThreshold
			Integer32,
		extSensorMaxThreshold
			Integer32
	}

extSensorIndex			OBJECT-TYPE
	SYNTAX				Integer32 (1..4)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The index of the external sensor entry 1..4"
	::= { extSensorEntry 1 }

extSensorType		    OBJECT-TYPE
	SYNTAX				INTEGER { undefined(0), temperature(1), humidity(2), power(3), lowVoltage(4), current(5), aclmvVoltage(6), aclmpVoltage(7), aclmpPower(8),water(9), smoke(10), vibration(11), motion(12), glass(13), door(14), keypad(15), panicButton(16), keyStation(17), dryContact(18), tempHum(513), custom(32767), temperatureCombo(32769), humidityCombo(32770) }
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Sensor Type"
	::= { extSensorEntry 2 }

extSensorDescription    OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Sensor Description"
	::= { extSensorEntry 3 }
    
extSensorConnector      OBJECT-TYPE
	SYNTAX				Integer32 (1..2)
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Connector where the sensor is attached"
	::= { extSensorEntry 4 }
    
extSensorGroupNb        OBJECT-TYPE
	SYNTAX				Integer32 (1..2)
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Sensor's Group"
	::= { extSensorEntry 5 }
    
extSensorGroup          OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Sensor's Group Name"
	::= { extSensorEntry 6 }
    
extSensorValue			OBJECT-TYPE
	SYNTAX				INTEGER { closed(0), open(1) }
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The value of the external sensor reading. For temperature, voltage, current or low voltage,  it is presented in tenths of degrees/volts"
	::= { extSensorEntry 7 }
	
extSensorUnit			OBJECT-TYPE
	SYNTAX				Integer32 (0..1)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The measuremnet unit for this sensor. It is important only for temperature"
	::= { extSensorEntry 8 }
	
extSensorUnitName   	OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The measuremnet unit for this sensor in readable format"
	::= { extSensorEntry 9 }
	
extSensorStatus			OBJECT-TYPE
	SYNTAX				INTEGER {notconnected(0), normal(1), prealert(2), alert(3), acknowledged(4), dismissed(5), disconnected(6) }
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The status of the sensor"
	::= { extSensorEntry 10 }
	
extSensorMinThreshold	OBJECT-TYPE
	SYNTAX				Integer32 (0..1000)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The value of the sensor lower threshold"
	::= { extSensorEntry 11 }
	
extSensorMaxThreshold	OBJECT-TYPE
	SYNTAX				Integer32 (0..1000)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The value of the sensor upper threshold"
	::= { extSensorEntry 12 }
	
	
-- Relay outputs description

rlyOutputTable          OBJECT-TYPE
    SYNTAX              SEQUENCE OF RlyOutputEntry
	MAX-ACCESS          not-accessible
	STATUS	            current
	DESCRIPTION         "Table of Relay Outputs entries"
	::= { rlyOutputs 1 }

rlyOutputEntry    		OBJECT-TYPE
    SYNTAX              RlyOutputEntry
	MAX-ACCESS          not-accessible
	STATUS	            current
	DESCRIPTION         "A Relay Output entry"
	INDEX               { rlyOutputIndex }
	::= { rlyOutputTable 1 }

RlyOutputEntry ::= 
	SEQUENCE {
		rlyOutputIndex
			Integer32,
		rlyOutputDescription
			DisplayString,
		rlyOutputGroupNb
			Integer32,
		rlyOutputGroup
			DisplayString,
        rlyOutputValue
			INTEGER,
        rlyOutputNormalValue
            INTEGER
	}

rlyOutputIndex			OBJECT-TYPE
	SYNTAX				Integer32 (1..8)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The index of the control output entry 1..8"
	::= { rlyOutputEntry 1 }

rlyOutputDescription    OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Relay Output Description"
	::= { rlyOutputEntry 2 }
    
rlyOutputGroupNb        OBJECT-TYPE
	SYNTAX				Integer32 (1..2)
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Relay Output's Group Number"
	::= { rlyOutputEntry 3 }
    
rlyOutputGroup          OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Relay Output's Group Name"
	::= { rlyOutputEntry 4 }
    
rlyOutputValue			OBJECT-TYPE
	SYNTAX				INTEGER { off(0), on(1) }
	MAX-ACCESS			read-write
	STATUS				current
	DESCRIPTION	        "The value of the Relay Output reading"
	::= { rlyOutputEntry 5 }
	
rlyOutputNormalValue	OBJECT-TYPE
	SYNTAX				INTEGER { off(0), on(1) }
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The value of the Relay Output reading in normal status"
	::= { rlyOutputEntry 6 }
	
-- IP Devices description

ipDeviceTable           OBJECT-TYPE
    SYNTAX              SEQUENCE OF IpDeviceEntry
	MAX-ACCESS          not-accessible
	STATUS	            current
	DESCRIPTION         "Table of IP Devices entries"
	::= { ipDevices 1 }

ipDeviceEntry    		OBJECT-TYPE
    SYNTAX              IpDeviceEntry
	MAX-ACCESS          not-accessible
	STATUS	            current
	DESCRIPTION         "An IP Device entry"
	INDEX               { ipDeviceIndex }
	::= { ipDeviceTable 1 }

IpDeviceEntry ::= 
	SEQUENCE {
		ipDeviceIndex
			Integer32,
		ipDeviceAddress
			DisplayString,
		ipDeviceDescription
			DisplayString,
		ipDeviceGroupNb
			Integer32,
		ipDeviceGroup
			DisplayString,
		ipDeviceTimeout
			Integer32,
		ipDeviceRetries
			Integer32,
		ipDeviceValue
			INTEGER,
		ipDeviceStatus
			INTEGER
	}

ipDeviceIndex			OBJECT-TYPE
	SYNTAX				Integer32 (1..8)
	MAX-ACCESS			read-only
	STATUS				current
	DESCRIPTION	        "The index of the IP Device entry 1..8"
	::= { ipDeviceEntry 1 }

ipDeviceAddress   OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "IP Device URL"
	::= { ipDeviceEntry 2 }
    
ipDeviceDescription     OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "IP Device Description"
	::= { ipDeviceEntry 3 }
    
ipDeviceGroupNb         OBJECT-TYPE
	SYNTAX				Integer32 (1..2)
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Index of the group the IP Device belongs to"
	::= { ipDeviceEntry 4 }
    
ipDeviceGroup           OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Name of the group the IP Device belongs to"
	::= { ipDeviceEntry 5 }
    
ipDeviceTimeout         OBJECT-TYPE
	SYNTAX				Integer32 
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "IP Device ping timeout (in seconds)"
	::= { ipDeviceEntry 6 }
    
ipDeviceRetries         OBJECT-TYPE
	SYNTAX				Integer32 
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Number of ping retries to the IP device, until responding"
	::= { ipDeviceEntry 7 }
    
ipDeviceValue           OBJECT-TYPE
	SYNTAX				INTEGER { notResponding(0), responding(1) }
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Responding status"
	::= { ipDeviceEntry 8 }
    
ipDeviceStatus          OBJECT-TYPE
	SYNTAX				INTEGER {notconnected(0), normal(1), prealert(2), alert(3), acknowledged(4), dismissed(5), disconnected(6) }
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Alarm status of the IP Device"
	::= { ipDeviceEntry 9 }
    
    
-- Trap Definitions
extSensorsTraps         OBJECT IDENTIFIER ::= { envTraps 5 }
intSensorsTraps         OBJECT IDENTIFIER ::= { envTraps 6 }
rlyOutputsTraps         OBJECT IDENTIFIER ::= { envTraps 7 }
ipDevicesTraps          OBJECT IDENTIFIER ::= { envTraps 8 }

envTrapDescription      OBJECT-TYPE
	SYNTAX				DisplayString
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Message issued together with the trap to explain the reason the trap was sent"
	::= { envTraps 100 }

envTrapValue            OBJECT-TYPE
	SYNTAX				Integer32 (-1000..1000)
	MAX-ACCESS  		read-only
	STATUS				current
	DESCRIPTION	        "Message issued together with the trap to retrieve a value"
	::= { envTraps 101 }

-- sensor traps
-- Internal sensors traps
    
intSensor1Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, intSensorIndex, intSensorDescription, intSensorValue, intSensorUnitName, intSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when internal sensor 1 has a notification to send"
    ::= {intSensorsTraps 0 1 }

intSensor2Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, intSensorIndex, intSensorDescription, intSensorValue, intSensorUnitName, intSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when internal sensor 2 has a notification to send"
    ::= {intSensorsTraps 0 2 }

intSensor3Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, intSensorIndex, intSensorDescription, intSensorValue, intSensorUnitName, intSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when internal sensor 3 has a notification to send"
    ::= {intSensorsTraps 0 3 }

intSensor4Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, intSensorIndex, intSensorDescription, intSensorValue, intSensorUnitName, intSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when internal sensor 4 has a notification to send"
    ::= {intSensorsTraps 0 4 }

intSensor5Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, intSensorIndex, intSensorDescription, intSensorValue, intSensorUnitName, intSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when internal sensor 5 has a notification to send"
    ::= {intSensorsTraps 0 5 }

intSensor6Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, intSensorIndex, intSensorDescription, intSensorValue, intSensorUnitName, intSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when internal sensor 6 has a notification to send"
    ::= {intSensorsTraps 0 6 }

intSensor7Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, intSensorIndex, intSensorDescription, intSensorValue, intSensorUnitName, intSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when internal sensor 7 has a notification to send"
    ::= {intSensorsTraps 0 7 }

intSensor8Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, intSensorIndex, intSensorDescription, intSensorValue, intSensorUnitName, intSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when internal sensor 8 has a notification to send"
    ::= {intSensorsTraps 0 8 }


-- External sensors traps
    
extSensor1Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 1 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 1 }

extSensor2Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 2 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 2 }

extSensor3Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 3 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 3 }

extSensor4Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 4 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 4 }

-- slave 1
extSensor5Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 1 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 5 }

extSensor6Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 2 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 6 }

extSensor7Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 3 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 7 }

extSensor8Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 4 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 8 }

-- slave 2
extSensor9Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 1 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 9 }

extSensor10Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 2 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 10 }

extSensor11Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 3 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 11 }

extSensor12Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 4 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 12 }

-- slave 3
extSensor13Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 1 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 13 }

extSensor14Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 2 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 14 }

extSensor15Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 3 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 15 }

extSensor16Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 4 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 16 }


-- slave 4
extSensor17Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 1 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 17 }

extSensor18Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 2 (Connector #1) has a notification to send"
    ::= {extSensorsTraps 0 18 }

extSensor19Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 3 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 19 }

extSensor20Trap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, extSensorIndex, extSensorDescription, extSensorValue, extSensorUnitName, extSensorStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when external sensor 4 (Connector #2) has a notification to send"
    ::= {extSensorsTraps 0 20 }


-- Relay Outputs traps
rlyOutput1Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 1 has a notification to send"
    ::= { rlyOutputsTraps 0 1 }
    
rlyOutput2Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 2  has a notification to send"
    ::= { rlyOutputsTraps 0 2 }
    
-- slave 1
rlyOutput3Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 1 has a notification to send"
    ::= { rlyOutputsTraps 0 3 }
    
rlyOutput4Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 2  has a notification to send"
    ::= { rlyOutputsTraps 0 4 }

-- slave 2
rlyOutput5Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 1 has a notification to send"
    ::= { rlyOutputsTraps 0 5 }
    
rlyOutput6Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 2  has a notification to send"
    ::= { rlyOutputsTraps 0 6 }

-- slave 3
rlyOutput7Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 1 has a notification to send"
    ::= { rlyOutputsTraps 0 7 }
    
rlyOutput8Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 2  has a notification to send"
    ::= { rlyOutputsTraps 0 8 }

-- slave 4
rlyOutput9Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 1 has a notification to send"
    ::= { rlyOutputsTraps 0 9 }
    
rlyOutput10Trap          NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, rlyOutputIndex, rlyOutputDescription, rlyOutputValue }
    STATUS              current
    DESCRIPTION         "Trap issued when power outlet 2  has a notification to send"
    ::= { rlyOutputsTraps 0 10 }


-- IP Devices traps
ipDevice1Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #1 has a notification to send"
    ::= { ipDevicesTraps 0 1 }

ipDevice2Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #2 has a notification to send"
    ::= { ipDevicesTraps 0 2 }

ipDevice3Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #3 has a notification to send"
    ::= { ipDevicesTraps 0 3 }

ipDevice4Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #4 has a notification to send"
    ::= { ipDevicesTraps 0 4 }

ipDevice5Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #5 has a notification to send"
    ::= { ipDevicesTraps 0 5 }

ipDevice6Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #6 has a notification to send"
    ::= { ipDevicesTraps 0 6 }

ipDevice7Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #7 has a notification to send"
    ::= { ipDevicesTraps 0 7 }

ipDevice8Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #8 has a notification to send"
    ::= { ipDevicesTraps 0 8 }

ipDevice9Trap           NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #9 has a notification to send"
    ::= { ipDevicesTraps 0 9 }

ipDevice10Trap          NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #10 has a notification to send"
    ::= { ipDevicesTraps 0 10 }

ipDevice11Trap          NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #11 has a notification to send"
    ::= { ipDevicesTraps 0 11 }

ipDevice12Trap          NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #12 has a notification to send"
    ::= { ipDevicesTraps 0 12 }

ipDevice13Trap          NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #13 has a notification to send"
    ::= { ipDevicesTraps 0 13 }

ipDevice14Trap          NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #14 has a notification to send"
    ::= { ipDevicesTraps 0 14 }

ipDevice15Trap          NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #15 has a notification to send"
    ::= { ipDevicesTraps 0 15 }

ipDevice16Trap          NOTIFICATION-TYPE    
    OBJECTS             { envTrapDescription, ipDeviceIndex, ipDeviceAddress, ipDeviceDescription, ipDeviceValue, ipDeviceStatus }
    STATUS              current
    DESCRIPTION         "Trap issued when IP device #16 has a notification to send"
    ::= { ipDevicesTraps 0 16 }

-- Event Log file trap

evLogFileTrap           NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription }
    STATUS              current
    DESCRIPTION         "Trap issued when the system has an event log file notification to send"
    ::= { envTraps 0 10 }

-- Data Log file trap

dataLogFileTrap         NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription }
    STATUS              current
    DESCRIPTION         "Trap issued when the system has a data log file notification to send (file almost full)"
    ::= { envTraps 0 11 }

remoteDataLogFileTrap   NOTIFICATION-TYPE
    OBJECTS             { envTrapDescription, envTrapValue }
    STATUS              current
    DESCRIPTION         "Trap issued when the system has a data log file reading to send"
    ::= { envTraps 0 12 }
    

END
  
