默认
发表评论 4
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
[已回复] 求教IM多端讯息同步改造后投递讯息有机率失败问题
请问下有关多端讯息同步讯息投递问题

前提:
在我们团队有开发单帐号登入多装置( 帐号可同时登入及网页 ),且实现讯息同步、消息漫游等功能,如下图所示

所以我们参考了 RainbowChat消息路径分析及多端消息同步改造方案分享 这篇分享进行改造,
基本改造重点为
1. im_server-sdk.js -> 将投递手机或网页改成两端皆投递
2. GlobalSendHelper -> 将投递手机或网页改成两端皆投递

问题:
1. 测试中发现 BridgeProcessor -> work 里收到来自桥发讯息后( Web 发起 ) 在 LocalSendHelper.sendData 有时候会发送失败进离线回调( 目標裝置在線 ),但是网路基本是好的, 且对方确认是在线状态。
想请问是不是我在同时发给用户 B-Phone 、B-Web、A-Phone 时彼此因该加一些时间间隔,或是可能会有其他状况导致目标装置明明在线讯息却进离线回调的状况 ?

即时通讯网 - 即时通讯开发者社区! 来源: - 即时通讯开发者社区!

test.png (35.61 KB, 下载次数: 794)

test.png
上一篇:移动端IM产品RainbowChat[专业版] iOS端 v6.1版已发布!下一篇:移动端IM产品RainbowChat[专业版] v8.3版已发布!
推荐方案
评论 4
在线就是在线,如果被判断离线,就是另有原因。

你说对方确认是在线的,是通过什么确认的?
引用:JackJiang 发表于 2022-11-24 11:47
在线就是在线,如果被判断离线,就是另有原因。

你说对方确认是在线的,是通过什么确认的?

由上图( test.png )所示,此时用户 B 的手机网页都正在使用,所以判断用户B在线
引用:zxczxc 发表于 2022-11-24 13:33
由上图( test.png )所示,此时用户 B 的手机网页都正在使用,所以判断用户B在线

补充说明下,情况说明:
例如:第一则传给用户 B( 在线,手机 APP 已开启,閒置状态 ) 的讯息被判断成离线讯息,第二则传给用户 B 的讯息包含往后的讯息又正常收到
引用:zxczxc 发表于 2022-11-24 13:33
由上图( test.png )所示,此时用户 B 的手机网页都正在使用,所以判断用户B在线

具体是:

1)此时发消息者,它是app还是web?
2)判断用户B在线具体的代码是什么样,贴出来我看看,贴的全一点

打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部