XMPP:未读消息数

XMPP: count of unread messages

我正在尝试使用以下功能为我的网络应用程序实现聊天:

第一点很容易使用 XEP-0013 实现:灵活的离线消息检索。所以我可以检索离线消息,当我确定用户已经看到它们时 - 我将它们从未读列表中删除。但问题是:如何为 "unseen" 消息实现相同的目的?

简而言之,我需要的是:任何消息都应标记为离线,除非用户看到它并且已通过明确请求将其从列表中删除。

我可以使用 XMPP 实现吗?我该怎么做?

提前致谢。

您要做的基本上是在您的帐户中存储一个看不见的东西的计数器。我认为您不需要灵活的离线检索,因为当您连接消息时,它们只会变得看不见。因此你只需要处理一种情况:Unseen.

我会从ejabberd的角度来回答,我作为开发者之一更清楚:我会使用私有存储来存储你当前的不可见计数和会话状态。