Smart Messaging in CDMA v1 1 en
Smart Messaging in CDMA v1 1 en
Smart Messaging in CDMA v1 1 en
Messaging
Forum.Nokia.com
Contents
1 Introduction................................................................................................................................................ 5
2 WDP Architectural Overview................................................................................................................... 5
3 CDMA SMS Header Format ........................................................................................................................ 6
3.1 Mapping of WDP to CDMA SMS Text-Based Headers......................................................................6
3.2 WDP Port Numbers ..................................................................................................................................7
4 Character Sets and Character Conversions .......................................................................................... 8
5 Message Formats and Examples ............................................................................................................ 9
5.1 Example of a Ring Tone....................................................................................................................... 10
5.2 Example of an Operator Logo............................................................................................................ 10
5.3 Example of a Caller Line ID Icon........................................................................................................ 10
5.4 Example of a vCard................................................................................................................................ 11
5.5 Example of a vCalendar ....................................................................................................................... 11
6 Terms and Abbreviations ......................................................................................................................12
7 References .................................................................................................................................................13
8 Evaluate This Document ........................................................................................................................14
Change History
1 Introduction
SMS services were first created for GSM and later appeared in CDMA and TDMA networks. In the CDMA
network, a solution was needed in order to provide bearer support for client-to-client smart
messaging. One answer is to use Wireless Datagram Protocol (WDP) headers. The WDP specifications
(defined by the WAP Forum, now known as the Open Mobile Alliance, OMA) define how SMS can be
used for generic data transport over various bearer technologies [6].
This document provides the information needed to use the smart messaging functionality of Nokia’s
CDMA devices. Most Nokia mobile devices are capable of receiving smart messages. These messages
can contain a variety of data including ring tones, operator logos, group graphics (caller line
identification icons), picture messages, business cards (vCard), and calendar bookings (vCalendar).
However, each smart message can contain only one of these items at a time.
Note: This document is intended to help developers create their own smart messages and show
them how to encode data for specific mobile application services. To acquire ring tones and logos,
developers should visit http://www.nokia.com/clubnokia. A network service provider may also have
services where developers can acquire ring tones and logos.
WAP
Mobile Proxy/Server
WAE
WAE Apps on
other servers
WSP Wireless WSP
Data
WTP Gateway WTP
(SMSC)
WDP & WDP &
Adaptation Adaptation
Subnetwork Subnetwork
The transport layer protocol in the WAP architecture is the WDP. The WDP protocol operates above the
data-capable bearer services supported by multiple network types. WDP offers a consistent but
unreliable service to the upper level protocols of WAP and communicates transparently over one of
the available bearer services.
WDP text-based headers are designed as an optional method for environments that support only
reduced character sets (for example, not 8-bit binary headers). In WDP [6], a generic mechanism in
similar environments is described and it can be used in CDMA SMS as well as in GSM. An exception to
that specification is that only the long address format is used.
No protocol indication at a higher level is needed to indicate the presence of protocol information in
the data part of the message. The first characters “//SCKL” identify the WDP datagram addressing
scheme to the receiving device. The header can be presented in various lengths, from 4 bytes (only
destination port) to 15 bytes (containing full WDP information), in addition to the 6 bytes of “//SCKL”.
Mapping of WDP for SMS occurs as shown in Figure 2.
<WDP-text-socket-header> ::=
<WDP-keyword><WDP-port-information>[<WDP-other-header>]<WDP-delimiter>
<WDP-long-destination-address>::=<hex-digit><hex-digit><hex-digit><hex-digit>
Destination WDP port in ASCII coded hexadecimal {0000..FFFF}
<WDP-long-source-address>::=<hex-digit><hex-digit><hex-digit><hex-digit>
Destination WDP port in ASCII coded hexadecimal {0000..FFFF}
<WDP-SAR-info> ::=
<WDP-SAR-reference><WDP-SAR-total-segments><WDP-SAR-current-segment>
<WDP-SAR-reference> ::= <hex-digit><hex-digit>
Concatenated message reference number in ASCII coded hexadecimal
{00..FF}… i.e., decimal {0..255}
For more details about WDP headers, refer to the WDP Specifications [6].
Note: In BNF notation, “::=” means “definition” where a non-device symbol is on the left side of the
operator “::=”, and the definition is on the right side. The operator “|” is used as a delimiter between
multiple choices. Optional parts are enclosed in meta symbols [ and ]. [7]
For more details about how WDP text elements are used for smart messaging elements such as
graphical logos and ring tones, refer to the Smart Messaging Specification [7].
7 6 5 4 3 2 1 0
“/”
“/”
“S”
“C”
“K”
“L”
Destination port MSB (High hex) 1
Destination port MSB (Low hex) 5
Destination port LSB (High hex) 8
Destination port LSB (Low hex) 1
Originator Port MSB (High hex) 1
Originator Port MSB (Low hex) 5
Originator Port LSB (High hex) 8
Originator Port LSB (Low hex) 1
Reference number (High hex) 0
Reference number (Low hex) 1
Total number of segments (High hex) ex.0
Total number of segments (Low hex) ex.5
Segment count (High hex) ex. 0
Segment count (Low hex) ex. 1
<space>
1 - n 8-bit characters of User Data
7 6 5 4 3 2 1 0
Figure 3: Description of WDP headers when mapped for compatibility with CDMA networks
Figure 3 shows a byte mapping of the WDP headers for smart messaging (the same headers shown in
Figure 2).
The text-based headers should always be terminated with a space (“ “) character before the user data
begins. This allows for future enhancements to the protocol.
Note: When sending messages from an application (on a network) to the mobile device, any
characters before the "//SCKL" header will automatically be omitted.
Segmentation of user data is allowed, but the maximum number of segments is three. See Section 5.2,
“Example of an Operator Logo” for an example of a segmented message.
When creating smart messages with large user data, it is important to remember that some mobile
devices do not support message concatenation (although most new Nokia mobile devices do support
concatenation). These devices might truncate the header or omit the segmentation and reassembly
part of the header. Refer to Section 7.5 of the WDP Specification for details on segmentation and
reassembly [6].
Table 1 defines the WDP port numbers as approved by the Internet Association Numbering Authority
(IANA) for use by OMA (WAP Forum) [7].
Port
Port Number
Number Application/Protocol
(decimal)
(hexadecimal)
These port numbers are used in the <WDP-long-destination-address> and the <WDP-long-
source-address> as shown in Figure 2.
Note: These port numbers have been reserved from the NBS port number space. For an updated list
of reserved TCP/UDP port numbers, visit http://www.iana.org/assignments/port-numbers.
The Smart Messaging Specification [7] defines the binary data format for ring tones (Section 3.6) and
CLI icons (Section 3.7).
IRA encoding is a 7-bit encoding. Therefore, native 8-bit data is sent as 7-bit IRA encoded characters.
Items in Table 2 are 8-bit octets represented by two IRA (7-bit) encoded characters. This is a temporary
solution until networks support 8-bit data. Also, an Encoding Identifier for 8-bit binary data has yet to
be defined. After these issues are solved more compact binary delivery is possible.
When CDMA SMS (CMT) is used as a smart messaging bearer for binary data (CLI icons and ring tones),
the IRA 7-bit data encoding conventions apply. If 8-bit messaging protocols like GUTS are used, there is
no need for special binary data encoding.
In CDMA smart messaging, mobile devices expect to receive binary data as IRA-encoded characters
according to the table in Table 3.
Binary
Original Binary IRA Coded Characters
In Hex Representation of
Data Received by MS
IRA Characters
10101010 AA A and A 1000001 and 1000001
11111111 FF F and F 1000110 and 1000110
As shown in Table 3, two 7-bit characters are used to represent each byte (8 bits). Remember that the
largest presentable hex figure with 8 bits is “FF”. However, with 7 bits each character can represent
hex figures only up to “7F”. Each IRA character represents half a byte in hexadecimal. Therefore, in
CDMA smart messaging, where smart messages are IRA encoded (7-bit), each byte (8 bits) is sent as
two IRA characters. The mobile device will then decode these two IRA characters as binary data (into
1 byte).
Note: Content providers and SMSC service providers should perform the required conversions to
ensure that regular 8-bit binary data is sent as data represented by IRA 7-bit characters in CDMA smart
messages.
The following is an example of a ring tone. Notice that this ring tone has been concatenated into two
message segments.
//SCKL15811581010201<space>
024A3A5D1185CD09BDBDD004004688C28926C22C26C28C30C36934C30C34
//SCKL15811581010202<space>
C36C493616290420B24AB09B0AB0B30D312452838C34C38C4916156182902000
The Ring Tone Reader listens on Port 1581 (hexadecimal) of the device. For more information on ring
tone encoding, refer to Section 5.1.5 of the Smart Messaging Specification [7].
The following is an example of an operator logo message format. The operator logo receiver listens on
Port 1582 (hexadecimal) of a smart messaging-capable mobile device.
//SCKL15821582040301<space>
27DE0100480E0100107FFFE040A00000002020004000E2A80018881B6D800124419027C0
1B6D803F2200004081F000FFC027841E018200000040210
//SCKL15821582040302<space>
01E07E55950042023801CFFF9C552AA1FFFF020800149D2AA00001020860144500000002
842E6FFFFFFFFFFFFFFC170040000000000A84438020000
//SCKL15821582040303<space>00000054331FFFFFFFFFFFFFFFE7
In the example, the user data (a bit-map representation of the operator logo) begins after a space
following the WDP headers (after the <space>).
Notice that this one operator logo is quite large and needed to be segmented into three SMS
messages. See Table 2for a mapping of this example to the WDP headers.
<WDP-long-destination-address> = 1582
<WDP-long-source-address> = 1582
<WDP-SAR-total-segments> = 03
The maximum allowed number of concatenated segments is three. According to the “WDP-SAR-total-
segments“ header, this smart message is composed of “03” total segments, which are each identified
by the “WDP-SAR-current-segment” header.
The following is an example of a Caller Line ID (CLI) Icon. The CLI Icon Reader listens on Port 1583
(hexadecimal) of a smart messaging-capable mobile device.
//SCKL1583<space>3000280E018010000000C010000000401
00000006030820C7E202183088020218108802063C10880204341888012C26098FC12862
0D0801787E050801D843070800D8C106080089810207E
For more information on the CLI Icon format, refer to Sections 3.7 and 5.1.7 of the Smart Messaging
Specification [7].
The following is an example of an electronic business card message format. The business card reader
listens on Port 23F4 (hexadecimal) of a smart messaging-capable mobile device.
//SCKL23F4<space>BEGIN:VCARD[CRLF]FN:John
Smith[CRLF]TEL;FAX:+358400853588[CRLF]EMAIL:john.smith@nokia.com[CRLF]EN
D:VCARD[CRLF]
A vCard should include a formatted name field, a fax number, and an e-mail address.
The following is an example of a vCalendar message format. The vCalendar reader listens on Port 23F5
(hexadecimal) of a smart messaging-capable mobile device. Notice that this example has been
segmented into two messages and will require reassembly after transport.
//SCKL23F500E4340201<space>
BEGIN:VCALENDAR[CRLF]BEGIN:VEVENT[CRLF]CATEGORIES:PHONE
CALL[CRLF]DTSTART:19980420T130000[CRLF]
//SCKL23F500E4340202<space>
DTSTART:19980420T130000[CRLF]DESCRIPTION:+358405561424
[CRLF]AALARM:19980420T125500[CRLF]END:VEVENT[CRLF]END:VCALENDAR[CRLF]
Note: Most Nokia devices support vCard and vCalendar smart messages. The Internet Mail
Consortium determines these specifications. The specifications for Electronic Calendar, Scheduling
Exchange Format Specification, and the Electronic Business Card can be found at http://www.imc.org/.
7 References
[1] TIA /EIA-637-A, Short Message Service for Spread Spectrum Systems
[9] ITU-T Recommendation T.50, International Reference Alphabet (IRA) (Formerly International
Alphabet No. 5 or IA5), http://www.itu.int/ITU-T/publications/index.html