This section describes the GSM utility classes and the functionality they provide in the SMS stack. .
The GSM utility (GSMU) class provides the functionality specified in the 3GPP standards 23.038 and23.040.
The GSMU provides a specialised SMS class called TGsmuLex8. TGsmulex8 provides methods to decode the PDU data.
The following classes provide utility methods to encode and decode different elements of a PDU.
GSMU Class | Functionality |
---|---|
TSmsOctet |
Provides methods to encode and decode the octets of a PDU |
CSmsAlphabetConverter |
Provides methods for character conversion between native type and user defined type. |
TGsmSmsTypeOfAddress |
Provides methods to specify the type of address used. The type of address includes the details of the numbering plan indicator and the type of numbering used. |
TGsmSmsTelNumber |
Provides methods to encapsulate basic address information like source device address, destination address and the service centre address in a SMS message. |
TSmsServiceCenterTimeStamp |
Provides methods to get and set the service centre time stamp in a SMS message. |
TSmsValidityPeriod |
Provides methods to get and set the validity period in a PDU. |
TSmsStatus |
Provides methods to get and set the SMS status in the |
Provides methods to get and set flags in the reports and |
|
TSmsProtocolIdentifier |
Provides methods to get and set the protocol identifier. |
TSmsCommandType |
Provides methods to get and set the type of commands in
a |
CSmsuserData |
Provides methods to get and set user data elements from a PDU. |
CSmsCommandData |
Provides methods to get and set various information elements from a SMS command message. |
The following classes provide methods to create
and process the six types of messages DELIVER, SUBMIT, DELIVER
REPORT, SUBMIT REPORT, STATUS REPORT
and COMMAND
.
class | Functionality |
---|---|
Provides generic interface to encode and decode all six
types of PDUs. |
|
Provides the methods to create a |
|
Provides methods to create a |
|
Provides methods to create a |
|
Provides methods to process a SUBMIT REPORT message sent by the network in response to a submit message. The SUBMIT REPORT contains the result of the SUBMIT message like if the message was submitted successfully, if not the reason for the failure. |
|
Provides the methods to process the STATUS REPORT message sent by the network. The message contains the details of the status of a previously sent SUBMIT message. |
|
Provides methods to create a COMMAND message. This message is mobile originated and sent to the network requesting some action like status of sent message. |
The GSMU provides the utility classes to store
the SMS messages before segmentation and concatenation. CSmsBufferBase
is the base class to create the buffer space in the memory. CSmsBuffer
is used to store an array of TText in the memory. CSmsEditorBuffer
class is used
by the messaging server to store the text in CRichText type.
TSmsUserDataSettings
class
is used to encapsulate the settings such as character concatenation.
The stored settings affect the encoding and decoding of the messages.
CSmsMessage class is used to represent a
complete message inside the SMS stack before segmentation and a complete
message after reassembly. If the message type is class 0, incomplete
messages are also stored by the CSmsMesasge. The
complete message is stored in the CSmsBuffer
. The
main function of the CSmsMessage is to store the
information in a SMS and to encode and decode the message into different
PDUs. The text in a message is accessed using Buffer() method. The CSmsMessage also supports decoding
of partial complete Class 0 SMS.
The CSmsMesasge class supports the following functionality:
To add hyperlink in a SMS message using CSmsHyperlinkOperations
To get and set
the reply address path using CSmsReplyAddressOperations
To get, set
and remove special message indicators using CSmsSpecialSMSMessageOperations
To support the voice mail notifications.
CSmsSMSCCtrlParameterOperations
class provide the clients with methods to manipulate Short Message
Service Centre (SMSC) control information elements. class
To support segmentation and reassembly in the SMS stack.
To pack and unpack data from the SMS messages.
The GSMU also provides the segmentation and reassembly store described in SMS Stack Message Stores.