-- =====================================================================
-- == OPENGEAR-SENSOR-MIB :                                           ==
-- == Opengear sensor status notification Management Information Base ==
-- ==                                                                 ==
-- == (c) Copyright 2005-2010 Opengear Inc.                           ==
-- =====================================================================

OPENGEAR-SENSOR-MIB DEFINITIONS ::= BEGIN

IMPORTS
	ogMgmt
		FROM OPENGEAR-SMI-MIB
	MODULE-IDENTITY, NOTIFICATION-TYPE, OBJECT-TYPE, Integer32
		FROM SNMPv2-SMI
	MODULE-COMPLIANCE, NOTIFICATION-GROUP, OBJECT-GROUP
		FROM SNMPv2-CONF
	DisplayString
		FROM SNMPv2-TC;

ogSensorMib MODULE-IDENTITY
        LAST-UPDATED "201003221127Z"
        ORGANIZATION "Opengear Inc."
        CONTACT-INFO
                "Opengear Inc.
                 630 West 9560 South,
                 Sandy, UT 84070
                 support@opengear.com"
        DESCRIPTION
                "Opengear SENSOR status MIB"
        REVISION "201003221127Z"
	DESCRIPTION
		"Syntax corrections by Opengear Inc."
        REVISION "200811271140Z"
	DESCRIPTION
		"Initial version."
        ::= { ogMgmt 13 }

ogSensorMibObjects OBJECT IDENTIFIER ::= { ogSensorMib 10 }

-- Subgroups

ogsensStatus OBJECT IDENTIFIER ::= { ogSensorMibObjects 1 }

ogsensStatusTable OBJECT-TYPE
        SYNTAX     SEQUENCE OF OgSensStatusEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "A table of sensor status events generated by this device."
        ::= { ogsensStatus 3 }

ogsensStatusEntry OBJECT-TYPE
        SYNTAX     OgSensStatusEntry
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "A sensor status event that was previously generated by this
                 device. Each entry is indexed by a message index."
        INDEX   { ogsensStatusIndex }
        ::= { ogsensStatusTable 1 }

OgSensStatusEntry ::=
    SEQUENCE {
        ogsensStatusIndex   Integer32,
	ogsensStatusName    DisplayString,
	ogsensStatusDevType DisplayString,
	ogsensStatusType    DisplayString,
	ogsensStatusValue   Integer32
    }

ogsensStatusIndex OBJECT-TYPE
        SYNTAX     Integer32 (1..2147483647)
        MAX-ACCESS not-accessible
        STATUS     current
        DESCRIPTION
                "A monotonically increasing integer for the sole
                 purpose of indexing messages.  When it reaches the
                 maximum value the agent flushes the table and wraps
                 the value back to 1."
        ::= { ogsensStatusEntry 1 }

ogsensStatusName OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
	        "The name of the device pertaining to the status event"
	::= { ogsensStatusEntry 10 }

ogsensStatusDevType OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
	        "The type of device pertaining to the status event"
	::= { ogsensStatusEntry 11 }

ogsensStatusType OBJECT-TYPE
	SYNTAX DisplayString
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
	        "The type of sensor pertaining to the status event"
	::= { ogsensStatusEntry 12 }

ogsensStatusValue OBJECT-TYPE
	SYNTAX Integer32
	MAX-ACCESS read-only
	STATUS current
	DESCRIPTION
	        "The value of the sensor pertaining to the status event"
	::= { ogsensStatusEntry 13 }

-- notifications

ogSensorMibNotificationPrefix    OBJECT IDENTIFIER ::= {
	ogSensorMib 2
}

ogsensMibNotifications         OBJECT IDENTIFIER ::= {
	ogSensorMibNotificationPrefix 0
}

ogsensEventOccurred NOTIFICATION-TYPE
	OBJECTS { ogsensStatusName, ogsensStatusDevType, ogsensStatusType,
		ogsensStatusValue }
	STATUS current
	DESCRIPTION
		"The notification sent when a sensor status event occurs"
	::= { ogsensMibNotifications 200 }

-- conformance information

ogSensorMibConformance OBJECT IDENTIFIER ::= { ogSensorMib 3 }
ogSensorMibCompliances OBJECT IDENTIFIER ::= { ogSensorMibConformance 1 }
ogSensorMibGroups      OBJECT IDENTIFIER ::= { ogSensorMibConformance 2 }

-- compliance statements

ogSensorMibCompliance MODULE-COMPLIANCE
       STATUS  current
       DESCRIPTION
               "The compliance statement for entities which implement
                the Opengear sensor MIB."
       MODULE  -- this module
               MANDATORY-GROUPS { ogSensorMibGroup }

       GROUP ogsensNotificationsGroup
       DESCRIPTION
           "The implementation of this group is
           mandatory for those systems where
           sensor notification is supported."

       ::= { ogSensorMibCompliances 1 }

-- Units of conformance

ogSensorMibGroup OBJECT-GROUP
       OBJECTS { ogsensStatusName,
                 ogsensStatusDevType,
                 ogsensStatusType,
                 ogsensStatusValue
       }
       STATUS  current
       DESCRIPTION
               "A collection of objects providing the sensor MIB capability."
      ::= { ogSensorMibGroups 1 }

ogsensNotificationsGroup NOTIFICATION-GROUP
       NOTIFICATIONS {
               ogsensEventOccurred
       }
       STATUS  current
       DESCRIPTION
               "A collection of notification(s) for sensor system."
       ::= { ogSensorMibGroups 2 }

END
