1

我正在制作一个 XMPP 客户端,我想要接收到的消息是否有一些计时器或内存缓存,因为我向我的客户端发送了 1000 条消息,而服务器发送了 1000 条消息,但我的客户端只收到 300 条消息。

可能的解决方案:...克服这些限制

每次 HTTP 都有“修复”XMPP 的解决方案。

前两个限制可以通过运行 WebDAV 服务器来修复。上传到 WebDAV 服务器,分享链接。这是每个人都可以在没有 XMPP 客户端支持的情况下完成的解决方案。当然,通过客户端和服务器支持以及签名 URL(à la S3)透明地做到这一点将大大改善该过程。

对于连接的套接字问题,有 BOSH。这基本上是通过 HTTP 运行 XMPP。额外的好处是让服务器保持“连接”几分钟——这解决了我的 iPhone 问题。一旦我在两分钟的窗口中重新启动客户端,所有待处理的消息都会被传递。

4

1 回答 1

-1

您的接收者仅收到 300 条消息,这意味着它们可能是离线消息。如果是这种情况,您需要在管理面板中增加每用户离线消息存储限制。

我建议您进行消息归档和检索,而不是依赖离线消息。

希望这可以帮助你:)

于 2014-03-14T14:37:23.373 回答