-- =======================================================================
-- Version info
--
-- Version 1.0 Created 2009.07.8 by LONGYAGN
-- This version of MIB is created just for the Management of RRCP .
--
-- Copyright(c) 2002-2005 by RAISECOM TECH, Ltd.
-- modify history
-- 01,20100409,hongding,add "rcRrcpSoftVersion" mib object
-- =======================================================================

RAISECOM-RRCP-MIB  DEFINITIONS ::= BEGIN

IMPORTS    
        Counter32               		  FROM SNMPv2-SMI    -- [RFC2578] 
        rcRrcp                            FROM RAISECOM-RRCP-VLAN-MIB
        MacAddress, TruthValue            FROM SNMPv2-TC
        EnableVar                         FROM SWITCH-TC;
 
--rcRrcp             OBJECT IDENTIFIER ::= { iscomSwitch 52 }

rcRrcpProtocol          MODULE-IDENTITY
    LAST-UPDATED   "201004090000Z"                -- 9 April 2010
    ORGANIZATION   "Raisecom, Inc."
    CONTACT-INFO  
                "       Raise Systems
                        
                Postal: Beijing,
                        China

                   Tel: 86-010-82884499

                E-mail: longyang@raisecom.com"
    DESCRIPTION
        "This MIB module defines objects to RRCP Management"
        
    --  Revision history
    
    REVISION   "201004090000Z"                     -- 9 April 2010
    DESCRIPTION
            "The updated revision of this MIB.
                - add a mib object 'rcRrcpSoftVersion' into 
                  RcRrcpDeviceEntry "

    REVISION   "200907060000Z"                     -- 6 July 2009 
    DESCRIPTION
            "The initial revision of this MIB."
        ::={ rcRrcp 1 } 

------------------------------------------------------------------------------
--	define groups in RAISECOM-RRCP-MIB
------------------------------------------------------------------------------
------------------------------------------------------------------------------
rcRrcpMibNotifications    OBJECT IDENTIFIER ::= { rcRrcpProtocol  1 }  
rcRrcpMibObjects    OBJECT IDENTIFIER ::= { rcRrcpProtocol 2 }      
rcRrcpGlobalGroup    OBJECT IDENTIFIER ::= { rcRrcpMibObjects 1 }    
rcRrcpCopyGroup    OBJECT IDENTIFIER ::= { rcRrcpMibObjects 2 }    

 ------------------------------------------------------------------------------
--	rcRrcpMibNotifications
------------------------------------------------------------------------------
------------------------------------------------------------------------------

      rcRrcpDeviceUp NOTIFICATION-TYPE
        OBJECTS { rcRrcpInterfaceIndex, 
                  rcRrcpMacAddress, 
                  rcRrcpDeviceId,
                  rcRrcpDeviceType
                }
        STATUS  current
        DESCRIPTION
          "Remode device is up."
       ::= { rcRrcpMibNotifications 1 } 
   
   
      rcRrcpDeviceDown NOTIFICATION-TYPE
        OBJECTS { rcRrcpInterfaceIndex, 
                  rcRrcpMacAddress, 
                  rcRrcpDeviceId,
                  rcRrcpDeviceType
                }
        STATUS  current
        DESCRIPTION
          "Remode device is down."
       ::= { rcRrcpMibNotifications 2 } 

------------------------------------------------------------------------------
--	rcRrcpGlobalGroup
------------------------------------------------------------------------------
------------------------------------------------------------------------------
     rcRrcpCurrentNumDevices OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  current
              DESCRIPTION
                      "The number of current devices. "
              ::= { rcRrcpGlobalGroup 1 }

     rcRrcpNumDevices OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-only
              STATUS  current
              DESCRIPTION
                      "The number of devices have been exist. "
              ::= { rcRrcpGlobalGroup 2 }

     rcRrcpTrapEnable OBJECT-TYPE
              SYNTAX  EnableVar
              ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "Enable or disable configuration RRCP Trap. "
              ::= { rcRrcpGlobalGroup 3 }
           
     rcRrcpHelloTime OBJECT-TYPE
              SYNTAX  INTEGER (0..65535)  
              UNITS   "minutes"
              ACCESS  read-write
              STATUS  current
              --DEFVAL      { 5 }
              DESCRIPTION
                      "The interval of sending hello packets."
              ::= { rcRrcpGlobalGroup 4 }  
              
     rcRrcpDeviceUpdate OBJECT-TYPE
              SYNTAX  TruthValue
              ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "Start to updating remote devices. "
              ::= { rcRrcpGlobalGroup 5 }     
              
     rcRrcpStatsClear OBJECT-TYPE
              SYNTAX  TruthValue
              ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "Clear statistic of RRCP packets. "
              ::= { rcRrcpGlobalGroup 6 }                              
------------------------------------------------------------------------------
--	rcRrcpCopyGroup
------------------------------------------------------------------------------
------------------------------------------------------------------------------
              
     rcRrcpSourceDeviceId OBJECT-TYPE
              SYNTAX  INTEGER
              ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "The No. of source device."
              ::= { rcRrcpCopyGroup 1 }  
              
     rcRrcpDestinationDeviceList OBJECT-TYPE
              SYNTAX  OCTET STRING
              ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "The list of destination devices. "
              ::= { rcRrcpCopyGroup 2 } 
              
     rcRrcpCopyStatus OBJECT-TYPE
              SYNTAX  INTEGER {
                      start(1),
                      busy(2),
                      completed(3),
                      error(4)
                    }
              ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "The status of copy function. "
              ::= { rcRrcpCopyGroup 3 }  
              
     rcRrcpCopyFailDeviceList OBJECT-TYPE
              SYNTAX  OCTET STRING
              ACCESS  read-only
              STATUS  current
              DESCRIPTION
                      "The list of failed devices. "
              ::= { rcRrcpCopyGroup 4 }
    
 ------------------------------------------------------------------------------
--	rcRrcpInterfaceTable
------------------------------------------------------------------------------
------------------------------------------------------------------------------
     rcRrcpInterfaceTable  OBJECT-TYPE
			SYNTAX		SEQUENCE OF	RcRrcpInterfaceEntry
			MAX-ACCESS	not-accessible
			STATUS		current
			DESCRIPTION
				 "A table of RRCP interface."
			::=	{  rcRrcpMibObjects 3 }

	rcRrcpInterfaceEntry  OBJECT-TYPE
			SYNTAX		RcRrcpInterfaceEntry
			MAX-ACCESS	not-accessible
			STATUS		current
			DESCRIPTION
			   	"A list of RRCP interface information and configuration."
			INDEX {	rcRrcpInterfaceIndex }
			::=	{ rcRrcpInterfaceTable 1 }

 	RcRrcpInterfaceEntry ::= SEQUENCE {
			rcRrcpInterfaceIndex       INTEGER,
			rcRrcpInterfaceDescription OCTET STRING,
			rcRrcpInterfaceEnable      EnableVar
			}

    rcRrcpInterfaceIndex   OBJECT-TYPE
  	        SYNTAX      INTEGER
         	MAX-ACCESS 	not-accessible
        	STATUS 		current
        	DESCRIPTION
                	"The index of interface."
         	::= { rcRrcpInterfaceEntry 1 }

    rcRrcpInterfaceDescription   OBJECT-TYPE
  	        SYNTAX      OCTET STRING (SIZE(0..63))
         	MAX-ACCESS 	read-only
        	STATUS 		current
        	DESCRIPTION
                	"The description of interface."
         	::= { rcRrcpInterfaceEntry 2 }

    rcRrcpInterfaceEnable   OBJECT-TYPE
  	        SYNTAX      EnableVar
         	MAX-ACCESS 	read-write
        	STATUS 		current
        	DESCRIPTION
                	"Enable or disable configuration RRCP on the interface."
         	::= { rcRrcpInterfaceEntry 3 }

 ------------------------------------------------------------------------------
--	rcRrcpDeviceTable
------------------------------------------------------------------------------
------------------------------------------------------------------------------
     rcRrcpDeviceTable  OBJECT-TYPE
			SYNTAX		SEQUENCE OF	RcRrcpDeviceEntry
			MAX-ACCESS	not-accessible
			STATUS		current
			DESCRIPTION
				 "A table of RRCP remote devices."
			::=	{  rcRrcpMibObjects 4 }

	rcRrcpDeviceEntry  OBJECT-TYPE
			SYNTAX		RcRrcpDeviceEntry
			MAX-ACCESS	not-accessible
			STATUS		current
			DESCRIPTION
			   	"A list of RRCP remote devices information on the interface."
			INDEX {	rcRrcpInterfaceIndex, rcRrcpMacAddress}
			::=	{ rcRrcpDeviceTable 1 }

 	RcRrcpDeviceEntry ::= SEQUENCE {
			rcRrcpMacAddress    MacAddress,
			rcRrcpDeviceId      INTEGER,
			rcRrcpDeviceType    OCTET STRING,
			rcRrcpDownlinkPort  INTEGER,
			rcRrcpUplinkPort    INTEGER,
			rcRrcpUplinkMac     MacAddress,
			rcRrcpSoftVersion   INTEGER
			}

    rcRrcpMacAddress   OBJECT-TYPE
  	        SYNTAX      MacAddress
         	MAX-ACCESS 	not-accessible
        	STATUS 		current
        	DESCRIPTION
                	"The MAC address of remote device."
         	::= { rcRrcpDeviceEntry 1 }

    rcRrcpDeviceId   OBJECT-TYPE
  	        SYNTAX      INTEGER
         	MAX-ACCESS 	read-only
        	STATUS 		current
        	DESCRIPTION
                	"The No. of remote device."
         	::= { rcRrcpDeviceEntry 2 }

    rcRrcpDeviceType   OBJECT-TYPE
  	        SYNTAX      OCTET STRING (SIZE(0..15))
         	MAX-ACCESS 	read-only
        	STATUS 		current
        	DESCRIPTION
                	"The type of remote device."
         	::= { rcRrcpDeviceEntry 3 }

    rcRrcpDownlinkPort   OBJECT-TYPE
  	        SYNTAX      INTEGER
         	MAX-ACCESS 	read-only
        	STATUS 		current
        	DESCRIPTION
                	"The link port of remote device."
         	::= { rcRrcpDeviceEntry 4 }

    rcRrcpUplinkPort   OBJECT-TYPE
  	        SYNTAX      INTEGER
         	MAX-ACCESS 	read-only
        	STATUS 		current
        	DESCRIPTION
                	"The link port of uplink device."
         	::= { rcRrcpDeviceEntry 5 }

    rcRrcpUplinkMac   OBJECT-TYPE
  	        SYNTAX      MacAddress
         	MAX-ACCESS 	read-only
        	STATUS 		current
        	DESCRIPTION
                	"The MAC address of uplink device."
         	::= { rcRrcpDeviceEntry 6 }                    
         		
    rcRrcpSoftVersion  OBJECT-TYPE
  	        SYNTAX     INTEGER
         	MAX-ACCESS read-only
         	STATUS   current
         	DESCRIPTION
                	"The software bin version of remote device."
         	::= { rcRrcpDeviceEntry 7 }

 ------------------------------------------------------------------------------
--	rcRrcpStatsTable
------------------------------------------------------------------------------
------------------------------------------------------------------------------
     rcRrcpStatsTable  OBJECT-TYPE
			SYNTAX		SEQUENCE OF	RcRrcpStatsEntry
			MAX-ACCESS	not-accessible
			STATUS		current
			DESCRIPTION
				 "A table of RRCP statistics."
			::=	{  rcRrcpMibObjects 5 }

	rcRrcpStatsEntry  OBJECT-TYPE
			SYNTAX		RcRrcpStatsEntry
			MAX-ACCESS	not-accessible
			STATUS		current
			DESCRIPTION
			   	"A list of RRCP statistics parameters on the interface."
			INDEX {	rcRrcpInterfaceIndex }
			::=	{ rcRrcpStatsTable 1 }

	RcRrcpStatsEntry ::= SEQUENCE {
			rcRrcpHelloTx       		 Counter32,
			rcRrcpGetTx       			 Counter32,
			rcRrcpSetTx       			 Counter32,
			rcRrcpGetReplyRx       		 Counter32,
			rcRrcpHelloReplyRx       	 Counter32			
			}
	 		
     rcRrcpHelloTx  OBJECT-TYPE
 	      	SYNTAX 	  	Counter32
	      	MAX-ACCESS  read-only
	      	STATUS      current
 	      	DESCRIPTION
           			"A count of the number of Hello packets transmitted 
           			on this interface."            			
          	::= { rcRrcpStatsEntry 1 }

     rcRrcpGetTx  OBJECT-TYPE
 	      	SYNTAX 	  	Counter32
	      	MAX-ACCESS  read-only
	      	STATUS      current
 	      	DESCRIPTION            			
           			"A count of the number of Get packets transmitted on 
           			this interface." 
          	::= { rcRrcpStatsEntry 2 }

     rcRrcpSetTx  OBJECT-TYPE
 	      	SYNTAX 	  	Counter32
	      	MAX-ACCESS  read-only
	      	STATUS      current
 	      	DESCRIPTION            			
           			"A count of the number of Set packets transmitted on 
           			this interface." 
          	::= { rcRrcpStatsEntry 3 }

     rcRrcpGetReplyRx  OBJECT-TYPE
 	      	SYNTAX 	  	Counter32
	      	MAX-ACCESS  read-only
	      	STATUS      current
 	      	DESCRIPTION
           			"A count of the number of Get Reply packets received 
           			on this interface."
          	::= { rcRrcpStatsEntry 4 }

     rcRrcpHelloReplyRx  OBJECT-TYPE
 	      	SYNTAX 	  	Counter32
	      	MAX-ACCESS  read-only
	      	STATUS      current
 	      	DESCRIPTION            			
           			"A count of the number of Hello Reply packets received 
           			on this interface."
          	::= { rcRrcpStatsEntry 5 }         

END
