IM 开发常识

1, 会话列表上,

一般有一个置顶联系人的功能

( 置顶会话 )



2, 已读回执

消息的已读和未读



3, 云信用户进出聊天室监听



在这里插入图片描述


https://doc.yunxin.163.com/docs/TM5MzM5Njk/jQ0MjQ0NDI?platformId=60278#离开聊天室


拎不清

安卓说什么,

发消息前,

先维护扩展字段,

把用户数据,都放进去


个人名片,

当然是后端做






多端同步状态,

通过各自的本地状态记录 + 发消息同步



Observable<Int>.interval(.seconds(26), scheduler: MainScheduler.instance)
            .subscribe(onNext: { [weak self] _ in
                guard let blockSelf = self else { return }
                NetWorkRequest(RoomAPI.roomInfo, isLoading: true, isTips: true, modelType: HomeSampleInfo.self) { [weak blockSelf ] mm , resp in
                    guard let innerSelf = blockSelf else { return }
                    innerSelf.viewModel.metaX.seats = mm.seats
                    innerSelf.viewModel.refreshState()
                }failureBlock: { res in        }
        }).disposed(by: bag)



呵呵



稍不留神,

本地的账本,就记错了

例如一个用户掉线,又恢复

其中( 在这段时间 ),

有一些台上的用户走了,

另外一些台下的用户上台了,

这个时候,他上线后,通过本地的数据,展现 UI

就不行了



网络监听,

服务端心跳监听,

同步数据,

需要对网络的强控制



本地写一个计时器,

周期性网络请求,

那到正确的数据,同步,

凑合吧







有时间,方案需要加强


现在的麦位逻辑是, 进房间拉到数据,之后通过云信消息维护。

进房间 {1 , 有 A, 2, 没人 }

收到消息, A 下了

现在的情况是, {1 , 没人 , 2, 没人 }


方案有瑕疵,明显的例子是,

进房间 {1 , 有 A, 2, 没人 }

断网了

有房间消息, A 下了,没收到

恢复网络

现在的情况是, {1 , 没人 , 2, 没人 }

看到的是, {1 , 有 A, 2, 没人 }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值