pycrate/pycrate_asn1dir/Pycrate_TCAP_MAPv2v3/NokiaMAP-Extensions.asn

605 lines
19 KiB
Groff

-- Nokia proprietary extensions
--
NokiaMAP-Extensions
DEFINITIONS IMPLICIT TAGS ::=
BEGIN
IMPORTS
Category,
ODB-Data,
CUG-Interlock
FROM MAP-MS-DataTypes {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-MS-DataTypes (11) version13 (13)}
ISDN-AddressString,
AddressString,
TBCD-STRING,
SignalInfo,
BasicServiceCode,
IMSI,
IMEI,
SubscriberIdentity,
CellGlobalIdOrServiceAreaIdFixedLength,
LAIFixedLength,
Ext-SS-Status
FROM MAP-CommonDataTypes {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-CommonDataTypes (18) version13 (13)}
PrivateExtension,
ExtensionContainer
FROM MAP-ExtensionDataTypes {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version13 (13)}
TraceReference,
TraceType
FROM MAP-OM-DataTypes {
itu-t identified-organization (4) etsi (0) mobileDomain (0)
gsm-Network (1) modules (3) map-OM-DataTypes (12) version13 (13)}
SS-Code
FROM MAP-SS-Code {
itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
map-SS-Code (15) version10 (10)}
SS-Status, USSD-DataCodingScheme, USSD-String, CCBS-Feature
-- USSD-DataCodingScheme, USSD-String were introduced because of CNAP.
FROM MAP-SS-DataTypes {
itu-t identified-organization (4) etsi (0) mobileDomain (0) gsm-Network (1) modules (3)
map-SS-DataTypes (14) version10 (10)}
;
--ExtensionSet MAP-EXTENSION ::= {
-- { &ExtensionType; IsdArgExt, &extensionId; {0 34 0} } |
-- { &ExtensionType; DsdArgExt, &extensionId; {0 34 1} } |
-- { &ExtensionType; UlResExt, &extensionId; {0 34 2} } |
-- { &ExtensionType; SS-DataExtension, &extensionId; {0 34 4} } |
-- { &ExtensionType; SriExtension, &extensionId; {0 34 5} } |
-- { &ExtensionType; ExtraSignalInfo, &extensionId; {0 34 6} } |
-- { &ExtensionType; SriResExtension, &extensionId; {0 34 7} } |
-- { &ExtensionType; CanLocArgExt, &extensionId; {0 34 10} } |
-- { &ExtensionType; ATMargExt, &extensionId; {0 34 11} } |
-- { &ExtensionType; DTMargExt, &extensionId; {0 34 12} } |
-- { &ExtensionType; NumberPorted, &extensionId; {0 34 13} } |
-- { &ExtensionType; HO-Ext, &extensionId; {0 34 15} } |
-- { &ExtensionType; ATMresExt, &extensionId; {0 34 16} } |
-- { &ExtensionType; AbsentSubscriberExt, &extensionId; {0 34 17} } |
-- { &ExtensionType; SriForSMArgExt, &extensionId; {0 34 18} } |
-- { &ExtensionType; ReportSMDelStatArgExt, &extensionId; {0 34 19} } |
-- { &ExtensionType; UdlArgExt, &extensionId; {0 34 20} } |
-- { &ExtensionType; RoamNotAllowedExt, &extensionId; {0 34 21} } |
-- { &ExtensionType; MO-ForwardSM-ArgExt, &extensionId; {0 34 22} } |
-- { &ExtensionType; ErrOlcmInfoTableExt, &extensionId; {0 34 23} } |
-- { &ExtensionType; RoutingCategoryExt, &extensionId; {0 34 25} } |
-- { &ExtensionType; AnyTimeModArgExt, &extensionId; {0 34 26} } |
-- { &ExtensionType; AccessTypeExt, &extensionId; {1 3 12 2 1107 3 66 1 1} } |
-- { &ExtensionType; AccessSubscriptionListExt, &extensionId; {1 3 12 2 1107 3 66 1 3} } |
-- { &ExtensionType; AllowedServiceData, &extensionId; {1 3 12 2 1107 3 66 1 6} },
-- ...}
-- ExtensionSet is the set of all defined private extensions
-- Unsupported private extensions shall be discarded if received.
RoutingCategory ::= OCTET STRING (SIZE (1))
-- value 0 means that RoutingCategory is released
maxNumOfActiveSS INTEGER ::= 30
ActiveSS-List ::= OCTET STRING (SIZE (1..maxNumOfActiveSS))
ExtRoutingCategory ::= INTEGER (0..2147483647)
IsdArgExt ::= [PRIVATE 0] SEQUENCE {
alsLineIndicator [0] NULL OPTIONAL,
routingCategory [1] RoutingCategory OPTIONAL,
serviceList [2] MAPserviceList OPTIONAL,
serv-info-list [3] ServiceListWithInfo OPTIONAL,
extRoutingCategory [5] ExtRoutingCategory OPTIONAL,
ownMSISDN [6] ISDN-AddressString OPTIONAL,
...}
-- Note : additional routing category is removed from VLR by
-- sending ISD with add-RC value zero (0).
DsdArgExt ::= [PRIVATE 0] SEQUENCE {
alsLineIndicator [0] NULL OPTIONAL,
serviceList [1] MAPserviceList OPTIONAL,
...}
UlResExt ::= [PRIVATE 0] SEQUENCE {
mwd-Set [0] NULL OPTIONAL,
...}
EmoInCategoryKey ::= TBCD-STRING (SIZE (1..3))
SS-DataEmoInExt ::= [PRIVATE 1] SEQUENCE {
emoInCategoryKey [PRIVATE 2] EmoInCategoryKey OPTIONAL,
...}
InTriggerKey ::= INTEGER (1..65535)
PnpIndex ::= OCTET STRING (SIZE (3))
-- digits 0 through 9, two digits per octet,
-- each digit encoded 0000 to 0001,
-- 5 digits, 1111 used as filler for last digit.
CallRedirectionIndex ::= INTEGER (0..255)
ChargingArea ::= INTEGER (1..9999)
maxNumOfCA INTEGER ::= 3
ChargingAreaList ::= SEQUENCE SIZE (1..maxNumOfCA) OF
ChargingArea
RegionalChargingData ::= SEQUENCE {
chargingAreaList [0] ChargingAreaList OPTIONAL,
...}
SS-DataExtension ::= [PRIVATE 0] SEQUENCE {
inTriggerKey [0] InTriggerKey OPTIONAL,
pnpIndex [1] PnpIndex OPTIONAL,
callRedirectionIndex [2] CallRedirectionIndex OPTIONAL,
regionalChargingData [3] RegionalChargingData OPTIONAL,
...}
SriExtension ::= [PRIVATE 0] SEQUENCE {
callForwardingOverride [0] NULL OPTIONAL,
in-Capability [1] NULL OPTIONAL,
callingCategory [2] CallingCategory OPTIONAL,
internalServiceIndicator [3] InternalServiceIndicator OPTIONAL,
srbtSupportIndicator [4] NULL OPTIONAL,
gmscSupportIndicator [5] NULL OPTIONAL,
...}
CallingCategory ::= OCTET STRING (SIZE (1))
-- 'E9'hex used in SRI-arg
-- 'E8'hex used in SRI-res
InternalServiceIndicator ::= OCTET STRING (SIZE (1))
-- bits 8765: 0000 (unused)
-- bit 4: intelligent alerting
-- bit 3: parallel alerting
-- bit 2: member interrogation
-- bit 1: sequential alerting
-- 1 set
-- 0 not set
ExtraProtocolId ::= INTEGER { q763 (1)} (1..20)
ExtraSignalInfo ::= [PRIVATE 1] SEQUENCE {
protocolId ExtraProtocolId,
signalInfo SignalInfo }
CUG-CallInfo ::= OCTET STRING (SIZE (1..4))
-- xxxx xx00 - not used
-- xxxx xx01 - CUG call
-- xxxx xx10 - non CUG call
-- xxxx xx11 - maybe a CUG call
Nokia-CUG-Data ::= SEQUENCE {
cug-Interlock [0] CUG-Interlock OPTIONAL,
cug-OutgoingAccess [1] BOOLEAN OPTIONAL,
cug-CallInfo [2] CUG-CallInfo OPTIONAL,
...}
-- cug-OutgoingAccess must be BOOLEAN (not NULL), because
-- it must be possible to transfer cug-CallInfo without
-- the other parameters
SriResExtension ::= [PRIVATE 0] SEQUENCE {
inTriggerKey [0] InTriggerKey OPTIONAL,
vlrNumber [1] ISDN-AddressString OPTIONAL,
activeSs [2] ActiveSS-List OPTIONAL,
traceReference [3] TraceReference OPTIONAL,
traceType [4] TraceType OPTIONAL,
omc-Id [5] AddressString OPTIONAL,
hotBilling [6] BOOLEAN OPTIONAL,
cfoIsDone [7] BOOLEAN OPTIONAL,
cfInCug [8] BOOLEAN OPTIONAL,
basicService [9] BasicServiceCode OPTIONAL,
category [10] Category OPTIONAL,
routingCategory [11] RoutingCategory OPTIONAL,
pnpIndex [12] PnpIndex OPTIONAL,
nokia-CUG [13] Nokia-CUG-Data OPTIONAL,
noBarrings [14] NULL OPTIONAL,
odb-Data [15] ODB-Data OPTIONAL,
fraudData [16] FraudData OPTIONAL,
extRoutingCategory [17] ExtRoutingCategory OPTIONAL,
leaId [18] LeaId OPTIONAL,
olcmInfoTable [19] OlcmInfoTable OPTIONAL,
callingCategory [20] CallingCategory OPTIONAL,
commonMSISDN [21] ISDN-AddressString OPTIONAL,
rgData [22] RgData OPTIONAL,
olcmTraceReference [23] OlcmTraceReference OPTIONAL,
...}
RgData ::= SEQUENCE {
noAnswerTimer [0] NoAnswerTimer OPTIONAL,
memberList [1] MemberList OPTIONAL,
alertingMethod [2] AlertingMethod OPTIONAL,
userType [3] UserType OPTIONAL,
divertedToNbr [4] ISDN-AddressString OPTIONAL,
memberOfSuppression [5] NULL OPTIONAL,
ringbacktone [6] NULL OPTIONAL,
...}
NoAnswerTimer ::= OCTET STRING (SIZE (1))
MemberList ::= SEQUENCE SIZE (1..5) OF
ISDN-AddressString
AlertingMethod ::= OCTET STRING (SIZE (1))
-- '00' = sequential
-- '01' = parallel
-- '02' = sequential / parallel
-- '03' = intelligent
UserType ::= OCTET STRING (SIZE (1))
-- '00' = single
-- '01' = multiple
MAPserviceCode ::= OCTET STRING (SIZE (1))
picLock MAPserviceCode ::= '00000001'B
prefCarrierId MAPserviceCode ::= '00000010'B
mKey MAPserviceCode ::= '00000011'B
smsKey MAPserviceCode ::= '00000100'B
fraud-Data MAPserviceCode ::= '00000101'B
cell-update MAPserviceCode ::= '00000110'B
maxnumOfMAPservices INTEGER ::= 256
MAPserviceList ::= OCTET STRING (SIZE (0..maxnumOfMAPservices))
CarrierIdCode ::= OCTET STRING (SIZE (3))
-- the internal structure is defined in T1.113
PrefCarrierIdList ::= SEQUENCE {
prefCarrierIdCode1 [0] CarrierIdCode,
...}
ANSIIsdArgExt ::= [PRIVATE 30] SEQUENCE {
prefCarrierIdList [0] PrefCarrierIdList OPTIONAL,
...}
ANSISriResExt ::= [PRIVATE 30] SEQUENCE {
prefCarrierIdList [0] PrefCarrierIdList OPTIONAL,
...}
CanLocArgExt ::= [PRIVATE 0] SEQUENCE {
termination [0] OCTET STRING (SIZE (1)) OPTIONAL,
...}
ATMargExt ::= [PRIVATE 0] SEQUENCE {
traceReference [0] TraceReference OPTIONAL,
traceType [1] TraceType OPTIONAL,
leaId [2] LeaId OPTIONAL,
olcmInfoTable [3] OlcmInfoTable OPTIONAL,
olcmTraceReference [4] OlcmTraceReference OPTIONAL,
... }
LeaId ::= INTEGER (0..65535)
OlcmInfoTable ::= SEQUENCE SIZE (1..maxNumOfLEAs) OF
OlcmInfo
maxNumOfLEAs INTEGER ::= 7
OlcmInfo ::= SEQUENCE {
traceReference [0] TraceReference,
traceType [1] TraceType,
leaId [2] LeaId OPTIONAL,
olcmTraceReference [3] OlcmTraceReference OPTIONAL,
... }
OlcmTraceReference ::= OCTET STRING (SIZE (1..4))
ATMresExt ::= [PRIVATE 0] SEQUENCE {
olcmActive [0] NULL OPTIONAL,
... }
DTMargExt ::= [PRIVATE 0] SEQUENCE {
traceType [0] TraceType OPTIONAL,
leaId [1] LeaId OPTIONAL,
olcmTraceReference [2] OlcmTraceReference OPTIONAL,
... }
VersionInfo ::= OCTET STRING (SIZE (1))
-- 0000 0001 : version 1
maxNumOfServicesWithInfo INTEGER ::= 20
FraudInfo ::= SEQUENCE {
moc [0] FraudData OPTIONAL,
cf [1] FraudData OPTIONAL,
ct [2] FraudData OPTIONAL,
...}
FraudData ::= SEQUENCE {
time [0] TimeLimit OPTIONAL,
timeAction [1] ActionType OPTIONAL,
maxCount [2] FraudMaxCount OPTIONAL,
maxCountAction [3] ActionType OPTIONAL,
...}
TimeLimit ::= INTEGER (0..64800)
ActionType ::= OCTET STRING (SIZE (1..10))
-- only 1st octet is used to transfer action type in M10
-- other octets are reserved for future use
FraudMaxCount ::= INTEGER (0..255)
ServiceWithInfo ::= SEQUENCE {
serviceCode [0] MAPserviceCode OPTIONAL,
versionInfo [1] VersionInfo DEFAULT '1'B,
in-key INKey OPTIONAL,
fraudInfo FraudInfo OPTIONAL,
...}
ServiceListWithInfo ::= SEQUENCE SIZE (1..maxNumOfServicesWithInfo) OF
ServiceWithInfo
INKey ::= CHOICE {
mobile-IN-key [2] MKey,
sms-IN-key [3] SMSKey }
MmTdpName ::= OCTET STRING (SIZE (1..8))
-- bits 876543: 000000 (unused)
--
-- bit 2: Intra-VLR-Locup-DP
-- 1 DP is set
-- 0 DP is not set
--
-- bit 1: Inter-VLR-Locup-DP
-- 1 DP is set
-- 0 DP is not set
ServiceKey ::= INTEGER (0..2147483647)
-- 4 bytes
MKeyVer ::= OCTET STRING (SIZE (1))
-- 0000 0001 : version 1
LocupType ::= OCTET STRING (SIZE (1..8))
-- bits 87654: 00000 (unused)
--
-- bit 3: Normal-Locup
-- 1 LocupType is set (default)
-- 0 LocupType is not set
--
-- bit 2: Periodic-Locup
-- 1 LocupType is set
-- 0 LocupType is not set (default)
--
-- bit 1: IMSI-attach-Locup
-- 1 LocupType is set
-- 0 LocupType is not set (default)
MKey::= SEQUENCE{
mKeyVer [0] MKeyVer DEFAULT '1'B,
mmScfAddress [1] ISDN-AddressString OPTIONAL,
mmTdpName [2] MmTdpName OPTIONAL,
serviceKey [3] ServiceKey OPTIONAL,
locupType [4] LocupType OPTIONAL,
...}
-- if mKeyVer parameter is missing, it is interpreted as
-- "version 1".
-- mmScfAddress, mmTtdpId and serviceKey parameters must be
-- present on version 1.
--
-- Feature 742 : "IN Mobility Management"
SmsTdpName ::= OCTET STRING (SIZE (1..8))
-- bits 87654: 00000 (unused)
--
-- bit 3: SR-SMS-DP
-- 1 DP is set
-- 0 DP is not set
--
-- bit 2: MO-SMS-DP
-- 1 DP is set
-- 0 DP is not set
--
-- bit 1: MT-SMS-DP
-- 1 DP is set
-- 0 DP is not set
SMSKey ::= SEQUENCE{
mmSCPAddress [0] ISDN-AddressString OPTIONAL,
smsTdpName [1] SmsTdpName OPTIONAL,
serviceKey [2] ServiceKey OPTIONAL,
mmsFlag [3] NULL OPTIONAL,
...}
NumberPorted ::= [PRIVATE 20] ENUMERATED {
notPorted (0),
ported (1),
...}
USSD-Extension ::= [PRIVATE 10] SEQUENCE {
routingCategory [0] RoutingCategory OPTIONAL,
cellId [1] CellGlobalIdOrServiceAreaIdFixedLength OPTIONAL,
sai-Present [2] NULL OPTIONAL,
...}
HO-Ext ::= [PRIVATE 0] SEQUENCE {
map-Opt [0] MapOptFields OPTIONAL,
codec-List [1] CodecListExt OPTIONAL,
selected-Codec [2] SelectedCodec OPTIONAL,
uma-access [3] NULL OPTIONAL,
uma-ip-address [4] OCTET STRING (SIZE (5..17)) OPTIONAL,
uma-ip-port-nb [5] IPPortNb OPTIONAL,
... }
MapOptFields ::= OCTET STRING (SIZE (1))
-- bits 87: 00 (unused)
-- bit 6: codec
-- 1 set
-- 0 not set
-- bit 5: tfo_set
-- 1 set
-- 0 not set
-- bit 4: tfo_not_set
-- 1 set
-- 0 not set
-- bit 3: emerg
-- 1 set
-- 0 not set
-- bit 2: usim
-- 1 set
-- 0 not set
-- bit 1: sim
-- 1 set
-- 0 not set
CodecListExt ::= SEQUENCE (SIZE(0..maxNumOfCodec)) OF
CodecExt
maxNumOfCodec INTEGER ::= 8
CodecExt ::= OCTET STRING (SIZE(1))
SelectedCodec ::= SEQUENCE {
codec [0] CodecExt,
modes [1] Modes,
...}
Modes ::= OCTET STRING (SIZE(9))
IPPortNb ::= INTEGER (0..65535)
AbsentSubscriberExt ::= [PRIVATE 0] SEQUENCE {
olcmInfoTable [0] OlcmInfoTable OPTIONAL,
imsi [1] IMSI OPTIONAL,
...}
ErrOlcmInfoTableExt ::= [PRIVATE 0] SEQUENCE {
olcmInfoTable [0] OlcmInfoTable OPTIONAL,
imsi [1] IMSI OPTIONAL,
...}
RoutingCategoryExt ::= [PRIVATE 0] SEQUENCE {
routingCategory [0] RoutingCategory OPTIONAL,
extRoutingCategory [1] ExtRoutingCategory OPTIONAL,
... }
SriForSMArgExt ::= [PRIVATE 0] SEQUENCE {
cfuSMSCounter [0] CfuSMSCounter OPTIONAL,
cfusmcfo [2] NULL OPTIONAL,
memberInterrogate [3] NULL OPTIONAL,
... }
ReportSMDelStatArgExt ::= [PRIVATE 0] SEQUENCE {
cfuSMSCounter [0] CfuSMSCounter OPTIONAL,
cfusmcfo [2] NULL OPTIONAL,
... }
CfuSMSCounter ::= OCTET STRING (SIZE (1))
MO-ForwardSM-ArgExt ::= [PRIVATE 0] SEQUENCE {
locationAreaCode [0] LocationAreaCode OPTIONAL,
cellId [1] CellGlobalIdOrServiceAreaIdFixedLength OPTIONAL,
... }
LocationAreaCode ::= OCTET STRING(SIZE (2))
-- octets 1 and 2 of LocationAreaCode according to 3GPP TS 24.008
UdlArgExt ::= [PRIVATE 0] SEQUENCE {
lai [0] LAIFixedLength OPTIONAL,
sendImmResp [1] NULL OPTIONAL,
... }
RoamNotAllowedExt ::= [PRIVATE 0] SEQUENCE {
rejectCause [0] OCTET STRING (SIZE (1)) OPTIONAL,
... }
AnyTimeModArgExt ::= [PRIVATE 0] SEQUENCE {
senderMSISDN [0] ISDN-AddressString OPTIONAL,
... }
CosInfo::= SEQUENCE {
ss-Code SS-Code OPTIONAL,
cos-FeatureList COS-FeatureList }
COS-FeatureList ::= SEQUENCE SIZE (1..maxNumberOfCOSFeatures) OF
COS-Feature
maxNumberOfCOSFeatures INTEGER ::= 13
-- This reflects the number of basic service groups, and is
-- consistent with other features (i.e., Forwarding Features,
-- CallBarring Features, etc.).
COS-Feature ::= SEQUENCE {
basicServiceCode BasicServiceCode OPTIONAL,
ss-Status [4] SS-Status,
customerGroupID [5] CustomerGroupID OPTIONAL,
subGroupID [6] SubGroupID OPTIONAL,
classOfServiceID [7] ClassOfServiceID OPTIONAL }
CustomerGroupID ::= BIT STRING {
formatIndicator (0),
idHighBit (8),
netidHighBit (16),
idLowBit (31) } (SIZE(32))
-- formatIndicator is encoded as follows:
-- 0 : International Format
-- 1 : Network Format
-- Bits 1-7 Unused (encoded as 0000000)
-- The remaining bits (3 octets) are the bit representation of the
-- Customer Group Identifier. All bits are significant.
SubGroupID ::= BIT STRING (SIZE (16))
ClassOfServiceID ::= BIT STRING {
formatIndicator (0),
idHighBit (8),
idLowBit (15) } (SIZE(16))
-- formatIndicator is encoded as follows:
-- 0 : International Format
-- 1 : Network Format
-- Bits 1-7 Unused (encoded as 0000000)
-- The remaining bits (one octet) is the bit representation of the
-- Class Of Service Identifier. All bits are significant.
AccessTypeExt ::= SEQUENCE {
access Access,
version Version,
...}
Access ::= ENUMERATED {
gsm (1),
geran (2),
utran (3),
...}
Version ::= INTEGER (1..20)
AccessSubscriptionListExt ::= SEQUENCE SIZE (1..10) OF
Access
AllowedServiceData ::= BIT STRING {
amr-wb-allowed (0)} (SIZE(1..16))
AnyTimePO-BarringArg ::= SEQUENCE {
subscriberIdentity [0] SubscriberIdentity,
gsmSCF-Address [3] ISDN-AddressString,
gprs-Barring GprsBarring,
...}
AnyTimePO-BarringRes ::= SEQUENCE {
...}
GprsBarring ::= ENUMERATED {
gprsServiceBarring (0),
grantGPRS-Service (1),
...}
END