php - XMPP 流发送,不接收。为什么 XMPP 流会断开连接?

标签 php ios xmpp xmppframework

只是让您知道我继承了这个项目,这样您就知道我并不完全了解这一切是如何实现的。

项目:iOS 上的 XMPP/Jabber 聊天客户端,支持 PHP 服务器

我正在两台 iPhone 实体设备上测试该应用。

看起来应用程序正在发送它应该通过 XMPP 流发送的消息,但应用程序肯定没有收到这些消息。

每次应用程序应接收消息时,它会重新协商它在应用程序运行开始时所做的 XMPP 握手。

对此进行调查,我发现要么是流断开连接,要么是类似情况。这是我实现的两条日志消息。它们包含正在运行的方法名称以及与该方法关联的 NSError 的内容

2014-02-06 18:28:50.140 AppName[9841:473b] --Socket Closed With Error--
Domain: (null)
UserInfo: (null)
2014-02-06 18:28:50.147 AppName[9841:60b] --xmppStreamDidDisconnect--
Domain: libxmlErrorDomain
UserInfo: {
    NSLocalizedDescription = "Couldn't find end of Start Tag body\n";
}

假设 1:最明显的是,我查看了错误域和描述。 然而,还没有找到“找不到开始标签正文的结尾”的运气

假设 2: 我在某个论坛上读到,如果多个设备试图使用相同的凭据登录到同一台服务器,XMPP 流可能会断开连接。我担心这可能是这里发生的事情,但我如何确定这些凭证是否相同。这两个设备使用两个不同的用户名/用户 ID,我相信这对 XMPP 来说已经足够了。

他们使用相同的 IP,但这对于 XMPP 来说很自然,不是吗?

例如。使用的 JID:

   user1@my.site.ip
   user2@my.site.ip

最佳答案

事实证明,当 XMPP 消息创建不正确但发送正确时,就会发生这种情况。这是“由于消息语法错误而断开连接”。

关于php - XMPP 流发送,不接收。为什么 XMPP 流会断开连接?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21616536/

相关文章:

python - 将一个 Twisted 工厂接收到的数据发送到第二个工厂

php - 需要具有良好性能的 MYSQL 查询来更新和导入数据(如果不匹配条件则移动到另一个表)

php - 是否可以使用正则表达式在数组中使用 php 进行搜索

php - 在超链接中使用 onclick 打开具有 id 的 div

php - 从 PHP 版本 7.2.0 开始, "Array dereferencing"如何处理 boolean/integer/float/string 类型的标量值?

ios - 如何使用 xmpp 在 swift 中按日期对聊天消息进行分组?

ios - 使用单个文件播放器音频单元播放多个文件

ios - 我应该在 init 方法中还是在 didMove(toView :)?) 中以编程方式设置 SKScene

ios - 在完成 iPhone 部分后实现 iPad .xib

xmpp - amqp 或 xmpp 用于实时在线游戏