一种用于获取用户联系信息的方法与设备与流程

文档序号:16888355发布日期:2019-02-15 22:50阅读:151来源:国知局
一种用于获取用户联系信息的方法与设备与流程

本申请涉及通信领域,尤其涉及一种用于获取用户联系信息的技术。



背景技术:

通讯技术的发展使得用户之间的联系越来越方便,人们可通过保存在移动终端上的联系信息进行通讯。但是,在实际生活当中,随着人们工作业务或者人际关系的不断扩展,用户想要联系的目标用户并不一定保存在其通讯录中,如果想要联系该目标用户,可能需要多方打探才能获取目标用户的联系信息,给人们的生活带来诸多不便,也降低了办事效率。



技术实现要素:

本申请的一个目的是提供一种用于获取用户联系信息的方法与设备。

根据本申请的一个方面,提供了一种用于获取用户联系信息的方法,该方法包括:

接收第一用户关于目标用户的联系信息的查询请求,其中,所述查询请求包含所述目标用户的标识信息;

根据联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一;

若存在所述一条或多条联系链,将所述目标用户的联系信息提供至所述第一用户。

根据本申请的另一个方面,提供了一种用于获取用户联系信息的设备,该设备包括:

处理器;以及

被安排成存储计算机可执行指令的存储器,所述可执行指令在被执行时使所述处理器执行:

接收第一用户关于目标用户的联系信息的查询请求,其中,所述查询请求包含所述目标用户的标识信息;

根据联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一;

若存在所述一条或多条联系链,将所述目标用户的联系信息提供至所述第一用户。

根据本申请的又一个方面,提供了一种包括指令的计算机可读介质,所述指令在被执行时使得系统进行:

接收第一用户关于目标用户的联系信息的查询请求,其中,所述查询请求包含所述目标用户的标识信息;

根据联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一;

若存在所述一条或多条联系链,将所述目标用户的联系信息提供至所述第一用户。

与现有技术相比,本申请通过在联系人数据库搜索从第一用户到目标用户的联系链的方式来快速获取目标用户的联系信息,并将该联系信息返回给第一用户(例如,发送至第一用户对应的用户设备上),从而实现了第一用户获取目标用户的联系信息的目的,例如,当第一用户对应的用户设备上没有保存目标用户的联系信息时,能够快速地从网络设备中获取到目标用户的联系信息。

附图说明

通过阅读参照以下附图所作的对非限制性实施例所作的详细描述,本申请的其它特征、目的和优点将会变得更明显:

图1示出了本申请提供的一种可能的系统拓扑图;

图2示出了根据本申请一个实施例的一条有向边的示意图;

图3示出了根据本申请一个实施例的另一条有向边的示意图;

图4示出了根据图2和图3所示的有向边形成的联系链的示意图;

图5示出根据本申请一个实施例的一种用于获取用户联系信息的方法流程图;

图6示出根据本申请的另一个实施例的一种用于获取用户联系信息的方法流程图;

图7示出根据本申请另一个实施例的一种用于获取用户联系信息的网络设备的设备示意图;

图8示出根据本申请另一个实施例的一种用于获取用户联系信息的网络设备的设备示意图;

图9示出可被用于实施本申请中所述的各个实施例的示例性系统。

附图中相同或相似的附图标记代表相同或相似的部件。

具体实施方式

下面结合附图对本申请作进一步详细描述。

在本申请一个典型的配置中,终端、服务网络的设备和可信方均包括一个或多个处理器(例如,中央处理器(centralprocessingunit,cpu))、输入/输出接口、网络接口和内存。

内存可能包括计算机可读介质中的非永久性存储器,随机存取存储器(randomaccessmemory,ram)和/或非易失性内存等形式,如只读存储器(readonlymemory,rom)或闪存(flashmemory)。内存是计算机可读介质的示例。

计算机可读介质包括永久性和非永久性、可移动和非可移动媒体可以由任何方法或技术来实现信息存储。信息可以是计算机可读指令、数据结构、程序的模块或其他数据。计算机的存储介质的例子包括,但不限于相变内存(phase-changememory,pcm)、可编程随机存取存储器(programmablerandomaccessmemory,pram)、静态随机存取存储器(staticrandom-accessmemory,sram)、动态随机存取存储器(dynamicrandomaccessmemory,dram)、其他类型的随机存取存储器(ram)、只读存储器(rom)、电可擦除可编程只读存储器(electrically-erasableprogrammableread-onlymemory,eeprom)、快闪记忆体或其他内存技术、只读光盘只读存储器(compactdiscread-onlymemory,cd-rom)、数字多功能光盘(digitalversatiledisc,dvd)或其他光学存储、磁盒式磁带,磁带磁盘存储或其他磁性存储设备或任何其他非传输介质,可用于存储可以被计算设备访问的信息。

本申请所指设备包括但不限于用户设备、网络设备、或用户设备与网络设备通过网络相集成所构成的设备。所述用户设备包括但不限于任何一种可与用户进行人机交互(例如通过触摸板进行人机交互)的移动电子产品,例如智能手机、平板电脑等,所述移动电子产品可以采用任意操作系统,如android操作系统、ios操作系统等。其中,所述网络设备包括一种能够按照事先设定或存储的指令,自动进行数值计算和信息处理的电子设备,其硬件包括但不限于微处理器、专用集成电路(applicationspecificintegratedcircuit,asic)、可编程逻辑器件(programmablelogicdevice,pld)、现场可编程门阵列(fieldprogrammablegatearray,fpga)、数字信号处理器(digitalsignalprocessor,dsp)、嵌入式设备等。所述网络设备包括但不限于计算机、网络主机、单个网络服务器、多个网络服务器集或多个服务器构成的云;在此,云由基于云计算(cloudcomputing)的大量计算机或网络服务器构成,其中,云计算是分布式计算的一种,由一群松散耦合的计算机集组成的一个虚拟超级计算机。所述网络包括但不限于互联网、广域网、城域网、局域网、vpn网络、无线自组织网络(adhoc网络)等。优选地,所述设备还可以是运行于所述用户设备、网络设备、或用户设备与网络设备、网络设备、触摸终端或网络设备与触摸终端通过网络相集成所构成的设备上的程序。

当然,本领域技术人员应能理解上述设备仅为举例,其他现有的或今后可能出现的设备如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在本申请的描述中,“多个”的含义是两个或者更多,除非另有明确具体的限定。

图1示出了本申请的一个典型场景,网络设备与第一用户所对应的用户设备之间进行交互。网络设备接收第一用户所对应的用户设备发送的查询请求,其中,该查询请求中包括目标用户的标识信息,例如,该查询请求中包括目标用户的姓名、姓名的字段信息或者目标用户与第一用户的关系信息(比如,父亲、母亲或者同学等关系信息)。网络设备接收到上述查询请求后,根据联系人信息库中的联系关系信息确定从第一用户至目标用户的一条或者多条联系链,例如,联系人信息库中储存有多个用户的联系关系信息,其中,联系关系信息包括但不限于每一个用户存储的联系人的姓名、用户与联系人的关系以及每一个联系人的电话号码等。首先,网络设备基于查询请求中目标用户的标识信息查找到目标用户,然后,基于联系关系信息确定出从第一用户到目标用户的一条或多条联系链。例如,基于第一用户的联系关系信息确定出一个或多个与目标用户存在关系的中间用户,第一用户、中间用户、目标用户基于两两之间的关系形成联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一,例如,每一条有向边的指向用户存在于起点用户的联系关系信息中,利用路径搜索算法从联系人信息库中查找从第一用户到目标用户的有向链。网络设备将目标用户的联系信息提供至第一用户对应的用户设备,其中,联系信息包括但不限于目标用户的电话号码。

例如,参考图2、图3和图4,用户甲为第一用户,用户乙存在于第一用户甲的联系关系信息中,由此可形成如图2所示的甲->乙的有向边;用户丁为目标用户,并且,用户丁存在于用户乙的联系关系信息中,由此可形成如图3所示的乙->丁的有向边。当第一用户甲向网络设备发送关于目标用户丁的联系信息的查询请求时,网络设备在联系人信息库中确定从第一用户甲到目标用户丁的一条联系链(如图4所示),根据如图4所示形成的联系链“甲->乙->丁”确定是否将目标用户丁的联系信息提供至第一用户甲。在本申请的一些实施例中,用户乙被称为“中间用户”,并且在联系链中,第一用户和目标用户之间的中间用户的数量可为一个、也可为多个,例如在一个具体实施例中,中间用户包括用户乙和用户丙,第一用户仍为上述用户甲,目标用户仍为上述用户丁,对应的联系链为“甲->乙->丙->丁”。

图5示出了根据本申请一个方面的用于获取用户联系信息的方法,可应用于图1所示的系统,其中,该方法包括步骤s11、步骤s12和步骤s14。在步骤s11中,网络设备接收第一用户关于目标用户的联系信息的查询请求,其中,所述查询请求包含所述目标用户的标识信息;在步骤s12中,网络设备根据联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一;在步骤s14中,若存在所述一条或多条联系链,将所述目标用户的联系信息提供至所述第一用户。在一些实施例中,网络设备首先通过查询请求搜索到目标用户,再根据第一用户与目标用户的联系链确定是否将目标用户的联系信息提供给第一用户,从而实现了当第一用户的本地通讯录中没有保存目标用户的联系信息时也能够基于目标用户的标识信息查找到其联系信息的目的,提高了用户体验。

具体而言,在步骤s11中,网络设备接收第一用户关于目标用户的联系信息的查询请求,其中,所述查询请求包含所述目标用户的标识信息。例如,查询请求中包括目标用户的姓名、姓名的字段信息或者目标用户与第一用户的关系信息(比如,父亲、母亲或者同学等关系信息)等标识信息,该标识信息用于初步确定目标用户。

例如,第一用户甲想要查询目标用户丁的联系信息,第一用户甲在其对应的用户设备上输入目标用户丁的标识信息,比如,目标用户丁的姓名、姓或者名。网络设备接收到第一用户甲对应的用户设备发送的查询请求后,基于该目标用户丁的标识信息在数据库中查询目标用户丁,若数据库中存在目标用户丁的相关记录,则继续下一步骤,若数据库中不存在目标用户丁的相关记录,则查询结束,网络设备可向第一用户甲对应的用户设备返回不存在目标用户丁的相关记录的提示信息。

在步骤s12中,网络设备根据联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一。例如,对于每一个用户甲而言,联系人信息库中储存有该用户甲的多个联系关系信息,其中,联系关系信息包括但不限于该用户甲的联系人的姓名、该用户甲与其联系人的关系以及每一个联系人的电话号码等,该用户甲与每一个联系人可形成一个有向边,在该有向边中,用户甲即为起点用户,联系人即为指向用户,每条联系链都是通过一个或者多个有向边组成的有向链,由于联系人信息息库中储存有多个用户的联系关系信息,因此,从第一用户到目标用户的联系链可能存在多条有向边。

例如,第一用户甲的联系人中包括用户乙,用户乙的联系人中包括目标用户丁,第一用户甲与用户乙形成一个甲->乙的有向边,用户乙与目标用户丁形成一个乙->丁的有向边,从第一用户甲到目标用户丁的联系链即为:甲->乙->丁,网络设备即可根据联系关系信息确定从第一用户甲到目标用户丁的联系链:甲->乙->丁。

在步骤s14中,若存在所述一条或多条联系链,将所述目标用户的联系信息提供至所述第一用户。其中,联系信息包括但不限于目标用户的电话号码。

例如,网络设备根据联系人信息库中的联系关系信息确定了“甲->乙->丁”的联系链,网络设备即可将查找到的目标用户丁的联系信息返回给第一用户对应的用户设备,若不存在相应的联系链,则返回没有查找到目标用户或者空信息的提示信息。其中,所述联系链用于确定目标用户为第一用户要查找的联系人以及是否将目标联系人的联系信息返回给第一用户对应的用户设备。

例如,第一用户甲在本地储存的通讯录中没有搜索到目标用户丁的联系信息,第一用户甲通过其对应的用户设备向网络设备发送查询目标用户丁的查询请求,其中,该查询请求中包括目标用户丁的标识信息,例如,该标识信息为目标用户丁的姓名。网络设备接收到该查询请求后,基于该标识信息在联系人信息库中搜索目标用户丁。若所述联系人信息库中存在目标用户丁,则根据联系人信息库中的联系关系信息确定从第一用户到目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一。比如,联系人信息库中储存有第一用户甲的联系人包括用户乙,用户乙的联系人包括目标用户丁,则第一用户甲与目标用户丁之间形成甲->乙->丁的联系链,基于该联系链,网络设备即可确定将目标用户丁的联系信息返回给第一用户对应的用户设备。

当然,本领域技术人员应能理解上述通过联系链获取目标用户的联系信息的方式仅为举例,其他现有的或今后可能出现的通过上述方式获取到目标用户的联系信息如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在一些实施方式中,图6示出了根据本申请另一个方面的用于获取用户联系信息的方法。该方法包括步骤s11、步骤s12、步骤s13、步骤s14,有关步骤s11-s12的介绍,可以参考图2所示实施例中的详细描述,此处不做赘述。在步骤s13中,网络设备检测所述一条或多条联系链中是否存在满足联系人访问权限设置信息的联系链;当存在步骤s13时,在步骤s14中,若所述一条或多条联系链中存在满足联系人访问权限设置信息的联系链,将所述目标用户的联系信息提供至所述第一用户。例如,联系人访问权限设置信息包括目标用户的授权访问用户列表,网络设备根据联系人信息库中的联系关系信息确定从第一用户到目标用户的一条或者多条联系链后,检测所述一条或多条联系链中是否存在满足联系人访问权限设置信息的联系链,例如,联系人访问权限设置根据目标用户的授权访问用户列表实现,所述授权访问用户列表中记录了目标用户授权可以访问其联系信息的用户,网络设备基于该授权访问用户列表确定是否将目标用户的联系信息返回至第一用户对应的用户设备。本申请通过检测联系链中是否存在满足联系人访问权限设置信息的方式进一步保证了被搜索人(目标用户)的信息安全,网络设备通过联系人访问权限设置信息确定是否将目标用户的联系信息提供至第一用户。在快速查找到目标用户的基础上,进一步保证了联系信息的安全性,提高了用户体验。

例如,第一用户甲已登记了其对应的用户设备,第一用户甲通过其对应的用户设备将关于目标用户丁的联系信息的查询请求发送给网络设备,其中,所述查询请求中包括目标用户丁的标识信息,网络设备基于目标用户丁的标识信息确定是否存在目标用户丁的相关记录,若存在目标用户丁的相关记录,则进一步地,网络设备根据联系人信息库中的联系关系信息确定从该第一用户甲到目标用户丁的一条或者多条联系链。比如,第一用户甲的联系人中包括用户乙和用户丙,用户乙的联系人中包括第一用户甲、用户戊以及目标用户丁,基于第一用户甲的联系人中包括用户乙,可形成“甲->乙”的有向边,基于第一用户甲的联系人中包括用户丙,可形成“甲->丙”的有向边;基于用户乙的联系人中包括第一用户甲,可形成“乙->甲”的有向边,基于用户乙的联系人中包括用户戊,可形成“乙->戊”的有向边,基于用户乙的联系人中包括目标用户丁可形成“乙->丁”的有向边,基于“甲->乙”“乙->丁”的有向边就形成了从第一用户甲到目标用户丁的联系链。同样地,基于“甲->乙”“乙->戊”的有向边也能形成“甲->乙->戊”的联系链,而“甲->乙->丁”为要查找的第一用户甲与目标用户丁之间存在的联系链。进一步地,每一条联系链中包括用户的联系人访问权限设置信息,例如,用户乙在保存目标用户丁的联系信息时,设置第一用户甲可访问目标用户丁的联系信息,则目标用户丁的联系人访问权限设置信息中就记录了第一用户甲的相关权限,基于该联系人访问权限设置信息,若第一用户甲具有所需的权限,网络设备可将目标用户丁的联系信息返回给第一用户甲的用户设备。其中,在一些实施例中,联系链及有向边均可基于最短路径算法实现。在快速查找目标用户的联系信息的同时,实现了保护目标用户联系信息的安全性的目的。

当然,本领域技术人员应能理解上述联系人访问权限设置信息仅为举例,其他现有的或今后可能出现的联系人访问权限设置信息如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在一些实施方式中,步骤s14包括:根据预定的访问规则信息,检测所述一条或多条联系链中是否存在满足联系人访问权限设置信息的联系链。

例如,网络设备中预先设置了用户联系信息的访问规则信息,基于具体设置的访问规则信息检测确定出的一条或多条联系链中是否存在满足联系人访问权限设置信息的联系链。

在一些实施方式中,所述访问规则信息包括以下至少任一项:

第一规则:若所述第一用户包含于所述目标用户的授权访问用户列表,则所述一条或多条联系链中存在满足联系人访问权限设置信息的联系链;

第二规则:若所述一条或多条联系链中存在一联系链,该联系链的第一条有向边的指向用户包含于所述目标用户的授权访问用户列表,其中,所述第一用户为所述第一条有向边的起点用户,则该联系链满足联系人访问权限设置信息;

第三规则:若所述一条或多条联系链中存在一联系链,对于该联系链中任意两个相邻有向边,所述两个相邻有向边的中间用户授权所述两个相邻有向边的起点用户访问所述两个相邻有向边的指向用户,则该联系链满足联系人访问权限设置信息。

具体而言,在第一规则中,若所述第一用户包含于所述目标用户的授权访问用户列表,则所述一条或多条联系链中存在满足联系人访问权限设置信息的联系链。其中,授权访问用户列表中包括被授权的可查看其联系信息的用户。

例如,第一用户甲保存有用户乙的联系信息,用户乙保存有第一用户甲以及目标用户丁的联系信息,其中,用户乙可设置第一用户甲可查看目标用户丁的联系信息的权限信息,则第一用户甲包含于目标用户丁的授权访问用户列表中;基于该授权访问用户列表,联系链“甲->乙->丁”即为满足联系人访问权限设置信息的联系链,网络设备可基于该联系链将目标用户丁的联系信息返回给第一用户甲的用户设备。进一步地,其他任何用户(包括目标用户丁)授权第一用户甲访问目标用户丁的联系信息,第一用户甲均可包含于目标用户丁的授权访问用户列表中,基于该授权访问用户列表,第一用户甲获取目标用户丁的联系信息。

在第二规则中,若所述一条或多条联系链中存在一联系链,该联系链的第一条有向边的指向用户包含于所述目标用户的授权访问用户列表,其中,所述第一用户为所述第一条有向边的起点用户,则该联系链满足联系人访问权限设置信息。其中,有向边的指向用户属于该有向边起点用户的联系人之一。

例如,第一用户甲通过其对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,其中,第一用户甲的联系人中包括用户乙,用户乙的联系人中包括用户戊,用户戊的联系人中包括目标用户丁,由此可形成“甲->乙”“乙->戊”“戊->丁”三条有向边,进一步地,基于该三条有向边可形成“甲->乙->戊->丁”的联系链。其中,第一用户甲为第一条有向边的起点用户,用户乙为第一条有向边的指向用户,当用户乙存在于目标用户丁的授权访问用户列表中时,该“甲->乙->戊->丁”的联系链为满足联系人访问权限设置信息的联系链。进一步地,在联系链中,用户乙与目标用户丁之间可存在多个用户,只要用户乙包含于目标用户丁的授权访问用户列表中,第一用户甲(第一条有向边的起点用户)即可通过该联系链获取到目标用户丁的联系信息。

在第三规则中,若所述一条或多条联系链中存在一联系链,对于该联系链中任意两个相邻有向边,所述两个相邻有向边的中间用户授权所述两个相邻有向边的起点用户访问所述两个相邻有向边的指向用户,则该联系链满足联系人访问权限设置信息。其中,有向边的指向用户属于该有向边起点用户的联系人之一,在一条联系链中包括同一顶点的两条有向边为相邻有向边,该顶点可视为中间用户。

例如,第一用户甲保存有用户乙的联系信息(对应于有向边甲->乙),用户乙保存有第一用户甲和用户丙的联系信息(对应于有向边乙->甲、乙->丙),用户丙保存有用户乙和目标用户丁的联系信息(对应于有向边丙->乙、丙->丁)。第一用户甲在其用户设备端上没有搜索到目标用户丁的联系信息,第一用户甲对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,网络设备通过联系人信息数据库中的联系关系信息确定第一用户甲与目标用户丁之间存在联系链“甲->乙->丙->丁”。其中,用户乙和用户丙为中间用户,用户乙在保存第一用户甲和用户丙的联系信息时授权第一用户甲可以访问用户丙的联系信息,用户丙在保存用户乙和目标用户丁的联系信息时授权用户乙可以访问目标用户丁的联系信息,则第一用户甲可通过中间用户乙和用户丙获取目标用户丁的联系信息。进一步地,在联系链中,第一用户甲和目标用户丁之间可存在多个中间用户,只要满足中间用户授权有向边的起点用户访问指向用户的要求,通过该联系链即可实现获取目标用户的联系信息的目的。

在一些实施方式中,所述访问规则信息包括所述第二规则,所述第一用户未包含于所述目标用户的授权访问用户列表;并且,所述第一条有向边的指向用户与所述第一用户满足预定的用户信任关系,或者所述第一条有向边的指向用户与所述第一用户间的用户关系与所述第一条有向边的指向用户与所述目标用户间的用户关系相同。其中,用户信任关系包括指向用户与第一用户之间的关系信息,例如,家人关系、朋友关系、同学关系或者同事关系等。

例如,第一用户甲通过其对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,其中,第一用户甲的联系人中包括用户乙,用户乙的联系人中包括用户戊,用户戊的联系人中包括目标用户丁,由此可形成“甲->乙”“乙->戊”“戊->丁”三条有向边,进一步地,可形成“甲->乙->戊->丁”的联系链,其中,第一用户甲为第一条有向边的起点用户,用户乙为第一条有向边的指向用户,第一用户甲未包含于目标用户丁的授权访问用户列表中,但是,第一用户甲与用户乙之间为同事关系,满足预定的用户信任关系,其中,则,该“甲->乙->戊->丁”的联系链为满足联系人访问权限设置信息的联系链,进一步地,用户乙与目标用户丁之间可存在多个用户。又例如,用户乙与第一用户甲间的用户关系为同事关系,用户乙与目标用户丁间的用户关系也为同事关系(其中,用户乙与目标用户丁间的用户关系可根据网络设备中存储的用户关系信息确定),则,该“甲->乙->戊->丁”的联系链为满足联系人访问权限设置信息的联系链,进一步地,用户乙与目标用户丁之间可存在多个用户。

在一些实施方式中,所述用户信任关系包括以下任一项:同事关系;同学关系。其中,同事关系也可进一步的具体为xx公司xx部门的同事,同学关系也可具体为xx学校xx班级的同学。

当然,本领域技术人员应能理解上述用户信任关系仅为举例,其他现有的或今后可能出现的用户信任关系如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在一些实施方式中,所述第三规则包括:若所述一条或多条联系链中存在一联系链,对于该联系链中任意两个相邻有向边,所述两个相邻有向边的中间用户授权所述两个相邻有向边的起点用户访问所述两个相邻有向边的指向用户,或者,所述两个相邻有向边中之一有向边的起点用户与指向用户满足预定的用户信任关系,则该联系链满足联系人访问权限设置信息。其中,用户信任关系包括但不限于以下任一项:家人关系、朋友关系、同学关系、同事关系,并且,该用户信任关系可基于网络设备的预设,也可基于用户的设置进行确定,例如,用户可设置同学关系为用户信任关系,或者不将同学关系设置为用户信任关系。

例如,第一用户甲保存有用户乙的联系信息(甲->乙),用户乙保存有第一用户甲和用户丙的联系信息(乙->甲,乙->丙),用户丙保存有用户乙和目标用户丁的联系信息(丙->乙,丙->丁)。第一用户甲在其用户设备端上没有搜索到目标用户丁的联系信息,第一用户甲通过其对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,网络设备通过联系人信息数据库中的联系关系信息确定出第一用户甲与目标用户丁之间存在联系链“甲->乙->丙->丁”。其中,用户乙和用户丙为中间用户,用户乙在保存第一用户甲和用户丙的联系信息时授权第一用户甲可以访问用户丙的联系信息,用户丙在保存用户乙和目标用户丁的联系信息时授权用户乙可以访问目标用户丁的联系信息,则第一用户甲可通过中间用户乙和用户丙获取到目标用户丁的联系信息。进一步地,在联系链中,第一用户甲和目标用户丁之间可存在多个中间用户,只要满足中间用户授权有向边的起点用户访问指向用户的要求,则通过该联系链则可实现获取目标用户的联系信息的目的。

又例如,第一用户甲保存有用户乙的联系信息(甲->乙),用户乙保存有第一用户甲和用户丙的联系信息(乙->甲,乙->丙),用户丙保存有用户乙和目标用户丁的联系信息(丙->乙,丙->丁)。第一用户甲在其用户设备端上没有搜索到目标用户丁的联系信息,第一用户甲通过其对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,网络设备通过联系人信息库中的联系关系信息确定出第一用户甲与目标用户丁之间存在联系链“甲->乙->丙->丁”,其中,第一用户甲与用户乙之间满足用户信任关系(例如,同事关系),用户丙与目标用户丁之间满足用户信任关系(例如,同学关系),则,第一用户甲可通过上述联系链获取到目标用户丁的联系信息。其中,联系链中起点用户与指向用户之间的关系可通过用户在保存联系人时设定并将该关系一并上传至网络设备,例如,网络设备将以上所述的用户之间的关系保存在联系人信息库中。根据网络设备中储存的用户之间的关系信息,通过用户信任关系也可通过多个中间用户的联系链获取目标用户的联系信息。

另外,需要说明的是,在一条联系链中,可同时通过用户信任关系与联系人访问权限设置信息获取到目标用户的联系信息,例如,现存在“甲->乙->丙->丁->戊”的联系链,其中,用户甲为第一用户,用户戊为目标用户,用户乙在保存第一用户甲和用户丙的联系信息时,授权第一用户甲可以访问用户丙的联系信息,网络设备中存储有用户丙与用户丁的关系为同事关系(例如,预设的同事关系为用户信任关系),用户丁在保存用户丙和目标用户戊的联系信息时设置用户丙可以访问目标用户戊的联系信息,则,第一用户甲可通过“甲->乙->丙->丁->戊”的联系链获取到目标用户戊的联系信息。当然,第一用户甲与目标用户戊之间的中间用户可以是多个。

在一些实施方式中,步骤s12包括步骤s121(未示出)和步骤s122(未示出),在步骤s121中,网络设备将存储联系关系信息的联系人信息库中的用户及其联系人分别视为有向图中有向边的起点与指向顶点;在步骤s122中,网络设备利用路径搜索算法从所述联系人信息库中查找从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一。其中,路径搜索算法又称最短路径算法,从某顶点出发,沿图的边到达另一顶点所经过的路径中,各边上权值之和最小的一条路径叫做最短路径。其图包括有向图和无向图,在无向图中,每条边的两端点可称为顶点,在有向图中,每条边的起始端可称为起点,指向端可称为指向顶点,本申请的方法利用了路径搜索算法中的有向图,其中,联系人信息库中的用户为有向边的起点,该用户的联系人为指向顶点。解决最短路径问题的算法包括dijkstra算法、bellman-ford算法、floyd算法和spfa算法等。通过路径搜索算法确定从第一用户到目标用户的一条或多条联系链,进一步地,根据该一条或多条联系链获取到目标用户的联系信息,方便、快捷。

本领域技术人员应能理解,以上所述的解决最短路径问题的算法仅为举例,其他现有的或者今后可能出现的解决最短路径问题的算法如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。

在一些实施方式中,步骤s12包括步骤s1211(未示出)和步骤s1222(未示出),在步骤s1211中,网络设备在联系人信息库中查找所述目标用户的联系信息;在步骤s1222中,若所述联系人信息库中存在所述目标用户的联系信息,根据所述联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一。其中,联系信息包括但不限于目标用户的姓名、手机号等信息;联系关系信息,例如,第一用户甲的联系人中包括用户乙、用户丙……每一个联系人的手机号。

例如,第一用户甲通过其对应的用户设备向网络设备发送了关于目标用户丁的联系信息的查询请求,该查询请求中包括目标用户丁的标识信息,例如,目标用户丁的姓名(李梅),网络设备根据查询请求中目标用户丁的姓名信息首先在联系人信息库中查找是否存在该目标用户丁的联系信息,若联系人信息库中存在目标用户丁的联系信息,则进一步地,网络设备根据第一用户甲的标识信息(在第一用户甲通过其对应的用户设备向网络设备端发送查询请求时,网络设备即可获取第一用户甲的标识信息,例如,第一用户甲的姓名、手机号)与目标用户丁的标识信息确定两者之间是否存在联系链,若存在联系链,则进一步地,网络设备根据两者之间的联系链确定是否将目标用户丁的联系信息返回给第一用户甲。

在一些实施方式中,步骤s12还包括:若所述联系人信息库中不存在所述目标用户的联系信息,将空信息返回至所述第一用户。

例如,第一用户甲通过其对应的用户设备向网络设备发送了关于目标用户丁的联系信息的查询请求,该查询请求中包括目标用户丁的标识信息,例如,目标用户丁的姓名(李梅),网络设备根据查询请求中目标用户丁的姓名信息首先在联系人信息库中查找是否存在该目标用户丁的联系信息,若联系人信息库中不存在目标用户丁的联系信息,网络设备则将空信息返回至第一用户甲,例如,通过返回提示信息提醒第一用户甲:联系人信息库中不存在目标用户丁的联系信息。

图7示出了根据本申请的另一个方面的一种用于获取用户联系信息的网络设备,该网络设备包括第一装置、第二装置以及第四装置。其中,第一装置,用于接收第一用户关于目标用户的联系信息的查询请求,其中,所述查询请求包含所述目标用户的标识信息;第二装置,用于根据联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一;第四装置,用于,若存在所述一条或多条联系链,将所述目标用户的联系信息提供至所述第一用户。在一些实施例中,网络设备首先通过查询请求搜索到目标用户,再根据第一用户与目标用户的联系链确定是否将目标用户的联系信息提供给第一用户,从而实现了当第一用户的本地通讯录中没有保存目标用户的联系信息时也能够基于目标用户的标识信息查找到其联系信息的目的,提高了用户体验。

具体而言,第一装置,用于接收第一用户关于目标用户的联系信息的查询请求,其中,所述查询请求包含所述目标用户的标识信息。例如,查询请求中包括目标用户的姓名、姓名的字段信息或者目标用户与第一用户的关系信息(比如,父亲、母亲或者同学等关系信息)等标识信息,该标识信息用于初步确定目标用户。

例如,第一用户甲想要查询目标用户丁的联系信息,第一用户甲在其对应的用户设备上输入目标用户丁的标识信息,比如,目标用户丁的姓名、姓或者名。网络设备接收到第一用户甲对应的用户设备发送的查询请求后,基于该目标用户丁的标识信息在数据库中查询目标用户丁,若数据库中存在目标用户丁的相关记录,则继续下一步骤,若数据库中不存在目标用户丁的相关记录,则查询结束,网络设备可向第一用户甲对应的用户设备返回不存在目标用户丁的相关记录的提示信息。

第二装置,用于根据联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一。例如,对于每一个用户甲而言,联系人信息库中储存有该用户甲的多个联系关系信息,其中,联系关系信息包括但不限于该用户甲的联系人的姓名、该用户甲与其联系人的关系以及每一个联系人的电话号码等,该用户甲与每一个联系人可形成一个有向边,在该有向边中,用户甲即为起点用户,联系人即为指向用户,每条联系链都是通过一个或者多个有向边组成的有向链,由于联系人信息息库中储存有多个用户的联系关系信息,因此,从第一用户到目标用户的联系链可能存在多条有向边。

例如,第一用户甲的联系人中包括用户乙,用户乙的联系人中包括目标用户丁,第一用户甲与用户乙形成一个甲->乙的有向边,用户乙与目标用户丁形成一个乙->丁的有向边,从第一用户甲到目标用户丁的联系链即为:甲->乙->丁,网络设备即可根据联系关系信息确定从第一用户甲到目标用户丁的联系链:甲->乙->丁。

第四装置,用于若存在所述一条或多条联系链,将所述目标用户的联系信息提供至所述第一用户。其中,联系信息包括但不限于目标用户的电话号码。

例如,网络设备根据联系人信息库中的联系关系信息确定了“甲->乙->丁”的联系链,网络设备即可将查找到的目标用户丁的联系信息返回给第一用户对应的用户设备,若不存在相应的联系链,则返回没有查找到目标用户或者空信息的提示信息。其中,所述联系链用于确定目标用户为第一用户要查找的联系人以及是否将目标联系人的联系信息返回给第一用户对应的用户设备。

例如,第一用户甲在本地储存的通讯录中没有搜索到目标用户丁的联系信息,第一用户甲通过其对应的用户设备向网络设备发送查询目标用户丁的查询请求,其中,该查询请求中包括目标用户丁的标识信息,例如,该标识信息为目标用户丁的姓名。网络设备接收到该查询请求后,基于该标识信息在联系人信息库中搜索目标用户丁。若所述联系人信息库中存在目标用户丁,则根据联系人信息库中的联系关系信息确定从第一用户到目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一。比如,联系人信息库中储存有第一用户甲的联系人包括用户乙,用户乙的联系人包括目标用户丁,则第一用户甲与目标用户丁之间形成甲->乙->丁的联系链,基于该联系链,网络设备即可确定将目标用户丁的联系信息返回给第一用户对应的用户设备。

当然,本领域技术人员应能理解上述网络设备通过联系链获取目标用户的联系信息的方式仅为举例,其他现有的或今后可能出现的网络设备通过上述方式获取到目标用户的联系信息如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在一些实施方式中,图8示出了根据本申请另一个方面的一种用于获取用户联系信息的设备。该设备包括第一装置、第二装置、第三装置以及第四装置,有关第一装置和第二装置的介绍,可以参考图4所示实施例中的详细描述,此处不做赘述。第三装置,用于检测所述一条或多条联系链中是否存在满足联系人访问权限设置信息的联系链;当存在第三装置时,第四装置,用于若所述一条或多条联系链中存在满足联系人访问权限设置信息的联系链,将所述目标用户的联系信息提供至所述第一用户。例如,联系人访问权限设置信息包括目标用户的授权访问用户列表,网络设备根据联系人信息库中的联系关系信息确定从第一用户到目标用户的一条或者多条联系链后,检测所述一条或多条联系链中是否存在满足联系人访问权限设置信息的联系链,例如,联系人访问权限设置根据目标用户的授权访问用户列表实现,所述授权访问用户列表中记录了目标用户授权可以访问其联系信息的用户,网络设备基于该授权访问用户列表确定是否将目标用户的联系信息返回至第一用户对应的用户设备。本申请通过检测联系链中是否存在满足联系人访问权限设置信息的方式进一步保证了被搜索人(目标用户)的信息安全,网络设备通过联系人访问权限设置信息确定是否将目标用户的联系信息提供至第一用户。在快速查找到目标用户的基础上,进一步保证了联系信息的安全性,提高了用户体验。

例如,第一用户甲已登记了其对应的用户设备,第一用户甲通过其对应的用户设备将关于目标用户丁的联系信息的查询请求发送给网络设备,其中,所述查询请求中包括目标用户丁的标识信息,网络设备基于目标用户丁的标识信息确定是否存在目标用户丁的相关记录,若存在目标用户丁的相关记录,则进一步地,网络设备根据联系人信息库中的联系关系信息确定从该第一用户甲到目标用户丁的一条或者多条联系链。比如,第一用户甲的联系人中包括用户乙和用户丙,用户乙的联系人中包括第一用户甲、用户戊以及目标用户丁,基于第一用户甲的联系人中包括用户乙,可形成“甲->乙”的有向边,基于第一用户甲的联系人中包括用户丙,可形成“甲->丙”的有向边;基于用户乙的联系人中包括第一用户甲,可形成“乙->甲”的有向边,基于用户乙的联系人中包括用户戊,可形成“乙->戊”的有向边,基于用户乙的联系人中包括目标用户丁可形成“乙->丁”的有向边,基于“甲->乙”“乙->丁”的有向边就形成了从第一用户甲到目标用户丁的联系链。同样地,基于“甲->乙”“乙->戊”的有向边也能形成“甲->乙->戊”的联系链,而“甲->乙->丁”为要查找的第一用户甲与目标用户丁之间存在的联系链。进一步地,每一条联系链中包括用户的联系人访问权限设置信息,例如,用户乙在保存目标用户丁的联系信息时,设置第一用户甲可访问目标用户丁的联系信息,则目标用户丁的联系人访问权限设置信息中就记录了第一用户甲的相关权限,基于该联系人访问权限设置信息,若第一用户甲具有所需的权限,网络设备可将目标用户丁的联系信息返回给第一用户甲的用户设备。其中,在一些实施例中,联系链及有向边均可基于最短路径算法实现。在快速查找目标用户的联系信息的同时,实现了保护目标用户联系信息的安全性的目的。

当然,本领域技术人员应能理解上述联系人访问权限设置信息仅为举例,其他现有的或今后可能出现的联系人访问权限设置信息如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在一些实施方式中,第四装置,用于根据预定的访问规则信息,检测所述一条或多条联系链中是否存在满足联系人访问权限设置信息的联系链。

例如,网络设备中预先设置了用户联系信息的访问规则信息,基于具体设置的访问规则信息检测确定出的一条或多条联系链中是否存在满足联系人访问权限设置信息的联系链。

在一些实施方式中,所述访问规则信息包括以下至少任一项:

第一规则:若所述第一用户包含于所述目标用户的授权访问用户列表,则所述一条或多条联系链中存在满足联系人访问权限设置信息的联系链;

第二规则:若所述一条或多条联系链中存在一联系链,该联系链的第一条有向边的指向用户包含于所述目标用户的授权访问用户列表,其中,所述第一用户为所述第一条有向边的起点用户,则该联系链满足联系人访问权限设置信息;

第三规则:若所述一条或多条联系链中存在一联系链,对于该联系链中任意两个相邻有向边,所述两个相邻有向边的中间用户授权所述两个相邻有向边的起点用户访问所述两个相邻有向边的指向用户,则该联系链满足联系人访问权限设置信息。

具体而言,在第一规则中,若所述第一用户包含于所述目标用户的授权访问用户列表,则所述一条或多条联系链中存在满足联系人访问权限设置信息的联系链。其中,授权访问用户列表中包括被授权的可查看其联系信息的用户。

例如,第一用户甲保存有用户乙的联系信息,用户乙保存有第一用户甲以及目标用户丁的联系信息,其中,用户乙可设置第一用户甲可查看目标用户丁的联系信息的权限信息,则第一用户甲包含于目标用户丁的授权访问用户列表中;基于该授权访问用户列表,联系链“甲->乙->丁”即为满足联系人访问权限设置信息的联系链,网络设备可基于该联系链将目标用户丁的联系信息返回给第一用户甲的用户设备。进一步地,其他任何用户(包括目标用户丁)授权第一用户甲访问目标用户丁的联系信息,第一用户甲均可包含于目标用户丁的授权访问用户列表中,基于该授权访问用户列表,第一用户甲获取目标用户丁的联系信息。

在第二规则中,若所述一条或多条联系链中存在一联系链,该联系链的第一条有向边的指向用户包含于所述目标用户的授权访问用户列表,其中,所述第一用户为所述第一条有向边的起点用户,则该联系链满足联系人访问权限设置信息。其中,有向边的指向用户属于该有向边起点用户的联系人之一。

例如,第一用户甲通过其对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,其中,第一用户甲的联系人中包括用户乙,用户乙的联系人中包括用户戊,用户戊的联系人中包括目标用户丁,由此可形成“甲->乙”“乙->戊”“戊->丁”三条有向边,进一步地,基于该三条有向边可形成“甲->乙->戊->丁”的联系链。其中,第一用户甲为第一条有向边的起点用户,用户乙为第一条有向边的指向用户,当用户乙存在于目标用户丁的授权访问用户列表中时,该“甲->乙->戊->丁”的联系链为满足联系人访问权限设置信息的联系链。进一步地,在联系链中,用户乙与目标用户丁之间可存在多个用户,只要用户乙包含于目标用户丁的授权访问用户列表中,第一用户甲(第一条有向边的起点用户)即可通过该联系链获取到目标用户丁的联系信息。

在第三规则中,若所述一条或多条联系链中存在一联系链,对于该联系链中任意两个相邻有向边,所述两个相邻有向边的中间用户授权所述两个相邻有向边的起点用户访问所述两个相邻有向边的指向用户,则该联系链满足联系人访问权限设置信息。其中,有向边的指向用户属于该有向边起点用户的联系人之一,在一条联系链中包括同一顶点的两条有向边为相邻有向边,该顶点可视为中间用户。

例如,第一用户甲保存有用户乙的联系信息(对应于有向边甲->乙),用户乙保存有第一用户甲和用户丙的联系信息(对应于有向边乙->甲、乙->丙),用户丙保存有用户乙和目标用户丁的联系信息(对应于有向边丙->乙、丙->丁)。第一用户甲在其用户设备端上没有搜索到目标用户丁的联系信息,第一用户甲对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,网络设备通过联系人信息数据库中的联系关系信息确定第一用户甲与目标用户丁之间存在联系链“甲->乙->丙->丁”。其中,用户乙和用户丙为中间用户,用户乙在保存第一用户甲和用户丙的联系信息时授权第一用户甲可以访问用户丙的联系信息,用户丙在保存用户乙和目标用户丁的联系信息时授权用户乙可以访问目标用户丁的联系信息,则第一用户甲可通过中间用户乙和用户丙获取目标用户丁的联系信息。进一步地,在联系链中,第一用户甲和目标用户丁之间可存在多个中间用户,只要满足中间用户授权有向边的起点用户访问指向用户的要求,通过该联系链即可实现获取目标用户的联系信息的目的。

在一些实施方式中,所述访问规则信息包括所述第二规则,所述第一用户未包含于所述目标用户的授权访问用户列表;并且,所述第一条有向边的指向用户与所述第一用户满足预定的用户信任关系,或者所述第一条有向边的指向用户与所述第一用户间的用户关系与所述第一条有向边的指向用户与所述目标用户间的用户关系相同。其中,用户信任关系包括指向用户与第一用户之间的关系信息,例如,家人关系、朋友关系、同学关系或者同事关系等。

例如,第一用户甲通过其对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,其中,第一用户甲的联系人中包括用户乙,用户乙的联系人中包括用户戊,用户戊的联系人中包括目标用户丁,由此可形成“甲->乙”“乙->戊”“戊->丁”三条有向边,进一步地,可形成“甲->乙->戊->丁”的联系链,其中,第一用户甲为第一条有向边的起点用户,用户乙为第一条有向边的指向用户,第一用户甲未包含于目标用户丁的授权访问用户列表中,但是,第一用户甲与用户乙之间为同事关系,满足预定的用户信任关系,其中,则,该“甲->乙->戊->丁”的联系链为满足联系人访问权限设置信息的联系链,进一步地,用户乙与目标用户丁之间可存在多个用户。又例如,用户乙与第一用户甲间的用户关系为同事关系,用户乙与目标用户丁间的用户关系也为同事关系(其中,用户乙与目标用户丁间的用户关系可根据网络设备中存储的用户关系信息确定),则,该“甲->乙->戊->丁”的联系链为满足联系人访问权限设置信息的联系链,进一步地,用户乙与目标用户丁之间可存在多个用户。

在一些实施方式中,所述用户信任关系包括以下任一项:同事关系;同学关系。其中,同事关系也可进一步的具体为xx公司xx部门的同事,同学关系也可具体为xx学校xx班级的同学。

当然,本领域技术人员应能理解上述用户信任关系仅为举例,其他现有的或今后可能出现的用户信任关系如可适用于本申请,也应包含在本申请保护范围以内,并在此以引用方式包含于此。

在一些实施方式中,所述第三规则包括:若所述一条或多条联系链中存在一联系链,对于该联系链中任意两个相邻有向边,所述两个相邻有向边的中间用户授权所述两个相邻有向边的起点用户访问所述两个相邻有向边的指向用户,或者,所述两个相邻有向边中之一有向边的起点用户与指向用户满足预定的用户信任关系,则该联系链满足联系人访问权限设置信息。其中,用户信任关系包括但不限于以下任一项:家人关系、朋友关系、同学关系、同事关系,并且,该用户信任关系可基于网络设备的预设,也可基于用户的设置进行确定,例如,用户可设置同学关系为用户信任关系,或者不将同学关系设置为用户信任关系。

例如,第一用户甲保存有用户乙的联系信息(甲->乙),用户乙保存有第一用户甲和用户丙的联系信息(乙->甲,乙->丙),用户丙保存有用户乙和目标用户丁的联系信息(丙->乙,丙->丁)。第一用户甲在其用户设备端上没有搜索到目标用户丁的联系信息,第一用户甲通过其对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,网络设备通过联系人信息数据库中的联系关系信息确定出第一用户甲与目标用户丁之间存在联系链“甲->乙->丙->丁”。其中,用户乙和用户丙为中间用户,用户乙在保存第一用户甲和用户丙的联系信息时授权第一用户甲可以访问用户丙的联系信息,用户丙在保存用户乙和目标用户丁的联系信息时授权用户乙可以访问目标用户丁的联系信息,则第一用户甲可通过中间用户乙和用户丙获取到目标用户丁的联系信息。进一步地,在联系链中,第一用户甲和目标用户丁之间可存在多个中间用户,只要满足中间用户授权有向边的起点用户访问指向用户的要求,则通过该联系链则可实现获取目标用户的联系信息的目的。

又例如,第一用户甲保存有用户乙的联系信息(甲->乙),用户乙保存有第一用户甲和用户丙的联系信息(乙->甲,乙->丙),用户丙保存有用户乙和目标用户丁的联系信息(丙->乙,丙->丁)。第一用户甲在其用户设备端上没有搜索到目标用户丁的联系信息,第一用户甲通过其对应的用户设备向网络设备发送获取目标用户丁的联系信息的查询请求,网络设备通过联系人信息库中的联系关系信息确定出第一用户甲与目标用户丁之间存在联系链“甲->乙->丙->丁”,其中,第一用户甲与用户乙之间满足用户信任关系(例如,同事关系),用户丙与目标用户丁之间满足用户信任关系(例如,同学关系),则,第一用户甲可通过上述联系链获取到目标用户丁的联系信息。其中,联系链中起点用户与指向用户之间的关系可通过用户在保存联系人时设定并将该关系一并上传至网络设备,例如,网络设备将以上所述的用户之间的关系保存在联系人信息库中。根据网络设备中储存的用户之间的关系信息,通过用户信任关系也可通过多个中间用户的联系链获取目标用户的联系信息。

另外,需要说明的是,在一条联系链中,可同时通过用户信任关系与联系人访问权限设置信息获取到目标用户的联系信息,例如,现存在“甲->乙->丙->丁->戊”的联系链,其中,用户甲为第一用户,用户戊为目标用户,用户乙在保存第一用户甲和用户丙的联系信息时,授权第一用户甲可以访问用户丙的联系信息,网络设备中存储有用户丙与用户丁的关系为同事关系(例如,预设的同事关系为用户信任关系),用户丁在保存用户丙和目标用户戊的联系信息时设置用户丙可以访问目标用户戊的联系信息,则,第一用户甲可通过“甲->乙->丙->丁->戊”的联系链获取到目标用户戊的联系信息。当然,第一用户甲与目标用户戊之间的中间用户可以是多个。

在一些实施方式中,第二装置,用于将存储联系关系信息的联系人信息库中的用户及其联系人分别视为有向图中有向边的起点与指向顶点;利用路径搜索算法从所述联系人信息库中查找从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一。其中,路径搜索算法又称最短路径算法,从某顶点出发,沿图的边到达另一顶点所经过的路径中,各边上权值之和最小的一条路径叫做最短路径。其图包括有向图和无向图,在无向图中,每条边的两端点可称为顶点,在有向图中,每条边的起始端可称为起点,指向端可称为指向顶点,本申请的方法利用了路径搜索算法中的有向图,其中,联系人信息库中的用户为有向边的起点,该用户的联系人为指向顶点。解决最短路径问题的算法包括dijkstra算法、bellman-ford算法、floyd算法和spfa算法等。通过路径搜索算法确定从第一用户到目标用户的一条或多条联系链,进一步地,根据该一条或多条联系链获取到目标用户的联系信息,方便、快捷。

本领域技术人员应能理解,以上所述的解决最短路径问题的算法仅为举例,其他现有的或者今后可能出现的解决最短路径问题的算法如能适用于本申请,也包含在本申请的保护范围内,并以引用方式包含于此。

在一些实施方式中,第二装置,用于在联系人信息库中查找所述目标用户的联系信息;若所述联系人信息库中存在所述目标用户的联系信息,根据所述联系人信息库中的联系关系信息,确定从所述第一用户至所述目标用户的一条或多条联系链,其中,每条联系链为一个或多个有向边连接而成的有向链,每个有向边的指向用户属于该有向边的起点用户的联系人之一。其中,联系信息包括但不限于目标用户的姓名、手机号等信息;联系关系信息,例如,第一用户甲的联系人中包括用户乙、用户丙……每一个联系人的手机号。

例如,第一用户甲通过其对应的用户设备向网络设备发送了关于目标用户丁的联系信息的查询请求,该查询请求中包括目标用户丁的标识信息,例如,目标用户丁的姓名(李梅),网络设备根据查询请求中目标用户丁的姓名信息首先在联系人信息库中查找是否存在该目标用户丁的联系信息,若联系人信息库中存在目标用户丁的联系信息,则进一步地,网络设备根据第一用户甲的标识信息(在第一用户甲通过其对应的用户设备向网络设备端发送查询请求时,网络设备即可获取第一用户甲的标识信息,例如,第一用户甲的姓名、手机号)与目标用户丁的标识信息确定两者之间是否存在联系链,若存在联系链,则进一步地,网络设备根据两者之间的联系链确定是否将目标用户丁的联系信息返回给第一用户甲。

在一些实施方式中,第二装置还用于,若所述联系人信息库中不存在所述目标用户的联系信息,将空信息返回至所述第一用户。

例如,第一用户甲通过其对应的用户设备向网络设备发送了关于目标用户丁的联系信息的查询请求,该查询请求中包括目标用户丁的标识信息,例如,目标用户丁的姓名(李梅),网络设备根据查询请求中目标用户丁的姓名信息首先在联系人信息库中查找是否存在该目标用户丁的联系信息,若联系人信息库中不存在目标用户丁的联系信息,网络设备则将空信息返回至第一用户甲,例如,通过返回提示信息提醒第一用户甲:联系人信息库中不存在目标用户丁的联系信息。

本申请还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机代码,当所述计算机代码被执行时,如前任一项所述的方法被执行。

本申请还提供了一种计算机程序产品,当所述计算机程序产品被计算机设备执行时,如前任一项所述的方法被执行。

本申请还提供了一种计算机设备,所述计算机设备包括:

一个或多个处理器;

存储器,用于存储一个或多个计算机程序;

当所述一个或多个计算机程序被所述一个或多个处理器执行时,使得所述一个或多个处理器实现如前任一项所述的方法。

图9示出了可被用于实施本申请中所述的各个实施例的示例性系统;

如图9所示在一些实施例中,系统900能够作为各所述实施例中的任意一个设备。在一些实施例中,系统900可包括具有指令的一个或多个计算机可读介质(例如,系统存储器或nvm/存储设备920)以及与该一个或多个计算机可读介质耦合并被配置为执行指令以实现模块从而执行本申请中所述的动作的一个或多个处理器(例如,(一个或多个)处理器905)。

对于一个实施例,系统控制模块910可包括任意适当的接口控制器,以向(一个或多个)处理器905中的至少一个和/或与系统控制模块910通信的任意适当的设备或组件提供任意适当的接口。

系统控制模块910可包括存储器控制器模块930,以向系统存储器915提供接口。存储器控制器模块930可以是硬件模块、软件模块和/或固件模块。

系统存储器915可被用于例如为系统900加载和存储数据和/或指令。对于一个实施例,系统存储器915可包括任意适当的易失性存储器,例如,适当的dram。在一些实施例中,系统存储器915可包括双倍数据速率类型四同步动态随机存取存储器(ddr4sdram)。

对于一个实施例,系统控制模块910可包括一个或多个输入/输出(i/o)控制器,以向nvm/存储设备920及(一个或多个)通信接口925提供接口。

例如,nvm/存储设备920可被用于存储数据和/或指令。nvm/存储设备920可包括任意适当的非易失性存储器(例如,闪存)和/或可包括任意适当的(一个或多个)非易失性存储设备(例如,一个或多个硬盘驱动器(hdd)、一个或多个光盘(cd)驱动器和/或一个或多个数字通用光盘(dvd)驱动器)。

nvm/存储设备920可包括在物理上作为系统900被安装在其上的设备的一部分的存储资源,或者其可被该设备访问而不必作为该设备的一部分。例如,nvm/存储设备920可通过网络经由(一个或多个)通信接口925进行访问。

(一个或多个)通信接口925可为系统900提供接口以通过一个或多个网络和/或与任意其他适当的设备通信。系统900可根据一个或多个无线网络标准和/或协议中的任意标准和/或协议来与无线网络的一个或多个组件进行无线通信。

对于一个实施例,(一个或多个)处理器905中的至少一个可与系统控制模块910的一个或多个控制器(例如,存储器控制器模块930)的逻辑封装在一起。对于一个实施例,(一个或多个)处理器905中的至少一个可与系统控制模块910的一个或多个控制器的逻辑封装在一起以形成系统级封装(sip)。对于一个实施例,(一个或多个)处理器905中的至少一个可与系统控制模块910的一个或多个控制器的逻辑集成在同一模具上。对于一个实施例,(一个或多个)处理器905中的至少一个可与系统控制模块910的一个或多个控制器的逻辑集成在同一模具上以形成片上系统(soc)。

在各个实施例中,系统900可以但不限于是:服务器、工作站、台式计算设备或移动计算设备(例如,膝上型计算设备、手持计算设备、平板电脑、上网本等)。在各个实施例中,系统900可具有更多或更少的组件和/或不同的架构。例如,在一些实施例中,系统900包括一个或多个摄像机、键盘、液晶显示器(lcd)屏幕(包括触屏显示器)、非易失性存储器端口、多个天线、图形芯片、专用集成电路(asic)和扬声器。

需要注意的是,本申请可在软件和/或软件与硬件的组合体中被实施,例如,可采用专用集成电路(asic)、通用目的计算机或任何其他类似硬件设备来实现。在一个实施例中,本申请的软件程序可以通过处理器执行以实现上文所述步骤或功能。同样地,本申请的软件程序(包括相关的数据结构)可以被存储到计算机可读记录介质中,例如,ram存储器,磁或光驱动器或软磁盘及类似设备。另外,本申请的一些步骤或功能可采用硬件来实现,例如,作为与处理器配合从而执行各个步骤或功能的电路。

另外,本申请的一部分可被应用为计算机程序产品,例如计算机程序指令,当其被计算机执行时,通过该计算机的操作,可以调用或提供根据本申请的方法和/或技术方案。本领域技术人员应能理解,计算机程序指令在计算机可读介质中的存在形式包括但不限于源文件、可执行文件、安装包文件等,相应地,计算机程序指令被计算机执行的方式包括但不限于:该计算机直接执行该指令,或者该计算机编译该指令后再执行对应的编译后程序,或者该计算机读取并执行该指令,或者该计算机读取并安装该指令后再执行对应的安装后程序。在此,计算机可读介质可以是可供计算机访问的任意可用的计算机可读存储介质或通信介质。

通信介质包括藉此包含例如计算机可读指令、数据结构、程序模块或其他数据的通信信号被从一个系统传送到另一系统的介质。通信介质可包括有导的传输介质(诸如电缆和线(例如,光纤、同轴等))和能传播能量波的无线(未有导的传输)介质,诸如声音、电磁、rf、微波和红外。计算机可读指令、数据结构、程序模块或其他数据可被体现为例如无线介质(诸如载波或诸如被体现为扩展频谱技术的一部分的类似机制)中的已调制数据信号。术语“已调制数据信号”指的是其一个或多个特征以在信号中编码信息的方式被更改或设定的信号。调制可以是模拟的、数字的或混合调制技术。

作为示例而非限制,计算机可读存储介质可包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据的信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动的介质。例如,计算机可读存储介质包括,但不限于,易失性存储器,诸如随机存储器(ram,dram,sram);以及非易失性存储器,诸如闪存、各种只读存储器(rom,prom,eprom,eeprom)、磁性和铁磁/铁电存储器(mram,feram);以及磁性和光学存储设备(硬盘、磁带、cd、dvd);或其它现在已知的介质或今后开发的能够存储供计算机系统使用的计算机可读信息/数据。

在此,根据本申请的一个实施例包括一个装置,该装置包括用于存储计算机程序指令的存储器和用于执行程序指令的处理器,其中,当该计算机程序指令被该处理器执行时,触发该装置运行基于前述根据本申请的多个实施例的方法和/或技术方案。

对于本领域技术人员而言,显然本申请不限于上述示范性实施例的细节,而且在不背离本申请的精神或基本特征的情况下,能够以其他的具体形式实现本申请。因此,无论从哪一点来看,均应将实施例看作是示范性的,而且是非限制性的,本申请的范围由所附权利要求而不是上述说明限定,因此旨在将落在权利要求的等同要件的含义和范围内的所有变化涵括在本申请内。不应将权利要求中的任何附图标记视为限制所涉及的权利要求。此外,显然“包括”一词不排除其他单元或步骤,单数不排除复数。装置权利要求中陈述的多个单元或装置也可以由一个单元或装置通过软件或者硬件来实现。第一,第二等词语用来表示名称,而并不表示任何特定的顺序。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1