XMPPFramework - Erstellen Sie einen XMPPRoom
Ich habe versucht, einen XMPPRoom mit dem folgenden Code zu erstellen. Ich habe verschiedene Beispiele online betrachtet. Wenn ich diesen Code verwende, werden die Delegaten xmppRoomDidCreate oder xmppRoomDidJoin jedoch nicht aufgerufen. Ich bin nicht sicher, was ich hier falsch mache?
PS: Die Delegierten von xmppStream werden zwar angerufen, verbunden und autorisiert, es handelt sich jedoch um XMPPRoom-Delegierte ...
- (void)createChatRoom
{
NSString *jabberID = @"[email protected]";
self.xmppStream.hostName = @"testservice.com";
self.xmppStream = [[XMPPStream alloc]init];
[self.xmppStream addDelegate:self delegateQueue:dispatch_get_main_queue()];
[self.xmppStream setMyJID:[XMPPJID jidWithString:jabberID]];
NSError *error = nil;
if (![self.xmppStream connectWithTimeout:XMPPStreamTimeoutNone error:&error]) {
UIAlertView *alert = [[UIAlertView alloc]initWithTitle:@"Error" message:[NSString stringWithFormat:@"Cannot connect to server %@",[error localizedDescription]] delegate:self cancelButtonTitle:@"Ok" otherButtonTitles:nil];
[alert show];
return;
}
// Configure xmppRoom
XMPPJID *roomJID = [XMPPJID jidWithString:@"[email protected]"];
XMPPRoomMemoryStorage *roomMemoryStorage = [[XMPPRoomMemoryStorage alloc] init];
XMPPRoom *xmppRoom = [[XMPPRoom alloc] initWithRoomStorage:roomMemoryStorage
jid:roomJID
dispatchQueue:dispatch_get_main_queue()];
[xmppRoom activate:self.xmppStream];
[xmppRoom addDelegate:self delegateQueue:dispatch_get_main_queue()];
}