2013-05-16 44 views
0

我試圖刪除使用下面的代碼列表中的設備「狀態報告」:AT +命令刪除「[短信dilivery]狀態報告」?

AT 
: OK 
AT+CMGF=1 
: OK 
AT+CPMS="SR" 
: +CPMS: 4,100,0,45,4,100 
AT+CMGD=50 
: ERROR 

注:有一個「狀態報告」提供的指數爲:50。

你能告訴我是什麼原因導致了這個錯誤? 謝謝。

+0

+ CPMS的輸出表示有4條消息。嘗試列出他們與AT + CMGL =「ALL」 – dbasnett

+0

@ dbasnett,謝謝你的回覆。實際上'AT + CMGL =「ALL」'也會產生'ERROR'。但是'AT + CMGR = 50'讀取正確的**狀態報告**沒有錯誤。 – dan

+0

而'CMGD','+ CMGL'命令僅失敗**狀態報告**。當涉及到其他消息時,它們工作得很好(存儲在:SM,ME或MT) – dan

回答

0

據 「ETSI TS 100 585」, 0: 「REC UNREAD」 1: 「REC READ」 2: 「STO UNSENT」 3: 「STO SENT」 4: 「ALL」

所以也許你可以嘗試「AT + CMGL = 4」來查看它是否有效。 如果有效,你可以使用「at + cmgd = index」刪除你想要的短信

+0

謝謝@ user2861965,但正如我所說的'AT + CMGL = 50'工作,而'AT + CMGD = 50'失敗。 – dan

+0

嗨,丹。你的意思是AT + CMGL = 50或AT + CMGR = 50?當你使用AT + CMGL = 50時,你的迴應是什麼? – user2861965

+0

Hi @ user2861965,我犯了一個錯誤,'+ CMGL'和'+ CMGD'都**失敗**(但'+ CMGR'正在工作)。看看我想要實現的是刪除**狀態報告**。謝謝。 – dan