4 Testing Messaging with the SMSC Test Tool

This chapter describes how to configure and use the Oracle Communications Convergent Charging Controller smsc test tool.

About the smsc Test Tool

The smsc test tool emulates various parts of the short message service (SMS) messaging environment, including a Short Message Service Center (SMSC), Visitor Mobile Switching Center (VMSC), and Home Location register (HLR). You use the utility to test the sending and receiving of SMS messages. See "Overview of the smsc Test Tool" for an overview of smsc.

The smsc test tool attaches to the SLEE as a TCAP interface and handles both MAP and IS-41 incoming short message requests. It can simulate an SMSC by sending an MO ForwardSM operation, an HLR by sending an SendRoutingInfoForSM operation, or an MSC by sending an MT ForwardSM operation at MAP levels 1-3. The responses to each method are defined in a configuration file. Selection of functionality is automatic, depending on which type of operation the test tool receives.

Running the smsc Test Tool

The smsc test tool is located in the following directory:

/IN/service_packages/TEST_TOOLS/bin/smsc

The smsc test tool runs as a SLEE interface when you start the SLEE; therefore, starting the SLEE starts smsc. You must have configured the smsc test tool and configured the SLEE for smsc before smsc will run. See "Configuring SLEE for smsc" for information about configuring the SLEE.

The smsc test tool redirects its output to a log file. The log file is written to the /IN/service_packages/TEST_TOOLS/tmp/smsc.log file.

Before starting the SLEE, set the following environment variables for smsc:

  • ESERV_CONFIG_FILE

    Optional. Set to the location of the eserv.config file, which contains the XMS configuration. Defaults to /IN/service_packages/etc/eserv.config.

  • SMSC_CONFIG_FILE

    Set to the location of the smsc.cfg file, which defines the SMSC responses to incoming messages. The following example illustrates a setting of the SMSC_CONFIG_FILE environment variable:

    SMSC_CONFIG_FILE=/IN/service_packages/TEST_TOOLS/etc/smsc.cfg
    export SMSC_CONFIG_FILE
    
  • DEBUG

    Set to fred_smsc to obtain useful information about what smsc is doing.

    Note:

    If this variable is set to all, every SLEE program writes out debugging information, which is usually not desirable due to the volume of information, most of which is not meaningful for smsc.

Configuring SLEE for smsc

To configure the Service Logic Execution Environment (SLEE) for SMSC, you must include the following parameters in the slee.cfg file:

  • SERVICEKEY=INTEGER 42 SMSCINT

  • INTERFACE=Timer timerIF /IN/service_packages/SLEE/bin EVENT

  • INTERFACE=SMSCINT smsc </path/to/the_smsc> EVENT

The following example highlights these parameters in an excerpt from the slee.cfg file.

# Standard SLEE definitions...
# (MAXAPPLICATIONS, MAXDIALOGS, etc)
WATCHDOG=/IN/service_packages/SLEE/bin/ watchdog
WATCHDOGCYCLETIME=3000
SERVICEKEY=INTEGER 101 xmsIf
SERVICEKEY=INTEGER 42 SMSCINT
SERVICE=ACS 1 slee_acs ACS
INTERFACE=Timer timerIF /IN/service_packages/SLEE/bin EVENT
INTERFACE=SMSCINT smsc </path/to/the_smsc> EVENT
INTERFACE=xmsIf xmsTrigger.sh /IN/service_packages/XMS/bin EVENT
APPLICATION=slee_acs slee_acs /IN/service_packages/ACS/bin 1 1

Other parameters listed here, which are important to running SLEE, are described in Service Logic Execution Environment Technical Guide.

Configuring the smsc Test Tool

Configuring the smsc test tool consists of adding configuration parameters to the smsc.cfg file, which is in the /IN/service_packages/TEST_TOOLS/etc directory by default. You can specify a different location for the file by setting the SMSC_CONFIG environment variable.

You add parameters to the smsc.cfg file based on the testing that you want to do. Configuring the smsc test tool can include the following tasks:

Configuring General Parameters

The following parameters apply to the smsc test tool rather than a particular protocol.

Set the following parameters in the smsc.cfg file to specify a sleep time and a request delay range.

Protocol

Deprecated.

Note:

The Protocol parameter formerly specified the protocol ("map" or "is41") to be used. However, the smsc test tool currently determines the protocol based on the incoming message.

requestDelayRangeStart

The requestDelayRangeStart and requestDelayRangeEnd parameters specify a range in seconds by which responses are delayed. The delay is randomly selected from within the specified range.

Specifies the start of the delay range.

requestDelayRangeEnd

Specifies the end of the delay range.

sleepTime

Specifies the sleep time between event polls when idle.

Configuring for CAP3 GPRS

You can use the SMSC test tool to perform one CAP3 GPRS operation, ActivityTestGPRS.

Use the following parameters in the smsc.cfg file to perform an ActivityTestGPRS operation for the CAP3 GPRS protocol. This operation tests whether a relationship exists between the gsmSCF and gprsSSF. If so, the gprsSSF replies.

CAP3DestinationReferenceRange

Optional. Specifies an array of Destination Reference patterns and associated behaviors.

CAP3DestinationReferenceRange = [
    {
         pattern = ""
         responses = [
             {
                  reply = true | false
                  delay = <seconds>
             }
             ...
         ]
    }
    ...
]

You set the following values in the CAP3DestinationReferenceRange parameter.

  • delay

    Mandatory for an entry in the responses array of CAP3DestinationReferenceRange. Specifies in seconds the length of time to delay the response.

  • pattern

    Mandatory for entry in the CAP3DestinationReferenceRange array. Specifies a regular expression as understood by the UNIX grep command.

  • reply

    Mandatory for entry in the CAP3DestinationReferenceRange array. Specifies whether to reply to an ActivityTestGPRS operation sent by the gsmSCF.

  • responses

    Mandatory for an entry in the CAP3DestinationReferenceRange array. Specifies an array of responses, each of which specifies a reply of true or false and a delay in seconds.

Configuring for MAP

To use the MAP protocol, set the appropriate parameters in the smsc.cfg file.

AbortRequest

Deprecated. Setting AbortRequest to true is equivalent to Action = ABORT.

Action

Specifies the action to take when a message is received. These values override IgnoreRequest, AbortRequest, or FailResponse.

altAction

Used instead of Action for the percentage of time specified by altPercentage.

altPercentage

Specifies the percentage of time to use altAction instead of Action

FailOpid

The error code to put in a TCAP ReturnError.

FailCause

The value that specifies the cause in a ReturnError message when the error code is 32 (sm-DeliveryFailure).

FailResponse

Deprecated. Setting FailResponse to true is equivalent to Action = "NACK".

fallbackVersion

Specifies the value when Action is MAP_FALLBACK. This is the MAP version to put in the TCAP ABORT message when MAP fallback is requested.

Note:

While this chapter and the smsc.cfg file refer to MAP version 3, its official name is MAP phase 2+.

IgnoreRequest

Deprecated. Setting IgnoreRequest to true is equivalent to Action = "IGNORE".

MapVersion

Specifies the MAP version to support. SMC or SMSC requests that use a higher version are aborted (TCAP_ABORT) and smsc requests a fallback to this version, regardless of the value of the Action parameter.

Note:

While this chapter and the smsc.cfg file refer to MAP version 3, its official name is MAP phase 2+.

moreMessages

If true, the smsc test tool sends the MAP result in a TCAP_CONTINUE message, leaving the TCAP dialog open. If false, the smsc test tool sends the MAP result in a TCAP_END message, ending the TCAP dialog.

RECEIVED_SMS_STATUS_REPORT

Specifies the Action and FailOpid to use when processing messages that contain an SMS Status Report.

SEND_USSD_MAP_ERROR_VALUE

The error code to put in a TCAP ReturnError message for a MAP UNSTRUCTURED_SS_NOTIFY or PROCESS_UNSTRUCTURED_SS operation.

SEND_USSD_PROCESS_UNSTRUCTURED_SS_RESPONSE

Specifies the action to take on receipt of a MAP_PROCESS_UNSTRUCTURED_SS operation.

SEND_USSD_SS_NOTIFY_RESPONSE

Specifies the action to take on receipt of a MAP UNSTRUCTURED_SS_NOTIFY operation.

TCAP_ABORT_cause

Specifies the cause (p-abortCause) to put in a TCAP ABORT message.

Example MAP Configuration

The following example illustrates the smsc configuration parameters for MAP in the smsc.cfg file:

# smsc.cfg
SMSC = {    ...    MAP = {        moreMessages = False        MapVersion = 3        IgnoreRequest = False        AbortRequest = False        FailResponse = False        Action = "ACKNOWLEDGE_REQUEST"        TCAP_ABORT_cause = 0        altAction = "ACKNOWLEDGE_REQUEST"        altPercentage = 0        FailOpid = 32        FailCause = 32        fallbackVersion = 1        SEND_USSD_SS_NOTIFY_RESPONSE = 1        SEND_USSD_PROCESS_UNSTRUCTURED_SS_RESPONSE = 1        SEND_USSD_MAP_ERROR_VALUE = 1        RECEIVED_SMS_STATUS_REPORT = {            Action = "ACKNOWLEDGE_REQUEST"            altAction = "ACKNOWLEDGE_REQUEST"            altPercentage = 0            FailOpid = 32            FailCause = 32        }
}

Configuring for MAP as HLR

When Protocol is set to MAP, you can also configure SMSC to respond as an HLR when it receives a SendRoutingInfoForSM message.

Note:

You can enable both SMS and HLR capabilities at the same time.

Use the following parameters to configure SMSC as an HLR.

Action

Specifies the action to take upon receipt of a lookup request. This action supersede the IgnoreRequest, AbortRequest, and FailResponse parameters.

Address

These are the digits of the MSC number to put in SEND_ROUTING_INFORMATION_FOR_SM results.

AddressNature

This is the nature address of the MSC number to put in SEND_ROUTING_INFORMATION_FOR_SM results.

AddressPlan

This is the indicator of the numbering plan for the MSC number to put in SEND_ROUTING_INFORMATION_FOR_SM results.

canSendEmptyImsi

Controls what happens if the value of the IMSI parameter is an empty string (" "). If the value of canSendEmptyImsi is true, the IMSI is sent as an empty string. If the value of canSendEmptyImsi is false, the IMSI is constructed of the imsiPrefix value followed by the MSISDN.

Denied

Deprecated. A value of true is equivalent to Action = "NACK".

Enabled

Deprecated. When true, enables the HLR functions and smsc responds to those messages. A value of false is equivalent to Action = "IGNORE".

Error

Deprecated. When true, smsc responds to HLR messages with an error code.

ErrorCause

The cause of failure to include in the NACK response, if appropriate to the operation ID.

ErrorOpid

Deprecated. The error code to put in a TCAP ReturnError message.

FailOpid

The error code to put in a TCAP ReturnError message.

Note:

FailOpid overrides the deprecated ErrorOpid parameter.

fallbackVersion

If the action is FALLBACK_REQUEST, this value is the version specified in TCAP_ABORT, assuming that the logic for MapVersion does not apply.

GPRSNodeIndicator

The LocationInfoWithLMSI.gprsNodeIndicator value to put in a MAP2 SEND_ROUTING _INFORMATION_FOR_SM result.

hlrAltAction

Specifies the alternative action to take upon receipt of a lookup request. The hlrAltAction parameter is used instead of the Action parameter for the percentage of time specified by hlrAltPercentage.

hlrAltPercentage

Specifies as a percentage the number of times that smsc uses hlrAltAction instead of Action.

HLRSequence

Optional. This parameter is an array that enables you to configure a different responses for the MAP plugin when using HLR functionality for Status Reports and Submit messages. See "SMSC Sequence for MAP as HLR" for more information.

IMSI

The International Mobile Subscriber Identifier (IMSI) to put in the SEND_ROUTING_INFORMATION result or SEND_ROUTING_INFORMATION_FOR_SM result.

imsiPrefix

Specifies the prefix to turn the MSISDN into an IMSI, when the IMSI parameter is empty.

ISC

MAP 3 only. Specifies whether to follow every ReturnError or ReturnResult message with an INFORM_SERVICE_CENTER operation.

ISCMwStatus

If non-zero, ISCMwStatus is included as the mw-Status field of the MAP INFORM_SERVICE_CENTER operation. Only the following six least-significant bits are valid:

Note:

You can apply the logical OR operation to these bits. For example, applying a logical OR operation to 0x20 (01 0000) and 0x04 (00 0100) results in 0x24 (01 0100), which means address not included and memory not reachable for GPRS.

ISCSeparate

Specifies whether to send the INFORM_SERVICE_CENTER in a separate TCAP message from the TCAP ReturnError message.

ISCStoredMsisdnNoa, ISCStoredMsisdnNpi, ISCStoredMsisdn

If present, is included as the storedMSISDN field of the ISC operation.

LMSI

Specifies the LMSI to put in the SEND_ROUTING_INFORMATION_FOR_SM results.

MapVersion

Specifies the MAP version to use. If the incoming MAP version is higher, SMSC sends a TCAP ABORT message to fall back to this version, regardless of the version specified.

Note:

While this chapter and the smsc.cfg file refer to MAP version 3, its official name is MAP phase 2+.

SGSN

Specifies the digits of the SGSN number to put in SEND_ROUTING_INFORMATION_FOR_SM results.

SGSNNature

Specifies the nature address of the Service GPRS Support Node (SGSN) number to put in SEND_ROUTING_INFORMATION_FOR_SM results.On behalf of mobile subscribers, SGSN manages access to network resources and enacts the packet scheduling policy. It also initiates the Packet Data Protocol (PDP) context with the gateway GPRS support node (GGSN).

SGSNPlan

Specifies the indicator of the numbering plan of the SGSN number to put in SEND_ROUTING_INFORMATION_FOR_SM results.

Example MAP as HLR Configuration

The following example illustrates the smsc configuration parameters for MAP when smsc acts as an HLR:

# smsc.cfg
SMSC = {
    ...
    MAP = {
        ...
        RECEIVED_SMS_STATUS_REPORT = {
            ...
        }
# This section describes how the SMSC handles SEND-ROUTING-INFORMATION 
# and SEND_ROUTING-INFORMATION-FOR-SM requests.
        HLR = {
           
            Enabled = True         
            Denied = False       
            Action = "ACKNOWLEDGE_REQUEST" 
            MapVersion = 1   
            ErrorOpid = 1 # unknownSubscriber
            FailOpid = 1 # unknownSubscriber  
            ISC = False         
            ISCSeparate = False   
            TCAP_ABORT_cause = 0          
            ISCStoredMsisdnNoa = 1          
            ISCStoredMsisdnNpi = 1        
            ISCStoredMsisdn = "12345678"        
            ISCMwStatus      
            IMSI = "0123456789ABCDEF"
            canSendEmptyImsi = False        
            GPRSNodeIndicator        
            imsiPrefix = "123"          
            AddressNature = 1         
            AddressPlan = 1       
            Address = "12345678"
            SGSNNature = 1
            SGSNPlan = 1
            SGSN = "12345678"
            LMSI = "12345678"
        }
    }
}
SMSC Sequence for MAP as HLR

When Protocol is set to MAP, you can add an HLRSequence parameter to configure different responses for the MAP plugin when using HLR functionality for Status Reports and Submit messages. HLRSequence is an array where each array element represents a response to a SEND_ROUTING_INFORMATION or SEND_ROUTING_INFORMATION_FOR_SM request.

Each parameter available for HLR configuration is also available for HLRSequence.

The following rules apply to use of the HLRSequence parameter:

  • If HLRSequence has one response, it is used for all responses.

  • If HLRSequence has more than one response, the first request will be handled according to the first array element, the second request will be handled according to the second array element, and so on. When the smsc test tool reaches the end of the array, it loops back to the beginning of the array.

  • If HLRSequence is absent or is present but has no responses, HLR is used for all responses.

The following example illustrates the use of the HLRSequence parameter:

SMSC = {
    ...
    MAP = {
       ...
        RECEIVED_SMS_STATUS_REPORT = {
            ...
        }
        # This section describes how the SMSC should handle
        # SEND-ROUTING-INFORMATION and SEND_ROUTING-INFORMATION-FOR-SM requests.
        HLR = {
           ...
        }
        hlrAltAction = "ACKNOWLEDGE_REQUEST"
        hlrAltPercentage = 0
        HLRSequence = [
            {
            # Each of these sections has the same format as the SMSC.MAP.HLR
            # section above.
            }
            ...
            {
            }
        ]
        ...
    }
    ...
}
Map SendUSSDNotification

The SEND_USSD_SS_NOTIFY_RESPONSE and SEND_USSD_MAP_ERROR_VALUE parameters configure the response to the Advanced Control Services (ACS) for a MAP-UNSTRUCURED-SS-NOTIFY message.

To send a valid response, which is the default, set SEND_USSD_SS__NOTIFY_RESPONSE to 1:

SEND_USSD_SS_NOTIFY_RESPONSE=1

To send a MAP ERROR response, set SEND_USSD_SS_NOTIFY_RESPONSE to 0:

SEND_USSD_SS_NOTIFY_RESPONSE=0

Note:

Use SEND_USSD_MAP_ERROR_VALUE=value to set the error code value (1 - 44) as defined in Map2Types.h.

Set SEND_USSD_SS_NOTIFY_RESPONSE to 2 to indicate that no response is returned:

SEND_USSD_SS_NOTIFY_RESPONSE=2

The following example illustrates the SEND_USSD_SS_NOTIFY_RESPONSE and SEND_USSD_MAP_ERROR_VALUE parameters:

AP = {
    ...
    SEND_USSD_SS_NOTIFY_RESPONSE=0
    SEND_USSD_MAP_ERROR_VALUE=1
}
XMS tcapInterfaceName

The tcapInterfaceName parameter specifies the name of the interface that XMS uses to communicate with the SMSC. The parameter value is the same name that is specified as the SMSC interface by the INTERFACE parameter in the SLEE.cfg file.

The following example illustrates the tcapInterfaceName parameter in the smsc.cfg file:

XMS = {
xmsTrigger = {
    plugins = [
    # MAP plugin
    {
        lib = "xmsiMap.so"
        SSN = 8
        prefix = "485"
        pluginId = 1
        config = {
            contextKey = 1234
            tcapInterfaceName = "SMSCINT"
            GT = "5114406267"
            PC = 55
            SSN = 8
        }
    }
}
}

Configuring for IS-41

When the Protocol parameter in the smsc.cfg file is set to IS-41, smsc accepts SMSDeliveryPointToPoint requests and responds to them based on the following IS-41 parameters.

Use the following parameters to configure smsc for the IS-41 protocol.

ACK

Deprecated in favor of Action.

If the value is true, respond with a positive value for SMSDeliveryPointToPointResult, but one without an SMS_CauseCode value.

Action

Specifies the action to take upon receipt of a message, which supersedes the ACK, NACK, TCAP_ABORT, and Ignore items. You can also use the strings "ack", "nack", "abort", and "ignore".

altAction

Specifies the action to take upon receipt of a message, which supersedes the ACK, NACK, TCAP_ABORT, and Ignore items. You can also use the strings "ack", "nack", "abort", and "ignore".

altPercentage

Specifies the percentage of time to use altAction instead of Action.

defaultDestPC

The point code to put in the SCCP Called Party Address of TCAP messages containing IS-41 operations.

defaultDestSSN

The subsystem number to put in the SCCP Called Party Address of TCAP messages containing IS-41 operations.

Ignore

Deprecated in favor of Action. You can also use the string "ignore".

If the value is true, ignore the request as if it was not received.

NACK

Deprecated in favor of Action.

If the value is true, respond with a negative value for SMSDeliveryPointToPointResult by including an SMS_CauseCode value.

NACK_StatusCode

The action to put in the status code when the action is FAIL_REQUEST.

RECEIVED_SMS_STATUS_REPORT

The parameters in this section have the same meaning as their counterparts in the IS41 section. They apply, however, only to the action that the smsc test tool takes upon receiving a RECEIVED_SMS_STATUS_REPORT message. You can include the following parameters in the RECEIVED_SMS_STATUS_REPORT section:

  • Action

  • altAction

  • altPercentage

  • NackStatusCode

  • TCAP_ABORT

  • TCAP_Notice_cause

  • TCAP_U_ERROR_code

Note:

If any of these parameters is not present, the value from its counterpart IS-41 parameter is used instead.

For example:

 IS41 = {
        ...
        RECEIVED_SMS_STATUS_REPORT = {
            Action = "ACKNOWLEDGE_REQUEST"
            altAction = "ACKNOWLEDGE_REQUEST
            altPercentage = 0
            TCAP_ABORT_cause = 0
            TCAP_NOTICE_cause = 0
            TCAP_U_ERROR_code = 0
            NACK_StatusCode = 3
        }
...
}

TCAP_ABORT

Deprecated in favor of Action. You can also use the string "abort".

If the value is true, respond by sending a TCAP_ABORT and closing the dialog.

TCAP_ABORT_cause

If TCAP_ABORT is true, the value of TCAP_ABORT_cause is the numeric code for the cause of the abort.

TCAP_NOTICE_cause

The cause to put in a TCAP_NOTICE message.

TCAP_U_ERROR

Deprecated in favor of Action.

TCAP_U_ERROR_code

The error code to put in a TCAP ReturnError

Configuring for IS-41 as HLR

When Protocol is set to IS41, you can configure smsc to respond when it is sent an SMSRequest.

Note:

SMS and HLR functionality is independent of each other.

The smsc response is based on the following parameters:

AccessDenied

Deprecated. When true, this parameter is equivalent to Action = "NACK". which responds to the request with a ReturnResult and a cause value that indicates failure.

AccessDeniedReason

Specifies the reason access was denied when the action is FAIL_REQUEST.

Action

Specifies the action to take upon receipt of a message. The Action parameter supersedes the Enabled and AccessDenied items.

Enabled

Deprecated. Enables HLR capabilities when true. When false, is equivalent to Action = "IGNORE".

esnManufacturerCode

The manufacturer code of the mobile device's Electronic Serial Number (ESN). This is returned in the SMSRequestResult message if an ESN was not present in the SMSRequest message.

esnSerialNumber

The mobile device's Electronic Serial Number (ESN), which is returned in the SMSRequestResult message if an ESN was not present in the SMSRequest message.

hlrAltAction

Specifies the alternative action to take upon receipt of a lookup request. The hlrAltAction parameter is used instead of the Action parameter the percentage of time specified by hlrAltPercentage.

hlrPercentage

Specifies the percentage of time to use the hlrAltAction parameter instead of the Action parameter.

HLRSequence

Optional. This parameter is an array that enables you to configure a different responses for the MAP plugin when using HLR functionality for Status Reports and Submit messages. See "SMSC Sequence for MAP as IS-41" for more information.

mobileIdentificationNumber

The mobile identification number (MIN), which is returned in the SMSRequestResult message if the MDN was present in the SMSRequest message.

NatureOfNumber

Specifies whether the routing address is national or international.

NumberPlan

Specifies the number plan portion of the routing address, which is the address of the MSC at which the mobile device currently can be reached.

returnMIN

Specifies whether to include the MIN in the SMSRequestResult message.

RoutingAddress

The global address of the MSC at which the mobile device currently can be reached.

TCAP_ABORT_cause

If TCAP_ABORT is true, the value of TCAP_ABORT_cause is the numeric code for the cause of the abort.

TCAP_NOTICE_cause

The cause to put in a TCAP_NOTICE message.

SMSC Sequence for MAP as IS-41

When Protocol is set to IS41, you can add an HLRSequence parameter to configure different responses for the MAP plugin when using HLR functionality for Status Reports and Submit messages. HLRSequence is an array where each array element represents a response.

Each parameter available for HLR configuration is also available for HLRSequence.

The following rules apply to use of the HLRSequence parameter:

  • If HLRSequence has one response, it is used for all responses.

  • If HLRSequence has more than one response, the first request will be handled according to the first array element, the second request will be handled according to the second array element, and so on. When the smsc test tool reaches the end of the array, it loops back to the beginning of the array..

  • If HLRSequence is absent or is present but has no responses, HLR is used for all responses.

The following example illustrates the use of the HLRSequence parameter for MAP as IS-41:

# smsc.cfg
SMSC = {
    Protocol = "IS41"
    IS41 = {
        Action = "ACK"
        HLRSequence = [
            {
                Action = 0
                NatureOfNumber = "international"
                RoutingAddress = "6449393400"
            }
            {
                Action = "NACK"
                AccessDeniedReason = 2
                NatureOfNumber = "international"
                RoutingAddress = "6449393400"
            }
        ]
    }
}
Specifying AccessDeniedReason Values

Use the values in Table 4-1 to specify values for the AccessDeniedReason parameter.

Table 4-1 AccessDeniedReason Values

Value Meaning

0

NotUsed

1

Denied

2

Postponed

3

Unavailable

4

Invalid

tcapInterfaceServiceKey for XMS

The tcapInterfaceServiceKey parameter specifies the service key that XMS uses to communicate with the smsc test tool. This service key must match the SERVICEKEY parameter for the SMSC interface in the SLEE.cfg file.

The following example shows the tcapInterfaceServiceKey parameter in the smsc.cfg file:

# eserv.config
XMS = {
xmsTrigger = {
plugins = [
# IS41 plugin
{
lib = "libxmsiIS41.so"
pluginId = 1
config = {
# ....
TDMA = {
xmsPointCode = 200
tcapInterfaceServiceKey = 42
# ....
}
CDMA = {
xmsPointCode = 201
tcapInterfaceServiceKey = 42
}
}
} ] } }

SMS CauseCode Mapping

Use the values in Table 4-2 to specify the SMS CauseCode values.

Table 4-2 SMS CauseCode Values

Numeric Value String Value

0

AddressVacant

1

AddressTranslationFailure

2

NetworkResourceShortage

3

NetworkFailure

4

InvalidTeleserviceID

5

OtherNetworkProblem

6-31

Reserved, treated as OtherNetworkProblem

32

NoPageResponse

33

DestinationBusy

34

NoAcknowledgement

35

DestinationResourceShortage

36

SMSDeliveryPostponed

37

DestinationOutOfService

38

DestinationNoLongerAtThisAddress

39

OtherTerminalProblem

40-47

Reserved, treated as OtherTerminalProblem

48-63

Reserved, treated as SMSDeliveryPostponed

64

RadioInterfaceResourceShortage

65

RadioInterfaceIncompatibility

66

OtherRadioInterfaceProblem

67-95

Reserved, treated as OtherRadioInterfaceProblem

96

EncodingProblem

97

SMSOriginationDenied

98

SMSTerminationDenied

99

SupplementaryServiceNotSupported

100

SMSNotSupported

101

Reserved

102

MissingExpectedParameter

103

MissingMandatoryParameter

104

UnrecognizedParameterValue

105

UnexpectedParameter Value

106

UserDataSizeError

107

OtherGeneralProblems