一种多客户端数据修改消息精确推送方法_2

文档序号:9306813阅读:来源:国知局
信息系统客户端载入默认视图;
若用户在信息系统客户端中切换视图时,建立当前视图的刷新方法与客户智能体的切换接口的链接;
调用客户智能体的视图切换接口,获取信息系统客户端正在显示的视图标记符更新客户智能体的视图标记;
3)若客户智能体的视图标记符发生变化,客户智能体向中央智能体发送状态消息,所述状态消息的内容包括:消息类型标志、客户智能体标记符和视图标记;
4 )信息系统客户端中,用户对视图中的数据进行编辑操作
并提交到数据库后,信息系统客户端需调用客户智能体中的发送模块向中央智能体发送数据变更消息,所述数据变更消息的内容包括:消息类型标志、客户智能体标记符和受影响视图标记列表;
5)中央智能体在接收到客户智能体发送的消息后,根据消息类型标志,对消息进行识另Ij,确认消息类型;
若消息为状态消息,若在线客户智能体列表中不存在该消息中的客户智能体标记符,则加入该客户智能体标记符和视图标记;若在线客户智能体列表中已经存在该消息中的客户智能体标记符,则更新该智能体的视图标记;
若消息为数据变更消息,则利用筛选器实现消息精确推送:
具体步骤如下:
a)从数据变更消息中获取发送该消息的智能体标记,以及受影响的视图标记符列表;
b)遍历在线客户智能体列表的每个客户智能体(除数据变更消息的发送者外),判断客户智能体的当前视图标记是否在受影响的视图标记符列表中;若是,则发送视图同步消息到该客户智能体;所述视图同步消息的内容包括:消息类型标志、中央智能体标记符和需要同步的视图标记;
6)客户智能体的消息监听模块,在接收到中央智能体发送的消息后,根据消息类型标志,对消息进行识别,确认消息类型。若消息为视图同步消息,则调用客户智能体的视图更新接口,实现视图同步。
[0013]图3为本发明中一种多客户端数据修改消息精确推送方法的一个实例的系统结构示意图。在该实例中有4个客户端,客户端中的有3个视图(分别为视图a、视图b和视图c ),每个客户端中嵌入智能体。客户智能体通过网络与中央智能体互联。
[0014]在本实例中,中央智能体启动后,各个客户端分别启动,各个客户端内部的智能体也开启监听功能。如图3所示,客户端I中的视图为视图a,客户端2中的视图2为b,客户端3中的视图为C,客户端4中的视图为a。在每个客户端显示相应视图时,首先将视图的刷新方法链接到客户智能体的视图更新接口,然后调用客户智能体中的视图切换接口,发送状态消息到中央智能体。中央智能体收到各个客户端发送的状态消息,对在线客户智能体列表进行管理,保存最新的客户端状态。
[0015]下面以在客户端I中的视图a中对数据进行编辑操作为例,来说明本发明的精确推送式视图同步方法。
[0016]I)用户在客户端I中的视图a中对数据进行编辑操作,并将更改保存至数据库,则调用客户端I中的客户智能体中的数据更新接口,将客户智能体标记符和数据变更影响到的视图标记符列表包装成数据变更消息,发送到中央智能体。在这里假定数据变更影响到视图a和视图C。
[0017]2)当中央智能体监听到消息后,根据消息类型标志,确认消息为数据变更消息。
[0018]3)中央智能体利用筛选器实现消息精确推送。步骤如下:
a)分析消息内容,根据消息中的客户智能体标记符和受影响视图标记列表。确定消息发送方为客户端I和包含视图a和视图c的标记符的受影响的视图列表。
[0019]b)逐个查询在线客户智能体列表的每个智能体(除数据变更消息的发送者外),判断智能体的当前视图标记是否在受影响的视图标记符列表中。若是,则发送视图同步消息到该客户智能体。若否,则继续,直到遍历完在线客户智能体列表中的所有客户智能体。在这里,受影响的视图为视图a和视图C。根据在线客户端智能体列表的内容:客户端2当前视图为视图b,客户端3当前视图为视图C,客户端4当前视图为a,经过筛选器的筛选处理后,中央智能体发送视图同步消息至客户端3和客户端4,而不会发送视图同步消息至客户端2o
[0020]4)客户端3和客户端4中的智能体分别收到消息,根据消息类型确认是否为视图同步消息。若是,则调用视图更新接口,完成视图同步。
[0021]应当理解的是,对本领域普通技术人员来说,可以根据上述说明加以改进或变换,而所有这些改进和变换都应属于本发明所附权利要求的保护范围。
【主权项】
1.一种多客户端数据修改消息精确推送方法,其特征在于,包括: 部署在每个客户端中的客户智能体和部署在服务器上的中央智能体; 所述客户智能体包括: 消息发送模块,用于向中央智能体发送消息; 消息监听模块,用于监听中央智能体发送的消息; 消息识别模块,用于解析识别各种消息类型;所述消息类型包括状态消息和数据变更消息; 视图标记,用于存储当前客户端显示的视图标记; 视图切换接口,用于接收客户端的通知更新智能体中的视图标记; 视图更新接口,用于连接信息系统客户端中当前视图的视图更新方法; 所述中央智能体包括: 发送模块,用于负责向客户端智能体进行数据推送; 监听模块,用于负责监听客户端智能体发送的消息; 识别模块,用于负责解析、识别各种类型的消息; 客户端管理模块,用于负责存储和维护在线的客户端智能体列表,该列表中包含所有运行的客户端中的智能体; 筛选器,用于负责对客户端刷新需求进行筛选,以实现精确推送; 具体步骤为: .1)中央智能体启动,清空在线客户智能体列表,开启消息监听功能;所述中央智能体部署在服务器上; .2)信息系统客户端启动的同时,载入客户智能体,客户智能体的消息监听模块开始工作; 若用户尚未切换视图,则在信息系统客户端载入默认视图; 若用户在信息系统客户端中切换视图时,建立当前视图的刷新方法与客户智能体的切换接口的链接; 调用客户智能体的视图切换接口,获取信息系统客户端正在显示的视图标记符更新客户智能体的视图标记; . 3)若客户智能体的视图标记符发生变化,客户智能体向中央智能体发送状态消息,所述状态消息的内容包括:消息类型标志、客户智能体标记符和视图标记; . 4 )信息系统客户端中,用户对视图中的数据进行编辑操作 并提交到数据库后,信息系统客户端需调用客户智能体中的发送模块向中央智能体发送数据变更消息,所述数据变更消息的内容包括:消息类型标志、客户智能体标记符和受影响视图标记列表; .5)中央智能体在接收到客户智能体发送的消息后,根据消息类型标志,对消息进行识另Ij,确认消息类型; 若消息为状态消息,若在线客户智能体列表中不存在该消息中的客户智能体标记符,则加入该客户智能体标记符和视图标记;若在线客户智能体列表中已经存在该消息中的客户智能体标记符,则更新该智能体的视图标记; 若消息为数据变更消息,则利用筛选器实现消息精确推送: 具体步骤如下: a)从数据变更消息中获取发送该消息的智能体标记,以及受影响的视图标记符列表; b)遍历在线客户智能体列表的每个客户智能体,判断客户智能体的当前视图标记是否在受影响的视图标记符列表中;若是,则发送视图同步消息到该客户智能体;所述视图同步消息的内容包括:消息类型标志、中央智能体标记符和需要同步的视图标记; .6)客户智能体的消息监听模块,在接收到中央智能体发送的消息后,根据消息类型标志,对消息进行识别,确认消息类型;若消息为视图同步消息,则调用客户智能体的视图更新接口,实现视图同步。
【专利摘要】本发明公开了一种多客户端数据修改消息精确推送方法,该方法采用多智能体集中式体系结构,在信息系统的每个客户端内部部署智能体,这些智能体负责保存客户端当前显示的视图,感知和传递数据变更,中央智能体负责进行视图同步消息的精确推送,通过客户端中的智能体和中央智能体的协作实现多客户端的视图按需刷新。本发明的多客户端数据修改消息精确推送方法,能够实现数据同步消息的精准推送以满足多客户端的差异化数据同步需求;通过视图同步消息的精确推送,排除不必要消息发送,并保证有同步需求的客户端得到实时同步,既减少网络信道资源占用又排除不必要的数据库查询请求降低数据库资源消耗。
【IPC分类】H04L29/08
【公开号】CN105025110
【申请号】CN201510462037
【发明人】梁小兵, 赵菁
【申请人】中冶南方工程技术有限公司
【公开日】2015年11月4日
【申请日】2015年7月31日
当前第2页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1