XMPPFramework / iOS问题:发送和接收订阅

时间:2013-05-11 15:11:34

标签: ios xmpp xmppframework

我今天对XMPPFramework提出了挑战......

我已正确配置ejabberd:服务器已启动并正在运行,并通过带内注册正确注册用户。

但是当我尝试从一个设备发送订阅请求时,第二个设备无法接收第一个设备的状态。以下是我在第一个订阅用户的设备上使用的代码,如下所示:

[[[self appDelegate] xmppRoster] addUser:userJID withNickname:nickname groups:nil subscribeToPresence:YES];

如果一切正常,第二个设备必须激活委托方法:

- (void)xmppRoster:(XMPPRoster *)sender didReceiveBuddyRequest:(XMPPPresence *)presence

问题是这个委托方法永远不会被触发。 服务器为用户创建新联系人,我可以在ejabberd Web管理员上看到它,但订阅类型设置为none。

有什么想法吗?

更新

好吧,我似乎忘记了将主机名包含在JID中。现在,XMPPRoster的代表没有被调用,但我可以在ejabberd上看到请求不是'none'而是'both'并且等待验证。

无法想象为什么XMPPRoster代表没有解雇......当用户收到新的订阅请求时,似乎ejabberd服务器没有发送正确的通知......

1 个答案:

答案 0 :(得分:1)

似乎eJabberd配置错误或其他什么。刚刚安装了OpenFire,一切正常。