1. 程式人生 > >手機 SMS PDU 格式參考手冊

手機 SMS PDU 格式參考手冊

  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   2、縮寫詞
縮寫            全稱                        說明
 
MS:       Mobile-Station         移動站臺
                                負責系統交換管理,控制來自或發往其他電話或資料系統的 通訊
 
SME:    Short-Message-Entity     短訊息實體
                                 負責接收和傳送短訊息。可以位於固話系統、移動基站或 其他服務中心內
 
SMSC: Short Message Service Center 短訊息服務中心
                                 負責在移動基站和SME之間中繼、儲存或轉發短訊息
 
PDUs:    Protocol Data Units         協議資料單元
 
PDU Type:   Protocol Data Unit Type   協議資料單元型別
 
MR:          Message Reference        訊息參考
 
OA:        Originator Adress         傳送方地址
 
DA:         Destination Adress       接收方地址
 
PID:      Protocol Identifier       協議標識
 
DCS:      Data Coding Scheme        資料編碼方案
 
SCTS:    Service Center Time Stamp  服務中心的時間戳
 
VP:      Validity Period            訊息有效期
 
UDL:      User Data Length          使用者資料長度
 
UD:          User Data             使用者資料
 
RP:        Reply Path              應答路徑
 
UDHI:  User Data Header Indicator  使用者資料頭標識
 
SRI: Status Report Indication     狀態報告指示
 
SRR:  Status Report Request      請示狀態報告
 
VPF:  Validity Period Format      有效期格式
 
MMS:  More Messages to Send      有更多的資訊需要傳送
 
RD:       Reject Duplicate             拒絕複本
 
MTI:  Message Type Indicator 訊息型別指示
 
ME:  Mobile Equipment 移動裝置
 
TE:  Terminal Equipment 終端裝置
 
SIM: Subscriber Identity Modul
  
SC:  Service-Center 服務中心
 
SCA: Service Center Address 服務中心地址
 
SM MT: Short Message Mobile Terminated Point-to-Point 點到點短訊息移動接收
 
SM MO: Short Message Mobile Originaed Point-to-Point  點到點短訊息移動傳送
  3、設定指令
3.1 服務中心號碼       (+CSCA)
服務中心(SC)負責轉播和儲存轉發SME和MS之間的短訊息。如果MS支援SMS-MO(短訊息服務移動 傳送),為了使用SMS,必須在MS中設定SMSC(短訊息服務中心,SCA)。 使用指令 “AT+CSCA?” 可以檢視儲存在SIM卡中的當前服務中心地址。 使用AT指令 “AT+CSCA=<SCA>[,<TOSCA>]” 加入短訊息服務號碼。 句法: 輸入                   執行                        註釋
 
AT+CSCA?               <CR>           查詢當前服務中心地址(SCA)設定(從SIM卡中讀取)
 
響應
+CSCA:  “<SCA>” OK
  
AT+CSCA=“<SCA>”       <CR>         定義服務中心地址(SCA) (儲存到SIM卡)
  引數: <SCA>     服務中心地址(字元型)
 
<TOSCA>  服務中心地址的型別設定(編碼方式)
  示例: AT+CSCA=“+8613800250500”   <CR>    以國際號格式定義服務中心地址(SCA)
 
AT+CSCA=“+13800250500”   <CR>    以國內號格式定義服務中心地址(SCA)
  注意: &THORN; 為了避免漫遊時出現問題,推薦國際號碼格式儲存所有地址(以“+”和國家程式碼開頭 )。 &THORN; 向你本地的網路提供商詢問正確的短訊息服務中心號碼 &THORN; SC地址是SMS的一部分!當任何一個SMS被儲存到SIM卡上時,SC地址也同時該SMS中。 3.2 選擇訊息服務       (+CSMS)
這個指令用於選擇訊息服務。 句法: 輸入                    執行             註釋
 
AT+CSMS?              <CR>             返回當前的服務型別及ME支援的資訊
 
AT+CSMS=?            <CR>              返回所有支援的服務型別
 
AT+CSMS=<SERVICE>     <CR>             選擇訊息服務
 
響應
 
+ CSMS:  <SERVICE>,<MT>,<MO>,<BM> OK
   引數: <SERVICE>    訊息服務
 
<MT>    接收短訊息
 
<MO>    傳送短訊息
 
<BM>   接收小區廣播訊息
  示例: 讀取指令 輸入                    執行                   註釋
 
AT+CSMS?               <CR>               返回當前的服務型別及ME支援的資訊
 
響應
 
+ CSMS:  0,1,1,1 OK
 指令返回當前的訊息服務和移動裝置支援的服務選項
  設定指令 輸入                        執行                      註釋
 
AT+CSMS=1                  <CR>                   設定支援的訊息型別
 
響應
 
+ CSMS:  0,1,1,1 OK
 返回移動裝置支援的服務選項
  引數: 引數                    值                             描述
 
<SERVICE>               0                   SMS AT 指令的句法相容 GSM Phase 2
 
                        1                   SMS AT 指令的句法相容 GSM Phase 2+
 
                     2...127                保留
 
                       128                 廠商自定義
 
<MT>,<MO>,<BM>          0                  不支援
 
                        1                 支援
  3.3 選擇訊息格式       (+CMGF)
這個指令用於選擇短訊息格式。它的引數指示傳送、列取、讀取和寫入的訊息所使用的格式。 句法: 輸入                       執行                           註釋
 
AT+CMGF?                   <CR>                        返回當前的SMS格式
 
AT+CMGF =?                 <CR>                        返回所有支援的SMS格式
 
AT+CMGF=<MODE>             <CR>                        選擇SMS格式
 
響應
 
OK
  支援的值: <MODE>     含義
 
 0      PDU模式(預設的)
 
1        Text模式
  示例: 讀取指令 輸入
 執行
 註釋
 
AT+CMGF?
 <CR>
 返回當前的SMS格式
 
響應
 
+ CMGF: 0 OK
 返回當前的SMS格式
  設定指令 輸入
 執行
 註釋
 
AT+CMGF=1
 <CR>
 設定SMS型別為Text
  4、SMS文字模式
略 5、SMS PDU模式
一個完整的SMS訊息所包含的所有報頭資訊被以二進位制字串格式傳送。這個二進位制串由十六進 制格式的IA5 字元組合而成。 使用AT指令”AT+CMGF=0”切換到協議資料模式,之後所有的SMS輸入與顯示將以PDU格式執行。 5.1 傳送方SMS-Submit (Mobile Originated)
SMS-SUBMIT的意思就是GSM-Molbile傳送一條SMS到服務中心。 5.1.1 向SIM卡儲存區寫入一條SMS  (+CMGW)
執行指令”AT+CMGW”用於儲存一條訊息在SIM卡的儲存區中。命令返回訊息被儲存的索引號。 句法: 輸入
 執行
 註釋
 
AT+CMGW=<LENGTH>[,<STAT>]
 <CR>
  
> <PDU> *)
 <CTRL-Z>/<ESC> **)
  
響應
 
+CMGW: <INDEX> OK
 如果命令正確執行,返回訊息儲存位置的索引號
  引數: <LENGTH>
 給定的TP層資料單元的八位位組程式碼數目(不包含服務中心地址的八位位組數目)
 
<STAT>
 除儲存未傳送的狀態之外的狀態值 在PDU模式下該值為整型(預設值為0) 在文字模式下該值為字元型(預設值為”REC UNREAD”)
 
<PDU>
 PDU資料
 
<INDEX>
 儲存位置
  支援的值: <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>。 句法: 輸入
 執行
 註釋
 
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>
 轉換SMS輸入模式,SMS將會被以“未傳送”狀態儲存。命令後所跟的PDU字串的長度必須在這個 命令中指定。
 
> <PDU> *)
 <CTRL-Z>/<ESC> **)
 直接從終端中傳送一條SMS,而不將其儲存到SIM卡。
 
響應
 
+CMGS: <MR>[,<SCTS>] OK
   如果傳送成功將返回訊息參考
  引數: <LENGTH>    給定的TP層資料單元的八位位組程式碼數目(不包含服務中心地址的八位位組數目)
 
<PDU>   PDU資料
 
<MR>   訊息參考
 
<SCTS>    服務中心時間戳
  注: *)    符號”>”是的移動終端裝置返回而產生的 **)  <CTRL>+<Z>執行命令;<ESC>不儲存/傳送、直接退出執行 5.2 接收方 SMS-DELIVER (Mobile Terminated)
SMS-DELIVER意味著終端設定從服務中心接收到一條SMS訊息。 5.2.1 列取訊息       (+CMGL)
句法: 輸入                    執行            註釋
 
AT+CMGL=<INDEX>        <CR>          列取記憶體中指定型別的SMS
 
響應
 
+CMGL: <index><stat>[,<alpha>],<length>       <pdu> [+CMGL: <index><stat>[,<alpha>],<length> <pdu> [...] ]
  
AT+CMGL=?               <CR>           檢視裝置支援的<stat>型別
  引數: 引數                描述
 
<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
 
響應
 
+CMGR: <STAT>[,<ALPHA>],<LENGTH> <PDU> OK
   引數: 引數               描述  
<STAT>            在PDU模式下該值為整型(預設值為0)                  在文字模式下該值為字元型(預設值為”REC UNREAD”)                  指示記憶體中訊息的狀態 定義的值 0 “REC UNREAD”
 已接收未讀的訊息(例如新訊息)
 
1 “REC READ”
 已接收已讀的訊息
 
2 “STO UNSENT”
 已儲存未傳送的訊息
 
3 “STO SENT”
 已儲存已傳送的訊息
 
 
<ALPHA>
 以字元型的數字文字表示的,在SIM電話薄中找到的相應<OA>條目
 
<LENGTH>
 給定的TP層資料單元的八位位組程式碼數目(不包含服務中心地址的八位位組)
 
<PDU>
 PDU資料
  注意: &THORN; 切不可直接提交一個DELIVER-SMS!因為它的PDU資料中頭資訊是與用於提交的PDU不一 樣的! &THORN;在記憶體(SIM)中至少有最後一個空閒空間,以保證能接收到新的SMS! 5.2.3 刪除訊息       (+CMGD)
句法: 輸入
 執行
 註釋
 
AT+CMGD=<INDEX>
 <CR>
 刪除在SIM卡中索引<INDEX>位置的SMS
 
響應
 
OK
   6、SMS PDU 基本組成元素
下列元素是用於SMS-SUBMIT和SMS-DELIVER中的部分。 元素                 名稱               長度           描述
 
SCA        Service Center Adress          1-12         服務中心的電話號碼
 
PDU-Type   Protocol Data Unit Type         1         協議資料單元型別
 
MR         Message Reference               1         所有成功的SMS-SUBMIT參考數目 (0..255)
 
OA           Originator Adress           2-12         傳送方SME的地址
 
DA           Destination Adress          2-12         接收方SME的地址
 
PID          Protocol Identifier          1         引數顯示SMSC以何種方式處理SM (比 如FAX,、Voice等)
 
DCS          Data Coding Scheme          1          引數表示使用者資料(UD)採用什麼編碼 方案
 
SCTS      Service Center Time Stamp      7         引數表示SMSC接收到訊息時的時間戳
 
VP           Validity Period          0,1,7        引數表示訊息在SMSC中不再有效的時 長
 
UDL         User Data Length            1         使用者資料段長度
 
UD            User Data              0-140          SM資料
  6.1 傳送方PDU格式SMS-SUBMIT-PDU (Mobile Originated)
SCA      PDUType   MR   DA   PID   DCS    VP     UDL    UD
 
1-12     1         1   2-12   1    1   0,1,7      1   0-140
  示例:  向13851724908傳送一條SMS,訊息內容為:“Test” 0031000D91683158714209F80000A704D4F29C0E  向13851724908傳送一條SMS,訊息內容為:“測試” 0031000B813158714209F80008A7046D4B8BD5 SCA     PDUType    MR      DA               PID    DCS     VP     UDL    UD
 
1-12    1          1      2-12              1      1     0,1,7     1     0-140
 
00     31          00   0D91683158714209F8  00    00      A7      04   D4F29C0E
 
00     31         00    0B813158714209F8    00   18       A7      04    6D4B8BD5
  6.2 接受方PDU格式 SMS-DELIVER-PDU (Mobile Terminated)
SCA    PDUType   OA    PID     DCS    SCTS    UDL     UD   
1-12    1       2-12    1       1      7      1  0-140
  示例:    從13851724908接收到一條SMS,訊息內容為:“Test” 0891683108200505F0240D91683158714209F800004001528035350004D4F29C0E     從13851724908接收到一條SMS,訊息內容為:“測試” 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
    6.3 SCA 短訊息服務中心地址格式
服務中心地址包含三個部分: SCA組成:1-12個八位位組 例:0891683108200505F0 1 Octet
 0-1 Octet
 0-10 Octets
 
Len
 Type
 Addr
 
SCA長度
 SCA型別
 SCA地址
 
08
 91
 683108200505F0
  Len:短訊息中心地址長度。指(91)+(68 31 08 20 05 05 F0)的八位位組數目。如果Len被 設定為00&h,並不提供後面的部分,那麼終端裝置將讀取SIM中設定的SCA填充到SMS-PUD中,通 過“AT+CSCA=xxxxx”指令可以設定SIM卡中儲存的SCA值。 Type:短訊息中心地址的型別,是國際的號碼還是國內的號碼(81&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
 資料型別
 號碼鑑別
                       第7位永遠置為1                      數值型別(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
 07 81 31 08 50 21 05 F0
 
123456
 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: 111<cr><lf><cr><lf>OK<cr><lf>
  SCA = 0891863108200505F0 輸入:
AT+CMGS=19<cr> 輸出:
AT+CMGS=19<cr><cr><lf>> 輸入:
0031000D91683158714209F80008A7046D4B8BD5<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-SUBMIT、SMS-DELIVER的第一個八位位組。它分別由下面幾個部分組成: PDUType組成:1個八位位組        傳送方:SMS-SUBMIT 例:31&h = 0011 0001&b Bit No.
 7
 6
 5
 4
 3
 2
 1
 0
 
  RP
 UDHI
 SRR
 VPF
 RD
 MTI
 
  0
 0
 1
 1
 0
 0
 0
 1
  接收方:SMS-DELIVER 例:04&h = 0000 0100&b Bit No.
 7
 6
 5
 4
 3
 2
 1
 0
 
  RP
 UDHI
 SRI
     MMS
 MTI
 
  0
 0
 0
 0
 0
 1
 0
 0
 
                 RP:      應答路徑(Reply Paht), 0 – 未設定; 1 – 設定        UDHI: 使用者資料頭標識(User Data Header Indicator), 0 – 使用者資料(UD)部分不包含頭資訊; 1 – 使用者資料(UD)開始部分包含使用者頭資訊        SRR:    請求狀態報告(Status Report Request), 0 – 不需要報告; 1 – 需要報告        SRI:     狀態報告指示(Status Report Indication),此值僅被短訊息服務中心 (SMSC)設定                      0 – 狀態報告將不會返回給短訊息實體(SME)                      1 – 狀態報告將返回給短訊息實體(SME)        VPF:    有效期格式(Validity Period Format),                      00 – VP 段沒有提供(長度為 0 ),                      01 – 保留,                      10 – VP 段以整型形式提供(相對的),                      11 – VP 段以8位組的一半(semi-octet)形式提供(絕對的)        RD:      拒絕複本(Reject Duplicate),                      0 – 通知 短訊息服務中心(SMSC)接受一個SMS-SUBMIT,即使該訊息 是先前已提交過的,並還存在於SMSC中未傳送出去。MS重複的條件是:訊息參考(MR)、接收方地 址(DA)及傳送方地址(OA)相同                      1 – 通知 SMSC 拒絕一個重複的 SMS        MMS:   有更多的資訊需要傳送(More Messages to Send),此值僅被 SMSC 設定                      0 – 在 SMSC 中有更多的資訊等待 MS                      1 – 在 SMSC 中沒有更多的資訊等待 MS        MTI:    資訊型別指示(Message Type Indicator)                      00 – SMS-DELIVER(SMSCèMS)                      00 – SMS-DELIVER REPORT(MS è SMSC) 當手機接收到 SMS-DELIVER 時自動產生                      01 – SMS-SUBMIT(MS è 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個八位位組 例:0D91683158714209F8 1 Octet
 0-1 Octet
 0-10 Octets
 
Len
 Type
 Addr
 
長度
 型別
 地址
 
0D
 91
 683158714209F8
  Len:地址長度。指8613851724908 的長度。這與SCA中的定義不一樣! Type:短訊息中心地址的型別,是國際的號碼還是國內的號碼(81&h表示國內,91&h表示國際的 )。 Add:依照ISDN編號方式的短訊息中心地址。 示例: 電話號碼
 PDU格式編碼
 
+8613851724908
 0D 91 86 31 58 71 42 09 F8
 
13851724908
 0B 81 31 58 71 42 09 F8
 
106051268812345 *)
 0F A1 01 06 15 62 88 21 43 F5
 
123456
 06 81 21 43 65
         *) 小靈通號碼 6.7 PID 協議標識 (Protocol-Identifier)
       對於標準情況下的下 MS-to-SC 短訊息傳送,只需設定 PID 為 00 6.8 DCS 資料編碼方案 (DataCoding-Scheme)
Bit No.
 7
 6
 5
 4
 3
 2
 1
 0
 描述
 
示例:
 0
 0
 0
 0
 0
 0
 0
 0
 = 00&h  7 bit 資料編碼 預設字符集
 
  1
 1
 1
 1
 0
 1
 1
 0
 = F6&h  8 bit 資料編碼 Class 1
 
  0
 0
 0
 0
 1
 0
 0
 0
 = 08&h  USC2(16bit)雙位元組字符集
         Bit No.7與Bit No.6: 一般設定為 00;        Bit No.5: 0 – 文字未壓縮,1 – 文字用GSM標準壓縮演算法壓縮;        Bit No.4: 0 – 表示 Bit No.1、Bit No.0 為保留位,不含資訊型別資訊,               1 – 表示 Bit No.1、Bit No.0 含有資訊型別資訊;        Bit No.3與Bit No.2: 00 – 預設的字母表,每個字元佔用 7 位元位,此時最大可以傳送 160 字元 01 – 8bit,此時最大隻能傳送 140 個字元 10 – USC2(16bit), 傳送雙位元組字符集 11 – 預留;        Bit No.1與Bit No.0: 00 – Class 0,短訊息直接顯示在螢幕上 01 – Class 1, 10 – Class 2(SIM卡特定資訊), 11 – Class 3。        示例: DSC
 字符集
 資訊 Class
 
00
 default (7-bit)
 No Class
 
F0
 default (7-bit)
 Class 0 (immediate display)
 
F1
 default (7-bit)
 Class 1 (Mobile Equipment- specific)
 
F2
 default (7-bit)
 Class 2 (SIM specific message)
 
F3
 default (7-bit)
 Class 3 (Class3 Terminate Equipment- specific)
 
F4
 8-bit
 Class 0 (immediate display)
 
F5
 8-bit
 Class 1 (Mobile Equipment- specific)
 
F6
 8-bit
 Class 2 (SIM specific message)
 
F7
 8-bit
 Class 3 (Class3 Terminate Equipment- specific)
 
08
 16-bit
 No Class
 
18
 16-bit
 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 段以整型或半個8位組(semi-octet)形式提供。 第一種情況,VP為一個8位組,給定有效期的長度, 從 SMS-SUBMIT 被 SMSC 接受開始計算。 第二種情況,VP為七個8位組,給定有效期終止的絕對時間。        在第一種情況下,有效期表示格式如下所示: VP
 相應的有效期
 
00 – 8F
 (VF+1)*5 分鐘 從 5 分鐘間隔到 12 個小時
 
90 – A7
 12 小時 + (VF – 143)*30 分鐘
 
A8 – C4
  (VP – 166) * 1 天
 
C5 – FF
  (VP – 192) * 1 周
  第二種情況下的時間形式與 SCTS(Service Center TimeStamp)形式一致。 6.10 SCTS 服務中心時間戳(Service Center TimeStamp)
       佔用七個8位組,格式如 VP 的第二種情況所示 6.11 UDL 使用者資料長度 (User-Data-Length (Amount of Characters))
UDL 以整型形式提供,表示後面使用者資料段的資料長度。 資料格式有3種: 7bit,8bit,16bit。 其中7bit採用GSM字符集,8bit採用ASCII字符集,16bit採用Unicode字符集。 1 octet
 0 .. 140 octets
 
UDL
 UD
 
05
 E8 32 9B FD 06
  如:7bit資料 "Test"         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 formate(選擇短訊息資訊格式:0-PDU;1-文字)
 
AT+CMGL
 List SMS message from preferred store
(列出SIM卡中的短訊息PDU/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記憶體中傳送短訊息)
 
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(選擇短訊息服務)
  8、PDU操作例項
8.1 準備工作
一臺支援AT操作的手機或手機模組,建議使用SIEMENS的,我使用的是西門子2118。 一根串列埠資料線。 串列埠除錯軟體:        串列埠除錯助手V2.2
              RoaringWindStudio 嘯峰工作室
             
http://www.gjwtech.com/
              用於通過串列埠傳送和接收資料。        Portmon
              Mark Russinovich
             
http://www.sysinternals.com/
              用於監聽系統中正在使用中的串列埠或並口當前傳送的資料。        西門子手機工作室               通過上面的監聽程式分析它的動作,你可以學到很多。   8.2 連線手機
將資料線插在主機的COM1上,然後執行串列埠除錯助手V2.2,設定串列埠為COM1,波特率為19200, 校驗位為NONE,資料位為8,停止位為1。然後輸入AT再加一個回車,之後點發送按鈕,如果手機 應答 AT<cr><cr><cl>OK<cr><cl>,則說明電腦已與手機正常連線!如下圖所示:   8.3 傳送PDU SMS
如前面所述,向號碼為 +8613851724908手機發送一條內容為“Test”的SMS,PDU串是 0031000D91683158714209F80000A704D4F29C0E,它的長度是20個八位位組,而最左方的 00 位組 是PDU串中的短訊息服務中心欄位,AT+CMGS=<length>指令的<length>不將其計算在內,所以首 先應該傳送AT+CMGS=19<cr>:   如上圖所示,手機返回了 AT+CMGS=19 >
  這是要儘快輸入PDU串:0031000D91683158714209F80000A704D4F29C0E   正確輸入了PDU串後,還需要輸入一個控制字元<ctrl+z> 1A &h通過手機立即將它傳送出去,或 輸入<esc> 1B &h通過終端裝置放棄。   手機返回 +CMGS: 111 OK
  說明短訊息傳送成功!返回的訊息參考是111,表示這是傳送成功的第111條訊息(服務中心不保 證該值絕