This section provides a summary of the classes and the functionality provided by the SMSU. The SMS Utility (SMSU) is a DLL. The SMSU provides utility functionality for SMS messages.
The SMSU creates the buffers, read streams and write streams required for the SMS stack. The SMSU creates a temporary buffer of 256 bytes to store the Protocol Data Units (PDU)s in the SMS stack. The PDUs are processed by the SMS stack in the temporary buffers.
The TSmsAddr
of the SMSU provides methods to store the SMS address values. The
SMS addresses are stored in a TSmsAddrFamily type.
The TSmsAddr
also enables the SMS stack to bind
the packets to the socket server using the parameters defined in TSmsAddr
. TSmsAddr::SetSmsAddrFamily()
can be used to define the socket and port to bind the packets. The
enumeration table for SMS socket address family:
Enumeration | Socket customisation |
---|---|
ESmsAddrUnbound |
Unbound socket. |
ESmsAddrSendOnly |
Socket can only send and cannot receive any messages. |
ESmsAddrMatchIEI |
To match Information Element Identifiers (IEI). |
ESmsAddrMessageIndication |
To match on IEI 0x01 and DCS 0x1100xxxx, 0x1101xxxx and 0x1110xxxx. |
ESmsAddrMatchText |
To match any text patterns |
ESmsAddrRecvAny |
To receive all messages. Only one client can use this. |
ESmsAddrStatusReport |
To receive Status Reports. |
ESmsAddrLocalOperation |
Socket for local SIM operations. |
ESmsAddrApplication8BitPort |
Socket for sock port identification. |
ESmsAddrApplication16BitPort |
Socket for sock port identification. |
ESmsAddrEmail |
To match email messages. |
TSmsSettings
define the variables used by the SMS stack. The variables are initialised
during the creation of the SMS stack. The variables in TSmsSettings
are initialised with the values defined in the smswap.sms.esk
file.