17.7.4 Supplementary service data types

29.0023GPPMobile Application Part (MAP) specificationRelease 17TS

.$MAP-SS-DataTypes {

itu-t identified-organization (4) etsi (0) mobileDomain (0)

gsm-Network (1) modules (3) map-SS-DataTypes (14) version20 (20)}

DEFINITIONS

IMPLICIT TAGS

::=

BEGIN

EXPORTS

RegisterSS-Arg,

SS-Info,

SS-Status,

SS-SubscriptionOption,

SS-ForBS-Code,

InterrogateSS-Res,

USSD-Arg,

USSD-Res,

USSD-DataCodingScheme,

USSD-String,

Password,

GuidanceInfo,

SS-List,

SS-InfoList,

OverrideCategory,

CliRestrictionOption,

NoReplyConditionTime,

ForwardingOptions,

maxNumOfSS,

SS-Data,

SS-InvocationNotificationArg,

SS-InvocationNotificationRes,

CCBS-Feature,

RegisterCC-EntryArg,

RegisterCC-EntryRes,

EraseCC-EntryArg,

EraseCC-EntryRes

;

IMPORTS

AddressString,

ISDN-AddressString,

ISDN-SubaddressString,

FTN-AddressString,

IMSI,

BasicServiceCode,

AlertingPattern,

EMLPP-Priority,

MaxMC-Bearers,

MC-Bearers,

ExternalSignalInfo

FROM MAP-CommonDataTypes {

itu-t identified-organization (4) etsi (0) mobileDomain (0)

gsm-Network (1) modules (3) map-CommonDataTypes (18) version20 (20)}

ExtensionContainer

FROM MAP-ExtensionDataTypes {

itu-t identified-organization (4) etsi (0) mobileDomain (0)

gsm-Network (1) modules (3) map-ExtensionDataTypes (21) version20 (20)}

SS-Code

FROM MAP-SS-Code {

itu-t identified-organization (4) etsi (0) mobileDomain (0)

gsm-Network (1) modules (3) map-SS-Code (15) version20 (20)}

;

RegisterSS-Arg ::= SEQUENCE {

ss-Code SS-Code,

basicService BasicServiceCode OPTIONAL,

forwardedToNumber [4] AddressString OPTIONAL,

forwardedToSubaddress [6] ISDN-SubaddressString OPTIONAL,

noReplyConditionTime [5] NoReplyConditionTime OPTIONAL,

…,

defaultPriority [7] EMLPP-Priority OPTIONAL,

nbrUser [8] MC-Bearers OPTIONAL,

longFTN-Supported [9] NULL OPTIONAL }

NoReplyConditionTime ::= INTEGER (5..30)

SS-Info ::= CHOICE {

forwardingInfo [0] ForwardingInfo,

callBarringInfo [1] CallBarringInfo,

ss-Data [3] SS-Data}

ForwardingInfo ::= SEQUENCE {

ss-Code SS-Code OPTIONAL,

forwardingFeatureList ForwardingFeatureList,

…}

ForwardingFeatureList ::=

SEQUENCE SIZE (1..maxNumOfBasicServiceGroups) OF

ForwardingFeature

ForwardingFeature ::= SEQUENCE {

basicService BasicServiceCode OPTIONAL,

ss-Status [4] SS-Status OPTIONAL,

forwardedToNumber [5] ISDN-AddressString OPTIONAL,

forwardedToSubaddress [8] ISDN-SubaddressString OPTIONAL,

forwardingOptions [6] ForwardingOptions OPTIONAL,

noReplyConditionTime [7] NoReplyConditionTime OPTIONAL,

…,

longForwardedToNumber [9] FTN-AddressString OPTIONAL }

SS-Status ::= OCTET STRING (SIZE (1))

— bits 8765: 0000 (unused)

— bits 4321: Used to convey the "P bit","R bit","A bit" and "Q bit",

— representing supplementary service state information

— as defined in TS 3GPP TS 23.011 [22]

— bit 4: "Q bit"

— bit 3: "P bit"

— bit 2: "R bit"

— bit 1: "A bit"

ForwardingOptions ::= OCTET STRING (SIZE (1))

— bit 8: notification to forwarding party

— 0 no notification

— 1 notification

— bit 7: redirecting presentation

— 0 no presentation

— 1 presentation

— bit 6: notification to calling party

— 0 no notification

— 1 notification

— bit 5: 0 (unused)

— bits 43: forwarding reason

— 00 ms not reachable

— 01 ms busy

— 10 no reply

— 11 unconditional when used in a SRI Result,

— or call deflection when used in a RCH Argument

— bits 21: 00 (unused)

CallBarringInfo ::= SEQUENCE {

ss-Code SS-Code OPTIONAL,

callBarringFeatureList CallBarringFeatureList,

…}

CallBarringFeatureList ::= SEQUENCE SIZE (1..maxNumOfBasicServiceGroups) OF

CallBarringFeature

CallBarringFeature ::= SEQUENCE {

basicService BasicServiceCode OPTIONAL,

ss-Status [4] SS-Status OPTIONAL,

…}

SS-Data ::= SEQUENCE {

ss-Code SS-Code OPTIONAL,

ss-Status [4] SS-Status OPTIONAL,

ss-SubscriptionOption SS-SubscriptionOption OPTIONAL,

basicServiceGroupList BasicServiceGroupList OPTIONAL,

…,

defaultPriority EMLPP-Priority OPTIONAL,

nbrUser [5] MC-Bearers OPTIONAL

}

SS-SubscriptionOption ::= CHOICE {

cliRestrictionOption [2] CliRestrictionOption,

overrideCategory [1] OverrideCategory}

CliRestrictionOption ::= ENUMERATED {

permanent (0),

temporaryDefaultRestricted (1),

temporaryDefaultAllowed (2)}

OverrideCategory ::= ENUMERATED {

overrideEnabled (0),

overrideDisabled (1)}

SS-ForBS-Code ::= SEQUENCE {

ss-Code SS-Code,

basicService BasicServiceCode OPTIONAL,

…,

longFTN-Supported [4] NULL OPTIONAL }

GenericServiceInfo ::= SEQUENCE {

ss-Status SS-Status,

cliRestrictionOption CliRestrictionOption OPTIONAL,

…,

maximumEntitledPriority [0] EMLPP-Priority OPTIONAL,

defaultPriority [1] EMLPP-Priority OPTIONAL,

ccbs-FeatureList [2] CCBS-FeatureList OPTIONAL,

nbrSB [3] MaxMC-Bearers OPTIONAL,

nbrUser [4] MC-Bearers OPTIONAL,

nbrSN [5] MC-Bearers OPTIONAL }

CCBS-FeatureList ::= SEQUENCE SIZE (1..maxNumOfCCBS-Requests) OF

CCBS-Feature

maxNumOfCCBS-Requests INTEGER ::= 5

CCBS-Feature ::= SEQUENCE {

ccbs-Index [0] CCBS-Index OPTIONAL,

b-subscriberNumber [1] ISDN-AddressString OPTIONAL,

b-subscriberSubaddress [2] ISDN-SubaddressString OPTIONAL,

basicServiceGroup [3] BasicServiceCode OPTIONAL,

…}

CCBS-Index ::= INTEGER (1..maxNumOfCCBS-Requests)

InterrogateSS-Res ::= CHOICE {

ss-Status [0] SS-Status,

basicServiceGroupList [2] BasicServiceGroupList,

forwardingFeatureList [3] ForwardingFeatureList,

genericServiceInfo [4] GenericServiceInfo }

USSD-Arg ::= SEQUENCE {

ussd-DataCodingScheme USSD-DataCodingScheme,

ussd-String USSD-String,

… ,

alertingPattern AlertingPattern OPTIONAL,

msisdn [0] ISDN-AddressString OPTIONAL }

USSD-Res ::= SEQUENCE {

ussd-DataCodingScheme USSD-DataCodingScheme,

ussd-String USSD-String,

…}

USSD-DataCodingScheme ::= OCTET STRING (SIZE (1))

— The structure of the USSD-DataCodingScheme is defined by

— the Cell Broadcast Data Coding Scheme as described in

— TS 3GPP TS 23.038 [25]

USSD-String ::= OCTET STRING (SIZE (1..maxUSSD-StringLength))

— The structure of the contents of the USSD-String is dependent

— on the USSD-DataCodingScheme as described in TS 3GPP TS 23.038 [25].

maxUSSD-StringLength INTEGER ::= 160

Password ::= NumericString

(FROM ("0"|"1"|"2"|"3"|"4"|"5"|"6"|"7"|"8"|"9"))

(SIZE (4))

GuidanceInfo ::= ENUMERATED {

enterPW (0),

enterNewPW (1),

enterNewPW-Again (2)}

— How this information is really delivered to the subscriber

— (display, announcement, …) is not part of this

— specification.

SS-List ::= SEQUENCE SIZE (1..maxNumOfSS) OF

SS-Code

maxNumOfSS INTEGER ::= 30

SS-InfoList ::= SEQUENCE SIZE (1..maxNumOfSS) OF

SS-Info

BasicServiceGroupList ::= SEQUENCE SIZE (1..maxNumOfBasicServiceGroups) OF

BasicServiceCode

maxNumOfBasicServiceGroups INTEGER ::= 13

SS-InvocationNotificationArg ::= SEQUENCE {

imsi [0] IMSI,

msisdn [1] ISDN-AddressString,

ss-Event [2] SS-Code,

— The following SS-Code values are allowed :

— ect SS-Code ::= ‘00110001’B

— multiPTY SS-Code ::= ‘01010001’B

— cd SS-Code ::= ‘00100100’B

— ccbs SS-Code ::= ‘01000100’B

ss-EventSpecification [3] SS-EventSpecification OPTIONAL,

extensionContainer [4] ExtensionContainer OPTIONAL,

…,

b-subscriberNumber [5] ISDN-AddressString OPTIONAL,

ccbs-RequestState [6] CCBS-RequestState OPTIONAL

}

CCBS-RequestState ::= ENUMERATED {

request (0),

recall (1),

active (2),

completed (3),

suspended (4),

frozen (5),

deleted (6)

}

SS-InvocationNotificationRes ::= SEQUENCE {

extensionContainer ExtensionContainer OPTIONAL,

}

SS-EventSpecification ::= SEQUENCE SIZE (1..maxEventSpecification) OF

AddressString

maxEventSpecification INTEGER ::= 2

RegisterCC-EntryArg ::= SEQUENCE {

ss-Code [0] SS-Code,

ccbs-Data [1] CCBS-Data OPTIONAL,

…}

CCBS-Data ::= SEQUENCE {

ccbs-Feature [0] CCBS-Feature,

translatedB-Number [1] ISDN-AddressString,

serviceIndicator [2] ServiceIndicator OPTIONAL,

callInfo [3] ExternalSignalInfo,

networkSignalInfo [4] ExternalSignalInfo,

…}

ServiceIndicator ::= BIT STRING {

clir-invoked (0),

camel-invoked (1)} (SIZE(2..32))

— exception handling:

— bits 2 to 31 shall be ignored if received and not understood

RegisterCC-EntryRes ::= SEQUENCE {

ccbs-Feature [0] CCBS-Feature OPTIONAL,

…}

EraseCC-EntryArg ::= SEQUENCE {

ss-Code [0] SS-Code,

ccbs-Index [1] CCBS-Index OPTIONAL,

…}

EraseCC-EntryRes ::= SEQUENCE {

ss-Code [0] SS-Code,

ss-Status [1] SS-Status OPTIONAL,

…}

.#END