You are on page 1of 29

SMS PDU-mode

SMS with the SMS


PDU-mode

: ()
E-Mail: shuixin13@163.com
: 2004-10-18

()

1 29

SMS PDU-mode

SMS with the SMS PDU-mode ...................................................................................................... 1


................................................................................................................................. 3
...................................................................................................................... 4
1 ............................................................................................................................... 5
2............................................................................................................................ 6
3 ........................................................................................................................ 7
3.1
(+CSCA) ...................................................................................... 7
3.2
(+CSMS)...................................................................................... 7
3.3
(+CMGF)...................................................................................... 8
4SMS ................................................................................................................ 9
5SMS PDU ............................................................................................................... 9
5.1 SMS-Submit (Mobile Originated) ................................................................... 9
5.1.1 SIM SMS (+CMGW) ................................................ 10
5.1.2 SIM SMS (+CMSS)............................................... 10
5.1.3 SMS (+CMGS) ..........................................................11
5.2 SMS-DELIVER (Mobile Terminated)........................................................... 12
5.2.1 (+CMGL) ................................................................................... 12
5.2.2 (+CMGR)................................................................................... 12
5.2.3 (+CMGD) .................................................................................. 13
6SMS PDU .............................................................................................. 13
6.1 PDU SMS-SUBMIT-PDU (Mobile Originated)....................................... 14
6.2 PDU SMS-DELIVER-PDU (Mobile Terminated) ................................... 14
6.3 SCA .............................................................................. 15
6.4 PDU Type............................................................................... 16
6.5 MR (Message Reference)......................................................................... 17
6.6 DA/OA .......................................................................... 17
6.7 PID (Protocol-Identifier).......................................................................... 18
6.8 DCS (DataCoding-Scheme) .............................................................. 18
6.9 VP Validity Period ......................................................................... 19
6.10 SCTS Service Center TimeStamp............................................ 20
6.11 UDL (User-Data-Length (Amount of Characters)).............................. 20
7 AT .............................................................................................................. 20
8PDU .............................................................................................................. 21
8.1 .............................................................................................................. 21
8.2 .............................................................................................................. 22
8.3 PDU SMS ..................................................................................................... 22
9SMS ............................................................................................ 25
...................................................................................................................................... 27
Message service error.................................................................................................... 27
error codes:.................................................................................................................. 27
............................................................................................................. 29

()

2 29

SMS PDU-mode

QQ Delphi SMS
-_-|||
2003-08 SMS

2003-07-081566
16 2230

:)
E-Mail
:-)
Mail

8-20
23 25

2004-10-19 0:56:40

()

3 29

SMS PDU-mode

2003-08-20

2004-10-18

6.6 DA/OA
AT
8PDU

()

4 29

SMS PDU-mode

1
SMS GSM (MS)(SME)(SC)
SC MS SME
SMS SMS
SMC
SMC

SM MT
SM MO
SM MT SM MO 140 160
70
AT SMS PDU
GSM 03.04
GSM 03.38
GSM 03.41
GSM 07.05
GSM 07.07

()

5 29

SMS PDU-mode

MS

Mobile-Station

SME

Short-Message-Entity

SMSC

Short Message Service Center

PDUs

Protocol Data Units

SME

PDU Type
MR

Protocol Data Unit Type


Message Reference

OA
DA

Originator Adress
Destination Adress

PID
DCS

Protocol Identifier
Data Coding Scheme

SCTS
VP

Service Center Time Stamp


Validity Period

UDL
UD
RP

User Data Length


User Data
Reply Path

UDHI
SRI

User Data Header Indicator


Status Report Indication

SRR
VPF

Status Report Request


Validity Period Format

MMS
RD

More Messages to Send


Reject Duplicate

MTI
ME

Message Type Indicator


Mobile Equipment

TE
SIM

Terminal Equipment
Subscriber Identity Modul

SC
SCA

Service-Center
Service Center Address

SM MT
SM MO

Short Message Mobile Terminated Point-to-Point


Short Message Mobile Originaed Point-to-Point

()

6 29

SMS PDU-mode

3
3.1

(+CSCA)

(SC) SME MS MS SMS-MO


SMS MS SMSCSCA
AT+CSCA? SIM
AT AT+CSCA=<SCA>[,<TOSCA>]

AT+CSCA?

<CR>

(SCA) SIM

<CR>

(SCA) SIM

+CSCA:
OK

<SCA>

AT+CSCA=<SCA>

<SCA>
<TOSCA>

AT+CSCA=+8613800250500
AT+CSCA=+13800250500

<CR>
<CR>

(SCA)
(SCA)

+

SC SMS SMS SIM SC SMS

3.2

(+CSMS)

AT+CSMS?

<CR>

ME

AT+CSMS=?

<CR>

()

7 29

SMS PDU-mode

AT+CSMS=<SERVICE>

+ CSMS:
OK

<CR>

<SERVICE>,<MT>,<MO>,<BM>

<SERVICE>

<MT>
<MO>

<BM>

AT+CSMS?

<CR>

ME

+ CSMS:
OK

0,1,1,1

AT+CSMS=1

+ CSMS:
OK

<CR>

0,1,1,1

<SERVICE>

0
1

SMS AT GSM Phase 2


SMS AT GSM Phase 2+

2...127
128

0
1

<MT>,<MO>,<BM>

3.3

(+CMGF)

AT+CMGF?

<CR>

()

SMS

8 29

SMS PDU-mode

AT+CMGF =?

<CR>

SMS

AT+CMGF=<MODE>

<CR>

SMS

OK

<MODE>
0

PDU

Text

AT+CMGF?

<CR>

SMS

+ CMGF: 0
OK

SMS

AT+CMGF=1

<CR>

SMS Text

4SMS

5SMS PDU
SMS
IA5
AT AT+CMGF=0 SMS PDU

5.1 SMS-Submit (Mobile Originated)


SMS-SUBMIT GSM-Molbile SMS

()

9 29

SMS PDU-mode

5.1.1 SIM SMS

(+CMGW)

AT+CMGW SIM

AT+CMGW=<LENGTH>[,<STAT>] <CR>
> <PDU>
<CTRL-Z>/<ESC>
*)
**)

+CMGW: <INDEX>
OK

<PDU>

TP ()

PDU 0
REC UNREAD
PDU

<INDEX>

<LENGTH>
<STAT>

<STAT>

0 REC UNREAD
1 REC READ

2 STO UNSENT
3 STO SENT

4 ALL

+CMGL

*) >
**) <CTRL>+<Z><ESC>/

5.1.2 SIM SMS (+CMSS)


AT AT+CMSS=<INDEX>[,<DA>[,<TODA>]] SIM <INDEX>
SMS-SUBMIT<DA>

<MR>TE+CSMS<SERVICE>
1<SCTS>

()

10 29

SMS PDU-mode

AT+CMSS=<INDEX>

<CR>

+CMSS: <MR>[,<SCTS>]
OK

<INDEX>

SIM

<MR>
<SCTS>

AT+CMSS=1

<CR>

SIM 1

+CMSS: 255
OK

SMS 255

5.1.3 SMS

(+CMGS)

SMS-SUBMIT SIM
SMS
<MR>TE+CSMS<SERVICE>
1<SCTS>

AT+CMGS=<LENGTH>

<CR>

> <PDU>
*)

<CTRL-Z>/<ESC>
**)

SMS SMS
PDU

SMS
SIM

+CMGS: <MR>[,<SCTS>]
OK

<LENGTH>

TP (
)

<PDU>
<MR>

PDU

<SCTS>

()

11 29

SMS PDU-mode

*) >
**) <CTRL>+<Z><ESC>/

5.2 SMS-DELIVER (Mobile Terminated)


SMS-DELIVER SMS

5.2.1 (+CMGL)

AT+CMGL=<INDEX>

<CR>

SMS

<CR>

<stat>

+CMGL: <index><stat>[,<alpha>],<length>
<pdu>
[+CMGL: <index><stat>[,<alpha>],<length>
<pdu>
[...]
]
AT+CMGL=?

<STAT>

PDU 0
REC UNREAD

0 REC UNREAD

1 REC READ
2 STO UNSENT

3 STO SENT
4 ALL

5.2.2 (+CMGR)

AT+CMGR=<INDEX>

<CR>

()

SMS
12 29

SMS PDU-mode

+CMGR: <STAT>[,<ALPHA>],<LENGTH>
<PDU>
OK

<STAT>

PDU 0
REC UNREAD

0 REC UNREAD

<ALPHA>
<LENGTH>
<PDU>

1 REC READ

2 STO UNSENT

3 STO SENT
SIM <OA>
TP ()
PDU

DELIVER-SMS PDU PDU

(SIM) SMS

5.2.3 (+CMGD)

AT+CMGD=<INDEX>

<CR>

SIM <INDEX> SMS

OK

6SMS PDU
SMS-SUBMIT SMS-DELIVER

SCA
PDU-Type

Service Center Adress


Protocol Data Unit Type

1-12
1

MR
OA

Message Reference
Originator Adress

1
2-12

SMS-SUBMIT (0..255)
SME

DA
PID

Destination Adress
Protocol Identifier

2-12
1

SME
SMSC SM (

()

13 29

SMS PDU-mode

DCS

Data Coding Scheme

FAX,Voice )
(UD)

SCTS
VP

Service Center Time Stamp


Validity Period

7
0,1,7

SMSC
SMSC

UDL
UD

User Data Length


User Data

1
0-140

SM

6.1 PDU SMS-SUBMIT-PDU (Mobile Originated)


SCA
1-12

PDUType
1

MR
1

DA
2-12

PID
1

DCS
1

VP
0,1,7

UDL
1

UD
0-140

13851724908SMSTest
0031000D91683158714209F80000A704D4F29C0E
13851724908SMS
0031000B813158714209F80008A7046D4B8BD5
SCA
1-12

PDUType
1

MR
1

DA
2-12

PID
1

DCS
1

VP
0,1,7

UDL
1

UD
0-140

00
00

31
31

00
00

0D91683158714209F8
0B813158714209F8

00
00

00
18

A7
A7

04
04

D4F29C0E
6D4B8BD5

6.2 PDU SMS-DELIVER-PDU (Mobile Terminated)


SCA

PDUType

OA

PID

DCS

SCTS

UDL

UD

1-12

2-12

0-140

13851724908SMSTest
0891683108200505F0240D91683158714209F800004001528035350004D4F29C0E
13851724908SMS
0891683108200505F0240D91683158714209F8000840015280452400046D4B8BD5
SCA
PDUType
OA
PID DCS
SCTS
UDL
UD
1-12
1
2-12
1
1
7
1
0-140
0891683108200505F0
24
0D91683158714209F8 00
00 40015280353500 04 D4F29C0E
0891683108200505F0

()

24

0D91683158714209F8 00

08

40015280452400

04

6D4B8BD5

14 29

SMS PDU-mode

6.3 SCA

SCA 1-12
0891683108200505F0
1 Octet
Len
SCA

0-1 Octet
Type
SCA

0-10 Octets
Addr
SCA

08
91
683108200505F0
Len91+68 31 08 20 05 05 F0 Len
00&h SIM SCA SMS-PUD
AT+CSCA=xxxxx SIM SCA
Type81&h 91&h
91&h TON/NPI International/E.164 +
91&h
91 &h = 1001 0001 &b
Bit No.

7 6 5 4 3 2 1 0

1
71
Type of Number
000 001 + 010 111
Numbering plan identification
0000 0001 ISDN/(E.164/E.163)1111
Add ISDN

PDU

+8613800250500

08 91 86 31 08 20 05 05 F0

13800512500
123456

07 81 31 08 50 21 05 F0
04 81 21 43 65

AT+CMGW AT+CMGS <length> PDUType PDU


SCA

AT+CMGS=19<cr>

AT+CMGS=19<cr><cr><lf>>

0891863108200505F031000D91683158714209F80000A704D4F29C0E<ctrl+z>

0891863108200505F031000D91683158714209F80000A704D4F29C0E<ctrl+z><cr><lf>+CMGS:
()

15 29

SMS PDU-mode

111<cr><lf><cr><lf>OK<cr><lf>

SCA = 0891863108200505F0

AT+CMGS=19<cr>

AT+CMGS=19<cr><cr><lf>>

0031000D916813158714209F80008A7046D4B8BD5<ctrl+z>

0031000D91683158714209F80008A7046D4B8BD5<ctrl+z><cr><lf>+CMGS:
112<cr><lf><cr><lf>OK<cr><lf>
SCA = 00
<cr> = 0D&h
<lf> = 0A&h
<ctrl+z> = 1A&h

6.4 PDU Type


PDUType SMS-SUBMITSMS-DELIVER
PDUType 1
SMS-SUBMIT
31&h = 0011 0001&b
Bit No.

RP
0

UDHI
0

SRR
1

RD
0

VPF
1

0
MTI

SMS-DELIVER
04&h = 0000 0100&b
Bit No.

7
RP

6
UDHI

5
SRI

3
0

2
MMS

0
MTI
0

Reply Paht
0
1
UDHI User Data Header Indicator
0 UD
1 UD
RP

()

16 29

SMS PDU-mode

SRR

SRI

VPF

Status Report Request


0
1
Status Report IndicationSMSC
0 SME
1 SME
Validity Period Format
00 VP 0
01
10 VP
11 VP 8 (semi-octet)

Reject Duplicate
0 SMSCSMS-SUBMIT
SMSCMS(MR)
(DA)(OA)
1 SMSC SMS
MMS More Messages to Send SMSC
0 SMSC MS
1 SMSC MS
MTI Message Type Indicator
RD

00 SMS-DELIVERSMSCMS
00 SMS-DELIVER REPORTMS SMSC
SMS-DELIVER
01 SMS-SUBMITMS SMSC
01 SMS- SUBMIT REPORT SMSC MS
10 SMS-STATUS REPORT SMSC MS
10 SMS-COMMAND MS SMSC
11
PDU

PDUType PDU

6.5 MR (Message Reference)


00

6.6 DA/OA
OA DA
DA 2-12
()

17 29

SMS PDU-mode

0D91683158714209F8
1 Octet
Len

0-1 Octet
Type

0-10 Octets
Addr

0D
91
683158714209F8
Len 8613851724908 SCA
Type81&h 91&h

Add ISDN

PDU

+8613851724908
13851724908

0D 91 86 31 58 71 42 09 F8
0B 81 31 58 71 42 09 F8

106051268812345 *)
123456
*)

0F A1 01 06 15 62 88 21 43 F5
06 81 21 43 65

6.7 PID (Protocol-Identifier)


MS-to-SC PID 00

6.8 DCS (DataCoding-Scheme )

Bit No.

0
1

0
1

0
1

0
1

0
0

0
1

0
1

0
0

= 00&h 7 bit

= 08&h

= F6&h 8 bit Class 1

USC216bit

Bit No.7Bit No.6


00
Bit No.5
0 1 GSM
Bit No.4
0 Bit No.1Bit No.0
1 Bit No.1Bit No.0
Bit No.3Bit No.2
00
01 8bit
10 USC216bit
11
Bit No.1Bit No.0
()

18 29

SMS PDU-mode

00 Class 0
01 Class 1
10 Class 2SIM
11 Class 3

DSC
00

default (7-bit)

Class
No Class

F0
F1

default (7-bit)
default (7-bit)

Class 0 (immediate display)


Class 1 (Mobile Equipment- specific)

F2
F3

default (7-bit)
default (7-bit)

Class 2 (SIM specific message)


Class 3 (Class3 Terminate Equipment- specific)

F4
F5

8-bit
8-bit

Class 0 (immediate display)


Class 1 (Mobile Equipment- specific)

F6
F7

8-bit
8-bit

Class 2 (SIM specific message)


Class 3 (Class3 Terminate Equipment- specific)

08
18

16-bit
16-bit

No Class
Class 0 (immediate display)

6.9 VP Validity Period

VPF = 10 VP = AA H ()
VPF = 11

30
80
02
90
54
33
20
03-08-20 09:45:33
VP 8semi-octet
VP8
SMS-SUBMIT SMSC
VP8

VP
00 8F

(VF+1)*5

5 12

90 A7
A8 C4

12 + (VF 143)*30
(VP 166) * 1

C5 FF

(VP 192) * 1

SCTSService Center TimeStamp

()

19 29

SMS PDU-mode

6.10 SCTS Service Center TimeStamp


8 VP

6.11 UDL

(User-Data-Length (Amount of

Characters))
UDL
3 7bit8bit16bit
7bit GSM 8bit ASCII 16bit Unicode
1 octet
UDL
05
7bit "Test"

0 .. 140 octets
UD
E8 32 9B FD 06

UDL = 04, UD = D4 F2 9C 0E
16bit "Test"
UDL = 08, UD = 00 54 00 65 00 73 00 74
UD 9 SMS

7 AT
AT

AT+CMGC Send an SMS command


AT+CMGD Delete SMS message SIM
AT+CMGF Select SMS message formate0-PDU;1-
AT+CMGL List SMS message from preferred store
SIMPDU/text
0/REC UNREAD -
1/REC READ
-
2/STO UNSENT -
3/STO SENT
-
4/ALL
-

AT+CMGR Read SMS message


AT+CMGS Send SMS message
AT+CMGW Write SMS message to memory SIM
AT+CMSS Send SMS message from storage SIN|M
()

20 29

SMS PDU-mode

AT+CNMI New SMS message indications


AT+CPMS Preferred SMS message storage
AT+CSCA SMS service center address
AT+CSCB Select cell broadcast messages
AT+CSMP Set SMS text mode parameters
AT+CSMS Select Message Service

8PDU
8.1
AT SIEMENS 2118

V2.2
RoaringWindStudio
http://www.gjwtech.com/

Portmon
Mark Russinovich
http://www.sysinternals.com

()

21 29

SMS PDU-mode

8.2
COM1 V2.2 COM1 19200
NONE 8 1 AT
AT<cr><cr><cl>OK<cr><cl>

8.3 PDU SMS


+8613851724908 Test SMSPDU
0031000D91683158714209F80000A704D4F29C0E 20 00
PDU AT+CMGS=<length><length>
AT+CMGS=19<cr>

()

22 29

SMS PDU-mode

AT+CMGS=19
>
PDU0031000D91683158714209F80000A704D4F29C0E

()

23 29

SMS PDU-mode

PDU <ctrl+z> 1A &h


<esc> 1B &h

+CMGS: 111
OK
111 111

()

24 29

SMS PDU-mode

9SMS
a.
Hello World!GSM 7
ASCIIASCII80HexBit87
82GSMASCII

ASCII

48

0100 1000

100 1000

1100 1000

C8

65

0110 0101

110 0101

0011 0010

32

6C

0110 1100

110 1100

1001 1011

9B

6C

0110 1100

110 1100

1111 1101

FD

6F

0110 1111

110 1111

0000 0110

06

[sp]

20

0010 0000

010 0000

0101 1101

5D

57

0101 0111

101 0111

1101 1111

DF

6F

0110 1111

110 1111

0111 0010

72

72

0111 0010

111 0010

0011 0110

36

10

6C

0110 1100

110 1100

0011 1001

39

11

64

0110 0100

110 0100

0000 0100

04

12

21

0010 0001

010 0001

Delphi 5
function Encode1(var s: String): String;
var
i, j, len: Integer;
cur: Integer;
t: String;
begin
Result := '';
len := Length(s);
//j
i := 1;
j := 0;
while i <= len do
begin
if i < len then
//
cur := (Ord(s[i]) shr j) or ((Ord(s[i1]) shl (7j)) and $ff)
else
cur := (Ord(s[i]) shr j) and $7f;
FmtStr(t, '%2.2X', [cur]);
()

25 29

SMS PDU-mode

Result := Resultt;
inc(i);
//7
j := (j1) mod 7;
if j = 0 then
inc(i);
end;
end;
b.
DelphiWideStringGB2312Unicode

GB2312

GB2312 BIN

Unicode BIN CP936

D6

1101 0110

0100 1110

D0
CE
C4

1101 0000
1100 1110
1100 0100

0010 1101
0110 0101
1000 0111

Delphi 5
function Encode2(var s: WideString): String;
var
i, len: Integer;
cur: Integer;
t: String;
begin
Result := '';
len := Length(s);
i := 1;
while i <= len do
begin
cur := Ord(s[i]);
//BCD
FmtStr(t, '%4.4X', [cur]);
Result := Resultt;
inc(i);
end;
end;

()

26 29

SMS PDU-mode

Message service error


These are the error codes for +CMS ERROR.
0-127

GSM 04.11 Annex E-2 values

128-255 GSM 03.40 section 9.2.3.22 values


300

Phone failure

301

SMS service of phone reserved

302

Operation not allowed

303

Operation not supported

304

Invalid PDU mode parameter

305

Invalid text mode parameter

310

SIM not inserted

311

SIM PIN necessary

312

PH-SIM PIN necessary

313

SIM failure

314

SIM busy

315

SIM wrong

320

Memory failure

321

Invalid memory index

322

Memory full

330

SMSC (message service center) address unknown

331

No network service

332

Network timeout

500

Unknown error

512

Manufacturer specific

error codes:
0
1
2
3
4
5
10
11
12
13
()

phone failure
no connection to phone
Phone-adaptor link reserved
operation not allowed
operation not supported
PH-SIM PIN necessary
SIM not inserted
SIM PIN required
SIM PUK required
SIM failure
27 29

SMS PDU-mode

14
15
16
20
21
22
23
24
25
26
27
30
31
100
265
266

SIM busy
SIM wrong
incorrect password
memory full
invalid index
not found
memory failure
text string too long (+CPBW)
invalid characters in text string
dial string to long
invalid characters in dial string
no network service
network timeout
unknown
PUK for theft protection necessary
PUK2 for SIM necessary

267

PIN2 for SIM necessary

()

28 29

SMS PDU-mode

29 29

You might also like