如何在iPhone中使用XMPPFramework创建多用户聊天室

如何在iPhone中使用XMPPFramework创建多用户聊天室,iphone,xmppframework,Iphone,Xmppframework,我正在iPhone中使用XMPPFramWork开发聊天应用程序。我成功地完成了一对一聊天,现在我想在我的应用程序中开发多用户聊天 我尝试了暂停代码,但是没有调用XMPProomDeleteGate的任何委托方法。我如何开始创建聊天室。何时以及如何调用roomdelegate方法…任何回复都感谢您的帮助 XMPPStream *xmppStream = [[XMPPStream alloc] init]; XMPPRoomCoreDataStorage *xmppRoomStorage =

我正在iPhone中使用XMPPFramWork开发聊天应用程序。我成功地完成了一对一聊天,现在我想在我的应用程序中开发多用户聊天

我尝试了暂停代码,但是没有调用XMPProomDeleteGate的任何委托方法。我如何开始创建聊天室。何时以及如何调用roomdelegate方法…任何回复都感谢您的帮助

XMPPStream *xmppStream = [[XMPPStream alloc] init];

XMPPRoomCoreDataStorage *xmppRoomStorage  = [XMPPRoomCoreDataStorage sharedInstance];

XMPPJID *roomJID = [XMPPJID jidWithString:@"vvreddy50@gmail.com"];

xmppRoom = [[XMPPRoom alloc] initWithRoomStorage:xmppRoomStorage jid:roomJID dispatchQueue:dispatch_get_main_queue()];

[xmppRoom   activate:xmppStream];
[xmppRoom   fetchConfigurationForm];
[xmppRoom   configureRoomUsingOptions:nil];
[xmppStream addDelegate:self delegateQueue:dispatch_get_main_queue()];
[xmppRoom   addDelegate:self delegateQueue:dispatch_get_main_queue()];
两个问题:

  • XMPPFramework主要是异步的。这意味着您需要在通过身份验证后,在
    -xmppstreamdiauthenticate:
    方法中调用
    -fetchConfigurationForm

    如果这两个调用需要按顺序进行,则在
    -xmppRoom:didFetchConfigurationForm:
    中调用
    -configureRoomUsingOptions

  • 除非您在流上调用
    -connect:
    ,否则不会发生任何事情。确保实现
    -xmppStreamDidConnect:
    ,并使用该方法启动与服务器的身份验证


  • XMPPRoomDelegates不被称为Dop,请在此处发布后续问题: