中文短信編碼(二)

2 接收:SMSC號碼是+8613800250500,對方號碼是13693092030,消息內容是「你好!」。手機接收到的PDU串能夠是算法

08 91 68 31 08 20 05 05 F0 84 0D 91 68 3196 03 29 30 F0 00 08 30 30 21 80 63 54 80 06 4F 60 59 7D 00 21編碼

對照規範,具體分析:spa

分段含義 說明code

08 地址信息的長度 個八位字節(包括91)圖片

91 SMSC地址格式(TON/NPI) 用國際格式號碼(在前面加‘+)it

68 31 08 20 05 05 F0 SMSC地址8613800250500,補‘F’湊成偶數個方法

84 基本參數(TP-MTI/MMS/RP) 接收,無更多消息,有回覆地址時間戳

0D 回覆地址數字個數 13個十進制數(不包括91和‘F)數據

91 回覆地址格式(TON/NPI) 用國際格式號碼(在前面加‘+)協議

68 31 96 03 29 30 F0 回覆地址(TP-RA)8613693092030,補‘F’湊成偶數個

00 協議標識(TP-PID) 是普通GSM類型,點到點方式

08 用戶信息編碼方式(TP-DCS) UCS2編碼

30 30 21 80 63 54 80 時間戳(TP-SCTS)2003-3-12 08:36:45  +8時區

06 用戶信息長度(TP-UDL) 實際長度6個字節

4F 60 59 7D 00 21 用戶信息(TP-UD) 「你好!

 

若基本參數的最高位(TP-RP)0,則沒有回覆地址的三個段。從Internet上發出的短消息經常是這種情形。

注意號碼和時間的表示方法,不是按正常順序順着來的,並且要以‘F’將奇數補成偶數。

 

PDU Mode中,能夠採用三種編碼方式來對發送的內容進行編碼,它們是7-bit8-bitUCS2編碼。7-bit編碼用於發送普通的ASCII字符,它將一串7-bit的字符(最高位爲0)編碼成8-bit的數據,每8個字符可「壓縮」成7個;8-bit編碼一般用於發送數據消息,好比圖片和鈴聲等;UCS2編碼用於發送Unicode字符。PDU串的用戶信息(TP-UD)段最大容量是140字節,因此在這三種編碼方式下,能夠發送的短消息的最大字符數分別是16014070。這裏,將一個英文字母、一個漢字和一個數據字節都視爲一個字符。

 

須要注意的是,PDU串的用戶信息長度(TP-UDL),在各類編碼方式下意義有所不一樣。7-bit編碼時,指原始短消息的字符個數,而不是編碼後的字節數。8-bit編碼時,就是字節數。UCS2編碼時,也是字節數,等於原始短消息的字符數的兩倍。若是用戶信息(TP-UD)中存在一個頭(基本參數的 TP-UDHI1),在全部編碼方式下,用戶信息長度(TP-UDL)都等於頭長度與編碼後字節數之和。若是採用GSM 03.42所建議的壓縮算法(TP-DCS的高3位爲001),則該長度也是壓縮編碼後字節數或頭長度與壓縮編碼後字節數之和。

轉自bbs.sendsms.cn

相關文章
相關標籤/搜索