PDU格式詳解


發送方PDU 格式SMS-SUBMIT-PDU (Mobile Originated)

元素            名稱                                長度     描述

SCA          Service Center Address    1-12     短消息服務中心號碼
PDU-Type Protocol Data Unit            1          協議數據單元類型
MR            Message Reference         1          所有成功的短信發送參考數目(0..255)
OA            Originator Address            2-12     發送方地址(手機號碼)
DA            Destination Address          2-12    接收方地址(手機號碼)
PID           Protocol Identifer              1         參數顯示消息中心以何種方式處理消息內容(比如FAX,Voice)
DCS         Data Coding Scheme       1         參數顯示用戶數據編碼方案
SCTS      Service Center Time Stamp 7       消息中心收到消息時的時間戳
VP           Validity Period                  0,1,7     參數顯示消息有效期
UDL         User Data Lenghth          1           用戶數據長度
UD          User Data                         0-140    用戶數據

前幾天對接收方的數據格式進行了分析,現在代碼基本上可以處理收到的各種類型短信息。可是發短信給10086時卻總是失敗,google之,網上有遇到類似問題,但貌似沒有具體的解決方案。
開始時懷疑是手機號碼類型問題,嘗試了沒有成功。然后懷疑是字符編碼格式問題,嘗試了也沒有成功。直至將PDU的發送方格式仔仔細細的看了好幾遍,最后懷疑是短信中心號碼處理問題,處理后終於發送成功,倍感欣慰。此章主要仔細介紹發送方PDU格式,下章解決發送10086短信失敗問題。
示例:0011000D91685170873576F40008A7044E2D56FD
號碼:15077853674

內容:中國

下面來逐段分析:

1、SCA:00

同接收方SCA格式,可見我另外一篇文章 SMS-DELIVER-PDU (Mobile Terminated)中的 SCA 格式。
當SCA中的Len 被設置為0x00,並不提供后面的部分,那么終端設備將讀取SIM 中設置的SCA 填充到SMS-PUD中,通過“AT+CSCA=xxxxx”指令可以設置SIM 卡中存儲的SCA 值。此處的Len為0,所以不用設置短信中心號碼。

2、PDU Type:11

有效期格式以整型形式提供(相對的),SMS-SUBMIT

3、MR:00

設為 00 即可

4、DA 接收方地址 :0D91685170873576F4

DA的格式與OA的格式是一樣的,同樣可見我的文章: SMS-DELIVER-PDU (Mobile Terminated) 中 OA 的格式

5、PID協議標識 (Protocol-Identifier):00

對於標准情況下的下 MS-to-SC 短消息傳送,只需設置 PID 為 00

6、DCS 數據編碼方案:08

同樣可見我的文章: SMS-DELIVER-PDU (Mobile Terminated) 中 DCS 的格式

7、VP 信息有效期:A7

此處時間為24小時,具體計算方法請看最后的附件文檔。

8、UDL 用 戶 數 據 長 度:04

此處顯示為4個字節,且采用的為USC2(16bit), 傳送雙字節字符集格式:

9、UD 用 戶 數 據 :4E2D56FD

由於采用的為USC2(16bit),所以實際Unicode編碼為:0x4E,0x2D.0x56,0xFD

參考:

http://www.inextera.com/thread-42-1-1.html

https://blog.csdn.net/sonicliji/article/details/8276403


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM