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