檢索消息,我在Openfire的& XMPP創建羣聊。了重複的信息,而從歷史
我得到歷史使用的Openfire服務器「因爲」,而加盟的房間。 這裏是我的代碼:
XMPPRoomMemoryStorage *roomStorage = [[XMPPRoomMemoryStorage alloc] init];
XMPPJID *roomJID = [XMPPJID jidWithString:chatWithUser];
xmppRoom = [[XMPPRoom alloc] initWithRoomStorage:roomStorage
jid:roomJID
dispatchQueue:dispatch_get_main_queue()];
[xmppRoom activate:self.xmppStream];
[xmppRoom addDelegate:self
delegateQueue:dispatch_get_main_queue()];
NSXMLElement *history = [NSXMLElement elementWithName:@"history"];
[history addAttributeWithName:@"since" stringValue:finalDate];
[xmppRoom joinRoomUsingNickname:self.xmppStream.myJID.user
history:history
password:nil];
我存儲信息中本地因此,下一次用戶登錄從本地獲取最後的消息數據並將其發送到服務器在該日期之後獲取所有消息時。
finalDate is date from that i fetch from local and send it to server.
但是happern是,當我發送finalDate
服務器還獲取最後的消息,我已經存儲在本地數據庫中。
如果我從去年的LocalDB消息是「你好」和日期「2016-08-08T04:42.347Z:52」比它獲取從服務器「嗨」。
爲什麼出現這種情況?我想在日期之後從服務器發送消息。
它給你更大或相等的價值..意味着無論你放在歷史日期如果它的最後一個消息相同,它也給你。 –
如何克服它? – Kabali
最後約會加幾秒鐘...... –