TPLINK-VOICEVLAN-MIB DEFINITIONS ::= BEGIN       	 
  		IMPORTS
  			TPRowStatus       	 
									FROM TPLINK-TC-MIB
            OBJECT-TYPE,MODULE-IDENTITY
                        	  	    FROM SNMPv2-SMI
            tplinkMgmt
									FROM TPLINK-MIB
			ifIndex
									FROM RFC1213-MIB;
									
		tplinkVoiceVlanMIB MODULE-IDENTITY
			LAST-UPDATED    "201212131630Z"
			ORGANIZATION    "TPLINK"
			CONTACT-INFO    "www.tplink.com"
			DESCRIPTION	    "Private MIB for voice vlan configuration."
			REVISION        "201212131630Z"
			DESCRIPTION
					"Initial version of this MIB module."
			::= { tplinkMgmt 19 } 

			tplinkVoiceVlanMIBObjects			OBJECT IDENTIFIER	::= { tplinkVoiceVlanMIB 1 }
			tplinkVoiceVlanMIBNotifications		OBJECT IDENTIFIER	::= { tplinkVoiceVlanMIB 2 }
			    	
			voiceVlanGlobalConfig   	OBJECT IDENTIFIER ::= {tplinkVoiceVlanMIBObjects 1}	    	    	      
      	   
          voiceVlanGlobalEnable OBJECT-TYPE
          		SYNTAX  INTEGER{
	      											disable(0), 				--disable
	      											enable(1)						--enable
	      											}
              MAX-ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "Select Enable/Disable Voice VLAN function.
                      0. disable 
                      1. enable"
              ::= { voiceVlanGlobalConfig 1 }
              
          voiceVlanId OBJECT-TYPE
              SYNTAX  INTEGER (2..4094)
              MAX-ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "Enter the VLAN ID of the voice VLAN,2-4094."
              ::= { voiceVlanGlobalConfig 2 }
                  
          voiceVlanPriority  OBJECT-TYPE
	            SYNTAX  INTEGER{
									      		cos0(0), 						
									      		cos1(1),
									      		cos2(2),
									      		cos3(3),
									      		cos4(4),
									      		cos5(5),
									      		cos6(6),
												cos7(7)
									      		}
	            MAX-ACCESS  read-write
	            STATUS  current
	            DESCRIPTION
			                    "Select the priority of the port when sending voice data.
			                    0. Cos0
			                    1. Cos1
			                    2. Cos2
			                    3. Cos3
			                    4. Cos4
			                    5. Cos5
			                    6. Cos6
								7. Cos7"
	            ::= { voiceVlanGlobalConfig 3 }
              
          
          
           voiceVlanPortConfig   	OBJECT IDENTIFIER ::= {tplinkVoiceVlanMIBObjects 2}
           
           voiceVlanPortTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF VOICEVLANPORTENTRY
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "Here you can configure the parameters of the ports in the voice VLAN.."
              ::= { voiceVlanPortConfig 1 }

          voiceVlanPortEntry OBJECT-TYPE
              SYNTAX  VOICEVLANPORTENTRY
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "An entry contains of the information of port param."
              INDEX   { ifIndex }
              ::= { voiceVlanPortTable 1 }
      
          VOICEVLANPORTENTRY ::=
              SEQUENCE {
				  voiceVlanPortNumber
              		  OCTET STRING,
                  voiceVlanPortMode
                      INTEGER,
                  voiceVlanPortStatus
                  		INTEGER,
                  voiceVlanPortLag
                  		OCTET STRING
              }
          voiceVlanPortNumber OBJECT-TYPE
            	 SYNTAX  OCTET STRING (SIZE (0..16))  
              MAX-ACCESS  read-only
              STATUS  current
              DESCRIPTION
                      "Displays the port number of the Switch."
              ::= { voiceVlanPortEntry 1 }
                     
          voiceVlanPortMode OBJECT-TYPE
              SYNTAX  INTEGER{
	      										disable(0), 				--Disable
	      										enable(1)					--Enable
	      										}
              MAX-ACCESS  read-write
              STATUS  current
              DESCRIPTION
                      "Select the mode for the port to join the voice VLAN.
                      0. manual: In this mode, you can manually add a port to the 
                      voice VLAN or remove a port from the voice VLAN
                      1. auto: In this mode, the switch automatically adds a port 
                      to the voice VLAN or removes a port from the voice VLAN by 
                      checking whether the port receives voice data or not."
              ::= { voiceVlanPortEntry 2 }
               
          voiceVlanPortStatus OBJECT-TYPE
              SYNTAX  INTEGER{
	      										down(0), 					--inactive
	      										up(1)							--active
	      										}
              MAX-ACCESS  read-only
              STATUS  current
              DESCRIPTION
                      "Displays the state of the port in the current voice VLAN.
                      0. inactive
                      1. active"
              ::= { voiceVlanPortEntry 3 }
              
          voiceVlanPortLag OBJECT-TYPE
          		SYNTAX  OCTET STRING (SIZE (0..10))
              MAX-ACCESS  read-only
              STATUS  current
              DESCRIPTION
                      	"Displays the LAG number which the port belongs to."
              ::= { voiceVlanPortEntry 4 } 
              
        	voiceVlanOuiConfig   	OBJECT IDENTIFIER ::= {tplinkVoiceVlanMIBObjects 3}
        	
        	
          
           voiceVlanOuiConfigTable OBJECT-TYPE
              SYNTAX  SEQUENCE OF VOICEVLANOUICONFIGENTRY
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "The switch determines whether a received packet is a voice 
                      packet by checking its source MAC address. If the source 
                      MAC addresses of packets comply with the OUI (organizationally 
                      unique identifier) addresses configured by the system, the packets 
                      are recognized as voice packets and transmitted in voice VLAN."
              ::= { voiceVlanOuiConfig 1 }
       
          voiceVlanOuiConfigEntry OBJECT-TYPE
              SYNTAX  	VOICEVLANOUICONFIGENTRY
              MAX-ACCESS  not-accessible
              STATUS  current
              DESCRIPTION
                      "An entry contains of the information of a voice vlan oui."
              INDEX   { voiceVlanOui }
              ::= { voiceVlanOuiConfigTable 1}
      
          VOICEVLANOUICONFIGENTRY ::=
              SEQUENCE {
                  voiceVlanOui
                     OCTET STRING, 
                  voiceVlanDescription
                  	OCTET STRING,
                  voiceVlanRowStatus
                      TPRowStatus
              }
              
          voiceVlanOui OBJECT-TYPE
              SYNTAX OCTET STRING (SIZE (0..255))
              MAX-ACCESS  read-create
              STATUS  current
              DESCRIPTION
                      "Enter the OUI address of the voice device."
              ::= { voiceVlanOuiConfigEntry 1 }
                          
          voiceVlanDescription  OBJECT-TYPE
              SYNTAX  	OCTET STRING (SIZE (0..16))
              MAX-ACCESS  read-create
              STATUS  current
              DESCRIPTION
                      "Give a description to the OUI for identification,1-16 characters."
              ::= { voiceVlanOuiConfigEntry 2 }
                    
         voiceVlanRowStatus OBJECT-TYPE
              SYNTAX  TPRowStatus
              MAX-ACCESS  read-create
              STATUS  current
              DESCRIPTION
                      "the following two values are states:
                     these values may be read or written
                     active(1),
                     notInService(2),

                     the following value is a state:
                     this value may be read, but not written
                     notReady(3),

                     the following three values are
                     actions: these values may be written,
                     but are never read
                     createAndGo(4),
                     createAndWait(5),
                     destroy(6)"
              ::= { voiceVlanOuiConfigEntry 3 }
      	

              
     		
      	
          END	  	         