一种在多个客户端间同步信息的方法、客户端和服务器技术

技术编号:9528651 阅读:63 留言:0更新日期:2014-01-02 18:09
一种在多个客户端间同步信息的方法、客户端和服务器,所述方法包括:各客户端在用户登录时向服务器发送订阅请求,建立会话;与服务器已建立会话的第一客户端在检测到本地的需与其他使用相同账号登陆的客户端同步的列表中发生记录更新时,向服务器发送修改请求,其中至少携带更新操作指示信息,用于指示其他客户端按照本信息进行相应的更新操作;服务器在收到修改请求后,向与第一客户端使用相同账号登陆的其他客户端发送变更通知消息,其中携带上述更新操作指示信息;收到变更通知消息的客户端根据其中携带的更新操作指示信息对本地的指定列表进行更新。本发明专利技术通过增量的方式实现多终端间的数据同步,节省了宝贵的网络资源。而且适用范围较广。

【技术实现步骤摘要】
一种在多个客户端间同步信息的方法、客户端和服务器
本专利技术涉及通信领域相关技术,尤其涉及一种在多个客户端间同步信息的方法、客户端和服务器。
技术介绍
在现有的同步技术中,在基于客户端/服务器(Client/Server,简称为C/S)的架构中,多客户端同步的方法一般采用多终端状态的同步方法,即在一个终端的状态发生改变时,服务器会通知与这个终端相关联的其他终端。由于状态的数据量比较大,当只修改状态的一个字段时也需要通过服务器下发整个数据包,这样消耗的带宽会比较大,增加了网络的负担。
技术实现思路
本专利技术所要解决的问题是提供在多个客户端间同步信息的方法、客户端和服务器,以克服现有同步方法占用带宽较多的缺陷。为解决上述问题,本专利技术提供了一种在多个客户端间同步信息的方法,包括:各客户端在用户登录时向服务器发送订阅请求,建立会话;与所述服务器已建立会话的第一客户端在检测到本地的需与其他使用相同账号登陆的客户端同步的列表中发生记录更新时,向所述服务器发送修改请求,其中至少携带更新操作指示信息,用于指示其他客户端按照本信息进行相应的更新操作;所述服务器在收到所述修改请求后,向与所述第一客户端使用相同账号登陆的其他客户端发送变更通知消息,其中携带上述更新操作指示信息;收到所述变更通知消息的客户端根据其中携带的更新操作指示信息对本地的指定列表进行更新。进一步地,当更新操作为新增记录时,所述更新操作指示信息中包括:增加标识及新增的记录;当更新操作为删除记录时,所述更新操作指示信息中包括删除标识及删除前的记录。进一步地,所述修改请求采用可扩展标记语言配置访问协议(XCAP)格式。进一步地,所述向与所述第一客户端使用相同账号登陆的其他客户端发送变更通知消息,具体包括:所述服务器使用所述其他客户端在用户登录时与所述服务器间建立的会话发送所述变更通知消息。进一步地,所述变更通知消息为差异的XCAP文档(XCAPDiffDocument)格式的初始会话协议通知(SIPNOTIFY)消息。相应地,本专利技术还提供了一种客户端,多个使用相同账号登陆服务器的客户端上需要同步指定的列表,该客户端包括:请求发送模块,用于在用户登录时向所述服务器发送订阅请求,与所述服务器建立会话;还用于在检测到本客户端的所述列表中发生记录更新时,向所述服务器发送修改请求,其中至少携带更新操作指示信息,用于指示其他客户端按照本信息进行相应的更新操作;更新模块,用于在收到服务器发来的变更通知消息后,根据其中携带的更新操作指示信息对本地的指定列表进行更新。进一步地,当更新操作为新增记录时,所述请求发送模块发送的更新操作指示信息中包括:增加标识及新增的记录;当更新操作为删除记录时,所述请求发送模块发送的更新操作指示信息中包括删除标识及删除前的记录。进一步地,所述修改请求采用可扩展标记语言配置访问协议(XCAP)格式。相应地,本专利技术还提供了一种服务器,应用于客户端/服务器架构系统中,包括:接收模块,用于接收客户端发来的订阅请求,与所述客户端建立会话;还用于接收所述客户端发来的修改请求,其中所述修改请求中至少携带更新操作指示信息,用于指示其他客户端按照本信息进行相应的更新操作;发送模块,用于在所述接收模块接收到所述修改请求后,向与所述客户端使用相同账号登陆的其他客户端发送变更通知消息,其中携带所述更新操作指示信息。进一步地,所述发送模块用于向与所述客户端使用相同账号登陆的其他客户端发送变更通知消息,具体包括:所述发送模块用于使用所述其他客户端在用户登录时与所述服务器间建立的会话发送所述变更通知消息。进一步地,所述变更通知消息为差异的XCAP文档(XCAPDiffDocument)格式的初始会话协议通知(SIPNOTIFY)消息。本专利技术通过增量的方式实现多终端间的数据同步,只需要通过增删标记下发增删的数据,数据量较小,节省了宝贵的网络资源。而且,可通过扩展支持各类数据的同步,适用范围较广。附图说明图1为本专利技术实施例中一种在多个客户端间同步信息的方法流程图;图2为本专利技术应用示例1中一种实现多客户端联系人列表同步的方法流程图;图3为本专利技术应用示例2中利用SUBSCRIBE和NOTIFY进行多客户端联系人列表同步的方法流程图;图4为本专利技术实施例中客户端的结构示意图;图5为本专利技术实施例中服务器的结构示意图。具体实施方式为使本专利技术的目的、技术方案和优点更加清楚明白,下文中将结合附图对本专利技术的实施例进行详细说明。需要说明的是,在不冲突的情况下,本申请中的实施例及实施例中的特征可以相互任意组合。在本实施例中,一种在多个客户端间同步信息的方法,应用于C/S架构系统中,在该系统中,多个使用相同账号登陆的客户端上需要同步指定的列表,如图1所示,该同步方法包括:步骤10、各客户端在用户登录时向服务器发送订阅请求,建立会话;步骤20、与上述服务器已建立会话的第一客户端在检测到本地的上述指定列表中发生记录更新时,向服务器发送修改请求,其中至少携带更新操作指示信息,用于指示其他客户端按照本信息进行相应的更新操作;其中,当更新操作为新增记录时,该更新操作指示信息中包括:增加标识及新增的记录;当更新操作为删除记录时,该更新操作指示信息中包括删除标识及删除前的记录;此外,该修改请求可采用XCAP(XMLConfigurationAccessProtocol,可扩展标记语言配置访问协议)格式;步骤30、服务器在收到上述修改请求后,向与该第一客户端使用相同账号登陆的其他客户端发送变更通知消息,其中携带上述更新操作指示信息;在具体实现时,该变更通知消息可使用客户端在用户登录时与服务器间建立的会话进行发送,其可采用XCAPDiffDocument(差异的XCAP文档)格式的SIP(SessionInitiationProtocol,初始会话协议)NOTIFY(通知)消息;步骤40、其他客户端在收到上述变更通知消息后,根据其中携带的更新操作指示信息对本地的指定列表进行更新。下面用本专利技术的几个应用示例对本专利技术进行进一步说明。应用示例1在本应用示例中,提供了一个同步多客户端联系人列表的方法,如图2所示,包括以下步骤:步骤101,一用户关联的多个客户端登录,发送XCAPDiffDocument格式的订阅请求到服务器;步骤102,该用户的客户端B1检测到联系人列表发生修改后,向服务器发送修改请求;其中,该修改请求可以是XCAP消息,其中至少携带更新操作指示信息;步骤103,服务器根据接收到的修改请求中的更新操作指示信息构造相应的变更通知消息,该消息体的格式按照XCAPDiffDocument格式来构造;步骤104,服务器在内存中查找当前在线的该用户的所有相关的客户端信息,根据客户端的SUBSCRIBE(订阅)消息来下发变更通知消息。服务器在每个客户端注册时通过用户的PublicUserIdentity(公共用户标识)来保存用户的注册信息,属于同一客户的多个客户端的注册信息通过一定的数据结构来保存。每个客户端在发起订阅请求时会在自身的内存中保存订阅标识。服务器根据修改请求中携带的PublicUserIdentity查找到已注册的该用户的所有客户端的信息,通过相应地订阅标识下发变更通知消息。应用示例2在本应用示例中,用户B本文档来自技高网...

【技术保护点】
一种在多个客户端间同步信息的方法,包括:各客户端在用户登录时向服务器发送订阅请求,建立会话;与所述服务器已建立会话的第一客户端在检测到本地的需与其他使用相同账号登陆的客户端同步的列表中发生记录更新时,向所述服务器发送修改请求,其中至少携带更新操作指示信息,用于指示其他客户端按照本信息进行相应的更新操作;所述服务器在收到所述修改请求后,向与所述第一客户端使用相同账号登陆的其他客户端发送变更通知消息,其中携带上述更新操作指示信息;收到所述变更通知消息的客户端根据其中携带的更新操作指示信息对本地的指定列表进行更新。

【技术特征摘要】
1.一种在多个客户端间同步信息的方法,包括:各客户端在用户登录时向服务器发送订阅请求,建立会话;与所述服务器已建立会话的第一客户端在检测到本地的需与其他使用相同账号登陆的客户端同步的列表中发生记录更新时,向所述服务器发送修改请求,其中至少携带更新操作指示信息,用于指示其他客户端按照本信息进行相应的更新操作;所述服务器在收到所述修改请求后,向与所述第一客户端使用相同账号登陆的其他客户端发送变更通知消息,其中携带上述更新操作指示信息;收到所述变更通知消息的客户端根据其中携带的更新操作指示信息对本地的指定列表进行更新;其中,指定列表具体包括:联系人列表;其中,所述服务器根据客户端的订阅请求来下发变更通知消息;所述向与所述第一客户端使用相同账号登陆的其他客户端发送变更通知消息,具体包括:所述服务器使用所述其他客户端在用户登录时与所述服务器间建立的会话发送所述变更通知消息。2.如权利要求1所述的方法,其特征在于:当更新操作为新增记录时,所述更新操作指示信息中包括:增加标识及新增的记录;当更新操作为删除记录时,所述更新操作指示信息中包括删除标识及删除前的记录。3.如权利要求1或2所述的方法,其特征在于:所述修改请求采用可扩展标记语言配置访问协议(XCAP)格式。4.如权利要求1所述的方法,其特征在于:所述变更通知消息为差异的XCAP文档(XCAPDiffDocument)格式的初始会话协议通知(SIPNOTIFY)消息。5.一种客户端,多个使用相同账号登陆服务器的客户端上需要同步指定的列表,该客户端包括:请求发送模块,用于在用户登录时向所述服务器发送订阅请求,与所述服务器建立会话;还用于在检测到本客户端的所述列表中发生记录更新时,向所述服务器发送修改请求,其中至少携带更新操作指示信息,用于指示其他客户端按照本信息进行相应的更新操作...

【专利技术属性】
技术研发人员:姜济军张少林杜立文符伟松
申请(专利权)人:中兴通讯股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1