1

我正在研究 xmpp 框架。我已经完成了大部分最初的事情。我创建了流,连接它并获得身份验证。现在我正在从我的应用程序向另一个用户发送好友请求。应用程序显示状态已发送。当我得到名册时,它会在那里显示一个条目。但在其他系统上,我没有得到任何优先权或任何东西。我试图发送消息消息也没有被其他客户端接收。

比我在 ichat 中使用一个 id 并向该 id 发送好友请求。哇,我可以在 ichat 上看到好友请求。我接受来自 ichat 的请求 :( 我的应用程序没有通知。

如果我向 ichat 发送消息。iChat 中显示的消息。但是当我从 ichat 向我的应用程序发送消息时。我的应用程序没有收到任何委托或什么也没有。

我不知道为什么会这样。

我正在使用非 ARC xmpp 框架。

请大家帮帮我。我被严重困在其中:(

提前致谢。

4

2 回答 2

4

您是否考虑在获得身份验证后发送出席信息?如果您通过身份验证但未发送优先级,则服务器将认为您离线,并且发送给您的所有消息都将延迟存储在服务器上。

发送您的存在,看看魔术。:)

于 2012-06-26T10:28:45.117 回答
0

我不是 iPhone 开发人员,所以我无法解释编程。

在 XMPP 中,Presence 订阅有两次握手。就像当第一个用户向第二个用户发送请求时,它会要求第二个用户订阅在线状态。当第二个用户接受时,第一个用户订阅第二个用户的存在。所以他可以获得第二个用户的所有存在。它被称为第一个用户的“to”订阅类型。现在第二个用户向第一个用户请求在线订阅并首先接受请求,然后这个“to”订阅类型更改为“both”订阅类型。现在两个用户都可以互相存在。否则只有第一个用户可以得到第二个用户的存在。

对于消息,侦听器必须存在一些问题。

于 2012-06-26T07:34:22.370 回答