我在流管理方面有问题。我在我的ejabberd.yml中添加了以下设置
stream_management: true
resume_timeout: 5
resend_on_timeout: true
流管理功能工作正常。 恢复连接后,我收到了所有消息。主要问题是在恢复连接之前,如果客户端在两者之间向我发送消息,那么我两次收到所有消息。如何在ejabberd服务器上管理队列以正常工作,即(如何按发送顺序获取消息)并避免收到重复的消息。
在某些情况下,如果没有重复的消息,您将无法获得可靠的交付。发生这种情况时,您需要使用消息 ID 来取消客户端上的消息。