基于呼叫状态的临时用户关联的制作方法

文档序号:10694505阅读:331来源:国知局
基于呼叫状态的临时用户关联的制作方法
【专利摘要】一种用于基于呼叫状态的临时用户关联的系统,包括通信设备;呼叫状态引擎;以及用户关联服务。通信设备是网络连接的电子设备;呼叫状态引擎是在通信设备上操作的软件应用,并且呼叫状态引擎维持通信设备的当前操作的状态模型;呼叫状态引擎将数据发送至用户关联服务;以及用户关联服务至少部分地基于从呼叫状态引擎接收到的数据来生成用户关联信息。
【专利说明】基于呼叫状态的临时用户关联
[0001]相关申请的交叉引用
[0002]本申请要求于2015年I月7日提交的序列号为14/591,876、题为“TEMPORARY USERASSOCIAT1NS BASED ON CALL STATE(基于呼叫状态的临时用户关联)”的美国专利申请的权益,该美国专利申请要求于2014年I月7日提交的序列号为61/924,684、题为“TEMPORARYUSER ASSOCIAT1NS BASED ON CALL STATE(基于呼叫状态的临时用户关联)”的美国临时专利申请的权益,该临时专利申请通过引用以其整体合并于此。
【背景技术】
技术领域
[0003]本公开涉及电信领域,并且更具体地涉及在呼叫参与者之间形成关联的领域。
[0004]技术现状的讨论
[0005]在电信领域中,用户通常需要与另一用户协作或(例如,通过通信设备(例如智能电话)上的软件应用)执行其他功能。通常,这些功能要求他们彼此具有某种知识或关联,例如针对他们想要使用的软件服务共享联系信息或知道彼此的账户信息。这假定参与者彼此具有某种形式的先验知识或关联,并且排除在两个陌生人或新连接的个体之间使用这样的应用或服务,并且还要求用户形成更永久的连接从而使用期望的功能。
[0006]所需要的是,临时关联参与者的方法,这样他们可以在没有形成更具体的连接或不具有先验知识的情况下利用各种产品和服务,使得他们能够充分利用由这样的产品或服务提供的功能,而不管他们对于另一用户的个人知识或与另一用户的连接。
[0007]所需要的是,基于所建立的电话呼叫或其他通信连接在个体之间自动地识别和建立临时关联,并且使得其他产品或服务在通信期间能够使用这些临时关联的方法。

【发明内容】

[0008]因此,本发明人在本发明的优选实施例中已经构思并简化实施了用于创建基于呼叫状态的临时用户关联的系统和方法。
[0009]根据本发明的优选实施例,公开了用于动态地处理会议通信的方法。根据实施例,会议主持人或发起者可以通过任意适当的方法(例如,通过经由软件应用来配置设置,或使用特殊拨号代码或文本消息,如下面参考图5和图6所描述的)来启动会议,在这之后新成员或参与者可以通过各种便利的方法(例如,通过简单地拨打主持人的已知联系号码(即,他们的个人或办公室电话线))加入会议。当参与者连接至主持人时,他们可以可选择地用任意经配置的会议设置来验证(例如,验证特定个体是否具有会议的邀请函或是否位于被批准的参与者的白名单上),并且然后可以在不需要执行任何特殊动作(例如,如传统布置中通用的,给出他们的姓名或输入特殊代码来连接)的情况下被直接连接至会议。在这种方式中,参与者可以在不需要记住特殊信息或执行特殊动作的情况下简单地通过经由先前已知的、类似的通信方法联系主持人来容易地并方便地加入会议。
[0010]根据本发明的另一优选实施例,公开了用于动态会议通信的系统,该系统包括会议服务器、Web服务器、应用服务器、和CTI服务器。根据实施例,每个服务器组件可以是硬件组件或软件组件(例如专用计算设备或在网络连接的计算设备上操作的软件服务或应用),并且应当理解的是,单个网络连接的设备可以操作多个组件(单个布置的多个组件(例如,操作web服务器和应用服务器的单个计算机),或是多个布置的组件(例如,同时操作不只一个系统的web服务器的单个计算机。
[0011 ]根据实施例,例如当个体(经由将在下文进行描述的各种方法中的任意方法)建立会议或尝试加入会议时,会议服务器可以经由网络(例如,电话网络或互联网,或任意其他适当的通信网络)来接收和处理会议请求。例如当个体经由电话来呼叫与会议相关联的电话号码或输入拨号代码以配置会议时,CTI服务器可以经由电话网络来接收和处理交互。Web服务器可以经由互联网或其他数据通信网络来接收和处理交互,并且可以与应用服务器交互以提供通过网络的交互方法。在这种方式中,应当理解的是,不论会议是经由电话呼口 H、或是互联网通信、还是任意其他适当的通信方法进行,使得召开会议在不管特定通信网络的性质的情况下成为可能。
[0012]根据实施例,也可以利用数据库,从而存储和提供与会议相关的信息,例如先前配置的设置或偏好、或会议信息的记录、或可以被认为与特定会议或系统的一般功能相关或对特定会议或系统的一般功能有用的任意其他这样的信息。数据库可以是适当的数据存储装置,例如基于硬件的存储介质(例如,整体或可移动存储介质(例如,光存储盘或磁存储驱动器))、或各种适当的基于软件的存储装置的任意装置(例如,本领域中常见的各种数据库模式的任意模式)、或用于存储由系统的组件随后使用的信息的任意其他适当的装置。
[0013]在本发明的优选实施例中,公开了用于自动地创建基于呼叫状态的临时用户关联的系统,包括呼叫状态引擎、用户关联服务、和应用集成服务,呼叫状态引擎可以是在用户的通信设备上操作的软件应用,用户关联服务可以是在用户的通信设备上操作的软件模块,应用集成服务可以是在用户的通信设备上操作的软件模块。根据实施例,通信设备(例如智能电话)可以操作呼叫状态引擎,该呼叫状态引擎识别呼叫或其他通信的发生。呼叫状态引擎然后可以通知用户关联服务呼叫正在进行,并且关联服务然后可以获取诸如联系信息(例如,电话号码或电子邮件地址)之类的参与者信息、或设备信息(例如,参与者的通信设备的硬件能力),并且将这个信息发送至应用集成服务。应用集成服务然后可以将这个信息呈现给外部服务或产品(例如,社交网络或文件共享软件实用程序),以根据应用的特定性质视情况将这个信息用作社交连接或其他关联。
[0014]在本发明的优选实施例中,公开了用于创建临时用户关联的方法,包括以下步骤:在多个参与者之间建立通信链路、在参与者之间形成临时关联、以及将临时关联呈现给外部应用或服务以供使用。根据实施例,当呼叫被建立时,在不要求参与者互相明确地创建更永久的关联(例如本领域中社交应用中常见的“朋友”或其他行为)的情况下,参与者可以彼此被临时地互相关联,以用于以下目的:将该关联呈现给可以利用社交连接的外部应用(例如,如本领域中常见的协作或文件共享应用程序)。
[0015]应当理解的是,虽然本文所描述的这个应用和若干示例以及布置参考了电信会议(即,“会议呼叫”),但是本发明适用于多种通信方法,包括但不限于音频(例如电话呼叫)、视频(例如FACETME?或其他视频通信服务或技术)、或基于文本的通信(例如经由短消息(SMS)或其他基于文本的聊天技术),并且还应当理解的是,根据本发明的特定布置可以互换地或同时地利用多个通信方法。
【附图说明】
[0016]附图示出了本发明的若干实施例,并且与说明书一起用于根据实施例解释本发明的原理。本领域的技术人员将认识到,附图中所示出的特定实施例仅是示例性的,并且不旨在限制本发明的范围。
[0017]图1是示出本发明的实施例中所使用的计算设备的示例性硬件架构的框图。
[0018]图2是示出根据本发明的实施例的客户端设备的示例性逻辑架构的框图。
[0019]图3是示出根据本发明的实施例的客户端、服务器、和外部服务的示例性架构布置的框图。
[0020]图4是示出本发明的各种实施例中所使用的计算设备的示例性硬件架构的另一框图。
[0021]图5是根据本发明的另一优选实施例的用于动态会议通信的示例性方法的方法流程图。
[0022]图6是根据本发明的优选实施例的用于动态会议通信的示例性系统架构的框图。
[0023]图7是用于会议呼叫创建和解除的示例性方法的方法流程图。
[0024]图8是根据本发明的优选实施例的用于创建基于呼叫状态的临时用户关联的示例性系统架构的框图。
[0025]图9是根据本发明的优选实施例的用于创建基于呼叫状态的临时用户关联的示例性方法的方法流程图。
【具体实施方式】
[0026]本发明人已经构思和简化了实施用于创建基于呼叫状态的临时用户关联的系统和方法。
[0027]本申请描述了一个或多个不同的发明。此外,对于本文所描述的一个或多个发明,许多替代实施例可以被描述;应当理解的是,这些实施例仅是为了说明的目的被呈现。所描述的实施例在任何意义上不旨在是限制性的。一个或多个发明可以被广泛地应用于许多实施例,这从本公开可以明显看出。通常,实施例被充分详细地描述以使得本领域的技术人员能够实施一个或多个发明,并且应当理解的是,可以利用其他实施例也,并且在不偏离本特定发明的范围的情况下,可以做出结构的、逻辑的、软件的、电子的、和其他的改变。因此,本领域的技术人员将认识到,可以利用各种修改和替换来实施一个或多个发明。一个或多个发明的特定特征可以参考形成本公开的一部分的一个或多个特定实施例或附图进行描述,并且在附图中通过示例的方式示出了一个或多个发明的具体实施例。然而,应当理解的是,这样的特征不限于在一个或多个特定实施例或附图中被使用(这样的特征参考一个或多个特定实施例或附图被描述)。本公开既不是一个或多个发明的所有实施例的文字说明也不是必须在所有实施例中呈现的一个或多个发明的特征的列表。
[0028]在这个专利申请中提供的章节的小标题和这个专利申请的题目仅是为了方便的目的,并且不应以任何方式被视为限制本公开。
[0029]除非以其他方式明确指明,互相进行通信的设备不需要互相进行持续的通信。此夕卜,互相进行通信的设备可以直接地进行通信、或间接地通过一个或多个逻辑的或物理的中介进行通信。
[0030]具有若干组件的实施例互相进行通信的描述不意味着所有这样的组件都是必须的。相反,可以描述各种可选择的组件来示出一个或多个发明的多种可能的实施例,并且从而更充分地示出本发明的一个或多个方面。类似地,虽然过程步骤、方法步骤、算法等等可以以连续顺序进行描述,但是这些过程、方法、算法通常可以被配置以交替顺序进行工作,除非明确说明是相反的。换句话说,本专利申请中所描述的步骤的任意序列或顺序(其中或它本身)不指示步骤以该顺序被执行的要求。所描述的过程的步骤可以根据实际情况以任意顺序被执行。此外,尽管这些步骤被描述或暗示为不同时发生(例如,因为一个步骤在另一步骤之后被描述),一些步骤可以被同时执行。此外,附图中描绘的过程的图示不意味着所示出的过程排除其他变型和修改、不意味着所示出的过程或它的步骤中的任意步骤对于一个或多个发明是必要的、以及不意味着所示出的过程是优选的。同样,步骤通常在每个实施例中被描述一次,但是这不意味着它们必须出现一次、或它们在每个被实施或被执行的过程、方法、或算法中只能出现一次。一些步骤在一些实施例或一些事件中可以被省略,或一些步骤在给定实施例或事件中可以被执行超过一次。
[0031]当描述单个设备或物体时,显而易见的是,可以用不只一个设备或物体来替代单个设备或物体。类似地,在描述不只一个设备或物体的情况下,显而易见的是,可以用单个设备或物体来替代不只一个设备或物体。
[0032]设备的功能或特征可以由没有被明确描述为具有这样的功能或特征的一个或多个其他设备替代地实施。因此,一个或多个发明的其他实施例不需要包括设备本身。
[0033]本文所描述或参考的技术和机制有时为了清楚将以单数形式进行描述。然而,应当注意的是,除非另有说明特定实施例包括技术的多次迭代或机制的多个实例。附图中的过程描述或方框应当被理解为表示代码的模块、分段、或部分,该代码的模块、分段、或部分包括用于实现过程中的特定逻辑功能或步骤的一个或多个可执行指令。如本领域的普通技术人员将理解的,替代的实现方式被包括在本发明的实施例的范围之内,其中例如,可以以不同于所示出的或所讨论的顺序来执行功能,包括基本上同时或相反顺序(取决于所涉及的功能)。
[0034]硬件架构
[0035]通常,本文所公开的技术可以在硬件或软件与硬件的组合上被实现。例如,它们可以在操作系统内核中、在单独的用户进程中、在绑定至网络应用的库程序包中、在专门构造的机器上、在专用集成电路(ASIC)上、或在网络接口卡上被实现。
[0036]本文所公开的实施例中的至少一些实施例的软件/硬件混合实现方式可以在由存储在存储器中的计算机程序选择性地激活或重新配置的可编程网络驻留机器(其可以被理解为包括间歇连接的网络感知机器)上被实现。这样的网络设备可以具有多个网络接口,网络接口可以被配置或被设计为利用不同类型的网络通信协议。这些机器中的一些机器的一般架构可以在本文中被公开从而示出一个或多个示例性装置,通过该一个或多个示例性装置可以实现给定单元的功能。根据具体实施例,本文所公开的各种实施例的至少一部分特征或功能可以在与一个或多个网络相关联的一个或多个通用计算机上被实现,例如终端用户计算机系统、客户端计算机、网络服务器或其他服务器系统、移动计算设备(例如,平板计算设备、移动电话、智能电话、笔记本电脑等等)、用户电子设备、音乐播放器、或任意其他适当的电子设备、路由器、交换机等等、或它们的任意组合。在至少一些实施例中,本文所公开的各种实施例的至少一部分特征或功能可以在一个或多个虚拟计算环境(例如,网络云计算、在一个或多个物理计算机器上托管的虚拟机等等)中被实现。
[0037]现在参考图1,示出了描绘适用于实现本文所公开的特征或功能中的至少一部分特征或功能的示例性计算设备100的框图。计算设备100可以是例如先前段落中列出的计算机器中的任一个计算机器,或实际上能够根据存储在存储器中的一个或多个程序来执行基于软件或硬件的指令的任意其他电子设备。计算设备100可以适于与多个其他计算设备(例如客户端或服务器)通过通信网络(例如广域网、城域网、局域网、无线网络、互联网、或任意其他网络)使用(无论是无线还是有线的)这种通信的已知协议来进行通信。
[0038]在一个实施例中,计算设备100包括一个或多个中央处理单元(CPU) 102、一个或多个接口 110、和一个或多个总线106(例如,外围组件互连(PCI)总线)。当在适当的软件或固件的控制之下运行时,CPU 102可以负责实现与专门配置的计算设备或机器的功能相关联的具体功能。例如,在至少一个实施例中,计算设备100可以被配置或被设计为利用CPU102、本地存储器101和/或远程存储器120、和(一个或多个)接口 110来起到服务器系统的作用。在至少一个实施例中,可以使得CPU102在软件模块或组件的控制之下执行一个或多个不同类型的功能和/或操作,该软件模块或组件例如可以包括操作系统和任意适当的应用软件、驱动器等等。
[0039]CPU 102可以包括一个或多个处理器103,例如,来自英特尔、ARM、高通、和AMD微处理器家族中的一个的处理器。在一些实施例中,处理器103可以包括专门设计的硬件(例如,专用集成电路(ASIC)、电可擦除可编程只读存储器(EEPROM)、现场可编程门阵列(FPGA)等等)以用于控制计算设备100的操作。在具体实施例中,本地存储器101(例如非易失性随机存取存储器(RAM)和/或只读存储器(R0M),包括例如一级或多级高速缓存存储器)还可以形成CPU 102的一部分。然而,存在其中存储器可以被耦合至系统100的许多不同方式。存储器101可以被用于各种目的,例如,缓存和/或存储数据、编程指令等等。
[0040]如本文所使用的,术语“处理器”不仅仅限于在本领域中被称为是处理器、移动处理器、微处理器的这些集成电路,而且广泛地指微控制器、微型计算机、可编程逻辑控制器、专用集成电路、和任意其他可编程电路。
[0041]在一个实施例中,接口110被提供作为网络接口卡(NIC)。通常,NIC控制数据分组经由计算机网络的发送和接收;其他类型的接口 110可以例如支持与计算设备100—起使用的其他外设设备。在这些接口之中,可以提供以太网接口、帧中继接口、电缆接口、DSL接口、令牌环接口、图形接口等等。此外,可以提供各种类型的接口,例如,通用串行总线(USB)、串行、以太网、Firework?(火线)、PC1、并行、射频(RF)'Bluetooth?(蓝牙)、近场通信(例如,使用近场磁)、802.11 (WiFi)、帧中继、TCP/IP、ISDN、快速以太网接口、千兆以太网接口、异步传输模式(ATM)接口、高速串行接口(HSSI)接口、销售点终端(POS)接口、光纤数据分布式接口(FDDI)等等。通常,这样的接口 110可以包括适用于与适当的介质进行通信的端口。在一些情况下,它们也可以包括独立处理器,并且在一些实例中,可以包括易失性和/或非易失性存储器(例如,RAM)。
[0042]虽然图1中示出的系统示出了用于实现本文所描述的一个或多个发明的计算设备100的一个具体架构,但是不意味着只有在该设备架构上本文所描述的特征和技术的至少一部分特征和技术才可以被实现。例如,可以使用具有一个或任意数量的处理器103的架构,并且这样的处理器103可以存在于单个设备中或分布于任意数量的设备之间。在一个实施例中,单个处理器103处理通信以及路由计算,而在其他实施例中,可以提供单独的专用通信处理器。在各种实施例中,不同类型的特征或功能可以根据本发明在包括客户端设备(例如,运行客户端软件的平板设备或智能电话)和服务器系统(例如,下面将详细描述的服务器系统)的系统中被实现。
[0043]不管网络设备的配置,本发明的系统可以采用一个或多个存储器或存储器模块(例如,远程存储器块120和本地存储器101),该一个或多个存储器或存储器模块被配置为存储数据、用于通用网络操作的程序指令、或与本文所描述的实施例的功能相关的其他信息(或上面的任意组合)。例如,程序指令可以控制操作系统和/或一个或多个应用的执行或包括操作系统和/或一个或多个应用。存储器120或存储器101和120还可以被配置为存储数据结构、配置数据、加密数据、历史系统操作信息、或本文所描述的任意其他特定或通用的非程序信息。
[0044]因为这样的信息和程序指令可以被用来实现本文所描述的一个或多个系统或方法,所以至少一些网络设备的实施例可以包括非暂态机器可读存储介质,该非暂态机器可读存储介质例如可以被配置或被设计为存储用于执行本文所描述的各种操作的程序指令、状态信息等等。这样的非暂态机器可读存储介质的示例可以包括但不限于诸如硬盘、软盘、和磁带之类的磁介质;诸如CD-ROM盘之类的光介质;诸如光盘之类的磁光介质;和专门被配置为存储和执行程序指令的硬件设备(例如只读存储器设备(R0M)、闪存存储器、固态驱动器、忆阻存储器、随机存取存储器(RAM)等等)。程序指令的示例包括目标代码(例如,可以由编译器产生)、机器代码(例如可以由汇编器或连接器产生)、字节代码(例如可以由例如Java?编译器生成并且可以使用Java虚拟机或等同物来执行)、或包含可以由计算机使用解释器来执行的高级代码的文件(例如,用Python、Perl、Ruby、Groovy、或其他脚本语言书写的脚本)。
[0045]在一些实施例中,根据本发明的系统可以在独立计算系统上被实现。现在参考图2,示出了描绘独立计算系统上的一个或多个实施例或实施例的组件的典型示例性架构的框图。计算设备200包括处理器210,该处理器210可以运行执行本发明的实施例的一个或多个功能或应用的软件,例如客户端应用230。处理器210可以在操作系统220(例如,微软的Windows?操作系统的一个版本、苹果的Mac 0S/X或1S操作系统,各种Linux操作系统,谷歌的Android?操作系统等等)的控制之下执行计算指令。在许多情况下,一个或多个共享服务225可以在系统200中是可操作的,并且可以被用于向客户端应用230提供通用服务。服务225可以是例如Windows?服务、Linux环境中的用户空间通用服务、或与操作系统210—起使用的其他类型的通用服务架构。输入设备270可以是任意类型的、适用于接收用户输入的设备,包括例如键盘、触摸屏、麦克风(例如,用于语音输入)、鼠标、触摸板、跟踪球、或它们的任意组合。输出设备260可以是任意类型的、适用于向一个或多个用户提供输出的设备,无论相对于系统200是远程的还是本地的,输出设备260可以包括例如用于可视化输出的一个或多个屏幕、扬声器、打印机、或它们的任意组合。存储器240可以是具有本领域已知的任意结构或架构的随机存取存储器,例如由处理器210用来运行软件。存储设备250可以是用于以数字形式存储数据的磁的、光的、机械的、或电的存储设备。存储设备250的示例包括闪存存储器、磁硬盘驱动器、⑶-ROM等等。
[0046]在一些实施例中,本发明的系统可以在分布式计算网络(例如,具有任意数量的客户端和/或服务器的一个分布式计算网络)上被实现。现在参考图3,示出了描绘用于根据本发明的实施例在分布式计算网络上实现系统的至少一部分的示例性架构300的框图。根据实施例,可以提供任意数量的客户端330。每个客户端330可以运行用于实现本发明的客户端侧部分的软件;客户端可以包括例如在图2中所示出的系统200。此外,可以提供任意数量的服务器320以用于处理从一个或多个客户端330接收到的请求。客户端330和服务器320可以互相经由一个或多个电子网络310进行通信,该一个或多个电子网络310在各种实施例中可以是互联网、广域网、移动电话网、无线网络(例如WiF1、Wimax等等)、或局域网(或实际上本领域已知的任意网络技术;本发明不偏好任何网络技术)中的任意一个。可以使用任意已知的网络协议(包括例如有线的和/或无线的协议)实现网络310。
[0047]此外,在一些实施例中,当需要获得附加信息或参考关于特定呼叫的附加数据时,服务器320可以呼叫外部服务370。与外部服务370的通信可以例如经由一个或多个网络310进行。在各种实施例中,外部服务370可以包括web使能的服务或与硬件设备本身相关或安装在硬件设备本身上的功能。例如,在客户端应用230是在智能电话或其他电子设备上实现的实施例中,客户端应用230可以获得存储在云中的服务器系统320中、或存储在部署在一个或多个特定企业的或用户的场所的外部服务370上的信息。
[0048]在本发明的一些实施例中,客户端330或服务器320(或两者)可以利用一个或多个专门服务或应用,该一个或多个专门服务或应用可以在本地或跨一个或多个网络310远程地部署。例如,一个或多个数据库340可以由本发明的一个或多个实施例来使用或参考。本领域的普通技术人员应当理解的是,数据库340可以以各种架构被布置并且使用各种数据访问和操作方法。例如,在各种实施例中,一个或多个数据库340可以包括使用结构化查询语言(SQL)的关系数据库系统,而其他的可以包括诸如在本领域中被称为“NoSQL”之类的替代数据存储技术(例如,Hadoop Cassandra、Google BigTable等等)。在一些实施例中,可以根据本发明来使用诸如面向列的数据库、内存数据库、群集数据库、分布式数据库、或甚至平面文件数据储存库之类的不同的数据库架构。本领域的普通技术人员应当理解的是,已知的或将来的数据库技术的任意组合可以视情况被使用,除非针对本文的特定实施例指定了具体数据库技术或组件的具体布置。此外,应当理解的是,本文所使用的术语“数据库”可以指物理数据库机器、作为单个数据库系统的机器群集、或整体数据库管理系统之内的逻辑数据库。除非针对给定使用的术语“数据库”指定了具体意义,术语“数据库”应当被解释为包括所有这些意义,所有这些应当被理解为本领域的普通技术人员对术语“数据库”的一般含义。
[0049]类似地,本发明的大多数实施例可以利用一个或多个安全系统360和配置系统350。安全和配置管理是常用的信息技术(IT)和web功能,它们各自中的一些通常与任意IT或web系统相关联。本领域的普通技术人员应当理解的是,本领域现在已知的或将来的任意配置或安全子系统可以在不受限制的情况下与本发明的实施例一起被使用,除非任意具体实施例的描述明确要求了具体的安全360或配置系统350或方法。
[0050]图4示出了可以在系统的各种位置中的任意位置被使用的计算机系统400的示例性概述。它是可以执行处理数据的代码的任意计算机的示例。在不偏离本文所公开的系统和方法的广泛精神和范围的情况下,可以对计算机系统400做出各种修改和改变。CPU 401被连接至总线402,存储器403、非易失性存储器404、显示器407、1/0单元408、和网络接口卡(NIC)413也被连接至总线402。1/0单元408通常可以被连接至键盘409、定点设备410、硬盘412、和实时时钟411。NIC 413连接至网络414,该网络414可以是互联网或本地网络,该本地网络可以具有到互联网的连接,也可以不具有到互联网的连接。在这个示例中,还被示出作为系统400的一部分的是,被连接至交流电源406的电源单元405。未示出的是可能出现的电池,以及公知的但不适于本文所公开的当前系统和方法的具体新颖功能的许多其他设备和修改。
[0051]在各种实施例中,用于实现本发明的系统或方法的功能可以被分布在任意数量的客户端和/或服务器组件之中。例如,各种软件模块可以被实现以用于执行与本发明有关的各种功能,并且这样的模块可以以不同的方式实现,以在服务器和/或客户端组件上运行。
[0052]概念架构
[0053]图5是方法流程图,示出了根据本发明的优选实施例的用于提供动态会议的示例性方法500。如图所示,在初始步骤501中,个体可以设置会议,例如当他们想要为其他参与者主持会议时。这种设置可以根据特定布置经由一些适当的方法中的任意方法来执行,例如通过互联网或其他数据通信网络上的计算机交互(例如当主持人使用计算机与配置网站或软件应用进行交互时,或经由与在诸如智能电话、平板计算设备、或笔记本电脑之类的移动计算设备上操作的移动应用进行交互)、或可以通过诸如使用特殊拨号代码之类的电话交互(如在本领域中通常被用来在电话上执行特殊功能,例如检查账户信息或获取语音邮件消息)、或经由任意其他适当的通信方法。例如,根据本领域,互联网协议语音(VoIP)会议、基于群组的聊天消息、会议电话呼叫、或其他这样的会议布置是可能的。
[0054]在下一个步骤502中,可以发起会议并且使其他参与者可以加入会议。根据本发明,该发起可以被配置((例如,由用户)手动地、自动地或半自动地、或作为预配置的或可配置存储的或默认的选项、或由主持人在先前步骤501中手动配置)为(例如,根据利用电话呼叫会议布置的布置)将呼叫至主持人的电话号码的所有来电路由至会议,以便呼叫他们的任何人将被添加至会议呼叫(省去了对如本领域中常用的特殊电话号码、代码、或与呼叫会议系统进行交互的需要)。在会议期间,在下一个步骤503中,参与者可以尝试加入会议,例如通过呼叫主持人的电话号码或以其他方式与主持人的通信装置进行交互(例如,根据特定布置或特定设备,通过与移动应用或其他软件通信装置进行交互)。在下一个步骤504中,参与者可以(例如,通过与主持人的会议设置进行比较)被可选择地进行验证,例如验证参与者是否在“白名单”上或以其他方式被标记为被允许加入会议(例如,当主持人希望只有特定参与者而不是允许任何人都加入并且参与时)、或特定参与者是否已经符合参与的任何先决条件(例如,确保他们具有兼容的通信设备(例如,针对视频会议要求所有参与者使用具有摄像头的移动电话))。待成功验证(如果执行),在下一个步骤505中,参与者可以被添加至会议并且开始参与会议。
[0055]在下一个步骤506中,参与者可以从会议断开(例如,简单地通过挂断电话,或通过经由其他方法手动地断开),并且当所有参与者都已经离开时,会议可以被认为结束了(然而,可能的是其他参与者可能会加入,因此缺少参与者可能不会自动地关闭会议)。在最后的步骤507中,主持人可以选择手动地关闭会议,从而防止任意新成员加入,并且正常通信恢复(例如,呼叫他们的电话号码现在产生“正常的”、一对一电话呼叫而不是将呼叫者加入用于其他人加入的会议)。根据特定布置,当会议结束或以其他方式不活动时,该会议可以被从列表中移除或以其他方式被从视图中隐藏,以便附加用户不会被给出加入或观看会议的选项,例如通过移除(例如,在移动软件应用中可以被利用的)目录中的列表或已知会议的呼叫列表,或通过在目录列表中隐藏或掩盖用户的电话号码,以便用户的电话号码不会被选择,由此防止当不期望举行会议时来自用户的不必要的连接尝试。
[0056]在这种方式中,可以理解的是,创建和加入会议变得非常简单和方便,因为可以利用普通的和熟悉的通信方法,并且可以不要求具体因素来参与会议,在最大数量的用户或设备的情况下促进可访问性和确保互操作性。然而,附加功能经由会议配置保持,可选择地允许设置更多具体要求或偏好,以便主持人可以保留完全按照他们的偏好来配置会议的选项,并且根据他们的具体需要可以视情况向他们和其他参与者提供方便性和功能性两者。例如,主持人可以选择限制会议中活跃参与者的数量,或设置被允许或被要求参与的具体用户、或其他非参与者关心的要求(例如至少一部分参与者要求的或可用于至少一部分参与者的定时器、主题、文件、以及设备能力、或在配置会议中可能被期望使用的任意其他这样的条件)。此外,可以理解的是,将新参与者添加至会议也变得简单了,因为不要求特殊过程并且加入所需要的信息可以仅仅是单个电话号码(例如,如先前在步骤501中所描述的,当会议被配置为将到主持人的所有呼叫路由至会议),这样通过简单地给予新参与者主持人的联系信息,新参与者可以被给予到现有的或将来的会议的“邀请”。这可以被视为使得用户的参与变得容易,例如他们可以不被要求输入诸如姓名或访问代码之类的任何个人信息来加入,并且他们可以通过简单地连接和断开(就像他们正常地与个体进行通信一样(即,当没有会议时))来容易地加入和退出会议。
[0057]应当理解的是,虽然本文通过示例的方式描述了会议电话呼叫的情景,但是所描述的方法和布置同样适用于任意各种通信方法,例如互联网协议语音(VoIP)呼叫(如可以非常类似于上述电话呼叫来运行,一般地利用互联网连接来替代电话网络)、经由电话或互联网连接的视频通信技术(例如FACETIME?或类似的)的视频会议、或通过网络进行通信的任意其他适当的方法。
[0058]示例性实施例的详细描述
[0059]图6是根据本发明的优选实施例的用于动态通信会议的示例性系统架构600的框图。如所示出的,系统600可以包括主机601(该主机601可以是能够通过网络进行通信的用户的电子设备或电话设备(例如电话、智能电话、平板计算设备、个人计算机、或任意其他适当的通信设备,它们的具体性质或能力可以根据实施例并根据特定布置的变化而变化))、诸如互联网610或其他通信网络之类的数据通信网络、公共交换电话网(PSTN)620或另一电话通信网络(例如,蜂窝网络)、和多个参与者630(该多个参与者630可以是能够通过网络进行通信的附加设备,例如电话、智能电话、移动电子设备、个人计算机、或其他适当的设备的任意组合)。根据实施例,主机601和参与者631、632、和633可以是用于通信的任意适当的网络连接的设备(例如,个人计算机、智能电话、或其他移动通信设备),并且可以根据被利用的特定设备连接至诸如互联网610或PSTN 620之类的通信网络。此外,虽然参考了主机设备和参与者设备,但是应当理解的是,使用基于软件的设备或虚拟设备(例如,存储在存储器中的并由电子设备操作的软件应用)也可以起到这样的作用。例如,多个基于软件的应用可以由单个智能电话或个人计算设备进行操作,每个应用然后根据特定布置或使用情况可选择地被适用于起到主机或参与者的作用。此外,通过使用虚拟设备,模拟通信可以根据实施例被促进(例如,用于测试目的),其中多个基于软件的虚拟主持人或参与者可以在单个电子设备之内或跨互相进行通信(例如,经由数据网络或其他适当的通信方法)的多个连接的设备被使用,由此在不需要构建或操作实际通信的情况下或可选择地在甚至不利用可以实际上能够执行实际会议操作所需要的功能的设备的情况下模拟会议。
[0060]如所示出的,电话交换机621可以被利用并且可以被连接至电话网络620,从而接收并且路由呼叫和其他通信,如本领域中所常用的。如所示出的,通信应用服务器(CAS)622可以被利用,并且其可以至少包括存储在存储器中的适当的软件程序代码,并且该CAS 622适于连接至电话交换机621以根据本发明接收相关的通信,例如(比如)会议中可能出现的呼叫。此外,CAS 622可以适于执行会议功能,例如操作特定会议并且连接参与者、或操作会议的配置或其他方面、或特定主机或参与者的配置或其他方面(例如,在特定主机希望存储用户配置文件或其他信息以使将来的配置变得容易的情况下,例如通过获取和利用存储的或预配置的设置来加快会议的创建或管理)。
[0061 ] 根据实施例,主机601可以连接至CAS 622,例如直接地经由用于交互的软件应用(例如,在诸如智能电话之类的移动设备上操作的移动软件应用)来连接或间接地经由在适当的通信网络620上的通信(例如,通过呼叫特定电话号码或利用特殊拨号代码(如本领域中常用的用于通过手机执行特殊功能))来连接。主机601可以针对诸如配置或建立会议之类的目的(例如先前参考图5所描述的)与CAS 622进行交互,如在在设置立即使用的会议或配置将来使用的偏好或设置时可能是适当的,例如设置将来的会议的默认偏好或提前设置特定会议(例如针对预定的时间)。此外,主机601可以与日历服务器611进行交互(例如,经由在智能电话或其他移动通信设备上操作的日历应用,或经由交互式网站或经由适当的网络610的其他网络连接的软件),从而配置预定的会议或发送(如本领域中常用的)日历邀请,以便通知会议的其他个体,这样他们可以参与进来。应当理解的是,通过配置选项的各种组合,各种布置和各种类型的会议根据本发明可以是可能的,并且可以根据由主机利用的配置选项来服务各种使用情况。
[0062 ] 如进一步示出的,可以利用通信桥612,从而允许在网络之间(例如,在PSTN 610和互联网620之间)进行通信,从而允许参与者不管他们的特定设备或其他注意事项来进行通信。例如,根据实施例,主机601可以经由电话连接用CAS 622建立会议(例如,通过使用特殊拨号代码来使能以他们电话号码进行的会议),并且然后参与者630可以经由互联网610进行连接,因为根据本发明他们的交互可以由连接桥612促进从而允许与CAS 622进行通信。例如,当参与者使用有变化的通信能力的设备时(例如,当一部分参与者正在使用电话设备而其他参与者可能正在使用个人计算设备时),可以利用这样的布置。以这种方式,在不对参与者的具体设备或能力进行要求的情况下可以促进会议,并且参与者不应当因为设备限制而被拒绝加入会议。
[0063]图7是用于会议呼叫创建和解除的示例性方法700的方法流程图,示出了主持人可以(例如,通过先前参考图6所描述的与CAS进行交互)设置会议并且随后通过主持人或通过(例如,可能由CAS来执行的)自动的过程来关闭或断开会议的一般过程。在初始创建步骤701中,主持人可以连接至CAS从而配置会议。这样的连接可以随技术性质的变化而变化,例如主持人可以经由PSTN例如通过在手机上输入特殊拨号代码或通过呼叫特殊电话号码(例如,可以被用来将主持人的设备置于“会议模式”中,或被用来通知CAS会议正在被创建)进行连接,或通过经由网络连接的软件应用(例如,在智能电话或其他移动通信设备上操作的移动应用)、或用于会议配置的网站或其他交互式互联网连接的软件的交互进行连接。在下一个步骤702中,该配置可以被可选择地存储在例如数据库或物理存储介质(例如,诸如磁存储驱动器或光存储驱动器之类的整体存储介质或可移动存储介质)中,从而在将来的会议配置中使用(例如,主持人建立用于将来的会议的偏好“默认”设置来加快将来的会议的创建)。会议配置的存储可以被用来容易地创建偏好设置或默认会议配置,当在将来创建新会议、加快设置过程或确保一段时间的多个会议之间的操作的一致性时。该偏好设置或默认会议配置可以被可选择地加载。此外,应当理解的是,存储的配置或其部分可以在设备或用户之间被共享(例如,通过经由设备上的软件应用进行发送),使得主持人可以与其他用户共享偏好设置或其他配置信息。例如,在会议结束之后,主持人可以选择与一些或全部参与者共享配置,确保他们知道将来会发生什么或如果需要的话则可以设置一个类似的他们自己的会议(根据实施例在各种商业布置中可能是有用的)。
[0064]在下一个步骤703中,CAS可以基于配置(例如,先前所描述的预定义的配置或存储的配置,或在初始步骤701中所执行的手动配置的设置)建立会议,在这里,会议可以被认为是“直播的(live)”。应当理解的是,在步骤之间视情况可以存在任意时间延迟,例如主持人可以配置在确定的将来时间将被建立的会议、或可选择地由事件触发的会议(例如,当参与者个体呼叫他们时、或当特定通知由外部程序或服务发送至CAS时设置将被发起的会议,(例如,可以被用来促进与第三方产品或服务的集成))。在下一个步骤704中,例如当将来日期的会议被发起时(例如,CAS可以呼叫主持人从而开始会议,而不是要求他们在过渡时间段期间保持连接),CAS可以(如果适当的话)联系主持人从而建立他们在会议中的存在。在最终步骤705中,参与者可以例如通过拨号到主持人的电话号码或经由另一适当的联系方法加入会议,或可交换地CAS可以联系参与者(例如,以类似于先前步骤704中的联系主持人的方式)从而在适当的时候将他们带入会议。例如,主持人可以配置会议,其中包括一组选定的参与者,并且CAS可以在适当的时间(S卩,当会议开始时)联系他们从而通知他们并且给予他们加入会议的机会。可选择地,附加参与者可以根据具体配置被允许加入进行中的会议。应当理解的是,一般地CAS的或具体地特定会议的这样的功能还可以包括与各种外部产品或服务(例如日历应用、联系人存储、或文件托管服务)进行交互,例如扩展上述功能从而促进会议参与者之间的文件共享、经由已知或可用的联系信息来通知多个参与者、或(如针对会议操作或配置可能被期望的)预定和报警功能。在本领域中可以用各种方式来实现这样的交互或集成,例如(比如),使用软件应用程序编程接口(API)或其他这样的方法来促进与外部软件产品或服务的集成或交互,以及使得能够进一步开发适于根据本发明的与CAS或会议进行交互的附加软件。
[0065]在第一解除步骤710中,参与者可以离开会议,例如通过挂断他们的电话或以其他方式从交互中断开。在下一个步骤711中,最后的参与者可以断开,这样在会议中仅剩余主持人。此时,根据特定配置(例如,可能在设置步骤701中已经被建立),主持人可以在手动结束步骤712中手动地结束会议(例如,通过与软件元件进行交互或通过使用特殊拨号代码,来停止他们的电话线上的会议或从会议列表或目录中移除他们的联系信息,或根据特定配置的任意其他适当的手动交互方法),或CAS可以在适当的条件(例如,可以在步骤701中在设置期间被手动地配置,或如先前所描述的从存储的或默认的配置中获取)下自动地关闭会议,例如当最后的参与者已经离开时或在配置的时间段之后(例如,针对具有预定义的开始时间和结束时间的会议)。此外,CAS可以(视情况)例如(根据参与者的特定设备或连接、或特定会议配置)经由语音提示或消息、或经由基于文本或视频的通知,来通知参与者会议将要结束。例如,在具有多个参与者(该多个参与者使用具有不同通信能力的不同设备)的会议中,可以经由语音提示来通知手机上的参与者临近定时器(例如,会议的预定结束时间),同时可以经由显示在他们的设备屏幕上的弹出消息或推送通知来通知智能电话或类似的移动设备上的参与者。
[0066]图8是用于创建基于呼叫状态的临时用户关联的示例性系统架构的框图。如所示出的,呼叫状态引擎810可以包括存储在存储器中的并且在网络连接的通信设备801(例如,智能电话或能够通过网络进行通信的类似的设备)上操作的软件程序代码,例如可以由会议参与者使用(如先前所描述的(参考图6)),并且可以维持设备的操作的内部状态模型(例如,持续监测设备是否与另一用户的设备进行活跃的通信,即,“在呼叫中”)。应当理解的是,这样的功能是本领域中的通信设备的常见特征,例如智能电话可以监测呼叫是否被建立,并且基于不同的可用特征或功能是否在呼叫中是活跃的来将其呈现给用户,以及维持关于存储在设备上的信息的、或关于由设备提供的能力(例如,用户的存储的文件、联系信息、位置、或其他这样的可用信息)的内部状态信息。
[0067]当呼叫被建立时,呼叫状态引擎810可以识别设备现在“在呼叫中”,相应地更新内部状态模型,并且通知用户关联服务811呼叫正在进行。应当理解的是,无论呼叫是拨出的(例如,用户在他们的智能电话或其他设备上拨打号码,发起至另一设备或另一方的拨出联系尝试)还是接听的(例如,当第三方呼叫用户时,并且用户在他们的设备上进行应答),用户关联功能都可以被提供,并且还应当理解的是,这样的操作或具体行为可以根据本发明被可选择地配置为选择性地仅在接听或拨出时发生。例如,用户可能不希望与他们呼叫的任何人形成临时关联,这样他们可以选择仅允许这样的行为在接听呼叫期间进行。例如,这样的布置在用户的工作设备上可能是期望的。用户可以仅将设备的电话号码(或其他联系详情)给商业伙伴或客户,并且希望出于商业目的与他们形成临时关联而在拨出呼叫上限制这样的关联功能,因为他们可能使用该工作设备来拨出他们不希望与当事人形成关联的个人呼叫或其他联系。
[0068]用户关联服务811然后可以获取关于呼叫参与者的信息,例如姓名或联系信息,以及关于他们的设备或其他能力的任意潜在相关的信息(例如,参与者的设备是否具有视频摄像头或其他视频记录硬件)。该信息可以从呼叫状态引擎810被接收,例如参与者的电话号码或设备信息,该参与者的电话号码或设备信息可以作为呼叫的一部分被立即获取(例如,如果参与者在双向视频呼叫中,则可以推断他们都在使用能够进行视频捕捉的设备),或该信息可以通过轮询参与者的设备(例如,通过从参与者的设备请求信息(例如,设备能力,设备能力一般地可用于软件应用并且可以由设备的用户可选择地配置,如本领域中常见的行为))被获得。任何产生的信息都可以被呈现给应用集成服务812作为用户关联,例如提供联系信息和设备硬件能力,使该联系信息和设备硬件能力可用到外部应用以根据外部应用的目的进行使用(例如,基于设备具有视频捕捉硬件以及双方所需要的联系信息是已知的信息,从一个设备到另一设备共享直播视频)。
[0069]临时用户关联的示例性使用可以出现在会议视频通信的参与者设备的使用中(例如,先前参考图6所描述的)。根据示例,用户可以在他们的设备(例如,智能电话,或能够进行视频通信的其他网络连接的通信设备)上拨打另一方的电话号码。当呼叫被建立时(例如,当其他方在他们的设备上应答来电时),可以在两个参与者之间形成临时用户关联,如上所述。发起用户然后可以操作软件应用(例如SKYPE?(比如))进行视频通信。通常,利用这样的软件,在诸如视频通信之类的功能可用之前要求用户以某种方式(例如,在应用之内明确地共享联系详情,或声明关联的其他具体动作)互相知道是常见的。根据示例,当用户使用SKYPE?时,可以要求用户输入另一用户的联系详情(例如,用户名、电子邮件地址、电话号码、或标识具体用户的其他个人信息)并且向他们发送邀请以交换信息以及声明他们的关联为联系人。当其他方接受所发送的邀请时,他们的信息被交换,并且视频通信可以变为是可用的。根据本发明,这将变得不必要,因为当呼叫被建立时所形成的临时用户关联可以被用来关联用户,并且在不需要邀请过程的情况下可以立即使得视频会议功能可用。当两个参与者结束他们的呼叫时,临时用户关联被消除,并且当随后用户查看他们的SKYPE?或其他软件应用时,他们将不会在他们的联系人列表中看到该另一用户的信息(除非他们以其他方式明确地声明了更永久的关联)。
[0070]用于集成的第三方软件应用的示例(如上所述)可以是通信软件,例如SKYPE?(如可以被用于在具有兼容设备的参与者之间进行音频或视频通信、或文件的共享)、FACETME?(如可以被用于在具有兼容设备的参与者之间进行音频或视频通信)、SMS服务(如可以被用于共享基于文本的信息,例如网站URL信息、个人详情、或可以适于经由SMS月艮务进行通信的其他少量的文本)、电子邮件(从而在参与者之间发送文件或基于文本的信息)。这样的软件程序可以在用户的设备上进行操作,并且可以从集成服务812自动地接收临时用户关联,例如在启动期间,软件通常会检查在操作期间使用的已知的联系信息(例如,通过检查存储在用户的设备上的用户的联系人列表),或它们可以明确地请求任意临时关联(例如,在用户将他们的设备配置为在使得这样的信息在软件应用之间变为可用的之前请求授权的情况下,如本领域中计算设备的常见做法)。以这种方式,不管第三方软件应用或它的功能的性质,可以视情况利用临时用户关联,并且用户可以被可选择地给予通过软件配置或设备配置来控制这样的行为的一些方式。
[0071]经由API利用集成的临时用户关联行为的第三方软件应用的示例可以是基于云的存储或共享服务,例如DR0PB0X?或类似的服务。这样的服务通常允许用户共享他们已经上传的或存储在云中的文件,例如通过生成用于通过web浏览器进行访问的URL。根据本发明,通过集成临时关联功能,这样的服务可以通过给予用户与呼叫的参与者“共享”的选项来允许更容易的文件共享。这样的选项可以可选择地在所有时间是可见的,提醒用户即使他们现在没有参与呼叫这样的功能也是可用的,或这样的选项可以仅在呼叫期间是可见的(从而通过不显示当前没有用的功能或选项来维持干净的界面)。以这种方式,在不需要任何附加步骤的情况下(在没有这样的集成的情况下可能需要以下附加步骤,例如生成共享URL,然后复制它,然后返回呼叫或其他通信软件来将该经复制的URL发送至另一参与者),用户可以经由临时用户关联与某个人快速共享文件。当以这种方式接收文件时,集成的服务可以提示用户在接收到该共享的文件时在适当的应用之内将其打开,因为临时用户关联已经是已知的并且与该应用的操作集成(而不是,例如,要求用户在他们的web浏览器中打开共享的URL,然后下载共享的文件,并且然后选择应用来打开它)。
[0072]第三方软件集成的另一示例可以是两个用户参与的FACETME?或类似的通信服务。这样的服务允许使用参与者的电子邮件地址或其他联系信息(而不是传统地针对这样的目的所需要的电话号码)的音频或视频通信。在这样的呼叫期间,参与者可能希望将SMS或其他消息发送至另一参与者,这通常将要求他们知道另一方的电话号码。根据本发明,在不将临时用户关联提供给用户的情况下,临时用户关联可以被提供给SMS服务或软件应用,并且参与者设备可以被提示以互相共享其他联系或设备详情(例如,与设备或设备的用户相关联的电话号码)。例如,设备可以提供它们相关的电话号码而无需显示该信息或使得它对用户是可访问的,例如通过在用户选择发送该信息之后自动地将它附着至SMS或其他消息,而不将它显示给用户(反而显示占位符,或用户已经已知的联系信息,例如用来建立FACEHME?呼叫的电子邮件地址)。以这种方式,消息可以在不需要或不暴露他们的电话号码的情况下在参与者之间被发送。当呼叫结束时,临时关联被删除并且没有一方暴露了他们的电话号码(除非他们以其他方式明确地选择互相共享这样的信息)。以这种方式,由于用户互相的临时关联,他们可以使用各种特征和功能,而不管他们彼此具有多少联系信息。
[0073]可以被集成的第三方设备的示例(如上所述)可以是诸如耳机或麦克风之类的外部通信设备(如可以被用于参与者之间的通信)、诸如个人计算机或另一通信设备之类的外部计算设备(例如,可以被用于在参与者之间发送文件或电子邮件)、诸如外部硬盘驱动器或闪存设备之类的数据存储设备(如可以被用于获取文件或信息以在参与者之间发送)、或适合在两个当事人之间的交互期间被使用的或可以与通信设备链接(例如,经由BLUETOOTH?配对、或经由电缆或其他物理连接方法来进行连接)用于设备交互的任意其他硬件。如上所述,这样的设备根据它们的功能或配置可以自动地接收临时用户关联或可以可选择地明确地请求任意已知的用户关联。
[0074]外部设备的示例性使用可以是外部硬盘驱动器(或任意其他数据存储设备)针对文件存储的使用。在两个参与者之间的呼叫期间,一个参与者可以将外部存储设备连接至他们的通信设备,从而使得另一参与者访问用于协作或共享的文件。通常,存储设备可以被配置为要求用户认证从而验证仅被授权的个体(例如设备的拥有者,或指定部门之内的同事,或用于访问的任意其他这样的配置标准),由此为了向另一个体授权访问,设备的拥有者(或其他授权的用户)可能被要求建立用户账户或认证的其他明确方法。根据本发明,由于可以利用临时用户关联来授权访问,所以以上过程会变得不必要,例如如果设备的拥有者已经访问了存储设备上的数据,则与他们临时关联的任意用户(例如,呼叫参与者)可以通过关联自动地被授权。当呼叫结束时,这个临时关联可以被删除,并且第三方将不再能访问数据,因为他们不再与设备的拥有者关联,由此在允许访问变得容易的同时保持安全性。应当理解的是,这样的行为可以是高度可配置的,例如经由存储设备的访问配置(或根据设备的性质的、用于设备上的认证的任意其他配置),例如指定访问数据的特定用户可以被允许与临时伙伴共享,而其他用户可能被限制使用该功能、或根据特定设备或实现方式可能是合适的任意其他这样的布置。
[0075]应当理解的是,应用集成服务812可以是在用户的设备上操作的软件或硬件模块(例如、智能电话应用或后台服务),或可以是允许软件开发者或管理员将他们的特定应用与提供的功能进行集成的应用程序编程接口(API)。以这种方式,在不限制设备或应用的功能、或抑制呼叫本身的功能(如当与不兼容的应用尝试集成时可能发生)的情况下,应用与临时用户关联之间的集成可以视情况(例如,当开发者已经将功能添加至他们的产品或服务中时)被提供,并且在不期望的时候可以是不可用的。此外,用户可以被给予控制集成的行为的一些措施,例如通过允许配置临时关联的行为或它们与其他应用的交互(例如,通过允许用户选择被允许访问他们的设备上做出的呼叫以用于形成临时关联的应用,如本领域中的智能电话用于控制访问诸如位置服务或摄像头之类的各种硬件和软件特征的常用功會泛)。
[0076]图9是示出根据本发明的优选实施例的用于建立基于呼叫状态的临时用户关联的示例性方法900的方法流程图。根据本发明,在初始步骤901中,例如通过在两个或多个当事人之间连接电话呼叫,多个参与者之间的通信链路可以被建立。在下一个步骤902中,例如通过利用关于每个参与者的任意可用的联系或设备信息,参与者之间的临时关联可以被建立。在下一个步骤903中,临时关联可以被呈现给外部应用或服务以用于使用,例如用于在任意各种社交应用或服务中针对以下目的进行使用:例如协作、文件共享、增强的通信(例如,通过将视频通信添加至现有的仅有音频的呼叫)、或可以利用用户之间的明显关联的其他目的。根据本发明,当呼叫被建立时,在不要求参与者互相明确地创建更永久的关联(例如本领域中社交应用中常见的“朋友”或其他行为)的情况下,参与者可以被临时地互相关联,以用于以下目的:将该关联呈现给可以利用社交连接的外部应用(例如,如本领域中常见的协作或文件共享应用程序)。
[0077]临时用户关联的示例性使用情况可以是具有智能电话的用户呼叫他们可能需要说话但是本人并不认识的某个人(例如,不同地区或部门中的同事)的情况。例如,保险理算员“Bob”可能正在车祸现场并观察情况,并且决定呼叫在他们公司的客户中心的某个人以获得该事件上的第二意见。Bob可以拨打电话,并且被连接至客户中心代理“Sam”,在这里,他的设备识别连接并且在两个呼叫参与者之间建立临时关联(尽管他们不认识对方,并且这可能是他们第一次进行联系)。在他们谈话期间,Bob可以决定通过他的设备发送视频并且向Sam展示现场,并且他打开用于视频捕捉的软件应用并且在他的智能电话上进行共享。在这里,用户之间的临时关联对Bob的设备上的视频共享应用是可用的,并且他被呈现有与Sam共享视频的选项,尽管他可能没有Sam的联系信息或不知道与视频共享服务相关的任何Sam的详情。Bob选择共享视频并且开始用他的设备捕捉现场,向Sam提供事故的第一人称视角以用于更好地进行评估。当完成呼叫时,临时用户关联被解散,并且视频共享服务停止连接两个用户。没有信息在两个参与者之间被明确地共享,并且他们不会互相保留任何信息,但是(例如,通过交换联系信息,例如彼此的视频共享账户用户名或其他信息)他们能够利用已经以其他方式要求他们手动地建立某种连接的社交功能。
[0078]应当理解的是,用户关联可以不管接收到的信息的范围或数量而被创建,这样关联可以被可靠地形成并且在创建的时候任意具体的细节可以被可选择地保持未知状态。这样的行为的示例可以是,在仅有(从初始呼叫中获得的)两个参与者的电话号码来标识他们的情况下在两个参与者之间形成关联。在这样的实例中,当用户尝试利用诸如文件共享之类的外部应用时,查找针对参与可能是必要的任意附加用户信息可以被留给该应用来完成,例如使用电话号码来查找任意已知的账户或设备信息来确保它们能够利用所选择的产品或服务。
[0079]基于最低限度的信息来创建临时用户关联的示例可以是,(例如,当他们的电话号码先前与该应用或服务的账户相关联时)利用参与者的电话号码来查找他们的特定软件应用或服务的账户信息,从而查找与该参与者的用户账户相关联的任意先前存储的文件。以这种方式,可以看出,社交或协作功能可用于呼叫参与者,这在没有先明确地创建更永久的关联的情况下(例如通过在能够访问一些或全部功能之前在特定应用或设备之内要求用户交换联系信息或互相添加为“朋友”(或类似的关联))(根据传统操作)通常是不可能的。以这种方式,临时关联或基于呼叫的关联可以被形成,并且可用于在用户的设备上操作的各种软件应用。
[0080]本领域的技术人员将意识到上述各种实施例的可能的修改的范围。因此,本发明由权利要求和它们的等同物定义。
【主权项】
1.一种用于基于呼叫状态的临时用户关联的系统,包括: 通信设备; 呼叫状态引擎;以及 用户关联服务; 其中所述通信设备是网络连接的电子设备; 其中所述呼叫状态引擎是在所述通信设备上操作的软件应用,并且所述呼叫状态引擎维持所述通信设备的当前操作的状态模型; 其中所述呼叫状态引擎将数据发送至所述用户关联服务;以及其中所述用户关联服务至少部分地基于从所述呼叫状态引擎接收到的数据来生成用户关联信息。2.如权利要求1所述的系统,其中,所述呼叫状态要求的行为可以由所述通信设备的用户来配置。3.如权利要求1所述的系统,其中,所述用户关联服务至少部分地基于从所述通信设备接收到的信息来生成用户关联信息。4.如权利要求1所述的系统,还包括应用集成服务,其中所述应用集成服务是在所述通信设备上操作的软件应用。5.如权利要求4所述的系统,其中,所述用户关联服务将用户关联信息提供至所述应用集成服务。6.如权利要求5所述的系统,其中,所述应用集成服务将用户关联信息提供至在所述通信设备上操作的软件应用和服务。7.如权利要求5所述的系统,其中,所述应用集成服务将用户关联信息提供至在连接到所述通信设备的外部硬件设备上操作的软件应用和服务。8.如权利要求5所述的系统,其中,所述应用集成服务将用户关联信息提供至连接到所述通信设备的硬件设备。9.一种用于基于呼叫状态的临时用户关联的方法,包括以下步骤: 建立呼叫, 创建临时用户关联,以及 使所述临时用户关联可用于第三方服务。10.如权利要求9所述的方法,还包括以下步骤: 更新状态模型以反映呼叫创建。
【文档编号】H04M3/56GK106063237SQ201580003874
【公开日】2016年10月26日
【申请日】2015年1月7日
【发明人】乔斯·德·卡斯特罗, 凯文·查托沃, 陈为, 詹森·格克, 迈克尔·塞万提斯
【申请人】思科技术公司
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1