一种用户状态的管理方法

文档序号:9435923阅读:564来源:国知局
一种用户状态的管理方法
【技术领域】
[0001]本发明涉及即时通讯技术领域,更具体地说,涉及一种用户状态的管理方法。
【背景技术】
[0002]目前頂(即时通讯)中状态是必不可少的关注点,也是頂区别于其他通讯媒介(手机通讯录、微博、博客)的一个特点。现有頂技术中,状态管理主要采用以下两种情况:
[0003]1、全量推送到关系链中的所有在线用户的客户端(如图1),这种方案适用于关系链中人员比较少的,不关心流量的应用场景中。但是对于移动端按流量收费的应用,随着关系链的用户增多,流量会不断增加;并且大部分收到的状态变化数据可能是自己并不关心的,比如很少参与沟通的群中的成员、公司中毫无关联的部门下的用户,也被动的接收这些状态变化数据,如此,既浪费客户端的流量,也浪费了服务器的处理资源。
[0004]2、客户端定时按需拉取指定用户的状态(如图2),这种方案可以由各种接入终端按需定时拉取指定用户的状态,该方案虽然解决了上述问题,但是也带来了另外的问题:拉取的频度太快,浪费资源和流量,大部分拉取时用户状态并没有变化;频度太慢,人员的状态改变没有及时更新。

【发明内容】

[0005]本发明要解决的技术问题在于,针对现有技术中浪费客户端的流量及服务器的处理资源的缺陷,提供一种用户状态的管理方法。
[0006]本发明解决其技术问题所采用的技术方案是:
[0007]构造一种用户状态的管理方法,包括:
[0008]第一客户端添加第二客户端至关注列表中,同时将所述第一客户端添加至所述第二客户端的推送列表中;
[0009]所述第二客户端于状态改变时依据所述推送列表将自身的最新状态信息推送至所述第一客户端;
[0010]所述第一客户端于所述关注列表中删除已关注的第二客户端,同时所述第二客户端于所述推送列表中删除所述第一客户端。
[0011]在本发明所述的管理方法中,所述第一客户端添加第二客户端至关注列表中,同时所述第二客户端将所述第一客户端添加至所述第二客户端的推送列表中的步骤包括:
[0012]所述第一客户端访问业务接入层以添加与所述第二客户端对应的关注用户ID至所述关注列表中,并将所述关注列表存储至数据存储层中;
[0013]所述第一客户端访问所述业务接入层以添加自身的设备ID及设备类型添加至所述推送列表中,并将所述推送列表存储至所述数据存储层中。
[0014]在本发明所述的管理方法中,所述第一客户端访问业务接入层以添加与所述第二客户端对应的关注用户ID至所述关注列表中,并将所述关注列表存储至数据存储层中的步骤包括:
[0015]所述第一客户端向所述业务接入层发送与所述第二客户端对应的添加关注请求;
[0016]所述业务接入层将所述添加关注请求转发至所述数据存储层;
[0017]所述数据存储层添加与所述第二客户端对应的关注用户ID至所述关注列表中;
[0018]所述数据存储层依据所述关注列表向所述业务接入层返回存储结果;
[0019]所述业务接入层依据所述存储结果响应所述客户端的添加关注请求。
[0020]在本发明所述的管理方法中,所述第二客户端于状态改变时依据所述推送列表将自身的最新状态信息推送至所述第一客户端的步骤包括:
[0021]所述第二客户端访问所述业务接入层以发送状态改变请求以及修改自身的登录
?目息O
[0022]所述第二客户端于数据存储层获取自身的推送列表,并将自身的最新状态信息推送到所述推送列表中的所述第一客户端。
[0023]在本发明所述的管理方法中,所述第一客户端于所述关注列表中删除已关注的第二客户端,同时所述第二客户端于所述推送列表中删除所述第一客户端的步骤包括:
[0024]所述第一客户端访问业务接入层以于所述关注列表中删除与所述第二客户端对应的关注用户ID,并将所述关注列表存储至数据存储层中;
[0025]所述第二客户端于自身的推送列表中将所述第一客户端的设备ID及设备类型删除,并将所述推送列表存储至所述数据存储层中。
[0026]在本发明所述的管理方法中,所述第一客户端访问业务接入层以于所述关注列表中删除与所述第二客户端对应的关注用户ID,并将所述关注列表存储至数据存储层中的步骤包括:
[0027]所述第一客户端向所述业务接入层发送与所述第二客户端对应的删除关注请求;
[0028]所述业务接入层将所述删除关注请求转发至所述数据存储层;
[0029]所述数据存储层于所述关注列表中删除与所述第二客户端对应的关注用户ID并通知所述第二客户端修改其自身的推送列表;
[0030]所述数据存储层依据所述推送列表向所述业务接入层返回存储结果;
[0031]所述业务接入层依据所述存储结果响应所述客户端的删除关注请求。
[0032]在本发明所述的管理方法中,所述管理方法中:
[0033]所述当前状态的存储结构为:将登录用户ID作为一级键值存储,所述客户端的设备ID作为二级键值存储。
[0034]在本发明所述的管理方法中,所述管理方法中:
[0035]所述关注列表的存储结构为:将登录用户ID作为一级键值存储,所述客户端的设备ID作为二级键值存储。
[0036]在本发明所述的管理方法中,所述管理方法中:
[0037]所述推送列表的存储结构为:将登录用户ID作为键值存储。
[0038]上述公开的一种用户状态的管理方法具有以下有益效果:高效地管理海量用户的状态;提高了状态改变通知的实时性、高效性及准确性;各接入终端可以按需定制状态方案,达到终端可配置的效果。
【附图说明】
[0039]图1为现有技术的全量推送状态方案示意图;
[0040]图2为现有技术的按需拉取状态方案示意图;
[0041]图3为本发明提供的一种用户状态的管理方法的流程图;
[0042]图4为本发明提供的添加关注的流程图;
[0043]图5为本发明提供的改变状态的流程图;
[0044]图6为本发明提供的删除关注的流程图;
[0045]图7为本发明提供的当前状态的存储结构示意图;
[0046]图8为本发明提供的关注列表的存储结构不意图;
[0047]图9为本发明提供的推送列表的存储结构示意图。
【具体实施方式】
[0048]为了使本发明的目的、技术方案及优点更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅用以解释本发明,并不用于限定本发明。
[0049]本发明提供一种用户状态的管理方法,其目的在于,提供一种高效的、可管理的、可订阅的状态管理方案,以达到支撑海量用户的在线状态管理;状态改变的实时通知;不同接入终端可以按需订阅关联用户的状态,服务端统一处理的需求。该方法用于解决IM系统中海量在线用户的状态管理:既可以实时高效地将自身的状态变化通知到关注自己的用户的客户端;又可以达到不同接入设备按需订阅用户状态的需求,从而使服务端做到统一高效处理。
[0050]本发明采用业务接入层和数据存储层分离的架构设计方案。在业务接入层对用户的业务请求按功能号分别进行不同的业务逻辑处理,并转发用户的状态、关注列表、推送列表到数据存储层;数据存储层程序处理业务接入层程序的数据请求,存储用户的状态、关注列表、推送列表等数据,管理内存数据,并保证数据的安全性。
[0051]参见图3,图3为本发明提供的一种用户状态的管理方法的流程图,该种用户状态的管理方法包括:
[0052]S1、第一客户端添加第二客户端至关注列表中,同时将所述第一客户端添加至所述第二客户端的推送列表中;该步骤SI包括以下子步骤:
[0053]S11、所述第一客户端访问业务接入层以添加与所述第二客户端对应的关注用户ID至所述关注列表中,并将所述关注列表存储至数据存储层中;即将关注的用户ID加到自己的关注列表中,转发到数据存储层进行存储。参加图4,图4为本发明提供的添加关注的流程图;该步骤Sll包括以下子步骤:
[0054]S111、所述第一客户端向所述业务接入层发送与所述第二客户端对应的添加关注请求;
[0055]S112、所述业务接入层将所述添加关注请求转发至所述数据存储层;
[
当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1