组源联系人目录的管理系统和方法与流程

文档序号:13765798阅读:186来源:国知局
组源联系人目录的管理系统和方法与流程

技术领域

本申请涉及用于管理组源(group-sourced)联系人目录的方法和系统。



背景技术:

以下描述包括可能有助于理解本发明的信息。这并非承认本文所提供的任何信息是现有技术或与当前要求保护的发明相关,也并非承认任何明确或隐含地引用的出版物是现有技术。

随着智能电话和各种在线社交网络的出现,期望联系信息能够一键获得。通常,人们以有组织的形式(例如,在一个或多个联系人目录中)将已知联系人的信息存储在其智能电话中。然而,人们很难知晓(并且随后存储)其所期望能够联系的所有人的联系信息。另外,联系信息是时时变化的(例如,人们换电话号码或电子邮件地址等)。因此,管理和更新联系人目录可能是具有挑战性且耗时的。

曾经通过生成共享联系列表来致力于解决上述问题。例如,授予Mandre("Mandre")的题为“Synchronizing Contacts(同步联系人)”的美国专利No.7,743,024公开了一种通过通信网络在一组用户之间同步该组用户的联系信息的端对端方法。在Mandre中,属于该用户组的用户可以选择其他用户的联系信息,并邀请其他用户彼此同步联系信息。

类似地,授予Ramnani("Ramnani")的题为“Crowd-sourced contact information and updating system using artificial intelligence(使用人工智能的群组联系信息和更新系统)”的美国专利申请No.2014/0,066,044公开了一种用于共创和管理用户的联系人的联系信息和概要(profile)信息的方法和系统。在Ramnani中,组中的任何个人可以对他或她的联系列表作出改变。当对个人的联系列表作出改变时,群组联系列表可以基于该个人贡献的信息自动更新并植入(populated)。Ramnani还公开了群组联系列表也可以由群组联系列表中的用户进行编辑、添加或更新。然而,在群组联系列表中所做的改变可能根据用户的身份而被赋予不同的权重。然而,Mandre和Ramnani均未提出通过添加不属于该组的人或实体的联系信息来扩展共享联系列表。

还有人曾试图通过添加不属于共享组成员的人或实体的联系信息来扩展共享联系列表。例如,授予Quon("Quon")的题为“System and method for adding and associating users on contact address book(用于添加并关联联系地址簿中的用户的系统和方法)”的美国专利申请No.2008/0,292,080公开了一种允许服务用户基于联系电话号码将其他服务用户和非用户添加到服务用户的地址簿的服务。另外,Quon提供了一种通过比较用户之间的联系信息集基于用户联系号码来关联服务用户的方法。因此,当一个用户的联系信息集的一部分匹配于与另一用户相关的信息时,这两个用户可以通过在其联系列表中具有彼此的联系信息来进行关联。然而,Quon的关联系统局限于比较用户之间的联系信息以及将一个用户与另一用户进行关联。

本文提及的所有公开出版物通过引用合并于此,如同每个单独公开出版物或专利申请被明确且单独指出为通过引用合并于此。在被合并的参考文献中对术语的定义或使用与本文所提供的对该术语的定义不一致或相矛盾的情况下,采纳本文所提供的对该术语的定义,而不采纳参考文献中对该术语的定义。

因此,仍然需要一种改进的允许自动更新和维护联系信息的联系列表管理系统。



技术实现要素:

本发明主题提供其中联系人的目录为组源的、在目录成员之间共享且使用存储在成员设备中的联系人自动更新的装置、系统和方法。

本发明主题的一个方面涉及一种组源联系列表发现系统。在这种组源联系列表发现系统中,联系目录的联系信息是组源的。联系目录包括目录的多个成员的联系信息。在某些实施例中,组源目录中的所有成员具有对目录的联系信息的访问权。具体来说,该目录的每个成员可以添加新的联系人(添加新成员)、去除联系人(去除成员)以及编辑目录中的任何联系人的联系信息。

另外,当新的联系人被添加到目录中时,新的联系人自动变成目录的成员。该新成员被通知他/她已被纳入目录。在某些实施例中,新成员被提供对目录中其他成员的联系信息的访问权,使得该新成员能够编辑他/她自身的联系信息或目录中其他成员的联系信息。

在某些实施例中,该系统包括联系人目录数据库和发现引擎。该组源联系人目录数据库存储联系目录,所述联系目录包括与第一人相关联的第一联系人。发现引擎包括处理器,并且还包括存储程序指令的存储器。所述程序指令在被所述处理器执行时使所述处理器执行以下步骤:为所述第一用户设备提供第一接口,所述第一接口使得所述第一人能够将与第二人相关联的第二联系人添加到所述联系目录,以及基于所述第二联系人被添加到所述联系目录,向与所述第二人相关联的用户设备(1)自动发送通知,并且向所述第二人(2)提供对所述联系目录中所包括的所有联系人的编辑权限,其中所述通知包括与所述联系目录相关的信息。在所述第二联系人被添加到所述联系目录之间,所述第二人可能无法访问所述联系列表。

在某些实施例中,所述编辑权限包括将新的第三联系人添加到所述联系目标中的权限。在某些实施例中,所述编辑权限包括从所述联系目录中去除所述第一联系人的权限。在某些实施例中,所述编辑权限包括编辑与所述第一联系人相关联的联系信息的权限。

所述添加所述第二联系人可包括:添加与所述第二联系人相关的联系信息,其中,所述联系信息包括电话号码。在某些实施例中,联系人为智能电话或蜂窝电话联系人,各自包括电话号码和电子邮件地址。

所述指令可进一步使所述处理器:接收将与第三人相关联的第三联系人添加到所述联系目录的请求;以及基于所述第三联系人被添加到所述联系目录,向与所述第三人相关联的用户设备(1)自动发送通知,并且向所述第三人(2)提供针对包括在所述联系目录中的所有联系人的编辑权限,其中,所述通知包括与所述联系目录相关的信息。所述请求可从所述第一设备和所述第二设备中的一个接收。

所述指令可进一步使所述处理器接收从所述联系目录去除所述第一联系人的请求;以及一旦从所述联系目录去除所述第一联系人,即去除所述第一人对所述联系列表的编辑权限。所述请求可从所述第二人接收。

本申请的另一方面涉及一种由计算机实现的管理联系目录的方法,该方法包括:接收在组源联系发现生态系统中发现引擎的新用户相关的联系信息;从所述联系信息选择唯一标识符;在联系人目录数据库中搜索所述唯一标识符,以识别其中联系目录中的联系人的联系信息包括所述唯一标识符的所述联系目录。针对一被识别出的联系目录,该方法包括向与所述新用户相关联的用户设备提供与所述被识别出的联系目录相关的信息;以及对所述新用户授予编辑权限,从而允许所述新用户编辑所述被识别出的联系目录中的信息。

所述被识别出的联系目录可以是共享联系目录,所述共享联系目录中的联系人所代表的多个人是所述联系目录的成员,并且每个成员具有编辑所述共享联系目录中的信息的权限。在某些实施例中,所述编辑权限包括将一联系人添加到所述共享联系目录的权限。在某些实施例中,所述编辑权限包括从所述共享联系目录去除联系人的权限。在某些实施例中,所述方法包括:调解由两个以上成员的不一致编辑造成的冲突。

在某些实施例中,所述被识别出的联系目录与背景标准相关联。在这些实施例中,该方法包括:从所述新用户接收个人联系目录,其中所述个人联系目录中的至少一个联系人与至少一个属性相关联;通过将所述个人联系目录中的联系人的至少一个属性与所述背景标准相比较,来识别所述个人联系目录中满足所述背景标准的联系人的子集;通过将所述联系人的所述子集添加到所述共享联系目录来自动更新所述共享联系目录;以及使所述共享联系目录与所述共享联系目录的副本自动同步。所述联系人的所述子集可包括与添加的成员相关联的添加的联系人,其中,所述方法进一步包括向所述添加的联系人提供编辑所述共享联系目录的权限。在某些实施例中,在所述联系人的所述子集被添加到所述共享联系目录之前,所述添加的成员无法访问所述共享联系目录。

在某些实施例中,第一成员的联系信息用于确定所述第一成员的位置。在某些实施例中,所述第一成员的位置用于确定所述第一成员的本地时间。

本申请的又一方面是一种发现引擎,包括:包括处理器可读指令的存储器;以及被配置为读取所述指令并执行所述指令的处理器,所述指令在被执行时,使所述处理器:从共享联系目录的第一成员接收与所述共享联系目录中的第一联系人相关的第一联系信息更新;从所述共享联系目录的第二成员接收与所述共享联系目录中的所述第一联系人相关的第二联系信息更新;识别出所述第一联系信息更新与所述第二联系信息更新相冲突;选择所述第一联系信息更新与所述第二联系信息更新之一来进行保留,以作为保留的更新。所述指令进一步使所述处理器利用所述保留的更新编辑所述共享联系目录;存储具有所述保留的更新的所述共享联系目录作为新版本的所述共享联系目录;以及将所述共享联系目录的副本同步到所述新版本。

在某些实施例中,所述指令进一步使所述处理器:将第一时间戳与所述第一联系信息更新相关联;将第二时间戳与所述第二联系信息更新相关联;将所述第一时间戳与所述第二时间戳进行比较;以及基于所述比较选择要保留的更新。

在某些实施例中,所述保留的更新时第一联系信息更新,其中,所述指令使所述处理器:在接收到所述第一联系信息更新之后,通过利用所述第一联系信息更新编辑所述共享联系目录来创建第一更新版本,以及同步所述共享联系目录的所述副本;在接收到所述第二联系信息更新之后,通过利用所述第二联系信息更新编辑所述共享联系目录来创建第二更新版本,以及同步所述共享联系目录的所述副本;以及在选择所述第一联系信息更新作为所述保留的更新之后,通过回退到所述第一更新版本来利用所述保留的更新编辑所述共享联系目录。

在某些实施例中,所述指令进一步使所述处理器将来自所述第二联系信息更新的关键字添加到否定性关键字列表。

在本发明主题的另一方面,公开了基于存储在成员设备上的现有联系信息自动更新联系人列表的系统和方法。在某些实施例中,每个联系人列表包括联系信息和背景标准,所述背景标准定义哪些联系人或哪些成员属于该目录。在这些实施例中的一部分中,当一成员是联系人列表的一部分时,在与该成员相关联的设备上执行的联系人列表管理引擎被编程为分析存储在该设备中的现有联系人,通过将该目录的背景标准与现有联系人所关联的属性进行比较来确定哪些现有联系人应属于该目录,并利用具有满足背景标准的属性的现有联系人来更新目录。

在某些实施例中,本发明主题包括一种管理存储在计算设备上的联系人目录的方法。所公开的方法包括获取联系人目录的步骤。该目录包括目录的成员的联系信息。该目录进一步包括定义哪些联系人或哪些成员属于该目录的背景标准。

该方法进一步包括从与目录成员相关联的设备取得个人联系列表的步骤。在某些实施例中,联系列表的每个联系人与至少一个属性相关联。一旦个人联系列表被取得,该方法继续将该列表中每个联系人的至少一个属性与背景标准相比较,并识别满足该背景标准的联系人子集。

在某些实施例中,目录在目录成员之间共享和同步。在这些实施例中,该方法使用上述相同的过程来分析与目录的每个成员相关联的设备中的现有联系人,并相应地更新设备上的目录。随后,该方法同步每个设备上的目录的本地副本,使得从每个设备取得的新联系人被添加到目录的所有本地副本。

本发明主题的各种目的、特征、方面和优势将从以下对优选实施例的具体描述以及附图中变得显而易见,在附图中,相同的数字表示相同的部件。

附图说明

图1示出了联系人目录发现生态系统。

图2示出了允许人们针对不同目录使用不同联系信息的实施例。

图3示出了联系人目录客户端的示例用户界面。

图4示出了联系人目录客户端的另一示例用户界面。

具体实施方式

在以下论述中,将多次提及服务器、服务、界面、引擎、模块、客户端、端、门户、平台或由计算设备形成的其他系统。应认识到,对此类术语的使用被视为表示一个或多个具有至少一个被配置为执行存储在计算机可读有形非易失性介质(例如,硬盘驱动器、固态驱动器、RAM、闪存、ROM等)上的软件指令的处理器(例如,ASIC,FPGA,DSP,x86,ARM,ColdFire,GPU、多核处理器等)的计算设备。例如,服务器可包括以履行以所描述的角色、职责或功能的方式操作为web服务器、数据库服务器或其他类型的计算机服务器的一个或多个计算机。各种服务器、系统、数据库或界面可使用标准化协议或算法(可能基于HTTP、HTTPS、AES、公共-私有秘钥交换、web服务API、已知金融交易协议或其他电子信息交换方法)来交换数据。数据交换可以通过分组交换网络、电路交换网络、互联网、LAN、WAN、VPN或其他类型的网络来实施。

在处理器的语境下,术语“被配置为”、“被编程为”指的是通过软件指令集被编程以执行一个或一组功能。

应认识到,所公开的联系人目录发现系统提供了多个有利的技术效果。例如,某些实施例的联系人目录发现系统通过系统地允许人们更新和编辑共享目录中的联系人和联系信息来使联系信息能够保持最新。

以下论述提供了很多示例实施例。尽管每个实施例表示多个元素的单种组合,但是本申请设想到所公开元素的多种组合。因此,例如,如果一个实施例包括要素A、B和C,且第二实施例包括元素B和D,那么A、B、C、D的其他剩余组合即使未明确公开,也包括在本申请中。

如本文所使用的,除非另有上下文另有说明,否则术语“连接至(coupled to)”旨在包括直接连接(其中彼此连接的两个元件彼此接触)和间接连接(其中在这两个元件之间还有至少一个额外的元件)两者。因此,术语“连接至(coupled to)”和“与…连接(coupled with)”以同义的方式被使用。

在某些实施例中,使用了表达量的数值参数。应理解,这些数值参数可能并不是精确的,而是应被理解为在某些情况下可以通过术语“大约”来修正。相应地,在某些实施例中,数值参数是可随特定实施例欲获得的期望特性而变的近似值。

如本文描述中所使用的,以及贯穿以下的权利要求,除非上下文另有明确说明,否则“一(a)”、“一个(an)”以及“该/所述(the)”的含义包括复数。另外,如本文描述中所使用的,“在…中(in)”的含义包括“在…中(in)”和“在…上(on)”。

除非上下文另有明确说明,否则本文所提出的范围应被解释为包括其端点,并且开放端点的范围应被理解为仅包括可商用的值。本文中对值的范围的叙述仅仅旨在用作单独地指代落入该范围的每个独立值的简化方法。除非本文另有说明,否则每个落入范围内的单独值如同它们在本文中被单独叙述那样并入说明书。类似地,除非上下文另有明确说明,否则值的所有列表应被视为包括中间值。

除非本文另有说明或者除非上下文中有明确相反说明,否则本文所描述的方法能够以任何合适的顺序执行。针对本文中特定实施例提供的任何和所有示例的使用或示例性语言(例如,“诸如”)仅仅旨在更好地例证所描述的概念,并非旨在对本申请的范围施加限制。说明书中的任何语言都不应被解释为指定任何未要求的必要元素。

本文所公开的创造性主题的替代元素或实施例的分组不应被解释为限制。每个组成员可被单独提及和要求,也可以与组的其它成员或本文找到的其它元素的任意组合的形式被提及和要求。组的一个或多个成员可出于便利性和/或可专利性的原因被纳入一组中,或从一组中去除。当任何纳入或去除发生时,说明书在此被视为包含修改后的组,从而满足所附权利要求书所使用的所有马库什组的书面描述。

本申请允许构造或配置计算系统或设备以进行非人类能力所及的海量数据运算。计算系统或设备能够以可向计算系统或设备的用户提供效用的方式管理数字数据,而没有此工具的话用户可能会缺乏此效用。

本发明的主题提供其中联系人的目录为组源、在目录成员之间共享且自动更新的装置、系统和方法。在本申请中,联系目录指的是一个或多个联系人的列表,其中每个联系人代表一个人(其中这里“人”指的是特定的人、公司或其它实体)。每个联系人可与一个或多个联系信息条目相关联,例如,电话号码、电子邮件地址、物理地址、社交网络名称(例如,推特上使用的名称)、域名或URL。每个联系人也可以与一个或多个属性相关联,例如,位置、学校、雇主、职位或关系。目录中的联系人所代表的人被指定为该目录的成员。

本申请中的组源是指多个人对内容作出贡献的能力。关于如本申请所述的联系目录的内容,可以具有有限数量的人被允许对该目录的内容作出贡献。例如,被允许对目录的内容作出贡献的人可局限于该目录的所有成员,或局限于该目录的特定成员。

一人可具有多于一个联系目录,并且一联系人可被列于多于一个目录中。进一步地,如果一联系人被列于多于一个目录中,则该联系人的联系信息和属性在不同的目录中可能是不同的。

在某些实施例中,组源联系目录的所有成员都能够访问该目录中的联系信息。具体来说,联系目录的每个成员都能够将新联系人添加到该目录中(从而增加该目录的成员数量),从该目录中去除联系人(从而减少该目录的成员数量),以及编辑该目录中的任何联系人的联系信息。

另外,当一新的联系人被添加到一联系目录中时,该新联系人所代表的人自动变成该目录的新成员。该新成员被通知其被纳入该目录中。在某些实施例中,新成员被提供对该目录中其他成员的联系信息的访问权,使得该新成员不仅能够编辑他/她自己的联系信息,而且能够编辑该目录中其他成员的联系信息。

本发明主题的一个方面包括一种组源联系目录发现系统。该系统包括存储多个联系目录的联系目录数据库。每个联系目录包括与一个或多个人(成员)相关联的联系信息。该系统进一步包括发现引擎。发现引擎包括处理器和存储器,该存储器存储有程序指令,所述程序指令在被该处理器执行时,使处理器实现组源联系人目录发现系统的实施例。在某些实施例中,发现引擎被编程为在与目录的成员相关联的设备(例如,智能电话)上提供一界面,使得该成员能够将新联系人添加到该目录中,和/或添加或编辑联系人的联系信息(例如,电话号码、电子邮件地址、社交网络标识(ID)等)。当新联系人被添加到目录中时,该新添加的联系人所代表的人由于该新联系人的纳入而变成该目录的新成员。一旦添加了该新成员,该发现引擎被编程为向与该新成员相关联的设备自动发送通知。在某些实施例中,该通知包括指示该新成员被添加到该目录中的文本或语音消息。在某些实施例中,此通知可进一步提供关于该目录的信息(例如,目录名称、目录属性等)。

另外,该发现引擎被编程为向该新成员提供对该目录进行编辑的权限。在某些实施例中,该编辑权限与目录的某些或所有其他成员的编辑权限相同,即其编辑权限包括向目录添加新联系人的权限、从该目录中去除联系人的权限以及编辑该目录中的联系信息的权限。

图1是根据本发明主题的组源联系人目录生态系统100的一些实施例。该生态系统100包括分别与人101-105相关联的多个用户设备106-110。用户设备106-110为人101-105用于存储联系信息的便携式设备。

生态系统100还包括发现引擎130,该发现引擎130通过设备界面120与用户设备106-110相连接。在某些实施例中,该发现引擎130在一个或多个计算设备上实现,所述计算设备具有存储程序指令的存储器,所述程序指令在被所述一个或多个计算设备的处理器执行时,使所述处理器执行该系统100的功能。如所示的,除了设备界面120之外,发现引擎130还包括管理器模块133、同步模块131、通知模块132以及数据库接口140。

该生态系统100进一步包括组源联系目录数据库150,该组源联系目录数据库150通过发现引擎130的数据库接口140与发现引擎130相连接。应认识到,各个例示的元件的角色或职责可部署或分布于一个或多个适当配置的计算设备之间。例如,用户设备106-110中的任一个可包括设备界面120、发现引擎130、数据库接口140以及组源联系目录数据库150。还设想到,用户设备106-110中的任一个可包括一个或多个应用(例如,移动应用等),所述应用将用户设备配置为通过网络(例如,互联网、蜂窝网络、WAN、VPN、LAN、个人局域网、Wi-Fi直连、DLNA、端到端、ad hoc、网格等)与设备界面120相连接。进一步设想到,发现引擎130和组源联系目录数据库150位于至少两个单独但可通信连接的计算设备中。

联系人目录数据库150存储不同的联系目录及其相关联的信息,这在下文中进一步阐述。在某些实施例中,组源联系目录数据库150可在发现引擎130中实现,而在其他实施例中,组源联系目录数据库150可通过网络(例如,互联网、局域网、广域网等)与发现引擎130通信连接。在某些实施例中,每个用户设备(106-110)还包括发现客户端(161-165),所述客户端被编程为执行发现系统100的一个或多个特征,并通过设备界面120与发现引擎130通信。

用户设备106-110被例示为智能电话,但用户设备更普遍地可以是例如另一类型的数字设备,例如蜂窝电话、平板电脑、数字组织器、游戏控制台、计算机、数码相机、电器、电话亭、全球定位系统(GPS)设备或生物计量设备,所述数字设备具有存储联系人和编程指令的存储器,并具有用于执行所述编程指令的至少一个处理器。用户设备106-110可进一步包括可用于检测设备106-110的位置的一个或多个传感器(例如,WiFi信号强度计、GPS传感器、加速计等)。

在某些实施例中,用户设备(例如,用户设备106-110)与用户的唯一标识符(例如,电话号码、电子邮件地址、社交网络ID等)相关联,使得该用户设备可通过该唯一标识符被唯一标识。在某些实施例中,与用户设备相关联的唯一标识符是该人的联系信息的一部分。例如,如图1所示,用户设备106与属于人101(Alan)的电话号码相关联,用户设备107与属于人102(Beth)的电话号码相关联,用户设备108与属于人103(Chuck)的电话号码相关联,用户设备109与属于人104(Dora)的电话号码相关联,用户设备110与属于人105(Zack)的电话号码相关联。虽然在图1的示例中,用户设备106-110中的每一个与一不同的电话号码和一不同的人相关联,但是也可设想到,一个用户设备可与多个电话号码和/或多个人相关联,或者一个人与多个用户设备相关联。在某些实施例中,用于将用户设备与人相关联的联系信息可以是用于任何类型的通信介质的联系人标识符(例如,电话号码、电子邮件地址、社交媒体处理程序、社交网络ID、URL等)。

通常,人(例如,人101-105)将针对联系人的联系信息(例如,代表家庭、朋友、合作者、卖主、同事等)存储在与该人相关联的设备的永久存储器或可移动存储器(例如,硬盘驱动器、闪存等)中。在其他实施例中,人的联系人可存储在可通过网络进行访问的在线存储空间(例如,Google CloudTM、iCloudTM、BoxTM等)。用户设备(例如,用户设备106-110)还提供接口以供人从存储器获取联系人并编辑联系人(例如,添加新联系人、去除联系人、编辑联系信息等)。

例如,如图1所示,用户设备109存储被标记为Chuck、Ellie和Frank的联系人,并且用户设备110存储被标记为Jacob、Molly和Nancy的联系人。

在传统联系组织系统中,联系信息通常以扁平组织结构存储(即,所有联系信息存储在相同的等级下)。可设想到,平坦组织结构无法提供联系人之间的有意义的关系,因此,在某些实施例中,每个用户设备的发现客户端被编程为提供用户界面,该用户界面使得与用户设备对应的人能够创建和管理用于组织联系人的一个或多个联系目录。联系目录是包括元数据并封装一组联系人的联系信息的数据结构。例如,如图1所示,用户设备106存储被标记为Alan、Beth和Chuck的联系人,并将联系人Alan、Beth和Chuck分组为被标记为组X的联系目录中。联系目录的元数据可包括对应联系目录的背景标准,其表征对应联系人目录中的联系人(例如,UCLA的2001毕业生,Smith家庭、Acme公司等)。例如,被标记为“EZ舞蹈俱乐部”的联系目录可具有“EZ舞蹈俱乐部成员”的背景标准,其表明EZ舞蹈俱乐部联系目录中的所有联系人都是EZ舞蹈俱乐部的成员。

联系目录可在用户设备之间共享。独立的用户设备(例如,用户设备106、107、108)中的共享联系目录彼此同步。同步可例如周期性进行,或者依请求进行,或者在离线设备上线时进行。参照图1,在对联系目录进行建立和组源共享的示例中,Alan创建了称为“组X”的联系目录,用于存储代表于2015年从加州大学欧文分校毕业的人,并在联系目录中添加了“2015年UCI班”的背景标准。如所示的,Alan通过如下方式将他自己、Beth和Chuck作为联系人添加到该联系目录中:将现有联系人添加到“组X”联系目录中,或者创建新联系人并将联系人复制到联系目录中,或者在“组X”联系目录中创建新联系人。联系人和联系信息可通过发现客户端161(例如,用户设备106的发现客户端161)的用户界面进行输入。

在某些实施例中,发现客户端(例如,发现客户端161)可允许人(例如,人101)将联系目录指定为私有或共享。如果联系目录被指定为“私有”,则该目录中存储的包括联系人的名称和联系信息在内的信息将被限制为由人101通过用户设备106访问。另一方面,如果联系目录被指定为“共享”,则联系目录将被目录的所有成员共享,并且可被目录的所有成员访问。

因此,当Alan将“组X”联系目录指定为“共享”时,该发现客户端161被编程为通过设备界面120向发现引擎130发送与“组X”联系目录(例如,目录名称、目录背景标准、联系人名称、联系信息、联系属性等)相关联的数据。当发现引擎130从用户设备接收到新的联系目录时,管理器模块133被编程为首先确定联系目录数据库150中是否存在具有相同名称的联系目录,如果不存在,则通过用户界面140将与新联系目录相关联的数据存储在联系目录数据库150中。另外,管理器模块133还被编程为使用通知模块132来向新创建的联系目录的其他成员发送通知。在该示例中,由于“组X”联系目录包括联系人Alan、Beth和Chuck,当发现引擎130从用户设备106(即与成员Alan相关联的用户设备)接收到与“组X”联系目录相关联的数据时,通知模块132被编程为基于与“组X”联系目录中的联系人Beth和Chuck相关联的联系信息,分别向用户设备107和108的发现客户端162和163发送通知。在某些实施例中,通知包括向成员通知添加到“共享”联系目录的消息,并且通知还可提供关于联系目录的信息(例如,目录名称、背景标准、其他联系人名称等)。

在某些实施例中,发现客户端162和163还被编程为从发现客户端130下载“组X”联系目录,并且将“组X”联系目录分别存储在用户设备107和108的本地永久性存储器(例如,本地硬盘驱动器)中,使得由联系人(例如,Beth和Chuck)代表的成员可继续分别通过其用户设备107和108来访问目录。

一旦联系目录变成“共享”的,则该联系目录的内容将为组源的。在以上“组X”示例中,由于“组X”联系目录包括Alan、Beth和Chuck,发现系统100使得“组X”联系目录的所有成员,即联系人Alan、Beth和Chuck所代表的人能够对“组X”联系目录的内容作出贡献。因此,某些实施例的发现引擎139指示发现客户端161、162和163给予由联系人Alan、Beth和Chuck代表的成员以添加、去除或编辑与“组X”成员目录相关的信息的访问权。发现引擎130被编程为允许由联系人Alan、Beth和Chuck代表的成员在“组X”联系目录中添加新联系人、从“组X”联系目录中去除联系人、以及在“组X”联系目录中编辑任何联系信息。如此,作为“组X”联系目录创建人的Alan不必知道针对2015年从DCI毕业的每个人的联系信息,因为他可以依赖于Beth、Chuck和任何未来将被添加到“组X”联系目录的新成员来更新和维护“组X”联系目录。

例如,如果Chuck知道另一个人Dora也是DCI的2015届毕业生,则Chuck可使用由发现客户端163提供的用户界面来在“组X”联系目录中添加联系人Dora和Dora的联系信息。一旦发现客户端163从与Chuck相关联的用户设备接收到新联系人,则该发现客户端163被编程为通过设备界面120向发现引擎130发送与新联系人Dora相关联的数据(例如,“组X”联系目录的名称,联系人的标签(Dora)、联系人Dora的联系信息等)。

在接收到与新联系人Dora相关联的数据之后,管理器模块133被编程为通过在“组X”联系目录中添加该新联系人Dora及相关联的联系信息来更新联系目录数据库150中存储的“组X”联系目录。同步模块131被编程为使得“组X”联系目录在与“组X”联系目录的成员相关联的用户设备106、107、108和109之间同步。在某些实施例中,同步模块131被编程为仅向用户设备106、107、108和109发送差量(即,对目录所做的最新改变),而在其他实施例中,同步模块131被编程为向上述设备发送“组X”联系目录的最新版本的完整数据。当发现客户端161、162、163和164从同步模块131接收到同步数据时,发现客户端161、162、163和164被编程为更新“组X”联系目录的本地副本。应注意,根据某些实施例,仅“组X”联系目录的成员能够访问“组X”联系目录(例如,查看和编辑“组X”联系目录的信息),而与“组X”联系目录的成员不相关联的用户设备(例如,人105(Zack)的用户设备110)无法访问“组X”联系目录,除非且直到Zack也被成员之一添加到“组X”联系目录为止。

可设想到,通知仅在发现客户端被安装到用户设备上之后才能到达用户设备,并且在某些实施例中,通知仅在与用户设备相关联的人通过发现客户端“注册”到服务器之后才能到达用户设备。因此,在一些实施例中,当发现客户端最初被安装到用户设备上时,发现客户端被编程为向发现引擎130发送具有与该设备相关联的人的联系身份(例如,电话号码、电子邮件地址等)的信号。随后,发现引擎130被编程为查询联系目录数据库150以获取与其中该人先前被(例如,另一成员)添加为成员的联系目录相关的信息,并向发现客户端发送与这些联系目录相关的信息(例如,目录名称、背景标准、联系人、联系信息等)。在某些实施例中,与联系目录有关的信息基于预分配的访问权限被发送到发现客户端。

在某些实施例中,当通知模块132确定作为通知目标的人尚未在与该人相关联的用户设备上安装发现客户端时,通知模块132被编程为通过使用来自联系人目录数据库150中的联系目录的该人的联系信息,(例如,通过SMS、电子邮件、社交媒体等)发送邀请该人安装发送客户端的邀请。在其中要求在准予访问联系人目录数据库150之前进行注册的实施例中,邀请可进一步邀请该人加入发现社区。接收到该邀请的人可在稍后任何时候安装发现客户端并进行注册,从而允许该人使用发现引擎130来发现自己列于其中的联系目录。

当目录中的多个成员具有更新/编辑目录信息的访问权时,可预见到,可能会出现若干问题(例如,冲突、访问权等)。某些实施例的发现引擎130包括如下特征以解决这些问题。在某些实施例中,发现引擎130被编程为通过使用诸如时间戳之类的数据(例如,基于最近同步的时间,基于设备的本地时间等)来调解由多个人的不一致编辑造成的冲突。冲突可通过回退到联系目录的前一版本来得以调解。例如,如果共享联系目录的第一成员在第一时间对共享联系目录中的一联系人相关的信息作出更新,但在该第一时间并未在线,则彼时共享联系目录将不会被更新。在该示例中,在随后的第二时间,第二成员在在线的情况下对共享联系目录中的同一联系人相关的信息作出冲突性更新,使得该冲突性更新被同步到在大约第二时间在线的成员的用户设备。在该示例中,当第一成员在第三时间上线时,在第一时间创建的较旧更新将用于更新共享联系目录,其将同步到在大约第三时间在线的成员的用户设备。该发现引擎130可检测冲突,并且恢复到来自第二时间的共享联系目录的较早版本(在从第一时间更新被并入之前)。

某些实施例的发现引擎130被编程为在成员之间创建层级,其中某些成员具有比其他成员更高的优先级(例如,具有较高优先级的成员所执行的编辑通常将被保留),或者其中为不同的成员分配不同的编辑权限。另外,在被报告滥用之后,某些成员的一些编辑权限可被禁用。进一步地,一个成员可撤销另一成员的编辑。在某些实施例中,可实现对编辑权限的限制。另外,在某些实施例中,所述限制针对某些权限执行,而不针对其他权限执行。例如,删除联系人的权限可经由至少另一成员批准或同意方可生效,而对于添加联系信息的权限或编辑联系信息的权限不经由另一成员批准或同意即可生效。

在其他实施例中,每个联系目录可包括防止已删除的项目重新出现的否定性关键字列表(即,一旦否定性关键字被添加到联系目录的列表中,即防止该否定性关键字被输入到联系目录中)。否定性关键字可由成员或系统来添加。否定性列表可作为替代或补充地被添加到联系等级或联系信息等级上。通过使用否定性关键字,旧的或不正确的信息就不会回到系统中。

在某些实施例中,用户设备的发现客户端还被编程为将新的联系人自动添加到用户设备可访问的联系目录中。在这些实施例的一部分中,存储在用户设备上的一个或多个联系人除了包括联系信息之外还包括属性(例如,位置、工作、位置、关系、兴趣、归属等)。例如,参见图1,与人102(Beth)相关的属性(存储在用户设备106、107和108中)可包括Beth的工作岗位(例如,舞蹈老师等)、Beth的归属(例如,EZ舞蹈俱乐部等)以及Beth的位置(例如,加利福尼亚州圣塔莫尼卡)。类似地,与人103(Chuck)相关的属性(存储在用户设备106、107和108中)可具有Chuck与Beth的关系(例如,高中同班同学等)以及Chuck的兴趣(例如,萨尔萨舞蹈等)。发现客户端被编程为在从联系信息中提取这些属性中的一部分时,从一人直接获取这些属性中的一部分。例如,发现客户端被编程为从电子邮件地址提取与人所属组织相关的信息(例如,公司名称等)。

如上所提及的,联系目录可包括描述其成员的特性的背景标准。同样地,某些实施例的发现客户端被编程为,针对存储在用户设备上的每个联系人,通过将联系人的属性和联系目录的背景标准进行比较来确定该联系人可被添加到哪些目录。该发现客户端被编程为将联系人添加到所确定的联系目录,并将这些联系目录同步到发现引擎130和与发现目录的其他成员相关联的用户设备。例如,如果用户设备109的发现客户端164(基于电子邮件地址和其他信息)确定Frank也是2015届DCI毕业生,则发现客户端164被编程为将Frank添加到“组X”联系目录,并将该更新发送到发现引擎130。同步模块131被编程为与“组X”联系目录的其他成员(即Alan、Beth和Chuck)的用户设备进行通信,并更新其“组X”联系目录的本地版本。另外,通知模块132被编程为通知Frank他被纳入到“组X”联系目录中,并允许Frank通过其相关联的用户设备上的发现客户端访问和编辑“组X”联系目录中的信息。

除了向现有目录添加新联系人之外,发现引擎130还被编程为还使用来自一个联系目录的联系信息来更新另一联系目录的联系信息。当发现引擎130例如通过匹配电话号码识别出一个联系目录(例如,“私有”目录)中的联系人与另一联系目录(例如,“共享”目录)中的联系人相匹配时,发现引擎130被编程为使用该私有联系目录中的联系信息来更新共享联系目录中的联系信息,以及使用该共享联系目录中的联系信息来更新私有联系目录中的联系信息。在一个示例中,在用户设备106中的共享“组X”联系目录中的Beth的联系信息包括她的职位名称:老师,但是无任何归属信息,而在Alan的关联用户设备106中的Alan的私有联系目录中,Beth的联系信息包括Beth的归属:EZ舞蹈俱乐部,但是无任何职位信息。发现客户端161被编程为将共享“组X”联系目录中的Beth的联系信息更新为包括她的归属信息,并将Alan的私有联系目录中Beth的联系信息更新为包括她的职位信息。

作为在相关联系目录中自动添加联系人或更新联系人的替代,某些实施例的发现客户端被编程为首先通过用户界面向对应成员作出推荐,并使得该成员能够选择他或/她是否想要作出该添加和更新。

可设想到,联系目录数据库150存储多个联系目录。如图1所示,联系目录数据库150包括联系目录151(例如,“组X”联系目录)、“组Y”联系目录152(包括联系人Fitz、George、Harry、Indira以及Alan)和“组Z”联系目录153(包括联系人Jacob、Kris、Lewis以及Mona)。管理器模块133被编程为控制对联系目录的访问权,并与同步模块131和通知模块132一起工作,以保证与每个目录的成员相关联的用户设备具有最新版本的联系目录,并被通知其已被纳入一不同的联系目录中。还应注意,本文中所描述的系统的利益允许新成员对这些联系目录的“发现”方面。在传统系统中,其中每个人控制其自己的联系列表版本,该人的列表中的联系人并不知道他们被添加到该人的列表中,并且这些联系人不能在该人的列表中编辑他们自身的信息。

另一方面,本文所公开的发现系统确保该目录的任何新成员被通知他们被纳入联系目录中,并且该新成员能够编辑他/她自己的联系信息以及编辑其他成员的联系信息。这个功能引发使得一人能够针对该人所属的不同的联系目录提出不同的联系信息(例如,不同的电话号码、不同的电子邮件地址等)。例如,由于Alan同时为目录151和152的成员,故Alan能够在目录151和152中显示不同的电话号码(例如,在朋友/亲戚目录中显示个人电话号码,在工作相关目录中显示工作电话号码)。

在某些实施例中,发现引擎130被编程为融合共享共同背景标准的多个联系目录以创建新的联系目录,并且还将一联系目录划分为多个联系目录。如以上所提及的,存储在联系人目录数据库150中的联系目录可包括对联系目录中的联系人进行表征的一个或多个背景标准。在某些实施例中,联系目录通过其背景标准进行索引,以求检索速度。某些实施例的发现引擎130被编程为遍历联系人目录数据库150中的联系目录以发现具有共同背景标准的联系目录。例如,具有背景标准“CMU”和“2015班级”的联系目录和具有背景标准“CMU”和“2014班级”的联系目录共享“CMU”的共同背景标准。同样地,发现引擎130可被编程为通过融合两个联系目录来生成新的联系目录,并将背景标准“CMU”分配给该新的联系目录。发现引擎130可被编程为使用通知模块132来通知该新“CMU”联系目录的所有成员他/她已被纳入“CMU”联系目录。这些成员随后可使用他们的发现客户端来维护和更新该新的“CMU”联系目录。

另外,发现引擎130可被编程为不仅分析联系目录的内容标准,而且还分析每个联系目录内的联系人的属性,以确定是否需要将一联系目录划分为多个联系目录。例如,如果发现引擎130识别出“CMU”联系目录中的一些联系人包括“2014班级”的属性,而“CMU”联系目录中的其他联系人包括“2015班级”的属性,则发现引擎130可被编程为生成两个新的联系目录,一个用于“2015的CMU班级”,另一个用于“2014的CMU班级”,并且将来自“CMU”目录的每个联系人根据他们的属性添加到这两个新的联系目录之一。一旦生成了两个联系目录,则通知模块132被编程为通知成员他们已被纳入新的联系目录。

联系目录可基于指定的标准或过滤器(例如,用法、搜索频率等)自动形成。发现引擎130还可提供搜索功能,使得人们可通过特定标准或背景来搜索联系目录。

图2示出了两个不同的联系目录,其中成员针对两个联系目录具有不同的联系信息(即不同的面貌)。图2示出了“萨尔萨舞蹈俱乐部”联系目录210和“公司V”联系目录220。该“萨尔萨舞蹈俱乐部”联系目录210具有包括A、D、E、F和G的成员。同样地,人A、D和G同时是联系目录210和220中的成员。图2还示出了人A针对“萨尔萨舞蹈俱乐部”联系目录210示出为联系人A1且使用联系信息211,针对“公司V”联系目录220示出为联系人A2且使用联系信息221。人D针对“萨尔萨舞蹈俱乐部”联系目录210示出为联系人D1且使用联系信息213,针对“公司V”联系目录220示出为联系人D2,使用联系信息222。人G针对“萨尔萨舞蹈俱乐部”联系目录210示出为联系人G1且使用联系信息214,针对“公司V”联系目录220示出为联系人G2,使用联系信息225。

图3示出了由发现客户端提供的用户界面305的示例。在图3中,用户界面305显示一联系人列表,其存储在用户设备300上,或者可由用户设备300访问。如所示的,联系人列表包括三个联系目录:“萨尔萨舞蹈俱乐部”联系目录、“公司V”联系目录和“家庭”联系目录。另外,“萨尔萨舞蹈俱乐部”联系目录和“公司V”联系目录已被指定为“共享”联系目录,而“家庭”联系目录已被指定为“私有”。图3还示出每个联系目录中联系人的联系信息。虽然在该示例界面305中显示出名称340、电话号码341、电子邮件342,可设想到,还可显示其他信息(例如,组织、关系等)。

图4示出用户设备300中的发现客户端的用户界面405的示例。用户界面405允许人编辑共享联系目录(例如,所示的“萨尔萨舞蹈俱乐部”联系目录)中的联系信息。如所示的,用户界面405包括多个单选按钮,例如用于从联系目录中的联系人选择一联系人的单选按钮421,用于向“萨尔萨舞蹈俱乐部”联系目录添加新联系人的添加按钮430,用于从“萨尔萨舞蹈俱乐部”联系目录去除所选联系人的删除按钮431以及用于编辑所选联系人的联系信息的编辑按钮432。

另外,用户界面405还包括(在该示例中对于每个联系人)用于指示本地时间的显示区域(例如,显示区域422)、用于指示联系人的当前位置的显示区域(例如显示区域423)。在某些实施例中,每个用户设备包括确定用户设备的地理位置的位置确定模块(例如,GPS模块)。每个用户设备的发现客户端被编程为向发现引擎130周期性地发送检测到的用户设备的地理位置。一旦接收到来自不同用户设备的地理位置,发现引擎130被编程为确定每个用户设备的本地时间,并将位置和本地时间都存储在联系人目录数据库150中。同步模块还被编程为将位置和本地时间信息传播到所有用户设备,使得每个用户设备针对存储在用户设备中的联系人都具有位置和本地时间信息。当一个人想要与另一个人通信时,位置和本地时间信息可能是有用的,使得这个人会知道该通信是否处在不方便的时间。在某些实施例中,可通过反向查询区域码、移动号码或地址基于联系人的联系信息来估计联系人的本地时间。

在某些实施例中,用户界面405包括如下能力:将联系人归档到联系目录中,或者隐藏联系目录以将其从日常使用的主要联系人搜索中去除。

因此,描述了一种其中联系目录的联系信息是组源的系统。联系目录包括目录的多个成员的联系信息。在某些实施例中,组源目录中的所有成员具有对该目录的联系信息的访问权。具体来说,该目录的每个成员可添加新的联系人,去除联系人,并且编辑该目录中的任何联系人的联系信息。因此,本申请的组源联系目录的优点在于将维护和更新联系目录的负担分配从一个人转移到联系目录的一些或所有成员。

另外,当一新的联系人被添加到目录中时该新联系人所代表的人自动变成该目录的成员。该新成员被通知他/她被纳入该目录中。在某些实施例中,该新成员被提供对该目录中其他成员的联系信息的潜在访问权,使得该新成员能够编辑他/她自己的联系信息或该目录中其他成员的联系信息。

本领域技术人应理解,除了上面的描述之外,在不脱离本发明概念的情况下,更多的修改也是可行的。因此,只要在所附权利要求的精神内,本发明的主题不受限制。此外,在理解说明书和权利要求时,所有术语应以与上下文相一致的最广义的方式来理解。具体来说,术语“包括(comprises、comprising)”应被解释为非排他地提及要素、部件或步骤,表明所提及的要素、部件或步骤可与其他并未专门提及的要素、部件或步骤共同存在或使用或组合。当说明书和权利要求提及从由A、B、C…和N构成的组中选择的某事物中的至少一个时,该描述应被理解为要求该组中的仅一个要素,并非A加N或B加N等。

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