XMPPFramework - Crear un XMPPRoom

He estado tratando de crear un XMPPRoom usando el código mencionado a continuación, he mirado varios ejemplos en línea, sin embargo, cuando uso este código, no se llama al delegado xmppRoomDidCreate o xmppRoomDidJoin. No estoy seguro de qué estoy haciendo mal aquí?

PD: los delegados de xmppStream se llaman, se conectan y se autorizan, sin embargo, el problema son los delegados de XMPPRoom ...

- (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()];
}

Respuestas a la pregunta(2)

Su respuesta a la pregunta