我正在尝试实现 XMPPStream 类的一些委托方法,其中之一是xmppStream:(XMPPStream *)sender didReceivePresence:(XMPPPresence *)presence
. 我注册了两个用户,并且都订阅了彼此的存在通知。我注意到的一件事是,didReceivePresence
只有在用户授权时才会调用该方法。断开和/或连接用户不会通知订阅者。当我订阅的某人离线/在线时,我该怎么做才能收到通知?我用来向 XMPPStream 发送存在的代码是:
- (void) goOnline
{
XMPPPresence *presence = [XMPPPresence presence];
[_stream sendElement:presence];
}
- (void) goOffline
{
XMPPPresence *presence = [XMPPPresence presenceWithType:@"unavailable"];
[_stream sendElement:presence];
}