我正在使用XMPP进行聊天的一半。我已经注册并登录到ejabberd服务器。如何访问在XMPP ejabberd服务器中使用Rosters的所有用户
我可以在web界面看到有10个注册用户和4个在线用户。但是名册代表没有得到任何联系。
我试过这个解决方案。我没有得到任何结果。
- (BOOL)xmppStream:(XMPPStream *)sender didReceiveIQ:(XMPPIQ *)iq
{
NSXMLElement *queryElement = [iq elementForName: @"query" xmlns: @"jabber:iq:roster"];
if (queryElement) {
NSArray *itemElements = [queryElement elementsForName: @"item"];
[ArrayUsers removeAllObjects];
for (int i=0; i<[itemElements count]; i++) {
NSString *jid=[[[itemElements objectAtIndex:i] attributeForName:@"jid"] stringValue];
[ArrayUsers addObject:jid];
}
}
return NO;
}
可能是什么问题?我必须为此配置服务器设置才能获取联系人信息。默认情况下所有人都可以访问它? 或者,我是否必须进行查询以获取用户详细信息并自动同步到CoreData存储。
任何帮助将不胜感激。