--
--  Uptime Devices, Inc.
--  sh2 MIB
--  $Id: sh2.mib,v 1.15 2006/12/09 04:38:00 devel Exp $
--

UPTIME-ROOT-MIB DEFINITIONS ::= BEGIN
	IMPORTS
		DisplayString
			FROM RFC1213-MIB
		sysDescr
			FROM RFC1213-MIB
		IpAddress
			FROM RFC1155-SMI
		enterprises
			FROM RFC1155-SMI
		OBJECT-TYPE
			FROM RFC-1212
		TRAP-TYPE
			FROM RFC-1215;

	uptime		OBJECT IDENTIFIER ::= { enterprises 13045 }
	shseries	OBJECT IDENTIFIER ::= { uptime 1 }
	sdcseries	OBJECT IDENTIFIER ::= { uptime 2 }
	sh2		OBJECT IDENTIFIER ::= { shseries 1 }
	shPro		OBJECT IDENTIFIER ::= { shseries 2 }
	sh2system	OBJECT IDENTIFIER ::= { sh2 1 }
	sh2sensor	OBJECT IDENTIFIER ::= { sh2 2 }
	sh2alerts	OBJECT IDENTIFIER ::= { sh2 3 }
	sh2security	OBJECT IDENTIFIER ::= { sh2 4 }
	sh2network	OBJECT IDENTIFIER ::= { sh2system 1 }
	sh2snmp		OBJECT IDENTIFIER ::= { sh2system 2 }
	sh2data		OBJECT IDENTIFIER ::= { sh2system 3 }
	sh2email	OBJECT IDENTIFIER ::= { sh2alerts 1 }
	sh2modem	OBJECT IDENTIFIER ::= { sh2alerts 2 }
	sh2traps	OBJECT IDENTIFIER ::= { sh2alerts 3 }


	-- the sh2 system information

	sh2IPAddress OBJECT-TYPE
		SYNTAX IpAddress
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The IP address of this unit.  See also the ipAddrTable."
		::= { sh2network 1 }

	sh2NetworkMask OBJECT-TYPE
		SYNTAX IpAddress
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The network mask of this unit.  See also the ipAddrTable."
		::= { sh2network 2 }

	sh2DefaultGateway OBJECT-TYPE
		SYNTAX IpAddress
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The default gateway address.  See also the ipRouteTable."
		::= { sh2network 3 }

	sh2DNS OBJECT-TYPE
		SYNTAX IpAddress
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The domain name server address."
		::= { sh2network 4 }

	sh2DomainName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..64))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The domain name."
		::= { sh2network 5 }

	sh2IPAddrAcq OBJECT-TYPE
		SYNTAX INTEGER {
			static(1),
			rarp(2),
			dhcp(3),
			rarpdhcp(4)
		}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The IP address acquisition type."
		::= { sh2network 6 }

	sh2FWDownload OBJECT-TYPE
		SYNTAX INTEGER {
			disable(1),
			enable(2)
		}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"Allow firmware download if enabled."
		::= { sh2network 7 }

	sh2MIBAccess OBJECT-TYPE
		SYNTAX INTEGER {
			readOnly(1),
			byCommunityName(2)
		}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"Access to this MIB.  Settable only through web interface."
		::= { sh2snmp 1 }

	sh2RWCommName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..30))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"MIB read-write community name."
		::= { sh2snmp 2 }

	sh2ROCommName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..30))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"MIB read-only community name."
		::= { sh2snmp 3 }

	sh2SampleRate OBJECT-TYPE
		SYNTAX INTEGER {
			oneMinute(1),
			fiveMinutes(2),
			tenMinutes(3),
			fifteenMinutes(4)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Sensor poll (data sample) rate."
		::= { sh2data 1 }

	sh2WebPageRefresh OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			thirtySeconds(2),
			oneMinute(3),
			fiveMinutes(4),
			tenMinutes(5)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Web page refresh rate."
		::= { sh2data 2 }

	sh2TempScale OBJECT-TYPE
		SYNTAX INTEGER {
			fahrenheit(2),
			celsius(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The temperature scale for all temperature sensors."
		::= { sh2data 3 }


	-- the sh2 sensor information (by port number)

	sh2SensorNumber OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The number of online, connected sensors."
		::= { sh2sensor 1 }

	sh2SensorTable OBJECT-TYPE
		SYNTAX SEQUENCE OF SH2SensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Table of sensors."
		::= { sh2sensor 2 }

	sh2SensorEntry OBJECT-TYPE
		SYNTAX SH2SensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"A sensor table entry."
		INDEX { sh2SensorIndex }
		::= { sh2SensorTable 1 }

	SH2SensorEntry ::=
		SEQUENCE {
			sh2SensorIndex			INTEGER,
			sh2SensorName			DisplayString,
			sh2SensorType			DisplayString,
			sh2SensorCurrentValue		INTEGER,
			sh2SensorOnlineStatus		INTEGER,
			sh2SensorState			INTEGER,
			sh2SensorHighCritical		INTEGER,
			sh2SensorHighWarning		INTEGER,
			sh2SensorLowWarning		INTEGER,
			sh2SensorLowCritical		INTEGER,
			sh2SensorGoOnline		INTEGER,
			sh2SensorRearm			INTEGER,
			sh2SensorTempScaleType		INTEGER,
			sh2SensorDCDirection		INTEGER,
			sh2SensorDCNormalState		INTEGER,
			sh2SensorDCOutputLevel		INTEGER,
			sh2SensorCalibration		INTEGER,
			sh2SensorVoltScaleType		INTEGER
		}

	sh2SensorIndex OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor port number."
		::= { sh2SensorEntry 1 }

	sh2SensorName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The sensor name."
		::= { sh2SensorEntry 2 }

	sh2SensorType OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..255))
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor type."
		::= { sh2SensorEntry 3 }

	sh2SensorCurrentValue OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor's current value."
		::= { sh2SensorEntry 4 }

	sh2SensorOnlineStatus OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"Status (online/offline) of the sensor."
		::= { sh2SensorEntry 5 }

	sh2SensorState OBJECT-TYPE
		SYNTAX INTEGER {
			highCritical(1),
			highWarning(2),
			lowWarning(3),
			lowCritical(4),
			normal(5),
			notPresent(6)
			}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor state relative to the thresholds."
		::= { sh2SensorEntry 6 }

	sh2SensorHighCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high critical threshold."
		::= { sh2SensorEntry 7 }

	sh2SensorHighWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high warning threshold."
		::= { sh2SensorEntry 8 }

	sh2SensorLowWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low warning threshold."
		::= { sh2SensorEntry 9 }

	sh2SensorLowCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low critical threshold."
		::= { sh2SensorEntry 10 }

	sh2SensorGoOnline OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Set the sensor online or offline."
		::= { sh2SensorEntry 11 }

	sh2SensorRearm OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The rearm value."
		::= { sh2SensorEntry 12 }

	sh2SensorTempScaleType OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			fahrenheit(2),
			celsius(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The temperature scale type."
		::= { sh2SensorEntry 13 }

	sh2SensorDCDirection OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			input(2),
			output(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The dry contact type."
		::= { sh2SensorEntry 14 }

	sh2SensorDCNormalState OBJECT-TYPE
		SYNTAX INTEGER {
			closed(0),
			open(1),
			none(2)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The dry contact normal state."
		::= { sh2SensorEntry 15 }

	sh2SensorDCOutputLevel OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			low(2),
			high(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The dry contact output level."
		::= { sh2SensorEntry 16 }

	sh2SensorCalibration OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The offset value to add to the temperature or humidity reading."
		::= { sh2SensorEntry 17 }

	sh2SensorVoltScaleType OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			vac115(2),
			vac230(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The voltage scale type."
		::= { sh2SensorEntry 18 }


	--
	-- the sh2 temperature sensor information
	--

	sh2TempSensorTable OBJECT-TYPE
		SYNTAX SEQUENCE OF SH2TempSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Table of up to two temperature sensors."
		::= { sh2sensor 3 }

	sh2TempSensorEntry OBJECT-TYPE
		SYNTAX SH2TempSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"A temperature sensor table entry."
		INDEX { sh2TempSensorIndex }
		::= { sh2TempSensorTable 1 }

	SH2TempSensorEntry ::=
		SEQUENCE {
			sh2TempSensorIndex		INTEGER,
			sh2TempSensorName		DisplayString,
			sh2TempSensorType		DisplayString,
			sh2TempSensorCurrentValue	INTEGER,
			sh2TempSensorOnlineStatus	INTEGER,
			sh2TempSensorState		INTEGER,
			sh2TempSensorHighCritical	INTEGER,
			sh2TempSensorHighWarning	INTEGER,
			sh2TempSensorLowWarning		INTEGER,
			sh2TempSensorLowCritical	INTEGER,
			sh2TempSensorGoOnline		INTEGER,
			sh2TempSensorRearm		INTEGER,
			sh2TempSensorScaleType		INTEGER,
			sh2TempSensorCalibration	INTEGER
		}

	sh2TempSensorIndex OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor port number."
		::= { sh2TempSensorEntry 1 }

	sh2TempSensorName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The sensor name."
		::= { sh2TempSensorEntry 2 }

	sh2TempSensorType OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..255))
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor type."
		::= { sh2TempSensorEntry 3 }

	sh2TempSensorCurrentValue OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor's current value."
		::= { sh2TempSensorEntry 4 }

	sh2TempSensorOnlineStatus OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"Status (online/offline) of the sensor."
		::= { sh2TempSensorEntry 5 }

	sh2TempSensorState OBJECT-TYPE
		SYNTAX INTEGER {
			highCritical(1),
			highWarning(2),
			lowWarning(3),
			lowCritical(4),
			normal(5),
			notPresent(6)
			}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor state relative to the thresholds."
		::= { sh2TempSensorEntry 6 }

	sh2TempSensorHighCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high critical threshold."
		::= { sh2TempSensorEntry 7 }

	sh2TempSensorHighWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high warning threshold."
		::= { sh2TempSensorEntry 8 }

	sh2TempSensorLowWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low warning threshold."
		::= { sh2TempSensorEntry 9 }

	sh2TempSensorLowCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low critical threshold."
		::= { sh2TempSensorEntry 10 }

	sh2TempSensorGoOnline OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Set the sensor online or offline."
		::= { sh2TempSensorEntry 11 }

	sh2TempSensorRearm OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The rearm value."
		::= { sh2TempSensorEntry 12 }

	sh2TempSensorScaleType OBJECT-TYPE
		SYNTAX INTEGER {
			fahrenheit(2),
			celsius(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The temperature scale type."
		::= { sh2TempSensorEntry 13 }

	sh2TempSensorCalibration OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The offset value to add to the temperature reading."
		::= { sh2TempSensorEntry 14 }

	--
	-- the sh2 humidity sensor information
	--

	sh2HumdSensorTable OBJECT-TYPE
		SYNTAX SEQUENCE OF SH2HumdSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Table of up to two humidity sensors."
		::= { sh2sensor 4 }

	sh2HumdSensorEntry OBJECT-TYPE
		SYNTAX SH2HumdSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"A sensor table entry."
		INDEX { sh2HumdSensorIndex }
		::= { sh2HumdSensorTable 1 }

	SH2HumdSensorEntry ::=
		SEQUENCE {
			sh2HumdSensorIndex		INTEGER,
			sh2HumdSensorName		DisplayString,
			sh2HumdSensorType		DisplayString,
			sh2HumdSensorCurrentValue	INTEGER,
			sh2HumdSensorOnlineStatus	INTEGER,
			sh2HumdSensorState		INTEGER,
			sh2HumdSensorHighCritical	INTEGER,
			sh2HumdSensorHighWarning	INTEGER,
			sh2HumdSensorLowWarning		INTEGER,
			sh2HumdSensorLowCritical	INTEGER,
			sh2HumdSensorGoOnline		INTEGER,
			sh2HumdSensorRearm		INTEGER,
			sh2HumdSensorCalibration	INTEGER
		}

	sh2HumdSensorIndex OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor port number."
		::= { sh2HumdSensorEntry 1 }

	sh2HumdSensorName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The sensor name."
		::= { sh2HumdSensorEntry 2 }

	sh2HumdSensorType OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..255))
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor type."
		::= { sh2HumdSensorEntry 3 }

	sh2HumdSensorCurrentValue OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor's current value."
		::= { sh2HumdSensorEntry 4 }

	sh2HumdSensorOnlineStatus OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"Status (online/offline) of the sensor."
		::= { sh2HumdSensorEntry 5 }

	sh2HumdSensorState OBJECT-TYPE
		SYNTAX INTEGER {
			highCritical(1),
			highWarning(2),
			lowWarning(3),
			lowCritical(4),
			normal(5),
			notPresent(6)
			}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor state relative to the thresholds."
		::= { sh2HumdSensorEntry 6 }

	sh2HumdSensorHighCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high critical threshold."
		::= { sh2HumdSensorEntry 7 }

	sh2HumdSensorHighWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high warning threshold."
		::= { sh2HumdSensorEntry 8 }

	sh2HumdSensorLowWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low warning threshold."
		::= { sh2HumdSensorEntry 9 }

	sh2HumdSensorLowCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low critical threshold."
		::= { sh2HumdSensorEntry 10 }

	sh2HumdSensorGoOnline OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Set the sensor online or offline."
		::= { sh2HumdSensorEntry 11 }

	sh2HumdSensorRearm OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The rearm value."
		::= { sh2HumdSensorEntry 12 }

	sh2HumdSensorCalibration OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The offset value to add to the humidity reading."
		::= { sh2HumdSensorEntry 13 }

	--
	-- the sh2 bi-state sensor information
	--

	sh2StateSensorTable OBJECT-TYPE
		SYNTAX SEQUENCE OF SH2StateSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Table of up to two bi-state sensors."
		::= { sh2sensor 5 }

	sh2StateSensorEntry OBJECT-TYPE
		SYNTAX SH2StateSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"A sensor table entry."
		INDEX { sh2StateSensorIndex }
		::= { sh2StateSensorTable 1 }

	SH2StateSensorEntry ::=
		SEQUENCE {
			sh2StateSensorIndex		INTEGER,
			sh2StateSensorName		DisplayString,
			sh2StateSensorType		DisplayString,
			sh2StateSensorCurrentValue	INTEGER,
			sh2StateSensorOnlineStatus	INTEGER,
			sh2StateSensorState		INTEGER,
			sh2StateSensorGoOnline		INTEGER,
			sh2StateSensorDCDirection	INTEGER,
			sh2StateSensorDCNormalState	INTEGER,
			sh2StateSensorDCOutputLevel	INTEGER
		}

	sh2StateSensorIndex OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor port number."
		::= { sh2StateSensorEntry 1 }

	sh2StateSensorName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The sensor name."
		::= { sh2StateSensorEntry 2 }

	sh2StateSensorType OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..255))
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor type."
		::= { sh2StateSensorEntry 3 }

	sh2StateSensorCurrentValue OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor's current value."
		::= { sh2StateSensorEntry 4 }

	sh2StateSensorOnlineStatus OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"Status (online/offline) of the sensor."
		::= { sh2StateSensorEntry 5 }

	sh2StateSensorState OBJECT-TYPE
		SYNTAX INTEGER {
			highCritical(1),
			highWarning(2),
			lowWarning(3),
			lowCritical(4),
			normal(5),
			notPresent(6)
			}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor state relative to the thresholds."
		::= { sh2StateSensorEntry 6 }

	sh2StateSensorGoOnline OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Set the sensor online or offline."
		::= { sh2StateSensorEntry 7 }

	sh2StateSensorDCDirection OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			input(2),
			output(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The dry contact type."
		::= { sh2StateSensorEntry 8 }

	sh2StateSensorDCNormalState OBJECT-TYPE
		SYNTAX INTEGER {
			closed(0),
			open(1),
			none(2)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The dry contact normal state."
		::= { sh2StateSensorEntry 9 }

	sh2StateSensorDCOutputLevel OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			low(2),
			high(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The dry contact output level."
		::= { sh2StateSensorEntry 10 }

	-- the sh2 sensor configuration information (all sensors)

	sh2AllSensorNumber OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The number of supported sensors."
		::= { sh2sensor 6 }

	sh2AllSensorTable OBJECT-TYPE
		SYNTAX SEQUENCE OF SH2AllSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Table of all supported sensors."
		::= { sh2sensor 7 }

	sh2AllSensorEntry OBJECT-TYPE
		SYNTAX SH2AllSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"A sensor configuration table entry."
		INDEX { sh2AllSensorIndex }
		::= { sh2AllSensorTable 1 }

	SH2AllSensorEntry ::=
		SEQUENCE {
			sh2AllSensorIndex		INTEGER,
			sh2AllSensorName		DisplayString,
			sh2AllSensorType		DisplayString,
			sh2AllSensorHighCritical	INTEGER,
			sh2AllSensorHighWarning		INTEGER,
			sh2AllSensorLowWarning		INTEGER,
			sh2AllSensorLowCritical		INTEGER,
			sh2AllSensorRearm		INTEGER,
			sh2AllSensorCalibration		INTEGER,
			sh2AllSensorBiState		INTEGER
		}

	sh2AllSensorIndex OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor number."
		::= { sh2AllSensorEntry 1 }

	sh2AllSensorName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The sensor name."
		::= { sh2AllSensorEntry 2 }

	sh2AllSensorType OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..255))
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor type."
		::= { sh2AllSensorEntry 3 }

	sh2AllSensorHighCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high critical threshold."
		::= { sh2AllSensorEntry 4 }

	sh2AllSensorHighWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high warning threshold."
		::= { sh2AllSensorEntry 5 }

	sh2AllSensorLowWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low warning threshold."
		::= { sh2AllSensorEntry 6 }

	sh2AllSensorLowCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low critical threshold."
		::= { sh2AllSensorEntry 7 }

	sh2AllSensorRearm OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The rearm value."
		::= { sh2AllSensorEntry 8 }

	sh2AllSensorCalibration OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The offset value to add to the current value of the sensor."
		::= { sh2AllSensorEntry 9 }

	sh2AllSensorBiState OBJECT-TYPE
		SYNTAX INTEGER {
			state(1),
			oppositeState(2)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The normal setting for a bistate sensor (such as open/closed, air/no air, 115VAC/230VAC)."
		::= { sh2AllSensorEntry 10 }


	sh2AllSensorState OBJECT-TYPE
		SYNTAX INTEGER {
			highCritical(1),
			highWarning(2),
			lowWarning(3),
			lowCritical(4),
			normal(5),
			notPresent(6)
			}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The furthest out-of-threshold sensor state of all active sensors."
		::= { sh2sensor 8 }


	--
	-- the sh2 voltage sensor information
	--

	sh2VoltSensorTable OBJECT-TYPE
		SYNTAX SEQUENCE OF SH2VoltSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Table of up to two voltage sensors."
		::= { sh2sensor 9 }

	sh2VoltSensorEntry OBJECT-TYPE
		SYNTAX SH2VoltSensorEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"A voltage sensor table entry."
		INDEX { sh2VoltSensorIndex }
		::= { sh2VoltSensorTable 1 }

	SH2VoltSensorEntry ::=
		SEQUENCE {
			sh2VoltSensorIndex		INTEGER,
			sh2VoltSensorName		DisplayString,
			sh2VoltSensorType		DisplayString,
			sh2VoltSensorCurrentValue	INTEGER,
			sh2VoltSensorOnlineStatus	INTEGER,
			sh2VoltSensorState		INTEGER,
			sh2VoltSensorHighCritical	INTEGER,
			sh2VoltSensorHighWarning	INTEGER,
			sh2VoltSensorLowWarning		INTEGER,
			sh2VoltSensorLowCritical	INTEGER,
			sh2VoltSensorGoOnline		INTEGER,
			sh2VoltSensorRearm		INTEGER,
			sh2VoltSensorScaleType		INTEGER,
			sh2VoltSensorCalibration	INTEGER
		}

	sh2VoltSensorIndex OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor port number."
		::= { sh2VoltSensorEntry 1 }

	sh2VoltSensorName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The sensor name."
		::= { sh2VoltSensorEntry 2 }

	sh2VoltSensorType OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..255))
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor type."
		::= { sh2VoltSensorEntry 3 }

	sh2VoltSensorCurrentValue OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor's current value."
		::= { sh2VoltSensorEntry 4 }

	sh2VoltSensorOnlineStatus OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"Status (online/offline) of the sensor."
		::= { sh2VoltSensorEntry 5 }

	sh2VoltSensorState OBJECT-TYPE
		SYNTAX INTEGER {
			highCritical(1),
			highWarning(2),
			lowWarning(3),
			lowCritical(4),
			normal(5),
			notPresent(6)
			}
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The sensor state relative to the thresholds."
		::= { sh2VoltSensorEntry 6 }

	sh2VoltSensorHighCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high critical threshold."
		::= { sh2VoltSensorEntry 7 }

	sh2VoltSensorHighWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The high warning threshold."
		::= { sh2VoltSensorEntry 8 }

	sh2VoltSensorLowWarning OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low warning threshold."
		::= { sh2VoltSensorEntry 9 }

	sh2VoltSensorLowCritical OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The low critical threshold."
		::= { sh2VoltSensorEntry 10 }

	sh2VoltSensorGoOnline OBJECT-TYPE
		SYNTAX INTEGER {
			online(1),
			offline(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Set the sensor online or offline."
		::= { sh2VoltSensorEntry 11 }

	sh2VoltSensorRearm OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The rearm value."
		::= { sh2VoltSensorEntry 12 }

	sh2VoltSensorScaleType OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			vac115(2),
			vac230(3)
			}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The voltage scale type."
		::= { sh2VoltSensorEntry 13 }

	sh2VoltSensorCalibration OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The offset value to add to the voltage reading."
		::= { sh2VoltSensorEntry 14 }


	-- the sh2 alert information

	sh2EmailAlertState OBJECT-TYPE
		SYNTAX INTEGER {
			disable(1),
			enable(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Send email on alert."
		::= { sh2email 1 }

	sh2MailFrom OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..64))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Email from address."
		::= { sh2email 2 }

	sh2MailTo OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..64))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Email to address."
		::= { sh2email 3 }

	sh2CarbonCopy1 OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..64))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Email carbon copy address (1)."
		::= { sh2email 4 }

	sh2CarbonCopy2 OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..64))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Email carbon copy address (2)."
		::= { sh2email 5 }

	sh2CarbonCopy3 OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..64))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Email carbon copy address (3)."
		::= { sh2email 6 }

	sh2OutMailServer OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..64))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Outgoing mail server."
		::= { sh2email 7 }

	sh2ModemAlertState OBJECT-TYPE
		SYNTAX INTEGER {
			disable(1),
			enable(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Send modem message on alert."
		::= { sh2modem 1 }

	sh2AccessCode OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Access or country code."
		::= { sh2modem 2 }

	sh2AreaCode OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Area code."
		::= { sh2modem 3 }

	sh2PhoneNumber OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..12))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Phone number."
		::= { sh2modem 4 }

	sh2MessageDelay OBJECT-TYPE
		SYNTAX INTEGER {
			fiveSeconds(1),
			tenSeconds(2),
			fifteenSeconds(3),
			twentySeconds(4),
			thirtySeconds(5)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Delay after connection and before sending message."
		::= { sh2modem 5 }

	sh2DialType OBJECT-TYPE
		SYNTAX INTEGER {
			tone(1),
			pulse(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Dial type."
		::= { sh2modem 6 }

	-- the sh2 trap destination information

	sh2TrapsNumber OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The number of trap destination table entries."
		::= { sh2traps 1 }

	sh2TrapTable OBJECT-TYPE
		SYNTAX SEQUENCE OF SH2TrapEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Table of trap destinations."
		::= { sh2traps 2 }

	sh2TrapEntry OBJECT-TYPE
		SYNTAX SH2TrapEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"A trap destination table entry."
		INDEX { sh2TrapIndex }
		::= { sh2TrapTable 1 }

	SH2TrapEntry ::=
		SEQUENCE {
			sh2TrapIndex			INTEGER,
			sh2TrapState			INTEGER,
			sh2TrapAddress			IpAddress,
			sh2TrapCommunityName		DisplayString,
			sh2TrapPort			INTEGER
		}

	sh2TrapIndex OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The trap destination number."
		::= { sh2TrapEntry 1 }

	sh2TrapState OBJECT-TYPE
		SYNTAX INTEGER {
			off(1),
			on(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The trap destination state."
		::= { sh2TrapEntry 2 }

	sh2TrapAddress OBJECT-TYPE
		SYNTAX IpAddress
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The trap destination IP address."
		::= { sh2TrapEntry 3 }

	sh2TrapCommunityName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..30))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The community name to send with the trap."
		::= { sh2TrapEntry 4 }

	sh2TrapPort OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The trap destination UDP port number."
		::= { sh2TrapEntry 5 }

	sh2DryOutputState OBJECT-TYPE
		SYNTAX INTEGER {
			disable(1),
			enable(2)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Enable dry output sensor on alert."
		::= { sh2alerts 4 }

	sh2AlertResend OBJECT-TYPE
		SYNTAX INTEGER {
			never(1),
			fifteenSeconds(2),
			thirtySeconds(3),
			oneMinute(4),
			fiveMinutes(5),
			tenMinutes(6),
			fifteenMinutes(7),
			thirtyMinutes(8),
			oneHour(9)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Alert resend time value."
		::= { sh2alerts 5 }


	-- the sh2 security information

	sh2SecurityNumber OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-only
		STATUS mandatory
		DESCRIPTION
			"The number of user table entries."
		::= { sh2security 1 }

	sh2UserTable OBJECT-TYPE
		SYNTAX SEQUENCE OF SH2UserEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"Table of users."
		::= { sh2security 2 }

	sh2UserEntry OBJECT-TYPE
		SYNTAX SH2UserEntry
		ACCESS not-accessible
		STATUS mandatory
		DESCRIPTION
			"A user table entry."
		INDEX { sh2UserIndex }
		::= { sh2UserTable 1 }

	SH2UserEntry ::=
		SEQUENCE {
			sh2UserIndex			INTEGER,
			sh2UserName			DisplayString,
			sh2UserPassword			DisplayString,
			sh2UserAccess			INTEGER,
			sh2UserType			INTEGER
		}

	sh2UserIndex OBJECT-TYPE
		SYNTAX INTEGER
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The user table entry number."
		::= { sh2UserEntry 1 }

	sh2UserName OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..10))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The user name."
		::= { sh2UserEntry 2 }

	sh2UserPassword OBJECT-TYPE
		SYNTAX DisplayString (SIZE (0..10))
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The user password."
		::= { sh2UserEntry 3 }

	sh2UserAccess OBJECT-TYPE
		SYNTAX INTEGER {
			read(1),
			write(2),
			admin(3)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"The users access level."
		::= { sh2UserEntry 4 }

	sh2UserType OBJECT-TYPE
		SYNTAX INTEGER {
			none(1),
			add(2),
			delete(3)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Modify the user table."
		::= { sh2UserEntry 5 }

	sh2InactivityTimeout OBJECT-TYPE
		SYNTAX INTEGER {
			never(1),
			oneMinute(2),
			twoMinutes(3),
			fiveMinutes(4),
			fifteenMinutes(5),
			sixtyMinutes(6)
		}
		ACCESS read-write
		STATUS mandatory
		DESCRIPTION
			"Log the user off if there is no web activity."
		::= { sh2security 3 }


	-- traps

	sh2Sensor1HighCritical TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 1 is in the high critical state."
		::= 101

	sh2Sensor1HighWarning TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 1 is in the high warning state."
		::= 102

	sh2Sensor1LowWarning TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 1 is in the low warning state."
		::= 103

	sh2Sensor1LowCritical TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 1 is in the low critical state."
		::= 104

	sh2Sensor1Normal TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 1 is in the normal state."
		::= 105

	sh2Sensor2HighCritical TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 2 is in the high critical state."
		::= 106

	sh2Sensor2HighWarning TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 2 is in the high warning state."
		::= 107

	sh2Sensor2LowWarning TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 2 is in the low warning state."
		::= 108

	sh2Sensor2LowCritical TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 2 is in the low critical state."
		::= 109

	sh2Sensor2Normal TRAP-TYPE
		ENTERPRISE sh2
		VARIABLES {
			sysDescr,
			sh2SensorName,
			sh2SensorType,
			sh2SensorCurrentValue,
			sh2SensorState
			}
		DESCRIPTION
			"Sensor 2 is in the normal state."
		::= 110

END