標籤:
// AT+CSMS 選擇訊息業務
AT+CSMS=0 // SMS 的AT 命令相容GSM 07.05 Phase 2
AT+CSMS=1 // SMS 的AT 命令相容GSM 07.05 Phase 2+
// AT+CMGF 選擇訊息格式
AT+CMGF? // 查詢當前值
AT+CMGF=0 // PDU: 0
AT+CMGF=1 // TXT: 1
// AT+CMGL 列舉短訊息,AT+CMGF=0 PDU模式
AT+CMGL=0 // 接收未讀
AT+CMGL=1 // 接收已讀
AT+CMGL=2 // 儲存未發送
AT+CMGL=3 // 儲存已發送
AT+CMGL=4 // 所有訊息
// AT+CMGL 列舉短訊息,AT+CMGF=1 TXT模式,等號後前的是字串
AT+CMGL="REC UNREAD" // 接收未讀
AT+CMGL="REC READ" // 接收已讀
AT+CMGL="STO UNSENT" // 儲存未發送
AT+CMGL="STO SENT" // 儲存已發送
AT+CMGL="ALL" // 所有訊息
// 刪除資訊
AT+CMGD=1,4 // 刪除sim卡上已發的和未發的全部簡訊
AT+CMGD=1,2 // 刪除已讀簡訊
如果你發送一條簡訊後回複資訊 +CNTI:"SM",3 這個3表示的是你現在這個卡上的第三條資訊
此時發送AT+CMGR=3就可以讀取這一條簡訊
如果要刪除這一條簡訊的話發送AT+CMGD=3
下面是一些AT+CMGD指令的作用
AT+CMGD=1,0 The message from the preferred message storage at the location 1 is deleted
AT+CMGD=1,1 ALL READ messages from the preferred message storage are deleted
AT+CMGD=1,2 ALL READ messages and SENT mobile originated messages are deleted
AT+CMGD=1,3 ALL READ, SENT and UNSENT messages are deleted
AT+CMGD=1,4 ALL messages are deleted
// 將訊息提示該為中斷方式。這樣在收到簡訊的時候內容直接用+CMT: 提示出來,不存卡。
AT+CNMI=2,2,0,0,0
// 用TEXT模式發簡訊息流程
AT+CMGF=1\r // TXT模式
//AT+CSCA="+8613800512500" // 寫資訊中心號碼
AT+CSCS="GSM"\r // 字元集
AT+CMGS="+8618913179619"\r // 寫手機號
>HELLO // 發"HELLO"
1A // (ctrl-Z)以十六進位發送
// 用PDU模式發簡訊息流程
AT+CMGF=0\r // pdu模式
AT+CSCS="UCS2"\r // 字元集
AT+CMGS= // 之後跟的是從短訊息中心之後的所有字元長度
0891683108502105F0 // 簡訊息地址
11000D91683155845570F1 // 對方手機號
000800 // 14
06 // 要發送的資料長度
4F60597D0021 // 資料
0x1A // (ctrl-Z)以十六進位發送
註: 在傳送簡訊時,SMSC地址可以不要,用00代替。
如發送“你好!”到13554855071.代碼如下:
AT+CMGF=0\r
AT+CSCS="UCS2"\r
AT+CMGS=21\r
“0011000D91683155845570F1000801064F60597D0021”
0x1A
********************************************************************************
0891683108502105F011000D91683155845570F1000801064F60597D0021
0891683108502105F0 // 簡訊息地址
11000D91683155845570F1
000800 //14
06
4F60597D0021
什麼是PDU Mode?
它是發送或接收手機SMS訊息的一種方法。訊息本文經過十六進位編碼後進行傳送; PDU發送只能輸入十六進位的字元0-9 A-F.
基本的PDU命令:
->讀取短訊息
AT+CMGR:
->列舉短訊息
AT+CMGL:
->發送短訊息
AT+CMGS:
PDU接收簡訊格式:
+CMT: ,26
08 // 地址資訊的長度
91 // SMSC地址格式(TON/NPI),用國際格式號碼(在前面加‘+’)
683108500145F1 // SMSC地址13800510541
24 // 基本參數(TP-MTI/MMS/RP)
0D // 回複地址數字個數,共13個十進位數(不包括91和‘F’)
91 // 回複地址格式(TON/NPI)
688119139716F9 // 回複地址(TP-RA)
00 // 協議標識(TP-PID)
08 // 使用者資訊編碼方式(TP-DCS)
90809281543223 // 時間戳記(TP-SCTS) 090829 18 45 23 32
06 // 使用者資訊長度(TP-UDL)
4F60597D0021 // 使用者資訊(TP-UD)
********************************************************************************/
短訊息相關指令(轉)
短訊息相關指令
|
| CSMS |
選擇資訊服務 0相容GSM07.05 Phase 2 version 4.7.0 1相容GSM07.05 Phase 2+ version |
AT+CSMS=0 +CSMS: 1,1,1
AT+CSMS=1 +CSMS: 1,1,1 |
SMS-MO SMS-MT SMS-CB(小區廣播) 全部支援 |
| CNMA |
新SMS收到確認 |
| CPMS |
首選的SMS儲存區 SM為SIM卡區,BM為記憶體區,預設為SM |
AT+CPMS=? +CPMS: (("SM","BM"),("SM"))
AT+CPMS="SM"+CPMS: 3,25,3,25
AT+CPMS="BM"+CPMS: 0,20,3,25 |
(1)為讀和刪的資訊 (2)為寫和發的資訊
已用1,總共1,已用2,總共2 |
| CMGF |
設定SMS編碼方式(1文字格式設定,0為PDU格式) |
| CSAS |
儲存CSCA與CSMP的相關資訊於E2PROM |
| CRES |
從E2PROM中恢複相關資訊 |
| CSDH |
顯示文字格式設定參數(1為顯示,0為不顯示) |
AT+CDSH=1 +CMT: "+8613501154105",,"01/09/12,18:04:09+32",145,4,0,0,"+8613800100500",145,3 AAA
AT+CSDH=0 +CMT: "+8613501154105",,"01/09/12,18:04:48+32" AAA |
相關的資訊有+CMTI,+CMT,+CDS,+CMGR,+CMGL
左邊兩個例子同樣是發送和接收AAA為內容的SMS |
| CNMI |
SMS的輸出方式 |
AT+CNMI=2,2,0,0,0 +CMT: "+8613501154105",,"01/09/13,11:04:09+32" AAA
AT+CNMI=2,1,0,0,0 +CMTI: "SM",4 |
其中第2位決定SMS直接輸出還是儲存於"SM"中
左邊兩個例子同樣是發送和接收AAA為內容的SMS,為0則不接收 |
| CMGR |
讀取存於"SM"中的資訊 |
| |
AT+CMGR=1+CMGR: "REC READ", "+8613501154102",,"01/08/14,10:46:47+32" X000E8
AT+CMGR=4+CMGR: "REC UNREAD", "+8613501154105",,"01/09/13,11:02:06+32" AAA
AT+CMGR=2+CMGR: "REC READ", "+8613501154105",,"01/08/23,16:32:34+32" DCS format error at+cmgf=0;+cmgr=2 +CMGR: 1,,26 0891683108100005F0040D91683105114501F500081080326123432306004400460044 |
讀取第1條 來源13501154102
讀取第4條 來源13501154105
讀取第2條時遇到DCS格式錯誤,轉成PDU格式後,讀出資料 來源13501154105 |
| CMGL |
資訊列表,(+CMGL:索引,類型,,長度<內容>) |
AT+CMGL=4+CMGL: 1,1,,26 0891683108100005F0040D91683105114501F20000108041016474230658180C56C401 +CMGL: 2,1,,26 0891683108100005F0040D91683105114501F500081080326123432306004400460044 +CMGL: 3,1,,32 0891683108100005F0040D91683105114501F50008108032617492230C003400310032003100320033 +CMGL: 4,1,,23 0891683108100005F0040D91683105114501F500001090311120602303C16010 |
類型 "REC UNREAD" 0 "REC READ" 1 "STO UNSENT" 2 "STO SENT" 3 "ALL" 4 |
| CMGS |
發送SMS,可按文本方式或PDU方式 |
AT+CMGF=1OK AT+CMGS=13501154105> AAA<^Z> +CMGS: 204 OK
AT+CMGF=0OK AT+CMGS=18 >0011000D91683105114501F500040103414141<^Z> +CMGS: 205 OK
|
按文本方式發送
按PDU方式發送 |
| CMGW |
寫資訊到儲存空間 |
AT+CMGW="+8613501154105"> AAA<^Z> +CMGW: 5 OK
AT+CMGW=<lengh><CR><pdu><^Z> |
按文本方式寫入
按PDU方式寫入 |
| CMSS |
從儲存空間中發送資訊 |
AT+CMSS=5+CMSS: 207 OK
+CMT: ,23 0891683108100005F0040D91683105114501F500001090316163932303C16010
AT+CMSS=5,+8613501154102+CMSS: 210 OK |
發送儲存空間中的第5條資訊
收到資訊
也可將第5條資訊發送到指定使用者 |
| CSMP |
設定文字格式設定參數,+CSMP:<fo><vp><pid><dcs> |
AT+CSMP? +CSMP: 1,167,0,0
OK |
其中為資訊有效期間,167預設 0-143:(VP+1)*5分鐘 143-167:12小時+(VP-143)*30分鐘 168-196:(VP-166)*1天 197-255:(VP-192)*1周 |
| CMGD |
刪除資訊,AT+CMGD=<索引> |
| CSCA |
簡訊息服務中心號碼 |
| |
at+csca? +CSCA: "+8613800100500",145 OK |
北京簡訊息服務中心號碼 |
| CSCB |
選擇小區廣播資訊類型 |
| WCBM |
小區廣播資訊標識符 |
| WMSC |
資訊狀態更正 |
| WMGO |
資訊重寫 |
-
GSM 簡訊相關AT指令(轉)