默认
发表评论 12
想开发IM:买成品怕坑?租第3方怕贵?找开源自已撸?尽量别走弯路了... 找站长给点建议
[已回复] 求教MobileIMSDK重启时已登录客户端的处理
作为Web项目的监听器启动,如果重启Web,MobileIMSDK的server也会重启,如果不对已登录客户端处理,重启服务后,MobileIMSDK Server端会报许多错误(我打开Info级别的日志)。表现就是之后的IM通信很不稳定。那么合理的处理方式是什么?图片是错误截图,另外还有一个完整的日志文件。

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

标签:MobileIMSDK

无标题.jpg (281.63 KB, 下载次数: 2911)

无标题.jpg

doghome_debug.zip

5.56 KB, 下载次数: 9

上一篇:[已解决] 求教 MobileIMSDK 服务器端向指定客户端推送方法下一篇:[已回复] MobileIMSDK 移动端登上IM服务器后频繁登入和登出

本帖已收录至以下技术专辑

推荐方案
评论 12
我看核心是好友列表自己维护userId的问题。是这样的,服务器端我分用户类型的,一类用户我维护了userId,但只有登入登出维护;一类用户我没有管理userId。
用户我用extra字段在登录时分辨,也是登录时新建userId的map表,但登出时没有extra字段,我直接查map表里是否有userId,如果有,就从map表里删除。上线回调由于没有extra字段,我没有处理。
userId的map表掉线重连时没有处理。问下:掉线重连是框架自动进行的,框架会记录原来登录的loginName和password,但extra字段会记录吗?
也就是说我建立userId的map表是在下图的接口中进行的

1.png (17.58 KB, 下载次数: 2900)

1.png
登出是在登出回调接口进行的(登入回调是空的),如下图

2.png (42.68 KB, 下载次数: 2836)

2.png
这里信息更新慢,还有几个问题一并问了,感谢耐心指导:
1.掉线重新登录和服务器重新登录回调接口完全一样吧?只有上线、下线回调吧?
2.框架自动重新登录,那么一定记录了原来登录的用户名和密码,问下extra参数记录吗?
3.自动重新登录后的id好像有时是原id,有时是新的id,能否详细解释下?
4.框架已实现掉线重新登录,那么任何场景下,开发者都不需要再监听掉线回调(MessageQosEvent)并登录了吗?
5.自动重新登录是否有配置参数关掉?
6.框架发送消息到达超时时间仍未收到指纹数据,会有自动重发机制,有参数配置重发次数和超时时间吗?
7.我们应用场景是不需要离线发送的,有参数可关掉吗?
8.我前面的日志里有客户端ip:218.244.55.14,在单位和家里都是这个ip,不应该呀
感谢耐心解答,问题大多明白了,还有些问题没搞清楚,可能我表达的不明白。还得麻烦下:

1.最开始的问题,也是最重要的问题还没有解答,就是错误日志分析,我的问题出在哪里?不知我后续回答的内容对分析错误是否有帮助。

2.我问的第一个问题您提到客户端可以获得服务器维护的映射表,以更新自己和在线好友的userId,问下客户端怎么才能获得这个映射表呢?

3.我的第二个问题您提到服务端OnVerify回调可以拿到extra,确实是的,但这时还没有分配userId。我要建立以userId为key,loginName为value的map,只有用ServerLancher里的getNextUserId接口了,里面的PLoginInfo对象包括我要的所有数据(也有extra)好像没有其他更好的办法了。

4.问下重发次数和超时时间是多少。

5.IP地址218.244.55.14就在我上传的日志里,有很多,能帮看下日志里指的是什么的ip?






问题1,后来发现除了上传日志中的问题,还有客户端总是不断登入登出,见下图,10多秒一次,这是网络不好、屏保还是其他原因?

问题3,我想说自定义数据extra、还有loginName、userId,三个数据要同时获得,只有用用ServerLancher里的getNextUserId接口了,其他接口都不合适。

不回答也没事,可能文字描述有时词不达意,叨扰了

无标题.png (133.5 KB, 下载次数: 2857)

无标题.png
打赏楼主 ×
使用微信打赏! 使用支付宝打赏!

返回顶部