2015-04-16 69 views
1

嗨我正在使用Tigase和xmpp爲聊天應用程序,一切工作正常,除非我沒有收到第一個離線消息。Tigase和xmpp,第一個離線消息沒有收到

例如:有2個用戶A和B,A向B發送3條消息但B離線(即應用處於非運行狀態),但是當B上線時他只收到2條消息(最後2個) ,第一條消息總是被錯過。

幫我解決這個問題。

+0

當用戶A發送3條消息給用戶B(離線),在用戶B上線之前檢查你的數據庫表(不記得名字)並且讓用戶存在與你的3條消息相關的3個XML節... 。 –

回答

0

我面臨類似的問題,在客戶端,我們無法做任何事情,因爲當用戶上線時,XMPP(Tigase)服務器會自動返回所有脫機消息。 Tigase服務器中可能會有一些問題沒有返回第一條消息。由於您將在
- (void)xmppStream:(XMPPStream *)發送者didReceiveMessage:(XMPPMessage *)消息 中收到的所有離線消息,並且可以首先檢查離線消息是否不被服務器返回。