2015-01-07 66 views
1

QuickBlox只返回50条聊天消息,我知道这是一个已知的限制,如果我没有指定extendedRequest LIMIT和SKIP,但我的问题是我想要LAST 50消息而不是前50个消息。我尝试了extendedRequest[@"sort_desc"] = @"last_message_date_sent",但QB正在返回随机消息,而不是最后一个,而不是第一个。QuickBlox历史记录只返回第一条消息

此问题也发生在Q-Municate中。我与朋友创建了一个聊天并向他发送了N封邮件,并且只有最初的几封邮件被返回。

那么,有没有办法只返回最后50条消息?

回答

2

我发现从伊戈尔Khomenko的答案在本主题:Quickblox messaging fetch last n messages

和应用。这是正确的,我改进颠倒磁盘阵列和信息,正确地展现给用户:

NSMutableDictionary *extendedRequest = [NSMutableDictionary new]; 
NSDate *now = [NSDate date]; 
extendedRequest[@"date_sent[lte]"]= @([now timeIntervalSince1970]); 
extendedRequest[@"sort_desc"]= @"date_sent"; 

//get the most recent 50 messages 
extendedRequest[@"limit"] = @(100); 

,当我有填充阵列,我只是反其道而行:

[[self.messages reverseObjectEnumerator] allObjects]; 

一切很好!

伊戈尔,同样的问题发生在Q-Municate,并感谢您的帮助。

+0

我没有通过使用[[self.messages reverseObjectEnumerator] allObjects]获得反向消息数组; 你能告诉我我做错了什么吗? – morroko