CN107409127B - 针对具有多个身份的联系人的许可管理 - Google Patents

针对具有多个身份的联系人的许可管理 Download PDF

Info

Publication number
CN107409127B
CN107409127B CN201680012153.5A CN201680012153A CN107409127B CN 107409127 B CN107409127 B CN 107409127B CN 201680012153 A CN201680012153 A CN 201680012153A CN 107409127 B CN107409127 B CN 107409127B
Authority
CN
China
Prior art keywords
identity
contact
primary
communication
user
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.)
Active
Application number
CN201680012153.5A
Other languages
English (en)
Other versions
CN107409127A (zh
Inventor
N·S·坎占达尼
A·M·赫迈尔
S·帕拉梅什瓦尔
N·纳塔诺夫
M·卡巴赞
S·S·哈雷斯
M·G·阿拉尔索
N·A·比格洛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Technology Licensing LLC
Original Assignee
Microsoft Technology Licensing LLC
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Microsoft Technology Licensing LLC filed Critical Microsoft Technology Licensing LLC
Publication of CN107409127A publication Critical patent/CN107409127A/zh
Application granted granted Critical
Publication of CN107409127B publication Critical patent/CN107409127B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/104Grouping of entities
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/22Indexing; Data structures therefor; Storage structures
    • G06F16/2282Tablespace storage structures; Management thereof
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/102Entity profiles
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/104Peer-to-peer [P2P] networks
    • H04L67/1044Group management mechanisms 

Abstract

描述了针对许可的身份管理的技术。根据各种实施例,用户建立与在本文中被称为“联系人”的另一用户的通信关系。根据各种实施例,该联系人与多个身份相关联。由此,在本文中所讨论的实施例使能指定主要身份,以使得施加针对主要身份的许可以用于与该联系人交互。此外,在本文中所讨论的技术使得主要身份能够基于联系人的身份状态的改变而被更新。

Description

针对具有多个身份的联系人的许可管理
背景技术
今天的相连接的计算环境给用户提供了彼此进行通信的多种不同的方式。例如,用户可以经由即时消息传送(IM)、音频和/或视频通话(例如,使用互联网协议语音(VoIP))、应用内消息传送等来进行通信。尽管这些不同形式的通信提供了多样化的通信机会,但是它们随之带来了许多挑战。用户身份的管理在这些挑战之中。例如,特定的个体用户可以由跨不同的通信模态的几个不同的身份来表示。在允许利用他们的一组身份来与用户进行通信的同时保持用户的隐私是主要的考虑。
发明内容
提供了该发明内容以用简化的形式引入在以下的具体实施方式中进一步描述的概念的选择。本发明内容不旨在标识所要求保护的主题的所有特征,也不旨在帮助确定所要求保护的主题的范围。
描述了针对许可的身份管理的技术。根据各种实施例,用户与在本文中被称为“联系人”的另一用户建立通信关系。根据各种实施例,该联系人与多个身份相关联。由此,在本文中所讨论的实施例使得能够指定主要身份,以便对与该联系人的交互施加对主要的身份的许可。此外,在本文中所讨论的技术使得能够基于联系人的身份状态的改变来更新主要的身份。
附图说明
参考附图描述了具体实施方式。在图中,附图标记的最左边的数字标识了该附图标记第一次出现所在的图。在描述和图中的不同的实例中使用的相同的附图标记可以指代相似或相同的项。
图1是根据一个或多个实施例的用于采用在本文中所讨论的技术的示例实现中的环境的示图。
图2描绘了根据一个或多个实施例的示例身份表。
图3描绘了根据一个或多个实施例的示例身份表。
图4描绘了根据一个或多个实施例的示例身份表。
图5描绘了根据一个或多个实施例的联系人许可的示例实例。
图6是根据一个或多个实施例的描述了用于标识要用于通信关系的许可的方法中的步骤的流程图。
图7是根据一个或多个实施例的描述了用于建立通信关系的方法中的步骤的流程图。
图8是根据一个或多个实施例的描述了用于解决针对联系人的一组多个身份的方法中的步骤的流程图。
图9是根据一个或多个实施例的描述了用于指定针对联系人的主要身份的方法中的步骤的流程图。
图10是根据一个或多个实施例的描述了用于维护针对联系人的身份的方法中的步骤的流程图。
图11是根据一个或多个实施例的描述了用于处理身份表的方法中的步骤的流程图。
图12是根据一个或多个实施例的描述了用于处理身份表的方法中的步骤的流程图。
图13是根据一个或多个实施例的描述了用于处理身份表的方法中的步骤的流程图。
图14是根据一个或多个实施例的描述了用于确定是否许可通信交互的方法中的步骤的流程图。
图15示出了如参考图1所描述的示例系统和计算设备,其被配置为实现在本文中所描述的技术的实施例。
具体实施方式
概述
描述了针对许可的身份管理的技术。根据各种实现,用户与在本文中被称为“联系人”的另一用户建立通信关系。通常而言,通信关系使得用户能够以各种方式与联系人交互,例如参与到与联系人的通信事件中、查看该联系人的在线信息等。
根据各种实现,该联系人与多个身份相关联。例如,该联系人创建了多个身份,其中每个身份标识不同平台中的联系人。例如,该联系人具有用于与通信服务(例如,互联网协议语音(VoIP)服务)交互的一个身份、用于访问电子邮件的另一身份、针对社交网络平台的另一身份等。此外,个体的身份可以与不同的隐私等级和所许可的行为相关联,在本文中被称为“许可”。
由此,在本文中所讨论的技术使得能够指定主要身份,以便对与该联系人的交互施加对主要的身份的许可。例如,针对该联系人,给予主要身份高于其他次要身份的优先级,以使得跨多个不同的身份来施加对主要身份的许可。
此外,在本文中所讨论的技术使得能够基于联系人的身份状态的改变来更新主要身份。例如,联系人可以将多个身份链接至一起,以便指定新的主要身份。在另一示例中,联系人可以将一组经链接的身份解链接,这使得指定新的主要身份。
通常而言,许可指定与联系人有关的允许的和/或不允许的行为和交互。例如,许可可以指定许可其他用户获得和/或不获得关于联系人的哪些类型的信息。此外,许可可以指定许可和/或不许可与联系人的特定的通信交互。由此,联系人最好能够控制许可与联系人进行哪些类型的交互,以及哪些类型的联系人信息被暴露给其他用户。因此,在本文中所讨论的技术通过基于联系人的主要身份而施加许可来保护用户的隐私和敏感信息。
在以下的讨论中,首先描述了用于采用在本文中所描述的技术的示例环境。接着,标题为“示例过程”的部分描述了根据一个或多个实现的一些示例方法。最后,标题为“示例系统和设备”的部分描述了根据一个或多个实施例的用于采用在本文中所讨论的技术的示例系统和设备。
示例环境
图1是根据一个或多个实施例的用于采用针对许可的身份管理的技术的示例实现中的环境100的示图。环境100包括与用户104相关联的客户端设备102。通常而言,客户端设备102可以被实现为任何合适的设备,作为示例而非限制,例如智能电话、平板计算机、可穿戴计算设备、便携式计算机(例如,膝上型计算机)、台式计算机、智能家电(例如,物联网(“IoT”)设备)等。以下在图15中示出并描述了客户端设备102的多种不同的示例中的一个。
客户端设备102包括使得能够执行各种活动和任务的多种不同的功能。例如,客户端设备102包括操作系统106、通信模块108、包括客户端通信应用(“应用”)112的应用110、以及客户端联系人管理器114。
通常而言,操作系统106表示用于抽象客户端设备102的各种系统组件的功能,例如硬件、内核级模块和服务等。操作系统106,例如,能够将客户端设备102的各种组件抽象到应用110,以使能在组件与应用110之间进行交互。
通信模块108表示用于使得客户端设备102能够通过有线和/或无线连接来进行通信的功能。例如,通信模块108表示用于通过各种不同的有线和/或无线技术和协议进行通信的硬件和逻辑。
应用110表示用于经由客户端设备102执行不同任务的功能。应用110的示例包括文字处理应用、电子表格应用、网络浏览器、游戏应用等。应用110可以本地地安装在客户端设备102上,以经由本地的运行时环境来执行,和/或可以表示至远程功能(例如,基于云的服务、网络应用等)的端口。因此,应用110可以采取多种形式,例如本地地执行的代码、至远程托管的服务的端口等。
根据各种实现,客户端设备102被配置为经由客户端通信应用112与其他设备和/或实体进行通信。通常而言,客户端通信应用112表示使能经由客户端设备102来进行不同形式的通信的功能。客户端通信应用112的示例包括语音通信应用(例如,互联网协议语音(VoIP)客户端)、视频通信应用、消息传送应用、内容共享应用、统一通信(UC)应用及其组合。例如,客户端通信应用112使得不同的通信模态能够组合以提供多样化的通信场景。
客户端联系人管理器114表示这样的功能,其追踪与客户端设备102的用户的联系人有关的多种不同的联系人信息。这样的联系人信息的示例包括名字、地址(物理的和电子的)、个人信息(例如,生日、周年纪念日等)、电话号码、在线信息等。例如,客户端联系人管理器114追踪针对个体客户端联系人的客户端联系人标识符(ID)116。客户端联系人ID 116通常表示身份,所述身份可以用于发起与不同联系人的通信事件并且识别来自联系人的到来的通信事件。例如,客户端联系人ID 116表示跨不同的通信系统和模态的联系人的用户名。在至少一些实现中,客户端联系人管理器114表示用于执行针对在本文中所讨论的针对许可的身份管理的技术的各种方面的功能。在下文中详细地描述了客户端联系人管理器114的各种功能和操作。
根据各种实现,客户端设备102经由至网络118的连通性而与其他设备和实体进行通信。通常而言,网络118表示单个网络或者不同的经互连的网络的组合。例如,网络118表示无线和有线网络的组合,并且可以以多种方式来配置,例如广域网(WAN)、局域网(LAN)、互联网等。
环境100还包括与联系人122相关联的联系人设备120。联系人122例如表示以客户端联系人ID 116来表示的用户。联系人设备120表示用于在用户104与联系人122之间进行通信的终端用户客户端设备。联系人设备120保存联系人标识符(ID)124,其表示联系人122的不同身份。例如,如在下文中更加详细地呈现的,联系人122可以与多个不同的联系人ID124相关联,其中每个标识针对不同形式的通信和/或跨不同身份平台的联系人122。尽管联系人设备120被表示为单个设备,但应当理解的是,联系人122可以与多个不同的设备进行交互以参与同客户端设备102的交互。
联系人设备120还包括联系人通信应用(“app”)126,其表示使能经由联系人设备120而进行不同形式的通信的功能。在至少一些实现中,联系人通信应用126表示与客户端通信应用112不同的通信应用,或者表示客户端通信应用112的实例。
根据各种实现,利用通信服务128来管理客户端设备102与联系人设备120之间的通信。通信服务128例如表示执行各种任务以发起和管理客户端设备102与联系人设备120之间的通信的网络服务。例如,通信服务128可以管理客户端通信应用112与联系人通信应用126之间的通信会话的发起、调节、和终止。
为了使得联系人设备120能够经由通信服务128认证和通信,联系人ID 124包括服务联系人身份(“ID”)130。通常而言,服务联系人ID 130表示所生成的联系人122的身份并且联系人122可以使用其来认证通信服务128并且经由通信服务128来参与通信事件。此外,客户端设备102可以利用服务联系人ID 130来发起与联系人设备120的通信事件,并且可以基于服务联系人ID 130来标识来自联系人122的通信事件。根据各种实现,服务联系人ID130表示经由与通信服务128的用户交互而生成的ID。例如,当用户利用通信服务128创建账户时,服务联系人ID 130被创建。
通信服务128跨包括网络118在内的许多不同的网络而保持在线性,并且可以根据多种不同的架构来实现,例如基于云的服务、分布式服务、基于网络的服务等。通信服务128的示例包括VoIP服务、在线会议服务、UC&C服务等。在至少一些实现中,客户端通信应用112和/或联系人通信应用126表示至通信服务128的端口。
环境100还包括身份管理器服务132,其表示用于管理不同用户(例如,用户104和联系人122)的身份的不同属性的功能。身份管理器服务132可以由通信服务128实现和管理,或者可以被实现为独立的服务。通常而言,身份管理器服务132可以为多种不同的实体提供身份管理服务。
身份管理服务132保存用户简档134,其表示客户端设备102的用户104的用户简档。身份管理器服务132例如保存通信服务128的不同用户的不同的用户简档。根据各种实现,用户简档134包括认证信息,所述认证信息使得客户端设备102能够认证通信服务128以使得用户104可以利用通信服务128来参与通信事件。
针对用户简档134,身份管理器服务132保存联系人列表136。通常而言,联系人列表136追踪用户104的联系人的各种信息,例如由客户端联系人管理器114所管理联系人中的至少一些联系人的联系人信息。在上文中呈现了有关联系人的不同信息的示例。
联系人列表136包括联系人122的联系人简档138,并且其包括联系人122的各种联系人信息。联系人简档138包括联系人列表身份(“ID”)140、身份(“ID”)表142、以及联系人许可144。联系人列表ID 140表示用于表示联系人列表136中的联系人122的身份,并且ID表142追踪联系人122的不同身份。在至少一些实现中,联系人列表ID 140表示联系人122的主要身份。在下文中讨论了ID表142的示例实现。
联系人许可144表示针对联系人122的不同隐私和许可设置。联系人许可144例如指定针对联系人122的哪些类型的信息可以或不可以与其他人(例如,与用户104)共享。联系人许可144还标识被许可获得关于联系人122的某些信息的具体的用户和/或用户组,并且可以可选地标识不被许可获得关于联系人122的某些信息的用户和/或用户组。在下文中详细地描述了联系人许可144的进一步的方面和属性。
环境100还包括身份平台146,其通常表示联系人122和其他用户利用其保存身份的实体。身份平台146的示例包括网站、社交联网平台、电子邮件服务、互联网服务提供商等。联系人122具有作为联系人ID 124的一部分的平台联系人身份(“ID”),其表示联系人122用来与身份平台146进行交互的身份。联系人122例如利用平台联系人ID 148向身份平台146认证并且访问由身份平台146所展示的服务和/或内容。根据各种实现,平台联系人ID148表示经由与身份平台146的用户交互而生成的ID。例如,当用户利用身份平台146创建账户时,创建平台联系人ID 148。
图2-4描绘了根据多个实现中的一个实现的ID表142的不同示例实例。如在上文中所提及的,ID表142追踪联系人122的不同的身份。
图2描绘了ID表200,其表示根据一个或多个实现的ID表142的实例。ID表200包括主要ID列202和次要ID列204。主要ID列202包括联系人122的主要ID 206。根据各种实现,主要ID 206表示用于发起与联系人设备120的通信以及用于应用联系人许可144的ID。联系人许可144例如被绑定至主要ID 206,以使得当主要ID 206用于通信时施加联系人许可144。
次要ID列204包括链接至主要ID 206的联系人122的次要ID 208。在该特定的示例中,次要ID 208包括次要ID 208a和次要ID 208b。通常而言,次要ID 208用于各种过程,例如,由通信服务128、身份管理器服务132等进行的后端通信和处理。尽管ID表142被描绘为包括两个次要ID,但应当理解的是,可以使用任何数量的次要ID,例如单个次要ID、多于两个次要ID等。
在该特定示例中,主要ID 206表示由身份平台146所利用的联系人122的平台联系人ID 148的实例。如在上文中所提及的,响应于与身份平台146的用户交互(例如,当用户利用身份平台146创建账户时),生成平台联系人ID 148。因此,在该示例中,主要ID 206表示由联系人122利用以向身份平台146认证并且与身份平台146进行交互的ID。此外,次要ID208a表示用于向通信服务128认证联系人122的服务联系人ID 130的实例。如在上文中所提及的,响应于用于与通信服务128的用户交互(例如,当用户利用通信服务128创建用户账户时),生成服务联系人ID 130。
根据各种实现,次要ID 208b表示由通信服务128使用以用于对涉及联系人设备120的通信事件的通信数据进行管理的身份。例如,次要ID 208b表示被生成以用于例如由身份管理器服务132进行各种后端处理和路由任务的代理身份。
根据各种实现,主要ID 206和次要ID 208被链接以使得当ID中的一个ID被用于特定目的时,另一ID例如通过参考ID表200而被发现。此外,凭借被链接至主要ID 206,次要ID208被链接至绑定到主要ID 206的许可,例如联系人许可144。
根据一个或多个实现,联系人122可以与联系人通信应用126和/或身份管理器服务132进行交互以明确将主要ID 206与次要ID 208a相链接,例如经由输入到图形用户界面(GUI)以管理联系人122的身份。因此,ID表200表示其中服务联系人ID 130和平台联系人ID148被链接的实现。
图3描绘了ID表300,其表示根据一个或多个实现的ID表142的实例。ID表300包括主要ID列202和次要ID列204。主要ID列202包括主要ID302。次要ID列204包括次要ID 304,次要ID 304包括次要ID 304a和次要ID 304b。
如所描绘的,主要ID 302与在图2中所描绘的ID表200的次要ID 208a相同,并且表示服务联系人ID 130的实例。在该特定的实现中,例如,联系人122已经利用服务联系人ID130来向通信服务128进行认证。
如进一步描绘的,在ID表300中没有表示平台联系人ID 148。因此,ID表300表示其中服务联系人ID 130和平台联系人ID没有被链接的实现。例如,联系人122还没有链接这两个ID,或者已经解链接了这两个ID。由此,由于服务联系人ID 130和平台联系人ID 148没有被链接,因此次要ID304a作为使得联系人122能够与身份平台146进行交互的代理身份而被生成。例如,身份管理器服务132生成次要ID 304a并且在ID表300中将次要ID 304a链接至主要ID 302。因此,次要ID 304a充当用于与身份平台146进行交互的联系人122的表示,例如以用于通过身份平台146来处理和路由针对联系人122的通信数据。
次要ID 304b表示由通信服务128使用以用于对涉及联系人设备120的通信事件的通信数据进行管理的身份。例如,次要ID 304b与在ID表200中所描绘的次要ID 208b相同。
图4描绘了ID表400,其表示根据一个或多个实现的ID表142的实例。ID表400包括主要ID列202和次要ID列204。主要ID列202包括主要ID402。次要ID列204包括次要ID 404,次要ID 404包括次要ID 404a和次要ID 404b。
如所描绘的,主要ID 402与在图2中所描绘的ID表200的主要ID 206相同,并且表示平台联系人ID 148的实例。在该特定的实现中,例如,联系人122已经利用平台联系人ID148来向通信服务128进行认证。
如进一步描绘的,在ID表400中没有表示服务联系人ID 130。因此,ID表400表示其中服务联系人ID 130和平台联系人ID 148没有被链接的实现。例如,联系人122还没有链接这两个ID,或者已经解链接了这两个ID。由此,由于服务联系人ID 130和平台联系人ID 148没有被链接,因此次要ID 404a作为使得联系人122能够与通信服务128进行交互的代理身份而被生成。例如,身份管理器服务132生成次要ID 404a并且在ID表400中将次要ID 404a链接至主要ID 402。因此,次要ID 404a充当用于与通信服务128进行交互的联系人122的表示,例如用于通过通信服务128来处理和路由针对联系人122的通信数据。
次要ID 404b表示由通信服务128和/或身份平台146所使用以用于对涉及联系人设备120的通信事件的通信数据进行的身份。例如,次要ID 404b由身份管理器服务132生成的,并且用于跨身份平台146和/或通信服务128来路由各种后端处理和通信事件。
因此,ID表200-400表示联系人122的不同的身份状态。如在下文中进一步详述的,在本文中所讨论的技术使得这些不同的ID状态能够用于确定针对联系人122使用的合适的许可。
图5描绘了根据一个或多个实现的联系人许可144的示例实例。如在上文中所提及的,联系人许可144追踪针对联系人122的不同的许可和隐私设置。
在该特定的示例中,联系人许可144包括在线许可500、通信许可502、以及内容许可504。在线许可500标识被许可接收关于联系人122的在线信息的特定的用户、用户分组、和/或用户的类型。可替代地或额外地,在线许可500标识不被许可接收关于联系人122的在线信息的特定的用户、用户分组、和/或用户的类型。
通信许可502标识被许可标识被许可参与同联系人122的特定通信事件的特定的用户、用户分组、和/或用户的类型。可替代地或额外地,通信许可502标识不被许可参与同联系人122的特定通信事件的特定的用户、用户分组、和/或用户的类型。在至少一些实现中,通信许可502是特定于事件类型的。例如,通信许可可以指定特定的用户被许可向联系人122发送即时消息,但是不被许可发起与联系人122的语音(例如,VoIP)通话。
内容许可504标识被许可访问联系人122的内容的特定的用户、用户分组、和/或用户的类型。可替代地或额外地,内容许可504标识不被许可访问联系人122的内容的特定的用户、用户分组、和/或用户的类型。在至少一些实现中,内容许可504是特定于内容类型的。例如,通信许可可以指定特定的用户被许可访问被发布至公共论坛的联系人的内容,但是不被许可访问在私人论坛中发布的联系人的内容。
联系人许可的这些特定的示例仅仅是出于示图的目的而被呈现的,并且应当理解的是,根据在文本中所讨论的针对许可的身份管理的实现,可以利用多种其他类型和实例的联系人许可144。
根据各种实现,联系人许可144被链接至联系人122的主要身份,例如服务联系人ID 130或平台联系人ID 148。此外,服务联系人ID 130可以与不同于平台联系人ID 148的一组联系人许可144相关联。如在下文中进一步详述的,施加哪一组联系人许可取决于服务联系人ID 130或平台联系人ID 148中的哪个被用作联系人122的主要ID。例如,可以给予特定的身份高于作为主要身份的其他身份的优先级,以使得超过其他许可(例如,针对其他身份的许可)而施加链接至主要身份的许可。
在描述了其中可以操作在本文中所描述的技术的示例环境之后,现在考虑根据一个或多个实施例的对针对许可的身份管理的一些示例过程的讨论。
示例过程
以下讨论描述了根据一个或多个实施例的针对许可的身份管理的一些示例过程。可以在图1的环境100、图15的系统1500、和/或任何其他适合的环境中使用所述示例过程。在至少一些实现中,可以自动地并且与用户交互无关地实现针对各种过程所描述的步骤。根据各种实现,可以由客户端设备102(例如,客户端联系人管理器114)、通信服务128、身份管理器服务132、和/或经由这些实体之间的交互来执行所述过程。
图6是描述了根据一个或多个实现的方法中的步骤的流程图。该方法例如描述了根据一个或多个实现的用于识别要用于通信关系的许可的示例过程。
步骤600接收在用户与所述用户的联系人之间建立了通信关系的指示。例如,通信关系是在用户104与联系人122之间建立的。通常而言,通信关系使得通信能够在用户104与联系人122之间进行,并且使得有关通信的数据能够在用户104与联系人122之间被交换。在至少一些实现中,有关通信的数据包括联系人122的状态数据,例如指示联系人122的当前在线状态的在线信息。通信关系例如是经由与通信服务128和/或身份管理器服务131的交互(例如,通过在联系人122的联系人列表136中创建条目)而建立的。在下文中详述了建立通信关系的一种示例方式。
步骤602解析所述联系人的一组多个身份,以指定所述联系人的主要身份和次要身份。身份管理器服务132例如确定所述联系人具有多个身份,并且将所述多个身份排序以指定主要身份和一个或多个次要身份。在至少一些实现中,解析身份包括将主要身份和一个或多个次要身份填入ID表,上文讨论了其示例。在下文中描述了解析多个身份的示例方式。
步骤604利用主要身份来标识链接至主要身份的许可组。例如,所述许可组指定一个或多个参数,所述一个或多个参数指示针对通信关系的被允许的和/或被拒绝的有关通信的行为。在上文中详细讨论了示例许可组和许可组的示例属性。
步骤606使得针对用户与联系人之间的通信交互而施加许可组。例如,施加该许可组以允许被指示为被许可组允许的有关通信的行为、和/或拒绝被指示为被许可组拒绝的有关通信的行为。在下文中详述了施加许可组的示例方式。
在至少一些实现中,不同的身份与不同的许可组相关联。例如,主要身份与特定的许可组相关联,而次要身份与另一不同的许可组相关联。因此,在这样的场景下,超过(例如,替代)针对次要身份的许可组而施加针对主要身份的许可组。
图7是描述了根据一个或多个实现的方法中的步骤的流程图。该方法例如描述了根据一个或多个实现的用于建立通信关系的示例过程。例如,该方法描述了用于执行在上文中参考图6所讨论的步骤600的示例方法。
步骤700接收用于在用户与联系人之间建立通信关系的请求的指示。在至少一些实现中,响应于来自用户的输入而发起请求,所述输入例如由用户104与客户端通信应用112和/或客户端联系人管理器114进行的交互。可替代地或额外地,所述请求是由自动化过程发起的,例如响应于联系人122被添加至用户104的联系人列表136。
根据一个或多个实现,所述请求包括用于接收该联系人的状态信息(例如,在线信息)的请求。通常而言,在线信息表示传达联系人122参与不同类型的通信事件的能力和/或意愿的状态指示。不同的在线信息的示例包括“空闲”、“离开”、“请勿打扰”等。
在至少一些实现中,所述请求被传送给联系人122。例如,由联系人通信应用126将所述请求的可视通知传送给联系人122。可视通知可以包括用于接受、拒绝、和/或忽略所述请求的可选择的控制。
步骤702确定是否准许所述请求。例如,关于该联系人是接受还是拒绝了所述请求而进行确定。如果没有准许所述请求(“否”),则步骤704传送没有准许所述请求的指示。可以以各种方式来传送不准许所述请求的指示,例如所述请求未决、所述请求被拒绝等的可视指示。在至少一些实现中,因为该联系人还没有对所述请求进行响应,所以出现了所述请求没有被准许的指示。
在所述请求仍然是未决的实现中,过程返回至步骤702。可替代地,如果该联系人已经拒绝了所述请求,则该过程在步骤704结束。
如果所述请求被准许(“是”),则步骤706使得在用户与联系人之间建立通信关系。可以例如响应于联系人122提供(例如,向联系人通信应用126)接受用于建立通信关系的请求的输入而准许所述请求。可替代地或额外地,通过与来自联系人122的输入无关的自动化过程来准许所述请求,例如通过联系人通信应用126并且响应于接收了所述请求。
图8是描述了根据一个或多个实现的方法中的步骤的流程图。该方法例如描述了根据一个或多个实现的用于解析联系人的一组多个身份的示例过程。例如,该方法描述了用于执行在上文中参考图6所讨论的步骤602的示例方式。
步骤800检查针对联系人的多个身份。所述身份例如包括表示不同实体的联系人的不同的身份。参考联系人122,例如,所述身份包括表示通信服务128和/或身份平台146的联系人122的身份。在至少一些实现中,所述身份包括已经被链接至彼此的身份,例如响应于链接身份的用户输入。例如,联系人122可以将服务联系人ID 130与平台联系人ID 148相链接。
步骤802处理多个身份以从所述多个身份中指定主要身份和次要身份。在一个或多个实现中,某些类型的身份被设计为用于主要身份。例如,某些域(例如,网域)例如由身份管理器服务132标识为用于主要身份。参考环境100,例如,针对身份平台146而生成的身份被指定为用作主要身份。
步骤804生成联系人的身份组,其包括主要身份和次要身份。身份组例如被填入针对联系人的ID表,在上文中讨论了其示例。ID表可以用于各种目的,例如用于确定要施加以与联系人进行交互的许可。
图9是描述了根据一个或多个实现的方法中的步骤的流程图。例如,该方法描述了根据一个或多个实现的用于指定联系人的主要身份的示例过程。例如,该方法描述了用于执行在上文中参考图6所讨论的步骤602的示例方式。
步骤900确定联系人是否具有被链接至针对该联系人的身份平台身份的通信服务身份。身份管理器服务132例如确定服务联系人ID 130是否被链接至平台联系人ID 148。ID例如可以响应与用户输入链接所述ID而被链接。通常而言,链接所述ID引起所述ID彼此绑定,以使得当一个ID被利用时另一个ID是可发现的。
如果联系人具有被链接至身份平台身份的通信服务身份(“是”)时,步骤902将身份平台身份指定为该联系人的主要身份并且将通信服务身份指定为该联系人的次要身份。身份管理器服务132例如将身份平台身份和通信服务身份传播至ID表,在上文中描述了其示例。在至少一些实现中,身份平台身份被指定为比通信服务身份更高优先级的身份,并且因此被指定为主要身份。
步骤904使用主要身份和次要身份来与联系人进行交互。例如并且如在本文中的别处所详述的,主要身份用于标识许可,所述许可指定被允许和/或被拒绝的用于与联系人交互的通信行为。此外,如果次要身份用于某一目的,则发现主要身份以使得施加链接至主要身份的许可。
返回步骤900,如果该联系人不具有链接至该联系人的身份平台的通信服务身份(“否”),则步骤906确定该联系人是以通信服务身份还是身份平台身份向通信服务认证。身份管理器服务132例如确定用户104是使用服务联系人ID 130还是平台联系人ID 148向通信服务128认证。
如果通信服务身份用于向通信服务认证(“通信服务ID”),则步骤908将通信服务身份指定为该联系人的主要身份。在至少一些实现中,还指定了一个或多个次要身份。例如,该联系人的代理身份被生成并且被指定为用于利用身份平台146表示该联系人的次要身份。在联系人利用通信服务身份向通信服务128认证的场景中,这可以指示该联系人还没有利用身份平台146创建身份或者还没有将联系人的身份平台身份与通信服务身份相链接。因此,代理身份平台ID可以被创建为该联系人的次要身份,以使能针对各种交互而向身份平台146表示该联系人。接着,该过程继续至步骤904。
如果身份平台身份用于向通信服务认证(“身份平台ID”),则步骤910将身份平台身份指定为该联系人的主要身份。在至少一些实现中,还指定了一个或多个次要身份。例如,该联系人的代理身份被生成并且被指定为用于利用通信服务128表示该联系人的次要身份。在联系人利用身份平台身份向通信服务128认证的场景中,这可以指示该联系人还没有利用通信服务128创建身份或者还没有将联系人的通信服务身份与身份平台身份相链接。因此,代理身份平台ID可以被创建为该联系人的次要身份,以使能针对各种交互而向身份平台146表示该联系人。接着,该过程继续至步骤904。
图10是描述了根据一个或多个实现的方法中的步骤的流程图。例如,该方法描述了根据一个或多个实现的用于保存联系人的身份的示例过程。例如,该方法描述了用于保存并更新针对联系人122的ID表142的示例方法。
步骤1000从联系人处接收包括该联系人的当前主要身份和当前次要身份的有关通信的数据。有关通信的数据可以采取各种形式,例如来自联系人的通信事件、联系人的状态数据等。在至少一些实现中,有关通信的数据包括该联系人的在线信息。
步骤1002确定当前主要身份是否与该联系人的联系人列表条目中的联系人列表身份相匹配。身份管理器服务132例如确定当前主要身份是否与联系人列表ID 140相匹配。
如果当前主要身份与联系人列表身份不匹配(“否”),则步骤1004确定在身份表中是否存在该联系人列表身份。身份管理器服务132例如扫描ID表和/或ID表组,以确定在ID表中是否存在包括联系人列表身份的条目。
根据各种实现,联系人列表身份与同有关通信的数据一起接收的主要身份之间的不匹配指示联系人122的身份状态已经改变。例如,联系人122可以已经链接了两个或更多个身份、可以已经解链接了身份等。因此,基于身份状态的改变,身份管理器服务132将更新其联系人简档138以反映联系人122的经更新的身份状态。
如果联系人列表身份作为次要身份存在于ID表中(“次要ID”),则步骤1006从联系人列表中删除所述联系人列表身份。身份管理器服务132例如从联系人列表136中删除所述联系人列表身份。根据各种实现,作为次要身份被包括在ID表中的联系人列表身份指示该联系人列表身份被绑定至联系人列表136中的不同的主要身份。如在示例ID表中所示出的,次要身份被绑定至一组联系人身份中的主要身份。因此,由于不同的主要身份被绑定至该次要身份,所以将次要身份从联系人列表中删除以避免身份冲突。
返回步骤1004,如果联系人列表身份作为主要身份存在于身份表中(“主要ID”),则步骤1008从身份表中移除所述联系人列表身份。身份管理器服务132例如从身份表中删除所述联系人列表身份。例如,在联系人列表身份与如在步骤1002中所确定的当前主要身份不同并且联系人列表身份被列出为如在步骤1002中所确定的主要身份的场景中,这指示该联系人的身份状态已经改变。因此,将所述联系人身份从身份表中移除,以使得可以生成针对该联系人的经更新的身份表条目。接着,该过程继续至在下文中所讨论的步骤1010。
返回至步骤1004,如果在身份表中不存在所述联系人列表身份(“否”),则该过程继续至在下文中所讨论的步骤1010。
返回步骤1002,如果当前主要身份与联系人列表身份相匹配(“是”),则步骤1010确定在身份表中是否存在当前主要身份。身份管理器服务132例如扫描ID表和/或ID表组,以确定在ID表中是否存在包括当前主要身份的条目。
如果在身份表中不存在当前主要身份(“否”),则步骤1012基于没有匹配场景来处理所述身份表。在下文中讨论了用于基于没有匹配场景来处理所述身份表的示例过程。
如果在所述身份表中作为次要身份存在当前主要身份(“次要ID”),则步骤1014基于次要身份匹配场景来处理所述身份表。在下文中讨论了用于基于次要身份匹配场景来处理所述身份表的示例过程。
如果在所述身份表中作为主要身份存在当前主要身份(“主要ID”),则步骤1016基于主要身份匹配场景来处理所述身份表。在下文中讨论了用于基于主要身份匹配场景来处理所述身份表的示例过程。
通常而言,来自步骤1002的“是”和“否”分支基于联系人的当前主要身份是否与联系表中为该联系人指定的联系人身份相匹配而表示联系人的身份表的不同的处理方式,并且使得身份表将当前主要身份指定为该联系人的主要身份。例如,在图10中所描述的过程表示用于将ID表维持在当前状态的过程。
图11是描述了根据一个或多个实现的方法中的步骤的流程图。该方法例如描述了根据一个或多个实现的用于基于其中同有关通信的数据一起接收的当前主要身份与身份表中的身份不匹配的场景来处理身份表的示例过程。例如,该方法描述了用于执行在上文中参考图10所讨论的过程的步骤1012的示例方式,并表示过程的延伸。根据各种实现,该过程描述了其中添加新的联系人的场景。
步骤1100确定在身份表中不存在同有关通信的数据一起接收的当前主要身份。身份管理器服务132例如扫描ID表和/或ID表组,以确定在ID表中不存在所述主要身份。
步骤1102确定同有关通信的数据一起接收的当前次要身份是否与身份表中的现有身份相匹配。如在上文中所提及的,有关通信的数据是同当前主要身份和一个或多个当前次要身份一起从联系人处接收的。身份管理器服务132例如扫描ID表和/或ID表组,以确定在ID表中是否存在包括当前次要身份的条目。
如果当前次要身份与身份表中的现有身份不匹配(“否”),则步骤1104利用当前主要身份和当前次要身份在身份表中生成新的条目。新的条目例如与新的联系人的身份表相对应,并且其可以根据在本文中所讨论的针对许可的身份管理的技术来追踪新的联系人的身份状态。
步骤1106将该联系人的联系人列表身份更新为主要身份。例如,联系人列表ID140被更新为与主要身份相匹配。因此,来自ID表142的主要身份与联系人列表ID 140相匹配,以使得由身份管理器服务132所保存的联系人122的身份状态是最新的。
返回步骤1102,如果当前次要身份与身份表中的现有身份相匹配(“是”),则步骤1108从身份表中移除现有身份。身份管理器服务132例如删除现有身份以避免身份冲突。接着,过程继续至步骤1104。
图12是描述了根据一个或多个实现的方法中的步骤的流程图。例如,该方法描述了根据一个或多个实现的基于其中同有关通信的数据一起接收的当前主要身份与身份表中的次要身份相匹配的场景来处理身份表的示例。例如,该方法描述了用于执行在上文中参考图10所讨论的过程的步骤1014的示例方式,并且表示该过程的延伸。
步骤1200确定同有关通信的数据一起接收的联系人的当前主要身份与身份表中的现有次要身份相匹配。身份管理器服务132例如扫描ID表和/或ID表组,以确定所述主要身份是作为ID表中的次要身份存在的。
步骤1202确定联系人的联系人列表身份与身份表中的现有主要身份是否相匹配。如果该联系人的联系人列表身份与身份表中的现有主要身份不匹配(“否”),则步骤1204根据没有匹配的场景来处理身份表。在上文中参考图11描述了根据没有匹配的场景来处理身份表的示例方式。
如果该联系人的联系人列表身份与身份表中的现有主要身份相匹配(“是”),则步骤1206从身份表中移除现有主要身份。身份管理器服务132例如从身份表中删除主要身份以避免身份冲突。接着,该过程继续至步骤1204。根据各种实现,身份表被处理以生成使用当前主要身份的新的用户条目,例如在上文中参考图11所描述的。
图13是描述了根据一个或多个实现的方法中的步骤的流程图。该方法例如描述了根据一个或多个实现的基于其中同有关通信的数据一起接收的当前主要身份与身份表中的主要身份相匹配的场景来处理身份表的示例过程。例如,该方法描述了用于执行在上文中参考图10所讨论的过程的步骤1016的示例方式,并且表示该过程的延伸。
步骤1300确定同有关通信的数据一起接收的联系人的当前主要身份与身份表中的现有主要身份相匹配。身份管理器服务132例如扫描ID表和/或ID表组以确定当前主要身份是作为ID表中的主要身份存在的。
步骤1302确定联系人的联系人列表身份是否与当前主要身份相匹配。如果联系人的联系人列表身份与当前主要身份相匹配(“是”),则步骤1304确定同有关通信的数据一起接收的当前次要身份是否与链接至身份表中的现有主要身份的现有次要身份相匹配。如果当前次要身份与针对现有主要身份的现有次要身份相匹配(“是”),则步骤1306结束对身份表的处理。例如,身份管理器服务132确定针对联系人122的ID表中的身份是当前的且从而无需更新。
如果当前次要身份不与针对现有主要身份的现有次要身份相匹配(“否”),则步骤1308确定在身份表中的不同条目是否包括当前次要身份。身份管理器服务132例如扫描身份表以确定现有次要身份是否与身份表中不同联系人的身份相匹配。
如果身份表中的不同条目不包括当前次要身份(“否”),则步骤1310用当前次要身份来更新身份表中针对当前主要身份的条目。身份管理器服务132例如使得当前次要身份被存储在ID表中与当前主要身份一起的条目中。因此,当前次要身份被链接至ID表中的当前主要身份,例如联系人122的ID表142的一部分。
如果身份表中不同的条目包括当前次要身份(“是”),则步骤1312忽略通有关通信的数据一起接收的当前次要身份。根据各种实现,这指示不同的联系人(例如,不同的主要身份)被链接至当前次要身份,并且因此给予该不同的联系人利用当前次要身份的优先级。因此,当前次要身份不在ID表中被链接至同有关通信的数据一起接收的当前主要身份。
返回步骤1302,如果该联系人的联系人列表身份不与当前主要身份相匹配(“否”),则步骤1314从联系人列表中删除联系人列表身份。在至少一些实现中,这指示该联系人的身份状态已经改变,并且因此该联系人列表身份针对该联系人不再是当前的。因此,从联系人列表中删除该联系人列表身份。
图14是描述了根据一个或多个实现的方法中的步骤的流程图。该方法例如描述了根据一个或多个实现的用于确定是否允许通信交互的示例过程。例如,该方法描述了用于执行在上文中参考图6所讨论的过程的步骤606的示例方式,并且表示该过程的延伸。
步骤1400接收参与与联系人的通信交互的请求。通信交互例如表示联系人设备120与客户端设备102之间的有关通信的数据的交换。在至少一些实现中,所述请求包括来自客户端通信应用112的针对联系人122的在线信息的请求,并且因此通信交互涉及从联系人设备120接收在线信息。所述请求例如由通信服务128接收和处理。
可替代地或额外地,所述请求包括用户104参与与联系人122的诸如VoIP通话、视频通话、即时消息等之类的通信事件的请求。
步骤1402基于针对联系人的许可来确定是否许可所述通信交互。许可组例如指定被允许的和/或被拒绝的通信交互。在上文中描述了许可组的示例属性。在示例实现中,通信服务128基于联系人的当前主要身份来标识要用于该联系人的许可组。在上文中详述了解析和标识联系人的当前身份的方式。
如果所述通信交互基于所述许可组而被许可(“是”),则步骤1404允许所述通信交互。通信服务128例如确定所述通信交互被所述许可组中的一个或多个许可所许可,并且因此允许在联系人设备120与客户端设备102之间作为所述通信交互的一部分来交换有关通信的数据。
如果所述通信交互基于所述许可组而不被许可(“否”),则步骤1406阻止所述通信交互。通信服务128例如确定所述通信交互不被所述许可组中的一个或多个许可所许可,并且因此不允许在联系人设备与客户端设备102之间作为所述通信交互的一部分来交换有关通信的数据。
因此,在本文中所讨论的技术使得联系人身份能够基于联系人身份状态的改变而被追踪和更新,并使得合适的许可能够基于联系人的当前身份状态而被表示。通过使得他们的许可设置能够跨联系人的不同身份并且跨联系人的身份状态的改变而被施加,联系人的隐私和安全性因此得到了保护。
在讨论了一些示例过程之后,现在考虑根据一个或多个实施例的示例系统和设备的讨论。
示例系统和设备
图15在1500处概括地示出了示例系统,该系统包括示例计算设备1502,其表示可以实现在本文中所描述的各种技术的一个或多个计算系统和/或设备。例如,在上文中参考图1所讨论的客户端设备102可以被实现为计算设备1502。计算设备1502可以是例如服务提供商的服务器、与客户端相关联的设备(例如,客户端设备)、片上系统、和/或任何其他合适的计算设备、装置、和/或计算系统。
如图所示的示例计算设备1502包括彼此通信地耦合的处理系统1504、一个或多个计算机可读介质1506、以及一个或多个I/O接口1508。尽管没有示出,但计算设备1502还可以包括将各种组件彼此耦合的系统总线或其他数据和命令传输系统。系统总线可以包括不同的总线结构的任何一个或组合,所述总线结构例如存储器总线或存储器控制器、外围总线、通用串行总线、和/或使用多种总线架构中的任何一个的处理器或本地总线。也可以预期到多种其他示例,例如控制和数据总线。
处理系统1504表示用于使用硬件来执行一个或多个操作的功能。由此,处理系统1504被示出为包括可以被配置为处理器、功能块等的硬件元件1510。这可以包括作为专用集成电路或使用一个或多个半导体形成的其他逻辑器件的硬件实现。硬件元件1510不受形成其的材料或其中所采用的处理机制的限制。例如,处理器可以由半导体和/或晶体管(例如,电子集成电路(IC))组成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。
计算机可读介质1506被示出为包括存储器/存储1516。存储器/存储1512表示与一个或多个计算机可读介质相关联的存储器/存储容量。存储器/存储1512可以包括易失性介质(例如,随机存取存储器(RAM))和/或非易失性存储介质(例如,只读存储器(ROM)、闪速存储器、光盘、磁盘等)。存储器/存储1512可以包括固定的介质(例如,RAM、ROM、固定的硬盘驱动器等)以及可移动介质(例如,闪速存储器、可移动硬盘驱动器、光盘等)。可以以在下文中所进一步描述的多种其他方式来配置计算机可读介质1506。
输入/输出接口1508表示这样一种功能,其使用各种输入/输出设备来允许用户向计算设备1502输入命令和信息、并且也允许信息呈现至用户和/或其他组件或设备。输入设备的示例包括:键盘、光标控制设备(例如,鼠标)、麦克风(用于实现语音和/或话音输入)、扫描仪、触摸功能(例如,被配置为检测物理触摸的电容或其他传感器)、相机(例如,其可以采用可视的或诸如红外频率之类的非可视的波长来检测不涉及触摸的活动,如手势)等。输出设备的示例包括:显示设备(例如,监视器或投影仪)、扬声器、打印机、网络卡、触觉响应设备等。因此,可以以在下文中所进一步描述的用于支持用户交互的多种方式来配置计算设备1502。
可以在软件、硬件元件、或程序模块的一般的上下文中在本文中所描述各种技术。通常而言,这样的模块包括执行特定的任务或实现特定的抽象数据类型的例程、程序、对象、元素、组件、数据结构等。如在本文中所使用的术语“模块”、“功能”、和“组件”通常表示软件、固件、硬件、或其组合。在本文中所描述的技术的特征是与平台无关的,这意味着可以在具有多种处理器的多种商业计算平台上实现所述技术。
可以将所描述的模块和技术的实现存储在一些形式的计算机可读介质上、或者跨一些形式的计算机可读介质而传输。所述计算机可读介质可以包括可以由计算设备1502来访问的多种介质。作为示例而非限制,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。
“计算机可读存储介质”可以指的是支持持续存储信息的介质和/或设备,与仅信号传输、载波、或信号自身不同。计算机可读存储介质不包括信号本身。计算机可读存储介质包括硬件,例如,易失性和非易失性、可移动和不可移动的介质、和/或以适用于存储信息(例如,计算机可读指令、数据结构、程序模块、逻辑元件/电路、或其他数据)的方法或技术实现的存储设备。计算机可读存储介质的示例可以包括但不限于:RAM、ROM、EEPROM、闪速存储器或其他存储器技术、CD-ROM、数字通用盘(DVD)或其他光存储、硬盘、盒式磁带、磁带、磁盘存储或其他磁存储设备、或者适用于存储期望的信息并且可以由计算机来访问的其他存储设备、有形介质、或制品。
“计算机可读信号介质”可以指的是信号承载介质,其被配置为例如经由网络将指令发送到计算设备1502的硬件。信号介质通常可以实施计算机可读指令、数据结构、程序模块、或调制数据信号中的其他数据,例如载波、数据信号、或其他传输机制。信号介质还包括任意的信息传递介质。术语“经调制的数据信号”意指这样的信号:在信号中以编码信息的方式设置或改变其特性中的一个或多个特性。作为示例而非限制,通信介质包括有线介质(例如,有线网络或直接有线连接)以及无线介质(例如,声学、射频(RF)、红外、和其他无线介质)。
如前所述,硬件元件1510和计算机可读介质1506代表以可以在一些实施例中所采用的、以硬件形式来实现从而实现在本文中所描述的技术的至少一些方面的指令、模块、可编程设备逻辑、和/或固定设备逻辑。硬件元件可以包括集成电路或片上系统的组件、专用集成电路(ASIC)、现场可编程门阵列(FPGA)、复杂可编程逻辑设备(CPLD)、以及在硅或其他硬件设备中的其他实现。在该上下文中,硬件元件可以充当处理设备,其执行由指令、模块、和/或逻辑所定义的程序任务,所述指令、模块、和/或逻辑是由用于存储以供执行的指令(例如,先前所描述的计算机可读存储介质)的硬件元件以及硬件设备来实施的。
还可以采用前述的组合来实现在本文中所描述的各种技术和模块。由此,可以将软件、硬件、或程序模块和其他程序模块实现为在一些形式的计算机可读存储介质上和/或由一个或多个硬件元件1510所实施的一个或多个指令和/或逻辑。计算设备1502可以被配置为实现与软件和/或硬件模块相对应的特定指令和/或功能。由此,例如,通过使用处理系统的计算机可读存储介质和/或硬件元件1510可以至少部分地以硬件来实现可以由计算设备1502作为软件来执行的模块的实现。可以由一个或多个制品(例如,一个或多个计算设备1502和/或处理系统1504)来执行/操作指令和/或功能,以实现在本文中所描述的技术、模块、和示例。
如在图15中进一步所示出的,示例系统1500支持当在个人计算机(PC)、电视机设备、和/或移动设备上运行应用时,用于无缝的用户体验的普遍存在的环境。当从一个设备转换到另一个的同时利用应用、播放视频游戏、观看视频等时,为了共同的用户体验,服务和应用在所有三个环境中大体上类似地运行。
在示例系统1500中,多个设备通过中央计算设备来互连。中央计算设备可以在多个设备本地,或可以远程于多个设备。在一个实施例中,中央计算设备可以是通过网络、互连网、或其他数据通信链路连接至多个设备的一个或多个服务器计算机的云。
在一个实施例中,该互连架构使得功能能够跨多个设备传递,以向多个设备的用户提供共同且无缝的体验。多个设备中的每个设备可以具有不同的物理要求和功能,并且中央计算设备使用平台来支持向设备传递被调整为适合所述设备但也对所有设备通用的体验。在一个实施例中,创建一类目标设备,并且将体验调整为通用类的设备。可以通过物理特征、使用类型、或设备的其他共同特性来定义设备的类。
在各种实现中,计算设备1502可以假设多种不同的配置,例如,针对计算机1514、移动设备1516、以及电视机1518的使用。这些配置中的每个配置包括可以具有一般不同的构造和功能的设备,并且因此可以根据一个或多个不同设备的类来配置计算设备1502。例如,可以将计算设备1502实现为设备的计算机1514类,该类包括:个人计算机、台式计算机、多屏幕计算机、膝上型计算机、上网本等。
还可以将计算设备1502实现为移动1516类的设备,该类包括诸如移动电话、便携式音乐播放机、便携式游戏设备、平板计算机、多屏幕计算机等之类的移动设备。还可以将计算设备1502实现为电视机1518类设备的,该类包括在随意观看环境中具有或连接至一般较大的屏幕的设备。这些设备包括:电视机、机顶盒、游戏控制台等。
在本文中所描述的技术可以由计算设备1502的这些各种配置所支持,而不限于在本文中所描述的技术的具体示例。例如,可以通过使用分布式系统(例如,在下文中所描述的经由平台1522通过“云”1520)来全部或部分地实现关于客户端设备102、通信服务128、和/或身份管理器服务132所讨论的功能。
云1520包括和/或代表资源1524的平台1522。平台1522对云1520的硬件(例如,服务器)和软件资源的基本功能进行抽象。资源1524可以包括可以在与计算机1502远程的服务器上执行的计算机处理同时利用的应用和/或数据。资源1524还可以包括通过互联网和/或通过订阅者网络(例如,蜂窝或Wi-FiTM网络)所提供的服务。
平台1522可以对用于将计算设备1502与其他计算设备连接的资源和功能进行抽象。平台1522还可以用于抽象资源的缩放,以提供对应的缩放的等级来满足经由平台1522所实现的对资源1524的需求。由此,在互连设备的实施例中,在本文中所描述的功能的实现可以遍及系统1500分布。例如,可以部分地在计算设备1502上实现功能,以及经由对云1520的功能进行抽象的平台1522来实现功能。
在本文中所讨论的是可以被实现以执行在本文中所讨论的技术的多个方法。可以以硬件、固件、或软件或其组合来实现所述方法的方面。所述方法被示出为一组步骤,其指定由一个或多个设备所执行的操作,并且不一定限于所示出的由相应的框执行操作的顺序。此外,关于特定方法所示出的操作可以与根据一个或多个实现的不同方法的操作组合和/或交换。可以经由在上文中关于环境100所讨论的各种实体之间的交互来实现所述方法的各种方面。
在本文中所讨论的实现包括:
示例1:系统包括:至少一个处理器;以及一个或多个计算机可读存储器介质,其包括存储在其上的指令,所述指令响应于由所述至少一个处理器执行,使得所述系统执行以下操作,包括:接收在用户与用户的联系人之间建立了通信关系的指示;解析所述联系人的一组多个身份以指定所述联系人的主要身份和一个或多个次要身份;利用所述主要身份来标识链接至所述主要身份并且指定针对所述通信关系的一个或多个参数的许可组;以及使得所述许可组针对所述用户与所述联系人之间的一个或多个通信交互而被施加。
示例2:如在示例1中所描述的一种系统,其中,所述通信关系包括用户订阅以接收所述联系人的在线信息。
示例3:如在示例1或2中的一个或多个中描述的系统,其中,所述操作还包括:确定准许了来自所述用户的建立所述通信关系的请求;以及使得所述通信关系被建立。
示例4:如在示例1-3中的一个或多个中描述的系统,其中,所述解析包括在身份表中生成指定所述主要身份和所述一个或多个次要身份的条目。
示例5:如在示例1-4中的一个或多个中描述的系统,其中,所述解析包括:确定所述联系人具有链接至所述联系人的身份平台身份的通信服务身份;以及将所述身份平台身份指定为所述联系人的主要身份,并且将所述通信服务身份指定为所述联系人的次要身份。
示例6:如在示例1-5中的一个或多个中描述的系统,其中,所述解析包括:确定所述联系人的第一身份被链接至所述联系人的第二身份;以及将所述第一身份指定为所述主要身份,并且将所述第二身份指定为所述一个或多个次要身份中的次要身份。
示例7:如在示例1-6中的一个或多个中描述的系统,其中,所述使得所述许可组被施加包括:从所述用户接收参与与所述联系人的通信交互的请求;以及基于所述通信交互是否被所述许可组许可来允许或拒绝所述通信交互。
示例8:如在示例1-7中的一个或多个中描述的系统,其中,所述操作还包括:从所述联系人接收包括所述联系人的当前主要身份的有关通信的数据;确定所述联系人的所述当前主要身份是否与联系人列表中针对所述联系人所指定的联系人身份相匹配;以及基于所述联系人的所述当前主要身份是否与联系人列表中针对所述联系人所指定的所述联系人身份相匹配来处理所述联系人的身份表,所述处理包括更新所述身份表以将所述当前主要身份指定为所述联系人的所述主要身份。
示例9:一种计算机实现的方法,包括:接收在用户与所述用户的联系人之间建立了通信关系的指示;由计算系统解析所述联系人的一组多个身份以指定所述联系人的主要身份和一个或多个次要身份,其包括:确定所述联系人的第一身份被链接至所述联系人的第二身份;以及将所述第一身份指定为所述主要身份,并且将所述第二身份指定为所述一个或多个次要身份中的次要身份;由所述计算系统利用所述主要身份来标识链接至所述主要身份并且指定针对所述通信关系的一个或多个参数的许可组;以及由所述计算系统使得所述许可组针对所述用户与所述联系人之间的一个或多个通信交互而被施加。
示例10:如在示例9中描述的计算机实现的方法,其中,所述通信关系使得所述用户接收所述联系人的在线信息。
示例11:如在示例9或10中的一个或多个中描述的计算机实现的方法,其中,所述指定包括基于所述第一身份与所述第二身份相比是较高优先级的身份而将所述第一身份指定为所述主要身份。
示例12:如在示例9-11中的一个或多个中描述的计算机实现的方法,其中,所述第二身份链接至与所述第一身份不同的许可组,并且其中,所述使得包括使得链接至所述主要身份的所述许可组被给予了超过所述不同的许可组的优先级。
示例13:如在示例9-12中的一个或多个中描述的计算机实现的方法,包括:从所述用户接收参与与所述联系人的通信交互的请求;以及基于所述通信交互是否被所述许可组许可而允许或拒绝所述通信交互。
示例14:如在示例9-13中的一个或多个中描述的计算机实现的方法,其中,所述解析包括使得所述主要身份和所述一个或多个次要身份存储在身份表中,所述方法还包括:从所述联系人接收包括所述联系人的当前主要身份的有关通信的数据;确定所述联系人的所述当前主要身份与联系人列表中针对所述联系人所指定的联系人身份不匹配;以及由所述计算系统处理所述联系人的所述身份表来更新所述身份表以将所述当前主要身份指定为所述联系人的所述主要身份。
示例15:一种计算机实现的方法,包括:从联系人接收包括所述联系人的当前主要身份的有关通信的数据;由计算系统确定所述联系人的所述当前主要身份与联系人列表中针对所述联系人所指定的联系人身份是否相匹配;由所述计算系统基于所述联系人的所述当前主要身份是否与联系人列表中针对所述联系人所指定的所述联系人身份相匹配来处理所述联系人的身份表,所述处理使得所述身份表将所述当前主要身份指定为所述联系人的主要身份;利用所述主要身份来标识链接至经存储的主要身份并且指定针对用户与所述联系人之间的通信关系的一个或多个参数的许可组;以及由所述计算系统使得所述许可组针对所述用户与所述联系人之间的一个或多个通信交互而被施加。
示例16:如在示例15中描述的计算机实现的方法,其中,所述有关通信的数据包括所述联系人的在线信息或者来自所述联系人的通信事件中的一个或多个。
示例17:如在示例15或16中的一个或多个中描述的计算机实现的方法,其中,所述确定包括确定所述联系人的当前主要身份与联系人列表中针对所述联系人所指定的联系人身份不匹配,并且其中,所述处理包括处理所述身份表以利用所述当前主要身份创建新的用户条目。
示例18:如在示例15-17中的一个或多个中描述的计算机实现的方法,其中,所述确定包括确定所述联系人的当前主要身份与联系人列表中针对所述联系人所指定的联系人身份相匹配,并且其中,所述处理包括:确定所述当前主要身份是以次要身份在所述身份表中存在的;从所述身份表中移除所述次要身份;以及处理所述身份表以利用所述当前主要身份创建新的用户条目。
示例19:如在示例15-18中的一个或多个中描述的计算机实现的方法,其中,所述确定包括确定所述联系人的当前主要身份与联系人列表中针对联系人所指定的联系人身份相匹配,并且其中,所述处理包括:确定所述当前主要身份是以主要身份在所述身份表中存在的;基于同所述有关通信的数据一起接收的一个或多个当前次要身份是否与链接至所述身份表中的所述主要身份的一个或多个现有次要身份相匹配来更新所述身份表。
示例20:如在示例15-19中的一个或多个中描述的计算机实现的方法,其中,所述由所述计算系统使得所述许可组被施加包括:从所述用户接收参与与所述联系人的通信交互的请求;以及基于所述许可组是否被所述许可组所许可来允许或拒绝所述通信交互。
结论
公开了用于针对许可进行身份管理的技术。尽管以特定于结构特征和/或方法动作的语言描述了实施例,但应当理解的是,在所附权利要求书中所定义的实施例不一定限于所描述的具体特征或动作。相反,具体的特征和动作是作为实现所要求保护的实施例的示例形式而公开的。

Claims (14)

1.一种被配置为执行用于解析联系人的主要身份的操作的系统,所述系统包括:
至少一个处理器;以及
一个或多个计算机可读存储器介质,其包括存储在其上的指令,所述指令响应于由所述至少一个处理器执行,使得所述系统执行以下操作,包括:
接收在用户与所述用户的联系人之间建立了通信关系的指示;
解析所述联系人的一组多个身份以指定所述联系人的主要身份和一个或多个次要身份;
利用所述主要身份来标识链接至所述主要身份并且指定针对所述通信关系的一个或多个参数的许可组,其中,所述次要身份中的至少一个次要身份被链接至与所述主要身份不同的许可组;以及
使得链接至所述主要身份的所述许可组针对所述用户与所述联系人之间的一个或多个通信交互而被施加,其中,所述使得链接至所述主要身份的所述许可组被施加包括使得链接至所述主要身份的所述许可组被给予了超过所述不同的许可组的优先级。
2.根据权利要求1所述系统,其中,所述通信关系包括所述用户订阅以接收所述联系人的在线信息。
3.根据权利要求1所述的系统,其中,所述操作还包括:
确定准许了来自所述用户的建立所述通信关系的请求;以及
使得所述通信关系被建立。
4.根据权利要求1所述的系统,其中,所述解析包括在身份表中生成指定所述主要身份和所述一个或多个次要身份的条目。
5.根据权利要求1所述的系统,其中,所述解析包括:
确定所述联系人具有链接至所述联系人的身份平台身份的通信服务身份;以及
将所述身份平台身份指定为所述联系人的所述主要身份,并且将所述通信服务身份指定为所述联系人的所述一个或多个次要身份中的一个次要身份。
6.根据权利要求1所述的系统,其中,所述解析包括:
确定所述联系人的第一身份被链接至所述联系人的第二身份;以及
将所述第一身份指定为所述主要身份,并且将所述第二身份指定为所述一个或多个次要身份中的一个次要身份。
7.根据权利要求1所述的系统,其中,所述使得链接至所述主要身份的所述许可组被施加包括:
从所述用户接收参与与所述联系人的通信交互的请求;以及
基于所述通信交互是否被链接至所述主要身份的所述许可组许可来允许或拒绝所述通信交互。
8.根据权利要求1所述的系统,其中,所述操作还包括:
从所述联系人接收包括所述联系人的当前主要身份的有关通信的数据;
确定所述联系人的所述当前主要身份是否与联系人列表中针对所述联系人所指定的联系人身份相匹配;以及
基于所述联系人的所述当前主要身份是否与所述联系人列表中针对所述联系人所指定的所述联系人身份相匹配来处理所述联系人的身份表,所述处理包括更新所述身份表以将所述当前主要身份指定为所述联系人的所述主要身份。
9.一种用于解析联系人的主要身份的计算机实现的方法,所述方法包括:
接收在用户与所述用户的联系人之间建立了通信关系的指示;
由计算系统解析所述联系人的一组多个身份以指定所述联系人的主要身份和一个或多个次要身份;
由所述计算系统利用所述主要身份来标识链接至所述主要身份并且指定针对所述通信关系的一个或多个参数的许可组,其中,所述次要身份中的至少一个次要身份被链接至与所述主要身份不同的许可组;以及
由所述计算系统使得链接至所述主要身份的所述许可组针对所述用户与所述联系人之间的一个或多个通信交互而被施加,其中,所述使得包括使得链接至所述主要身份的所述许可组被给予了超过所述不同的许可组的优先级。
10.根据权利要求9所述的计算机实现的方法,其中,所述通信关系使得所述用户接收所述联系人的在线信息。
11.根据权利要求9所述的计算机实现的方法,其中,所述解析包括:
确定所述联系人的第一身份被链接至所述联系人的第二身份;以及
将所述第一身份指定为所述主要身份,并且将所述第二身份指定为所述一个或多个次要身份中的一个次要身份。
12.根据权利要求11所述的计算机实现的方法,其中,所述指定包括基于所述第一身份与所述第二身份相比是较高优先级的身份而将所述第一身份指定为所述主要身份。
13.根据权利要求9所述的计算机实现的方法,包括:
从所述用户接收参与与所述联系人的通信交互的请求;以及
基于所述通信交互是否被链接至所述主要身份的所述许可组许可而允许或拒绝所述通信交互。
14.根据权利要求9所述的计算机实现的方法,其中,所述解析包括使得所述主要身份和所述一个或多个次要身份存储在身份表中,所述方法还包括:
从所述联系人接收包括所述联系人的当前主要身份的有关通信的数据;
确定所述联系人的所述当前主要身份与联系人列表中针对所述联系人所指定的联系人身份不匹配;以及
由所述计算系统处理所述联系人的所述身份表来更新所述身份表,以将所述当前主要身份指定为所述联系人的所述主要身份。
CN201680012153.5A 2015-02-27 2016-02-25 针对具有多个身份的联系人的许可管理 Active CN107409127B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/634,590 US9633218B2 (en) 2015-02-27 2015-02-27 Identities and permissions
US14/634,590 2015-02-27
PCT/US2016/019436 WO2016138191A1 (en) 2015-02-27 2016-02-25 Permission management for contacts with multiple identities

Publications (2)

Publication Number Publication Date
CN107409127A CN107409127A (zh) 2017-11-28
CN107409127B true CN107409127B (zh) 2020-07-28

Family

ID=55527654

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680012153.5A Active CN107409127B (zh) 2015-02-27 2016-02-25 针对具有多个身份的联系人的许可管理

Country Status (4)

Country Link
US (1) US9633218B2 (zh)
EP (1) EP3243312B1 (zh)
CN (1) CN107409127B (zh)
WO (1) WO2016138191A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN111274596B (zh) * 2020-01-23 2023-03-14 百度在线网络技术(北京)有限公司 设备交互方法、权限管理方法、交互设备及用户端
CN115422514B (zh) * 2022-09-22 2023-07-18 北京广知大为科技有限公司 一种信息交互的方法、系统、设备和存储介质

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101095161A (zh) * 2003-10-23 2007-12-26 微软公司 联系人管理
CN102082775A (zh) * 2009-11-27 2011-06-01 中国移动通信集团公司 一种用户身份管理方法、装置和系统
CN103312701A (zh) * 2013-05-30 2013-09-18 腾讯科技(深圳)有限公司 一种联系人信息整合方法、服务器、终端以及系统
CN103347084A (zh) * 2013-07-10 2013-10-09 上海斐讯数据通信技术有限公司 一种多账号统一关联系统及关联方法
WO2014163748A1 (en) * 2013-03-13 2014-10-09 Motorola Mobility Llc Communicating via a body-area network

Family Cites Families (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7890581B2 (en) 1996-12-16 2011-02-15 Ip Holdings, Inc. Matching network system for mobile devices
US6725269B1 (en) 1999-12-02 2004-04-20 International Business Machines Corporation System and method for maintaining multiple identities and reputations for internet interactions
US7685237B1 (en) 2002-05-31 2010-03-23 Aol Inc. Multiple personalities in chat communications
US8701014B1 (en) 2002-11-18 2014-04-15 Facebook, Inc. Account linking
US7428750B1 (en) 2003-03-24 2008-09-23 Microsoft Corporation Managing multiple user identities in authentication environments
CA2686265A1 (en) 2003-06-17 2004-12-17 Ibm Canada Limited - Ibm Canada Limitee Multiple identity management in an electronic commerce site
US7594121B2 (en) 2004-01-22 2009-09-22 Sony Corporation Methods and apparatus for determining an identity of a user
US7756890B2 (en) * 2005-10-28 2010-07-13 Novell, Inc. Semantic identities
US20070240226A1 (en) 2006-03-28 2007-10-11 Samsung Electronics Co., Ltd. Method and apparatus for user centric private data management
US7792903B2 (en) 2006-05-31 2010-09-07 Red Hat, Inc. Identity management for open overlay for social networks and online services
US20080005325A1 (en) 2006-06-28 2008-01-03 Microsoft Corporation User communication restrictions
US8131745B1 (en) 2007-04-09 2012-03-06 Rapleaf, Inc. Associating user identities with different unique identifiers
US20090125521A1 (en) 2007-11-08 2009-05-14 William Petty System and method for representation of multiple-identities of a user in a social networking environment
US8892658B2 (en) 2008-04-07 2014-11-18 Microsoft Corporation Break-through mechanism for personas associated with a single device
US8291474B2 (en) * 2008-04-16 2012-10-16 Oracle America, Inc. Using opaque groups in a federated identity management environment
US8233604B2 (en) 2008-09-16 2012-07-31 International Business Machines Corporation Automated call routing based on an active presence profile
US8738764B1 (en) 2009-03-26 2014-05-27 Symantec Corporation Methods and systems for controlling communications
US20110029618A1 (en) 2009-08-02 2011-02-03 Hanan Lavy Methods and systems for managing virtual identities in the internet
US8611339B2 (en) 2009-10-08 2013-12-17 At&T Intellectual Property I, L.P. Apparatus and method for providing presence
US8745271B2 (en) 2011-06-20 2014-06-03 International Business Machines Corporation Recognizing multiple identities of sender and sending the multiple identities to recipient

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101095161A (zh) * 2003-10-23 2007-12-26 微软公司 联系人管理
CN102082775A (zh) * 2009-11-27 2011-06-01 中国移动通信集团公司 一种用户身份管理方法、装置和系统
WO2014163748A1 (en) * 2013-03-13 2014-10-09 Motorola Mobility Llc Communicating via a body-area network
CN103312701A (zh) * 2013-05-30 2013-09-18 腾讯科技(深圳)有限公司 一种联系人信息整合方法、服务器、终端以及系统
CN103347084A (zh) * 2013-07-10 2013-10-09 上海斐讯数据通信技术有限公司 一种多账号统一关联系统及关联方法

Also Published As

Publication number Publication date
WO2016138191A1 (en) 2016-09-01
US20160253511A1 (en) 2016-09-01
CN107409127A (zh) 2017-11-28
EP3243312A1 (en) 2017-11-15
EP3243312B1 (en) 2019-09-25
US9633218B2 (en) 2017-04-25

Similar Documents

Publication Publication Date Title
US11159626B2 (en) Session transfer between resources
US10929557B2 (en) Exported digital relationships
US11848936B2 (en) Method, apparatus, and computer program product for selectively granting permissions to group-based objects in a group-based communication system
CN111278012B (zh) 在无线网络中的设备隔离
US9442778B2 (en) Method and system for secured inter-application communication in mobile devices
CN106796626B (zh) 共享会话技术
US9226137B2 (en) Method and apparatus for real-time sharing of multimedia content between wireless devices
US11716289B2 (en) Authorizations associated with externally shared communication resources
US20190334913A1 (en) Method and apparatus for native authentication to cloud services with identity management of on-premise applications from the cloud
US20170070479A1 (en) Trust Status of a Communication Session
EP3815329B1 (en) Registration of the same domain with different cloud services networks
CN107409127B (zh) 针对具有多个身份的联系人的许可管理
US11477296B2 (en) Dynamic user group management in group-based communication systems
KR20140013639A (ko) 애플릿 접근 제어 방법 및 이를 위한 장치, 그리고 시스템
US9887872B2 (en) Hybrid application environments including hosted applications and application servers for interacting with data in enterprise environments
US8955070B2 (en) Controlled password modification method and apparatus
US20170026474A1 (en) Communication Session Recording
US11321446B2 (en) System and method to ensure secure and automatic synchronization of credentials across devices
CN114978702B (zh) 账户管理方法、平台及系统、计算设备和可读存储介质
CN114745164B (zh) 一种业务处理方法、装置、电子设备及计算机可读介质
US20230061527A1 (en) Launcher application with connectivity detection for shared mobile devices
EP3062269A1 (en) Creation, management, manipulation, and synchronization of user relations across multiple web, computer, and mobile based applications

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant