17.7.6 Short message data types

29.0023GPPMobile Application Part (MAP) specificationRelease 17TS

.$MAP-SM-DataTypes {

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

gsm-Network (1) modules (3) map-SM-DataTypes (16) version20 (20)}

DEFINITIONS

IMPLICIT TAGS

::=

BEGIN

EXPORTS

RoutingInfoForSM-Arg,

RoutingInfoForSM-Res,

MO-ForwardSM-Arg,

MO-ForwardSM-Res,

MT-ForwardSM-Arg,

MT-ForwardSM-Res,

ReportSM-DeliveryStatusArg,

ReportSM-DeliveryStatusRes,

AlertServiceCentreArg,

InformServiceCentreArg,

ReadyForSM-Arg,

ReadyForSM-Res,

SM-DeliveryOutcome,

AlertReason,

Additional-Number,

MT-ForwardSM-VGCS-Arg,

MT-ForwardSM-VGCS-Res

;

IMPORTS

AddressString,

ISDN-AddressString,

SignalInfo,

IMSI,

LMSI,

ASCI-CallReference,

Time,

NetworkNodeDiameterAddress,

HLR-Id

FROM MAP-CommonDataTypes {

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

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

AbsentSubscriberDiagnosticSM

FROM MAP-ER-DataTypes {

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

gsm-Network (1) modules (3) map-ER-DataTypes (17) 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)}

;

RoutingInfoForSM-Arg ::= SEQUENCE {

msisdn [0] ISDN-AddressString,

sm-RP-PRI [1] BOOLEAN,

serviceCentreAddress [2] AddressString,

extensionContainer [6] ExtensionContainer OPTIONAL,

… ,

gprsSupportIndicator [7] NULL OPTIONAL,

— gprsSupportIndicator is set only if the SMS-GMSC supports

— receiving of two numbers from the HLR

sm-RP-MTI [8] SM-RP-MTI OPTIONAL,

sm-RP-SMEA [9] SM-RP-SMEA OPTIONAL,

sm-deliveryNotIntended [10] SM-DeliveryNotIntended OPTIONAL,

ip-sm-gwGuidanceIndicator [11] NULL OPTIONAL,

imsi [12] IMSI OPTIONAL,

t4-Trigger-Indicator [14] NULL OPTIONAL,

singleAttemptDelivery [13] NULL OPTIONAL,

correlationID [15] CorrelationID OPTIONAL,

smsf-supportIndicator [16] NULL OPTIONAL }

SM-DeliveryNotIntended ::= ENUMERATED {

onlyIMSI-requested (0),

onlyMCC-MNC-requested (1),

…}

SM-RP-MTI ::= INTEGER (0..10)

— 0 SMS Deliver

— 1 SMS Status Report

— other values are reserved for future use and shall be discarded if

— received

SM-RP-SMEA ::= OCTET STRING (SIZE (1..12))

— this parameter contains an address field which is encoded

— as defined in 3GPP TS 23.040. An address field contains 3 elements :

— address-length

— type-of-address

— address-value

RoutingInfoForSM-Res ::= SEQUENCE {

imsi IMSI,

locationInfoWithLMSI [0] LocationInfoWithLMSI,

extensionContainer [4] ExtensionContainer OPTIONAL,

…,

ip-sm-gwGuidance [5] IP-SM-GW-Guidance OPTIONAL }

IP-SM-GW-Guidance ::= SEQUENCE {

minimumDeliveryTimeValue SM-DeliveryTimerValue,

recommendedDeliveryTimeValue SM-DeliveryTimerValue,

extensionContainer ExtensionContainer OPTIONAL,

…}

LocationInfoWithLMSI ::= SEQUENCE {

networkNode-Number [1] ISDN-AddressString,

lmsi LMSI OPTIONAL,

extensionContainer ExtensionContainer OPTIONAL,

…,

gprsNodeIndicator [5] NULL OPTIONAL,

— gprsNodeIndicator is set only if the SGSN number is sent as the

— Network Node Number

additional-Number [6] Additional-Number OPTIONAL,

networkNodeDiameterAddress [7] NetworkNodeDiameterAddress OPTIONAL,

additionalNetworkNodeDiameterAddress [8] NetworkNodeDiameterAddress OPTIONAL,

thirdNumber [9] Additional-Number OPTIONAL,

thirdNetworkNodeDiameterAddress [10] NetworkNodeDiameterAddress OPTIONAL,

imsNodeIndicator [11] NULL OPTIONAL,

— gprsNodeIndicator and imsNodeIndicator shall not both be present.

— additionalNumber and thirdNumber shall not both contain the same type of number.

smsf-3gpp-Number [12] ISDN-AddressString OPTIONAL,

smsf-3gpp-DiameterAddress [13] NetworkNodeDiameterAddress OPTIONAL,

smsf-non-3gpp-Number [14] ISDN-AddressString OPTIONAL,

smsf-non-3gpp-DiameterAddress [15] NetworkNodeDiameterAddress OPTIONAL,

smsf-3gpp-address-indicator [16] NULL OPTIONAL,

smsf-non-3gpp-address-indicator [17] NULL OPTIONAL

— If smsf-supportIndicator was not included in the request, in RoutingInfoForSM-Arg,

— then smsf-3gpp Number/DiameterAddress, smsf-non-3gpp Number/DiameterAddress and

— smsf-address-indicator and smsf-non-3gpp-address-indicator shall be absent.

— If smsf-3gpp-address-indicator is present, it indicates that the networkNode-Number

— (and networkNodeDiameterAddress, if present) contains the address of an SMSF for

— 3GPP access.

— If smsf-non-3gpp-address-indicator is present, it indicates that the

— networkNode-Number (and networkNodeDiameterAddress, if present) contains the

— address of an SMSF for non 3GPP access.

— At most one of gprsNodeIndicator, imsNodeIndicator, smsf-3gpp-address-indicator

— and smsf-non-3gpp-address-indicator shall be present. Absence of all these

— indicators indicate that the networkNode-Number (and networkNodeDiameterAddress,

— if present) contains the address of an MSC/MME.

}

Additional-Number ::= CHOICE {

msc-Number [0] ISDN-AddressString,

sgsn-Number [1] ISDN-AddressString}

— msc-number can be the MSC number or

— the SMS Router number or the MME number for MT SMS

— sgsn-number can be the SGSN number or the SMS Router number

MO-ForwardSM-Arg ::= SEQUENCE {

sm-RP-DA SM-RP-DA,

sm-RP-OA SM-RP-OA,

sm-RP-UI SignalInfo,

extensionContainer ExtensionContainer OPTIONAL,

… ,

imsi IMSI OPTIONAL,

correlationID [0] CorrelationID OPTIONAL,

sm-DeliveryOutcome [1] SM-DeliveryOutcome OPTIONAL

}

MO-ForwardSM-Res ::= SEQUENCE {

sm-RP-UI SignalInfo OPTIONAL,

extensionContainer ExtensionContainer OPTIONAL,

…}

MT-ForwardSM-Arg ::= SEQUENCE {

sm-RP-DA SM-RP-DA,

sm-RP-OA SM-RP-OA,

sm-RP-UI SignalInfo,

moreMessagesToSend NULL OPTIONAL,

extensionContainer ExtensionContainer OPTIONAL,

…,

smDeliveryTimer SM-DeliveryTimerValue OPTIONAL,

smDeliveryStartTime Time OPTIONAL,

smsOverIP-OnlyIndicator [0] NULL OPTIONAL,

correlationID [1] CorrelationID OPTIONAL,

maximumRetransmissionTime [2] Time OPTIONAL,

smsGmscAddress [3] ISDN-AddressString OPTIONAL,

smsGmscDiameterAddress [4] NetworkNodeDiameterAddress OPTIONAL }

— SM-DeliveryTimerValue contains the value used by the SMS-GMSC

CorrelationID ::= SEQUENCE {

hlr-id [0] HLR-Id OPTIONAL,

sip-uri-A [1] SIP-URI OPTIONAL,

sip-uri-B [2] SIP-URI}

SIP-URI ::= OCTET STRING

octets are coded as defined in IETF RFC 3261 

MT-ForwardSM-Res ::= SEQUENCE {

sm-RP-UI SignalInfo OPTIONAL,

extensionContainer ExtensionContainer OPTIONAL,

… }

SM-RP-DA ::= CHOICE {

imsi [0] IMSI,

lmsi [1] LMSI,

serviceCentreAddressDA [4] AddressString,

noSM-RP-DA [5] NULL}

SM-RP-OA ::= CHOICE {

msisdn [2] ISDN-AddressString,

serviceCentreAddressOA [4] AddressString,

noSM-RP-OA [5] NULL}

SM-DeliveryTimerValue ::= INTEGER (30..600)

ReportSM-DeliveryStatusArg ::= SEQUENCE {

msisdn ISDN-AddressString,

serviceCentreAddress AddressString,

sm-DeliveryOutcome SM-DeliveryOutcome,

absentSubscriberDiagnosticSM [0] AbsentSubscriberDiagnosticSM

OPTIONAL,

extensionContainer [1] ExtensionContainer OPTIONAL,

…,

gprsSupportIndicator [2] NULL OPTIONAL,

— gprsSupportIndicator is set only if the SMS-GMSC supports

— handling of two delivery outcomes

deliveryOutcomeIndicator [3] NULL OPTIONAL,

— DeliveryOutcomeIndicator is set when the SM-DeliveryOutcome

— is for GPRS

additionalSM-DeliveryOutcome [4] SM-DeliveryOutcome OPTIONAL,

— If received, additionalSM-DeliveryOutcome is for GPRS

— If DeliveryOutcomeIndicator is set, then AdditionalSM-DeliveryOutcome shall be absent

additionalAbsentSubscriberDiagnosticSM [5] AbsentSubscriberDiagnosticSM OPTIONAL,

— If received additionalAbsentSubscriberDiagnosticSM is for GPRS

— If DeliveryOutcomeIndicator is set, then AdditionalAbsentSubscriberDiagnosticSM

— shall be absent

ip-sm-gw-Indicator [6] NULL OPTIONAL,

— the ip-sm-gw indicator indicates by its presence that sm-deliveryOutcome

— is for delivery via IMS

— If present, deliveryOutcomeIndicator shall be absent.

ip-sm-gw-sm-deliveryOutcome [7] SM-DeliveryOutcome OPTIONAL,

— If received ip-sm-gw-sm-deliveryOutcome is for delivery via IMS

— If ip-sm-gw-Indicator is set, then ip-sm-gw-sm-deliveryOutcome shall be absent

ip-sm-gw-absentSubscriberDiagnosticSM [8] AbsentSubscriberDiagnosticSM OPTIONAL,

— If received ip-sm-gw-sm-absentSubscriberDiagnosticSM is for delivery via IMS

— If ip-sm-gw-Indicator is set, then ip-sm-gw-sm-absentSubscriberDiagnosticSM

— shall be absent

imsi [9] IMSI OPTIONAL,

singleAttemptDelivery [10] NULL OPTIONAL,

correlationID [11] CorrelationID OPTIONAL,

smsf-3gpp-deliveryOutcomeIndicator [12] NULL OPTIONAL,

— smsf-3gpp-deliveryOutcome is set when the SM-DeliveryOutcome

— is for 3GPP-SMSF

smsf-3gpp-deliveryOutcome [13] SM-DeliveryOutcome OPTIONAL,

— If smsf-3gpp-deliveryOutcomeIndicator is set, then smsf-3gpp-deliveryOutcome

— shall be absent

smsf-3gpp-absentSubscriberDiagSM [14] AbsentSubscriberDiagnosticSM OPTIONAL,

— If smsf-3gpp-deliveryOutcomeIndicator is set, then

— smsf-3gpp-absentSubscriberDiagSM shall be absent

smsf-non-3gpp-deliveryOutcomeIndicator [15] NULL OPTIONAL,

— smsf-non-3gpp-deliveryOutcomeIndicator is set when the SM-DeliveryOutcome

— is for non-3GPP-SMSF

smsf-non-3gpp-deliveryOutcome [16] SM-DeliveryOutcome OPTIONAL,

— If smsf-non-3gpp-deliveryOutcomeIndicator is set, then smsf-non-3gpp-deliveryOutcome

— shall be absent

smsf-non-3gpp-absentSubscriberDiagSM [17] AbsentSubscriberDiagnosticSM OPTIONAL

— If smsf-non-3gpp-deliveryOutcomeIndicator is set, then

— smsf-non-3gpp-absentSubscriberDiagSM shall be absent

}

SM-DeliveryOutcome ::= ENUMERATED {

memoryCapacityExceeded (0),

absentSubscriber (1),

successfulTransfer (2)}

ReportSM-DeliveryStatusRes ::= SEQUENCE {

storedMSISDN ISDN-AddressString OPTIONAL,

extensionContainer ExtensionContainer OPTIONAL,

…}

AlertServiceCentreArg ::= SEQUENCE {

msisdn ISDN-AddressString,

serviceCentreAddress AddressString,

…,

imsi IMSI OPTIONAL,

correlationID CorrelationID OPTIONAL,

maximumUeAvailabilityTime [0] Time OPTIONAL,

smsGmscAlertEvent [1] SmsGmsc-Alert-Event OPTIONAL,

smsGmscDiameterAddress [2] NetworkNodeDiameterAddress OPTIONAL,

newSGSNNumber [3] ISDN-AddressString OPTIONAL,

newSGSNDiameterAddress [4] NetworkNodeDiameterAddress OPTIONAL,

newMMENumber [5] ISDN-AddressString OPTIONAL,

newMMEDiameterAddress [6] NetworkNodeDiameterAddress OPTIONAL,

newMSCNumber [7] ISDN-AddressString OPTIONAL }

SmsGmsc-Alert-Event ::= ENUMERATED {

msAvailableForMtSms (0),

msUnderNewServingNode (1) }

InformServiceCentreArg ::= SEQUENCE {

storedMSISDN ISDN-AddressString OPTIONAL,

mw-Status MW-Status OPTIONAL,

extensionContainer ExtensionContainer OPTIONAL,

… ,

absentSubscriberDiagnosticSM AbsentSubscriberDiagnosticSM OPTIONAL,

additionalAbsentSubscriberDiagnosticSM [0] AbsentSubscriberDiagnosticSM OPTIONAL,

— additionalAbsentSubscriberDiagnosticSM may be present only if

— absentSubscriberDiagnosticSM is present.

— if included, additionalAbsentSubscriberDiagnosticSM is for GPRS and

— absentSubscriberDiagnosticSM is for non-GPRS

smsf3gppAbsentSubscriberDiagnosticSM [1] AbsentSubscriberDiagnosticSM OPTIONAL,

smsfNon3gppAbsentSubscriberDiagnosticSM [2] AbsentSubscriberDiagnosticSM OPTIONAL }

MW-Status ::= BIT STRING {

sc-AddressNotIncluded (0),

mnrf-Set (1),

mcef-Set (2) ,

mnrg-Set (3),

mnr5g-Set (4),

mnr5gn3g-Set (5)} (SIZE (6..16))

— exception handling:

— bits 6 to 15 shall be ignored if received and not understood

ReadyForSM-Arg ::= SEQUENCE {

imsi [0] IMSI,

alertReason AlertReason,

alertReasonIndicator NULL OPTIONAL,

— alertReasonIndicator is set only when the alertReason

— sent to HLR is for GPRS

extensionContainer ExtensionContainer OPTIONAL,

…,

additionalAlertReasonIndicator [1] NULL OPTIONAL,

— additionalAlertReasonIndicator is set only when the alertReason

— sent to HLR is for IP-SM-GW

maximumUeAvailabilityTime Time OPTIONAL }

ReadyForSM-Res ::= SEQUENCE {

extensionContainer ExtensionContainer OPTIONAL,

…}

AlertReason ::= ENUMERATED {

ms-Present (0),

memoryAvailable (1)}

MT-ForwardSM-VGCS-Arg ::= SEQUENCE {

asciCallReference ASCI-CallReference,

sm-RP-OA SM-RP-OA,

sm-RP-UI SignalInfo,

extensionContainer ExtensionContainer OPTIONAL,

…}

MT-ForwardSM-VGCS-Res ::= SEQUENCE {

sm-RP-UI [0] SignalInfo OPTIONAL,

dispatcherList [1] DispatcherList OPTIONAL,

ongoingCall NULL OPTIONAL,

extensionContainer [2] ExtensionContainer OPTIONAL,

…,

additionalDispatcherList [3] AdditionalDispatcherList OPTIONAL }

— additionalDispatcherList shall be absent if dispatcherList is absent or

— contains less than 5 ISDN-AddressStrings

DispatcherList ::=

SEQUENCE SIZE (1..maxNumOfDispatchers) OF

ISDN-AddressString

maxNumOfDispatchers INTEGER ::= 5

AdditionalDispatcherList ::=

SEQUENCE SIZE (1..maxNumOfAdditionalDispatchers) OF

ISDN-AddressString

maxNumOfAdditionalDispatchers INTEGER ::= 15

.#END