⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 h245.asn

📁 基于h323协议的软phone
💻 ASN
📖 第 1 页 / 共 5 页
字号:
MULTIMEDIA-SYSTEM-CONTROL DEFINITIONS AUTOMATIC TAGS ::=


BEGIN
IMPORTS
        NonStandardParameter,
        NonStandardIdentifier,
        DataProtocolCapability,
        T38FaxProfile
    FROM H323-MESSAGES-CAP;

-- Export all symbols

-- ===================================================================================
-- Top level Messages
-- ===================================================================================

MultimediaSystemControlMessage  ::=CHOICE
{
    request RequestMessage,
    response    ResponseMessage,
    command CommandMessage,
    indication  IndicationMessage,
    ...
}

-- A RequestMessage results in action and requires an immediate response

RequestMessage  ::=CHOICE
{
    nonStandard NonStandardMessage,

    masterSlaveDetermination    MasterSlaveDetermination,

    terminalCapabilitySet   TerminalCapabilitySet,

    openLogicalChannel  OpenLogicalChannel,
    closeLogicalChannel CloseLogicalChannel,

    requestChannelClose RequestChannelClose,

    multiplexEntrySend  MultiplexEntrySend,

    requestMultiplexEntry   RequestMultiplexEntry,

    requestMode RequestMode,

    roundTripDelayRequest   RoundTripDelayRequest,

    maintenanceLoopRequest  MaintenanceLoopRequest,

    ...,
    communicationModeRequest    CommunicationModeRequest,
    conferenceRequest   ConferenceRequest,

    multilinkRequest    MultilinkRequest,
    logicalChannelRateRequest   LogicalChannelRateRequest
}

-- A ResponseMessage is the response to a request Message

ResponseMessage ::=CHOICE
{
    nonStandard NonStandardMessage,

    masterSlaveDeterminationAck MasterSlaveDeterminationAck,
    masterSlaveDeterminationReject  MasterSlaveDeterminationReject,

    terminalCapabilitySetAck    TerminalCapabilitySetAck,
    terminalCapabilitySetReject TerminalCapabilitySetReject,

    openLogicalChannelAck   OpenLogicalChannelAck,
    openLogicalChannelReject    OpenLogicalChannelReject,
    closeLogicalChannelAck  CloseLogicalChannelAck,

    requestChannelCloseAck  RequestChannelCloseAck,
    requestChannelCloseReject   RequestChannelCloseReject,

    multiplexEntrySendAck   MultiplexEntrySendAck,
    multiplexEntrySendReject    MultiplexEntrySendReject,

    requestMultiplexEntryAck    RequestMultiplexEntryAck,
    requestMultiplexEntryReject RequestMultiplexEntryReject,

    requestModeAck  RequestModeAck,
    requestModeReject   RequestModeReject,

    roundTripDelayResponse  RoundTripDelayResponse,

    maintenanceLoopAck  MaintenanceLoopAck,
    maintenanceLoopReject   MaintenanceLoopReject,

    ...,
    communicationModeResponse   CommunicationModeResponse,

    conferenceResponse  ConferenceResponse,

    multilinkResponse   MultilinkResponse,

    logicalChannelRateAcknowledge   LogicalChannelRateAcknowledge,
    logicalChannelRateReject    LogicalChannelRateReject


}

-- A CommandMessage requires action, but no explicit response

CommandMessage  ::=CHOICE
{
    nonStandard NonStandardMessage,

    maintenanceLoopOffCommand   MaintenanceLoopOffCommand,

    sendTerminalCapabilitySet   SendTerminalCapabilitySet,

    encryptionCommand   EncryptionCommand,

    flowControlCommand  FlowControlCommand,

    endSessionCommand   EndSessionCommand,

    miscellaneousCommand    MiscellaneousCommand,

    ...,
    communicationModeCommand    CommunicationModeCommand,

    conferenceCommand   ConferenceCommand,

    h223MultiplexReconfiguration    H223MultiplexReconfiguration,

    newATMVCCommand NewATMVCCommand,

    mobileMultilinkReconfigurationCommand   MobileMultilinkReconfigurationCommand

}

-- An IndicationMessage is information that does not require action or response

IndicationMessage   ::=CHOICE
{
    nonStandard NonStandardMessage,

    functionNotUnderstood   FunctionNotUnderstood,

    masterSlaveDeterminationRelease MasterSlaveDeterminationRelease,

    terminalCapabilitySetRelease    TerminalCapabilitySetRelease,

    openLogicalChannelConfirm   OpenLogicalChannelConfirm,

    requestChannelCloseRelease  RequestChannelCloseRelease,

    multiplexEntrySendRelease   MultiplexEntrySendRelease,

    requestMultiplexEntryRelease    RequestMultiplexEntryRelease,

    requestModeRelease  RequestModeRelease,

    miscellaneousIndication MiscellaneousIndication,

    jitterIndication    JitterIndication,

    h223SkewIndication  H223SkewIndication,

    newATMVCIndication  NewATMVCIndication,

    userInput   UserInputIndication,
    ...,
    h2250MaximumSkewIndication  H2250MaximumSkewIndication,

    mcLocationIndication    MCLocationIndication,

    conferenceIndication    ConferenceIndication,

    vendorIdentification    VendorIdentification,

    functionNotSupported    FunctionNotSupported,

    multilinkIndication MultilinkIndication,

    logicalChannelRateRelease   LogicalChannelRateRelease,

    flowControlIndication   FlowControlIndication,

    mobileMultilinkReconfigurationIndication    MobileMultilinkReconfigurationIndication

}

-- SequenceNumber is defined here as it is used in a number of Messages
SequenceNumber  ::=INTEGER (0..255)

-- ===================================================================================
-- Non standard Message definitions
-- ===================================================================================

NonStandardMessage  ::=SEQUENCE
{
    nonStandardData NonStandardParameter,
    ...
}


-- ===================================================================================
-- Master-slave determination definitions
-- ===================================================================================

MasterSlaveDetermination    ::=SEQUENCE
{
    terminalType    INTEGER (0..255),
    statusDeterminationNumber   INTEGER (0..16777215),
    ...
}

MasterSlaveDeterminationAck ::=SEQUENCE
{
    decision    CHOICE
    {
        master  NULL,
        slave   NULL
    },
    ...
}

MasterSlaveDeterminationReject  ::=SEQUENCE
{
    cause       CHOICE
    {
        identicalNumbers    NULL,
        ...
    },
    ...
}

MasterSlaveDeterminationRelease ::=SEQUENCE
{
    ...
}


-- ===================================================================================
-- Capability exchange definitions
-- ===================================================================================

TerminalCapabilitySet   ::=SEQUENCE
{
    sequenceNumber  SequenceNumber,

    protocolIdentifier  OBJECT IDENTIFIER,
                -- shall be set to the value
                -- {itu-t (0) recommendation (0) h (8) 245 version (0) 7}


    multiplexCapability MultiplexCapability OPTIONAL,

    capabilityTable SET SIZE (1..256) OF CapabilityTableEntry OPTIONAL,

    capabilityDescriptors   SET SIZE (1..256) OF CapabilityDescriptor OPTIONAL,

    ...
}

CapabilityTableEntry    ::=SEQUENCE
{
    capabilityTableEntryNumber  CapabilityTableEntryNumber,
    capability  Capability OPTIONAL
}

CapabilityDescriptor    ::=SEQUENCE
{
    capabilityDescriptorNumber  CapabilityDescriptorNumber,
    simultaneousCapabilities    SET SIZE (1..256) OF AlternativeCapabilitySet OPTIONAL
}

AlternativeCapabilitySet    ::=SEQUENCE SIZE (1..256) OF CapabilityTableEntryNumber

CapabilityTableEntryNumber  ::=INTEGER (1..65535)

CapabilityDescriptorNumber  ::=INTEGER (0..255)

TerminalCapabilitySetAck    ::=SEQUENCE
{
    sequenceNumber  SequenceNumber,
    ...
}

TerminalCapabilitySetReject ::=SEQUENCE
{
    sequenceNumber  SequenceNumber,
    cause       CHOICE
    {
        unspecified NULL,
        undefinedTableEntryUsed NULL,
        descriptorCapacityExceeded  NULL,
        tableEntryCapacityExceeded  CHOICE
        {
            highestEntryNumberProcessed CapabilityTableEntryNumber,
            noneProcessed   NULL
        },
        ...
    },
    ...
}

TerminalCapabilitySetRelease    ::=SEQUENCE
{
    ...
}

-- ===================================================================================
-- Capability exchange definitions: top level capability description
-- ===================================================================================

Capability      ::=CHOICE
{
    nonStandard NonStandardParameter,

    receiveVideoCapability  VideoCapability,
    transmitVideoCapability VideoCapability,
    receiveAndTransmitVideoCapability   VideoCapability,

    receiveAudioCapability  AudioCapability,
    transmitAudioCapability AudioCapability,
    receiveAndTransmitAudioCapability   AudioCapability,

    receiveDataApplicationCapability    DataApplicationCapability,
    transmitDataApplicationCapability   DataApplicationCapability,
    receiveAndTransmitDataApplicationCapability DataApplicationCapability,

    h233EncryptionTransmitCapability    BOOLEAN,
    h233EncryptionReceiveCapability SEQUENCE
    {
        h233IVResponseTime  INTEGER (0..255),   -- units milliseconds
        ...
    },
    ...,
    conferenceCapability    ConferenceCapability,
    h235SecurityCapability  H235SecurityCapability,
    maxPendingReplacementFor    INTEGER (0..255),
    receiveUserInputCapability  UserInputCapability,
    transmitUserInputCapability UserInputCapability,
    receiveAndTransmitUserInputCapability   UserInputCapability,

    genericControlCapability    GenericCapability,
    receiveMultiplexedStreamCapability  MultiplexedStreamCapability,
    transmitMultiplexedStreamCapability MultiplexedStreamCapability,
    receiveAndTransmitMultiplexedStreamCapability   MultiplexedStreamCapability,
    receiveRTPAudioTelephonyEventCapability AudioTelephonyEventCapability,
    receiveRTPAudioToneCapability   AudioToneCapability
}

H235SecurityCapability  ::=SEQUENCE
{
    encryptionAuthenticationAndIntegrity    EncryptionAuthenticationAndIntegrity,

    mediaCapability CapabilityTableEntryNumber,
        -- Note: the mediaCapability shall refer to Capability Table Entries that do contain a transmit,
        -- receive, or receiveAndTransmit AudioCapability, VideoCapability,
        -- DataApplicationCapability, or similar capability indicated by a NonStandardParameter only

    ...
}

-- ===================================================================================
-- Capability exchange definitions: Multiplex capabilities
-- ===================================================================================

MultiplexCapability ::=CHOICE
{
    nonStandard NonStandardParameter,
    h222Capability  H222Capability,
    h223Capability  H223Capability,
    v76Capability   V76Capability,
    ...,
    h2250Capability H2250Capability,

    genericMultiplexCapability  GenericCapability

}

H222Capability  ::= SEQUENCE
{
    numberOfVCs INTEGER (1..256),
    vcCapability    SET OF VCCapability,
    ...
}

VCCapability    ::=SEQUENCE
{
    aal1        SEQUENCE
    {
        nullClockRecovery   BOOLEAN,
        srtsClockRecovery   BOOLEAN,
        adaptiveClockRecovery   BOOLEAN,
        nullErrorCorrection BOOLEAN,
        longInterleaver BOOLEAN,
        shortInterleaver    BOOLEAN,
        errorCorrectionOnly BOOLEAN,
        structuredDataTransfer  BOOLEAN,
        partiallyFilledCells    BOOLEAN,
        ...
    } OPTIONAL,
    aal5        SEQUENCE
    {
        forwardMaximumSDUSize   INTEGER (0..65535), -- units octets
        backwardMaximumSDUSize  INTEGER (0..65535), -- units octets
        ...
    } OPTIONAL,
    transportStream BOOLEAN,
    programStream   BOOLEAN,
    availableBitRates   SEQUENCE
    {
        type    CHOICE
        {
            singleBitRate   INTEGER (1..65535), -- units 64 kbit/s
            rangeOfBitRates SEQUENCE
            {
                lowerBitRate    INTEGER (1..65535), -- units 64 kbit/s
                higherBitRate   INTEGER (1..65535)  -- units 64 kbit/s
            }
        },
        ...
    },
    ...,
    aal1ViaGateway  SEQUENCE
    {
        gatewayAddress  SET SIZE(1..256) OF Q2931Address,
        nullClockRecovery   BOOLEAN,
        srtsClockRecovery   BOOLEAN,
        adaptiveClockRecovery   BOOLEAN,
        nullErrorCorrection BOOLEAN,
        longInterleaver BOOLEAN,
        shortInterleaver    BOOLEAN,
        errorCorrectionOnly BOOLEAN,
        structuredDataTransfer  BOOLEAN,
        partiallyFilledCells    BOOLEAN,
        ...
    } OPTIONAL
}

H223Capability  ::=SEQUENCE
{
    transportWithI-frames   BOOLEAN,    -- I-frame transport of H.245

    videoWithAL1    BOOLEAN,
    videoWithAL2    BOOLEAN,
    videoWithAL3    BOOLEAN,
    audioWithAL1    BOOLEAN,
    audioWithAL2    BOOLEAN,
    audioWithAL3    BOOLEAN,
    dataWithAL1 BOOLEAN,
    dataWithAL2 BOOLEAN,
    dataWithAL3 BOOLEAN,

    maximumAl2SDUSize   INTEGER (0..65535), -- units octets
    maximumAl3SDUSize   INTEGER (0..65535), -- units octets

    maximumDelayJitter  INTEGER (0..1023),  -- units milliseconds

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -