Ios 获取两个用户之间的XMPP客户端聊天历史记录
我用eJabbered创建了一个XMPP Swift Messenger,但它并没有保存历史 我搜索了很多,只找到了用ObjC写的答案,在堆栈中 例如:Ios 获取两个用户之间的XMPP客户端聊天历史记录,ios,objective-c,swift,xmpp,messenger,Ios,Objective C,Swift,Xmpp,Messenger,我用eJabbered创建了一个XMPP Swift Messenger,但它并没有保存历史 我搜索了很多,只找到了用ObjC写的答案,在堆栈中 例如: - (void)loadChatHistoryWithUserName:(NSString *)userName { NSString *userJid = [NSString stringWithFormat:@"%@@%@",userName,self.hostName]; NSManagedObjectContext *m
- (void)loadChatHistoryWithUserName:(NSString *)userName {
NSString *userJid = [NSString stringWithFormat:@"%@@%@",userName,self.hostName];
NSManagedObjectContext *moc = [_xmppMsgStorage mainThreadManagedObjectContext];
NSEntityDescription *entityDescription = [NSEntityDescription entityForName:@"XMPPMessageArchiving_Message_CoreDataObject"
inManagedObjectContext:moc];
NSFetchRequest *request = [[NSFetchRequest alloc]init];
[request setEntity:entityDescription];
NSError *error;
NSString *predicateFrmt = @"bareJidStr == %@";
NSPredicate *predicate = [NSPredicate predicateWithFormat:predicateFrmt, userJid];
request.predicate = predicate;
NSArray *messages = [moc executeFetchRequest:request error:&error];
}
但我使用XMPP Swift框架,其中包含XMPP ObjC框架。看看这个Git:
如何在Swift中使用这些片段获取聊天记录 如果您没有在本地保存历史记录(即某种缓存),那么您可能应该查看一个服务器插件,该插件记录聊天记录,并允许您在连接和登录时检索聊天记录(以及进入相关房间等),如果我的记忆正常,ejabbered没有内置的(或者付费版本有),根据我的经验,这个插件很容易安装 之后,确保客户端检索历史记录(使用侦听器等) 希望这有帮助