写点什么

唠一唠融云的消息补偿机制

发布于: 2021 年 03 月 16 日

最近项目发现了一个很诡异的现象,纵使删除了会话且清除了历史消息,一旦卸载重装应用,之前删除的部分消息又莫名其妙的重新收到且显示了,见鬼啦~💀~,在“福尔摩斯·我”的缜密排查下(提工单问了融云的技术支持🌟),真相只有一个。


真相:原来是因为开启了融云的“多设备消息同步”服务,在卸载重装应用时,触发了该服务中的“消息补偿”机制,默认会把当天收发过的消息重新拉取回来。


如果既需要开通“多设备消息同步”服务,又需要卸载重装应用时保证之前删除的会话和历史消息不再显示,该如何处理呢?


方案


* 删除会话且清除历史消息
复制代码


* 向该会话发送一条不存储不计数的自定义消息,作用是标识该会话已经被清除
复制代码


* 卸载重装应用
复制代码


* 触发“消息补偿”机制,除了收到之前收发过的消息,也会收到标识该会话被清除的自定义消息
复制代码


* 在接收到该自定义消息时,对该会话再做一遍清除操作,也就是“删除会话且清除历史消息”
复制代码


“消息补偿”默认是当天,也可以修改这个时间,具体可以咨询融云 https://www.rongcloud.cn/


顺便说一下,他们的技术支持服务还是挺到位的,基本都能得到相对满意的答复,如果觉得问他们比较麻烦,可以自己先在文档 https://docs.rongcloud.cn/v4/ 里面找找,说不定会有惊喜哟~


用户头像

还未添加个人签名 2021.01.26 加入

还未添加个人简介

评论

发布
暂无评论
唠一唠融云的消息补偿机制