【发布时间】:2013-03-05 03:13:26
【问题描述】:
如何使用 XMPPFramework 在 iPhone 中实现 GroupChat。我尝试了闲置代码但没有创建房间。我怎么知道是否创建了房间。没有调用 XMPPRoomDelegate。当 Stream 断开连接时,调用 handleDidLeaveRoom 方法。任何一个都可以帮帮我。谢谢提前
#define XMPP_HOSTNAME_2 @"chat.someservername.com"
#define XMPP_JID @"venkat@chat.someservername.com"
#define XMPP_PASSWORD @"venkat"
#define ROOM_JID @"venkat_muc@conference.chat.someservername.com/iMac"
- (void)mucSetupStream
{
xmppStream = [[XMPPStream alloc] init];
xmppStream.hostName = XMPP_HOSTNAME_2;
xmppStream.myJID = [XMPPJID jidWithString:XMPP_JID];
[xmppStream addDelegate:self delegateQueue:dispatch_get_main_queue()];
// Configure xmppRoom
XMPPJID *roomJID = [XMPPJID jidWithString:ROOM_JID];
xmppRoomStorage=[XMPPRoomCoreDataStorage sharedInstance];
xmppRoom = [[XMPPRoom alloc] initWithRoomStorage:self jid:roomJID dispatchQueue:dispatch_get_current_queue()];
[xmppRoom activate:xmppStream];
[xmppRoom addDelegate:self delegateQueue:dispatch_get_main_queue()];
// Start connection process
NSError *err = nil;
if (![xmppStream connect:&err])
{
DDLogError(@"YapTesting: Cannot connect: %@", err);
}
[self performSelector:@selector(ConfigureNewRoom) withObject:nil afterDelay:5];
}
- (void)ConfigureNewRoom
{
NSLog(@"The Room is Configure After 5 Secs");
[xmppRoom fetchConfigurationForm];
[xmppRoom configureRoomUsingOptions:nil];
}
【问题讨论】:
-
你会发布你的委托方法吗?另外,你会为你的流打开日志并发布输出吗?您是否使用标准的
main()和UIApplicationMain?
标签: ios xmpp xmppframework multiuserchat