-- ==========================================================================
-- Copyright (c) 2010-2013 Hewlett-Packard Development Company, L.P.
--
-- Description: The purpose of this MIB file is to provide the definition of
--              voice call record.
-- Reference:
-- Version: V1.0
-- History:
-- V1.0 2008-02-17 Initial version, created by Tian Xiaoqiang, Qu Jin
-- ==========================================================================
HPN-ICF-VOICE-CALL-ACTIVE-MIB DEFINITIONS ::= BEGIN
IMPORTS
        OBJECT-TYPE, MODULE-IDENTITY, Integer32, Gauge32
    FROM SNMPv2-SMI
        InetAddressType, InetAddress
    FROM INET-ADDRESS-MIB
        HpnicfCodecType
    FROM HPN-ICF-VOICE-DIAL-CONTROL-MIB
        callActiveSetupTime, callActiveIndex
    FROM DIAL-CONTROL-MIB
        TEXTUAL-CONVENTION
    FROM SNMPv2-TC
        hpnicfVoice
    FROM HPN-ICF-OID-MIB;

hpnicfVoCallActive MODULE-IDENTITY
    LAST-UPDATED "200802170000Z"
    ORGANIZATION
        ""
    CONTACT-INFO
        ""
    DESCRIPTION
        "This MIB file is to provide the definition of voice call
         active record information."
    REVISION "200802170000Z"
    DESCRIPTION
        "The initial version of this MIB file."
    ::= { hpnicfVoice 15 }

-- ======================================
--          Type declaration
-- ======================================

HpnicfGUid ::= TEXTUAL-CONVENTION
    STATUS       current
    DESCRIPTION
        "Represents a global call identifier. The global call identifier is
         used as an unique identifier for an end-to-end call. A zero length
         HpnicfGUid indicates no value for the global call identifier."
    SYNTAX       OCTET STRING(SIZE(0..16))


hpnicfVoiceCallActiveObjects OBJECT IDENTIFIER ::= { hpnicfVoCallActive 1 }

-- ===========================================================================
--                        hpnicfVoiceCallActiveTable
-- ===========================================================================
hpnicfVoiceCallActiveTable OBJECT-TYPE
    SYNTAX SEQUENCE OF HpnicfVoiceCallActiveEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "This table is the voice extension to the call active table
         of DIAL-CONTROL-MIB. It contains voice encapsulation call
         leg information that is derived from the statistics
         of lower layer telephony interface."
    ::= { hpnicfVoiceCallActiveObjects 1 }

hpnicfVoiceCallActiveEntry OBJECT-TYPE
    SYNTAX HpnicfVoiceCallActiveEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The information regarding a single voice encapsulation
         call leg.
         The call leg entry is identified by using the same index
         objects that are used by call active table of
         DIAL-CONTROL-MIB to identify the call.
         An entry of this table is created when its associated call
         active entry in the DIAL-CONTROL-MIB is created and
         call active entry contains the call establishment to a
         voice over telephony network peer.
         The entry is deleted when its associated call active entry
         in the DIAL-CONTROL-MIB is deleted."
    INDEX { callActiveSetupTime, callActiveIndex }
    ::= { hpnicfVoiceCallActiveTable 1 }

HpnicfVoiceCallActiveEntry ::= SEQUENCE {
        hpnicfVoCallActiveConnectionId HpnicfGUid,
        hpnicfVoCallActiveTxDuration Gauge32,
        hpnicfVoCallActiveVoiceTxDuration Gauge32,
        hpnicfVoCallActiveFaxTxDuration Gauge32,
        hpnicfVoCallActiveCoderType HpnicfCodecType,
        hpnicfVoCallActiveImgPageCount Gauge32
    }

hpnicfVoCallActiveConnectionId OBJECT-TYPE
    SYNTAX HpnicfGUid
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The global call identifier for the gateway call."
    ::= { hpnicfVoiceCallActiveEntry 1 }

hpnicfVoCallActiveTxDuration OBJECT-TYPE
    SYNTAX Gauge32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Duration of transmit path open from this peer to the
         voice gateway for the call. The units is milliseconds."
    ::= { hpnicfVoiceCallActiveEntry 2 }

hpnicfVoCallActiveVoiceTxDuration OBJECT-TYPE
    SYNTAX Gauge32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Duration of voice transmitted from this peer to voice
         gateway for this call. The voice utilization rate can be
         obtained by dividing this by hpnicfVoCallActiveTXDuration object.
         The units is milliseconds."
    ::= { hpnicfVoiceCallActiveEntry 3 }

hpnicfVoCallActiveFaxTxDuration OBJECT-TYPE
    SYNTAX Gauge32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Duration of fax transmitted from this peer to voice gateway
         for this call. The fax utilization rate can be obtained by
         dividing this by hpnicfVoCallActiveTXDuration object. The units
         is milliseconds."
    ::= { hpnicfVoiceCallActiveEntry 4 }

hpnicfVoCallActiveCoderType OBJECT-TYPE
    SYNTAX HpnicfCodecType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The negotiated coder type. It specifies the encode type to
         the PSTN leg of a call."
    ::= { hpnicfVoiceCallActiveEntry 5 }

hpnicfVoCallActiveImgPageCount OBJECT-TYPE
    SYNTAX Gauge32
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The number of fax related image pages are received or
         transmitted via the peer for the call. The units is pages."
    ::= { hpnicfVoiceCallActiveEntry 6 }


-- ===========================================================================
--                        hpnicfVoiceVoIPCallActiveTable
-- ===========================================================================
hpnicfVoiceVoIPCallActiveTable OBJECT-TYPE
    SYNTAX SEQUENCE OF HpnicfVoiceVoIPCallActiveEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "This table is the VoIP extension to the call active table of
         DIAL-CONTROL-MIB. It contains VoIP call leg
         information about specific VoIP call destination."
    ::= { hpnicfVoiceCallActiveObjects 2 }

hpnicfVoiceVoIPCallActiveEntry OBJECT-TYPE
    SYNTAX HpnicfVoiceVoIPCallActiveEntry
    MAX-ACCESS not-accessible
    STATUS current
    DESCRIPTION
        "The information regarding a single VoIP call leg.
         The call leg entry is identified by using the same index
         objects that are used by call active table of DIAL-CONTROL-MIB
         to identify the call.
         An entry of this table is created when its associated call
         active entry in the DIAL-CONTROL-MIB is created and the
         call active entry contains information for the call
         establishment to the peer on the IP backbone via a voice
         over IP peer.
         The entry is deleted when its associated call active entry
         in the DIAL-CONTROL-MIB is deleted."
    INDEX { callActiveSetupTime, callActiveIndex }
    ::= { hpnicfVoiceVoIPCallActiveTable 1 }

HpnicfVoiceVoIPCallActiveEntry ::= SEQUENCE {
    hpnicfVoVoIPCallActiveConnectionId HpnicfGUid,
    hpnicfVoVoIPCallActiveRemSigIPType InetAddressType,
    hpnicfVoVoIPCallActiveRemSigIPAddr InetAddress,
    hpnicfVoVoIPCallActiveRemSigPort Integer32,
    hpnicfVoVoIPCallActiveRemMedIPType InetAddressType,
    hpnicfVoVoIPCallActiveRemMedIPAddr InetAddress,
    hpnicfVoVoIPCallActiveRemMedPort Integer32,
    hpnicfVoVoIPCallActiveSessProtocol INTEGER,
    hpnicfVoVoIPCallActiveCoderType HpnicfCodecType
    }

hpnicfVoVoIPCallActiveConnectionId OBJECT-TYPE
    SYNTAX HpnicfGUid
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The global call identifier for the gateway call."
    ::= { hpnicfVoiceVoIPCallActiveEntry 1 }

hpnicfVoVoIPCallActiveRemSigIPType OBJECT-TYPE
    SYNTAX InetAddressType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The type of remote system signalling IP address for the VoIP call."
    ::= { hpnicfVoiceVoIPCallActiveEntry 2 }

hpnicfVoVoIPCallActiveRemSigIPAddr OBJECT-TYPE
    SYNTAX InetAddress
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Remote system signalling IP address for the VoIP call."
    ::= { hpnicfVoiceVoIPCallActiveEntry 3 }

hpnicfVoVoIPCallActiveRemSigPort OBJECT-TYPE
    SYNTAX Integer32(0..65535)
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Remote system UDP listener signalling port to which to transmit voice
         packets."
    ::= { hpnicfVoiceVoIPCallActiveEntry 4 }

hpnicfVoVoIPCallActiveRemMedIPType OBJECT-TYPE
    SYNTAX InetAddressType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The type of remote system media IP address for the VoIP call."
    ::= { hpnicfVoiceVoIPCallActiveEntry 5 }

hpnicfVoVoIPCallActiveRemMedIPAddr OBJECT-TYPE
    SYNTAX InetAddress
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Remote system media IP address for the VoIP call."
    ::= { hpnicfVoiceVoIPCallActiveEntry 6 }

hpnicfVoVoIPCallActiveRemMedPort OBJECT-TYPE
    SYNTAX Integer32(0..65535)
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "Remote system UDP listener media port to which to transmit voice
         packets."
    ::= { hpnicfVoiceVoIPCallActiveEntry 7 }

hpnicfVoVoIPCallActiveSessProtocol OBJECT-TYPE
    SYNTAX INTEGER {
        unknown(1),
        h323(2),
        sip(3)
        }
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The object specifies the session protocol to be used
         for internet call between local and remote router via
         IP backbone."
    ::= { hpnicfVoiceVoIPCallActiveEntry 8 }

hpnicfVoVoIPCallActiveCoderType OBJECT-TYPE
    SYNTAX HpnicfCodecType
    MAX-ACCESS read-only
    STATUS current
    DESCRIPTION
        "The negotiated coder type. It specifies the encode type to
         the VoIP leg of a call."
    ::= { hpnicfVoiceVoIPCallActiveEntry 9 }


END
