我正在开发Openfire,我实现了它,但是初始化有一些问题。
当我锁定iPhone并进入应用程序时,如果我发送消息,它从未调用委托方法didReceiveMessage
。并且一点一点就是,用户可以回收群组中的消息。
为什么代表没有被叫?
我使用此代码在解锁手机后设置代理:
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(RestartConnection:)
name:UIApplicationDidBecomeActiveNotification
object:nil];
-(void)RestartConnection:(NSNotification *)messageContent {
NSMutableDictionary* userInfo = messageContent.object;
NSLog(@"RestartConnection :- %@",userInfo);
del = [self appDelegate];
del._messageDelegate = self;
}
我还在
中设置了我的连接方法- (void)applicationDidBecomeActive:(UIApplication *)application
{
[self connect];
}
并成功授权。
那里有什么问题?
修改
确定完成 我只是在RestartConnection
中添加连接Room的方法-(void)RestartConnection:(NSNotification *)messageContent {
NSMutableDictionary* userInfo = messageContent.object;
NSLog(@"RestartConnection :- %@",userInfo);
del = [self appDelegate];
del._messageDelegate = self;
[self getJoinRoom];
}
但是在向房间发送消息时往往会出错:
RECV: <message xmlns="jabber:client" to="ilesh@peacock/1anqvk75x3" type="error" from="ios@conference.peacock">
<body> The only one </body>
<error code="406" type="modify">
<not-acceptable xmlns="urn:ietf:params:xml:ns:xmpp-stanzas"/>
</error>
</message>
所以任何人都可以帮忙吗?