0

在我的 XMPP 聊天应用程序中,我在 Android 客户端使用 ASMACK 库 4.0.6。

我想在建立 XMPP 连接时检索离线消息。为此,我首先检查服务器是否支持灵活检索。服务器总是返回 false。我们在 MongooseIM 服务器中启用了离线模块。但是为什么我从服务器得到错误信息?

if (!offlineMessageManager.supportsFlexibleRetrieval()) {
Log.i("Offline messages not supported","" + offlineMessageManager.supportsFlexibleRetrieval());
                return;
}

如果我尝试使用 pidgin 客户端,我会收到离线消息。

4

1 回答 1

0

免责声明:我在 MongooseIM 工作。


从您尝试使用的 API 猜测它实现了XEP-0013 - MongooseIM 不支持此 XEP。确保底层.supportsFlexibleRetrieval()真正使用的是什么协议。

MongooseIM 支持XEP-0313 版本 0.2并将支持此 XEP 的最新版本。验证您的客户端库是否支持此 XEP 以及它的哪个版本。在服务器上运行的相关模块是mod_mam. 请参考GitHub 上的 MongooseIM wiki,因为它的配置有点复杂。

或者,您可以依靠在mod_offline资源连接时自动推送离线消息。

于 2015-02-03T10:43:38.760 回答