CN101997783A - 即时通讯工具联系人结构化分组的实现方法及服务器 - Google Patents
即时通讯工具联系人结构化分组的实现方法及服务器 Download PDFInfo
- Publication number
- CN101997783A CN101997783A CN2009101685058A CN200910168505A CN101997783A CN 101997783 A CN101997783 A CN 101997783A CN 2009101685058 A CN2009101685058 A CN 2009101685058A CN 200910168505 A CN200910168505 A CN 200910168505A CN 101997783 A CN101997783 A CN 101997783A
- Authority
- CN
- China
- Prior art keywords
- group
- instant communication
- communication client
- timestamp
- server
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Granted
Links
Images
Abstract
即时通讯工具联系人结构化分组的实现方法及服务器。方法包括:IM客户端接收用户在某一父级组下创建子组的请求,并创建临时ID;IM客户端将新子组的临时ID、该新子组的父级组ID作为一条记录增加至组关系表中;IM客户端将新创建组的临时ID及父级组ID上传至联系人服务器;联系人服务器为所述新创建组的临时ID分配唯一ID,将该新创建组的唯一ID和父级组ID作为新的组记录更新联系人服务器端联系人数据库中该账号对应的联系人信息;联系人服务器将所述唯一ID发送至所述IM客户端并由IM客户端替换;IM客户端根据联系人服务器发来的子组ID以及其父级组ID创建子组。利用本发明,可以实现对联系人多级分组的灵活管理。
Description
技术领域
本发明涉及互联网技术领域,特别涉及一种即时通讯工具联系人结构化分组的实现方法及服务器。
背景技术
即时通讯(Instant Messaging,IM或称实时通讯),是一种可以为使用者提供网络上类似于私人聊天室(chatroom)中进行的实时通讯的服务。
现在有多种被人们广泛接收和使用的IM通讯工具。用户在使用IM工具过程中,可以添加联系人,以方便与固定好友等联系人的通讯。
现有的众多IM工具中,添加的联系人只能提供一级分组管理。如图1中,示出了某即时通讯工具中联系人的分组方式。其中,所有的联系人可以被分为几个组中,例如被分至家人、朋友、同学、同事这些组中。这样,便于使用者分组管理不同的联系人。
在对现有技术的研究和实践过程中,发明人发现现有技术中存在以下问题:
现有即时通讯工具的联系人分组管理方式中只提供一级分组,较为单一,而对于具有多级关系、或者具有多级从属关系的联系人分组时,无法灵活的提供这样的分组管理,无法满足用户的需求。
发明内容
本申请实施例的目的是提供一种即时通讯工具联系人结构化分组的实现方法及服务器,以实现对联系人多级分组的灵活管理。
为解决上述技术问题,本申请实施例提供一种即时通讯工具联系人结构化分组的实现方法及服务器是这样实现的:
一种即时通讯工具联系人结构化分组的实现方法,包括:
即时通讯客户端接收用户在某一父级组下创建子组的请求,并为该新的子组创建临时ID;
即时通讯客户端将新子组的临时ID、该新子组的父级组ID作为一条记录增加至即时通讯客户端的本地联系人数据库的组关系表中;
即时通讯客户端将新创建组的临时ID及父级组ID上传至联系人服务器;
联系人服务器为所述新创建组的临时ID分配唯一ID,将该新创建组的唯一ID和父级组ID作为新的组记录更新联系人服务器端联系人数据库中该账号对应的联系人信息;
联系人服务器将所述唯一ID发送至所述即时通讯客户端,所述即时通讯客户端将本地联系人数据库组关系表中的所述临时ID替换为所述唯一ID;
即时通讯客户端根据联系人服务器发来的子组ID以及其父级组ID创建子组。
一种即时通讯工具联系人结构化分组的实现方法,包括:
用户在即时通讯客户端选择并拖动即时通讯工具中的第一组时,即时通讯客户端记录第一组的ID;
用户在即时通讯客户端拖动第一组至第二组释放时,即时通讯客户端记录获取第二组的ID;
即时通讯客户端将第一组移动到第二组下,并将第一组的父级组ID设置为第二组的ID,更新至本地联系人数据库的组关系表;
即时通讯客户端将第一组的父级组ID设置为第二组的ID的信息提交至联系人服务器;
联系人服务器根据收到的所述信息,修改联系人数据库中第一组的父级组ID设置为第二组的ID,并在修改成功后通知即时通讯客户端。
一种实现即时通讯工具联系人结构化分组的服务器,包括:
接收单元,用于接收即时通讯客户端上传的新创建组的临时ID及父级组ID;
分配单元,用于为所述新创建组的临时ID分配唯一ID;
更新单元,用于将该新创建组的唯一ID和父级组ID作为新的组记录更新联系人数据库中的联系人信息;
发送单元,用于将所述唯一ID发送至所述即时通讯客户端。
一种实现即时通讯工具联系人结构化分组的服务器,包括:
接收单元,用于接收即时通讯客户端发来的将第一组的父级组ID设置为第二组的ID的信息;
修改单元,用于根据接收单元接收的信息修改联系人数据库中第一组的父级组ID设置为第二组的ID;
通知单元,用于在修改单元修改成功后通知即时通讯客户端。
由以上本申请实施例提供的技术方案可见,即时通讯客户端接收用户在某一账号对应即时通讯工具中新创建的子组,为该新的子组创建临时ID,即时通讯客户端将新子组的临时ID、该新子组的父级组ID作为一条记录增加至即时通讯客户端所述账号即时通讯工具的本地联系人数据库的组关系表中,即时通讯客户端将所述账号对应的新创建组的临时ID及父级组ID上传至联系人服务器,联系人服务器为所述账号的新创建组的临时ID分配唯一ID,将该新创建组的唯一ID和父级组ID作为新的组记录更新联系人服务器端联系人数据库中该账号对应的联系人信息,联系人服务器将所述唯一ID发送至所述即时通讯客户端,所述即时通讯客户端将所述账号即时通讯工具的本地联系人数据库组关系表中的所述临时ID替换为所述唯一ID,即时通讯客户端根据联系人服务器发来的子组ID以及其父级组ID创建子组,这样,可以实现对联系人多级分组的灵活管理。
附图说明
为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请中记载的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动性的前提下,还可以根据这些附图获得其他的附图。
图1为现有技术即时通讯工具中一级分组管理的示意图;
图2为本申请涉及的网络实体及其连接关系示意图;
图3为本申请即时通讯工具联系人结构化分组的实现方法第一实施例的流程图;
图4为本申请即时通讯工具联系人结构化分组的实现方法第一实施例生成的树结构示意图;
图5为本申请即时通讯工具联系人结构化分组的更新方法实施例的流程图;
图6为本申请即时通讯工具联系人结构化分组的删除方法实施例的流程图;
图7为本申请即时通讯工具联系人结构化分组的实现方法第二实施例的流程图;
图8为本发明实现即时通讯工具联系人结构化分组的服务器第一实施例的框图;
图9为本发明实现即时通讯工具联系人结构化分组的服务器第一实施例的另一框图;
图10为本发明实现即时通讯工具联系人结构化分组的服务器第一实施例的另一框图;
图11为本发明实现即时通讯工具联系人结构化分组的服务器第一实施例的另一框图;
图12为本发明实现即时通讯工具联系人结构化分组的服务器第二实施例的框图;
图13为本发明实现即时通讯工具联系人结构化分组的服务器第二实施例的另一框图;
图14为本发明实现即时通讯工具联系人结构化分组的服务器第二实施例的另一框图;
图15为本发明实现即时通讯工具联系人结构化分组的服务器第二实施例的另一框图。
具体实施方式
本申请实施例提供一种即时通讯工具联系人结构化分组的实现方法及服务器。
为了使本技术领域的人员更好地理解本申请中的技术方案,下面将结合本申请实施例中的附图,对本申请实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本申请一部分实施例,而不是全部的实施例。基于本申请中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都应当属于本申请保护的范围。
本申请涉及的网络实体及其连接关系可以如图2所示,包括,即时通讯客户端,网络,联系人服务器。用户可以用自己的账号登录即时通讯客户端,即时通讯则通过网络与联系人服务器进行通信。而且,联系人服务器上一般会保存每一账号的联系人信息,则登陆某账号后的即时通讯工具,可以通过所述联系人服务器获取、同步该账号的联系人。
以下介绍本申请即时通讯工具联系人结构化分组的实现方法第一实施例,图3示出了该方法第一实施例的流程,如图3所示,包括:
S310:即时通讯客户端接收用户在某一父级组下创建子组的请求,并为该新的子组创建临时ID。
用户通过注册的账号登陆即时通讯客户端,选择需要创建子组的父级组,然后发起在该父级组下创建子组的请求,即时通讯客户端为该子组创建临时ID。
即时通讯客户端中,不同分组具有不同的ID,用于在即时通讯内部标识组。这里,用户新建子组后,该新建的子组会被分配一与之对应的ID。
S320:即时通讯客户端将新子组临时ID、新子组的父级组ID作为一条记录增加至即时通讯客户端的本地联系人数据库的组关系表中。
父级组先于所述新建子组已存在,因此,父级组的ID是已存在的。即时通讯客户端的每个联系人分组都有其父级组。最上级的父级组可以是预先设置的,例如可以设置为一个树形结构表示的父子关系的根节点。
即时通讯客户端为新建子组创建临时ID后,查询本地联系人数据库的组关系表中的父级组ID,对应该父级组ID记录新建子组的临时ID。
以下给出一个表格,以表示在即时通讯客户端本地联系人数据库的组关系表中增加新子组ID;
组ID | 组名称 | 父组ID | … |
01 | 集团 | ||
02 | 分公司A | 01 | |
03 | 分公司B | 01 | |
04 | A财务部 | 02 | |
05 | A采购部 | 02 | |
06 | A销售部 | 02 | |
07 | B财务部 | 03 | |
08 | B采购部 | 03 | |
09 | B销售部 | 03 | |
100 | A研发部 | 02 |
表1.增加新子组临时ID
如上面表1的例子中,增加新的子组为A研发部,其临时ID 100,其父级组ID 02被作为一条记录增加至该组关系表中。
S330:即时通讯客户端将新创建组临时ID及父级组ID上传至联系人服务器。
S340:联系人服务器为所述新创建组的临时ID分配唯一ID,将该新创建组唯一ID和父级组ID作为新的组记录更新联系人服务器端联系人数据库中该账号对应的联系人信息。
所述唯一ID在服务器数据库组关系表中具有唯一性。
如上面表1中的例子,例如临时ID 100的A研发部由联系人服务器分配唯一ID 10。
S350:联系人服务器将所述唯一ID发送至所述即时通讯客户端,所述即时通讯客户端将本地联系人数据库组关系表中的所述临时ID替换为所述唯一ID。
如上面的表1,原来临时ID100的A研发部在由联系人服务器分配唯一ID10后,即时通讯客户端本地联系人数据库的组关系表中可以如下所示:
组ID | 组名称 | 父组ID | … |
01 | 集团 | ||
02 | 分公司A | 01 | |
03 | 分公司B | 01 | |
04 | A财务部 | 02 | |
05 | A采购部 | 02 | |
06 | A销售部 | 02 | |
07 | B财务部 | 03 | |
08 | B采购部 | 03 | |
09 | B销售部 | 03 | |
10 | A研发部 | 02 |
表2.增加新子组唯一ID
S360:即时通讯客户端根据联系人服务器发来的子组ID以及其父级组ID创建子组。
即时通讯客户端本地联系人数据库的组关系表中增加一条组记录后,即时通讯客户端可以从本地数据库中获取该增加的组记录数据,根据子组ID、子组名称及其父级组ID重新创建联系人列表结构,从而完成子组的创建。例如在当联系人列表重新刷新后,即时通讯客户端从本地数据库中获取该增加的组记录数据,根据子组ID、子组名称及其父级组ID重新加载联系人列表结构,完成子组的创建。
以上面的表1为例,即时通讯客户端从本地数据库中根据子组ID、子组名称及其父级组ID重新加载联系人列表结构,具体的,可以如下述方式实现:
S1:即时通讯客户端在本地联系人数据库中对组列表做循环检索。
S2:当检索到父级组ID为空的组时,获取该组的ID(即ID 01),并用该组ID创建第一层节点。
S3:当检索到父级组ID为01的组时,利用这些父级组ID为01的组的ID创建第二层的节点组,使其从属于ID 01的组。该步骤即在ID 01组之下创建分别为ID 02、ID 03的组。
S4:当检索到父级组ID为02的组时,利用这些父级组ID为02的组的ID创建第二层的节点组,使其从属于ID 02的组。即创建ID 04、ID 05、ID 06、ID 10的组。该步骤即在ID 02组之下创建分别为ID 04、ID 05、ID 06、ID 10的组。
S5:当检索到父级组ID为03的组时,利用这些父级组ID为02的组的ID创建第二层的节点组,使其从属于ID 02的组。即创建ID 04、ID 05、ID 06的组。该步骤即在ID 02组之下创建分别为ID 04、ID 05、ID 06的组。
这样,通过上述步骤生成树结构并完成了子组的创建,所生成的树结构如图4所示。
本申请第一实施例还可以实现在不同的父级组下创建相同的子组,即该等父级组下的某一子组具有相同名称、组ID以及相同的联系人。举例来说,在父级组“分公司A”下创建一子组“A和B的供应商”,在父级组“分公司B”下同样创建一子组“A和B的供应商”。这样可以更加方便查找到分公司A和分公司B共同的供应商。其实现方法可通过在组关系表中增加两条记录,详见表3。这样在父级组ID 02和ID 03下均创建了子组ID 10。
表3在不同父级组中创建相同分组
本申请第一实施例还可实现将同一个联系人分入多个不同的分组中,其实现方法则为在联系人列表中增加相应的记录,具体实例见表4。
编号 | 联系人ID | 联系人名称 | 所属组ID | … |
0001 | R001 | 同学兼同事 | 01 | |
0002 | R002 | 家人1 | 02 | |
0003 | R003 | 同学2 | 01 | |
0004 | R004 | 同事1 | 03 | |
0005 | R005 | 同事2 | 03 | |
0006 | R006 | 同事3 | 03 | |
0007 | R007 | 同事4 | 03 | |
0008 | R008 | 同事5 | 03 | |
0009 | R009 | 同学3 | 01 | |
0010 | R001 | 同学兼同事 | 03 |
表4将同一联系人分入不同的分组
表4所示为将同一联系人R001分入组ID 01和ID 03下,在创建联系人列表时只需创建编号为0001和0010的两条记录,该两条记录中联系人ID均为R001,所属组ID分别为01和03。
上述第一实施例提供了新的即时通讯联系人结构化分组管理实现方法,很好的解决了即时通讯客户端无法管理多级分组的技术问题,并且针对目前客户端组操作的准确性和便捷性都给出了最优的解决方案,提高了组操作的客户端相应速度,降低了用户的使用成本。
以下介绍上述第一实施例的一个具体例子,该例子的场景如下:用户为一个大卖家,卖多种不同类型的商品,主要经营商品为服装类:有裤子、上衣等;食品类:有海鲜、果脯等。该卖家的进货和出货渠道都为网上。该用户日常需要通过IM客户端来管理联系人,以方便联系进货商和即时通知买家新货。因此需要将进货商和买家进行按照不同类目分组管理。按照以上场景,该例子可以设定为:A表示进货商,A1表示服装类进货商,A11表示裤子进货商,A12表示上衣进货商,A2表示为食品类进货商,A21表示海鲜进货商,A22表示果脯进货商;B表示买家分组,B1表示服装类买家,B11表示裤子买家,B12表示上衣买家,B2表示为食品类买家,B21表示海鲜买家,B22表示果脯买家。
则该具体例子可以如下:
T1:用户在IM的联系人列表中建立两个一级分组,每个分组ID分别对应A、B。其中,根据用户的需求,每个组可以有不同的组名,例如A为“进货商”,B为“买家”。
T2:在A组(即进货商组)下创建子组A1。A1的组名例如可以为“服装”。
该创建子组的过程可以如上面S310至S350所示:
用户在一账号的即时通讯客户端中新创建的子组“服装”,客户端为该新的子组创建临时ID,为A1;
客户端将新子组的临时ID A1、该新子组的父级组ID A作为一条记录增加至客户端所述账号即时通讯客户端的本地联系人数据库的组关系表中;
客户端将所述账号对应的新创建组的临时ID A1及父级组ID A上传至联系人服务器;
联系人服务器为所述账号的新创建组的临时ID分配唯一ID(例如为CONTACT_CLASS_A1),将该新创建组的唯一ID CONTACT_CLASS_A1和父级组ID A作为新的组记录更新联系人服务器端联系人数据库中该账号对应的联系人信息;
联系人服务器将所述唯一ID CONTACT_CLASS_A1发送至所述客户端,所述客户端将所述账号即时通讯客户端的本地联系人数据库组关系表中的所述临时ID替换为所述唯一ID CONTACT_CLASS_A1。
T3:在A1组(即服装组)下创建子组A11。A11的组名可以为“裤子”,即将为裤子进货商的联系人都添加到该A1组下。
该创建子组的过程符合上面S310至S350所述,也与上述建立A1的过程类似,不再赘述,下同。
T4:在A1组(即服装组)下创建子组A12。A12的组名可以为“上衣”,即将上衣进货商的联系人都添加到该A1组中。
T5:在A组(即进货商组)下创建子组A2。A2的组名可以为“食品”。
T6:在A2组(即食品组)下创建子组A21。A21的组名可以为“海鲜”,即将海鲜进货商的联系人都添加到该组中。
T7:在A2组(即食品组)下创建子组A22。A22的组名可以为“果脯”,即将果脯进货商的联系人都添加到该组中。
T8:在B组(即买家组)下创建子组B1。B1的组名可以为“服装”。
T9:在B1组(即服装组)下创建子组B11。B11的组名可以为“裤子”,即将常来买裤子的买家联系人都添加到该组中。
T10:在B1组(服装组)下创建子组B12。B12的组名可以为“上衣”,即将常来买上衣的买家联系人都添加到该组中。
T11:在B组(即买家组)下组创建子组B2。B2的组名可以为“食品”。
T12:在B2组(即食品组)下创建子组B21。B21的组名可以为“海鲜”,即将常来买海鲜的买家联系人都添加到该组中。
T13:在B2组(即食品组)下创建子组B22。组名可以为“果脯”,即将常来买果脯的买家联系人都添加到该组中。
以上的分组操作便于用户对联系人进行管理,卖家如果缺货可以快速定位找到进货商;卖家如果有新货到了,可以快速定位到相关的买家。这样,便于用户管理及精准定位联系人。
上述第一实施例中,还可以包括:
联系人服务器更新所述联系人数据库中联系人信息的操作完成后,标记该操作的时间戳,并将该时间戳通知即时通讯客户端。
这样,联系人服务器端和客户端上都保存有联系人信息修改等操作的时间戳。
基于上述客户端和联系人服务器端分别存有的时间戳,后续不论用户在哪个客户端上登录同一账号的所述即时通讯客户端,都可以采用以下过程实现客户端上的联系人信息特别是其结构化分组与联系人服务器上的保持一致,具体包括:
S410:用户登录即时通讯客户端时,即时通讯客户端上传本地联系人最后一次操作的时间戳至联系人服务器。
S420:联系人服务器对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳,并将比较结果返回至即时通讯客户端,即时通讯客户端根据返回的比较结果加载联系人组结构。
所述即时通讯客户端根据返回的比较结果加载联系人组结构,具体包括以下几种情况:
如果即时通讯客户端接收的返回结果为相同,则即时通讯客户端直接加载本地联系人数据库组关系表中组结构的联系人;
如果即时通讯客户端接收的返回结果为即时通讯客户端上传的时间戳迟于服务器自身保存的时间戳,则即时通讯客户端直接加载本地联系人数据库组关系表中组结构的联系人,并发送联系人组结构更新消息至联系人服务器,联系人服务器接收到该更新消息后,将联系人服务器保存的联系人数据库组关系表中的组结构更新为与即时通讯客户端保存的一致,并标记该操作的时间戳,或将自身的时间戳设置为与即时通讯客户端的一致;
如果联系人服务器对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳的结果是服务器自身保存的时间戳迟于即时通讯客户端的时间戳,则联系人服务器将保存的联系人数据库组关系表中的组结构发送至即时通讯客户端,即时通讯客户端加载接收的联系人组结构,并将自身的联系人组结构更新为接收到的联系人组结构,且标记该操作的时间戳,或将自身的时间戳设置为与联系人服务器的一致。
上述即时通讯联系人结构化分组的更新方法,灵活的实现了即时通讯客户端与联系人服务器端联系人结构化分组相一致的目的。
以下介绍基于上述第一实施例实现删除分组的方法,如图6所示,包括:
S510:用户在即时通讯客户端删除组时,即时通讯客户端先检查该组以及该组的所有子组是否包含有联系人,如果包含联系人,则提示用户是否结束本次删除操作;如果不包含联系人,或用户选择不结束本次删除操作,则即时通讯客户端在本地数据库中删除该组及其子组。
S520:即时通讯客户端将该组及其子组的删除信息提交至联系人服务器。
S530:联系人服务器收到所述删除信息后,删除联系人服务器端联系人数据库中该组及其子组。
通过上述过程,可以实现删除联系人列表中的分组,并保持即时通讯客户端中删除分组后的联系人列表与联系人服务器端的一致。
以下介绍本申请即时通讯客户端联系人结构化分组的实现方法第二实施例,图7示出了该方法第二实施例的流程,如图7所示,包括:
S610:用户在即时通讯客户端选择并拖动即时通讯客户端中的第一组时,即时通讯客户端记录第一组的ID。
S620:用户在即时通讯客户端拖动第一组至第二组释放时,即时通讯客户端记录获取第二组的ID。
用户鼠标拖动到第二组的位置时,利用鼠标释放的响应事件,调用系统函数获取到第二组的ID。
S630:即时通讯客户端将第一组移动到第二组下,并将第一组的父级组ID设置为第二组的ID,更新至本地联系人数据库的组关系表。
S640:即时通讯客户端将第一组的父级组ID设置为第二组的ID的信息提交至联系人服务器。
S650:联系人服务器根据收到的所述信息,修改联系人数据库中第一组的父级组ID设置为第二组的ID,并在修改成功后通知即时通讯客户端。
类似的,上述第二实施例中,还可以包括:
联系人服务器修改所述联系人数据库中联系人信息的操作完成后,标记该操作的时间戳,并将该时间戳通知即时通讯客户端。
这样,联系人服务器端和即时通讯客户端上都保存有联系人信息修改等操作的时间戳。
类似的,基于上述即时通讯客户端和联系人服务器端分别存有的时间戳,后续不论用户在哪个即时通讯客户端上登录同一账号的所述即时通讯客户端,都可以采用以下过程实现即时通讯客户端上的联系人信息特别是其结构化分组与联系人服务器上的保持一致,如图5所示,具体包括:
S410:用户登录即时通讯客户端时,即时通讯客户端上传本地联系人最后一次操作的时间戳至联系人服务器。
S420:联系人服务器对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳,并将比较结果返回至即时通讯客户端,即时通讯客户端根据返回的比较结果加载联系人组结构。
所述即时通讯客户端根据返回的比较结果加载联系人组结构,具体包括以下几种情况:
如果即时通讯客户端接收的返回结果为相同,则即时通讯客户端直接加载本地联系人数据库组关系表中组结构的联系人;
如果即时通讯客户端接收的返回结果为即时通讯客户端上传的时间戳迟于服务器自身保存的时间戳,则即时通讯客户端直接加载本地联系人数据库组关系表中组结构的联系人,并发送联系人组结构更新消息至联系人服务器,联系人服务器接收到该更新消息后,将联系人服务器保存的联系人数据库组关系表中的组结构更新为与即时通讯客户端保存的一致,并标记该操作的时间戳,或将自身的时间戳设置为与即时通讯客户端的一致;
如果联系人服务器对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳的结果是服务器自身保存的时间戳迟于即时通讯客户端的时间戳,则联系人服务器将保存的联系人数据库组关系表中的组结构发送至即时通讯客户端,即时通讯客户端加载接收的联系人组结构,并将自身的联系人组结构更新为接收到的联系人组结构,且标记该操作的时间戳。或将自身的时间戳设置为与联系人服务器的一致。
上述即时通讯联系人结构化分组的更新方法,灵活的实现了即时通讯客户端与联系人服务器端联系人结构化分组相一致的目的。
以下介绍基于上述第一实施例实现删除分组的方法,如图6所示,包括:
S510:用户在即时通讯客户端删除一个组时,即时通讯客户端先检查该组以及该组的所有子组是否包含有联系人,
如果包含联系人,则提示用户是否结束本次删除操作;
如果不包含联系人,或用户选择不结束本次删除操作,则即时通讯客户端在本地数据库中删除该组及其子组。
S520:即时通讯客户端将该组及其子组的删除信息提交至联系人服务器。
S530:联系人服务器端收到所述删除信息后,删除联系人服务器端联系人数据库中该组及其子组。
通过上述过程,可以实现删除联系人列表中的分组,并保持即时通讯客户端中删除分组后的联系人列表与联系人服务器端的一致。
以下介绍本发明实现即时通讯客户端联系人结构化分组的服务器第一实施例,图8示出了该服务器实施例的框图,如图8所示,包括:
接收单元71,用于接收即时通讯客户端上传的新创建组的临时ID及父级组ID;
分配单元72,用于为所述新创建组的临时ID分配唯一ID;
更新单元73,用于将该新创建组的唯一ID和父级组ID作为新的组记录更新联系人数据库中的联系人信息;
发送单元74,用于将所述唯一ID发送至所述即时通讯客户端。
优选地,所述服务器还可以如图9所示,还包括时间戳标记单元75,用于在更新所述联系人数据库中联系人信息的操作完成后,标记该操作的时间戳,并将该时间戳通知即时通讯客户端。
优选地,所述服务器还可以如图10所示,还包括时间戳比较单元76,比较结果返回单元77,其中,
时间戳比较单元76,用于接收即时通讯客户端上传的最后一次操作的时间戳;
比较结果返回单元77,用于对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳,并将比较结果返回至即时通讯客户端。
优选地,所述服务器还可以如图11所示,还包括删除单元78,用于在收到即时通讯客户端发来的删除组及其子组的信息后,删除联系人服务器端联系人数据库中该组及其子组。
利用上述实施例实现即时通讯客户端联系人结构化分组的方法、更新方法、删除方法与前述图3、4、5所示的方法类似,在此不再赘述。
以下介绍实现即时通讯客户端联系人结构化分组的服务器第二实施例,图12示出了该服务器第二实施例的框图,如图12所示,包括:
接收单元111,用于接收即时通讯客户端发来的将第一组的父级组ID设置为第二组的ID的信息;
修改单元112,用于根据接收单元接收的信息修改联系人数据库中第一组的父级组ID设置为第二组的ID;
通知单元113,用于在修改单元修改成功后通知即时通讯客户端。
优选地,所述服务器还可以如图13所示,还包括时间戳标记单元114,用于在修改所述联系人数据库中联系人信息的操作完成后,标记该操作的时间戳,并将该时间戳通知即时通讯客户端。
优选地,所述服务器还可以如图14所示,还包括时间戳比较单元115,比较结果返回单元116,其中,
时间戳比较单元115,用于接收即时通讯客户端上传的最后一次操作的时间戳;
比较结果返回单元116,用于对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳,并将比较结果返回至即时通讯客户端。
优选地,所述服务器还可以如图15所示,还包括删除单元117,用于在收到即时通讯客户端发来的删除组及其子组的信息后,删除联系人服务器端联系人数据库中该组及其子组。
利用上述实施例实现即时通讯客户端联系人结构化分组的方法、更新方法、删除方法与前述图7、5、6所示的方法类似,在此不再赘述。
为了描述的方便,描述以上装置时以功能分为各种单元分别描述。当然,在实施本申请时可以把各单元的功能在同一个或多个软件和/或硬件中实现。
通过以上的实施方式的描述可知,本领域的技术人员可以清楚地了解到本申请可借助软件加必需的通用硬件平台的方式来实现。基于这样的理解,本申请的技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在存储介质中,如ROM/RAM、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本申请各个实施例或者实施例的某些部分所述的方法。
本说明书中的各个实施例均采用递进的方式描述,各个实施例之间相同相似的部分互相参见即可,每个实施例重点说明的都是与其他实施例的不同之处。尤其,对于系统实施例而言,由于其基本相似于方法实施例,所以描述的比较简单,相关之处参见方法实施例的部分说明即可。
本申请可用于众多通用或专用的计算系统环境或配置中。例如:个人计算机、服务器计算机、手持设备或便携式设备、平板型设备、多处理器系统、基于微处理器的系统、置顶盒、可编程的消费电子设备、网络PC、小型计算机、大型计算机、包括以上任何系统或设备的分布式计算环境等等。
本申请可以在由计算机执行的计算机可执行指令的一般上下文中描述,例如程序模块。一般地,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。也可以在分布式计算环境中实践本申请,在这些分布式计算环境中,由通过通信网络而被连接的远程处理设备来执行任务。在分布式计算环境中,程序模块可以位于包括存储设备在内的本地和远程计算机存储介质中。
虽然通过实施例描绘了本申请,本领域普通技术人员知道,本申请有许多变形和变化而不脱离本申请的精神,希望所附的权利要求包括这些变形和变化而不脱离本申请的精神。
Claims (17)
1.一种即时通讯工具联系人结构化分组的实现方法,其特征在于,包括:
即时通讯客户端接收用户在某一父级组下创建子组的请求,并为该新的子组创建临时ID;
即时通讯客户端将新子组的临时ID、该新子组的父级组ID作为一条记录增加至即时通讯客户端的本地联系人数据库的组关系表中;
即时通讯客户端将新创建组的临时ID及父级组ID上传至联系人服务器;
联系人服务器为所述新创建组的临时ID分配唯一ID,将该新创建组的唯一ID和父级组ID作为新的组记录更新联系人服务器端联系人数据库中该账号对应的联系人信息;
联系人服务器将所述唯一ID发送至所述即时通讯客户端,所述即时通讯客户端将本地联系人数据库组关系表中的所述临时ID替换为所述唯一ID;
即时通讯客户端根据联系人服务器发来的子组ID以及其父级组ID创建子组。
2.如权利要求1所述的方法,其特征在于,还包括:
联系人服务器更新所述联系人数据库中联系人信息的操作完成后,标记该操作的时间戳,并将该时间戳通知即时通讯客户端;
用户登录即时通讯客户端时,即时通讯客户端上传本地联系人最后一次操作的时间戳至联系人服务器;
联系人服务器对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳,并将比较结果返回至即时通讯客户端,即时通讯客户端根据返回的比较结果加载联系人组结构。
3.如权利要求2所述的方法,其特征在于,所述即时通讯客户端根据返回的比较结果加载联系人组结构,包括:
如果即时通讯客户端接收的返回结果为相同,则即时通讯客户端直接加载本地联系人数据库组关系表中组结构的联系人;
如果即时通讯客户端接收的返回结果为即时通讯客户端上传的时间戳迟于服务器自身保存的时间戳,则即时通讯客户端直接加载本地联系人数据库组关系表中组结构的联系人,并发送联系人组结构更新消息至联系人服务器,联系人服务器接收到该更新消息后,将联系人服务器保存的联系人数据库组关系表中的组结构更新为与即时通讯客户端保存的一致,并标记该操作的时间戳,或将自身的时间戳设置为与即时通讯客户端的一致;
如果联系人服务器对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳的结果是服务器自身保存的时间戳迟于即时通讯客户端的时间戳,则联系人服务器将保存的联系人数据库组关系表中的组结构发送至即时通讯客户端,即时通讯客户端加载接收的联系人组结构,并将自身的联系人组结构更新为接收到的联系人组结构,且标记该操作的时间戳,或将自身的时间戳设置为与联系人服务器的一致。
4.如权利要求1所述的方法,其特征在于,还包括:
用户在即时通讯客户端删除组时,即时通讯客户端先检查该组以及该组的所有子组是否包含有联系人,如果包含联系人,则提示用户是否结束本次删除操作,如果不包含联系人,或用户选择不结束本次删除操作,则即时通讯客户端在本地数据库中删除该组及其子组;
即时通讯客户端将该组及其子组的删除信息提交至联系人服务器;
联系人服务器端收到所述删除信息后,删除联系人服务器端联系人数据库中该组及其子组。
5.一种即时通讯工具联系人结构化分组的实现方法,其特征在于,包括:
用户在即时通讯客户端选择并拖动即时通讯工具中的第一组时,即时通讯客户端记录第一组的ID;
用户在即时通讯客户端拖动第一组至第二组释放时,即时通讯客户端记录获取第二组的ID;
即时通讯客户端将第一组移动到第二组下,并将第一组的父级组ID设置为第二组的ID,更新至本地联系人数据库的组关系表;
即时通讯客户端将第一组的父级组ID设置为第二组的ID的信息提交至联系人服务器;
联系人服务器根据收到的所述信息,修改联系人数据库中第一组的父级组ID设置为第二组的ID,并在修改成功后通知即时通讯客户端。
6.如权利要求5所述的方法,其特征在于,还包括:
联系人服务器修改所述联系人数据库中联系人信息的操作完成后,标记该操作的时间戳,并将该时间戳通知即时通讯客户端。
7.如权利要求6所述的方法,其特征在于,还包括:
用户登录即时通讯客户端时,即时通讯客户端上传本地联系人最后一次操作的时间戳至联系人服务器;
联系人服务器对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳,并将比较结果返回至即时通讯客户端,即时通讯客户端根据返回的比较结果加载联系人组结构。
8.如权利要求7所述的方法,其特征在于,所述即时通讯客户端根据返回的比较结果加载联系人组结构,包括:
如果即时通讯客户端接收的返回结果为相同,则即时通讯客户端直接加载本地联系人数据库组关系表中组结构的联系人;
如果即时通讯客户端接收的返回结果为即时通讯客户端上传的时间戳迟于服务器自身保存的时间戳,则即时通讯客户端直接加载本地联系人数据库组关系表中组结构的联系人,并发送联系人组结构更新消息至联系人服务器,联系人服务器接收到该更新消息后,将联系人服务器保存的联系人数据库组关系表中的组结构更新为与即时通讯客户端保存的一致,并标记该操作的时间戳,或将自身的时间戳设置为与即时通讯客户端的一致;
如果联系人服务器对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳的结果是服务器自身保存的时间戳迟于即时通讯客户端的时间戳,则联系人服务器将保存的联系人数据库组关系表中的组结构发送至即时通讯客户端,即时通讯客户端加载接收的联系人组结构,并将自身的联系人组结构更新为接收到的联系人组结构,且标记该操作的时间戳,或将自身的时间戳设置为与联系人服务器的一致。
9.如权利要求5所述的方法,其特征在于,还包括:
用户在即时通讯客户端删除组时,即时通讯客户端先检查该组以及该组的所有子组是否包含有联系人,如果包含联系人,则提示用户是否结束本次删除操作,如果不包含联系人,或用户选择不结束本次删除操作,则即时通讯客户端在本地数据库中删除该组及其子组;
即时通讯客户端将该组及其子组的删除信息提交至联系人服务器;
联系人服务器端收到所述删除信息后,删除联系人服务器端联系人数据库中该组及其子组。
10.一种实现即时通讯工具联系人结构化分组的服务器,其特征在于,包括:
接收单元,用于接收即时通讯客户端上传的新创建组的临时ID及父级组ID;
分配单元,用于为所述新创建组的临时ID分配唯一ID;
更新单元,用于将该新创建组的唯一ID和父级组ID作为新的组记录更新联系人数据库中的联系人信息;
发送单元,用于将所述唯一ID发送至所述即时通讯客户端。
11.如权利要求10所述的服务器,其特征在于,还包括时间戳标记单元,用于在更新所述联系人数据库中联系人信息的操作完成后,标记该操作的时间戳,并将该时间戳通知即时通讯客户端。
12.如权利要求11所述的服务器,其特征在于,还包括时间戳比较单元,比较结果返回单元,其中,
时间戳比较单元,用于接收即时通讯客户端上传的最后一次操作的时间戳;
比较结果返回单元,用于对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳,并将比较结果返回至即时通讯客户端。
13.如权利要求12所述的服务器,其特征在于,还包括删除单元,用于在收到即时通讯客户端发来的删除组及其子组的信息后,删除联系人服务器端联系人数据库中该组及其子组。
14.一种实现即时通讯工具联系人结构化分组的服务器,其特征在于,包括:
接收单元,用于接收即时通讯客户端发来的将第一组的父级组ID设置为第二组的ID的信息;
修改单元,用于根据接收单元接收的信息修改联系人数据库中第一组的父级组ID设置为第二组的ID;
通知单元,用于在修改单元修改成功后通知即时通讯客户端。
15.如权利要求14所述的服务器,其特征在于,还包括时间戳标记单元,用于在修改所述联系人数据库中联系人信息的操作完成后,标记该操作的时间戳,并将该时间戳通知即时通讯客户端。
16.如权利要求15所述的服务器,其特征在于,还包括时间戳比较单元,比较结果返回单元,其中,
时间戳比较单元,用于接收即时通讯客户端上传的最后一次操作的时间戳;
比较结果返回单元,用于对比自身保存的联系人最后一次操作的时间戳与即时通讯客户端上传的时间戳,并将比较结果返回至即时通讯客户端。
17.如权利要求16所述的服务器,其特征在于,还包括删除单元,用于在收到即时通讯客户端发来的删除组及其子组的信息后,删除联系人服务器端联系人数据库中该组及其子组。
Priority Applications (2)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910168505.8A CN101997783B (zh) | 2009-08-21 | 2009-08-21 | 即时通讯工具联系人结构化分组的实现方法及服务器 |
HK11103959.0A HK1149864A1 (zh) | 2009-08-21 | 2011-04-19 | 即時通訊工具聯繫人結構化分組的實現方法及服務器 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN200910168505.8A CN101997783B (zh) | 2009-08-21 | 2009-08-21 | 即时通讯工具联系人结构化分组的实现方法及服务器 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101997783A true CN101997783A (zh) | 2011-03-30 |
CN101997783B CN101997783B (zh) | 2014-10-29 |
Family
ID=43787395
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN200910168505.8A Active CN101997783B (zh) | 2009-08-21 | 2009-08-21 | 即时通讯工具联系人结构化分组的实现方法及服务器 |
Country Status (2)
Country | Link |
---|---|
CN (1) | CN101997783B (zh) |
HK (1) | HK1149864A1 (zh) |
Cited By (12)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102281352A (zh) * | 2011-07-29 | 2011-12-14 | 华为技术有限公司 | 联系人列表显示方法及终端 |
WO2014067305A1 (zh) * | 2012-11-01 | 2014-05-08 | 惠州Tcl移动通信有限公司 | 一种联系人信息分组处理方法及装置 |
CN104182899A (zh) * | 2013-12-19 | 2014-12-03 | 南宁市磁汇科技有限公司 | 实现帐户分组的方法 |
CN104660483A (zh) * | 2013-11-21 | 2015-05-27 | 腾讯科技(上海)有限公司 | 群组通讯方法、服务端及系统 |
JP2016522477A (ja) * | 2014-03-20 | 2016-07-28 | シャオミ・インコーポレイテッド | グループ作成方法、グループ脱退方法、装置、プログラム、及び記録媒体 |
CN105916121A (zh) * | 2015-12-12 | 2016-08-31 | 乐视移动智能信息技术(北京)有限公司 | 移动终端中群组数据与非群组数据同步的方法和装置 |
CN107196846A (zh) * | 2017-04-28 | 2017-09-22 | 维沃移动通信有限公司 | 一种群聊天方法及移动终端 |
CN107368238A (zh) * | 2016-05-11 | 2017-11-21 | 腾讯科技(深圳)有限公司 | 一种信息处理方法及终端 |
CN107592206A (zh) * | 2017-09-21 | 2018-01-16 | 林碧琴 | 一种群消息处理方法 |
CN107656936A (zh) * | 2016-07-26 | 2018-02-02 | 北京北信源软件股份有限公司 | 一种即时通信领域的终端数据库构建方法 |
US10079787B2 (en) | 2014-03-20 | 2018-09-18 | Xiaomi Inc. | Method and apparatus for creating group and exiting group |
WO2020263210A1 (en) * | 2019-06-28 | 2020-12-30 | Turkcell Teknoloji Arastirma Ve Gelistirme Anonim Sirketi | System and method for alerting a plurality of persons in group chats in instant messaging applications |
Family Cites Families (4)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN1315292C (zh) * | 2002-09-09 | 2007-05-09 | 腾讯科技(深圳)有限公司 | 一种在网络通讯中利用一个号码来标识一个用户群组的实现方法 |
CN100421399C (zh) * | 2005-05-27 | 2008-09-24 | 腾讯科技(深圳)有限公司 | 一种分布式群组通信管理系统以及创建群组的方法 |
CN101179519B (zh) * | 2006-12-22 | 2010-07-21 | 腾讯科技(深圳)有限公司 | 一种自定义群组标签的方法及系统 |
CN101227422B (zh) * | 2007-11-26 | 2012-01-25 | 腾讯科技(深圳)有限公司 | 一种联系人所在分组的定位方法及系统 |
-
2009
- 2009-08-21 CN CN200910168505.8A patent/CN101997783B/zh active Active
-
2011
- 2011-04-19 HK HK11103959.0A patent/HK1149864A1/zh unknown
Cited By (18)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN102281352A (zh) * | 2011-07-29 | 2011-12-14 | 华为技术有限公司 | 联系人列表显示方法及终端 |
CN102281352B (zh) * | 2011-07-29 | 2014-02-26 | 华为技术有限公司 | 联系人列表显示方法及终端 |
US9013427B2 (en) | 2011-07-29 | 2015-04-21 | Huawei Technologies Co., Ltd. | Method and terminal of displaying contact list |
WO2014067305A1 (zh) * | 2012-11-01 | 2014-05-08 | 惠州Tcl移动通信有限公司 | 一种联系人信息分组处理方法及装置 |
CN104660483A (zh) * | 2013-11-21 | 2015-05-27 | 腾讯科技(上海)有限公司 | 群组通讯方法、服务端及系统 |
CN104660483B (zh) * | 2013-11-21 | 2020-05-12 | 腾讯科技(上海)有限公司 | 群组通讯方法、服务端及系统 |
CN104182899A (zh) * | 2013-12-19 | 2014-12-03 | 南宁市磁汇科技有限公司 | 实现帐户分组的方法 |
JP2016522477A (ja) * | 2014-03-20 | 2016-07-28 | シャオミ・インコーポレイテッド | グループ作成方法、グループ脱退方法、装置、プログラム、及び記録媒体 |
KR101803136B1 (ko) | 2014-03-20 | 2017-12-28 | 시아오미 아이엔씨. | 그룹 탈퇴 방법, 장치, 프로그램 및 저장매체 |
US10079787B2 (en) | 2014-03-20 | 2018-09-18 | Xiaomi Inc. | Method and apparatus for creating group and exiting group |
CN105916121A (zh) * | 2015-12-12 | 2016-08-31 | 乐视移动智能信息技术(北京)有限公司 | 移动终端中群组数据与非群组数据同步的方法和装置 |
CN107368238A (zh) * | 2016-05-11 | 2017-11-21 | 腾讯科技(深圳)有限公司 | 一种信息处理方法及终端 |
CN107656936A (zh) * | 2016-07-26 | 2018-02-02 | 北京北信源软件股份有限公司 | 一种即时通信领域的终端数据库构建方法 |
CN107656936B (zh) * | 2016-07-26 | 2021-03-02 | 北京北信源软件股份有限公司 | 一种即时通信领域的终端数据库构建方法 |
CN107196846A (zh) * | 2017-04-28 | 2017-09-22 | 维沃移动通信有限公司 | 一种群聊天方法及移动终端 |
CN107196846B (zh) * | 2017-04-28 | 2020-05-26 | 维沃移动通信有限公司 | 一种群聊天方法及移动终端 |
CN107592206A (zh) * | 2017-09-21 | 2018-01-16 | 林碧琴 | 一种群消息处理方法 |
WO2020263210A1 (en) * | 2019-06-28 | 2020-12-30 | Turkcell Teknoloji Arastirma Ve Gelistirme Anonim Sirketi | System and method for alerting a plurality of persons in group chats in instant messaging applications |
Also Published As
Publication number | Publication date |
---|---|
CN101997783B (zh) | 2014-10-29 |
HK1149864A1 (zh) | 2011-10-14 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101997783B (zh) | 即时通讯工具联系人结构化分组的实现方法及服务器 | |
US8005498B2 (en) | Mobile group data distribution | |
CN103929350A (zh) | 一种信息推送的方法、设备和系统 | |
EP2916276A1 (en) | System including a data repository and a data importing component | |
CN100421070C (zh) | 用于管理动态配置数据的方法和系统 | |
CN108734559B (zh) | 一种订单处理方法和装置 | |
CN103403683A (zh) | 虚拟数据中心服务请求的基于能力的路由 | |
CN110168529A (zh) | 数据存储方法、装置和存储介质 | |
CN102567436A (zh) | 多租户系统 | |
CN108427749B (zh) | 商品标签管理方法、服务器及商品标签管理系统 | |
US20070214064A1 (en) | Inventory location common object | |
KR101858715B1 (ko) | 서비스자원 관리시스템 및 그 방법 | |
Kaur et al. | CE-GMS: A cloud IoT-enabled grocery management system | |
US20040210468A1 (en) | System and method for providing a territory management tool | |
CN1326363C (zh) | 网络管理配置方法及其装置 | |
US11488101B2 (en) | Store workload manager | |
CN104133722B (zh) | 一种实现多业务流程协作的方法及系统 | |
US9886707B1 (en) | System and method for building dynamic hierarchy for products | |
CN104243565A (zh) | 获取配置数据的方法和装置 | |
CN101311933B (zh) | 接收动态访问数据的方法和系统 | |
CN112598271A (zh) | 一种产品销售资源管控方法、系统、装置和存储介质 | |
US20030035380A1 (en) | Node management system | |
US20180253475A1 (en) | Grouping tables in a distributed database | |
CN113379177A (zh) | 一种任务调度系统和方法 | |
US20120323911A1 (en) | Method and system for tagging plants using a social networking system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: DE Ref document number: 1149864 Country of ref document: HK |
|
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
REG | Reference to a national code |
Ref country code: HK Ref legal event code: GR Ref document number: 1149864 Country of ref document: HK |