1

我正在使用 MongooseIM 开发基于 XMPP 的聊天应用程序,并且我正在尝试在我的应用程序中实现未读消息的数量。

我正在使用XEP-0022(消息事件)来跟踪从服务器接收到消息、从客户端接收到、从另一个客户端看到的消息,并使用XEP-0430(收件箱)来跟踪尽快读取的未读消息当我从 MAM 检索它们时。

我的主要问题是,当从收件箱请求消息时,它会返回所有消息,而不仅仅是文本消息。澄清一下:它还返回发送以确认收到消息的消息以及所有中间消息,从而增加未读计数器并使其非常不切实际。

我能做些什么来解决这个问题?

4

1 回答 1

2

您可以使用XEP-0333: Chat Markers而不是 XEP-0022(标记为过时)来传递传递/读取状态。MongooseIM 收件箱知道 XEP-0333 标记,不会将它们计入未读邮件总数。如果您可以控制正在使用的 XMPP 扩展,这是最简单的选项。

于 2021-07-07T14:14:44.643 回答