基于ejabberd实现各个客户端消息同步

爷,独闯天下 提交于 2019-12-09 22:41:19

先上图再说(左侧是web端,右侧是ios端)

在此输入图片描述在此输入图片描述

要实现上面的功能,如果所有设备都在线的话,那么carboncopy(xmpp xep-0280协议)这个模块是可以实现接收到的消息同步,但是如果其中一个设备或多个设备都不在线的话,那么现有的就实现不了。发送的消息也存在同样的问题,只要自己的另外的设备不在线,也是不能同步消息的,也要借助离线消息发给自己其他的设备。

既然离线后就实现不了消息同步,那么肯定要改造离线模块了。既然是针对多个设备的那么需要多添加一个设备的字段,也就是说离线消息需要保存多份了。

还有就是一开始还需要登记多个设备了。

总结一下:要实现多设备消息同步,主要借助carboncopy和离线消息。

易学教程内所有资源均来自网络或用户发布的内容,如有违反法律规定的内容欢迎反馈
该文章没有解决你所遇到的问题?点击提问,说说你的问题,让更多的人一起探讨吧!