diff options
Diffstat (limited to 'epan/dissectors/asn1/camel/CAP-datatypes.asn')
-rw-r--r-- | epan/dissectors/asn1/camel/CAP-datatypes.asn | 1527 |
1 files changed, 1527 insertions, 0 deletions
diff --git a/epan/dissectors/asn1/camel/CAP-datatypes.asn b/epan/dissectors/asn1/camel/CAP-datatypes.asn new file mode 100644 index 0000000000..df8d1df0ae --- /dev/null +++ b/epan/dissectors/asn1/camel/CAP-datatypes.asn @@ -0,0 +1,1527 @@ +-- 3GPP TS 29.078 11.0.0 (2011-09) +-- 5 Common CAP Types +-- 5.1 Data types + +CAP-datatypes {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) umts-network(1) modules(3) cap-datatypes(52) version8(7)} + +DEFINITIONS IMPLICIT TAGS ::= BEGIN + +IMPORTS + + Duration, + Integer4, + Interval, + LegID, + ServiceKey +FROM CS1-DataTypes {itu-t(0) identified-organization(4) etsi(0) inDomain(1) in-network(1) +modules(0) cs1-datatypes(2) version1(0)} + + BothwayThroughConnectionInd, + CriticalityType, + MiscCallInfo +FROM CS2-datatypes {itu-t(0) identified-organization(4) etsi(0) inDomain(1) in-network(1) +cs2(20) modules(0) in-cs2-datatypes(0) version1(0)} + + AddressString, + CellGlobalIdOrServiceAreaIdFixedLength, + Ext-BasicServiceCode, + IMSI, + ISDN-AddressString, + LAIFixedLength, + GSN-Address, -- WS moved to common datatypes in rel 9.0.0 + RAIdentity, -- WS moved to common datatypes in rel 10.4.0 + NAEA-CIC +FROM MAP-CommonDataTypes {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) +gsm-Network(1) modules(3) map-CommonDataTypes(18) version12(12)} + + Ext-QoS-Subscribed, + Ext2-QoS-Subscribed, + Ext3-QoS-Subscribed, + GeographicalInformation, +-- GSN-Address, WS moved to common datatypes in rel 9.0.0 + LocationInformation, + LSAIdentity, + QoS-Subscribed, +-- RAIdentity, WS moved to common datatypes in rel 10.4.0 + SubscriberState, + GPRSChargingID +FROM MAP-MS-DataTypes {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) +gsm-Network(1) modules(3) map-MS-DataTypes(11) version12(12)} + + CallReferenceNumber, + SuppressionOfAnnouncement +FROM MAP-CH-DataTypes {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) +gsm-Network(1) modules(3) map-CH-DataTypes(13) version12(12)} + + tc-Messages, + classes +FROM CAP-object-identifiers {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) +umts-network(1) modules(3) cap-object-identifiers(100) version8(7)} + + EXTENSION, + PARAMETERS-BOUND, + SupportedExtensions +FROM CAP-classes classes + + ExtensionContainer +FROM MAP-ExtensionDataTypes {itu-t(0) identified-organization(4) etsi(0) mobileDomain(0) +gsm-Network(1) modules(3) map-ExtensionDataTypes(21) version12(12)} + +; + +AccessPointName {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minAccessPointNameLength .. bound.&maxAccessPointNameLength)) +-- Indicates the AccessPointName, refer to 3GPP TS 24.008 [9] for the encoding. +-- It shall be coded as in the value part defined in 3GPP TS 24.008, +-- i.e. the 3GPP TS 24.008 IEI and 3GPP TS 24.008 octet length indicator +-- shall not be included. + +AChBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE + (bound.&minAChBillingChargingLength .. bound.&maxAChBillingChargingLength)) + (CONSTRAINED BY {-- shall be the result of the BER-encoded value of the type -- + CAMEL-AChBillingChargingCharacteristics {bound}}) +-- The AChBillingChargingCharacteristics parameter specifies the charging related information +-- to be provided by the gsmSSF and the conditions on which this information has to be reported +-- back to the gsmSCF with the ApplyChargingReport operation. The value of the +-- AChBillingChargingCharacteristics of type OCTET STRING carries a value of the ASN.1 data type: +-- CAMEL-AChBillingChargingCharacteristics. The normal encoding rules are used to encode this +-- value. +-- The violation of the UserDefinedConstraint shall be handled as an ASN.1 syntax error. + +AChChargingAddress {PARAMETERS-BOUND : bound} ::= CHOICE { + legID [2] LegID, + srfConnection [50] CallSegmentID {bound} + } + +AdditionalCallingPartyNumber {PARAMETERS-BOUND : bound} ::= Digits {bound} +-- Indicates the Additional Calling Party Number. + +AlertingPattern ::= OCTET STRING (SIZE(3)) +-- Indicates a specific pattern that is used to alert a subscriber +-- (e.g. distinctive ringing, tones, etc.). +-- The encoding of the last octet of this parameter is as defined in 3GPP TS 29.002 [11]. +-- Only the trailing OCTET is used, the remaining OCTETS shall be sent as NULL (zero) +-- The receiving side shall ignore the leading two OCTETS. + +AOCBeforeAnswer ::= SEQUENCE { + aOCInitial [0] CAI-GSM0224, + aOCSubsequent [1] AOCSubsequent OPTIONAL + } + +AOCGPRS ::= SEQUENCE { + aOCInitial [0] CAI-GSM0224, + aOCSubsequent [1] AOCSubsequent OPTIONAL + } + +AOCSubsequent ::= SEQUENCE { + cAI-GSM0224 [0] CAI-GSM0224 , + tariffSwitchInterval [1] INTEGER (1..86400) OPTIONAL + } +-- tariffSwitchInterval is measured in 1 second units + +AppendFreeFormatData ::= ENUMERATED { + overwrite (0), + append (1) + } + +ApplicationTimer ::=INTEGER (0..2047) +-- Used by the gsmSCF to set a timer in the gsmSSF. The timer is in seconds. + +AssistingSSPIPRoutingAddress {PARAMETERS-BOUND : bound} ::= Digits {bound} +-- Indicates the destination address of the gsmSRF for the assist procedure. + +AudibleIndicator ::= CHOICE { + tone BOOLEAN, + burstList [1] BurstList + } + +BackwardServiceInteractionInd ::= SEQUENCE { + conferenceTreatmentIndicator [1] OCTET STRING (SIZE(1)) OPTIONAL, + -- acceptConferenceRequest 'xxxx xx01'B + -- rejectConferenceRequest 'xxxx xx10'B + -- if absent from Connect or ContinueWithArgument, + -- then CAMEL service does not affect conference treatement + callCompletionTreatmentIndicator [2] OCTET STRING (SIZE(1)) OPTIONAL, + -- acceptCallCompletionServiceRequest 'xxxx xx01'B, + -- rejectCallCompletionServiceRequest 'xxxx xx10'B + -- if absent from Connect or ContinueWithArgument, + -- then CAMEL service does not affect call completion treatment + ... + } + +BasicGapCriteria {PARAMETERS-BOUND : bound} ::= CHOICE { + calledAddressValue [0] Digits {bound}, + gapOnService [2] GapOnService, + calledAddressAndService [29] SEQUENCE { + calledAddressValue [0] Digits {bound}, + serviceKey [1] ServiceKey, + ... + }, + callingAddressAndService [30] SEQUENCE { + callingAddressValue [0] Digits {bound}, + serviceKey [1] ServiceKey, + ... + } + } +-- Both calledAddressValue and callingAddressValue can be +-- incomplete numbers, in the sense that a limited amount of digits can be given. +-- For the handling of numbers starting with the same digit string refer to the detailed +-- procedure of the CallGap operation + +BCSMEvent{PARAMETERS-BOUND : bound} ::= SEQUENCE { + eventTypeBCSM [0] EventTypeBCSM, + monitorMode [1] MonitorMode, + legID [2] LegID OPTIONAL, + dpSpecificCriteria [30] DpSpecificCriteria {bound} OPTIONAL, + automaticRearm [50] NULL OPTIONAL, + ... + } +-- Indicates the BCSM Event information for monitoring. + +BCSM-Failure {PARAMETERS-BOUND : bound} ::= SEQUENCE { + legID [0] LegID OPTIONAL, + cause [2] Cause {bound} OPTIONAL, + ... + } + +BearerCapability {PARAMETERS-BOUND : bound} ::= CHOICE { + bearerCap [0] OCTET STRING (SIZE(2..bound.&maxBearerCapabilityLength)) + } +-- Indicates the type of bearer capability connection to the user. For bearerCap, the ISUP User +-- Service Information, ETSI EN 300 356-1 [23] +-- encoding shall be used. + +Burst ::= SEQUENCE { + numberOfBursts [0] INTEGER (1..3) DEFAULT 1, + burstInterval [1] INTEGER (1..1200) DEFAULT 2, + numberOfTonesInBurst [2] INTEGER (1..3) DEFAULT 3, + toneDuration [3] INTEGER (1..20) DEFAULT 2, + toneInterval [4] INTEGER (1..20) DEFAULT 2, + ... + } +-- burstInterval, toneDurartion and toneInterval are measured in 100 millisecond units + +BurstList ::= SEQUENCE { + warningPeriod [0] INTEGER (1..1200) DEFAULT 30, + bursts [1] Burst, + ... + } +-- warningPeriod is measured in 1 second units. + +CAI-GSM0224 ::= SEQUENCE { + e1 [0] INTEGER (0..8191) OPTIONAL, + e2 [1] INTEGER (0..8191) OPTIONAL, + e3 [2] INTEGER (0..8191) OPTIONAL, + e4 [3] INTEGER (0..8191) OPTIONAL, + e5 [4] INTEGER (0..8191) OPTIONAL, + e6 [5] INTEGER (0..8191) OPTIONAL, + e7 [6] INTEGER (0..8191) OPTIONAL + } +-- Indicates Charge Advice Information to the Mobile Station. For information regarding +-- parameter usage, refer to 3GPP TS 22.024 [2]. + +CalledPartyBCDNumber {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minCalledPartyBCDNumberLength .. bound.&maxCalledPartyBCDNumberLength)) +-- Indicates the Called Party Number, including service selection information. +-- Refer to 3GPP TS 24.008 [9] for encoding. +-- This data type carries only the 'type of number', 'numbering plan +-- identification' and 'number digit' fields defined in 3GPP TS 24.008 [9]; +-- it does not carry the 'called party BCD number IEI' or 'length of called +-- party BCD number contents'. +-- In the context of the DestinationSubscriberNumber field in ConnectSMSArg or +-- InitialDPSMSArg, a CalledPartyBCDNumber may also contain an alphanumeric +-- character string. In this case, type-of-number '101'B is used, in accordance +-- with 3GPP TS 23.040 [6]. The address is coded in accordance with the +-- GSM 7 bit default alphabet definition and the SMS packing rules +-- as specified in 3GPP TS 23.038 [15] in this case. + +CalledPartyNumber {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minCalledPartyNumberLength .. bound.&maxCalledPartyNumberLength)) +-- Indicates the Called Party Number. Refer to ETS EN 300 356 1 [23] for encoding. + +-- A CalledPartyNumber may contain national-specific values of the Nature Of Address +-- indicator. The filling-in of the national-specific Nature Of Address indicator +-- values shall be done in accordance with the national ISUP of the gsmSSF country, e.g. +-- ANSI T1.113-1995 [92]. +-- In terms of ETS EN 300 356-1 [23], the Destination Address Field is not present if the +-- destination address length is set to zero. This is the case e.g. when the ANSI +-- ISUP Nature Of Address indicator indicates no number present, operator requested +-- (1110100) or no number present, cut-through call to carrier (1110101). +-- See also see 3GPP TS 23.078 [7]. + +CallingPartyNumber {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minCallingPartyNumberLength .. bound.&maxCallingPartyNumberLength)) +-- Indicates the Calling Party Number. Refer to ETSI EN 300 356 1 [23] for encoding. + +CallResult {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minCallResultLength .. bound.&maxCallResultLength)) + (CONSTRAINED BY {-- shall be the result of the BER-encoded value of type - + CAMEL-CallResult {bound}}) +-- The violation of the UserDefinedConstraint shall be handled as an ASN.1 syntax error. + +-- This parameter provides the gsmSCF with the charging related information previously requested +-- using the ApplyCharging operation. This shall include the partyToCharge parameter as +-- received in the related ApplyCharging operation to correlate the result to the request + +CallSegmentFailure {PARAMETERS-BOUND : bound} ::= SEQUENCE { + callSegmentID [0] CallSegmentID {bound} OPTIONAL, + cause [2] Cause {bound} OPTIONAL, + ... + } + +CallSegmentID {PARAMETERS-BOUND : bound} ::= INTEGER (1..bound.&numOfCSs) + +CallSegmentToCancel {PARAMETERS-BOUND : bound} ::= SEQUENCE { + invokeID [0] InvokeID OPTIONAL, + callSegmentID [1] CallSegmentID {bound} OPTIONAL, + ... + } + +CAMEL-AChBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= CHOICE { + timeDurationCharging [0] SEQUENCE { + maxCallPeriodDuration [0] INTEGER (1..864000), + releaseIfdurationExceeded [1] BOOLEAN DEFAULT FALSE, + tariffSwitchInterval [2] INTEGER (1..86400) OPTIONAL, + audibleIndicator [3] AudibleIndicator DEFAULT tone: FALSE, + extensions [4] Extensions {bound} OPTIONAL, + ... + } + } +-- tariffSwitchInterval is measured in 1 second units. +-- maxCallPeriodDuration is measured in 100 millisecond units + +CAMEL-CallResult {PARAMETERS-BOUND : bound} ::= CHOICE { + timeDurationChargingResult [0] SEQUENCE { + partyToCharge [0] ReceivingSideID, + timeInformation [1] TimeInformation, + legActive [2] BOOLEAN DEFAULT TRUE, + callLegReleasedAtTcpExpiry [3] NULL OPTIONAL, + extensions [4] Extensions {bound} OPTIONAL, + aChChargingAddress [5] AChChargingAddress {bound} + DEFAULT legID:receivingSideID:leg1, + ... + } + } + +CAMEL-FCIBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= CHOICE{ + fCIBCCCAMELsequence1 [0] SEQUENCE { + freeFormatData [0] OCTET STRING (SIZE( + bound.&minFCIBillingChargingDataLength .. bound.&maxFCIBillingChargingDataLength)), + partyToCharge [1] SendingSideID DEFAULT sendingSideID: leg1, + appendFreeFormatData [2] AppendFreeFormatData DEFAULT overwrite, + ... + } + } + +CAMEL-FCIGPRSBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= SEQUENCE{ + fCIBCCCAMELsequence1 [0] SEQUENCE { + freeFormatData [0] OCTET STRING (SIZE( + bound.&minFCIBillingChargingDataLength .. bound.&maxFCIBillingChargingDataLength)), + pDPID [1] PDPID OPTIONAL, + appendFreeFormatData [2] AppendFreeFormatData DEFAULT overwrite, + ... + } + } + +CAMEL-FCISMSBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= CHOICE{ + fCIBCCCAMELsequence1 [0] SEQUENCE { + freeFormatData [0] OCTET STRING (SIZE( + bound.&minFCIBillingChargingDataLength .. bound.&maxFCIBillingChargingDataLength)), + appendFreeFormatData [1] AppendFreeFormatData DEFAULT overwrite + } + } + +CAMEL-SCIBillingChargingCharacteristics ::= CHOICE { + aOCBeforeAnswer [0] AOCBeforeAnswer, + aOCAfterAnswer [1] AOCSubsequent, + aOC-extension [2] CAMEL-SCIBillingChargingCharacteristicsAlt + } + +CAMEL-SCIBillingChargingCharacteristicsAlt ::= SEQUENCE { + ... + } +-- This datatype is for extension in future releases. + +CAMEL-SCIGPRSBillingChargingCharacteristics ::= SEQUENCE { + aOCGPRS [0] AOCGPRS, + pDPID [1] PDPID OPTIONAL, + ... + } + +Carrier {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minCarrierLength .. bound.&maxCarrierLength)) +-- This parameter is used for North America (na) only. +-- It contains the carrier selection field (first octet) followed by Carrier ID +-- information (North America (na)). + +-- The Carrier selection is one octet and is encoded as: +-- 00000000 No indication +-- 00000001 Selected carrier identification code (CIC) pre subscribed and not +-- input by calling party +-- 00000010 Selected carrier identification code (CIC) pre subscribed and input by +-- calling party +-- 00000011 Selected carrier identification code (CIC) pre subscribed, no +-- indication of whether input by calling party (undetermined) +-- 00000100 Selected carrier identification code (CIC) not pre subscribed and +-- input by calling party +-- 00000101 +-- to Spare +-- 11111110 +-- 11111111 Reserved + +-- Refer to ANSI T1.113-1995 [92] for encoding of na carrier ID information (3 octets). + +Cause {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minCauseLength .. bound.&maxCauseLength)) +-- Indicates the cause for interface related information. +-- Refer to ETSI EN 300 356 1 [23] Cause parameter for encoding. +-- For the use of cause and location values refer to ITU T Recommendation Q.850 [47] +-- Shall always include the cause value and shall also include the diagnostics field, +-- if available. + +CGEncountered ::= ENUMERATED { + noCGencountered (0), + manualCGencountered (1), + scpOverload (2) + } +-- Indicates the type of automatic call gapping encountered, if any. + +ChangeOfPositionControlInfo {PARAMETERS-BOUND : bound} ::= SEQUENCE SIZE (1..bound.&numOfChangeOfPositionControlInfo) OF ChangeOfLocation {bound} + +ChangeOfLocation {PARAMETERS-BOUND : bound} ::= CHOICE { + cellGlobalId [0] CellGlobalIdOrServiceAreaIdFixedLength, + serviceAreaId [1] CellGlobalIdOrServiceAreaIdFixedLength, + locationAreaId [2] LAIFixedLength, + inter-SystemHandOver [3] NULL, + inter-PLMNHandOver [4] NULL, + inter-MSCHandOver [5] NULL, + changeOfLocationAlt [6] ChangeOfLocationAlt {bound} +} +-- The cellGlobalId shall contain a Cell Global Identification. +-- The serviceAreaId shall contain a Service Area Identification. + +ChangeOfLocationAlt {PARAMETERS-BOUND : bound} ::= SEQUENCE { + ... + } + +ChargeIndicator ::= OCTET STRING (SIZE (1)) +-- As specified in ITU-T Recommendation Q.763 as follows: +-- no indication 'xxxx xx00'B +-- no charge 'xxxx xx01'B +-- charge 'xxxx xx10'B +-- spare 'xxxx xx11'B +-- Sending entity shall fill the upper six bits with '0's. +-- Receiving entity shall ignore the upper six bits. + +ChargeNumber {PARAMETERS-BOUND : bound} ::= LocationNumber {bound} +-- Information sent in either direction indicating the chargeable number for the call and +-- consisting of the odd/even indicator, nature of address indicator, numbering plan indicator, +-- and address signals. + +-- Uses the LocationNumber format which is based on the Location Number format as defined +-- in ITU-T Recommendation Q.763 [45]. +-- For example, the ChargeNumber may be a third party number to which a call is billed for +-- the 3rd party billing service. In this case, the calling party may request operator assistance +-- to charge the call to, for example, their home number. + +-- For NA, this parameter uniquely identifies the chargeable number for a call sent into a North +-- American long distance carrier. It transports the ChargeNumber Parameter Field as defined in +-- ANSI T1.113-1995 [92]. This provides +-- - 1 octet for the nature of address indicator field, plus +-- - 1 octet for a numbering plan field, plus +-- - up to 5 octets for the address signal (up to 10 digits) + +-- The Charge Number in ANSI T1.113-1995 [92] normally contains a 10 digit national number within +-- the North American Numbering Plan (NANP); longer (e.g. international) charge numbers are not +-- supported in ANSI T1.113-1995 [92]. + +ChargingCharacteristics ::= CHOICE { + maxTransferredVolume [0] INTEGER (1..4294967295), + maxElapsedTime [1] INTEGER (1..86400) + } +-- maxTransferredVolume is measured in number of bytes +-- maxElapsedTime is measured in seconds + +ChargingResult ::= CHOICE { + transferredVolume [0] TransferredVolume, + elapsedTime [1] ElapsedTime + } + +ChargingRollOver ::= CHOICE { + transferredVolumeRollOver [0] TransferredVolumeRollOver, + elapsedTimeRollOver [1] ElapsedTimeRollOver + } +-- transferredVolumeRollOver shall be reported if ApplyChargingReportGPRS reports volume and +-- a roll-over has occurred in one or more volume counters. Otherwise, it shall be absent. +-- elapsedTimeRollOver shall be reported if ApplyChargingReportGPRS reports duration and +-- a roll-over has occurred in one or more duration counters. Otherwise, it shall be absent. + +CollectedDigits ::= SEQUENCE { + minimumNbOfDigits [0] INTEGER (1..30) DEFAULT 1, + maximumNbOfDigits [1] INTEGER (1..30), + endOfReplyDigit [2] OCTET STRING (SIZE (1..2)) OPTIONAL, + cancelDigit [3] OCTET STRING (SIZE (1..2)) OPTIONAL, + startDigit [4] OCTET STRING (SIZE (1..2)) OPTIONAL, + firstDigitTimeOut [5] INTEGER (1..127) OPTIONAL, + interDigitTimeOut [6] INTEGER (1..127) OPTIONAL, + errorTreatment [7] ErrorTreatment DEFAULT stdErrorAndInfo, + interruptableAnnInd [8] BOOLEAN DEFAULT TRUE, + voiceInformation [9] BOOLEAN DEFAULT FALSE, + voiceBack [10] BOOLEAN DEFAULT FALSE + } +-- The use of voiceBack and the support of voice recognition via voiceInformation +-- is network operator specific. +-- The endOfReplyDigit, cancelDigit, and startDigit parameters have been +-- designated as OCTET STRING, and are to be encoded as BCD, one digit per octet +-- only, contained in the four least significant bits of each OCTET. The following encoding shall +-- be applied for the non-decimal characters: +-- 1011 (*), 1100 (#). +-- The usage is service dependent. +-- firstDigitTimeOut and interDigitTimeOut are measured in seconds. + +CollectedInfo ::= CHOICE { + collectedDigits [0] CollectedDigits + } + +ConnectedNumberTreatmentInd ::= ENUMERATED { + noINImpact (0), + presentationRestricted (1), + presentCalledINNumber (2), + presentCallINNumberRestricted (3) +} +-- This parameter is used to suppress or to display the connected number. + +ControlType ::= ENUMERATED { + sCPOverloaded (0), + manuallyInitiated (1) + } + +CompoundCriteria {PARAMETERS-BOUND : bound} ::= SEQUENCE { + basicGapCriteria [0] BasicGapCriteria {bound}, + scfID [1] ScfID {bound} OPTIONAL + } + +CorrelationID {PARAMETERS-BOUND : bound} ::= Digits {bound} +-- used by gsmSCF for correlation with a previous operation. + +DateAndTime ::= OCTET STRING (SIZE(7)) +-- DateAndTime is BCD encoded. The year digit indicating millenium occupies bits +-- 0-3 of the first octet, and the year digit indicating century occupies bits +-- 4-7 of the first octet. +-- The year digit indicating decade occupies bits 0-3 of the second octet, +-- whilst the digit indicating the year within the decade occupies bits 4-7 of +-- the second octet. +-- The most significant month digit occupies bits 0-3 of the third octet, +-- and the least significant month digit occupies bits 4-7 of the third octet. +-- The most significant day digit occupies bits 0-3 of the fourth octet, +-- and the least significant day digit occupies bits 4-7 of the fourth octet. +-- The most significant hours digit occupies bits 0-3 of the fifth octet, +-- and the least significant digit occupies bits 4-7 of the fifth octet. +-- The most significant minutes digit occupies bits 0-3 of the sixth octet, +-- and the least significant digit occupies bits 4-7 of the sixth octet. +-- The most significant seconds digit occupies bits 0-3 of the seventh octet, +-- and the least seconds significant digit occupies bits 4-7 of the seventh octet. +-- For the encoding of digits in an octet, refer to the timeAndtimezone parameter. + +DestinationRoutingAddress {PARAMETERS-BOUND : bound} ::= SEQUENCE SIZE(1) OF + CalledPartyNumber {bound} +-- Indicates the Called Party Number. + +Digits {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minDigitsLength .. bound.&maxDigitsLength)) +-- Indicates the address signalling digits. +-- Refer to ETSI EN 300 356 1 [23] Generic Number & Generic Digits parameters for encoding. +-- The coding of the subfields 'NumberQualifier' in Generic Number and 'TypeOfDigits' in +-- Generic Digits are irrelevant to the CAP; +-- the ASN.1 tags are sufficient to identify the parameter. +-- The ISUP format does not allow to exclude these subfields, +-- therefore the value is network operator specific. +-- +-- The following parameters shall use Generic Number: +-- - AdditionalCallingPartyNumber for InitialDP +-- - AssistingSSPIPRoutingAddress for EstablishTemporaryConnection +-- - CorrelationID for AssistRequestInstructions +-- - CalledAddressValue for all occurrences, CallingAddressValue for all occurrences. +-- +-- The following parameters shall use Generic Digits: +-- - CorrelationID in EstablishTemporaryConnection +-- - number in VariablePart +-- - digitsResponse in ReceivedInformationArg +-- - midCallEvents in oMidCallSpecificInfo and tMidCallSpecificInfo +-- +-- In the digitsResponse and midCallevents, the digits may also include the '*', '#', +-- a, b, c and d digits by using the IA5 character encoding scheme. If the BCD even or +-- BCD odd encoding scheme is used, then the following encoding shall be applied for the +-- non-decimal characters: 1011 (*), 1100 (#). +-- +-- AssistingSSPIPRoutingAddress in EstablishTemporaryConnection and CorrelationID in +-- AssistRequestInstructions may contain a Hex B digit as address signal. Refer to +-- Annex A.6 for the usage of the Hex B digit. +-- +-- Note that when CorrelationID is transported in Generic Digits, then the digits shall +-- always be BCD encoded. + +DpSpecificCriteria {PARAMETERS-BOUND : bound}::= CHOICE { + applicationTimer [1] ApplicationTimer, + midCallControlInfo [2] MidCallControlInfo, + dpSpecificCriteriaAlt [3] DpSpecificCriteriaAlt {bound} + } +-- Exception handling: reception of DpSpecificCriteriaAlt shall be treated like +-- reception of no DpSpecificCriteria. +-- The gsmSCF may set a timer in the gsmSSF for the No_Answer event. +-- If the user does not answer the call within the allotted time, +-- then the gsmSSF reports the event to the gsmSCF. +-- The gsmSCF may define a criterion for the detection of DTMF digits during a call. +-- The gsmSCF may define other criteria in the dpSpecificCriteriaAlt alternative +-- in future releases. + +DpSpecificCriteriaAlt {PARAMETERS-BOUND : bound} ::= SEQUENCE { + ..., + changeOfPositionControlInfo [0] ChangeOfPositionControlInfo {bound}, + numberOfDigits [1] NumberOfDigits OPTIONAL, + interDigitTimeout [2] INTEGER (1..127) OPTIONAL + } +-- interDigitTimeout duration in seconds. + +DpSpecificInfoAlt {PARAMETERS-BOUND : bound} ::= SEQUENCE { + ..., + oServiceChangeSpecificInfo [0] SEQUENCE { + ext-basicServiceCode [0] Ext-BasicServiceCode OPTIONAL, + ..., + initiatorOfServiceChange [1] InitiatorOfServiceChange OPTIONAL, + natureOfServiceChange [2] NatureOfServiceChange OPTIONAL + + }, + tServiceChangeSpecificInfo [1] SEQUENCE { + ext-basicServiceCode [0] Ext-BasicServiceCode OPTIONAL, + ..., + initiatorOfServiceChange [1] InitiatorOfServiceChange OPTIONAL, + natureOfServiceChange [2] NatureOfServiceChange OPTIONAL + }, + + collectedInfoSpecificInfo [2] SEQUENCE { + calledPartyNumber [0] CalledPartyNumber OPTIONAL, + ... + } + } +-- This datatype is for extension in future releases. + +ElapsedTime ::= CHOICE { + timeGPRSIfNoTariffSwitch [0] INTEGER (0..86400), + timeGPRSIfTariffSwitch [1] SEQUENCE { + timeGPRSSinceLastTariffSwitch [0] INTEGER (0..86400), + timeGPRSTariffSwitchInterval [1] INTEGER (0..86400) OPTIONAL + } + } +-- timeGPRSIfNoTariffSwitch is measured in seconds +-- timeGPRSSinceLastTariffSwitch and timeGPRSTariffSwitchInterval are measured in seconds + +ElapsedTimeRollOver ::= CHOICE { + rO-TimeGPRSIfNoTariffSwitch [0] INTEGER (0..255), + rO-TimeGPRSIfTariffSwitch [1] SEQUENCE { + rO-TimeGPRSSinceLastTariffSwitch [0] INTEGER (0..255) OPTIONAL, + rO-TimeGPRSTariffSwitchInterval [1] INTEGER (0..255) OPTIONAL + } + } +-- rO-TimeGPRSIfNoTariffSwitch, rO-TimeGPRSSinceLastTariffSwitch and +-- rO-TimeGPRSTariffSwitchInterval +-- present counters indicating the number of parameter range rollovers. + +EndUserAddress {PARAMETERS-BOUND: bound} ::= SEQUENCE { + pDPTypeOrganization [0] OCTET STRING (SIZE(1)), + pDPTypeNumber [1] OCTET STRING (SIZE(1)), + pDPAddress [2] OCTET STRING (SIZE( + bound.&minPDPAddressLength .. bound.&maxPDPAddressLength)) OPTIONAL + } +-- Indicates the EndUserAddress, refer to 3GPP TS 29.060 [12] for the encoding. +-- The pDPTypeOrganization shall use the least significant 4 bits of the octet encoded. +-- The sender of this parameter shall set the most significant 4 bits of the octet to 1. +-- The receiver of this parameter shall ignore the most significant 4 bits of this octet. + +ErrorTreatment ::= ENUMERATED { + stdErrorAndInfo (0), + help (1), + repeatPrompt (2) + } +-- stdErrorAndInfomeans returning the 'ImproperCallerResponse' error in the event of an error +-- condition during collection of user info. + +EventSpecificInformationBCSM {PARAMETERS-BOUND : bound} ::= CHOICE { + routeSelectFailureSpecificInfo [2] SEQUENCE { + failureCause [0] Cause {bound} OPTIONAL, + ... + }, + oCalledPartyBusySpecificInfo [3] SEQUENCE { + busyCause [0] Cause {bound} OPTIONAL, + ... + }, + oNoAnswerSpecificInfo [4] SEQUENCE { + -- no specific info defined -- + ... + }, + oAnswerSpecificInfo [5] SEQUENCE { + destinationAddress [50] CalledPartyNumber {bound} OPTIONAL, + or-Call [51] NULL OPTIONAL, + forwardedCall [52] NULL OPTIONAL, + chargeIndicator [53] ChargeIndicator OPTIONAL, + ext-basicServiceCode [54] Ext-BasicServiceCode OPTIONAL, + ext-basicServiceCode2 [55] Ext-BasicServiceCode OPTIONAL, + ... + }, + oMidCallSpecificInfo [6] SEQUENCE { + midCallEvents [1] CHOICE { + dTMFDigitsCompleted [3] Digits {bound}, + dTMFDigitsTimeOut [4] Digits {bound} + } OPTIONAL, + ... + }, + oDisconnectSpecificInfo [7] SEQUENCE { + releaseCause [0] Cause {bound} OPTIONAL, + ... + }, + tBusySpecificInfo [8] SEQUENCE { + busyCause [0] Cause {bound} OPTIONAL, + callForwarded [50] NULL OPTIONAL, + routeNotPermitted [51] NULL OPTIONAL, + forwardingDestinationNumber [52] CalledPartyNumber {bound} OPTIONAL, + ... + }, + tNoAnswerSpecificInfo [9] SEQUENCE { + callForwarded [50] NULL OPTIONAL, + forwardingDestinationNumber [52] CalledPartyNumber {bound} OPTIONAL, + ... + }, + tAnswerSpecificInfo [10] SEQUENCE { + destinationAddress [50] CalledPartyNumber {bound} OPTIONAL, + or-Call [51] NULL OPTIONAL, + forwardedCall [52] NULL OPTIONAL, + chargeIndicator [53] ChargeIndicator OPTIONAL, + ext-basicServiceCode [54] Ext-BasicServiceCode OPTIONAL, + ext-basicServiceCode2 [55] Ext-BasicServiceCode OPTIONAL, + ... + }, + tMidCallSpecificInfo [11] SEQUENCE { + midCallEvents [1] CHOICE { + dTMFDigitsCompleted [3] Digits {bound}, + dTMFDigitsTimeOut [4] Digits {bound} + } OPTIONAL, + ... + }, + tDisconnectSpecificInfo [12] SEQUENCE { + releaseCause [0] Cause {bound} OPTIONAL, + ... + }, + oTermSeizedSpecificInfo [13] SEQUENCE { + locationInformation [50] LocationInformation OPTIONAL, + ... + }, + callAcceptedSpecificInfo [20] SEQUENCE { + locationInformation [50] LocationInformation OPTIONAL, + ... + }, + oAbandonSpecificInfo [21] SEQUENCE { + routeNotPermitted [50] NULL OPTIONAL, + ... + }, + oChangeOfPositionSpecificInfo [50] SEQUENCE { + locationInformation [50] LocationInformation OPTIONAL, + ..., + metDPCriteriaList [51] MetDPCriteriaList {bound} OPTIONAL + }, + tChangeOfPositionSpecificInfo [51] SEQUENCE { + locationInformation [50] LocationInformation OPTIONAL, + ..., + metDPCriteriaList [51] MetDPCriteriaList {bound} OPTIONAL + }, + dpSpecificInfoAlt [52] DpSpecificInfoAlt {bound} + } +-- Indicates the call related information specific to the event. + +EventSpecificInformationSMS ::= CHOICE { + o-smsFailureSpecificInfo [0] SEQUENCE { + failureCause [0] MO-SMSCause OPTIONAL, + ... + }, + o-smsSubmissionSpecificInfo [1] SEQUENCE { + -- no specific info defined-- + ... + }, + t-smsFailureSpecificInfo [2] SEQUENCE { + failureCause [0] MT-SMSCause OPTIONAL, + ... + }, + t-smsDeliverySpecificInfo [3] SEQUENCE { + -- no specific info defined-- + ... + } + } + +EventTypeBCSM ::= ENUMERATED { + collectedInfo (2), + analyzedInformation (3), + routeSelectFailure (4), + oCalledPartyBusy (5), + oNoAnswer (6), + oAnswer (7), + oMidCall (8), + oDisconnect (9), + oAbandon (10), + termAttemptAuthorized (12), + tBusy (13), + tNoAnswer (14), + tAnswer (15), + tMidCall (16), + tDisconnect (17), + tAbandon (18), + oTermSeized (19), + callAccepted (27), + oChangeOfPosition (50), + tChangeOfPosition (51), + ..., + oServiceChange (52), + tServiceChange (53) + } +-- Indicates the BCSM detection point event. +-- Values analyzedInformation and termAttemptAuthorized may be used +-- for TDPs only. +-- Exception handling: reception of an unrecognized value shall be treated +-- like reception of no detection point. + +EventTypeSMS ::= ENUMERATED { + sms-CollectedInfo (1), + o-smsFailure (2), + o-smsSubmission (3), + sms-DeliveryRequested (11), + t-smsFailure (12), + t-smsDelivery (13) + } +-- Values sms-CollectedInfo and sms-DeliveryRequested may be used for TDPs only. + +Extensions {PARAMETERS-BOUND : bound} ::= SEQUENCE SIZE (1..bound.&numOfExtensions) OF ExtensionField +ExtensionField ::= SEQUENCE { + type EXTENSION.&id ({SupportedExtensions}), + -- shall identify the value of an EXTENSION type + criticality CriticalityType DEFAULT ignore, + value [1] EXTENSION.&ExtensionType ({SupportedExtensions}{@type}), + ... + } +-- This parameter indicates an extension of an argument data type. +-- Its content is network operator specific + +FCIBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minFCIBillingChargingLength .. bound.&maxFCIBillingChargingLength)) + (CONSTRAINED BY {-- shall be the result of the BER-encoded value of type -- + CAMEL-FCIBillingChargingCharacteristics {bound}}) +-- This parameter indicates the billing and/or charging characteristics. +-- The violation of the UserDefinedConstraint shall be handled as an ASN.1 syntax error. + +FCIGPRSBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minFCIBillingChargingLength .. bound.&maxFCIBillingChargingLength)) + (CONSTRAINED BY {-- shall be the result of the BER-encoded value of type - + CAMEL-FCIGPRSBillingChargingCharacteristics {bound}}) +-- This parameter indicates the GPRS billing and/or charging characteristics. +-- The violation of the UserDefinedConstraint shall be handled as an ASN.1 syntax error. + +FCISMSBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minFCIBillingChargingLength .. bound.&maxFCIBillingChargingLength)) + (CONSTRAINED BY {-- shall be the result of the BER-encoded value of type - + CAMEL-FCISMSBillingChargingCharacteristics {bound}}) +-- This parameter indicates the SMS billing and/or charging characteristics. +-- The violation of the UserDefinedConstraint shall be handled as an ASN.1 syntax error. + +ForwardServiceInteractionInd ::= SEQUENCE { + conferenceTreatmentIndicator [1] OCTET STRING (SIZE(1)) OPTIONAL, + -- acceptConferenceRequest 'xxxx xx01'B + -- rejectConferenceRequest 'xxxx xx10'B + -- if absent from Connect or ContinueWithArgument, + -- then CAMEL service does not affect conference treatment + callDiversionTreatmentIndicator [2] OCTET STRING (SIZE(1)) OPTIONAL, + -- callDiversionAllowed 'xxxx xx01'B + -- callDiversionNotAllowed 'xxxx xx10'B + -- if absent from Connect or ContinueWithArgument, + -- then CAMEL service does not affect call diversion treatment + callingPartyRestrictionIndicator [4] OCTET STRING (SIZE(1)) OPTIONAL, + -- noINImpact 'xxxx xx01'B + -- presentationRestricted 'xxxx xx10'B + -- if absent from Connect or ContinueWithArgument, + -- then CAMEL service does not affect calling party restriction treatment +... + } + +GapCriteria {PARAMETERS-BOUND : bound}::= CHOICE { + basicGapCriteria BasicGapCriteria {bound}, + compoundGapCriteria CompoundCriteria {bound} + } + +GapIndicators ::= SEQUENCE { + duration [0] Duration, + gapInterval [1] Interval, + ... + } +-- Indicates the call gapping characteristics. +-- No call gapping when gapInterval equals 0. + +GapOnService ::= SEQUENCE { + serviceKey [0] ServiceKey, + ... + } + +GapTreatment {PARAMETERS-BOUND : bound} ::= CHOICE { + informationToSend [0] InformationToSend {bound}, + releaseCause [1] Cause {bound} + } +-- The default value for Cause is the same as in ISUP. + +GenericNumber {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minGenericNumberLength .. bound.&maxGenericNumberLength)) +-- Indicates a generic number. Refer to ETSI EN 300 356 1 [23] Generic number for encoding. + +GenericNumbers {PARAMETERS-BOUND : bound} ::= SET SIZE(1..bound.&numOfGenericNumbers) OF GenericNumber {bound} + +GPRS-QoS ::= CHOICE { + short-QoS-format [0] QoS-Subscribed, + long-QoS-format [1] Ext-QoS-Subscribed + } +-- Short-QoS-format shall be sent for QoS in pre GSM release 99 format. +-- Long-QoS-format shall be sent for QoS in GSM release 99 (and beyond) format. +-- Which of the two QoS formats shall be sent is determined by which QoS +-- format is available in the SGSN at the time of sending. +-- Refer to 3GPP TS 29.002 [11] for encoding details of QoS-Subscribed and +-- Ext-QoS-Subscribed. + +GPRS-QoS-Extension ::= SEQUENCE { + supplement-to-long-QoS-format [0] Ext2-QoS-Subscribed, + ... , + additionalSupplement [1] Ext3-QoS-Subscribed OPTIONAL + } + +GPRSCause {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE + (bound.&minGPRSCauseLength .. bound.&maxGPRSCauseLength)) +-- Shall only include the cause value. + +-- 00000000 Unspecified +-- All other values shall be interpreted as 'Unspecified'. +-- +-- This parameter indicates the cause for CAP interface related information. +-- The GPRSCause mapping to/from GTP cause values specified in the 3GPP TS 29.060 [12] and +-- to/from 3GPP TS 24.008 [9] GMM cause and SM cause values are outside scope of this document. + +GPRSEvent ::= SEQUENCE { + gPRSEventType [0] GPRSEventType, + monitorMode [1] MonitorMode + } +-- Indicates the GPRS event information for monitoring. + +GPRSEventSpecificInformation {PARAMETERS-BOUND : bound} ::= CHOICE { + + attachChangeOfPositionSpecificInformation + [0] SEQUENCE { + locationInformationGPRS [0] LocationInformationGPRS OPTIONAL, + ... + }, + + pdp-ContextchangeOfPositionSpecificInformation + [1] SEQUENCE { + accessPointName [0] AccessPointName {bound} OPTIONAL, + chargingID [1] GPRSChargingID OPTIONAL, + locationInformationGPRS [2] LocationInformationGPRS OPTIONAL, + endUserAddress [3] EndUserAddress {bound} OPTIONAL, + qualityOfService [4] QualityOfService OPTIONAL, + timeAndTimeZone [5] TimeAndTimezone {bound} OPTIONAL, + ..., + gGSNAddress [6] GSN-Address OPTIONAL + }, + + detachSpecificInformation [2] SEQUENCE { + initiatingEntity [0] InitiatingEntity OPTIONAL, + ..., + routeingAreaUpdate [1] NULL OPTIONAL + }, + + disconnectSpecificInformation [3] SEQUENCE { + initiatingEntity [0] InitiatingEntity OPTIONAL, + ..., + routeingAreaUpdate [1] NULL OPTIONAL + }, + + pDPContextEstablishmentSpecificInformation + [4] SEQUENCE { + accessPointName [0] AccessPointName {bound} OPTIONAL, + endUserAddress [1] EndUserAddress {bound} OPTIONAL, + qualityOfService [2] QualityOfService OPTIONAL, + locationInformationGPRS [3] LocationInformationGPRS OPTIONAL, + timeAndTimeZone [4] TimeAndTimezone {bound} OPTIONAL, + pDPInitiationType [5] PDPInitiationType OPTIONAL, + ..., + secondaryPDP-context [6] NULL OPTIONAL + }, + + pDPContextEstablishmentAcknowledgementSpecificInformation + [5] SEQUENCE { + accessPointName [0] AccessPointName {bound} OPTIONAL, + chargingID [1] GPRSChargingID OPTIONAL, + endUserAddress [2] EndUserAddress {bound} OPTIONAL, + qualityOfService [3] QualityOfService OPTIONAL, + locationInformationGPRS [4] LocationInformationGPRS OPTIONAL, + timeAndTimeZone [5] TimeAndTimezone {bound} OPTIONAL, + ..., + gGSNAddress [6] GSN-Address OPTIONAL + } + } + +GPRSEventType ::= ENUMERATED { + attach (1), + attachChangeOfPosition (2), + detached (3), + pdp-ContextEstablishment (11), + pdp-ContextEstablishmentAcknowledgement (12), + disonnect (13), + pdp-ContextChangeOfPosition (14) + } + +InbandInfo {PARAMETERS-BOUND : bound} ::= SEQUENCE { + messageID [0] MessageID {bound}, + numberOfRepetitions [1] INTEGER (1..127) OPTIONAL, + duration [2] INTEGER (0..32767) OPTIONAL, + interval [3] INTEGER (0..32767) OPTIONAL, +... + } +-- Interval is the time in seconds between each repeated announcement. Duration is the total +-- amount of time in seconds, including repetitions and intervals. +-- The end of announcement is either the end of duration or numberOfRepetitions, +-- whatever comes first. +-- duration with value 0 indicates infinite duration + +InformationToSend {PARAMETERS-BOUND : bound} ::= CHOICE { + inbandInfo [0] InbandInfo {bound}, + tone [1] Tone + } + +InitiatingEntity ::= ENUMERATED { + mobileStation (0), + sgsn (1), + hlr (2), + ggsn (3) + } + +InitiatorOfServiceChange ::= ENUMERATED { + a-side (0), + b-side (1) + } + +InvokeID ::= INTEGER (-128..127) + +IPRoutingAddress {PARAMETERS-BOUND : bound} ::= CalledPartyNumber {bound} +-- Indicates the routeing address for the IP. + +IPSSPCapabilities {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minIPSSPCapabilitiesLength .. bound.&maxIPSSPCapabilitiesLength)) +-- Indicates the gsmSRF resources available. The parameter has two parts, a standard and a +-- bilateral part. The standard part indicates capabilities defined as optional in CAP +-- that shall be recognised (but not necessarily supported) by a gsmSCF. The bilateral +-- part contains further information that is not specified in this standard, but which is set +-- according to bilateral agreements between network operators and/or equipment vendors. +-- The last octet of the standard part is indicated by bit 7 being set to 0, otherwise Bit 7 of +-- a standard part octet is set to 1 indicating that the standard part continues in the following +-- octet. Coding is as follows: + +-- Octet 1 Standard Part for CAP +-- Bit Value Meaning +-- 0 0 IPRoutingAddress not supported +-- 1 IPRoutingAddress supported +-- 1 0 VoiceBack not supported +-- 1 VoiceBack supported +-- 2 0 VoiceInformation not supported, via speech recognition +-- 1 VoiceInformation supported, via speech recognition +-- 3 0 VoiceInformation not supported, via voice recognition +-- 1 VoiceInformation supported, via voice recognition +-- 4 0 Generation of voice announcements from Text not supported +-- 1 Generation of voice announcements from Text supported +-- 5 - Reserved +-- 6 - Reserved +-- 7 0 End of standard part +-- 1 This value is reserved in CAP +-- +-- Octets 2 to 4 Bilateral Part: Network operator/equipment vendor specific + +LegOrCallSegment {PARAMETERS-BOUND : bound} ::= CHOICE { + callSegmentID [0] CallSegmentID {bound}, + legID [1] LegID + } + +LegType ::= OCTET STRING (SIZE(1)) +leg1 LegType ::= '01'H +leg2 LegType ::= '02'H + +LocationInformationGPRS ::= SEQUENCE { + cellGlobalIdOrServiceAreaIdOrLAI [0] OCTET STRING (SIZE(5..7)) OPTIONAL, + routeingAreaIdentity [1] RAIdentity OPTIONAL, + geographicalInformation [2] GeographicalInformation OPTIONAL, + sgsn-Number [3] ISDN-AddressString OPTIONAL, + selectedLSAIdentity [4] LSAIdentity OPTIONAL, + extensionContainer [5] ExtensionContainer OPTIONAL, + ..., + sai-Present [6] NULL OPTIONAL, + userCSGInformation [7] UserCSGInformation OPTIONAL +} +-- cellGlobalIdOrServiceAreaIdOrLAI shall contain the value part of the +-- CellGlobalIdOrServiceAreaIdFixedLength type or the LAIFixedLength type (i.e. excluding tags +-- and lengths) as defined in 3GPP TS 29.002 [13]. +-- sai-Present indicates that the cellGlobalIdOrServiceAreaIdOrLAI parameter contains +-- a Service Area Identity. +-- UserCSGInformation contains the CSG ID, Access mode, and the CSG Membership Indication in the +-- case the Access mode is Hybrid Mode, as defined in 3GPP TS 23.060 [93]. + +-- WS define UserCSGInformation +UserCSGInformation ::= OCTET STRING + +LocationNumber {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE ( + bound.&minLocationNumberLength .. bound.&maxLocationNumberLength)) +-- Indicates the Location Number for the calling party. +-- Refer to ETSI EN 300 356 1 [23] for encoding. + +LowLayerCompatibility {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE ( + bound.&minLowLayerCompatibilityLength .. bound.&maxLowLayerCompatibilityLength)) +-- indicates the LowLayerCompatibility for the calling party. +-- Refer to 3GPP TS 24.008 [9] for encoding. +-- It shall be coded as in the value part defined in 3GPP TS 24.008. +-- i.e. the 3GPP TS 24.008 IEI and 3GPP TS 24.008 octet length indicator +-- shall not be included. + +MessageID {PARAMETERS-BOUND : bound} ::= CHOICE { + elementaryMessageID [0] Integer4, + text [1] SEQUENCE { + messageContent [0] IA5String (SIZE( + bound.&minMessageContentLength .. bound.&maxMessageContentLength)), + attributes [1] OCTET STRING (SIZE( + bound.&minAttributesLength .. bound.&maxAttributesLength)) OPTIONAL + }, + elementaryMessageIDs [29] SEQUENCE SIZE (1.. bound.&numOfMessageIDs) OF Integer4, + variableMessage [30] SEQUENCE { + elementaryMessageID [0] Integer4, + variableParts [1] SEQUENCE SIZE (1..5) OF VariablePart {bound} + } + } +-- Use of the text parameter is network operator/equipment vendor specific. + +MetDPCriteriaList {PARAMETERS-BOUND : bound} ::= SEQUENCE SIZE (1..bound.&numOfChangeOfPositionControlInfo) OF MetDPCriterion {bound} + +MetDPCriterion {PARAMETERS-BOUND : bound} ::= CHOICE { + enteringCellGlobalId [0] CellGlobalIdOrServiceAreaIdFixedLength, + leavingCellGlobalId [1] CellGlobalIdOrServiceAreaIdFixedLength, + enteringServiceAreaId [2] CellGlobalIdOrServiceAreaIdFixedLength, + leavingServiceAreaId [3] CellGlobalIdOrServiceAreaIdFixedLength, + enteringLocationAreaId [4] LAIFixedLength, + leavingLocationAreaId [5] LAIFixedLength, + inter-SystemHandOverToUMTS [6] NULL, + inter-SystemHandOverToGSM [7] NULL, + inter-PLMNHandOver [8] NULL, + inter-MSCHandOver [9] NULL, + metDPCriterionAlt [10] MetDPCriterionAlt {bound} +} +-- The enteringCellGlobalId and leavingCellGlobalId shall contain a Cell Global Identification. +-- The enteringServiceAreaId and leavingServiceAreaId shall contain a Service Area Identification. + +MetDPCriterionAlt {PARAMETERS-BOUND : bound} ::= SEQUENCE { + ... + } + +MidCallControlInfo ::= SEQUENCE { + minimumNumberOfDigits [0] INTEGER (1..30) DEFAULT 1, + maximumNumberOfDigits [1] INTEGER (1..30) DEFAULT 30, + endOfReplyDigit [2] OCTET STRING (SIZE (1..2)) OPTIONAL, + cancelDigit [3] OCTET STRING (SIZE (1..2)) OPTIONAL, + startDigit [4] OCTET STRING (SIZE (1..2)) OPTIONAL, + interDigitTimeout [6] INTEGER (1..127) DEFAULT 10, + ... + } +-- +-- - minimumNumberOfDigits specifies the minumum number of digits that shall be collected +-- - maximumNumberOfDigits specifies the maximum number of digits that shall be collected +-- - endOfReplyDigit specifies the digit string that denotes the end of the digits +-- to be collected. +-- - cancelDigit specifies the digit string that indicates that the input shall +-- be erased and digit collection shall start afresh. +-- - startDigit specifies the digit string that denotes the start of the digits +-- to be collected. +-- - interDigitTimeout specifies the maximum duration in seconds between successive +-- digits. +-- +-- endOfReplyDigit, cancelDigit and startDigit shall contain digits in the range 0..9, '*' and '#' +-- only. The collected digits string, reported to the gsmSCF, shall include the endOfReplyDigit and +-- the startDigit, if present. +-- +-- endOfReplyDigit, cancelDigit and startDigit shall be encoded as BCD digits. Each octet shall +-- contain one BCD digit, in the 4 least significant bits of each octet. +-- The following encoding shall be used for the over-decadic digits: 1011 (*), 1100 (#). + +MonitorMode ::= ENUMERATED { + interrupted (0), + notifyAndContinue (1), + transparent (2) + } +-- Indicates the event is relayed and/or processed by the SSP. +-- Transparent means that the gsmSSF or gprsSSF does not notify the gsmSCF of the event. +-- For the use of this parameter refer to the procedure descriptions in clause 11. +-- For the RequestNotificationCharging operation, 'interrupted' shall not be used in MonitorMode. + +MO-SMSCause ::= ENUMERATED { + systemFailure (0), + unexpectedDataValue (1), + facilityNotSupported (2), + sM-DeliveryFailure (3), + releaseFromRadioInterface (4) + } +-- MO SMS error values which are reported to gsmSCF. +-- Most of these values are received from the SMSC as a response to +-- MO-ForwardSM operation. + +MT-SMSCause ::= OCTET STRING (SIZE (1)) +-- This variable is sent to the gsmSCF for a Short Message delivery failure +-- notification. +-- If the delivery failure is due to RP-ERROR RPDU received from the MS, +-- then MT-SMSCause shall be set to the RP-Cause component in the RP-ERROR RPDU. +-- Refer to 3GPP TS 24.011 [10] for the encoding of RP-Cause values. +-- Otherwise, if the delivery failure is due to internal failure in the MSC or SGSN +-- or time-out from the MS, then MT-SMSCause shall be set to 'Protocol error, +-- unspecified', as defined in 3GPP TS 24.011 [10]. + +NAOliInfo ::= OCTET STRING (SIZE (1)) +-- NA Oli information takes the same value as defined in ANSI T1.113-1995 [92] +-- e.g. '3D'H - Decimal value 61 - Cellular Service (Type 1) +-- '3E'H - Decimal value 62 - Cellular Service (Type 2) +-- '3F'H - Decimal value 63 - Cellular Service (roaming) + +NatureOfServiceChange ::= ENUMERATED { + userInitiated (0), + networkInitiated (1) + } + +NumberOfDigits ::= INTEGER (1..255) +-- Indicates the number of digits to be collected. + +OCSIApplicable ::= NULL +-- Indicates that the Originating CAMEL Subscription Information, if present, shall be +-- applied on the outgoing call leg created with a Connect operation. For the use of this +-- parameter see 3GPP TS 23.078 [7]. + +OriginalCalledPartyID {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minOriginalCalledPartyIDLength .. bound.&maxOriginalCalledPartyIDLength)) +-- Indicates the original called number. Refer to ETSI EN 300 356 1 [23] Original Called Number +-- for encoding. + +PDPID ::= OCTET STRING (SIZE (1)) +-- PDP Identifier is a counter used to identify a specific PDP Context within a control +-- relationship between gprsSSF and gsmSCF. + +PDPInitiationType ::= ENUMERATED { + mSInitiated (0), + networkInitiated (1) + } + +QualityOfService ::= SEQUENCE { + requested-QoS [0] GPRS-QoS OPTIONAL, + subscribed-QoS [1] GPRS-QoS OPTIONAL, + negotiated-QoS [2] GPRS-QoS OPTIONAL, + ..., + requested-QoS-Extension [3] GPRS-QoS-Extension OPTIONAL, + subscribed-QoS-Extension [4] GPRS-QoS-Extension OPTIONAL, + negotiated-QoS-Extension [5] GPRS-QoS-Extension OPTIONAL + } + +ReceivingSideID ::= CHOICE { + receivingSideID [1] LegType + } +-- used to identify LegID in operations sent from gsmSSF to gsmSCF + +RedirectingPartyID {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE ( + bound.&minRedirectingPartyIDLength .. bound.&maxRedirectingPartyIDLength)) +-- Indicates redirecting number. +-- Refer to ETSI EN 300 356 1 [23] Redirecting number for encoding. + +RequestedInformationList {PARAMETERS-BOUND : bound} ::= SEQUENCE SIZE (1.. numOfInfoItems) OF RequestedInformation {bound} + +RequestedInformationTypeList ::= SEQUENCE SIZE (1.. numOfInfoItems) OF RequestedInformationType + +RequestedInformation {PARAMETERS-BOUND : bound} ::= SEQUENCE { + requestedInformationType [0] RequestedInformationType, + requestedInformationValue [1] RequestedInformationValue {bound}, +... + } + +RequestedInformationType ::= ENUMERATED { + callAttemptElapsedTime (0), + callStopTime (1), + callConnectedElapsedTime (2), + releaseCause (30) + } + +RequestedInformationValue {PARAMETERS-BOUND : bound} ::= CHOICE { + callAttemptElapsedTimeValue [0] INTEGER (0..255), + callStopTimeValue [1] DateAndTime, + callConnectedElapsedTimeValue [2] Integer4, + releaseCauseValue [30] Cause {bound} + } +-- The callAttemptElapsedTimeValue is specified in seconds. The unit for the +-- callConnectedElapsedTimeValue is 100 milliseconds + +RPCause ::= OCTET STRING (SIZE (1)) +-- RP cause according to 3GPP TS 24.011 [10] or 3GPP TS 29.002 [11]. +-- GsmSCF shall send this cause in the ReleaseSMS operation. +-- For a MO-SMS service, the MSC or SGSN shall send the RP Cause to the originating MS. +-- It shall be used to overwrite the RP-Cause element in the RP-ERROR RPDU. +-- For a MT-SMS service, the MSC or SGSN shall send the RP Cause to the sending SMS-GMSC. +-- It shall be used to overwrite the RP-Cause element in the RP-ERROR RPDU. + +ScfID {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minScfIDLength .. bound.&maxScfIDLength)) +-- defined by network operator. +-- Indicates the gsmSCF identity. + +SCIBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE ( + bound.&minSCIBillingChargingLength .. bound.&maxSCIBillingChargingLength)) + (CONSTRAINED BY {-- shall be the result of the BER-encoded value of type -- + CAMEL-SCIBillingChargingCharacteristics}) +-- Indicates AOC information to be sent to a Mobile Station +-- The violation of the UserDefinedConstraint shall be handled as an ASN.1 syntax error. + +SCIGPRSBillingChargingCharacteristics {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE ( + bound.&minSCIBillingChargingLength .. bound.&maxSCIBillingChargingLength)) + (CONSTRAINED BY {-- shall be the result of the BER-encoded value of type - + CAMEL-SCIGPRSBillingChargingCharacteristics}) +-- Indicates AOC information to be sent to a Mobile Station +-- The violation of the UserDefinedConstraint shall be handled as an ASN.1 syntax error. + +SendingSideID ::= CHOICE {sendingSideID [0] LegType} +-- used to identify LegID in operations sent from gsmSCF to gsmSSF + +ServiceInteractionIndicatorsTwo ::= SEQUENCE { + forwardServiceInteractionInd [0] ForwardServiceInteractionInd OPTIONAL, + -- applicable to operations InitialDP, Connect and ContinueWithArgument. + backwardServiceInteractionInd [1] BackwardServiceInteractionInd OPTIONAL, + -- applicable to operations Connect and ContinueWithArgument. + bothwayThroughConnectionInd [2] BothwayThroughConnectionInd OPTIONAL, + -- applicable to ConnectToResource and EstablishTemporaryConnection + connectedNumberTreatmentInd [4] ConnectedNumberTreatmentInd OPTIONAL, + -- applicable to Connect and ContinueWithArgument + nonCUGCall [13] NULL OPTIONAL, + -- applicable to Connect and ContinueWithArgument + -- indicates that no parameters for CUG shall be used for the call (i.e. the call shall + -- be a non-CUG call). + -- If not present, it indicates one of three things: + -- a) continue with modified CUG information (when one or more of either CUG Interlock Code + -- and Outgoing Access Indicator are present), or + -- b) continue with original CUG information (when neither CUG Interlock Code or Outgoing + -- Access Indicator are present), i.e. no IN impact. + -- c) continue with the original non-CUG call. + holdTreatmentIndicator [50] OCTET STRING (SIZE(1)) OPTIONAL, + -- applicable to InitialDP, Connect and ContinueWithArgument + -- acceptHoldRequest 'xxxx xx01'B + -- rejectHoldRequest 'xxxx xx10'B + -- if absent from Connect or ContinueWithArgument, + -- then CAMEL service does not affect call hold treatment + cwTreatmentIndicator [51] OCTET STRING (SIZE(1)) OPTIONAL, + -- applicable to InitialDP, Connect and ContinueWithArgument + -- acceptCw 'xxxx xx01'B + -- rejectCw 'xxxx xx10'B + -- if absent from Connect or ContinueWithArgument, + -- then CAMEL service does not affect call waiting treatment + ectTreatmentIndicator [52] OCTET STRING (SIZE(1)) OPTIONAL, + -- applicable to InitialDP, Connect and ContinueWithArgument + -- acceptEctRequest 'xxxx xx01'B + -- rejectEctRequest 'xxxx xx10'B + -- if absent from Connect or ContinueWithArgument, + -- then CAMEL service does not affect explicit call transfer treatment + ... + } + +SGSNCapabilities ::= OCTET STRING (SIZE (1)) + +-- Indicates the SGSN capabilities. The coding of the parameter is as follows: +-- Bit Value Meaning +-- 0 0 AoC not supported by SGSN +-- 1 AoC supported by SGSN +-- 1 - This bit is reserved in CAP V.3 +-- 2 - This bit is reserved in CAP V.3 +-- 3 - This bit is reserved in CAP V.3 +-- 4 - This bit is reserved in CAP V.3 +-- 5 - This bit is reserved in CAP V.3 +-- 6 - This bit is reserved in CAP V.3 +-- 7 - This bit is reserved in CAP V.3 + +SMS-AddressString ::= AddressString (SIZE (1 .. maxSMS-AddressStringLength)) +-- This data type is used to transport CallingPartyNumber for MT-SMS. +-- If this data type is used for MO-SMS, then the maximum number of digits shall be 16. +-- An SMS-AddressString may contain an alphanumeric character string. In this +-- case, a nature of address indicator '101'B is used, in accordance with +-- 3GPP TS 23.040 [6]. The address is coded in accordance with the GSM 7 bit +-- default alphabet definition and the SMS packing rules as specified in +-- 3GPP TS 23.038 [15] in this case. + +maxSMS-AddressStringLength INTEGER ::= 11 + +SMSEvent ::= SEQUENCE { + eventTypeSMS [0] EventTypeSMS, + monitorMode [1] MonitorMode + } + +TariffSwitchInterval ::= INTEGER (1 .. 86400) +-- TariffSwitchInterval is measured in 1 second units + +TimeAndTimezone {PARAMETERS-BOUND : bound} ::= OCTET STRING (SIZE( + bound.&minTimeAndTimezoneLength .. bound.&maxTimeAndTimezoneLength)) +-- Indicates the time and timezone, relative to GMT. This parameter is BCD encoded. +-- The year digit indicating millenium occupies bits 0-3 of the first octet, and the year +-- digit indicating century occupies bits 4-7 of the first octet. +-- The year digit indicating decade occupies bits 0-3 of the second octet, whilst the digit +-- indicating the year within the decade occupies bits 4-7 of the second octet. +-- The most significant month digit occupies bits 0-3 of the third octet, and the least +-- significant month digit occupies bits 4-7 of the third octet. +-- The most significant day digit occupies bits 0-3 of the fourth octet, and the least +-- significant day digit occupies bits 4-7 of the fourth octet. +-- The most significant hours digit occupies bits 0-3 of the fifth octet, and the least +-- significant hours digit occupies bits 4-7 of the fifth octet. +-- The most significant minutes digit occupies bits 0-3 of the sixth octet, and the least +-- significant minutes digit occupies bits 4-7 of the sixth octet. +-- The most significant seconds digit occupies bits 0-3 of the seventh octet, and the least +-- significant seconds digit occupies bits 4-7 of the seventh octet. +-- +-- The timezone information occupies the eighth octet. For the encoding of Timezone refer to +-- 3GPP TS 23.040 [6]. +-- +-- The BCD digits are packed and encoded as follows: +-- +-- Bit 7 6 5 4 | 3 2 1 0 +-- 2nd digit | 1st digit Octet 1 +-- 3rd digit | 4th digit Octet 2 +-- .. .. +-- nth digit | n-1th digit Octet m +-- +-- 0000 digit 0 +-- 0001 digit 1 +-- 0010 digit 2 +-- 0011 digit 3 +-- 0100 digit 4 +-- 0101 digit 5 +-- 0110 digit 6 +-- 0111 digit 7 +-- 1000 digit 8 +-- 1001 digit 9 +-- 1010 spare +-- 1011 spare +-- 1100 spare +-- 1101 spare +-- 1110 spare +-- 1101 spare +-- +-- where the leftmost bit of the digit is either bit 7 or bit 3 of the octet. + +TimeIfNoTariffSwitch ::= INTEGER(0..864000) +-- TimeIfNoTariffSwitch is measured in 100 millisecond intervals + +TimeIfTariffSwitch ::= SEQUENCE { + timeSinceTariffSwitch [0] INTEGER(0..864000), + tariffSwitchInterval [1] INTEGER(1..864000) OPTIONAL + } +-- timeSinceTariffSwitch and tariffSwitchInterval are measured in 100 millisecond intervals + +TimeInformation ::= CHOICE { + timeIfNoTariffSwitch [0] TimeIfNoTariffSwitch, + timeIfTariffSwitch [1] TimeIfTariffSwitch + } +-- Indicates call duration information + +TimerID ::= ENUMERATED { + tssf (0) + } +-- Indicates the timer to be reset. + +TimerValue ::= Integer4 +-- Indicates the timer value (in seconds). + +Tone ::= SEQUENCE { + toneID [0] Integer4, + duration [1] Integer4 OPTIONAL, +... + } +-- The duration specifies the length of the tone in seconds, value 0 indicates infinite duration. + +TPDataCodingScheme ::= OCTET STRING (SIZE (1)) +-- TP Data Coding Scheme according to 3GPP TS 23.040 [6] + +TPProtocolIdentifier ::= OCTET STRING (SIZE (1)) +-- indicates the protocol used above the SM-Transfer Layer as specified in 3GPP TS 23.040 [6]. + +TPShortMessageSpecificInfo ::= OCTET STRING (SIZE (1)) +-- contains the 1st octect of the applicable TPDU or the SMS-COMMAND TPDU as specified in +-- 3GPP TS 23.040 [6]. + +TPValidityPeriod ::= OCTET STRING (SIZE (1..7)) +-- indicates the length of the validity period or the absolute time of the validity +-- period termination as specified in 3GPP TS 23.040 [6]. +-- the length of ValidityPeriod is either 1 octet or 7 octets + +TransferredVolume ::= CHOICE { + volumeIfNoTariffSwitch [0] INTEGER (0..4294967295), + volumeIfTariffSwitch [1] SEQUENCE { + volumeSinceLastTariffSwitch [0] INTEGER (0..4294967295), + volumeTariffSwitchInterval [1] INTEGER (0..4294967295) OPTIONAL + } + } +-- volumeIfNoTariffSwitch, volumeSinceLastTariffSwitch and volumeTariffSwitchInterval +-- are measured in bytes. + +TransferredVolumeRollOver ::= CHOICE { + rO-VolumeIfNoTariffSwitch [0] INTEGER (0..255), + rO-VolumeIfTariffSwitch [1] SEQUENCE { + rO-VolumeSinceLastTariffSwitch [0] INTEGER (0..255) OPTIONAL, + rO-VolumeTariffSwitchInterval [1] INTEGER (0..255) OPTIONAL + } + } +-- rO-VolumeIfNoTariffSwitch, rO-VolumeSinceLastTariffSwitch and rO-VolumeTariffSwitchInterval +-- present counters indicating the number of parameter range rollovers. + +UnavailableNetworkResource ::= ENUMERATED { + unavailableResources (0), + componentFailure (1), + basicCallProcessingException (2), + resourceStatusFailure (3), + endUserFailure (4) + } +-- Indicates the network resource that failed. + +VariablePart {PARAMETERS-BOUND : bound} ::= CHOICE { + integer [0] Integer4, + number [1] Digits {bound}, -- Generic digits + time [2] OCTET STRING (SIZE(2)), -- HH: MM, BCD coded + date [3] OCTET STRING (SIZE(4)), -- YYYYMMDD, BCD coded + price [4] OCTET STRING (SIZE(4)) + } +-- Indicates the variable part of the message. Time is BCD encoded. +-- The most significant hours digit occupies bits 0-3 of the first octet, and the least +-- significant digit occupies bits 4-7 of the first octet. The most significant minutes digit +-- occupies bits 0-3 of the second octet, and the least significant digit occupies bits 4-7 +-- of the second octet. +-- +-- Date is BCD encoded. The year digit indicating millenium occupies bits 0-3 of the first octet, +-- and the year digit indicating century occupies bits 4-7 of the first octet. The year digit +-- indicating decade occupies bits 0-3 of the second octet, whilst the digit indicating the year +-- within the decade occupies bits 4-7 of the second octet. +-- The most significant month digit occupies bits 0-3 of the third octet, and the least +-- significant month digit occupies bits 4-7 of the third octet. The most significant day digit +-- occupies bits 0-3 of the fourth octet, and the least significant day digit occupies bits 4-7 +-- of the fourth octet. +-- Price is BCD encoded. The digit indicating hundreds of thousands occupies bits 0-3 of the +-- first octet, and the digit indicating tens of thousands occupies bits 4-7 of the first octet. +-- The digit indicating thousands occupies bits 0-3 of the second octet, whilst the digit +-- indicating hundreds occupies bits 4-7 of the second octet. The digit indicating tens occupies +-- bits 0-3 of the third octet, and the digit indicating 0 to 9 occupies bits 4-7 of the third +-- octet. The tenths digit occupies bits 0-3 of the fourth octet, and the hundredths digit +-- occupies bits 4-7 of the fourth octet. +-- +-- For the encoding of digits in an octet, refer to the timeAndtimezone parameter + +-- The Definition of range of constants follows +numOfInfoItems INTEGER ::= 4 + +END |