Tigase:有时我会收到两次离线消息

Posted

技术标签:

【中文标题】Tigase:有时我会收到两次离线消息【英文标题】:Tigase: sometimes i receive offline messages twice 【发布时间】:2013-01-03 11:14:14 【问题描述】:

我使用 Tigase 作为 XMPP 服务器。一切正常,但有时我会收到两次离线消息,第二次是在第一次后 25 分钟后(有时是一天后),例如:

2013-01-03 11:53:00.923 xmppStreamDidReceiveMessage: 
<message xmlns="jabber:client" id="20" type="chat" 
   to="300-92@chat.quickblox.com" from="298-92@chat.quickblox.com">
   <body>r1</body><delay xmlns="urn:xmpp:delay" stamp="2013-01-03T09:52:55.392+0000" 
   from="chat.quickblox.com">Offline Storage - ip-10-40-233-192.ec2.internal</delay>
   </message>


2013-01-03 11:53:25.091 QBChat/xmppStreamDidReceiveMessage: 
<message xmlns="jabber:client" id="20" type="chat" 
    to="300-92@chat.quickblox.com" from="298-92@chat.quickblox.com">
    <body>r1</body><delay xmlns="urn:xmpp:delay" stamp="2013-01-03T09:52:55.418+0000" 
    from="chat.quickblox.com">Offline Storage - ip-10-40-233-192.ec2.internal</delay>
    </message>

它们具有相同的 ID 和文本。

我不知道问题是什么,没有任何复制,随机复制。 第一个用户只是向第二个发送消息,第二个登录/注销,登录/注销..

谢谢你的建议

更新: 有时我会收到 2 条相同的消息:第 1 条是普通消息,第 2 条带有“延迟”参数

【问题讨论】:

【参考方案1】:

戳记不同,这表明该消息在数据库中记录了两次。您是否有机会使用网络客户端? Web客户端可能会认为服务器没有收到消息并再次发送它。但是,那么标记差异可能是几秒钟而不是几毫秒。

在我看来,原始发件人发送了两次消息,并在离线存储中记录了 2 次,然后传递给接收者。但是,如果发件人有时会发送两次消息,那么也会发生正常的非离线消息有时会加倍......

用这么少的信息真的很难说清楚。

【讨论】:

添加更新 - 你有什么想法吗?

以上是关于Tigase:有时我会收到两次离线消息的主要内容,如果未能解决你的问题,请参考以下文章

在 Tigase 中实现 QoS

Tigase 组件中的 addOutPacket

使用 Tsung 进行 Tigase 负载测试。注册冲突 409

无法连接到在 EC2 实例上运行的 Tigase 服务器:连接被拒绝

具有自定义元素或属性的 Tigase-XMPP 消息包

与 Tigase 的 SMS 网关集成