前段时间公司项目重构,改了一些融云的代码。改了几天bug之后现在有一点小心得,给大家分享一下,一下纯属自己的理解,如果有错误的地方希望大家指出来一起学习共同进步。
一、融云的通信原理。 socket + 推送(静默推送)socket是用来进行im及时通信的。 而推送(静默推送)是用来进行特定的消息刷新的。
二、融云的消息数据是存在本地的数据库的, 也就是说每一次从发送到接收消息的流程是 |1.发送消息|2.接收消息|3.刷新数据库|4.展示消息
三、如果遇到特殊的要求 例如,发送的消息是否成功,发送的消息是否已读。 流程大概如下,|1.发送消息给容云服务器|2.融云服务器发送相关的消息推送给发送端或者接收端|3.根据收到的消息会走融云相应的代理方法,在相应的代理方法中更新列表|(已读 消息回执是一个专属的代理方法)
网友评论