cimd-protocol

74
Nokia Artuse SMS Center Release SC5B CD3 Reference Documents DN99255924 © Nokia Corporation 1 (74) Issue 5a-0 en Nokia Proprietary and Confidential CIMD Interface Specification

Upload: cuatro-jotas-plateria-criolla

Post on 24-Nov-2014

230 views

Category:

Documents


1 download

TRANSCRIPT

Page 1: CIMD-Protocol

Nokia Artuse SMS CenterRelease SC5B CD3

CIMD Interface Specification

Reference Documents

DN99255924 © Nokia Corporation 1 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 2: CIMD-Protocol

CIMD Interface Specification

The information in this documentation is subject to change without notice and describes onlythe product defined in the introduction of this documentation. This documentation is intendedfor the use of Nokia's customers only for the purposes of the agreement under which thedocumentation is submitted, and no part of it may be reproduced or transmitted in any form ormeans without the prior written permission of Nokia. The documentation has been prepared tobe used by professional and properly trained personnel, and the customer assumes fullresponsibility when using it. Nokia welcomes customer comments as part of the process ofcontinuous development and improvement of the documentation.

The information or statements given in this documentation concerning the suitability, capacity,or performance of the mentioned hardware or software products cannot be considered bindingbut shall be defined in the agreement made between Nokia and the customer. However, Nokiahas made all reasonable efforts to ensure that the instructions contained in the documentationare adequate and free of material errors and omissions. Nokia will, if necessary, explain issueswhich may not be covered by the documentation.

Nokia's liability for any errors in the documentation is limited to the documentary correction oferrors. NOKIA WILL NOT BE RESPONSIBLE IN ANY EVENT FOR ERRORS IN THISDOCUMENTATION OR FOR ANY DAMAGES, INCIDENTAL OR CONSEQUENTIAL(INCLUDING MONETARY LOSSES), that might arise from the use of this documentation orthe information in it.

This documentation and the product it describes are considered protected by copyrightaccording to the applicable laws.

NOKIA logo is a registered trademark of Nokia Corporation.

Other product names mentioned in this documentation may be trademarks of their respectivecompanies, and they are mentioned for identification purposes only.

Copyright © Nokia Corporation 2002. All rights reserved.

Artuse is a registered trademark of Nokia Corporation.

2 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 3: CIMD-Protocol

Contents

Contents 3

List of tables 5

List of figures 7

Summary of changes 9

1 About this document 111.1 Scope 111.2 Audience 12

2 Overview 13

3 CIMD operations 153.1 SME types 153.2 Operations from the SME to the MC 163.3 Operations from the MC to the SME 163.4 Common operations 173.5 Operations supported by different types of SMEs and MCs 17

4 CIMD protocol messages 194.1 Message format 194.2 Message packet numbering 214.3 Checksum 224.4 Response messages 234.4.1 Positive response message 244.4.2 Negative response message 244.4.3 Nack message 244.4.4 General error response message 254.5 Operation codes 25

5 Operation details 275.1 Login (01) 275.2 Logout (02) 285.3 Submit message (03) 285.4 Enquire message status (04) 325.5 Delivery request (05) 335.6 Cancel message (06) 365.7 Deliver message (20) 375.8 Deliver status report (23) 385.9 Set (08) 395.10 Get (09) 405.11 Alive (40) 415.12 Additional operations 425.12.1 General error response (98) 425.12.2 Nack (99) 42

DN99255924 © Nokia Corporation 3 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 4: CIMD-Protocol

CIMD Interface Specification

6 Windowing for applications 456.1 Windowing scenarios 456.2 Restrictions 47

7 CIMD parameters 497.1 Parameter types 497.2 Parameters 517.3 Error codes 577.4 Status Error Code values 597.4.1 Status Error Code values for SMS Center connections 597.4.2 Status Error Code values for USSD Center connections 61

8 Character conversion for user data 638.1 Default character conversion 638.2 Extension character conversion 68

9 Example sessions 719.1 Example session for a send-only SME 719.2 Example session for querying SME 729.3 Example session for receiving SME 72

4 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 5: CIMD-Protocol

List of tables

Table 1. Operations from SME to MC 16

Table 2. Operations from MC to SME 17

Table 3. Common operations 17

Table 4. Operations supported by different types of SMEs and MCs 17

Table 5. Operation codes (SM request — MC response) 25

Table 6. Operation codes (SME response — MC request) 25

Table 7. Parameter symbols 27

Table 8. Login parameters 27

Table 9. Negative response parameters for login 28

Table 10. Negative response parameters for logout 28

Table 11. Submit parameters 29

Table 12. Positive response parameters for submit 30

Table 13. Negative response parameters for submit 30

Table 14. Enquire message status parameters 32

Table 15. Positive response parameters for enquire message status 32

Table 16. Negative response parameters for enquire message status 33

Table 17. Delivery request 34

Table 18. Positive response parameters for delivery request 34

Table 19. Negative response parameters for delivery request 34

Table 20. Cancel message parameters 36

Table 21. Negative response parameters for cancel message operation 37

Table 22. Deliver message parameters 37

Table 23. Negative response parameter for delivery message 38

Table 24. Deliver status report parameters 39

Table 25. Set parameters 39

Table 26. Negative response parameters for set 40

Table 27. Get parameters 40

Table 28. Positive response parameters for get 40

Table 29. Negative response parameters for get 41

DN99255924 © Nokia Corporation 5 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 6: CIMD-Protocol

CIMD Interface Specification

Table 30. Operation parameters 42

Table 31. Windowing scenario 1 46

Table 32. Windowing scenario 2 47

Table 33. Parameters 51

Table 34. Parameter error codes and error texts 57

Table 35. Status Error Code parameter for SMS Center connections 60

Table 36. Status Error Code parameter for USSD Center connections 61

Table 37. Default character conversion for user data 63

Table 38. Extension character conversion for user data 68

6 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 7: CIMD-Protocol

List of figures

Figure 1. CIMD protocol message format 19

Figure 2. Flow of delivery request operations 35

DN99255924 © Nokia Corporation 7 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 8: CIMD-Protocol

CIMD Interface Specification

8 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 9: CIMD-Protocol

Summary of changes

Changes between document issues are cumulative. Therefore, the latest documentissue contains all changes made to previous issues.

Date Issue Summary of changes

April 1999 1c-0 en Modifications concerning Y2K changes together withsome minor modifications have been made.

August 1999 1-0 en USSD Center related parameters and descriptionshave been added.

November 1999 1-1 en Made minor editorial changes.

March 2000 1-2 en Additions for UC2.

May 2000 2-0 en Document revised for release SC5B.

February 2001 3-0 en Updated for release SC5B CD1.

A new optional CIMD2 parameter, AlphanumericOriginating Address, added in the Submit Operation.

Two new error codes added:

• 321 – Incorrect alpha originator address usage

• 322 – Invalid data for alpha numeric originator

Also some USSD Center related parameters added.

May 2001 3a-0 en Minor errors, found in pilot phase, corrected.

July 2001 3b-0 en Minor corrections.

November 2001 4-0 en Updated for release SC5B CD2.

Chapter 6 Windowing for applications added.

Parameters 012 and 019 added.

Error codes 104, 105, 106, 107 and 108 added.

DN99255924 © Nokia Corporation 9 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 10: CIMD-Protocol

CIMD Interface Specification

January 2002 4a-0 en Minor error corrections.

October 2002 5-0 en Updated for release SC5B CD3 pilot phase.

Modified chapters:

5.3 Submit message (03), where a note concerningSubmit message responses in error situations hasbeen added.

5.7 Deliver message (20), where

- new parameter 069 'Service Center Address' hasbeen added

- information has been added that parameter 900'Error code' is supported as response to delivermessages.

7.4.1 Status Error Code values for SMS Centerconnections, where a new status error code (12) hasbeen added to Table 35.

7.2 Parameters, where

- the descriptions of parameters user data headerand user data binary have been updated

- the max lengths of parameters Subaddr, Windowsize and Status Report Request have beenupdated.

8 Character conversion for user data, where

- new subschapter 8.2 Extension characterconversion has been added with information onconversion of special characters

- the conversion for e and E with acute accent hasbeen corrected from e/E” to e/E'

- symbol of the apostrophe has been corrected

- symbols for 7, 8, 9 and colon have beencorrected.

- the coding of the Euro currency symbol has beenadded

December 2002 5a-0 en Updated for release SC5B CD3.

Modified chapter:

7.4.1 Status Error Code values for SMS Centerconnections, where new status error codes (112, 113,and 114) have been added to, and error code 12 hasbeen removed from Table 35.

Date Issue Summary of changes

10 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 11: CIMD-Protocol

About this document

Note

1 About this documentThis document describes the CIMD2 (Computer Interface to MessageDistribution) protocol, an interface that transfers messages between the shortmessage entity (SME) and the message centre (MC).

This Computer Interface to Message Distribution (CIMD) document applies toboth the Short Message Service Center (SMS Center) and the UnstructuredSupplementary Services Center (USSD Center) and contains thereforeparameters and descriptions related to them both.

1.1 Scope

The main chapters of this document are:

• Overview

Gives a short overview of the CIMD protocol.

• CIMD operations

Defines the operations between the SME and the MC.

• CIMD protocol messages

Describes the message format, message packet numbering, checksum,response messages and operation codes.

• Operation details

Specifies the parameters related to each operation.

• CIMD parameters

Describes the parameters, their maximum length in CIMD2 messages, theirtype, and their value range.

DN99255924 © Nokia Corporation 11 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 12: CIMD-Protocol

CIMD Interface Specification

• Character conversion for user data

Explains the default character conversion for user data, and shows theconversion of the extension table's special characters.

• Example sessions

Gives example sessions for send-only SME, querying SME and receivingSME.

1.2 Audience

This document is intended for operator personnel involved in daily operations ofthe Nokia Artuse™ Short Message Service Center (SMS Center) andUnstructured Supplementary Service Data Center (USSD Center); and forapplication developers.

12 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 13: CIMD-Protocol

Overview

2 OverviewA short message entity (SME), commonly referred to as an application, isinterconnected through the CIMD2 connection to a message centre (MC). TheCIMD2 protocol is currently supported by two different types of message centres:the Short Message Service Center (SMS Center), and the UnstructuredSupplementary Service Data Center (USSD Center). The main purpose of thisinterconnection is to transfer messages from the SMEs to the mobile stations(MS) and from the MSs to the SMEs. Other kind of information can also beconveyed over the interconnection, for example status reports from the GSM /GPRS network to the SMEs.

The system architecture discussed in this document thus consists of the SME andthe MC, and the purpose of this document is to specify the interface between thetwo.

When a message has been submitted to the SMS Center using the CIMD2, theSMS Center uses its own retry policy to attempt to deliver the message. If thedelivery fails, the message is stored in the SMS Center database until a deliveryattempt succeeds. If a permanent error occurs, or the validity period of themessage expires, the message is deleted.

When a message has been submitted to the USSD Center using CIMD2, theUSSD Center immediately transfers the data to the mobile station (MS). If thedelivery fails, the message is deleted and the status of the message is madeavailable to the SME.

The computer interface is suitable for client applications that send and retrievemessages. The interface supports TCP/IP sockets, X.25 PAD and serial ports(modems). However, some message centres only support parts of theconnectivity.

The user always identifies himself in a "login". A login ID does not have to beunique, but can be a commonly known name used in public services (like whenusing premium charge modem lines).

The CIMD2 operations are specified in Chapters 3 CIMD operations and 5Operation details. Each CIMD2 operation carries a number of parameters with it,that is, data items specifying the subscriber, some facts about the operation itself,and so on.

DN99255924 © Nokia Corporation 13 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 14: CIMD-Protocol

CIMD Interface Specification

Note

Section CIMD protocol messages introduces the question of how to communicatebetween the SME and the MC, that is, the coding of information related tooperations and parameters.

The parameters are specified in section CIMD parameters of this document.

In some cases the operator may want to restrict the use of some parameters. Theseare configured by the operator in the interface profiles.

In this document, the operations and the parameters specified for each operationrepresent the maximum amount of information the SME or the MC may provide.It is very important to notice that in most cases it is not reasonable for the SMEto send all the possible parameters.

14 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 15: CIMD-Protocol

CIMD operations

3 CIMD operationsThis section defines the operations between the SME and the MC. The parametersrelated to each operation are specified in Chapter 5 Operation details and thevalues of the parameters are specified in Chapter 7 CIMD parameters.

The operations are divided into operations originated by the SME, operationsoriginated by the MC, and operations that can be originated by both the SME andthe MC.

3.1 SME types

When defining the operations the different SMEs might use, three basic types ofSMEs can be distinguished:

1. Send-only SMEs.

2. Querying SMEs.

3. Receiving SMEs.

A send-only SME can only submit messages to the MC. The short messages aredestined to MSs or other SMEs. Status reports of sent messages must be requestedby the SME explicitly.

A querying SME does not receive anything from the MC automatically, butmerely queries if there is something to be retrieved. The application can retrievemessages coming from mobile stations, but only on demand. The SME istypically connected to the MC every now and then to submit a message and mayat the same time also check if there is something to be received. An example ofthis kind of SME is a PC application with a modem connection to the MC. Statusreports, if desired, must be requested by the SME explicitly. Note that, due to thenature of USSD, querying type of SMEs are not supported for USSD Centerconnections, as the USSD Center will not store messages nor status reports forlater retrieval by the SME.

A receiving SME is always ready to receive messages if the MC has somethingto send to it (that is, messages or status reports). A receiving SME canautomatically receive messages stored in the MC, when logging in to the MC.This allows fast two-way message exchange between the SME and MC.

DN99255924 © Nokia Corporation 15 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 16: CIMD-Protocol

CIMD Interface Specification

When connected to an SMS Center, the receiving type SMEs can also be set upin such a way that messages stored in the SMS Center are not sent automaticallywhen the SME logs in. In such a case, the SME receives new incoming messages,but it has to query for the old messages stored in the SMS Center. This is notsupported by the USSD Center due to the nature of USSD.

The type of the SME must be specified before the SME may operate. The type,along with other information about the SME, is stored in the MC.

3.2 Operations from the SME to the MC

Table 1 lists operations from the SME to the MC.

3.3 Operations from the MC to the SME

Table 2 lists operations from the SME to the MC.

Table 1. Operations from SME to MC

Operation Definition

Login This operation is used by all SMEs before any operations.

Logout This operation is used by all SMEs to indicate the end of thesession. The logout operation does not release the connection.Therefore, a disconnect must be explicitly performed after thelogout.

Submit This operation is used by the SME to send messages to MSsand/or other SMEs. In the submit operation, the SME can requesttransmission of status reports for the message.

Delivery request This operation is used by the SME to retrieve messages.

Cancel This operation is used by the SME to cancel messages it has sent.

Enquire messagestatus

This operation is used by the SME to request a status report for apreviously submitted message.

Set This operation is used by the SME to change the values of thoseinterface parameters that it is allowed to change.

Get This operation is used by the SME to inquire the values of theinterface parameters.

16 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 17: CIMD-Protocol

CIMD operations

3.4 Common operations

Table 3 lists common operations.

3.5 Operations supported by different types of SMEsand MCs

Table 4 lists operations supported by different types of SMEs and MCs.

Table 2. Operations from MC to SME

Operation Definition

Deliver message This operation is used by the MC for automatically delivering amessage to the SME.

Deliver statusreport

This operation is used by the MC to send a status report describingthe current status of a message sent by the SME.

Table 3. Common operations

Operation Definition

Alive This operation can be used by both entities to check whether thelink is alive.

Table 4. Operations supported by different types of SMEs and MCs

Message centre SMS Center USSD Center

SME type

Operation

Send-only Querying Receiving Send-only Receiving

Login + + + + +

Logout + + + + +

Submit + + + + +

Enquire message status + + + * *

Delivery request - + + - *

DN99255924 © Nokia Corporation 17 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 18: CIMD-Protocol

CIMD Interface Specification

+ supported- not supported* supported but not useful

Cancel + + + * *

Deliver message - + + - +

Deliver status report - - + - +

Set parameters + + + + +

Get parameters + + + + +

Alive + + + + +

Table 4. Operations supported by different types of SMEs and MCs

Message centre SMS Center USSD Center

18 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 19: CIMD-Protocol

CIMD protocol messages

Note

4 CIMD protocol messages

4.1 Message format

Each message, operation, or response consists of a header, data, and trailer part ofthe message, see Figure 1.

Figure 1. CIMD protocol message format

Any data transmitted between packets can be ignored. This data can originatefrom modems, terminal drivers and so on.

The coding of the message parts are explained in the following.

Header

The header has the following format:

<stx>ZZ:NNN<tab>

<STX>ZZ:NNN<TAB> ... PPP: Parameter value <TAB> ... CC<ETX>

HEADER PARAMETER LIST TRAILER

Begin of packet(Start of text)

Operationcode

Packetnumber Parameter

code

Delimiter

Checksum

End of packet(End of text)

DN99255924 © Nokia Corporation 19 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 20: CIMD-Protocol

CIMD Interface Specification

where <stx> is the start-of-text indicator, which consists of a single bytecontaining the decimal value 2.

The field ZZ defines the operation code and consists of two bytes containing theASCII characters of the digits 0 to 9, which range from 48 to 57.

The field NNN represents the message packet number, which consists of 3 bytescontaining the ASCII characters of the digits 0 to 9, which range from 48 to 57.

The ZZ and NNN fields are separated by one byte containing the ASCII code of acolon, which is 58. The header is terminated by one byte containing the ASCIIcode of <tab>, which is 9.

An example of the decimal values for each byte of a header is given below:

2 48 49 58 48 48 49 9

In the notation used in the rest of this document, the header looks as follows:

<stx>01:001<tab>

Data

The data fields consist of a list of parameters each terminated by the <tab>

character. Each parameter field has the following format:

PPP:value of the parm<tab>

where PPP indicates the parameter type and consists of 3 bytes containing theASCII values of the digits 0 to 9 (values 48 to 57). After the single byte containingthe ASCII value for the colon (58) the value of the parameter is coded with avariable number of bytes. The parameter is terminated by a single byte containingthe ASCII value for tab (9).

The coding of the parameter value is dependent on the type of the parameter andis explained in Chapter 7 CIMD parameters.

All parameters consist of the ASCII equivalents of digits or the characters of thealphabet. The parameter for the user data (033), however, can also consist of othercharacters, which will enable the use of all characters in the default GSMcharacter set. The reserved characters 0x00 (NUL) 0x02 (STX), 0x03 (ETX),0x09 (TAB) are not allowed in any parameter.

The parameters allowed in a packet depend on the operation and sometimes theuser profile. The order of parameters is free, and many parameters may beomitted.

Examples of the decimal values of the bytes for a few parameters are listed below,together with the notation used in this document.

20 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 21: CIMD-Protocol

CIMD protocol messages

Example 1. Password parameter (11)

48 49 49 58 83 101 51 114 83 116 9011:SeCrEt<tab>

Example 2. Userdata parameter (33)

48 51 51 58 104 105 32 116 104 101 114101 32 33 9033:hi there !<tab>

Trailer

The format of the trailer of a packet is as follows:

CC<etx>

where CC consists of two bytes containing the checksum of the packet, and <etx>is a single byte containing the end-of-text character, which has the value 3.

The use of the CC field is optional, in which case the trailer merely consists of thesingle <etx> byte.

An example of the decimal values of the bytes in a trailer is given below, togetherwith the notation used in this document.

Example 3. Decimal values of the bytes in a trailer

51 65 33A<etx>

All parts combined give the following typical message:

<stx>ZZ:NNN<tab>PPP:parameter1<tab>QQQ:parm2<tab><etx>

When real values for ZZ, NNN and so on are used, you get the message:

<stx>01:001<tab>010:wwwstat<tab>011:wwwstat<tab><etx>

or:

<stx>03:011<tab>021:123456789<tab>033:hi there<tab><etx>

4.2 Message packet numbering

All CIMD2 messages are assigned a packet number. This packet number is usedfor detecting duplicate packets or missing packets. The number is assignedaccording to the following rules:

DN99255924 © Nokia Corporation 21 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 22: CIMD-Protocol

CIMD Interface Specification

• Operations from the SME to the MC are assigned an odd packet number,starting from one. Subsequent packet numbers are incremented by two.After reaching 255, the number wraps back to one again. Using the codingdescribed before the three-character NNN field (see Example 3), themessage packet numbering for a list of SME-originated packets is asfollows: 001, 003, 005, ... 253, 255, 001, 003, ...

• Operations from the MC to the SME are assigned an even packet numberstarting from zero. Subsequent packet numbers are incremented by two.After reaching 254, the number wraps back to zero again. This means thatthe message packet numbering for MC-originated packets is as follows:000, 002, 004, ......,252 , 254, 000, 002, 004, ....

• All response messages are assigned the same packet number as the request.Thus, the responses from the SME to the MC have even numbers and theresponses from the MC to the SME have odd numbers.

4.3 Checksum

The checksum is an optional field, but when it is used you can calculate itaccording to the following procedure:

To calculate the checksum

1. At the beginning of the message, set the checksum to 0.

2. Retrieve the first byte of the message.

3. Add the value of the byte to the checksum.

4. Truncate the checksum so that it contains only the least significant byte.

5. If available, retrieve the next byte from the message and repeat step 3. Theprocess stops when the <etx> field is found 2 bytes further in the message.

Example 4. Checksum calculation using C language

int GetChecksum( char *pstx,char *petx )/***************************************************//* pstx points to the in the message *//* petx points to the in the message *//***************************************************/{int checksum = 0;char *p = pstx;

22 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 23: CIMD-Protocol

CIMD protocol messages

while (petx - p >= 2 ){checksum+= *p;checksum&= 0xFF;p++;}return( checksum );}

Example 4 shows that all characters from the first character to the last characterbefore the checksum characters are included in the sum. Thus, <stx> is the firstcharacter in the checksum calculation and the last <tab> before the checksum isthe last character. The checksum characters and the <ETX> are not included in thecalculation.

The following line indicates the characters included in the checksum calculation:

<stx>ZZ:NNN<TAB>PPP:value1<tab>QQQ:val2<tab>

The coding of the checksum value into the two bytes of field CC is done asfollows. The most significant 4 bits of the checksum are coded in the first byteand the least significant 4 bits are coded into the second byte of the checksumfield CC. The ASCII representation of the digits `0" to `9" and `A" to `F" are usedfor coding the hexadecimal value of the four bits into the message.

For example, if the checksum is 58 (decimal) which is 0x3A (hexadecimal), themost significant 4 bits give us the value 3, and the ASCII representation `3" hasthe value 51 (decimal) or 0x33 (hex). The second value gets the value `A" whichis 65.

The use of the checksum is optional for the SME. The MC will always include achecksum to the packets it sends to the SME.

4.4 Response messages

The interaction between an SME and the MC involves the sending of requestmessages, to which the other party responds with response messages. Dependingon the situation, the response message can be one of the following:

• Positive response message

• Negative response message

• Nack message

• General error response message.

DN99255924 © Nokia Corporation 23 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 24: CIMD-Protocol

CIMD Interface Specification

Note

4.4.1 Positive response message

After processing the request message, the SME or MC sends back a positiveresponse message. The operation code of the response packet is fixed to be 50more than the operation code of the request packet. The packet number is thesame as the request message.

A positive response message informs the initiator of the operation that the requestmessage was received correctly and the operation was performed successfully.

In some exceptional cases (for example, cancel message), the response messageassures only that the request message was received correctly and the operationwill be performed, but the result of the operation is not available.

4.4.2 Negative response message

If the request contains invalid parameters or cannot be performed, a negativeresponse message is sent back to the initiator of the operation. Positive andnegative responses have the same operation code and packet number, but thenegative response message has an error code and optionally an error textparameter. The usage of error texts is set in the interface profile.

A negative response message informs the initiator of the operation that the requestmessage was received correctly, but the operation could not be performedsuccessfully.

4.4.3 Nack message

A nack message is a special case that performs either of the following actions:

1. It can be used to trigger a retransmission of the request message in case thechecksum calculated by the receiver does not match the checksum found inthe packet.

2. It can be used to indicate that the packet number used is not the expectednumber. The packet number of the nack message always contains theexpected packet number.

The MC will never change the packet number because of the nack message. TheMC always assumes that the packet number confusion should be corrected by theSME.

24 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 25: CIMD-Protocol

CIMD protocol messages

4.4.4 General error response message

This response message is used if an unknown operation has been received by theMC. It indicates the correct reception of a request with a correct checksum andpacket number, but an illegal operation code (for example operation code 7).

4.5 Operation codes

All available operations are listed in the following tables, showing both therequest and the response operation code.

Table 5. Operation codes (SM request — MC response)

SM request → ← MC response

login response (01) login response (51)

logout response (02) logout response (52)

submit message response (03) submit message response (53)

enquire message status response (04) enquire message status response (54)

delivery request response (05) delivery request response (55)

cancel message response (06) cancel message response (56)

set message response (08) set response (58)

get message response (09) get response (59)

alive response (40) alive response (90)

general error response (98)

nack (99)

Table 6. Operation codes (SME response — MC request)

SME response→ ← MC request

deliver message (70) deliver message (20)

deliver status report (73) deliver status report (23)

alive (90) alive (40)

nack (99)

DN99255924 © Nokia Corporation 25 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 26: CIMD-Protocol

CIMD Interface Specification

26 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 27: CIMD-Protocol

Operation details

5 Operation detailsTable 7 lists the symbols used in this chapter. Some parameters are onlymeaningful if used when communicating with a certain type of MC, andtherefore, also MC dependencies are listed.

If no specific columns for SMS Center and USSD Center are given, the behaviouris the same for both MCs.

5.1 Login (01)

A login operation must always be done before any other operation. The MCselects the interface profile based on the user identity given in the login operation.

Table 7. Parameter symbols

Symbol Meaning

M Mandatory parameter

O Optional

X Not supported (operation fails unless special ignore instructions areconfigured on the CIMD2 server side)

- Ignored (can be used, but silently ignored)

Table 8. Login parameters

Number Login parameters Presence

010 User identity M

011 Password M

012 Subaddr O

019 Window size O

DN99255924 © Nokia Corporation 27 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 28: CIMD-Protocol

CIMD Interface Specification

Positive response for login contains no parameters.

Negative response may follow if the user is already logged in or the User identityor Password or Subaddr is incorrect. It can also follow if the window size exceedsallowed limits for login.

5.2 Logout (02)

The logout operation closes the session, but not the connection. This allows anSME connected via a modem to login again without having to re-establish themodem connection to the MC. In most cases, the SME can close the connectionwithout performing an explicit logout.

The logout operation does not need any parameters.

Positive response for logout contains no parameters.

5.3 Submit message (03)

Submit in its simplest mode just passes the message text and destination addressto the MC, which takes care of delivery. There are, however, also some specialfeatures that may be requested with the submit operation, for example firstdelivery time, or message to many recipients.

When the SME wants to submit a message, it builds the message text and placesit into the parameter user data in the submit operation. The text is sent with othernecessary parameters to the MC. The MC then sends the message to the MS oranother SME.

Table 9. Negative response parameters for login

Number Negative response parameters

900 Error code

901 Error text (optional)

Table 10. Negative response parameters for logout

Number Negative response parameters

900 Error code

901 Error text (optional)

28 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 29: CIMD-Protocol

Operation details

The submitted message can be identified afterwards by using a time stampgenerated by the MC (returned in a submit response) and the destination address.

Table 11. Submit parameters

Number Submit parameters: SMSCenterPresence

USSDCenterPresence

021 Destination address (multi) M M

023 Originating address O O

027 Alphanumeric originating address O X

030 Data coding scheme O O

032 User data header (bin) O O

033 User data * O O

034 User data binary * O O

041 Transport type X O

042 Message type X O

044 More Messages to Send O O

045 Operation Timer X O

046 Dialogue ID X O

047 USSD Phase X O

048 Service Code X O

050 Validity period relative ** O O

051 Validity period absolute ** O O

052 Protocol identifier O O

053 First delivery time relative *** O O

054 First delivery time absolute *** O O

055 Reply path O O

056 Status report request O O

058 Cancel enabled O O

064 Tariff class O O

065 Service description O O

067 Priority O O

DN99255924 © Nokia Corporation 29 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 30: CIMD-Protocol

CIMD Interface Specification

Note

* either user data (033) or user data binary (034) field** either relative or absolute validity period*** either integer or absolute first delivery time

For using the user data parameters (032, 033, and 034), refer to the parameterdescription in Chapter 7 CIMD parameters.

If an originating address is given in the submit message, it is regarded as a sub-address and it is appended to the end of the address that is set in the interfaceprofile.

* The destination address(es) is included only if the MC couldinterpret the address in the request correctly.

A submit to multiple destinations is responded to with a single submit responsemessage. This submit response contains an element, formed of a destinationaddress and a time stamp (positive response) or of a destination address and anerror code (negative response) for each destination address in the submit message.

Example 5. Submit operation to multiple destinations

Submit Request ---><STX>03:007<TAB>021:11111<TAB>021:22222<TAB>021:333<TAB>033:UserData<TAB><ETX><-- Submit Response<STX>53:007<TAB>021:11111<TAB>060:971107131212<TAB

Table 12. Positive response parameters for submit

Number Positive response parameters

021 Destination address

060 Service centre time stamp

Table 13. Negative response parameters for submit

Number Negative response parameters

021 Destination address *

900 Error code

901 Error text (optional)

30 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 31: CIMD-Protocol

Operation details

Note

>021:22222<TAB>060:971107131212<TAB>021:333<TAB>900:300<TAB><ETX>

As the CIMD interface allows the parameters to be in any order, note that thedecoding ends right after the first erroneous parameter is received. So theaddresses are returned only if the error occurs after the address parameters. Seeexamples below.

Example 6. Addresses are returned even if there is an erroneousparameter

In the following case, the 056 (that is, SR request) is wrongly set (too big value).Despite that, all addresses (021) are returned before an error code (900:310).

Submit:

03:005 021:123 021:12345 021:1234567890 033:hi there056:321

Submit response:

53:005 021:123 021:12345 021:1234567890 900:310 D6

Example 7. Addresses are not returned because of an erroneousparameter

In the following case, the 056 (that is, SR request) is wrongly set (too big value).Because the second address (021:456) comes after the erroneous parameter, it isnever decoded, thus it is not added to the response at all.

Submit:

03:007 021:123 033:hello 056:333 021:456

Submit response:

53:007 021:123 900:310 20

Likewise, if the erroneous parameter happens to be before the first address, noneof the addresses will be returned.

DN99255924 © Nokia Corporation 31 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 32: CIMD-Protocol

CIMD Interface Specification

5.4 Enquire message status (04)

This operation is used to request a status report for a previously submittedmessage.

An enquire message status operation can be performed independently of thestatus report request parameter used in the submit message operation. However,a returned status code usually indicates that the status is unknown, because theSMS Center will not keep track of statuses unless requested at submission timefor performance reasons.

No multiple enquiries are allowed in one enquire message status message packet,so SMEs have to request each status report separately.

Note that, because of the nature of USSD, a USSD Center connection will alwaysreturn a negative response packet.

The information in the enquire message status response is the same as in themessage status delivery.

Table 14. Enquire message status parameters

Number Enquire messagestatus parameters

Presence

021 Destination address M

060 Service centre time stamp M

Table 15. Positive response parameters for enquire message status

Number Negative response parameters

021 Destination address

060 Service centre time stamp

061 Status code

062 Status error code (optional)

063 Discharge time

32 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 33: CIMD-Protocol

Operation details

Example 8. Enquire message status

Enquire Message Status ---><STX>04:003<TAB>021:DestAddr<TAB>060:ServiceCentreTimeStamp<TAB>cs<ETX><--- Positive response<STX>54:003<TAB>021:DestAddr<TAB>060:ServiceCentreTimeStamp<TAB>061:StatusCode<TAB>063:DischargeTime<TAB>cs<ETX><--- Negative response<STX>54:003<TAB>900:ErrorCode<TAB>checksum<ETX>

5.5 Delivery request (05)

This operation is used by the client (SME) to retrieve a message sent to the client.The usage of this operation depends on the type of message centre and type ofSME.

This operation is not functional in USSD Center connections. For the messagecount request, it returns an error code; for the other modes it returns the basicpositive response packet without any following deliver message operation.

For the SMS Center, the usage depends on the SME type.

The querying type of SME must always poll for messages using this deliveryrequest operation.

For the receiving type of SME, this operation is optional as normally messagesare delivered immediately to the SME using the deliver message operation (020).This operation can still be useful for querying the count of messages waiting forthe SME.

This operation cannot be used by send-only applications.

If the response to the delivery request with mode 1 or 2 is positive, one or moredeliver short message operations will follow until all the messages are delivered.

Table 16. Negative response parameters for enquire message status

Number Negative response parameters

900 Error code

901 Error text (optional)

DN99255924 © Nokia Corporation 33 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 34: CIMD-Protocol

CIMD Interface Specification

Mode can have one of the following values (default value = 1):

• 0 - Number of messages waiting. The response contains the number ofmessages waiting to be retrieved, no actual messages are transferred afterthis request.

• 1 - Deliver one message. The oldest message is delivered.

• 2 - Deliver all messages (receiving SMEs only!). All messages aredelivered.

* Positive response contains the parameter only if the modeparameter in the request was used with value zero.

Table 17. Delivery request

Number Delivery request Presence

068 Mode O

Table 18. Positive response parameters for delivery request

Number Positive response parameters

066 Number of messages waiting*

Table 19. Negative response parameters for delivery request

Number Negative response parameters

900 Error code

901 Error text (optional)

34 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 35: CIMD-Protocol

Operation details

Figure 2. Flow of delivery request operations

Example 9. A querying application using the delivery request for retrievingmessages

Delivery Request -----><STX>05:007<TAB><ETX><--- Positive response<STX>55:007<TAB><chksum><ETX>

<----- Deliver message<STX>20:002<TAB>021:DestAddr<TAB>060:ServiceCentreTimeStamp<TAB>023:OrigAddr<TAB>033:Data<TAB><chksum><TX>

Deliver message response -----><STX>70:002<TAB><ETX>

Delivery Request -----><STX>05:009<TAB><ETX>

<--- Positive response<STX>55:009<TAB><chksum><ETX>

<----- Deliver message<STX>20:004<TAB>021:DestAddr<TAB>060:ServiceCentreTimeStamp<TAB>023:OrigAddr<TAB>033:Data<TAB><chksum><ETX>

DeliverRequest

DeliverRequest Rsp

DeliverMessage

DeliverMessage Rsp

DeliverRequest(Mode=1)

DeliverRequest Rsp

DeliverMessage

DeliverMessage Rsp

DeliverRequest(Mode=2)

DeliverRequest Rsp

DeliverMessage

DeliverMessage Rsp

DeliverMessage Rsp

DeliverMessage

SME MC

DN99255924 © Nokia Corporation 35 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 36: CIMD-Protocol

CIMD Interface Specification

Deliver message response -----><STX>70:004<TAB>chksum<ETX>

Example 10. A querying or receiving application asks for the number ofmessages waiting

Delivery Request (mode=0) ---><STX>05:011<TAB>068:0<TAB><ETX><--- Positive response<STX>55:011<TAB>066:26<TAB><chksum><ETX>

5.6 Cancel message (06)

This operation is used to cancel a message sent earlier by the subscriber. Theoperation is only useful when communicating with an SMS Center; the USSDCenter will accept, but ignore this operation.

It is possible to cancel more than one message with one operation.

If the message has already been delivered to its destination, it cannot be cancelled.

Cancelling may be disabled in the submit operation. Disabling is useful, forexample, in cases where there are such messages to a certain destination thatshould not be cancelled, but the cancellation is made according to the destinationaddress.

The mode parameter can have three different values:

• 0 - Cancel all messages with the same destination address. This is onlyvalid for MT messages.

• 1 - Cancel all sent messages. This is only valid for MT messages.

• 2 - Cancel a message where the destination address and the time stampmatch with a short message submitted earlier.

In mode 0, the destination address is mandatory. In mode 1, only the cancel modeparameter is needed, and in mode 2, all three parameters are mandatory.

Table 20. Cancel message parameters

Number Delivery request Presence

060 Service centre time stamp O

021 Destination address O

059 Cancel mode M

36 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 37: CIMD-Protocol

Operation details

Positive response for cancel message does not contain any parameters.

A cancel message response is positive even if the message cannot be cancelled.A positive response only means that the cancel request was received correctly bythe MC. Status reports can be used to find out about the actual success of thecancel message operation.

5.7 Deliver message (20)

This operation is used by the MC to deliver a message to an SME. Only receiving-type SMEs will get this message.

Table 21. Negative response parameters for cancel message operation

Number Negative response parameters

900 Error code

901 Error text (optional)

Table 22. Deliver message parameters

Number Deliver messageparameters:

SMSCenterPresence

USSDCenterPresence

021 Destination address M M

023 Originator address M M

060 Service centre time stamp M M

032 User data header * O O

033 User data * O O

034 User data binary * O O

052 Protocol identifier O O

030 Data coding scheme O O

041 Transport type X O

042 Message type X O

046 Dialogue ID X O

047 USSD Phase X O

048 Service Code X O

DN99255924 © Nokia Corporation 37 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 38: CIMD-Protocol

CIMD Interface Specification

The User data header parameter is present only if the message contains a user dataheader. Either the user data (033) or user data binary (034) is used, depending onthe value of the data coding scheme (030).

If the data coding scheme indicates that the data is using the default GSMcharacter set, the common user data parameter is used. For UCS2 or other binarydata, the user data binary (034) parameter is used.

Other optional parameters are normally present, unless suppressed via the userinterface profile.

Response for a deliver message does not need to contain any parameters, butparameter 900 (error code) is supported. If the parameter's value is > 0, this causesASE to retry message delivery after a certain time period. Value 0 means OK, andthe effect is the same as leaving out the parameter.

5.8 Deliver status report (23)

This operation is used by the MC to send a status report describing the deliverystatus of a previously submitted message. The generation of status reports for aparticular message is requested in the submit operation.

The delivery of status reports to the SME depends also on the type of SME.Querying SMEs, connecting to an SMS Center, always have to request thedelivery of a status report using the enquire message status operation (04).Receiving SMEs will receive the status report whenever it is available.

After a successful delivery of the status report, the status report will be removedfrom the MC if it describes the final status of the message.

026 Originated IMSI O X

028 Originated Visited MSC address O O

069 Service Center Address O X

Table 23. Negative response parameter for delivery message

Number Negative response parameters

900 Error code

Table 22. Deliver message parameters (Continued)

Number Deliver messageparameters:

SMSCenterPresence

USSDCenterPresence

38 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 39: CIMD-Protocol

Operation details

The information in the deliver status report message is the same as in the enquiremessage status response.

The optional Status Error code parameter in USSD Center connections isnormally present, unless suppressed via the server configuration.

Response for deliver status report does not contain any parameters.

Example 11. Deliver status report

<--- Deliver Status Report<STX>23:012<TAB>021:destAddr<TAB>060:scts<TAB>061:statusCode<TAB>063:dis_time<TAB><chksum><ETX>Response ---><STX>73:012<TAB><chksum><ETX>

5.9 Set (08)

This operation is used by the SME to change those parameters of the interfaceprofile that it is allowed to change.

At the moment, only the password can be changed by SMEs.

Table 24. Deliver status report parameters

Number Deliver status reportparameters:

SMSCenterPresence

USSDCenterPresence

021 Destination address M M

046 Dialogue ID X O

060 Service centre time stamp M M

061 Status code M M

062 Status Error code O O

063 Discharge time M M

Table 25. Set parameters

Number Set parameters

011 Password

DN99255924 © Nokia Corporation 39 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 40: CIMD-Protocol

CIMD Interface Specification

Positive response for set does not contain any parameters.

Example 12. Set

Set (password) ---><STX>08:011<TAB>011:myNewpasWord<TAB><chksum><ETX><--- Response<STX>58:011<TAB><chksum><ETX>

5.10 Get (09)

This operation is used by the SME to retrieve specific parameters from the MC.

In the get operation, the parameter 500 is used in all get operations and the valueof the parameter 500 is the number of the parameter (or information) the SME isrequesting.

Currently the only supported value for get parameters is 501, which returns thetime of the MC.

Positive response contains the value parameter (or information) requested and thereal value of that parameter.

Table 26. Negative response parameters for set

Number Negative response parameters

900 Error code

901 Error text (optional)

Table 27. Get parameters

Number Get parameters

011 Password

Table 28. Positive response parameters for get

Number Positive response parameters

501 Time of the MC

40 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 41: CIMD-Protocol

Operation details

Negative response will follow if the parameter value is not available.

Example 13. Get

Get (system time)---><STX>09:009<TAB>500:501<TAB><checksum><ETX><----- response<STX>59:009<TAB>501:990814154512<TAB><checksum><ETX>

5.11 Alive (40)

This operation can be used by both the SME and the MC to check whether the linkbetween the SME and the MC is still alive. The receiving entity sends anacknowledgement back to the originator if the alive operation is receivedcorrectly.

The alive operation does not need any parameters.

Positive response for alive does not contain any parameters.

Example 14. SME-originated Alive request

Alive request --------><STX>40:009<TAB><Chksum><ETX><------- response<STX>90:009<TAB><Chksum><ETX>

An example of an MC originated Alive request

<------ Alive request<STX>40:022<TAB><Chksum><ETX>

Response -------><STX>90:022<TAB><Chksum><ETX>

Table 29. Negative response parameters for get

Number Negative response parameters

900 Error code

901 Error text (optional)

DN99255924 © Nokia Corporation 41 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 42: CIMD-Protocol

CIMD Interface Specification

5.12 Additional operations

This section lists the additional response packages used in certain error situationsas described in the previous chapter.

5.12.1 General error response (98)

This operation is used by the MC to respond to illegal, unexpected, orunsupported operations sent by the SME.

Example 15. General error response

Request ----><STX>07:007<TAB><checksum><ETX><---- response<STX>98:007<TAB>900:ErrorCode<TAB><checksum><ETX>

5.12.2 Nack (99)

The nack operation is used to reject an operation due to an incorrect checksum oran incorrect sequence number. The nack operation causes retransmission of themessage. The packet sequence number in a nack message is always the expectedsequence number.

There are no operation parameters.

Example 16. Corrupted message retransmission

SME sends -------><STX>03:007<TAB>021:daddr<TAB>033:data<TAB>3A<ETX>MC Receives<STX>03:007<TAB>021:daddr<TAB>033:XXXX<TAB>3A<ETX>

<----- response with the nack<STX>99:007<TAB><checksum><ETX>

SME retransmits ------><STX>03:007<TAB>021:daddr<TAB>033:data<TAB>3A<ETX>

Table 30. Operation parameters

Number Operation parameters

900 Error code

901 Error text (optional)

42 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 43: CIMD-Protocol

Operation details

<------- MC response<STX>53:007<TAB>021:daddr<TAB>060:scts<TAB><CS><ETX>

Example 17. Wrong packet number

SME sends unexpected packet number --------><STX>03:001<TAB>021:daddr<TAB>033:Data<TAB><CS><ETX><------- MC responds with nack<STX>99:009<TAB><CS><ETX>

SME recovers ----><STX>03:009<TAB>021:daddr<TAB>033:Data<TAB><CS><ETX>

<------- MC responds<STX>53:009<TAB>021:daddr<TAB>060:60:scts<TAB><CS><ETX>

The MC expects a packet number 007, but the client sends something else. Afterthe Nack the client recovers and the normal operation continues.

DN99255924 © Nokia Corporation 43 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 44: CIMD-Protocol

CIMD Interface Specification

44 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 45: CIMD-Protocol

Windowing for applications

6 Windowing for applicationsThe windowing for applications feature enables the CIMD2 applications toinitiate more than one operation before receiving responses. The feature alsoactivates multiple SM and SR deliveries from the application server engine (ASE)to the application, which application can acknowledge preferably in the receivedorder.

This feature is reasonable to use, for example, when the application connects tothe ASE through a slow link. Then the application is able to speed up thetransactions by submitting more than one SM before waiting for submitresponses.

6.1 Windowing scenarios

In the following, some scenarios between the application and the ASE arepresented.

Submitting more than one SM from application

Suppose X is the window size allowed for the considered application. Theapplication is allowed to submit up to X SMs to the ASE before it waits for theresponses. The ASE ignores any SMs submitted with a sequence number outsidethe window range and a nack (negative acknowledge) is returned. So there is noretransmission of responses once windowing is enabled. This behaviour isenabled only when the application logs in with parameter 019. The application isforced to use the sequence numbers in strict increasing order.

If an application submits with a window size 3, and if 007 is the current sequencenumber for submit, the following scenario is possible, see Table 31.

DN99255924 © Nokia Corporation 45 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 46: CIMD-Protocol

CIMD Interface Specification

ASE delivers more than one SM/SR to application

If an application has logged in with a window size of X, and the ASE has acceptedit, the ASE is entitled to deliver up to X SMs or SRs to the application beforewaiting for the response from the application. This is valid only if the applicationis configured as auto deliver. If the delivery is not acknowledged during thedelivery timeout period, then the ASE retransmits the packet. The application canacknowledge the delivery packets it has received in any order, but the preferredway is to acknowledge them in the order they are received.

If the ASE is retrieving messages from the message router, then the ASE usesonly a window size of 1. The scenario can be explained with an application whichhas a window size of 3, see Table 32.

Table 31. Windowing scenario 1

ASE Direction Application

< — — — 007:<submit>

007:<submitresponse>

— — —>

< — — — 005:<submit>

— — — Ignore(NACK) — — —

< — — — 011:<submit>

— — — Ignore(NACK) — — —

< — — — 009:<submit>

< — — — 011:<submit>

< — — — 013:<submit>

009:<submitresponse>

— — —>

011:<submitresponse>

— — —>

013:<submitresponse>

— — —>

46 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 47: CIMD-Protocol

Windowing for applications

6.2 Restrictions

The CIMD2 windowing does not distinguish between different operationsinitiated by the application. This means that an application can have Xoutstanding operations (submit, message count request, cancel and so on) if it hasbeen granted a window size of X.

All the windowing features are enabled if the application logs with parameter019. If not, then submit and delivery behaviour is the same as in the previousversion of CIMD. But an application can use windowing only after it has receiveda login response from the ASE.

For polling applications, it is recommended not to use a window size higher than1. This is because more than one poll-request simultaneously for a short messagecan cause duplicate deliveries.

Table 32. Windowing scenario 2

ASE Direction Application

000:<SMdelivery>

— — —>

002:<SMdelivery>

— — —>

004:<SMdelivery>

— — —>

< — — — 000:<SM ack>

006:<SMdelivery>

— — —>

< — — — 002:<SM ack>

< — — — 006:<SM ack>

. . .

. . .

Time out for004 —retransmit

— — —>

004:<SMdelivery>

< — — — 004:<SM ack>

DN99255924 © Nokia Corporation 47 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 48: CIMD-Protocol

CIMD Interface Specification

48 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 49: CIMD-Protocol

CIMD parameters

7 CIMD parameters

7.1 Parameter types

The parameter type selects the allowed values of characters in the CIMD2messages.

Integer (int)

Integer is the most common type of parameter. The allowed values are the ASCIIrepresentation of the digits 0 to 9. This means that only decimal values from 48to 57 are allowed.

Example 18. Integer

064:3<tab>050:167<tab>030:0<tab>055:1<tab>056:63

Address (addr)

The Address parameter type is used for passing GSM addresses to and from theMC. This field can contain digits like the integer field, but also some extracharacters. What characters are actually accepted depends on the configuration ofthe address conversion done in the MC. The ASCII representations of thefollowing characters are currently allowed: '-', '+'. This means that besides thevalues 48 to 57 (digits 0 to 9) also the values 45 ('-') and 43 ('+') are allowed.

Example 19. Address

021:+35812345678<tab>023:13131

Hexadecimal (hex)

The Hexadecimal parameter type is used for passing binary data to and from theMC. This field can contain the ASCII representation of the digits 0 to 9 and theASCII representation of the characters 'A' to 'F' and 'a' to 'f'. This means that thefollowing decimal values are allowed: 48 to 57 (0 to 9); 65 to 70 ('A' to 'F') and97 to 102 ('a' to 'f') in the CIMD2 parameters of this type.

DN99255924 © Nokia Corporation 49 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 50: CIMD-Protocol

CIMD Interface Specification

Example 20. Sending six bytes of binary data

034:0500032a0301<tab>

User data (ud)

The User data parameter type is used to exchange user data between the MC andan SME. The SME can use most of the printable ASCII character set, and cancombine them to select the characters of the default GSM character set. The exactconfiguration of this conversion is selected by the user profile. The defaultcharacter conversion table 37 is shown in chapter 8.1 Default characterconversion.

The following example shows the first few characters of the default GSMcharacter set that can be entered using the default character conversion over an 8-bit wide link using a system with the ISO-Latin character set.

Example 21. Default character conversion over 8-bit wide link

033:@£$¥èéùìòÇ

which is from the iso latin1 character set.48,51,51,58,64,163,36,165,232,233,249,236,242,199

For a 7-bit link, only values under 128 can be used. Example 20 shows how toenter the same data as before (see previous example) from a system with adifferent character set.

Example 22. Default character conversion over 7-bit link

033:_a0_L-$_Y-_e`_e"_u`_i`_o`_C,

String (str)

The String parameter type is used to exchange general printable characters fromthe ASCII character table. Parameters of this type can have the decimal valuesfrom 32 (space) to 126 ('~').

Example 23. String

010:MyUserId<tab>011:my()<pass;+\wo%=rd<tab>

50 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 51: CIMD-Protocol

CIMD parameters

7.2 Parameters

The parameters marked with (*) are not usable when used over a USSD Centerconnection. The parameters marked with (#) are not usable when used over anSMS Center connection.

Table 33. Parameters

Name ID MaxLength

Type Values Description

User Identity 010 32 String - Identity used to login. Max. 32 characters.Leading or trailing spaces are not allowed.

Password 011 32 String - Password used to login. Max. 32characters. Leading or trailing spaces arenot allowed.

Subaddr 012 3 Integer 0 - 9 Defines a unique index for applicationinstance. This is useful for correct deliveryof SRs when multiple instances of thesame application are connected.

Window size 019 3 Integer 1 - 128 Defines the window size used by theapplication for submitting messages.

DestinationAddress

021 20 Address - Destination address in the GSM network.The prefix `+" indicates address type 145which means international address.

OriginatingAddress

023 20 Address - Originating address. This value isappended to the prefix in the ASEsubscriber database. The total length canbe 20 characters at the most.

OriginatingIMSI (*)

026 20 Address - Originating International MobileSubscriber Identity number.

AlphanumericOriginatingAddress

027 11 String - Originating address in alphanumericformat.

This parameter is a string of maximum 11chars, where each character byte canhave the following values:

32-126 inclusive, BUT NOT ALLOWED:36,64,93,95,96,125, that is, included are afew punctuation marks, space, a-z, A-Zand 0-9.

OriginatedVisited MSCaddress

028 20 Address - The ISDN number of the serving MSCnetwork element of the originatingsubscriber.

DN99255924 © Nokia Corporation 51 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 52: CIMD-Protocol

CIMD Interface Specification

Data CodingScheme

030 3 Integer 0 - 255 As defined in GSM 03.38.

User DataHeader

032 280 - 320 Hexa-decimal

- This is an optional part of the user data ofthe message transferred. The maximumlength of the header is 140 bytes.

The maximum length of the user dataheader is reduced by the length of userdata or user data binary.

140 bytes result in a coded length of 280characters. For the user data for an USSDCenter connection, the maximum size is160 bytes, giving a coded length of 320bytes.

User Data 033 480 - 546 UserData

- This parameter can be used to transfer theuser data of the short message using thedefault character set. Special 3-charactersequences can be used to select, forexample, some Greek characters. Themaximum length of the User Data in themessage itself can be 160 septets at themost. This corresponds to 140 octets orbytes.

For a USSD Center connection, thismaximum is 160 octets giving 182 septets.

User DataBinary

034 280-320 Hexa-decimal

- This field can be used to transfer the userdata of the short message. As it uses thesimple hexadecimal coding, any bit patterncan be sent to another SME. By selectingan appropriate value for the data codingscheme (030) binary data or UCS2 userdata can be transferred.

The maximum length of the user databinary is 140 bytes. This maximum lengthis reduced by the length of user dataheader.

Transport Type(#)

041 1 Integer 0 or 1 This field indicates what type of transportthe message uses:

0 - SMS

1 - USSD

Table 33. Parameters (Continued)

Name ID MaxLength

Type Values Description

52 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 53: CIMD-Protocol

CIMD parameters

Message Type(#)

042 1 Integer 1 - 6 This USSD Center-specific field definesthe type of USSD message:

1 - USSD Process Request

2 - USSD Request

3 - USSD Notify

4 - USSD Ack

5 - USSD Release

6 - USSD Process Request Ack

Moremessages tosend

044 1 Integer 0 or 1 This parameter indicates if there will bemore messages to the same destinationimmediately after this message. This willallow faster delivery of many messages tothe same destination. Values:

0 No subsequent messages

1 More messages will follow

OperationTimer (#)

045 3 Integer 0 - 600 This parameter controls the timeout for theUSSD dialogue. The value is in seconds;the value 0 indicates to use the default ofthe USSD Center.

Dialogue Id (#) 046 5 Integer -1 - 99999 USSD Center kernel's dialogue ID. Values:

-1 Value is not known and it is not includedin the CIMD packets.

USSD Phase(#)

047 2 Integer 0, 10 or 20 USSD Phase of the mobile station.Values:

0 - Unknown

10 - Phase 1

20 - Phase 2

Service Code(#)

048 3 Integer 0 - 255 USSD Service Code (from GSM 02.90).

Validity PeriodRelative (*)

050 3 Integer -1 - 255 The length of the validity period of themessage, counted from the time themessage is received by the MC. The valueis converted to a time period according tothe GSM 03.40 specification. Thisparameter can not be combined with theValidity Period Absolute (051).

Table 33. Parameters (Continued)

Name ID MaxLength

Type Values Description

DN99255924 © Nokia Corporation 53 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 54: CIMD-Protocol

CIMD Interface Specification

Validity PeriodAbsolute (*)

051 12 Integer - The absolute termination time of thevalidity period of the message; valueconsists of year, month, day, hour, minute,second in the format "yymmddhhmmss"This parameter can not be combined withthe validity period relative (050).

ProtocolIdentifier (*)

052 3 Integer 0 - 255 The Protocol Identifier (PID) can be usedto control GSM phase 2 features, such as"replace message". Setting the PID to 65(decimal) sets the message type to"Replace Message Type 1", adding 1..6gives the replace message types 2 to 7, asdefined in GSM 03.40.

This parameter can also select the routingto applications instead of GSM mobilestations, as defined in the MC routingtable.

First DeliveryTime Relative(*)

053 max. 3 Integer -1 - 255 This parameter selects the time periodwaited before the first delivery attempt ofthe message will be made. The value isconverted like the validity period relative.

First DeliveryTime Absolute(*)

054 12 Integer - Time for the first delivery attempt of themessage. Representation in format"yymmddhhmmss".

Reply Path (*) 055 1 Integer 0 or 1 This parameter selects whether the replypath feature is enabled (1) or not (0).

Table 33. Parameters (Continued)

Name ID MaxLength

Type Values Description

54 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 55: CIMD-Protocol

CIMD parameters

Status ReportRequest

056 3 Integer SeeDescription.

Defines in what cases the status reportshall be returned. Value of the parameteris the sum of the cases where automaticstatus report shall be produced. Forexample, value 62 means that statusreport is created for all events excepttemporary error.

Possible flags for SMS Centerconnections:

1 - temporary error

2 - validity period expired

4 - delivery failed

8 - delivery successful

16 - message cancelled

32 - message deleted by the operator

64 - first temporary result

Resulting in SRR values from 0 - 127.

Possible flags for USSD Centerconnections:

4 - delivery failed

8 - delivery successful

Resulting in the SRR values: 0,4,8,12.Setting other flags has currently no effect.

CancelEnabled (*)

058 1 Integer 0 or 1 This parameter selects whether thesubmitted message can later be cancelled(1) or not (0).

CancelMode(*)

059 1 Integer 0, 1 or 2 Cancel mode:

0 - Cancel all messages with the samedestination address.

1 - Cancel all sent messages.

2 - Cancel a message where thedestination address and the time stampmatch with a message submitted earlier.

ServiceCentre TimeStamp

060 12 Integer - Time of message arrival at the ServiceCentre.

In the SMS Center connection the formatis "yymmddhhmmss".

In USSD Center connections the format is"mmddhhmmsshh" - hundreds ofseconds are included instead of the years.

Table 33. Parameters (Continued)

Name ID MaxLength

Type Values Description

DN99255924 © Nokia Corporation 55 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 56: CIMD-Protocol

CIMD Interface Specification

Status Code 061 2 Integer SeeDescription.

Status of the message delivery. Passed tothe SME in the inquire message statusresponse and deliver status reportmessages.

Value as follows in SMS Centerconnections:

0 - no status available

1 - in process

2 - validity period expired

3 - delivery failed

4 - delivery successful

5 - no response

6 - last no response

7 - message cancelled

8 - message deleted

9 - message deleted by cancel

Value as follows in USSD Centerconnections:

3 - delivery failed

4 - delivery successful

Status ErrorCode

062 3 Integer 0 - 999 Detailed error code of the messagedelivery status. The values are listed inSection 7.4 Status Error Code values.

DischargeTime

063 12 Integer - Time of the last delivery attempt in format"yymmddhhmmss".

Tariff Class 064 2 Integer 0 - 99 Defines the tariff class of the message.

ServiceDescription

065 2 Integer 0 - 99 Defines the service description of themessage, which can be used for billing.

MessageCount (*)

066 3 Integer 0 - 999 Number of messages waiting to beretrieved.

Priority(*) 067 1 Integer 1 - 9 Priority of the message. Lower valuemeans higher priority.

DeliveryRequestMode(*)

068 1 Integer 0, 1 or 2 Selects the Mode in the Delivery Requestoperation

ServiceCenterAddress

069 20 Address - The ISDN number of an SMS Centerelement

Table 33. Parameters (Continued)

Name ID MaxLength

Type Values Description

56 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 57: CIMD-Protocol

CIMD parameters

7.3 Error codes

Table 34 lists the values of the parameter error code (900) together with the errortexts.

Get parameter 500 3 Integer 501 - 999 The value is the parameter number orinformation item that the SME wants toretrieve. Currently only the value 501 issupported.

MC Time 501 12 Integer - The local time of the MC in the format"yymmddhhmmss" for year, month, day,hours, minutes and seconds.

Error Code 900 3 Integer 0 - 999 The identifier of the error. The error codesare listed in 7.3 Error codes.

Error Text 901 64 String - Text describing the error. These merelyhelp so that the client applicationdeveloper does not have to look up thecoded error.

Table 33. Parameters (Continued)

Name ID MaxLength

Type Values Description

Table 34. Parameter error codes and error texts

Error code Error text

0 No error

1 Unexpected operation

2 Syntax error

3 Unsupported parameter error

4 Connection to MC lost

5 No response from MC

6 General system error

7 Cannot find information

8 Parameter formatting error

9 Requested operation failed

LOGIN error codes:

DN99255924 © Nokia Corporation 57 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 58: CIMD-Protocol

CIMD Interface Specification

100 Invalid login

101 Incorrect access type

102 Too many users with this login ID

103 Login refused by MC

104 Invalid window size

105 Windowing disabled

106 Virtual SMS Center-based barring

107 Invalid subaddr

108 Alias account, login refused

SUBMIT MESSAGE error codes:

300 Incorrect destination address

301 Incorrect number of destination addresses

302 Syntax error in user data parameter

303 Incorrect bin/head/normal user data parameter combination

304 Incorrect dcs parameter usage

305 Incorrect validity period parameters usage

306 Incorrect originator address usage

307 Incorrect PID parameter usage

308 Incorrect first delivery parameter usage

309 Incorrect reply path usage

310 Incorrect status report request parameter usage

311 Incorrect cancel enabled parameter usage

312 Incorrect priority parameter usage

313 Incorrect tariff class parameter usage

314 Incorrect service description parameter usage

315 Incorrect transport type parameter usage

316 Incorrect message type parameter usage

318 Incorrect MMs parameter usage

319 Incorrect operation timer parameter usage

320 Incorrect dialogue ID parameter usage

Table 34. Parameter error codes and error texts (Continued)

Error code Error text

58 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 59: CIMD-Protocol

CIMD parameters

7.4 Status Error Code values

7.4.1 Status Error Code values for SMS Center connections

Table 35 lists the values and meanings of the parameter Status Error Code (062)for SMS Center connections.

321 Incorrect alpha originator address usage

322 Invalid data for alpha numeric originator

ENQUIRE MESSAGE STATUS error codes:

400 Incorrect address parameter usage

401 Incorrect scts parameter usage

DELIVERY REQUEST error codes:

500 Incorrect scts parameter usage

501 Incorrect mode parameter usage

502 Incorrect parameter combination

CANCEL MESSAGE error codes:

600 Incorrect scts parameter usage

601 Incorrect address parameter usage

602 Incorrect mode parameter usage

603 Incorrect parameter combination

SET error codes:

800 Changing password failed

801 Changing password not allowed

GET error codes:

900 Unsupported item requested

Table 34. Parameter error codes and error texts (Continued)

Error code Error text

DN99255924 © Nokia Corporation 59 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 60: CIMD-Protocol

CIMD Interface Specification

Table 35. Status Error Code parameter for SMS Center connections

Value Meaning

0 No error

1 Unknown subscriber

9 Illegal subscriber

11 Teleservice not provisioned

13 Call barred

15 CUG reject

19 No SMS support in MS

20 Error in MS

21 Facility not supported

22 Memory capacity exceeded

29 Absent subscriber

30 MS busy for MT SMS

36 Network/Protocol failure

44 Illegal equipment

60 No paging response

61 GMSC congestion

63 HLR timeout

64 MSC/SGSN_timeout

70 SMRSE/TCP error

72 MT congestion

75 GPRS suspended

80 No paging response via MSC

81 IMSI detached

82 Roaming restriction

83 Deregistered in HLR for GSM

84 Purged for GSM

85 No paging response via SGSN

86 GPRS detached

87 Deregistered in HLR for GPRS

60 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 61: CIMD-Protocol

CIMD parameters

7.4.2 Status Error Code values for USSD Center connections

Table 36 lists the values and meaning of the parameter Status Error Code (062)for USSD Center connections.

88 The MS purged for GPRS

89 Unidentified subscriber via MSC

90 Unidentified subscriber via SGSN

112 Originator missing credit on prepaid account

113 Destination missing credit on prepaid account

114 Error in prepaid system

Table 35. Status Error Code parameter for SMS Center connections

Value Meaning

Table 36. Status Error Code parameter for USSD Center connections

Value Meaning

0 No error

750 Release, call barred

751 Release, system failure

752 Release, data missing

753 Release, unexpected data value

754 Release, absent subscriber

755 Release, illegal subscriber

756 Release, illegal equipment

757 Release, unknown alphabet

758 Release, USSD busy

759 Release, operation timer expired

760 Release, unexpected primitive

761 Release, wait timer expired

762 Release, data error

763 Release, too long USSD data

764 Release, unknown MS address

DN99255924 © Nokia Corporation 61 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 62: CIMD-Protocol

CIMD Interface Specification

765 Release, network congestion

766 Release, internal congestion

767 Release, no network connection

768 Release, USSD not supported

Table 36. Status Error Code parameter for USSD Center connections

Value Meaning

62 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 63: CIMD-Protocol

Character conversion for user data

8 Character conversion for user data

8.1 Default character conversion

Table 37 shows the default character conversion for user data.

The three columns on the left show the value, symbol, and name of the characterof the 7-bit default GSM character set as defined in the GSM 3.38.

The fourth column shows the possible character of the ISO-Latin character setand in brackets the decimal value. Computers using another character table canalso send the value from this column, even though it will look like a differentcharacter on their system. The fifth column shows the combination of ISO-Latincharacters which results in the intended GSM character. The characters used inthis column also match the corresponding characters of the common ASCII table.

Table 37. Default character conversion for user data

GSM character Iso-Latin Specialcombination

0 @ COMMERCIAL AT @ (64) _Oa

1 £ POUNDS STERLING _L-

2 $ DOLLAR SIGN $ (36)

3 ¥ YEN _Y-

4 è e WITH GRAVE ACCENT _e`

5 é e WITH ACUTE ACCENT _e'

6 ù u WITH GRAVE ACCENT _u`

7 ì i WITH GRAVE ACCENT _i`

8 ò o WITH GRAVE ACCENT _o`

9 Ç C WITH CEDILLA _C,

10 LINE FEED (10)

DN99255924 © Nokia Corporation 63 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 64: CIMD-Protocol

CIMD Interface Specification

11 Ø O WITH SLASH _O/

12 ø o WITH SLASH _o/

13 CARRIAGE RETURN (13)

14 Å A WITH RING ] (93) _A*

15 å a WITH RING } (125) _a*

16 D GREEK ALPHABET DELTA _gd

17 _ UNDERSCORE _--

18 F GREEK ALPHABET PHI _gf

19 G GREEK ALPHABET GAMMA _gg

20 L GREEK ALPHABET LAMBDA _gl

21 W GREEK ALPHABET OMEGA _go

22 P GREEK ALPHABET PI _gp

23 Y GREEK ALPHABET PSI _gi

24 S GREEK ALPHABET SIGMA _gs

25 Q GREEK ALPHABET THETA _gt

26 X GREEK ALPHABET XI _gx

27 RESERVED _XX

28 Æ AE DIPHTHONG _AE

29 æ ae DIPHTHONG _ae

30 ß GERMAN DOUBLE-S _ss

31 É E WITH ACUTE ACCENT _E'

32 SPACE (32)

33 ! EXCLAMATION MARK ! (33)

34 " QUOTATION MARK " (34) _qq

35 # NUMBER SIGN # (35)

36 ¤ CURRENCY SYMBOL _ox

37 % PERCENT SIGN % (37)

38 & AMPERSAND & (38)

39 ' APOSTROPHE ' (39)

Table 37. Default character conversion for user data (Continued)

GSM character Iso-Latin Specialcombination

64 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 65: CIMD-Protocol

Character conversion for user data

40 ( LEFT PARENTHESIS ( (40)

41 ) RIGHT PARENTHESIS ) (41)

42 * ASTERISK * (42)

43 + PLUS SIGN + (43)

44 , COMMA , (44)

45 - HYPHEN - (45)

46 . FULL STOP (PERIOD) . (46)

47 / SOLIDUS (SLASH) / (47)

48 0 DIGIT ZERO 0 (48)

49 1 DIGIT ONE 1 (49)

50 2 DIGIT TWO 2 (50)

51 3 DIGIT THREE 3 (51)

52 4 DIGIT FOUR 4 (52)

53 5 DIGIT FIVE 5 (53)

54 6 DIGIT SIX 6 (54)

55 7 DIGIT SEVEN 7 (55)

56 8 DIGIT EIGHT 8 (56)

57 9 DIGIT NINE 9 (57)

58 : COLON : (58)

59 ; SEMICOLON ; (59)

60 < LESS-THAN SIGN < (60)

61 = EQUALS SIGN = (61)

62 > GREATER-THAN SIGN > (62)

63 ? QUESTION MARK ? (63)

64 ¡ INVERTED ! _!!

65 A CAPITAL LETTER A A (65)

66 B CAPITAL LETTER B B (66)

67 C CAPITAL LETTER C C (67)

68 D CAPITAL LETTER D D (68)

Table 37. Default character conversion for user data (Continued)

GSM character Iso-Latin Specialcombination

DN99255924 © Nokia Corporation 65 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 66: CIMD-Protocol

CIMD Interface Specification

69 E CAPITAL LETTER E E (69)

70 F CAPITAL LETTER F F (70)

71 G CAPITAL LETTER G G (71)

72 H CAPITAL LETTER H H (72)

73 I CAPITAL LETTER I I (73)

74 J CAPITAL LETTER J J (74)

75 K CAPITAL LETTER K K (75)

76 L CAPITAL LETTER L L (76)

77 M CAPITAL LETTER M M (77)

78 N CAPITAL LETTER N N (78)

79 O CAPITAL LETTER O O (79)

80 P CAPITAL LETTER P P (80)

81 Q CAPITAL LETTER Q Q (81)

82 R CAPITAL LETTER R R (82)

83 S CAPITAL LETTER S S (83)

84 T CAPITAL LETTER T T (84)

85 U CAPITAL LETTER U U (85)

86 V CAPITAL LETTER V V (86)

87 W CAPITAL LETTER W W (87)

88 X CAPITAL LETTER X X (88)

89 Y CAPITAL LETTER Y Y (89)

90 Z CAPITAL LETTER Z Z (90)

91 Ä A WITH DIERESIS [ (91) _A"

92 Ö O WITH DIERESIS \ (92) _O"

93 Ñ N WITH TILDE _N~

94 Ü U WITH DIERESIS ^ (94) _U"

95 § SECTION MARK _so

96 ¿ INVERTED ? _??

97 a SMALL LETTER a a (97)

Table 37. Default character conversion for user data (Continued)

GSM character Iso-Latin Specialcombination

66 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 67: CIMD-Protocol

Character conversion for user data

98 b SMALL LETTER b b (98)

99 c SMALL LETTER c c (99)

100 d SMALL LETTER d d (100)

101 e SMALL LETTER e e (101)

102 f SMALL LETTER f f (102)

103 g SMALL LETTER g g (103)

104 h SMALL LETTER h h (104)

105 i SMALL LETTER i I (105)

106 j SMALL LETTER j j (106)

107 k SMALL LETTER k k (107)

108 l SMALL LETTER l l (108)

109 m SMALL LETTER m m (109)

110 n SMALL LETTER n n (110)

111 o SMALL LETTER o o (111)

112 p SMALL LETTER p p (112)

113 q SMALL LETTER q q (113)

114 r SMALL LETTER r r (114)

115 s SMALL LETTER s s (115)

116 t SMALL LETTER t t (116)

117 u SMALL LETTER u u (117)

118 v SMALL LETTER v v (118)

119 w SMALL LETTER w w (119)

120 x SMALL LETTER x x (120)

121 y SMALL LETTER y y (121)

122 z SMALL LETTER z z (122)

123 ä a WITH DIERESIS { (123) _a"

124 ö o WITH DIERESIS | (124) _o"

Table 37. Default character conversion for user data (Continued)

GSM character Iso-Latin Specialcombination

DN99255924 © Nokia Corporation 67 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 68: CIMD-Protocol

CIMD Interface Specification

8.2 Extension character conversion

Table 38 shows how the characters of the extension table defined in ETSIspecification GSM 3.38 are converted in short message user data.

In the CIMD user data parameter, the special combination character _XX (namedReserved) is reserved as an escape to an extension of the GSM 7-bit defaultalphabet table. If a receiving mobile station does not understand the meaning ofthis escape mechanism, it should display it as a space character.

When defining the CIMD Reserved escape character (i.e. _XX) and the secondCIMD character, type them immediately after each other (no space betweenthem) in the CIMD user data parameter.

125 ñ n WITH TILDE _n~

126 ü u WITH DIERESIS ~ (126) _u"

127 à a WITH GRAVE ACCENT _a`

Table 37. Default character conversion for user data (Continued)

GSM character Iso-Latin Specialcombination

Table 38. Extension character conversion for user data

SymbolCharacter name

CIMD specialcombination

Combination's name

| Vertical bar _XX_!! Reserved, Inverted !

^ Caret _XX_gl Reserved, GreekAlphabet Lambda

€ Euro symbol * _XXe Reserved, Small Letter e

{ Opening brace _XX( Reserved, LeftParenthesis

} Closing brace

_XX)

Reserved, rightParenthesis

Page break

_XXascii(10)

Reserved, Line Feedascii(10)

[ Opening bracket

_XX<

Reserved, Less ThanSign

68 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue5a-0en

Page 69: CIMD-Protocol

Character conversion for user data

*The euro symbol is defined in the 7-bit default alphabet extension table in theETSI specification GSM 3.38. The code value is the one used for character ‘e’ inthe 7-bit default GSM character set. Therefore a receiving entity which isincapable of displaying the euro currency symbol will display the character ‘e’instead.

The euro symbol is displayed correctly only on mobile terminals that support it.

] Closing bracket

_XX>

Reserved, Greater ThanSign

~ Tilde

_XX=

Reserved, Equals Sign

\ Backslash

_XX/

Reserved, Slash

Table 38. Extension character conversion for user data (Continued)

SymbolCharacter name

CIMD specialcombination

Combination's name

DN99255924 © Nokia Corporation 69 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 70: CIMD-Protocol

CIMD Interface Specification

70 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 71: CIMD-Protocol

Example sessions

Note

9 Example sessions

9.1 Example session for a send-only SME

The example session given here contains the operations login, submit message,and logout.

In the submit operation example, only parameters destination address,validity period and user data are given by the SME. Note also thatpackets are split at special characters like <TAB> for printing purposes only.

SME <--> SMSCConnect <-->Greeting <--Login --><STX>01:001<TAB>010:MyUserId<TAB>011:MySecretPassWOrD<TAB><CS><ETX>Login response <--<STX>51:001<TAB><CS><ETX>

Submit --><STX>03:003<TAB>021:1234567890<TAB>050:167<TAB>033:Hithere !<TAB> <CS><ETX>

Submit response (positive) <--<STX>53:003<TAB>021:1234567890<TAB>060:971111131245<TAB><CS><ETX>

Submit --><STX>03:005<TAB>050:167<TAB>033:Hithere ! How are you doing ?<TAB><CS><ETX>

Submit response (negative) //destination was missing!! <--<STX>53:005<TAB>900:301<TAB><CS><ETX>

Enquiry message status--><STX>04:007<TAB> 060:971111131245<TAB>021:1234567890<TAB><CS><ETX>

Enquiry message status response <--<STX>54:007<TAB>021:1234567890<TAB>060:971111131245<TAB>061:0<TAB->063:971111131245<TAB><CS><ETX>

DN99255924 © Nokia Corporation 71 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 72: CIMD-Protocol

CIMD Interface Specification

Disconnect <-->

9.2 Example session for querying SME

SME <--> SMSCConnect <-->Greeting <--Login --><STX>01:001<TAB>010:MyUserId<TAB>011:MySecretPassWOrD<TAB><CS><ETX>Login response <--<STX>51:001<TAB><CS><ETX>

Submit --><STX>03:003<TAB>021:1234567890<TAB>050:167<TAB>033:Hithere !<TAB><CS><ETX>

Submit response (positive) <--<STX>53:003<TAB>021:1234567890<TAB>060:971111131245<TAB><CS><ETX>

Delivery Request Message --><STX>05:005<TAB>068:1<TAB><CS><ETX>

Delivery Request Response (positive) <--<STX>55:005<TAB><CS><ETX>

Deliver Message <--<STX>20:000<TAB>021:1234567890<TAB>023:987654321<TAB>060:971111121245 033:Callme.<TAB><CS><ETX>

Deliver Message Response --><STX>70:000<TAB><CS><ETX>

Disconnect <-->

9.3 Example session for receiving SME

SME <-->MCConnect <-->Greeting <--Login --><STX>01:001<TAB>010:MyUserId<TAB>011:MySecretPassWOrD<TAB><CS><ETX>Login response <--<STX>51:001<TAB><CS><ETX>

Submit --><STX>03:003<TAB>021:1234567890<TAB>050:167<TAB>033:Hithere!<TAB><CS><ETX>

Deliver Message //delivery before submit responsereceived <--<STX>20:000<TAB>021:9876<TAB>023:1234567890<TAB>060:971111080045<TAB->033:Callme!<TAB>052:0<TAB>030:0<TAB><CS><ETX>

Deliver Message Response --><STX>70:000<TAB><CS><ETX>

Submit response (positive) <--<STX>53:003<TAB>021:1234567890<TAB>060:971111131245<TAB><CS><ETX>

72 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en

Page 73: CIMD-Protocol

Example sessions

Deliver Message <--<STX>20:002<TAB>021:98765<TAB>023:1234567890<TAB>060:971111121245<TAB>033:Whydont you call me<TAB>052:0 030:0<TAB><CS><ETX>

Deliver Message Response --><STX>70:002<TAB><CS><ETX>

Deliver StatusReport <--<STX>23:005<TAB>021:1234567890<TAB>060:971111131245<TAB>061:3<TAB>063:971111131354<TAB><CS><ETX>

Deliver StatusReport Response --><STX>73:005<TAB><CS><ETX>

Disconnect <-->

DN99255924 © Nokia Corporation 73 (74)Issue 5a-0 en Nokia Proprietary and Confidential

Page 74: CIMD-Protocol

CIMD Interface Specification

74 (74) © Nokia Corporation DN99255924Nokia Proprietary and Confidential Issue 5a-0en