2014-07-23 68 views
3

我試圖用asmack發送消息,我在日誌貓得到一個錯誤這樣的:如何知道消息發送失敗的asmack

07-23 13:44:45.759: D/SMACK(20581): RCV (0): <message from='[email protected]' to='[email protected]/false' type='error' id='7DOua-233'><body>dgvvvcvcvhcbfbfvgchcbgbhgbhvnhbnvbvbhgbbbbhvbcnvbvbvbvvvcbvcbv hvvvbcvbbhnhjbnnvjbbnnnvnhbnbbbnnn</body><error code='500' type='wait'><resource-constraint xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'/><text xmlns='urn:ietf:params:xml:ns:xmpp-stanzas'>Your contact offline message queue is full. The message has been discarded.</text></error></message> 

這是代碼:

if(mConnection!=null) 
       { 
        Message msg = new Message(params[0], Message.Type.chat); 
        msg.setBody(params[1]); 
        try 
        { 
         System.out.println("sending.."); 
         mConnection.sendPacket(msg); 
         System.out.println("sent!"+msg.getBody()); 
         System.out.println("sent!"+msg.getTo()); 
         flag=true; 
        } 
        catch(Exception e) 
        { 
         System.out.println("Exception:"+e); 
        } 
       } 

我如何能趕上上述日誌貓錯誤在我自己的try catch塊?在目前的情況下,即使消息發送失敗,它仍然返回正確。如何知道由於上述錯誤而導致郵件發送失敗。

+0

你發送信息或對端接收? –

+0

@ Eu.Dr:當我發很多離線消息到另一個接觸這個錯誤主要發生。 –

回答

2

添加分組聽者,檢查接收的數據包的類型。如果它的錯誤您的消息沒有傳遞。

-1

在您的XMPP服務器進入離線郵件設置,並設置了非常高限用於存儲離線消息,如1024 KB,並檢查總是存儲郵件,即使最大尺寸已經達到。

希望這個作品!

+0

這不回答問題。 – Flow

+0

這是在即使上限已達到XMPP服務器存儲消息。 –

相關問題