即时通讯中如何让聊天消息在发送方和接收方显示不同的内容?

项目使用了第三方的H5即时通讯服务,目前效果如下图所示:

图片描述

从第三方服务返回的对话历史记录来看,我觉得服务器将对话双方的聊天内容和顺序都保存下来了,但是这样的话就会有一个问题,当对方发起了一项特殊操作,比如视频通话:

图片描述

左右两边的消息就不一致了,由于以前没有接触过即时通讯,所以不知道即时通讯在数据存储和展示时正确的做法是什么。
比如上图的情况,请教各位大佬,怎么让双方显示不同的信息?

阅读 2.9k
1 个回答

A向B发送文本消息格式是这样的
A -> B ,socket.send({type:'text',data:'你好'})
B接受消息可能是这样的
B socket.on(msg) ,然后解析 发现type是text直接渲染,
那么同理
A 如果给B 发送一个视频请求。 那么格式可以是 {type:'event',data:'viedo'}
然后B接收到事件,然后可以渲染出A要视频,然后B拒绝了。那么可以发送一个格式为 {type:'event',data:'reject'} 的数据给A,A接受到了这个事件,就渲染,B不要视频

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题