I am working on the iOS chat client. Can anyone please help me with the Multi-User Chat?
I have implemented Robbiehanson\'s XMPPFramework.
Can anyone please
+(void)getGroupRooms{
NSError *error = nil;
NSXMLElement *query = [[NSXMLElement alloc] initWithXMLString:@" " error:&error];
XMPPIQ *iq = [XMPPIQ iqWithType:@"get" to:[XMPPJID jidWithString:Jabber_groupChat_Domain_server] elementID:[[[PXMPPManager sharedInstance] xmppStream] generateUUID] child:query];
[iq addAttributeWithName:@"from" stringValue:[[[PXMPPManager sharedInstance] xmppStream] myJID].full];
[[[PXMPPManager sharedInstance] xmppStream] sendElement:iq];
//
//
//
}
#pragma - mark XMPPStreamDelegate Methods
- (BOOL)xmppStream:(XMPPStream *)sender didReceiveIQ:(XMPPIQ *)iq{
// NSLog(@"Did receive IQ");
if([iq isResultIQ])
{
if([iq elementForName:@"query" xmlns:@"http://jabber.org/protocol/disco#items"])
{
NSLog(@"Jabber Server's Capabilities: %@", [iq XMLString]);
NSXMLElement *queryElement = [iq elementForName:@"query" xmlns:@"http://jabber.org/protocol/disco#items"];
NSArray *items = [queryElement elementsForName:@"item"];
NSMutableArray *arrGroupName = [[NSMutableArray alloc] init];
for (NSXMLElement *i in items) {
NSString *roomName = [i attributeStringValueForName:@"name"];
NSString *jidString = [i attributeStringValueForName:@"jid"];
//XMPPJID *jid = [XMPPJID jidWithString:jidString];
NSDictionary *dict = @{
@"groupName" : roomName,
@"groupJID" : jidString,
};
[arrGroupName addObject:dict];
}
[ConversationsModel saveGroupName:arrGroupName];
}
}
return false;
}