管理呼出呼叫的布置的制作方法

文档序号:13352453阅读:156来源:国知局
管理呼出呼叫的布置的制作方法



背景技术:

一些通信系统允许诸如个人计算机的设备的用户通过诸如互联网的基于分组的计算机网络以及诸如gsm和pstn通信网络的常规电路交换网络进行语音或视频呼叫。这样的通信系统包括互联网语音或视频协议(voip)系统。这些voip系统对用户是有益的,因为它们通常具有比常规固定线路(pstn)或移动蜂窝(gsm)网络显著较低的使用成本。长距离通信尤其如此。要使用voip系统,用户可以在其设备上安装并执行客户端软件。客户端软件设置voip连接,并提供其他功能,如注册和认证。除了语音通信之外,客户端还可以设置其他通信媒体的连接,例如即时消息传递(“im”),sms消息传递,文件传输和语音邮件。

随着移动带宽的增加,对于经由在诸如互联网使能的移动电话之类的用户终端上运行的客户端应用提供基于分组的语音和视频呼叫越来越感兴趣。这些用户终端包括网络接口224,例如在一个或多个非许可频带上操作的短程rf收发机,用于经由无线接入点(例如,wlan网络的wi-fi接入点)接入互联网,和/或在一个或多个许可频带上操作的蜂窝收发机,用于经由诸如gprs(通用分组无线电业务)或hspa(高速分组接入)的蜂窝网络的基于分组的业务来接入互联网。



技术实现要素:

提供本发明内容以简化形式介绍一些概念,这些概念将在下面的详细描述中进一步描述。本发明内容不旨在确定所要求保护的主题的主要特征或基本特征,也不旨在用于限制所要求保护的主题的范围。所要求保护的主题也不限于解决背景部分中指出的任何或所有缺点的实现方式。

本公开的实施例涉及对第一用户终端和第二用户终端之间的通信事件的管理。特别地,本公开的实施例涉及对使用通信客户端应用(或通信客户端app)的通信事件的管理。“使用”通信客户端应用,用户可以拨打号码以布置呼出呼叫。呼叫可以从通信客户端应用布置,或者替代地使用本地通信客户端应用。在这种实施例中的通信客户端应用订阅呼叫和拨号事件。当拨号或呼叫号码时,通信客户端应用检查以确定拨打的号码是否被标记为通信客户端用户。如果是首次查询,这可以针对远程数据库进行检查,或针对本地高速缓存进行检查。在一个实施例中,向用户提供等待直到在布置呼叫之前进行检查为止的选项。如果该号码被标记为与通信客户端用户相关联的号码,则使用通信客户端应用布置呼叫。如果没有确定该号码被标记为通信客户端用户,则使用另一应用来发起呼叫。在一个实施例中,其他应用是本地通信客户端应用。在一个实施例中,通信客户端应用在用户发起呼叫之前通过在安装通信客户端应用时尝试布置呼叫来标识另一通信客户端应用的正确的呼叫组件。

发明人已经认识到以这种方式管理通信事件可能是重要的,特别是对于具有关于网络连接性和处理器功耗的限制的用户终端。

在一个方面,存在与第一用户相关联的用户终端,所述用户终端包括用于通过第一网络管理与至少一个另外的用户终端的通信的通信客户端应用,所述通信客户端应用被配置为:确定与安装在用户终端上的至少一个另外的通信客户端应用相关联的信息,所述至少一个另外的通信客户端应用用于管理通过第二网络与所述至少一个另外的用户的通信;关于至少一个呼出呼叫确定在呼叫终点的另外的用户终端是否包括通信客户端应用;以及基于所述呼叫终点处的所述另外的用户终端是否包括所述通信客户端应用的确定来管理所述呼叫的布置,使得所述通信客户端应用被配置为当在所述呼叫终点处的另外的用户终端包括通信客户端应用时管理使用所述通信客户端应用通过所述第一网络对所述呼叫的布置,否则将对所述呼叫的布置移交给所述至少一个另外的通信客户端应用。

根据第二方面,存在一种装置,包括:至少一个处理器;以及存储器,包括用于管理通过第一网络与至少一个另外的装置的通信的通信客户端应用代码,所述代码当在所述至少一个处理器上执行时,使得所述装置:确定与安装在所述装置上的至少一个另外的通信客户端应用相关联的信息,所述至少一个另外的通信客户端应用用于管理通过第二网络与所述至少一个另外的用户的通信;关于至少一个呼出呼叫确定在呼叫终点处的另外的装置是否包括所述通信客户端应用;并且基于所述呼叫终点处的另外的装置是否包括通信客户端应用的确定来管理对呼叫的布置,使得所述通信客户端应用代码被配置为当在所述呼叫终点处的另外的装置包括通信客户端应用时管理使用所述通信客户端应用通过所述第一网络对所述呼叫的布置,否则将对所述呼叫的布置移交给所述至少一个另外的通信客户端应用。

根据第三方面,存在用于管理用户终端之间通过第一网络的通信的方法,所述方法包括:确定与管理通过第二网络与所述至少一个另外的用户的通信的至少一种方法相关联的信息;关于至少一个呼出呼叫确定在呼叫终点处的用户终端是否包括用于管理用户终端之间通过第一网络的通信的方法;并且基于所述呼叫终点处的用户终端是否包括用于管理用户终端之间通过第一网络的通信的方法的确定来管理对呼叫的布置,使得当在所述呼叫终点处的用户终端包括用于管理用户终端之间通过第一网络的通信的方法时,用于管理通信的所述方法被配置为通过所述第一网络布置所述呼叫,否则将对呼叫的布置移交给用于管理通过第二网络与所述至少一个另外的用户的通信的方法。

附图说明

为了更好地理解本公开内容并展示其如何实施,现在通过示例的方式参考附图,其中:

图1是通信系统的示意表示,

图2是移动终端的示意性框图,

图3是通信客户端组件确定操作的示例流程图,

图4是通信客户端的“拨出”操作的示例流程图,

图5是包含高速缓存查找操作的另一通信客户端“拨出”操作的示例流程图,

图6是非通信客户端‘拨出’操作分支的示例流程图,

图7是通信客户端‘拨出’操作分支的示例流程图,

图8a是延迟通信客户端‘拨出’操作分支的示例流程图,

图8b是延迟通信客户端‘拨出’操作分支的另一示例流程图,

图9是示例邀请ui消息。

具体实施方式

仅通过示例来描述本公开的实施例。

图1是包括诸如互联网的基于分组的网络101、移动蜂窝网络103和诸如公共交换电话网(pstn)的电路交换网络112的通信系统100的示意图。移动蜂窝网络103包括多个基站104(在3gpp术语中有时称为节点b)。每个基站104被设置为服务蜂窝网络103的相应小区。每个基站104经由网关114连接到电路交换网络112。此外,分组交换网络101包括多个无线接入点106,例如用于接入互联网的wi-fi接入点。这些可以是一个或多个无线局域网(wlan)的接入点。

多个用户终端102被设置为通过网络101、103、112中的一个或多个进行通信。仅为了说明的目的,图1示出了作为互联网使能的移动设备的用户终端102a,作为桌面或膝上型pc的用户终端102b,作为蜂窝移动电话102c的用户终端102c以及作为与电路交换网络112连接的陆线电话的用户终端102d。

在图2中示意性地示出了示例性用户终端102a。用户终端102a可以是互联网使能的移动电话;手持游戏控制台;个人数字助理(pda);平板计算机或膝上型计算机之一。

用户终端102a包括耦合到存储通信客户端应用(或通信客户端app)的存储器213的一个或多个处理器单元(cpu)202形式的处理装置。处理器202还耦合到:麦克风207、扬声器203、相机205、一个或多个网络接口224、小键盘209和显示器212。

在图2所示的示例中,麦克风207、扬声器203、相机205、小键盘209和显示器212是合适的用户接口输入和输出的示例。在一些实施例中,用户接口输入可以是键盘、鼠标、定点设备、触摸板或任何合适的用户接口输入设备,例如手势或运动控制用户输入、头跟踪或眼睛跟踪用户输入、被配置为确定用户对显示器212的接近度(换句话说是触摸或悬停的触摸界面)的“触摸”或“接近”检测输入。

一个或多个网络接口224使得用户终端102a能够接入一个或多个网络101、103、112。例如,用户终端102a可以包括用于经由基站104接入移动蜂窝网络103的蜂窝无线收发机和/或用于接入互联网101的有线或无线调制解调器。在无线调制解调器的情况下,这通常包括用于经由无线接入点106接入互联网101的短程无线收发机(例如,wi-fi)。

还可以通过诸如gprs(通用分组无线电业务)或hspa(高速分组接入)的其它手段来实现对互联网101的接入。在蜂窝层级结构的较高级别,蜂窝网络103包括多个蜂窝控制器站105,每个蜂窝控制器站105耦合到多个基站104。控制器站105耦合到移动蜂窝网络103的传统电路交换部分,而且耦合到互联网101。因此,控制器站105被设置成允许经由基站104接入基于分组的通信,包括对互联网101的接入。控制器站105在gsm/edge术语中可以被称为例如基站控制器(bsc)或在ustm或hspa术语中可以被称为无线电网络控制器(rnc)。

存储器213可以包括非易失性存储器,例如耦合到处理器202的电子可擦除和可编程存储器(eeprom或“闪速”存储器)。存储器存储被设置成在处理器上执行并且被配置为当被执行时参与通过一个或多个网络101、103、112的通信的通信代码。通信代码优选地包括由与通信系统相关联的软件提供商提供的通信客户端应用110a。可以执行通信客户端应用110a,以经由网络接口224和无线接入点106,和/或经由网络接口224、基站104以及如上所述的蜂窝网络103的控制器站105来执行诸如通过互联网101与其他用户终端102的语音或视频呼叫的通信。然而,所涉及的一个或多个用户终端102可以替代地经由网络接口224和有线调制解调器进行通信,例如在移动终端和台式pc之间的呼叫的情况下。

cpu202连接到网络接口224,例如用于与通信网络通信的调制解调器。网络接口224可以集成到用户终端102中,如图2所示。在替代的用户终端中,网络接口224未被集成到用户终端102中。网络接口224可以包括用于与无线接入点通信的短程无线收发机,或用于与基站通信的蜂窝收发机。

如图1所示,用户终端102a和102b都执行通信客户端应用软件110,以便用户终端102a和102b通过互联网101发送和接收数据。换句话说,通信客户端应用可以用于发起与关联于相同通信网络(例如覆盖网络且与通信系统100不同的)的另一通信客户端应用的基于分组的通信。通信客户端应用可以例如被配置为发送和接收与定义的通信协议相关联的数据以定义“网络”。例如,通信客户端应用可以被配置为使用互联网语音协议(voip)协议与在另外的用户终端上执行的其他通信客户端应用进行通信。应当理解,在一些实施例中,用户终端包括一些其他客户端通信软件,例如能够仅通过一个通信网络进行通信的客户端通信软件。可以从远程服务器下载和安装通信客户端应用110。此外,在一些实施例中,通信客户端应用110在首次安装或执行时可被配置为在通信客户端应用数据库处联系并注册通信客户端应用的安装或执行。通信客户端应用数据库可以包括本地缓存在用户终端102上或远离用户终端(例如在服务器上或在分布式计算系统上)的部分。

图2还示出了在cpu202上执行的操作系统(“os”)214。在os214之上运行的是用于通信客户端应用(cca)110a的软件栈216。软件栈显示客户端协议层218、客户端引擎层220和客户端用户接口层(“ui”)222。每个层负责特定功能。因为每层通常与其他两层通信,所以它们被认为被设置在如图2所示的堆栈中。操作系统214管理设备102a的硬件资源并且经由网络接口207处理数据的发送和接收。通信客户端应用的客户端协议层218与操作系统214进行通信,并管理通信系统上的连接。需要更高级处理的过程被传递到客户端引擎层220。客户端引擎220还与客户端用户接口层222进行通信。客户端引擎220可以被设置为控制客户端用户接口层222以通过客户端的用户接口向用户108a呈现信息并通过用户接口从用户108a接收信息。

图2中还示出了另外的通信客户端应用230。另外的通信客户端可以是本地通信客户端(从工厂提供给设备的通信客户端。因此可以执行另外的通信客户端来通过的网络接口224、上述的蜂窝网络103的基站104和控制器站105执行与其它用户终端102的诸如语音或视频呼叫的通信。

以下示例描述了通信客户端应用110的使用,以便控制用户拨打号码以布置呼出呼叫之后的呼叫的建立和通信。

尽管通信客户端应用可能能够使用通信客户端应用进行或布置呼叫,但是可能存在不可能这样进行的情况。例如,如果其他用户终端没有配备通信客户端应用,并且仅配备了本地通信客户端或其他通信客户端,则可能需要通信客户端应用将呼叫建立过程移交给本地通信客户端或另一个通信客户端。然而,为了实现这一点,通信客户端应用110可以确定在用户终端102上安装哪些其他的通信客户端组件230。

关于图3,示出了通信客户端组件确定操作的流程图。通信客户端应用可以被配置为向操作系统214生成和发送在操作系统214处注册通信客户端应用的注册消息。这可以例如包括通信客户端应用110生成注册消息并向操作系统214发送注册消息,注册用于呼出呼叫通知的通信客户端应用。

通过步骤301在图3中示出注册通信客户端应用(和用于呼出呼叫事件通知)的操作。

此外,通信客户端应用110可以被配置为生成虚拟电话呼叫uri。

虚拟呼叫uri的示例是“tel:”

在图3中通过步骤303示出了生成虚拟电话呼叫uri的操作。

然后,可以将虚拟电话呼叫uri传递到操作系统214。

将虚拟电话呼叫uri从通信客户端应用110转发到操作系统214的操作在图3中通过步骤305示出。

接收到虚拟电话呼叫uri的操作系统214然后可以被配置为响应于虚拟电话呼叫uri而生成已经安装(并注册)在设备上的另一个和本地通信客户端组件的信息。

在图3中通过步骤307示出了生成另一个和本地通信客户端应用组件信息响应的操作。

生成响应的os214可以被配置为将信息发送回发起虚拟呼叫uri消息的通信客户端。

图3中通过步骤309示出了将通信客户端组件信息发送回通信客户端应用的操作。

然后,可以将通信客户端应用配置为存储另一个和本地通信客户端应用组件信息。

在图3中通过步骤311示出了存储(本地和另外的)通信客户端应用组件信息的操作。

已经注册自身(用于呼出呼叫事件)并且已经确定任何另外的(例如本地通信客户端组件信息)的通信客户端然后可以根据以下示例来管理呼出呼叫事件。

因此,例如当拨号或呼叫号码时,通信客户端应用可以被配置为检查或确定所拨打的号码是否被标记为也是通信客户端用户(换句话说,被叫号码是否当前与正在执行通信客户端应用的装置或设备相关联)。

关于图4示出了确定呼出呼叫事件是否可以由通信客户端应用管理的操作(换言之,呼叫是否可以由通信客户端应用来布置)。

在本文示出的示例中,小键盘209(作为输入ui的示例)可以输入要被呼叫的电话号码。应当理解,输入可以是任何合适的输入,例如触摸屏,手势,语音等。

输入电话号码的操作在图4中通过步骤401示出。

该电话号码(或数字或#输入)可以被传递到操作系统(os)214。

在图4中通过步骤403示出了将从小键盘209输入的号码传送到操作系统214的操作。

然后,os214可以被配置为使用注册的通信客户端信息来确定通信客户端应用110要接收号码输入。

在图4中通过步骤405示出确定通信客户端接收号码输入的操作。

然后,os214可以将号码输入转发到通信客户端应用110。

在图4中通过步骤407显示将号码输入转发到通信客户端应用的操作。

已经接收到号码输入的通信客户端应用110然后可以生成针对通信客户端数据库(通信客户端应用db)的搜索请求,以确定正在输入(并被呼叫)的号码是否与通信客户端应用110相关联。

在图4中通过步骤409示出了生成针对通信客户端信息的搜索请求的操作。

然后可以将搜索请求转发到合适的通信客户端应用数据库(例如前面提到的)。

在图4中通过步骤411示出将搜索请求从通信客户端应用发送到通信客户端数据库的操作。

已经接收到搜索请求的通信客户端应用数据库可以被配置为查找号码输入以确定号码输入是否与通信客户端应用相关联(换句话说,被叫用户终端是否也配备通信客户端应用)。通信客户端应用数据库可以被配置为生成包括指示号码输入是否与通信客户端应用相关联的标志(或其他合适的指示)的合适的搜索响应。

在图4中通过步骤413示出了生成合适的搜索响应的操作。

然后可以将搜索响应从数据库发送到通信客户端应用。

在图4中通过步骤415示出了从通信客户端应用数据库向通信客户端应用发送搜索响应的操作。

然后,通信客户端应用可以被配置为确定搜索响应是否包括指示号码输入(与要呼叫的号码相关联的用户终端)是否在其上安装有通信客户端应用的标志。换句话说,通信客户端应用执行关于是否存在输入号码在通信客户端数据库上的肯定响应的测试或检查。

在图4中通过步骤417示出确定被叫号码是否是也安装有通信客户端应用的用户终端的操作。

应当理解,在一些实施例中,可以实现另外的本地搜索以确定通信客户端应用是否可以用于对号码输入布置或进行呼叫。例如,在一些实施例中,通信客户端应用可以搜索用户终端上的联系人列表或被叫号码高速缓存信息,以确定号码输入是否是配备有通信客户端应用的用户终端的匹配。

关于图5,通过插入图4所示的生成搜索请求(步骤409)与将搜索请求发送到通信客户端应用数据库(ccadb)(步骤411)之间的操作中的操作组500示出了另外的“本地”搜索。

在图5所示的示例中,搜索请求因此可以被发送到本地搜索数据库(例如,通信客户端高速缓存)。

在图5中通过步骤501示出了从通信客户端应用向通信客户端高速缓存发送搜索请求的操作。

通信客户端高速缓存,其可以使用通信客户端应用来存储关于最后‘n’个拨打的呼叫或接收的呼叫的信息(其中数字‘n’是诸如10的适当数字)。因此,通信客户端高速缓存可以将搜索请求内的数字输入与高速缓存的数字进行比较,以确定是否存在命中或匹配。此外,通信客户端高速缓存可以被配置为生成对搜索请求的适当响应。例如,适当的响应可以包括指示搜索是否生成匹配或命中的标志。

在图5中通过步骤503示出了生成响应的操作。

然后可以将该响应发送回到通信客户端应用。

在图5中通过步骤505示出了向通信客户端应用发送响应的操作。

然后,通信客户端应用可以被配置为确定来自高速缓存的搜索响应是否包括指示号码输入(与要呼叫的号码相关联的用户终端)是否在其上安装有通信客户端应用的标志(或指示符)。换句话说,通信客户端应用执行关于是否存在号码输入在通信客户端数据库上的肯定响应的测试或检查。

在图5中通过步骤507示出了从通信客户端高速缓存确定响应是否为肯定的操作。

在响应为肯定的情况下,可以通过图5所示的步骤508将操作传递到图7。

在响应不是肯定的情况下(换句话说,数字输入不在高速缓存上,则可以以图5所示的方式通过重复图4所示的步骤将搜索请求发送到通信客户端数据库:将通信客户端应用的搜索请求发送到通信客户端数据库(步骤411);生成合适的搜索响应(步骤413);将来自通信客户端应用数据库的搜索响应发送到通信客户端应用(步骤415);以及确定被叫号码是否是也安装有通信客户端应用的用户终端(步骤417)。

如本文所讨论的,通信客户端应用可能不能使用通信客户端应用进行或布置呼叫。例如,如示例中所示,其他用户终端没有配备通信客户端应用并且仅配备有本地通信客户端或其他通信客户端。在这样的实施例中,通信客户端应用可以被配置为将呼叫布置移交给本地或其他通信客户端应用。

关于图6,示出了‘移交’给其他通信客户端应用。在该示例中,其他通信客户端应用是本地通信客户端应用(换句话说,与操作系统一起安装并因此安装在所有用户终端上的通信客户端应用)。

在确定另一方当前未被注册使用通信客户端应用之后,通信客户端应用110可以被配置为检索所存储的本地(或其他)通信客户端组件。这些存储的组件是如先前所述和关于图3所示的确定和存储的组件。

在图6中通过步骤601示出检索所存储的通信客户端组件的操作。

然后,通信客户端应用可以被配置为使用所检索的本地通信客户端组件和电话号码输入来构造uri。

在图6中通过步骤603示出使用存储的本地通信客户端组件构建uri的操作。

url可以被发送到os,以便使用所构造的uri来布置呼叫。

在图6中通过步骤605示出将构造的uri发送到os214的操作。

使用构造的uri的操作系统然后可以使用url中标识的本地通信客户端组件来布置呼叫。

在图6中由步骤607示出使用uri中指示的本地通信客户端组件发起呼叫的操作。

此外,在图6中通过步骤609和611示出了在本地通信客户端应用(例如,pstn或gsm蜂窝通信网络)使用的承载体上布置呼叫与网络接口的通信。

在通过使用到本地(或其他)通信客户端的移交布置呼叫之后,然后,在一些实施例中,通信客户端应用110可以被配置为尝试将被叫方(由号码输入指示)引入到使用通信客户端应用的益处,然后邀请用户终端安装通信客户端应用,使得在稍后的时间可以使用通信客户端应用110来布置呼叫。

因此,图6进一步示出了示例邀请或通信客户端应用通知操作。

例如,通信客户端应用110可以被配置为生成通知(或消息或合适的用户接口按钮),以使得用户终端的用户能够选择并通知和邀请另一方来安装通信客户端应用。该操作可以例如在呼叫被布置和结束之后执行。

在图6中通过步骤613示出了生成通知(消息/用户接口按钮)的操作。

该通知是从通信客户端应用110发送到os214。

在图6中通过步骤615示出向操作系统发送通知的操作。

然后,os可以转发该通知或生成适当的用户接口命令。

在图6中通过步骤617示出生成要显示的通知的操作。

在图6中通过步骤619示出向显示器212发送通知的操作。

显示器212被示出为示例用户接口输出。然而,应当理解,可以通过任何合适的用户接口输出向用户提供通知。例如,可以通过音频或语音通知来提供通知。

此外,图9示出了在显示器212上显示的示例邀请消息1500。

图9示出由通信客户端应用112提供的客户端用户接口在显示器212的可用区域1400中显示内容。如图9所示,显示器212的可用区域1400是整个显示器。然而,设想显示器的可用区域(即通信客户端应用可用的区域)可以仅构成显示器的一部分,例如,其中显示器的其余部分被os214和/或其上执行的其他应用使用以显示其他内容。

邀请消息1500可以例如示出要在其上发送邀请的承载体信息1504(在该示例中为sms)、呼出呼叫1502的号码、确定发送邀请的ui交互元件1506,以及选择不同的承载体来发送邀请的替代的承载体选择器1508。

此外,小键盘或其他用户接口输入可以用于确定是否响应于通知而键入用户接口输入。在一些实施例中,通知是询问用户是否希望邀请被叫方(由号码输入指示)来安装通信客户端应用并因此通过由通信客户端应用110管理的承载体和通信网络进行通信的请求。

在图6中通过步骤621示出显示通知和响应于通知而确定用户输入的操作。

在用户通过生成邀请输入(例如按下小键盘上的键来指示对通知的肯定响应)来响应邀请的情况下,则该小键盘响应被发送到os214。

在图6中通过步骤623示出了向os214发送邀请输入(小键盘响应)。

操作系统然后可以生成邀请消息,并且选择一个可用承载体以通知另一方。承载体可以是用于将通信客户端应用安装邀请传送到另一用户终端的任何合适的方法。例如,邀请承载体可以是电子邮件、sms、多媒体消息、即时信使信息、聊天消息等。

例如,邀请消息可以是文本“你想使用这个通信客户端应用,是的!'以及包含通信客户端应用安装文件地址和其他信息的url的组合。

在图6中通过步骤625示出了选择合适的邀请承载体和生成邀请消息的操作。

邀请消息然后可以经由适当的承载体和网络接口发送到另一方。

在图6中通过步骤627示出了将邀请消息传递到网络接口的操作。

在图6中通过步骤629示出了经由网络接口将邀请消息传递到另一个用户终端的操作。

可以在任何合适的时间执行邀请通知的生成。例如,可以在呼叫结束之后向用户生成并显示通知,并且因此可以在呼叫之后尽快将邀请传递到另一用户终端,以尝试鼓励其他用户终端安装通信客户端应用。

在一些实施例中,例如当确定另一个用户终端也在实现通信客户端应用时,则可以使用通信客户端应用110来布置和控制呼叫。

使用通信客户端应用进行呼叫的操作在图7中示出。换句话说,图7示出了确定号码输入与通信客户端应用相关联并因此发生在通信客户端数据库内或在通信客户端应用高速缓存中找到的操作,如图4和图5中的操作所示。

在该示例中,已经确定另一方(来自号码输入)也正在执行或运行与通信客户端应用110匹配的通信客户端应用的通信客户端应用被配置为发起通信客户端到通信客户端呼叫。

在图7中通过步骤701示出了发起通信客户端到通信客户端呼叫的操作。

通信客户端应用110可以被配置为生成合适的uri并将该uri传递给os。

在图7中通过步骤703示出了将合适的uri传递给os的操作。

接收到uri的os214可以使用网络接口来布置呼叫。在一些实施例中,网络接口然后可以通过通信网络(诸如互联网101,或使用覆盖网络或通过移动蜂窝网络103的隧道网络,或与通信系统100不同的网络)发起与另一用户终端上的通信客户端应用的基于分组的通信。

在图7中通过步骤705示出布置呼叫的操作。

此外,在图7中通过步骤707示出了与网络接口的通信以及经由网络接口输出呼叫。

因此,通信客户端应用的客户端协议层218可以被配置为与操作系统214进行通信,并且管理通过通信系统的连接,并且使得能够在通话中的两个用户终端内运行的通信客户端应用之间设置和控制voip呼叫。

上述示例示出了可以在布置呼叫之前确定通信客户端应用110是否可以用于进行和控制呼叫的情况。然而,在某些情况下,例如网络连接质量差或质量可变的情况下,可以理解,在合理的时间内可能无法做出明确的确定。在这种情况下,肯定确定操作(步骤417)可能返回否定输出或不输出,指示不可能肯定地标识号码输入与通信客户端应用相关联,并且如图6所示执行到本地通信客户端应用的移交。

然而,还应当理解,在对本地或其他通信客户端执行这种移交之后,通信客户端数据库可以向搜索请求返回指示号码输入与通信客户端应用相关联的响应。换句话说,由号码输入标识的用户终端可以使用通信客户端应用来联系。

在一些实施例中,通信客户端应用可以被配置为在呼叫进行期间执行附加检查。

关于图8a和8b,示出了确定被叫号码是否与通信客户端应用相关联的这种延迟响应发生的流程图。

在图8a所示的示例中,示出了反映了初始的“移交”给本地或其他通信客户端以布置呼叫的操作(诸如图4、图5和图6中所示)。因此,通信客户端应用被配置为:确定被叫号码是否是也安装了通信客户端应用的用户终端(步骤417);检索已经确定该号码不是也安装有通信客户端应用的用户终端的存储的通信客户端组件(步骤601);使用所存储的本地通信客户端组件构建uri(步骤603);并将构造的uri发送到os214(步骤605)。

此外,图8a示出了进一步确定被叫号码是否是也安装了通信客户端应用的用户终端。这可以例如在生成“移交”之后接收到对搜索请求的响应之后执行。

在图8a中通过步骤801示出被叫号码是否是也安装了通信客户端应用的用户终端的延迟确定。

在图8a所示的示例中,通信客户端应用被配置为基于指示呼叫能够使用通信客户端应用连接的延迟响应来中断初始呼叫。

因此,通信客户端应用110可以生成结束呼叫请求。

在图8a中通过步骤803示出了生成结束呼叫请求的操作。

然后,结束呼叫(挂断)请求从通信客户端传递到操作系统以结束呼叫或发起结束呼叫程序。

在图8a中通过步骤805示出了从通信客户端应用向os214发送结束二次呼叫请求的操作。

然后,通信客户端应用110可以被配置为生成指示用户终端102的用户可以使用通信客户端应用而不是当前方法来连接呼叫的通信客户端通知。

在图8a中通过步骤807示出了生成通信客户端通知的操作。

然后,通信客户端应用可以向os214发送通知消息。

在图8a中通过步骤809示出从通信客户端应用向操作系统发送通知消息的操作。

已经从通信客户端应用接收到通知消息的os214可被配置为生成合适的用户接口“通知”消息。

在图8a中通过步骤811示出了生成用户接口“通知”消息的操作。

然后可以将用户接口“通知”消息发送到显示器以输出给用户。

在图8a中通过步骤813示出了向显示器发送用户接口“通知”消息的操作。

然后,显示器可以显示“通知”消息。在一些实施例中,“通知”可以是简单的消息,通知用户可以使用通信客户端应用重新启动所呼叫的号码。此外,在一些实施例中,“通知”可以请求诸如询问是否重新连接或切换到通信客户端应用以管理呼叫的响应。因此,在一些实施例中,小键盘被配置为响应于通知而接收输入。

在图8a中通过步骤815示出显示“通知”消息和/或接收输入的操作。

该输入可以从小键盘传递到os。此示例显示使用显示屏和小键盘作为输出和输入用户接口组件。然而,可以使用任何合适的用户输入组件来显示通知消息并对用户输入做出回应。

在图8a中通过步骤817示出了将输入从小键盘发送到os的操作。

os可以接收输入并将输入转发给通信客户端应用。

在图8a中通过步骤819示出了将操作系统的输入转发到通信客户端应用的操作。

已经确定输入指示用户希望使用通信客户端应用来联系使用通信客户端应用的另一个用户终端的通信客户端应用可以被配置为发起通信客户端到通信客户端布置呼叫,如前所述。

在图8a中通过步骤701示出了发起通信客户端到通信客户端布置呼叫的操作。

在上面示出的示例中,当前呼叫在进行通知并且通信客户端布置呼叫开始之前结束。应当理解,在一些实施例中,通信客户端应用可以被配置为执行切换过程,其中在当前呼叫结束并且开始通信客户端应用布置呼叫之前进行(并响应)通知。因此,例如,用户然后可以选择是否在本地或其他通信客户端布置呼叫与通话客户端应用布置呼叫之间进行切换,而不会丢失当前布置的呼叫。

在图8b所示的示例中,通信客户端应用被配置为基于指示能够使用通信客户端应用连接呼叫的延迟响应而不中断初始呼叫。在该示例中,仅在呼叫结束之后才通知用户。

因此,图8b所示的示例示出了相同的操作(诸如图4、图5和图6所示)被示出,反映了初始“移交”给本地或其他通信客户端以布置呼叫。因此,通信客户端应用被配置为:确定被叫号码是否是也安装了通信客户端应用的用户终端(步骤417);检索已经确定该号码不是也安装有通信客户端应用的用户终端的存储的通信客户端组件(步骤601);使用所存储的本地通信客户端组件构建uri(步骤603);并将构造的uri发送到os214(步骤605)。

此外,图8b示出了进一步确定被叫号码是否是也安装了通信客户端应用的用户终端。这可以例如在“移交”生成之后接收到对搜索请求的响应之后执行。

在图8b中通过步骤801示出延迟确定被叫号码是否是也安装通信客户端应用的用户终端。

在图8b所示的示例中,通信客户端应用还进一步接收结束呼叫通知。

在图8b中通过步骤823示出从操作系统214接收结束呼叫通知的操作。

然后可以将本实施例中的通信客户端应用配置为生成合适的“添加联系人?”请求以询问用户是否将联系人添加到用户联系人地址簿,并进一步标识或指示联系人可以使用通信客户端应用联系。

然后可以将通信客户端应用110配置成生成“添加联系人?”通知或消息,向用户终端102的用户指示可以使用通信客户端应用而不是当前方法来连接该联系人。

生成“添加联系人?”通知的操作在图8b中通过步骤825示出。

然后,通信客户端应用可以发送“添加联系人?”通知消息给os214。

从通信客户端应用到操作系统发送“添加联系人?”通知消息的操作在图8b中通过步骤827示出。

接收到来自通信客户端应用的“添加联系人?”通知消息后,os214可以被配置为生成适当的用户接口“添加联系人?”消息。

在图8b中通过步骤829示出了生成用户接口“添加联系人”通知消息的操作。

然后可以将用户接口“添加联系人”通知消息发送到显示器以输出给用户。

发送用户接口“添加联系人?”通知消息到显示器的操作在图8b中通过步骤831示出。

然后,显示器可以显示“添加联系人?”通知消息。此外,在一些实施例中,“通知”可以请求响应。因此,在一些实施例中,小键盘被配置为响应于通知而接收“添加联系人”输入。

显示“添加联系人”通知消息和/或接收“添加联系人”输入的操作在图8b中由步骤833示出。

这个“添加联系人?”输入可以从小键盘传递到os。此示例显示使用显示器和小键盘作为输出和输入用户接口组件。然而,可以使用任何合适的用户输入组件来显示通知消息并回应用户输入。

在图8b中通过步骤835示出了从小键盘向os发送“添加联系人”输入的操作。

os可以接收“添加联系人”输入,生成响应,并将响应转发给通信客户端应用。

在图8b中通过步骤837示出了生成对输入的响应的操作。

在图8b中通过步骤839示出了将对来自操作系统的“添加联系人”输入的响应发送到通信客户端应用的操作。

已经确定“添加联系人”输入指示用户希望将号码添加到联系人列表后,通信客户端应用可以被配置为生成包括被叫号码以及指示能够使用通信客户端应用联系该号码的指示符或标志的联系人记录。

在图8b中通过步骤841示出了生成联系人记录的操作。

然后可以将该联系人记录发送到本地联系人地址簿(并且在一些实施例中,远程存储的本地联系人地址簿的备份)。

在图8b中通过步骤843示出了发送联系人记录的操作。

本地联系人地址簿然后可以存储该记录。

在图8b中通过步骤845示出了将记录存储在本地联系人地址簿中的操作。

通常,本文所描述的功能中的任何一个可以使用软件、固件、硬件(例如,固定逻辑电路)或这些实现方式的组合来实现。本文使用的术语“控制器”,“功能”,“组件”和“应用”通常表示软件、固件、硬件或其组合。在软件实现方式的情况下,控制器、功能、组件或应用表示在处理器(例如一个cpu或多个cpu)上执行时执行指定任务的程序代码。程序代码可以存储在一个或多个计算机可读存储器件中。下面描述的技术的特征是与平台无关的,这意味着这些技术可以在具有各种处理器的各种商业计算平台上实现。

例如,用户终端还可以包括使得用户终端的硬件执行操作的实体(例如,软件),例如处理器功能块等等。例如,用户终端可以包括计算机可读介质,其可以被配置为维护使得用户终端更具体地用户终端的操作系统和相关联的硬件来执行操作的指令。因此,该指令用于配置操作系统和相关联的硬件来执行操作并且以这种方式导致操作系统和相关硬件的变换以执行功能。指令可以由计算机可读介质通过各种不同的配置提供给用户终端。

计算机可读介质的一种这样的配置是信号承载介质,因此被配置为例如经由网络将指令(例如,作为载波)发送到计算设备。计算机可读介质也可以被配置为计算机可读存储介质,因此不是信号承载介质。计算机可读存储介质的示例包括随机存取存储器(ram)、只读存储器(rom)、光盘、闪速存储器、硬盘存储器以及可以使用磁性、光学等其它技术存储指令和其他数据的其它存储器件。

根据第一方面,提供了一种与第一用户相关联的用户终端,所述用户终端包括用于管理通过第一网络与至少一个另外的用户终端的通信的通信客户端应用,所述通信客户端应用被配置为:确定与安装在用户终端上的至少一个另外的通信客户端应用相关联的信息,所述至少一个另外的通信客户端应用用于管理通过第二网络与所述至少一个另外的用户的通信;关于至少一个呼出呼叫确定在呼叫终点的另外的用户终端是否包括所述通信客户端应用;以及基于在所述呼叫终点处的另外的用户终端是否包括所述通信客户端应用的确定来管理呼叫的布置,使得通信客户端应用被配置成,当在所述呼叫终点处的另外的用户终端包括通信客户端应用时管理使用所述通信客户端应用通过所述第一网络对所述呼叫的布置,否则将所述呼叫的布置移交给所述至少一个另外的通信客户端应用。

以这种方式,当确定在呼叫终点处的用户终端也被配备为处理这样的通信时,呼叫布置的管理可以通过通信客户端应用来执行以通过第一网络(例如skype网络)进行通信,否则将呼叫布置移交给另外的通信客户端应用,以通过第二或另外的网络(例如蜂窝通信网络)进行通信。这样的实施例允许高效的呼叫处理并且提供呼叫管理、布置和处理的更灵活的方法。

配置成确定与安装在用户终端上的至少一个另外的通信客户端应用相关联的信息的通信客户端应用还可以被配置为:生成虚拟呼叫uri;将虚拟呼叫uri传递给用户终端操作系统;从所述用户终端操作系统接收标识所述至少一个另外的通信客户端应用的本地通信客户端组件信息。

被配置以通过将呼叫的布置移交给至少一个另外的通信客户端应用来管理呼叫的布置的通信客户端应用可进一步被配置为生成包括标识所述至少一个另外的通信客户端应用的本地通信客户端组件信息的呼叫uri,以便将所述呼叫的布置移交给所述至少一个另外的通信客户端应用。

通信客户端应用可以被进一步配置为:在将呼叫的布置移交给至少一个另外的通信客户端应用之后,对于至少一个另外的用户终端生成安装通信客户端应用的邀请。

通信客户端应用还可以被配置为生成用于控制对于至少一个另外的用户生成邀请的用户接口元件。

被配置为关于至少一个呼出呼叫确定在呼叫终点处的另外的用户终端是否包括通信客户端应用的通信客户端应用还可以被配置为:接收呼出呼叫事件通知,呼出呼叫事件通知包括标识所述至少一个另外的用户终端的用户的标识符;生成包括用于通信客户端应用数据库的标识符的搜索请求;并且接收对确定所述呼叫终点处的至少一个另外的用户终端是否包括所述通信客户端应用的搜索请求的响应。

通信客户端应用数据库可以包括通信客户端应用服务器和/或联系人列表高速缓存。

通信客户端应用可以被配置为在呼叫布置之后关于至少一个呼出呼叫进一步确定呼叫终点处的另外的用户终端是否包括通信客户端应用。

通信客户端应用可以被配置为:生成终止移交给所述至少一个另外的通信客户端应用的呼叫的结束呼叫请求;并且当进一步确定确定所述呼叫终点处的另外的用户终端包括所述通信客户端应用时以及当较早的确定另外确定时,管理通过所述第一网络使用通信客户端应用布置呼叫。

通信客户端应用可以被配置为:生成联系人记录,联系人记录包括将呼叫终点处的另外的用户终端与通信客户端应用相关联的标识符;管理用户终端上的联系人记录的存储。

用户终端可以是以下之一:互联网使能的移动电话;手持游戏控制台;个人数字助理(pda);平板计算机;膝上型计算机。

根据第二方面,可以存在一种装置,包括:至少一个处理器;以及存储器,存储器包括用于管理通过第一网络与至少一个另外的设备的通信的通信客户端应用代码,当在所述至少一个处理器上执行时,所述代码使得所述装置:确定与安装在装置上的至少一个另外的通信客户端应用相关联的信息,所述至少一个另外的通信客户端应用用于管理通过第二网络与所述至少一个另外的用户的通信;关于至少一个呼出呼叫确定在呼叫终点处的另外的装置是否包括通信客户端应用;并且基于所述呼叫终点处的另外的装置是否包括通信客户端应用的确定来管理呼叫的布置,使得所述通信客户端应用代码被配置为当在所述呼叫终点处的另外的装置包括通信客户端应用时管理使用所述通信客户端应用通过所述第一网络对所述呼叫的布置,否则将所述呼叫的布置移交给所述至少一个另外的通信客户端应用。

还可能使得使得确定与安装在用户终端上的至少一个另外的通信客户端应用相关联的信息的通信客户端应用代码:生成虚拟呼叫uri;将虚拟呼叫uri传递给装置操作系统;以及从所述装置操作系统接收标识所述至少一个另外的通信客户端应用的本地通信客户端组件信息。

还可进一步使得使得通过将呼叫的布置移交给至少一个另外的通信客户端应用而管理呼叫的布置的通信客户端应用代码生成包括标识所述至少一个另外的通信客户端应用的本地通信客户端组件信息,以便将呼叫的布置移交给所述至少一个另外的通信客户端应用。

还可以使通信客户端应用代码在将呼叫的布置移交给至少一个另外的通信客户端应用之后,对于至少一个另外的用户终端生成安装通信客户端应用的邀请。

通信客户端应用代码还可以被配置为生成用于控制对于至少一个另外的用户的邀请的生成的用户接口元件。

通信客户端应用代码被配置为关于至少一个呼出呼叫来确定是否可以使得呼叫终点处的另外的用户终端:接收呼出呼叫事件通知,所述呼出呼叫事件通知包括标识至少一个另外的装置的用户的标识符;生成包括用于通信客户端应用数据库的标识符的搜索请求;并且接收对确定所述呼叫终点处的所述至少一个另外的装置是否包括所述通信客户端应用的搜索请求的响应。

通信客户端应用数据库可以包括通信客户端应用服务器和/或联系人列表高速缓存。

还可以使通信客户端应用代码在呼叫的布置之后关于至少一个呼出呼叫进一步确定呼叫终点处的另外的装置是否包括通信客户端应用。

可以使通信客户端应用代码:生成终止移交给至少一个另外的通信客户端应用的呼叫的结束呼叫请求;并且当进一步确定确定呼叫终点处的另外的装置包括通信客户端应用时以及当更早的确定另有确定时,管理通过第一网络使用通信客户端应用的呼叫的布置。

可以使通信客户端应用代码:生成包括将呼叫终点处的另外的装置与通信客户端应用相关联的标识符的联系人记录;管理装置上的联系人记录的存储。

该装置可以是以下之一:互联网使能的移动电话;手持游戏控制台;个人数字助理(pda);平板计算机;膝上型计算机。

根据第三方面,提供了一种用于管理用户终端之间通过第一网络的通信的方法,所述方法包括:确定与至少一种用于管理在第二网络上与所述至少一个另外的用户的通信的方法相关联的信息;关于至少一个呼出呼叫确定在呼叫终点处的用户终端是否包括用于管理用户终端之间通过第一网络的通信的方法;以及基于呼叫终点处的用户终端是否包括用于管理用户终端之间通过第一网络的通信的方法的确定来管理呼叫的布置,使得用于管理用户终端之间通过第一网络的通信的方法被配置为当呼叫终点处的用户终端包括用于管理用户终端之间通过第一网络的通信的方法时通过第一网络布置呼叫,否则将呼叫的布置移交给用于管理通过第二网络的与至少一个另外的用户的通信的方法。

确定与用于管理通过第二网络与至少一个另外的用户的通信的至少一种方法相关联的信息可以包括:生成虚拟呼叫uri;将虚拟呼叫uri传递给操作系统;从操作系统接收标识用于管理通过第二网络与至少一个另外的用户的通信的至少一个方法的本地组件信息。

通过将呼叫的布置移交给用于管理通过第二网络与至少一个另外的用户的通信的至少一个方法来管理呼叫的布置可以包括:生成包括标识用于管理通过第二网络与所述至少一个另外的用户的通信的至少一种方法的本地组件信息的呼叫uri,以便将所述呼叫的布置移交给用于管理通过第二网络与所述至少一个另外的用户的通信的至少一种方法。

所述方法还可以包括,在将呼叫的布置移交给用于管理通过第二网络与至少一个另外的用户的通信的至少一种方法之后,对于在呼叫终点处的至少一个用户终端生成安装用于管理通过第一网络在用户终端之间的通信的方法的邀请。

该方法还可以包括生成用于控制对于至少一个另外的用户生成邀请的用户接口元件。

关于的至少一个呼出呼叫确定呼叫终点的用户终端是否包括用于管理用户终端之间通过第一网络的通信的方法还可以包括:接收呼出呼叫事件通知,呼出呼叫事件通知包括标识呼叫终点处的至少一个另外的用户终端的用户的标识符;生成包括用于管理通过第一网络数据库的用户终端之间的通信的方法的标识符的搜索请求;以及接收对确定所述呼叫终点处的至少一个另外的用户终端是否包括用于管理用户终端之间通过第一网络的通信的方法的搜索请求的响应。

该方法可以包括在呼叫的布置之后关于至少一个呼出呼叫进一步确定呼叫终点处的用户终端是否包括用于管理用户终端之间通过第一网络的通信的方法。

所述方法还可以包括:生成结束呼叫请求以终止移交给用于管理通过第二网络与所述呼叫终点处的至少一个用户终端的通信的至少一种方法的呼叫;以及当所述进一步确定确定所述呼叫终点处的用户终端包括用于管理用户终端之间通过第一网络的通信的方法以及当较早的确定另有确定时,使用用于管理用户终端之间通过第一网络的通信的方法来管理另外的呼叫的布置。

用于管理用户终端之间通过第一网络的通信的方法可以包括:生成联系人记录,联系人记录包括将呼叫终点处的用户终端与用于管理用户终端之间通过第一网络的通信的方法相关联的标识符;管理用户终端上的联系人记录的存储。

尽管已经以结构特征和/或方法动作特有的语言描述了主题,但是应当理解,所附权利要求中限定的主题不一定限于上述具体特征或动作。相反,上述具体特征和动作被公开为实现权利要求的示例形式。

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