Im平台好友列表展现系统及展现方法

文档序号:7925906阅读:154来源:国知局

专利名称::Im平台好友列表展现系统及展现方法
技术领域
:本发明涉及即时通讯
技术领域
,尤其涉及一种IM平台好友列表展现系统及展现方法。
背景技术
:网络即时通讯(IM)平台发展到今天,已经被大多数的网民所接受,成为用户必不可少的通讯手段。IM平台上的基础数据内容,是用户所关心、并与用户产生直接即时通讯联系的用户群体,通常称这个群体为用户的"好友"。随着用户使用IM平台进行通讯的时间增长,用户积累了大量的好友,这些好友汇集成为用户的好友列表(BuddyList),并在IM终端上以好友列表的形式展现给用户。对IM系统而言,好友列表中每个好友的地位和重要性是相同、无差别的;但对用户而言,对每个好友的关注度可能是不相同的,而且关注的角度也会不同,这些将影响到用户对好友的分类形式。图1为现有技术中IM用户按照自然属性区分IM好友的示意图,部分用户会如图1所示,以例如同学、同事等这些自然属性,对IM好友进行区分;而有的用户则会根据IM聊天的频繁程度进行区分。因此,在IM终端上展现好友列表时,需要考虑多种因素,进行分类整理,以便于用户记忆好友,从而增加IM好友列表的黏度。在好友列表的基础上,联系到用户对好友的关注度,现有的IM平台发展出好友分组的概念。用户可以根据自己的意愿,将好友列表划分为若干种类型,并可以对每个好友指定分组属性。用户所自定义的分组以及每个分组下的好友,被记录在服务器的数据库中。用户登录IM客户端时,IM终端会自动和服务器同步分组信息,用户切换不同终端、地点、场景登录时,都能保持分组的一致性。图2及图3各自显示一种现有技术中IM用户记录好友分组关系的方式方式一、为每个好友增加属性,记录其属于哪个分组,如图2所示,每个好友属于一个分组;方式二、为每个分组增加属性,记录分组包含哪些好友,如图3所示,每个分组包含若干好友。其中,方式二会造成同一个好友同时出现在两个以上分组的情况;方式一则只允许好友出现在单独一个分组内,采用方式一,用户管理分组关系更为简单。此外,按照好友是否登录了IM客户端,还可以将IM用户的好友分为在线(online)、离线(offline)两大类状态。以当前流行的IM通讯工具QQ为例来说明,图4为现有技术中QQ的几种用户状态的示意图,可见QQ将在线(online)细分为Q我、忙碌、离开、静音、隐身;好友登录后,根据自身情况,选择在线(online)中不同的小分类,从而可以标志当前的个人情况,以及是否愿意接受IM对话;这些分类和离线(offline)被称为状态(status)。例如,当好友不愿接受IM会话时,可以选择忙碌状态;不愿让他人发现自己已经登录IM客户端,可以选择隐身状态。不同状态的好友,在好友列表的表现上有所不同。综上所述,如图5所示,目前存在一种将好友列表在IM客户端上分组展现的方法。该方法是通过用户设置分组和分组中包含哪些好友来实现的。如图5所示,用户首先设置了"Ncuhome"和"同学"两个分组,然后指定两个分组分别包含哪些好友,并通过用户的IM客户端分开显示两个分组,每个好友的在线或离线状态则通过其用户名前面的图标的来区分;此外,由于该方法中使用如图3所示的方式记录好友分组关系,因此存在同一好友出现在多个分组内的重复现象,例如图5中名为"M群一Ncuhome"的好友就同时出现在两个好友分组中。因此,现有技术中IM平台对好友列表的展现,存在如下缺点一、同一个好友,会出现在多个分组内,不便区分和管理;二、展现方式单一,仅能区分用户自定义分组。
发明内容因此,本发明的目的在于提供一种IM平台好友列表展现系统及展现方法,让用户更加自由和方便地分类定制好友列表的展现方式,可以以多种排列方式实现好友列表在IM客户端的展现。为实现上述目的,本发明提供一种IM平台好友列表展现系统,其包括IM服务器端、若干可与该IM服务器端通讯连接的IM客户端;该IM服务器端具有记录每个用户的好友列表的好友关系数据库、记录每个用户详细信息的用户信息数据库、记录每个用户当前状态的状态数据库;所述IM客户端具有一可分组排序好友列表的分组排序模块、与该分组排序模块通讯连接并按照其分组排序结果来展现好友列表的好友列表展示模块;当用户通过所述IM客户端登录所述IM服务器端后,一方面,该IM服务器端可更新所述好友关系数据库、用户信息数据库、状态数据库内关于该用户的数据,另一方面,该用户可查询所述好友关系数据库、用户信息数据库、状态数据库,从而得到该用户的好友列表、该用户好友的详细信息、该用户好友的状态,该用户可通过所述分组排序模块按照该用户的好友列表、该用户好友的详细信息或该用户好友的状态分组排序该用户的好友列表,然后通过所述好友列表展示模块将经分组排序后的好友列表在该用户的IM客户端上展现。本发明还提供一种IM平台好友列表展现方法,包括步骤51、在IM服务器端记录每个用户的好友列表、记录每个用户的详细信息、记录每个用户的当前状态;52、当用户通过IM客户端登录该IM服务器端后,该IM客户端从该IM服务器端获取该用户的好友列表、该用户好友的详细信息、该用户好友的当前状态;53、该IM客户端按照用户的选择,根据该用户的好友列表、好友的详细信息或该用户好友的当前状态对该用户的好友列表进行分组排序;54、该IM客户端展现经分组排序后的该用户的好友列表。本发明所提供的IM平台好友列表展现系统及展现方法便于用户根据自身关注好友的不同,选择不同的展现方式,方便IM用户在好友列表中查找好友;而且本发明的展现系统及展现方法还具有可扩展性,若要按照新的特性进行新方式的好友列表展现,只需在数据库中添加数据,并作新的分组排序即可。下面结合附图,通过对本发明的具体实施方式详细描述,将使本发明的技术方案及其有益效果显而易见。附图中,图1为现有技术中IM用户按照自然属性区分IM好友的示意图;图2为现有技术中一种IM用户记录好友分组关系的方式的示意图;图3为现有技术中另一种IM用户记录好友分组关系的方式的示意图;图4为现有技术中QQ的几种用户状态的示意图;图5为现有技术中一种将好友列表在IM客户端上分组展现的方法的示意图;图6为本发明IM平台好友列表展现方法一较佳实施例的流程图;图7为本发明IM平台好友列表展现系统的原理结构示意图;图8为本发明IM平台好友列表展现系统一较佳实施例的整体结构示意图;图9为本发明IM平台好友列表展现系统一较佳实施例的好友关系服务器的结构示意图;图10为本发明IM平台好友列表展现系统一较佳实施例的IM登录服务器的结构示意图;图11为本发明IM平台好友列表展现系统一较佳实施例的IM客户端的结构示意图;图12为本发明IM平台好友列表展现系统一较佳实施例的用户自定义分组展现模式的示意图;图13为本发明IM平台好友列表展现系统一较佳实施例的好友最近登录时间展现模式的示意图;图14为本发明IM平台好友列表展现系统一较佳实施例的好友状态展现模式的示意图。具体实施方式为了使本发明所要解决的技术问题、技术方案及有益效果更加清楚明白,以下结合附图及实施例,对本发明进行进一步详细说明。应当理解,此处所描述的具体实施例仅仅用以解释本发明,并不用于限定本发明。参见图6,其为本发明IM平台好友列表展现方法一较佳实施例的流程图。在此较佳实施例中,在用户所使用的IM客户端上展现其好友列表的方法包括如下步骤Sl、在IM服务器端记录每个用户的好友列表、记录每个用户的详细信息、记录每个用户的当前状态;S2、当用户通过IM客户端登录该IM服务器端后,该IM客户端从该IM服务器端获取该用户的好友列表、该用户好友的详细信息、该用户好友的当前状态;S3、该IM客户端按照用户的选择,根据该用户的好友列表、好友的详细信息、该用户好友的当前状态对该用户的好友列表进行分组排序;S4、该IM客户端展现经分组排序后的该用户的好友列表。步骤S1中,所述的好友列表可以是由好友id(标识符)所组成的一组列表以及用户针对其好友的配置信息,其中,好友id的列表可以是用户在使用IM平台的过程中使用添加好友(联系人)的功能而逐渐形成的用户的好友id的集合,而用户针对其好友的配置信息可包括多方面,最常见的就是用户自定义的好友分组信息,还可以是用户自行设定的好友优先级(级别)等信息;所述用户的详细信息可以包括用户的最近登录时间等类似用户感兴趣的信息;所述的用户的当前状态包括用户的在线和离线状态,如忙碌、离开、静音、隐身等。由于现有技术中好友列表展现方式单一,仅能区分用户自定义分组,因此在此较佳实施例中,通过步骤S1,在IM服务器端记录IM用户的更多信息,从而为以这些信息重新划分好友列表的分组提供基础。步骤S2中,当用户通过IM客户端登陆IM服务器后,就可以从IM服务器端获取其感兴趣的好友信息,可以包括好友列表、用户自定义的好友分组、好友最近登录时间、好友当前状态等等,当然,为了处理方便,这些信息可以按照某种数据结构来组织,例如可以以好友列表中的好友id为主关键字来组织一关系数据库,每一好友id可对应其它如自定义分组、登录时间等信息。进而,在步骤S3中,用户可选取其感兴趣的关键字,通过其IM客户端的对这些信息进行分组排序的操作,从而形成新的好友列表分组方式,除了用户的自定义分组模式外,还可包括如好友最近登录时间、好友当前状态等分组模式,例如,最近登录时间的分组模式就是按照好友最近登录时间的先后来重新分组排序好友id,某一时间段内的好友id可以划分为一组。通过步骤S3,用户可以按照其感兴趣的模式分组排序其好友列表。进一步来说,如果用户对好友的某种特性感兴趣,如果这种特性已在IM服务器的记录范围内,则可以直接按照这一特性来分组排序好友列表;如果这种特性不在IM服务器的记录范围内,用户可以在其针对好友列表的配置信息中添加这一项特性,进而进行分类,从而实现好友列表分组展现模式的扩展性。此外,由于采用了排序的操作,用户的好友列表分组可以避免现有技术中同一个好友会出现在多个分组内的缺点。最终,经步骤S3分组排序的好友列表通过步骤S4在用户终端上按照用户的需求展现给用户。此外,由于每个用户的好友列表、每个用户的详细信息、每个用户的当前状态等都是可变化的信息,因此为了保证其相对的准确性,在此较佳实施例中,每次用户通过IM客户端登录IM服务器端,该IM服务器端都更新关于该用户的好友列表、详细信息的记录,而IM服务器端关于用户当前状态的记录则随着该用户在IM客户端的操作而实时更新。参见图7,其为本发明IM平台好友列表展现系统的原理结构示意图。如图7所示,该IM平台好友列表展现系统包括IM客户端1、IM服务器端2;IM服务器端2具有记录每个用户的好友列表的好友关系数据库41、记录每个用户详细信息的用户信息数据库42、记录每个用户当前状态的状态数据库31;IM客户端1具有一可分组排序好友列表的分组排序模块13、与分组排序模块13通讯连接并按照其分组排序结果来展现好友列表的好友列表展示模块14;当用户通过IM客户端1登录所述IM服务器端后,一方面,IM服务器端2可更新好友关系数据库41、用户信息数据库42、状态数据库31内关于该用户的数据,另一方面,该用户可査询好友关系数据库41、用户信息数据库42、状态数据库31,从而得到该用户的好友列表,该用户好友的详细信息,以及该用户好友的状态,该用户可通过分组排序模块13按照该用户的好友列表、该用户好友的详细信息或该用户好友的状态分组排序该用户的好友列表,然后通过好友列表展示模块14将经分组排序后的好友列表在用户的IM客户端l上展现。参见图8—图11,其显示了本发明IM平台好友列表展现系统一较佳实施例的结构图。如图8所示,其为本发明IM平台好友列表展现系统一较佳实施例的整体结构示意图。该较佳实施例的好友列表展现系统主要包括用户的IM登录服务器30、与该IM登录服务器30直接连接的存储好友关系的好友关系服务器40、与IM登录服务器30连接用以修改和呈现好友关系列表的IM客户端,在此,根据系统处理的角度不同,分为IM用户端10和IM好友端20,此处的用户端及好友端只是用以区分用户及其好友之间的关系,并不代表两者的结构或功能不同。IM好友端20为IM用户端10好友列表中的一个好友。IM好友端20的操作(如登录,修改状态等),会影响到他在IM用户端10的展现。参见图9,其为本发明IM平台好友列表展现系统一较佳实施例的好友关系服务器的结构示意图。好友关系服务器40包括好友关系数据库41、用户信息数据库42、与这两个数据库连接用以分类处理外部访问请求的信息处理接口43、和信息处理接口43连接负责与其他模块网络通讯连接的通信接口44。信息处理接口43用以处理以下工作通过通信接口44,接收IM登录服务器30转发来的IM用户端10査询好友列表的请求;接受IM登录服务器30转发来的IM好友端20修改登录用户数据的请求;在好友关系数据库41中查找IM用户端10的好友列表,并根据此列表,在用户信息数据库42中查找每个好友的最近登录时间信息。好友关系数据库41中,为每个用户维护了一个好友列表。该表中包含了好友的id以及对针对好友的配置信息。信息处理接口43接受到好友列表查询请求时,则返回表中所有的用户id。用户信息数据库42则记录了每个用户的详细信息,例如最近是哪一天接入过IM登录服务器30。可以用关系数据库存储这些数据。在一般的关系数据库中,好友关系数据库会存储为如下的表<table>tableseeoriginaldocumentpage11</column></row><table><table>tableseeoriginaldocumentpage12</column></row><table>表二所述的好友关系数据库41和用户信息数据库42可以如下表三合二为一成为一个数据库<table>tableseeoriginaldocumentpage12</column></row><table>表三参见图10,其为本发明IM平台好友列表展现系统一较佳实施例的IM登录服务器的结构示意图。IM登录服务器30包括访问好友关系服务器40的通信接口32、记录用户当前状态的状态数据库31、与IM用户端10和IM好友端20维持网络连接的通信接口33。IM好友端20切换状态时,通过通信接口33将该信息传递给状态数据库31,状态数据库31立刻在数据库中修改对应用户id的状态记录;IM用户端10向IM登录服务器30查询好友的状态时,通信接口33査询状态数据库31,并将好友状态数据返回给IM用户端10;IM用户端10查询好友列表时,通信接口33将请求传递给好友关系服务器访问接口32,进而査询好友关系数据库41;IM登录服务器30收到IM用户端20登录请求时,向好友关系服务器40发起请求,将IM用户端20的登录时间记录在用户信息数据库42。参见图11,其为本发明IM平台好友列表展现系统一较佳实施例的IM客户端的结构示意图。IM客户端1包括负责向IM登录服务器30发起请求和接受回应的登录接口11、在IM客户端1中缓存好友列表的本地好友列表模块12、对好友列表进行分组排序的分组排序模块13、用以将分组排序模块13的结果输出到用户的屏幕上的好友列表展示模块14,从而达到最终显示的效果。当用户使用IM用户端10登录后,向IM登录服务器30发起査询好友列表和分组的请求,好友关系服务器访问接口32将请求转递给好友关系数据库41,得到好友列表和分组后将其保存在本地机器上;然后IM用户端10再发起获取所有好友状态和好友最近登录时间的请求,分别从状态数据库31和用户信息数据库42得到结果。通过以上模块和流程,IM用户端IO获取到了好友列表、分组信息、好友状态、好友最近登录时间这些信息。分组排序模块13根据用户选择,按照用户自定义分组、好友状态、好友最近登录时间,分三种模式进行分组排序显示,三种显示模式的最终效果如图12—图14所示,分别为用户自定义分组展现模式、好友状态展现模式、好友最近登录时间展现模式。以上所述,对于本领域的普通技术人员来说,可以根据本发明的技术方案和技术构思作出其他各种相应的改变和变形,而所有这些改变和变形都应属于本发明所附的权利要求的保护范围。权利要求1、一种IM平台好友列表展现系统,其特征在于,其包括IM服务器端、若干可与该IM服务器端通讯连接的IM客户端;该IM服务器端具有记录每个用户的好友列表的好友关系数据库、记录每个用户详细信息的用户信息数据库、记录每个用户当前状态的状态数据库;所述IM客户端具有一可分组排序好友列表的分组排序模块、与该分组排序模块通讯连接并按照其分组排序结果来展现好友列表的好友列表展示模块。2、如权利要求1所述的IM平台好友列表展现系统,其特征在于,所述用户信息数据库中的用户详细信息包括用户的最近登录时间。3、如权利要求1一2任一所述的IM平台好友列表展现系统,其特征在于,所述好友关系数据库或用户信息数据库的数据可以用关系数据库的形式存储。4、如权利要求1一2任一所述的IM平台好友列表展现系统,其特征在于,所述好友关系数据库和用户信息数据库可以合二为一成为一个数据库。5、如权利要求1一2任一所述的IM平台好友列表展现系统,其特征在于,所述IM服务器端包括一IM登录服务器以及与该IM登录服务器通讯连接的一好友关系服务器;所述状态数据库设置于该IM登录服务器中,该IM登录服务器还包括用于访问所述好友关系服务器的好友关系服务器访问接口、与IM客户端维持网络连接的第一通信接口;所述好友关系数据库和用户信息数据库设置于所述好友关系服务器中,该好友关系服务器中还包括与所述两个数据库连接用以分类处理外部访问请求的信息处理接口、和该信息处理接口连接负责与其他模块网络通讯连接的第二通信接口。6、如权利要求5所述的IM平台好友列表展现系统,其特征在于,所述信息处理接口通过第二通信接口,接收IM登录服务器转发来的IM客户端査询好友列表的请求,接受IM登录服务器转发来的IM客户端修改用户详细信息的请求,接收IM登录服务器转发来的IM客户端修改用户的好友列表的请求;所述信息处理接口还可在好友关系数据库中査找用户的好友列表,并根据此列表,在用户信息数据库中查找该用户每个好友的详细信息。7、如权利要求5所述的IM平台好友列表展现系统,其特征在于,当用户在所述IM客户端上的状态切换时,该用户的当前状态通过第一通信接口传递给状态数据库,状态数据库立刻在数据库中修改对应该用户的状态记录;当用户通过IM客户端向IM登录服务器査询其好友的状态时,第一通信接口查询状态数据库,并将好友状态数据返回给IM客户端;当用户通过IM客户端査询其好友列表时,第一通信接口将请求传递给所述好友关系服务器访问接口,进而查询所述好友关系数据库;当所述IM登录服务器收到用户通过IM客户端发出的登录请求时,向所述好友关系服务器发起请求,将该用户的详细信息记录在所述用户信息数据库。8、如权利要求1所述的IM平台好友列表展现系统,其特征在于,当用户通过IM客户端获取到了用户的好友列表、好友的当前状态、好友的详细信息后,所述分组排序模块可根据用户选择,按照用户的好友列表、好友的详细信息、好友的当前状态,分三种模式进行分组排序显示用户的好友列表。9、一种IM平台好友列表展现方法,其特征在于,包括步骤51、在IM服务器端记录每个用户的好友列表、记录每个用户的详细信息、记录每个用户的当前状态;52、当用户通过IM客户端登录该IM服务器端后,该IM客户端从该IM服务器端获取该用户的好友列表、该用户好友的详细信息、该用户好友的当前状态;53、该IM客户端按照用户的选择,根据该用户的好友列表、好友的详细信息、该用户好友的当前状态对该用户的好友列表进行分组排序;54、该IM客户端展现经分组排序后的该用户的好友列表。10、如权利要求9所述的IM平台好友列表展现方法,其特征在于,每次用户通过IM客户端登录IM服务器端,该IM服务器端都更新关于该用户的好友列表、详细信息的记录,而IM服务器端关于用户当前状态的记录则随着该用户在IM客户端的操作而实时更新。11、如权利要求9或10所述的IM平台好友列表展现方法,其特征在于,所述好友列表包括由好友id所组成的列表以及用户自定义的好友分组信息;所述用户的详细信息包括用户的最近登录时间;所述的用户的当前状态包括用户的在线和离线状态。12、如权利要求9所述的IM平台好友列表展现方法,其特征在于,所述IM客户端可根据用户的选择,按照用户自定义分组、好友最近登录时间、好友当前的状态,分三种模式进行分组排序显示用户的好友列表。全文摘要本发明提供一种IM平台好友列表展现系统及展现方法,该展现系统的IM服务器端具有好友关系数据库、用户信息数据库、状态数据库;该展现系统的IM客户端具有分组排序模块,以及好友列表展示模块;当用户通过IM客户端登录IM服务器端后,IM服务器端更新所述各个数据库内关于该用户的数据;该用户可查询各个数据库,从而得到该用户好友的数据;该用户可通过分组排序模块按照该用户的好友列表、该用户好友的详细信息或该用户好友的状态分组排序该用户的好友列表,然后通过所述好友列表展示模块展现经分组排序后的好友列表。本发明的展现系统及展现方法便于用户选择不同的展现方式,方便IM用户在好友列表中查找好友。文档编号H04L12/58GK101399785SQ20081021677公开日2009年4月1日申请日期2008年10月16日优先权日2008年10月16日发明者强涂申请人:腾讯科技(深圳)有限公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1