用户离线后 XMPP muc 房间剩余 iOS

XMPP muc room left once user offline iOS

我正在用 Xmmp open fire 创建房间,第一次它工作正常 如果组管理员去离线然后所有成员离开房间,当 来网上不入室。如何重新加入房间? !

这就是 XMPP 多用户聊天的工作原理。多用户聊天规范是基于在线状态的。当您离线时,您不是房间的主人。

创建房间后,使用以下代码设置您的 XMPP 房间持久化...

-(void)xmppRoomDidJoin:(XMPPRoom *)sender {
    NSLog("I did join.");
    [sender fetchConfigurationForm];
}

-(void)xmppRoom:(XMPPRoom *)sender didFetchConfigurationForm:(NSXMLElement *)configForm {

    NSXMLElement *newConfig = [configForm copy];

    NSArray *fields = [newConfig elementsForName:@"field"];

    for (NSXMLElement *field in fields) {

         NSString *var = [field attributeStringValueForName:@"var"];
         // Make Room Persistent

        if ([var isEqualToString:@"muc#roomconfig_persistentroom"]) {

        [field removeChildAtIndex:0];
        [field addChild:[NSXMLElement elementWithName:@"value" stringValue:@"1"]];

        }
   }

   [sender configureRoomUsingOptions:newConfig];

}

如果房间所有者离线,那么所有成员都存在 XMPP 房间的时间