-- ****************************************************************************
-- ****************************************************************************
--
--   Copyright(c) 2007 Media5 Corporation
--   Copyright(c) 2009 Media5 Corporation ("Media5")
--
--  NOTICE:
--   This document contains information that is confidential and proprietary to
--   Media5.
--
--   Media5 reserves all rights to this document as well as to the Intellectual
--   Property of the document and the technology and know-how that it includes
--   and represents.
--
--   This publication cannot be reproduced, neither in whole nor in part, in any
--   form whatsoever without prior written approval by Media5.
--
--   Media5 reserves the right to revise this publication and make changes at
--   any time and without the obligation to notify any person and/or entity of
--   such revisions and/or changes.
--
-- ****************************************************************************
-- ****************************************************************************

MX-TELEPHONY-MIB
DEFINITIONS ::= BEGIN

IMPORTS
        MODULE-IDENTITY,
        OBJECT-TYPE,
        Unsigned32
    FROM SNMPv2-SMI
        MODULE-COMPLIANCE,
        OBJECT-GROUP
    FROM SNMPv2-CONF
         MxEnableState,
    FROM MX-TC
        mediatrixConfig
    FROM MX-SMI;

telephonyMIB MODULE-IDENTITY
    LAST-UPDATED "201207030000Z"
    ORGANIZATION "Mediatrix Telecom"
    CONTACT-INFO "Mediatrix Telecom
                  4229, Garlock Street
                  Sherbrooke (Quebec)
                  Canada
                  Phone: (819) 829-8749
                  "
    DESCRIPTION  "This MIB provides telephony-specifics settings."
    -- ************************************************************************
    -- Revision history
    -- ************************************************************************
    REVISION    "201207030000Z"
    DESCRIPTION "Added telephonySpecificCountrySelectionTable and countryCustomizationTonePerPortTable."
    REVISION    "201206080000Z"
    DESCRIPTION "Add southAfrica in the telephonyCountrySelection variable."
    REVISION    "201001180000Z"
    DESCRIPTION "Add uae2 in the telephonyCountrySelection variable."
    REVISION    "200711130000Z"
    DESCRIPTION "Add Chile1 and Chile2 in the telephonyCountrySelection variable."
    REVISION    "200708060000Z"
    DESCRIPTION "Added the countryCustomizationToneGroup."
    REVISION    "200704180000Z"
    DESCRIPTION "Added the austria2-etsi-fsk country selection value."
    REVISION    "200703210000Z"
    DESCRIPTION "Added the austria2 country selection value."
    REVISION    "200701030000Z"
    DESCRIPTION "Added the austria-etsi-fsk country selection value."
    REVISION    "200604280000Z"
    DESCRIPTION "Added czechRepublic as an option for telephonyCountrySelection."
    REVISION    "200509280000Z"
    DESCRIPTION "Added germany3 as option for telephonyCountrySelection."
    REVISION    "200411120000Z"
    DESCRIPTION "Reinserted Malaysia in the list of available countries for
                 telephonyCountrySelection."
    REVISION    "200408030000Z"
    DESCRIPTION "Added newZealand as option for telephonyCountrySelection."
    REVISION    "200408020000Z"
    DESCRIPTION "Added Australia3 as option for telephonyCountrySelection."
    REVISION    "200407210000Z"
    DESCRIPTION "Added Denmark as option for telephonyCountrySelection."
    REVISION    "200407140000Z"
    DESCRIPTION "Added Mexico as option for telephonyCountrySelection."
    REVISION    "200406150000Z"
    DESCRIPTION "Addition of telephonyIpSignalingProtocolProprietary. Addition of the
                 'proprietary' choice to telephonyIpSignalingProtocolSelection."
    REVISION    "200310200000Z"
    DESCRIPTION "Added uae (United Arab Emirates) as option for telephonyCountrySelection."
    REVISION    "200308150000Z"
    DESCRIPTION "Remove malaysia options from telephonyCountrySelection."
    REVISION    "200307030000Z"
    DESCRIPTION "Added support for Brazil"
    REVISION    "200306060000Z"
    DESCRIPTION "Added one choice to telephonyCountrySelection:
                    - netherlands"
    REVISION    "200305010000Z"
    DESCRIPTION "Added two choices to telephonyCountrySelection:
                    - france-etsi-fsk
                    - france-etsi-dtmf"
    REVISION    "200301130000Z"
    DESCRIPTION "Added support for Russia.
                    Revised descriptions for telephonyCountrySelection
                    and telephonyIpSignalingProtocolSelection following most
                    recent MIB Guidelines."
    REVISION    "200301140000Z"
    DESCRIPTION "Added three choices to telephonyCountrySelection:
                    - uk-bellcore(100)
                    - uk-cca(101)
                    - uk-etsi-fsk(102)
                    Updated telephonyCountrySelection DESCRIPTION to reflect
                    its new role."
    REVISION    "200211250000Z"
    DESCRIPTION "Added H323 as a choice for
                    telephonyIpSignalingProtocolSelection."
    REVISION    "200210090000Z"
    DESCRIPTION "Added a precision in the description of
                    telephonyIpSignalingProtocolSelection."
    REVISION    "200203290000Z"
    DESCRIPTION "Added china, hongKong, and malaysia as options for
                    telephonyCountrySelection."
    REVISION    "200111050000Z"
    DESCRIPTION "Added autralia2 as option for telephonyCountrySelection."
    REVISION    "200108290000Z"
    DESCRIPTION "Creation"
     ::= { mediatrixConfig 25 }

telephonyMIBObjects     OBJECT IDENTIFIER ::= { telephonyMIB 1 }
telephonyConformance    OBJECT IDENTIFIER ::= { telephonyMIB 2 }

    telephonyIpSignalingProtocolSelection  OBJECT-TYPE
        SYNTAX     INTEGER {
                             mgcp(1),
                             sip(2),
                             ncs(3),
                             h323(4),
                             proprietary(99)
                           }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The signaling protocol which will be used by the endpoints.

                     mgcp        : Media Gateway Control Protocol.
                     sip         : Session Initiation Protocol.
                     ncs         : PacketCable Network-based Call Signaling protocol.
                     h323        : Packet-Based Multimedia Communications Systems.
                     proprietary : Proprietary signaling protocol.

                     When 'proprietary' is selected, the name of the proprietary signaling protocol
                     is available through the telephonyIpSignalingProtocolProprietary variable.

                     This variable's semantics are different depending on protocol and/or
                     hardware platforms.
                     Please refer to the documentation shipped with your device for more details."
        DEFVAL      { mgcp }
       ::= {  telephonyMIBObjects 3 }


    telephonyIpSignalingProtocolProprietary  OBJECT-TYPE
        SYNTAX      OCTET STRING (SIZE (0..32))
        MAX-ACCESS  read-only
        STATUS      current
        DESCRIPTION "Name of the proprietary signaling protocol used by the endpoint.

                     This variable is meaningful only if the telephonyIpSignalingProtocolSelection
                     variable was previously set to 'proprietary'.

                     This variable's semantics are different depending on protocol and/or
                     hardware platforms.
                     Please refer to the documentation shipped with your device for more details."
        DEFVAL      { "" }
       ::= {  telephonyMIBObjects 4 }

    telephonyCountrySelection OBJECT-TYPE
        SYNTAX      INTEGER {
                             northAmerica1(1),
                             northAmerica2(2),
                             austria(3),
                             france(4),
                             germany1(5),
                             germany2(6),
                             uk(7),
                             italy(8),
                             spain(9),
                             switzerland(10),
                             sweden(11),
                             australia1(12),
                             japan(13),
                             israel(14),
                             thailand(15),
                             indonesia(16),
                             australia2(17),
                             china(18),
                             hongKong(19),
                             malaysia(20),
                             russia(21),
                             netherlands(22),
                             brazil(23),
                             uae(24),
                             mexico(25),
                             denmark(26),
                             australia3(27),
                             newZealand(28),
                             austria2(29),
                             germany3(30),
                             czechRepublic(31),
                             chile1(32),
                             chile2(33),
                             uae2(34),
                             southAfrica(35),
                             uk-bellcore(100),
                             uk-cca(101),
                             uk-etsi-fsk(102),
                             france-etsi-fsk(110),
                             france-etsi-dtmf(111),
                             austria-etsi-fsk(120),
                             austria2-etsi-fsk(130)
                            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The country selection permits the selection of predefined country
                     settings for the tone profiles, the ring patterns and other parameters
                     such as input and output gains.

                     For some countries, the caller ID standard can be selected with this variable.

                     This variable's semantics are different depending on protocol and/or
                     hardware platforms.
                     Please refer to the documentation shipped with your device for more details."
        DEFVAL      { northAmerica1 }
        ::= { telephonyMIBObjects 6 }

    -- ************************************************************************
    -- Table specific country selection
    -- ************************************************************************
    telephonySpecificCountrySelectionTable OBJECT-TYPE
        SYNTAX      SEQUENCE OF TelephonySpecificCountrySelectionEntry
        MAX-ACCESS  not-accessible
        STATUS      current
        DESCRIPTION "This table holds per port country configuration variables.

                     This variable's semantics are different depending on protocol and/or
                     hardware platforms.
                     Please refer to the documentation shipped with your device for more details."
        ::= { telephonyMIBObjects  10 }

        telephonySpecificCountrySelectionEntry OBJECT-TYPE
            SYNTAX      TelephonySpecificCountrySelectionEntry
            MAX-ACCESS  not-accessible
            STATUS      current
            DESCRIPTION "Telephony specific country selection entries."
            INDEX       {
                            ifIndex
                        }
            ::= { telephonySpecificCountrySelectionTable 1 }

            TelephonySpecificCountrySelectionEntry ::= SEQUENCE
                {
                    telephonySpecificCountrySelectionEnableConfig MxEnableState,
                    telephonySpecificCountrySelectionCountry INTEGER
                }

        telephonySpecificCountrySelectionEnableConfig OBJECT-TYPE
            SYNTAX  MxEnableState
            MAX-ACCESS  read-write
            STATUS  current
            DESCRIPTION "When set to enable, overrides the value configured
                         in telephonyCountrySelection for this port with the
                         value configured in telephonySpecificCountrySelectionCountry."

            DEFVAL { disable }
            ::=  { telephonySpecificCountrySelectionEntry 10 }

        telephonySpecificCountrySelectionCountry OBJECT-TYPE
        SYNTAX      INTEGER {
                             northAmerica1(1),
                             northAmerica2(2),
                             austria(3),
                             france(4),
                             germany1(5),
                             germany2(6),
                             uk(7),
                             italy(8),
                             spain(9),
                             switzerland(10),
                             sweden(11),
                             australia1(12),
                             japan(13),
                             israel(14),
                             thailand(15),
                             indonesia(16),
                             australia2(17),
                             china(18),
                             hongKong(19),
                             malaysia(20),
                             russia(21),
                             netherlands(22),
                             brazil(23),
                             uae(24),
                             mexico(25),
                             denmark(26),
                             australia3(27),
                             newZealand(28),
                             austria2(29),
                             germany3(30),
                             czechRepublic(31),
                             chile1(32),
                             chile2(33),
                             uae2(34),
                             southAfrica(35),
                             uk-bellcore(100),
                             uk-cca(101),
                             uk-etsi-fsk(102),
                             france-etsi-fsk(110),
                             france-etsi-dtmf(111),
                             austria-etsi-fsk(120),
                             austria2-etsi-fsk(130)
                            }
        MAX-ACCESS  read-write
        STATUS      current
        DESCRIPTION "The country selection permits the selection of predefined country
                     settings for the tone profiles, the ring patterns and other parameters
                     such as input and output gains.

                     For some countries, the caller ID standard can be selected with this variable.

                     This variable's semantics are different depending on protocol and/or
                     hardware platforms.
                     Please refer to the documentation shipped with your device for more details."
            DEFVAL      { northAmerica1 }
            ::= { telephonySpecificCountrySelectionEntry 20 }

    -- ****************************************************************************

    -- Group:  Country Customization Tone

    -- ****************************************************************************

    countryCustomizationToneGroup OBJECT IDENTIFIER
        ::= { telephonyMIBObjects 500 }


        -- ************************************************************************

        -- Table:  Country Customization Tone

        -- ************************************************************************

        countryCustomizationToneTable OBJECT-TYPE
            SYNTAX        SEQUENCE OF CountryCustomizationToneEntry
            MAX-ACCESS    not-accessible
            STATUS        current
            DESCRIPTION " Country Customization Tone

                          This table allows to override the default country tone
                          configuration. The configuration applies to all interfaces.
                          "
            ::= { countryCustomizationToneGroup 200 }


            countryCustomizationToneEntry OBJECT-TYPE
                SYNTAX         CountryCustomizationToneEntry
                MAX-ACCESS     not-accessible
                STATUS         current
                DESCRIPTION  " A row in the Country Customization Tone. "
                INDEX          {
                                   countryCustomizationToneTone
                               }

                ::= { countryCustomizationToneTable 1 }

            CountryCustomizationToneEntry ::= SEQUENCE
            {
                 countryCustomizationToneTone          INTEGER,
                 countryCustomizationToneOverride      MxEnableState,
                 countryCustomizationTonePattern       OCTET STRING
            }

            -- Index:  Tone

            countryCustomizationToneTone OBJECT-TYPE
                SYNTAX        INTEGER { busy (100) , confirmation (200) ,
                              congestion(300) , dial(400) , intercept (600) ,
                              messageWaiting (700) , preemption(800) ,
                              reorder(900) , ringback (1000) , roh(1100) , sit (1200) ,
                              stutter(1300) }
                MAX-ACCESS    read-only
                STATUS        current
                DESCRIPTION " Tone

                              Tone to customize.
                              "
                ::= { countryCustomizationToneEntry 100 }

            -- Columnar:  Override Country Tone Configuration

            countryCustomizationToneOverride OBJECT-TYPE
                SYNTAX        MxEnableState
                MAX-ACCESS    read-write
                STATUS        current
                DESCRIPTION "Override Country Tone Configuration

                              Allows overriding of the default country tone setting.

                              disable: The unit uses the default country
                                       tone setting.

                              enable: The unit uses the tone configuration contained
                                      in the associated countryCustomizationTonePattern variable.
                              "
                DEFVAL        { disable }
                ::= { countryCustomizationToneEntry 200 }

            -- Columnar:  Pattern

            countryCustomizationTonePattern OBJECT-TYPE
                SYNTAX        OCTET STRING ( SIZE(0..512) )
                MAX-ACCESS    read-write
                STATUS        current
                DESCRIPTION "Pattern

                              Description string for the custom tone. Only in effect
                              when the corresponding countryCustomizationToneOverride variable
                              is set to 'enable'.

                              See the documentation for a description of the
                              syntax.
                              "
                DEFVAL        { "" }
                ::= { countryCustomizationToneEntry 300 }


        -- End of table:  Country Customization Tone


        -- ************************************************************************

        -- Table:  Country Customization Tone Per Port

        -- ************************************************************************

        countryCustomizationTonePerPortTable OBJECT-TYPE
            SYNTAX        SEQUENCE OF CountryCustomizationTonePerPortEntry
            MAX-ACCESS    not-accessible
            STATUS        current
            DESCRIPTION " Country Customization Tone Per Port

                          This table allows to override the default country tone
                          configuration. The configuration applies to a specific interface.

                          This object replaces countryCustomizationToneTable and it has
                          precedence over it.

                          This variable's semantics are different depending on protocol and/or
                          hardware platforms.
                          Please refer to the documentation shipped with your device for more details.
                          "
            ::= { countryCustomizationToneGroup 300 }


            countryCustomizationTonePerPortEntry OBJECT-TYPE
                SYNTAX         CountryCustomizationTonePerPortEntry
                MAX-ACCESS     not-accessible
                STATUS         current
                DESCRIPTION  " A row in the Country Customization Tone. "
                INDEX          {
                                   ifIndex,
                                   countryCustomizationTonePerPortTone
                               }

                ::= { countryCustomizationTonePerPortTable 1 }

            CountryCustomizationTonePerPortEntry ::= SEQUENCE
            {
                 countryCustomizationTonePerPortTone        INTEGER,
                 countryCustomizationTonePerPortOverride    MxEnableState,
                 countryCustomizationTonePerPortPattern     OCTET STRING
            }

            -- Index:  Tone

            countryCustomizationTonePerPortTone OBJECT-TYPE
                SYNTAX        INTEGER { busy (100) , confirmation (200) ,
                              congestion(300) , dial(400) , intercept (600) ,
                              messageWaiting (700) , preemption(800) ,
                              reorder(900) , ringback (1000) , roh(1100) , sit (1200) ,
                              stutter(1300) }
                MAX-ACCESS    read-only
                STATUS        current
                DESCRIPTION " Tone

                              Tone to customize.
                              "
                ::= { countryCustomizationTonePerPortEntry 100 }

            -- Columnar:  Override Country Tone Configuration

            countryCustomizationTonePerPortOverride OBJECT-TYPE
                SYNTAX        MxEnableState
                MAX-ACCESS    read-write
                STATUS        current
                DESCRIPTION "Override Country Tone Configuration

                              Allows overriding of the default country tone setting.

                              disable: The port uses the default country
                                       tone setting.

                              enable: The port uses the tone configuration contained
                                      in the associated countryCustomizationTonePerPortPattern variable.
                              "
                DEFVAL        { disable }
                ::= { countryCustomizationTonePerPortEntry 200 }

            -- Columnar:  Pattern

            countryCustomizationTonePerPortPattern OBJECT-TYPE
                SYNTAX        OCTET STRING ( SIZE(0..512) )
                MAX-ACCESS    read-write
                STATUS        current
                DESCRIPTION "Pattern

                              Description string for the custom tone. Only in effect
                              when the corresponding countryCustomizationTonePerPortOverride variable
                              is set to 'enable'.

                              See the documentation for a description of the
                              syntax.
                              "
                DEFVAL        { "" }
                ::= { countryCustomizationTonePerPortEntry 300 }


        -- End of table:  Country Per Port Customization Tone

    -- End of group:  Country Customization Tone


    -- ************************************************************************
    -- Conformance information
    -- ************************************************************************
    telephonyCompliances OBJECT IDENTIFIER ::= { telephonyConformance 1 }

    telephonyComplVer1 MODULE-COMPLIANCE
        STATUS      current
        DESCRIPTION
            "This is the list of conformance group to support telephony global
             parameters."
        MODULE -- This Module
            MANDATORY-GROUPS {
                                telephonyGroupVer1
                             }
        ::= { telephonyCompliances 1 }

    -- ************************************************************************
    -- MIB variable grouping
    -- ************************************************************************
    telephonyGroups OBJECT IDENTIFIER ::= { telephonyConformance 2 }

    telephonyGroupVer1 OBJECT-GROUP
        OBJECTS {
                 telephonyIpSignalingProtocolSelection,
                 telephonyIpSignalingProtocolProprietary,
                 telephonyCountrySelection,
                 telephonySpecificCountrySelectionTable
                }
        STATUS current
        DESCRIPTION
            "This group holds the objects that define telephony parameters"
        ::= { telephonyGroups 1 }


END
