-- Module Name: HMS117R6.MIB (SCTE 84-3)

SCTE-HMS-HE-FAN-MIB DEFINITIONS ::= BEGIN

IMPORTS
	OBJECT-TYPE, MODULE-IDENTITY, Unsigned32
		FROM SNMPv2-SMI
	OBJECT-GROUP, MODULE-COMPLIANCE
		FROM SNMPv2-CONF
	entPhysicalIndex
		FROM ENTITY-MIB
	heFans, HeMilliAmp, HeFaultStatus
		FROM SCTE-HMS-HEADENDIDENT-MIB;

heFanModuleMIB MODULE-IDENTITY
	LAST-UPDATED "200403250410Z"
	ORGANIZATION 
		"SCTE HMS Working Group"
	CONTACT-INFO 
		"SCTE HMS Subcommittee, Chairman
		             mail to: standards@scte.org"
	DESCRIPTION 
		"The MIB module is for representing Fans and Fan Groupings present
		            in the headend (or indoor) plant which are supported by a SNMP agent."
::= { heFans 1 }

heFanMIBObjects      OBJECT IDENTIFIER ::= { heFanModuleMIB 1 }

-- Conformance information

heFanMIBConformance  OBJECT IDENTIFIER ::= { heFanModuleMIB 2 }
heFanMIBCompliances  OBJECT IDENTIFIER ::= { heFanMIBConformance 1 }
heFanMIBGroups       OBJECT IDENTIFIER ::= { heFanMIBConformance 2 }

--          The Fan Unit Table

heFanUnitTable  OBJECT-TYPE
	SYNTAX SEQUENCE OF HeFanUnitEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION 
		"A table containing information about headend (or indoor) 
		            fan groupings. Fans can be in a Fan Tray, Power Supplies,
		            attached to the Cabinet, or any fan entity managed by this 
		            SNMP agent. Each fan grouping will have an associated entry
		            in the Entity mib."
	::= { heFanMIBObjects 1 }

heFanUnitEntry  OBJECT-TYPE
	SYNTAX 	HeFanUnitEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION 
		"Information about each Fan Grouping in the subsystem."
	INDEX { entPhysicalIndex }
	::= { heFanUnitTable 1 }

HeFanUnitEntry ::= SEQUENCE {
	heFanUnitAlarm
		HeFaultStatus
}

heFanUnitAlarm  OBJECT-TYPE
	SYNTAX     HeFaultStatus
	MAX-ACCESS read-only
	STATUS     current
	DESCRIPTION 
		"The fan grouping status. If every fan in the grouping is
		        operating in normal condition the value returned is
		        normal(1), otherwise the value returned will be fault(2). 
		
		        This object must provide for the alarm management capabilities 
		        with a corresponding entry in the discretePropertyTable of 
		        SCTE-HMS-PROPERTY-MIB (ANSI/SCTE 38-1).
		
		        An Alarm Shall be recorded as an entry in the currentAlarmTable
		        of SCTE-HMS-PROPERTY-MIB (ANSI/SCTE 38-1).
		
		        A log record shall be added as an entry in the heCommonLogTable.
		
		        An heCommonAlarmEvent notification shall be sent."
	::= { heFanUnitEntry 1 }

--          The Fan Status Table

heFanStatusTable  OBJECT-TYPE
	SYNTAX SEQUENCE OF HeFanStatusEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION 
		"A list of monitorable parameter entries for each fan or fan grouping."
	::= { heFanMIBObjects 2 }

heFanStatusEntry  OBJECT-TYPE
	SYNTAX 	HeFanStatusEntry
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION 
		"An entry containing management information applicable
		            to a particular fan or fan grouping for this particular fan entity unit."
	INDEX { entPhysicalIndex, 
		heFanStatusIndex }
	::= { heFanStatusTable 1 }

HeFanStatusEntry ::= SEQUENCE {
	heFanStatusIndex
		Unsigned32,
	heFanStatusCurrent
		HeMilliAmp,
	heFanStatusAlarm
		HeFaultStatus
}

heFanStatusIndex  OBJECT-TYPE
	SYNTAX     Unsigned32
	MAX-ACCESS not-accessible
	STATUS     current
	DESCRIPTION 
		"An arbitrary value which uniquely identifies the fan or fan grouping
		for this particular fan entity unit."
	::= { heFanStatusEntry 1 }

heFanStatusCurrent  OBJECT-TYPE
	SYNTAX     HeMilliAmp
	UNITS 	"milliamperes"
	MAX-ACCESS read-only
	STATUS     current
	DESCRIPTION 
		"Current of this fan or fan grouping for this particular fan entity unit."
	::= { heFanStatusEntry 2 }

heFanStatusAlarm  OBJECT-TYPE
	SYNTAX     HeFaultStatus
	MAX-ACCESS read-only
	STATUS     current
	DESCRIPTION 
		"This object contains the current alarm status for
		        this fan or fan grouping for this particular fan entity unit.
		
		        This object must provide for the alarm management capabilities 
		        with a corresponding entry in the discretePropertyTable of 
		        SCTE-HMS-PROPERTY-MIB (ANSI/SCTE 38-1).
		
		        An alarm shall be recorded as an entry in the currentAlarmTable
		        of SCTE-HMS-PROPERTY-MIB (ANSI/SCTE 38-1).
		
		        A log record shall be added as an entry in the heCommonLogTable.
		
		        An heCommonAlarmEvent notification shall be sent."
	::= { heFanStatusEntry 3 }

-- Compliance statements

heFanCompliance  MODULE-COMPLIANCE
	STATUS     current
	DESCRIPTION 
		"The minimum compliance statement for indoor fans."
	MODULE
		MANDATORY-GROUPS { heFanUnitMandatoryGroup } 
		GROUP heFanStatusGroup
		DESCRIPTION 
		"The heFanStatusGroup is unconditionally optional."
	::= { heFanMIBCompliances 1 }

-- this module

heFanUnitMandatoryGroup  OBJECT-GROUP
	OBJECTS { heFanUnitAlarm }
	STATUS     current
	DESCRIPTION 
		"The main group defines mandatory objects for all indoor fans."
	::= { heFanMIBGroups 1 }

heFanStatusGroup  OBJECT-GROUP
	OBJECTS { heFanStatusAlarm, 
		heFanStatusCurrent }
	STATUS     current
	DESCRIPTION 
		"A collection of objects that provide information applicable 
		            to a particular fan's status parameters."
	::= { heFanMIBGroups 2 }
END
