ARRIS-SPEED-TEST-MIB DEFINITIONS ::= BEGIN

IMPORTS
   MODULE-IDENTITY,
   OBJECT-TYPE,
   Integer32,
   Counter32,
   Counter64,
   IpAddress,
   Unsigned32
      FROM SNMPv2-SMI
   arrisProdIdCM
      FROM ARRIS-MIB
   TruthValue, DisplayString, TimeInterval, TimeStamp, DateAndTime, TEXTUAL-CONVENTION
      FROM SNMPv2-TC
   SnmpAdminString
      FROM SNMP-FRAMEWORK-MIB
   InetAddress,
   InetAddressType,
   InetPortNumber
      FROM INET-ADDRESS-MIB;

   arrisSpeedTestMib MODULE-IDENTITY
      LAST-UPDATED    "1411130000Z"  -- November 13, 2014
      ORGANIZATION    "ARRIS Broadband"
      CONTACT-INFO    "Rodney Osborne
                       Postal: ARRIS Broadband
                       3871 Lakefield Drive
                       Suite 300
                       Suwanee, GA 30024-1242
                       U.S.A.
                       Phone:  +1 770-473-5120
                       E-mail: rodney.osborne@arrisi.com"
      DESCRIPTION
       "This MIB module supplies the basic proprietary 
        management objects for ARRIS modems."

      -- Revision history
      REVISION "1108090000Z" -- August 9, 2011
         DESCRIPTION
      "Added startDownlinkUplinkTest value to arrisSpeedTestConfigStartStopTest
       Added arrisSpeedTestConfigCpeAccess since cpe access is independent of ul/dl tests"
      REVISION "1107260000Z" -- July 26, 2011
         DESCRIPTION
      "Added arrisSpeedTestConfigDownlinkURL, arrisSpeedTestConfigUplinkURL, 
       arrisSpeedTestConfigEndUserGui, arrisSpeedTestConfigSyslogReports,
       arrisSpeedTestConfigStartStopTest, and arrisSpeedTestResultsStatus"
      REVISION    "1007160000Z"  -- July 16, 2010
         DESCRIPTION
      "Initial version"
::= { arrisProdIdCM 6 }

-- This MIB module contains the following groups.
arrisSpeedTestMibObjects          OBJECT IDENTIFIER ::= { arrisSpeedTestMib 1 }

arrisSpeedTestConfig          OBJECT IDENTIFIER ::= { arrisSpeedTestMibObjects 1 }

arrisSpeedTestConfigDownlinkURL OBJECT-TYPE
    SYNTAX 	OCTET STRING (SIZE (0..512))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object sets up config based on a downlink URL."
    ::= { arrisSpeedTestConfig 1 }

arrisSpeedTestConfigUplinkURL OBJECT-TYPE
    SYNTAX 	OCTET STRING (SIZE (0..512))
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object sets up config based on an uplink URL."
    ::= { arrisSpeedTestConfig 2 }

arrisSpeedTestConfigEndUserGui OBJECT-TYPE
    SYNTAX 	TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object configures access to the WEB GUI for the end user."
    ::= { arrisSpeedTestConfig 3 }

arrisSpeedTestConfigSyslogReports OBJECT-TYPE
    SYNTAX 	TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object configures reporting of results to the event log."
    ::= { arrisSpeedTestConfig 4 }

arrisSpeedTestConfigCpeAccess OBJECT-TYPE
    SYNTAX 	TruthValue
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object configures CPE Access during speed test."
    ::= { arrisSpeedTestConfig 5 }

arrisSpeedTestConfigStartStopTest OBJECT-TYPE
    SYNTAX      INTEGER {
	         stopTest(0),
		 startDownlinkTest(1),
		 startUplinkTest(2),
		 startDownlinkUplinkTest(3)
    }
    MAX-ACCESS  read-write
    STATUS      current
    DESCRIPTION
    "This object is used to start and stop the test."
    ::= { arrisSpeedTestConfig 6 }

-- arrisSpeedTestResultsTable MIB objects --

arrisSpeedTestResultsTable OBJECT-TYPE
    SYNTAX      SEQUENCE OF ArrisSpeedTestResultsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains all the MIB variables required for the
         SpeedTest Results."
    ::= { arrisSpeedTestMibObjects 2 }

arrisSpeedTestResultsEntry OBJECT-TYPE
    SYNTAX      ArrisSpeedTestResultsEntry
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "This table contains all the MIB variables required for the
         Speedtest Results."
    INDEX { arrisSpeedTestResultsIndex  }
    ::= {  arrisSpeedTestResultsTable 1 }

ArrisSpeedTestResultsEntry ::= SEQUENCE {
         arrisSpeedTestResultsIndex                INTEGER,
         arrisSpeedTestResultsStatus               OCTET STRING (SIZE (0..512))
    }

arrisSpeedTestResultsIndex OBJECT-TYPE
    SYNTAX      INTEGER (1..3)
    MAX-ACCESS  not-accessible
    STATUS      current
    DESCRIPTION
        "Index used to order the arrisSpeedTestResultsTable entries."
    ::= { arrisSpeedTestResultsEntry 1 }

arrisSpeedTestResultsStatus OBJECT-TYPE
    SYNTAX OCTET STRING (SIZE (0..512))     
    MAX-ACCESS  read-only
    STATUS      current
    DESCRIPTION
        "This object shows the test status."
    ::= { arrisSpeedTestResultsEntry 2 }

END
