联系人可用性预测的制作方法

文档序号:17747084发布日期:2019-05-24 20:42阅读:182来源:国知局
联系人可用性预测的制作方法

人们经常在其日常活动中使用消息传送服务,例如即时消息传送应用。实际上,许多人将这些消息传送服务用作为与家人、朋友、合作者或同事进行沟通的主要媒介。许多消息传送服务甚至提供额外的功能,例如语音聊天、视频聊天、文档共享等等,以便使用户能够与远程人员交谈、与远程人员进行面对面讨论、以及对特定文档或项目进行协作。

可惜的是,这些消息传送服务仅提供与联系人可用性有关的有限量的信息。这些消息传送应用中的大多数仅提供识别联系人是在线还是离线的状态信息。替代地,这些消息传送服务中的一些可以提供识别与联系人的状态或者联系人已在线或离线多长时间有关的细节的额外信息。然而,用户可能期望关于联系人可用性的更多信息。



技术实现要素:

提供本发明内容以用简化形式引入一些概念,这些概念以下在详细描述部分中进一步描述。本发明内容并非旨在标识所要求保护的主题内容的所有关键特征或必要特征,也并非旨在帮助确定所要求保护的主题内容的范围。

本文提供了在消息传送服务内实现联系人可用性预测的系统、方法和计算机可读介质。联系人可用性预测向用户提供了增强的工具和服务以便洞察联系人的可用性。联系人可用性预测提供消息传送服务内用于预测联系人何时将在线或者联系人何时将可用于通信的功能。可以利用关于联系人的各种类型的信息来提供关于联系人可用性的洞察。例如,由消息传送服务取回并分析与每个用户相关联的遥测数据(包括历史可用性信息和使用信息)以产生用于预测不可用的联系人何时将变得再次可用的模型。

登录到消息传送服务(例如,messenger(由加利福尼亚州山景城(mountainview)的whatsapp公司提供)、messenger(由加利福尼亚州门洛帕克(menlopark)的facebook公司提供)、googlechattm(由加利福尼亚州山景城的alphabet公司提供)、messenger(由加利福尼亚州森尼韦尔市(sunnyvale)的yahoo公司提供)、以及(由卢森堡的卢森堡市(luxembourgcity)的skype技术有限责任公司(skypetechnologiess.a.r.l.)提供))的环境中的用户将看到已登录且可用、已登录且不可用(例如,“在会议中”、“忙碌”、“请勿打扰”)、或者未登录(并且因此不可用)的各个联系人。给定用户可以等待不可用的用户变得可用,但这可能是乏味的,特别是当不可用的用户没有明确说明他们何时将变得可用时。例如,组织中的用户可能具有工作模式(例如,不同的班次、时区、假期、工作周)并且可能不知道何时期望另一用户登录到消息传送服务中。使用包括用户的历史使用和可用性数据的遥测数据来创建模型,该模型预测不可用的联系人在下一定义的时间段内(例如,一个小时、24个小时、一周等等)将在环境中变得可用的可能性。在各个方面中,利用联系人在各个时间段中将变得可用的可能性的置信度分数来呈现可用性预测。

示例被实现为计算机过程、计算系统、或者诸如设备、计算机程序产品或计算机可读介质之类的制品。根据一方面,计算机程序产品是计算机系统可读的计算机存储介质,并且编码包括用于执行计算机过程的指令的计算机程序。

在附图和以下描述中阐述了一个或多个方面的细节。通过阅读以下详细描述和对相关附图的查阅,其它特征和优点将是显而易见的。要理解,以下详细描述仅是解释性的而不是对权利要求的限制。

附图说明

包含在本公开内容中并构成本公开内容的一部分的附图示出了各个方面。在附图中:

图1a是其中实现联系人可用性预测的示例性环境;

图1b是图1a中所示出的过程和模型构建/训练方面的详细示例;

图2是其中实现联系人可用性预测的示例性图形用户界面的图示;

图3是示出了用于提供联系人可用性预测的示例性方法中所涉及的一般阶段的流程图;

图4是示出了计算设备的示例性物理组件的框图;

图5a和图5b是移动计算设备的框图;以及

图6是分布式计算系统的框图。

具体实施方式

以下具体实施方式参考附图。只要有可能,在附图和以下描述中使用相同的附图标记来指代相同或相似的元素。虽然可能描述了示例,但修改、适配和其它实现方式也是可能的例如,可以对附图中所示出的元素做出替换、添加或修改,并且本文所描述的方法可以通过对所公开的方法进行替换、重排序、或添加阶段来修改。因此,以下详细描述不是限制性的,相反,适当的范围由所述权利要求来限定。各示例可以采用硬件实现方式、或者完全软件实现方式、或者组合软件和硬件方面的实现方式的形式。因此,以下详细描述不应被视为具有限制意义。

本文提供了在消息传送服务内实现联系人可用性预测的系统、方法和计算机可读介质。联系人可用性预测向用户提供了增强的工具和服务以便洞察联系人的可用性。联系人可用性预测提供消息传送服务内用于预测联系人何时将在线或者联系人何时将可用于通信的功能。可以利用关于联系人的各种类型的信息来提供关于联系人可用性的洞察。例如,由消息传送服务取回并分析与每个用户相关联的遥测数据(包括历史可用性信息和使用信息)以产生用于预测不可用的联系人何时将变得再次可用的模型。

登录到消息传送服务的环境中的用户将看到已登录且可用、已登录且不可用(例如,“在会议中”、“忙碌”、“请勿打扰”)、或者未登录(并且因此不可用)的各个联系人。给定用户可以等待不可用的用户变得可用,但这可能是乏味的,特别是当不可用的用户没有明确说明他们何时将变得可用时。例如,组织中的用户可能具有工作模式(例如,不同的班次、时区、假期、工作周)并且可能不知道何时期望另一用户登录到消息传送服务中。使用包括用户的历史使用和可用性数据的遥测数据来创建模型,该模型预测不可用的联系人在下一定义的时间段内(例如,一个小时、24个小时、一周等等)将在环境中变得可用的可能性。在各个方面中,利用联系人在各个时间段中将变得可用的可能性的置信度分数来呈现可用性预测。

图1a是其中实现联系人可用性预测的示例性环境100。如所示出的,计算设备110正在运行消息传送客户端120,该消息传送客户端120可操作用于向另一用户发送消息。

计算设备110示出了多种计算系统,包括但不限于台式计算机系统,有线和无线计算系统,移动计算系统(例如,移动电话、上网本、平板电脑或平板型计算机、笔记本计算机和膝上型计算机),手持设备,多处理器系统,基于微处理器或可编程的消费者电子产品,小型计算机和大型计算机。关于图4、图5a、图5b和图6更详细讨论了这些计算系统的硬件。在各个方面中,计算设备110在本地访问和/或由网络访问,该网络可以包括互联网、局域网(lan)、用于实体(例如,公司、大学、政府机构)的专用分布式网络、无线自组织网络、虚拟专用网络(vpn)或其它直接数据链路(例如,蓝牙连接、直接有线链路)。

消息传送客户端120说明与用于发送和接收消息的消息传送服务相关联的任何客户端,包括但不限于本地应用和基于云的应用,例如,messenger(由加利福尼亚州山景城的whatsapp公司提供)、messenger(由加利福尼亚州门洛帕克k的facebook公司提供)、googlechattm(由加利福尼亚州山景城的alphabet公司提供)、messenger(由加利福尼亚州森尼韦尔市的yahoo公司提供)、以及(由卢森堡的卢森堡市的skype技术有限责任公司提供)。在各个方面中,消息传送服务和接收者的消息传送客户端120可以是相同应用或程序的不同实例,或者它们可以是不同应用或程序的唯一性实例。

此外,运行消息传送客户端120的计算设备110经由消息传送客户端120与消息传送服务130进行通信以向另一用户发送消息。可以在运行消息传送客户端120的计算设备110与消息接收者之间插入促进消息的路由的各种中间装置(例如,网络和服务器)。另外,消息传送服务130向消息传送客户端130传送状态更新,包括消息传送客户端120内的每个联系人的状态更新。

消息传送服务130包括一个或多个计算设备以提供用于在消息传送客户端120之间传送消息的功能。该一个或多个计算设备包括但不限于云服务中的一个或多个服务器、有线和无线计算系统、微处理器系统、基于微处理器或可编程的消费者电子产品、小型计算机、以及大型计算机,关于图4、图5a、图5b和图6更详细地讨论了这些计算设备。此外,该一个或多个计算设备由网络访问,该网络可以包括互联网、局域网(lan)、用于实体(例如,公司、大学、政府机构)的专用分布式网络、无线自组织网络、虚拟专用网络(vpn)等等。

此外,在所示出的示例中,消息传送服务130包括与遥测数据存储装置150相通信的应用服务器140。

应用服务器140促进消息传送客户端120之间的通信。此外,应用服务器140从消息传送客户端120接收与消息传送客户端120的使用相关的各种遥测数据。在各个方面中,遥测数据包括但不限于:登录时间、退出时间、空闲时间、活跃时间、可用时间、不可用时间等等。

应用服务器140向遥测数据存储装置150传送遥测数据。遥测数据存储装置150包括与消息传送服务使用相关的各种类型的数据。根据各方面,遥测数据存储装置150包括与人员对消息传送服务的使用相关的历史数据。在一个示例中,遥测数据存储装置150包括与用户何时在线、用户何时离线、用户在特定的日期离开多久、用户的通常可用时间、以及直到用户返回的平均时间有关的信息。在另一示例中,遥测数据包括用户在对消息传送服务的整个使用期间的状态,包括“离开”、“马上回来”、“请勿打扰”、可用等等。应该认识到,遥测数据存储装置150可以包括多年的历史数据。

根据某些方面,遥测数据存储装置150采用跨多个数据存储装置150的多温度数据管理解决方案。在一个示例中,基于数据被访问的频度在遥测数据存储装置150上组织数据,以使得频繁访问的“热数据(hotdata)”存储在快速数据存储装置150上,不太频繁访问的“暖数据(warmdata)”存储在稍慢的数据存储装置150上,并且很少访问的“冷数据(colddata)”存储在最慢的数据存储装置150上。此外,可以基于数据对提供消息传送服务使用的有用性来优先化遥测数据的组织。

虽然出于说明目的遥测数据存储装置150被示出为远离应用服务器140,但应该注意,遥测数据存储装置150适合于若干种配置,包括但不限于由应用服务器140托管的分开的系统、应用服务器140的整体方面、或基于云的远程数据存储装置150。

另外,消息传送服务130与联系人可用性预测系统160相通信。通常,联系人可用性预测系统160被配置为:利用遥测数据存储装置150来提供对用户可用性的预测。在所示出的示例中,联系人可用性预测系统160包括用于处理和模型构建/训练、经训练的预测模型、以及预测模型服务的各方面。还应该认识到,联系人可用性预测系统160的各功能(包括用于处理和模型构建/训练模块170、经训练预测模型模块180、以及预测服务模块190的各功能)适合于其它配置中,包括但不限于单个模块、或多个模块。

根据各方面,处理和模型构建/训练模块170利用来自遥测数据存储装置150的数据来生成用于预测用户可用性的功能。在所示出的示例中,处理和模型构建/训练模块170从遥测数据存储装置150取回数据、执行处理、并构建预测模型。更具体而言,处理和模型构建/训练模块170取回遥测数据并从遥测数据中识别指示用户的可用性的属性。例如,相关属性可以包括在线/离线度量、登录/退出时间、用户状态、离开时间、离开长度等等。

在从遥测数据中识别属性之后,处理和模型构建/训练模块170清除遥测数据。在一个示例中,处理和模型构建/训练模块170移除任何不必要的遥测数据,从而隔离与构建预测模型有关的遥测数据子集。在其它示例中,处理和模型构建/训练模块170清除任何机密、私密或敏感信息的遥测数据。在另外其它示例中,处理和模型构建/训练模块170通过从数据集中忽略或移除具有缺失属性(例如,由于数据丢失)的条目来清除不完整的遥测数据。

被清除的遥测数据由处理和模型构建/训练模块170进行变换以供进一步处理。例如,可以将遥测数据格式化为可理解的信息。在另一示例中,处理和模型构建/训练模块170基于遥测数据来生成分类。图1b示出了处理和模型构建/训练模块170的各方面的一个示例。根据各方面,处理和模型构建/训练模块170示出了用于数据摄取、数据清除、数据变换、模型构建和模型测试的示例性方法。更具体而言,图1b示出了这些步骤包括:(1)投影需要的遥测属性,(2)清除缺失的数据,(3)特征工程(featureengineering),(4)对模型进行训练,(5)进行叠加和混合以改善模型精度,以及(6)时序分析。

根据某些示例,处理和模型构建/训练模块170对经变换的遥测数据进行归一化。例如,在一个示例中,处理和模型构建/训练模块170执行对经变换遥测数据的特征散列。特征散列还基于系统的功能来细化遥测数据。例如,如果系统无法处理字符串,则特征散列将字符串转换成可由处理和模型构建/训练模块170识别的散列值。还应该认识到,可以对遥测数据利用其它类型的特征散列。

此外,处理和模型构建/训练模块170执行对遥测数据的特征选择。在一个示例中,处理和模型构建/训练模块170利用可操作用于对遥测数据的每个属性执行相关的一个或多个特征。这允许基于特定的属性来对遥测数据进行相关。例如,可以基于特定的字段来对遥测数据进行相关。

处理和模型构建/训练模块170使用遥测数据来构建预测模型。在一个示例中,预测模型构建多个模型。

根据一些方面,处理和模型构建/训练模块170使用经变换数据的一部分来构建预测模型。例如,处理和模型构建/训练模块170将遥测数据划分成多个部分。一部分遥测数据用于构建预测模型,而其它部分的遥测数据用于训练预测模型。

一旦预测模型被构建,联系人可用性预测系统160就利用处理和模型构建/训练模块170来训练预测模型。如上面讨论的,根据某些方面,其它部分的遥测数据用于测试/训练预测模型。在一个示例中,处理和模型构建/训练模块170利用一个或多个预测分析来训练预测模型。此外,处理和模型构建/训练模块170可以基于遥测数据的一个或多个属性来训练预测模型。根据另一方面,当在训练预测模型时使用多个预测分析时,处理和模型构建/训练模块170将不同模型混合成单个预测模型。还应该注意,处理和模型构建/训练模块170基于新的遥测数据来继续训练预测模型。从而确保预测模型继续适用于最近的用户行为。

经训练预测模型180示出了从处理和模型构建/训练模块170得到的预测模型。此外,经训练预测模型180可以向处理和模型构建/训练模块170输出或部分地输出模型信息,该模型信息可以包括反馈的一个或多个迭代。经训练预测模型180响应于接收到输入而提供预测结果。此外,经训练预测模型180可以基于加权平均来提供结果。例如,响应于接收到查询,经训练预测模型180可以生成关于用户的预测可用性的多个预测。响应于生成多个预测,经训练预测模型180可将结果呈现为加权平均。在另一示例中,经训练预测模型180基于与多个预测的差异来提供与预测相关联的置信度分数。

联系人可用性预测系统160向消息传送服务130暴露预测服务模块190。根据一个方面,预测服务模块190提供了接口,消息传送服务130通过该接口与经训练预测模块180交互(例如,发送参数、接收经预测的可用性等等)。例如,当用户开始消息传送客户端120时,消息传送客户端120与应用服务器140进行通信。应用服务器140将每个联系人传送给预测服务模块190。响应于接收到第一联系人,预测服务模块190将该第一联系人传送给经训练预测模块180以用于计算该联系人的经预测可用性。经训练预测模块180计算联系人的经预测可用性并将该联系人的经预测可用性传送给预测服务模块190。预测服务模块190还可以提供与联系人的经预测可用性相关联的置信度水平。联系人的经预测可用性之后被传送给应用服务器140并最后传送给消息传送客户端120。

根据某些方面,消息传送服务130实现一个或多个隐私保护以防止公开用户的经预测可用性。在一个示例中,消息传送服务130包括可定制的隐私设置,该隐私设置允许启用或禁用经预测可用性特征。在另一示例中,隐私设置包括针对特定的用户群(例如消息传送服务130内的联系人)启用或禁用经预测可用性特征的功能。在又一示例中,当联系人被添加到用户的联系人列表时,可以配置隐私设置。

图2是在其中实现联系人可用性预测的示例性消息传送客户端120的图示。在所示出的消息传送客户端120中,图形用户界面包括用于发起与消息传送服务130相关联的功能的各种控件。

消息传送客户端120示出了也利用消息传送服务130的用户的联系人列表。在各个方面中,消息传送客户端120包括与联系人相关联的图标200(例如,化身、照片、或资料包)。此外,图标200可以提供标识用户是在线、离开还是离线的另外叠加图标或特征。此外,可以提供关于联系人的额外状态信息以在消息传送客户端120中显示,以提供关于联系人的额外细节,例如像“在家工作”、“在路上”、“移动连接”等用户定义的状态信息。

对于不可用的联系人(未登录或者经由消息传送服务130来显示将其标记为不可用的状态的联系人),显示不可用状态标记210,该标记210解释个人用户为何被确定为不可用。例如,未登录消息传送服务130的用户可以在消息传送客户端120中与作为“离开”的状态标记210相关联,经由消息服务130未被检测为活跃的用户(例如,在x分钟内没有键盘输入)可以在消息传送客户端120中与“离开”或“空闲”的状态标记210相关联,并且被消息服务130(例如,被集成的日历应用、对不可用状态的手动选择)检测到在会议中或者另外不被打扰的用户可以在消息传送客户端120中与“忙碌”、“在会议中”或“请勿打扰”的状态标记210相关联。如将意识到的,其它状态标记210是可能的并且前述内容已被呈现为非限制性示例。

联系人可用性预测服务160向消息传送服务130提供对目前不可用的联系人何时将变得可用的预测。在各个方面中,这些预测在消息传送客户端120中被显示为预测标记220和置信度标记230,这些标记显示或者基于对各种遥测数据的分析。

预测标记220向消息传送客户端120的本地用户显示何时预期联系人经由消息消息传送服务130可用。在各个方面中,由预测标记220指示的时间可以是超过联系人再次变得可用的置信度分数的第一时间,而在其它方面中,所指示的时间可以被用户定义的时间段(例如,工作日的结束)界定。

置信度标记230指示在预测标记200中显示的如由联系人可用性预测系统160估计的预测的可靠性。在各个方面中,针对各种置信度阈值以多种分类来呈现置信度标记230,例如,高置信度标记230a、中等置信度标记230b、以及低置信度标记230c。例如,和与中等置信度标记230b或高置信度标记230a相关联地呈现的联系人相比,与低置信度标记230c相关联地呈现的联系人可以与利用较少遥测数据来训练的经训练预测模型180相关联,因为联系人可用性预测系统160对于用于生成该联系人的可用性的预测的模型的置信度较低。

在额外的方面中,本地用户可以指定接收对联系人再次变得可用的预测的各种时间范围(例如,从现在开始的1个小时、从现在开始的2个小时、在用于剩余的工作日内)。在这些方面中,预测标记220显示所指定的时间范围,并且置信度标记230显示如由联系人可用性预测系统160确定的给定联系人在该时间范围内或之前将变得可用的可能性。

通过向本地用户显示消息传送客户端120中的联系人的经预测可用性,使得本地用户能够更好地计划如何与目前不可用的联系人通信。例如,当呈现具有直至可用的短时间的高置信度预测时,本地用户可以选择等待不可用的联系人在消息传送服务130中再次变得可用,但当呈现低置信度预测或者具有直至可用的长时间的高置信度预测时,可以选择发送电子邮件或留下语音邮箱消息。联系人可用性预测系统160因此增加了消息传送系统的实用性,并且从而改善了消息传送客户端120在其上允许的计算设备110的功能。

图3是示出了用于提供联系人可用性预测的示例性300中所涉及的一般阶段的流程图。

方法300开始于操作310,在操作310处联系人可用性预测系统160从消息传送服务130接收通信。该通信请求关于消息传送服务130的联系人或用户的将来可用性的预测。更具体而言,在一个示例中,该通信包括标识特定用户的参数,例如用户名、电子邮件地址、或该用户的其它个人标识符。

方法300行进至操作320,在操作320处联系人可用性预测系统160调用预测模型,该预测模型利用来自消息传送服务130的遥测数据。遥测数据包括与联系人/用户对消息传送服务130的使用相关的细节。在一个示例中,遥测数据包括与联系人/用户对消息传送服务130的历史使用有关的信息。在另一示例中,遥测数据指示用户何时在线、用户何时离线、用户在特定的日期离开多久、用户的通常可用时间、以及直到用户返回的平均时间。在又一示例中,遥测数据包括与在对消息传送服务130的整个使用中的用户状态有关的信息。

方法300行进至操作330,在操作330处联系人可用性预测系统160基于遥测数据来生成与联系人的将来可用性有关的预测。在一个示例中,利用预测模型来生成可用性预测。在另一示例中,预测模型针对联系人在各个时间范围内的可用性生成一个或多个置信度分数(例如,在1个小时内可用的置信度x%,在2个小时内可用的置信度y%,在24个小时内可用的置信度z%)。在又一示例中,预测模型提供超过联系人变得可用的阈值置信度的第一时间。例如,在51%的置信度阈值和针对在x、y和z小时内变得可用分别具有5%、60%和99%的置信度分数的联系人的情况下,联系人可用性预测系统160预期联系人可用的第一时间可被返回为y小时或者线性(或其它)回归)以产生x至y小时之间等于联系人可用性的51%置信度的时间。

方法300行进至操作340,在操作340处联系人可用性预测系统160向消息传送服务130发送与联系人的将来可用性有关的预测以在消息传送客户端120上显示。在各个方面中,所发送的用于在消息传送客户端上显示的预测包括置信度分数或基于置信度阈值预期的可用性的第一时间。

虽然已经在结合在计算机上的操作系统上运行的应用程序来执行的程序模块的一般上下文中描述了实现方式,但是本领域技术人员将认识到,各方面也可以与其它程序模块相组合地实现。通常,程序模块包括例程、程序、组件、数据结构、以及执行特定任务或实现特定抽象数据类型的其它类型的结构。

本文所描述的方面和功能可以经由多种计算系统来操作,包括但不限于台式计算机系统,有线和无线计算系统,移动计算系统(例如,移动电话、上网本、平板电脑或平板型计算机、笔记本计算机和膝上型计算机),手持设备,多处理器系统,基于微处理器或可编程的消费者电子产品,小型计算机和大型计算机。

另外,根据一方面,本文所描述的方面和功能在分布式系统(例如,基于云的计算系统)上操作,其中应用功能、存储器、数据存储和检索以及各种处理功能通过分布式计算网络(例如互联网或内联网)彼此远程操作。根据一方面,经由机载计算设备显示器或经由与一个或多个计算设备相关联的远程显示单元来显示各种类型的用户界面和信息。例如,在各种类型的用户界面和信息被投影到的墙壁表面上显示各种类型的用户界面和信息并与其交互。与实践实现方式的多个计算系统的交互包括击键输入、触摸屏输入、语音或其它音频输入、手势输入,其中相关联的计算设备装备有用于捕获和解释用户手势的检测(例如,相机)功能以用于控制计算设备的功能等等。

图4-图6和相关描述提供了对其中实践示例的各种操作环境的讨论。然而,针对图4-图6所示出和讨论的设备和系统是出于示例和说明的目的,而不是对用于实践本文所描述的方面的大量计算设备配置进行限制。

图4是示出了计算设备400的物理组件(即,硬件)的框图,利用该计算设备400可以实践本公开内容的各示例。在基本配置中,计算设备400包括至少一个处理单元402和系统存储器404。根据一方面,取决于计算设备的配置和类型,系统存储器404包括但不限于易失性存储器(例如,随机存取存储器)、非易失性存储器(例如,只读存储器)、闪存或这些存储器的任何组合。根据一方面,系统存储器404包括操作系统405和适合于运行软件应用450的一个或多个程序模块406。根据一方面,系统存储器404包括联系人可用性预测系统160。例如,操作系统405适合于控制计算设备400的操作。此外,结合图形库、其它操作系统或任何其它应用程序来实践各方面,并且不限于任何特定应用或系统。在图4中用虚线408内的那些组件来示出该基本配置。根据一方面,计算设备400具有另外的特征或功能。例如,根据一方面,计算设备400包括另外的数据存储设备(可移动和/或不可移动),例如磁盘、光盘或磁带。在图4中用可移动存储设备409和不可移动存储设备410示出了这种另外的存储。

如上面提到的,根据一方面,多个程序模块和数据文件存储在系统存储器404中。当在处理单元402上执行时,程序模块406(例如,联系人可用性预测系统160)执行包括但不限于图3中所示出的方法300的一个或多个阶段的过程。根据一方面,根据各示例使用其它程序模块,并且包括诸如电子邮件和联系人应用、文字处理应用、电子表格应用、数据库应用、幻灯片演示应用、绘图或计算机辅助应用等应用。

根据一方面,在包括分立电子元件的电路、包含逻辑门的封装或集成电子芯片、利用微处理器的电路中、或者在包含电子元件或微处理器的单个芯片上实践各方面。例如,经由片上系统(soc)来实践各方面,其中图4中所示出的每个或许多组件被集成到单个集成电路上。根据一方面,这种soc器件包括一个或多个处理单元、图形单元、通信单元、系统可视化单元和各种应用功能,所有这些被集成(或“烧制”)到芯片基板上作为单个集成电路。在经由soc进行操作时,本文所描述的功能经由单个集成电路(芯片)上的与计算设备400的其它组件集成的专用逻辑来操作。根据一方面,使用能够执行诸如and(与)、or(或)和not(非)之类的逻辑运算的其它技术(包括但不限于机械、光学、流体、和量子技术)来实践本公开内容的各方面。另外,在通用计算机内或在任何其它电路或系统中实践各方面。

根据一方面,计算设备400具有一个或多个输入设备412,例如键盘、鼠标、笔、声音输入设备、触摸输入设备等等。根据一方面,还包括输出设备414,例如显示器、扬声器、打印机等等。前述设备是示例,并且可以使用其它设备。根据一方面,计算设备400包括允许与其它计算设备418通信的一个或多个通信连接416。合适的通信连接416的示例包括但不限于射频(rf)发射机、接收机和/或收发机电路;通用串行总线(usb)、并行和/或串行端口。

如本文使用的术语计算机可读介质包括计算机存储介质。计算机存储介质包括以用于存储信息(例如计算机可读指令、数据结构或程序模块)的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质。系统存储器404、可移动存储设备409和不可移动存储设备410都是计算机存储介质示例(即,存储器存储)。根据一方面,计算机存储介质包括ram、rom、电可擦除可编程只读存储器(eeprom)、闪存或其它存储器技术、cd-rom、数字多功能光盘(dvd)或其它光学存储、盒式磁带、磁带、磁盘存储或其它磁存储设备,或可用于存储信息并且可由计算设备400访问的任何其它制品。根据一方面,任何这样的计算机存储介质是计算设备400的一部分。计算机存储介质不包括载波或其它传播的数据信号。

根据一方面,通信介质由计算机可读指令、数据结构、程序模块或经调制数据信号中的其它数据(诸如载波或其它传输机制)来体现,并且包括任何信息传递介质。根据一方面,术语“经调制数据信号”描述了如下信号,该信号以使得将信息编码到该信号中的方式来设置或改变该信号的一个或多个特性。举例而言而非限制,通信介质包括有线介质(例如,有线网络或直接有线连接)和无线介质(例如,声学、射频(rf)、红外和其它无线介质)。

图5a和图5b示出了移动计算设备500,例如,移动电话、智能电话、平板个人计算机、膝上型计算机等等,利用这些设备可以实践各方面。参考图5a,示出了用于实现各方面的移动计算设备500的示例。在基本配置中,移动计算设备500是具有输入元件和输出元件两者的手持计算机。移动计算设备500通常包括显示器505和允许用户将信息输入到移动计算设备500中的一个或多个输入按钮510。根据一方面,移动计算设备500的显示器505用作输入设备(例如,触摸屏显示器)。如果包括可选的侧输入元件515,则侧输入元件515允许进一步的用户输入。根据一方面,侧输入元件515是旋转开关、按钮或任何其它类型的手动输入元件。在替代示例中,移动计算设备500包含更多或更少的输入元件。例如,在一些示例中,显示器505可以不是触摸屏。在替代示例中,移动计算设备500是便携式电话系统,诸如蜂窝电话。根据一方面,移动计算设备500包括可选的小键盘535。根据一方面,可选的小键盘535是物理小键盘。根据另一方面,可选的小键盘535是在触摸屏显示器上生成的“软”键盘。在各个方面中,输出元件包括用于示出图形用户界面(gui)的显示器505、视觉指示器520(例如,发光二极管)和/或音频换能器525(例如,扬声器)。在一些示例中,移动计算设备500包含振动换能器以用于向用户提供触觉反馈。在又一示例中,移动计算设备500包含输入和/或输出端口,诸如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,hdmi端口)以用于向外部设备发送信号或从外部设备接收信号。在又一示例中,移动计算设备500包含外围设备端口540,诸如音频输入(例如,麦克风插孔)、音频输出(例如,耳机插孔)和视频输出(例如,hdmi端口)以用于向外部设备发送信号或从外部设备接收信号。

图5b是示出了移动计算设备的一个示例的架构的框图。即,移动计算设备500包含系统(即,架构)502以实现一些示例。在一个示例中,系统502被实现为能够运行一个或多个应用(例如,浏览器、电子邮件、日程安排、联系人管理器、消息传送客户端、游戏、以及媒体客户端/播放器)的“智能电话”。在一些示例中,系统502被集成为计算设备,例如集成的个人数字助理(pda)和无线电话。

根据一方面,一个或多个应用程序550被加载到存储器562中并在操作系统564上或与其相关联地运行。应用程序的示例包括电话拨号程序、电子邮件程序、个人信息管理(pim)程序、文字处理程序、电子表格程序、互连网浏览器程序、消息传送程序等等。根据一方面,消息传送客户端120被加载到存储器562中。系统502还包括存储器562内的非易失性存储区域568。非易失性存储区域568用于存储在系统502断电的情况下不应丢失的持久性信息。应用程序550可以在非易失性存储区域568中使用和存储信息,诸如电子邮件或电子邮件应用使用的其它消息等等。同步应用(未示出)也驻留在系统502上,并被编程为与驻留在主机计算机上的相应同步应用交互,以使存储在非易失性存储区域568中的信息与存储在主机计算机处的相应信息保持同步。应当意识到,可以将其它应用加载到存储器562中并在移动计算设备500上运行。

根据一方面,系统502具有电源570,其被实现为一个或多个电池。根据一方面,电源570还包括外部电源,例如ac适配器或补充电池或对电池重新充电的加电对接托架。

根据一方面,系统502包括执行发送和接收射频通信的功能的无线电装置572。无线电装置572经由通信运营商或服务提供商来促进系统502与“外部世界”之间的无线连接。在操作系统564的控制下进行去往和来自无线电装置572的传输。换言之,由无线电装置572接收的通信可以经由操作系统564传播到应用程序550,反之亦然。

根据一方面,视觉指示器520用于提供视觉通知和/或音频接口574用于经由音频换能器525来产生可听通知。在所示出的示例中,视觉指示器520是发光二极管(led)并且音频换能器525是扬声器。这些设备可以直接耦合到电源570,以使得当被激活时,它们在由通知机制指示的持续时间内保持开启,即使处理器560和其它组件可能关闭以节省电池功率。led可以被编程为无限地保持开启,直到用户采取行动来指示设备的通电状态为止。音频接口574用于向用户提供可听信号并从用户接收可听信号。例如,除了耦合到音频换能器525之外,音频接口574还可以耦合到麦克风以接收可听输入,例如以促进电话交谈。根据一方面,系统502还包括视频接口576,其实现机载相机530的操作以记录静止图像、视频流等等。

根据一方面,实现系统502的移动计算设备500具有另外的特征或功能。例如,移动计算设备500包括另外的数据存储设备(可移动和/或不可移动),例如磁盘、光盘或磁带。图5b中用非易失性存储区域568来示出这种另外的存储。

根据一方面,由移动计算设备500生成或捕获并经由系统502存储的数据/信息本地存储在移动计算设备500上,如上所述。根据另一方面,数据存储在可由设备经由无线电572或经由移动计算设备500与关联于移动计算设备500的单独计算设备(例如,在分布式计算网络(例如互联网)中的服务器计算机)之间的有线连接可访问的任何数量的存储介质上。如应该意识到的,这种数据/信息可通过移动计算设备500经由无线电装置572或经由分布式计算网络来访问。类似地,根据一方面,根据众所周知的数据/信息传输和存储装置(包括电子邮件和协作数据/信息共享系统),这些数据/信息在计算设备之间容易地传输以用于存储和使用。

图6示出了如上所述的用于提供联系人可用性预测的系统的架构的一个示例。与联系人可用性预测系统160相关联地开发、交互或编辑的内容能够存储在不同的通信信道或其它存储类型中。例如,可以使用目录服务622、网络门户624、邮箱服务626、即时消息传送存储628或社交网络站点630来存储各种文档。联系人可用性预测系统160可操作用于使用这些类型的系统或类似系统中的任何一者以提供联系人可用性预测,如本文所述。根据一方面,服务器620向客户端605a、605b、605c提供联系人可用性预测系统160。举一个示例,服务器620是通过web提供联系人可用性预测系统160的web服务器。服务器620通过网络640在web上向客户端605提供联系人可用性预测系统160。举例而言,客户端计算设备被实现并体现在个人计算机605a、平板计算设备605b或移动计算设备605c(例如,智能电话)、或其它计算设备中。客户端计算设备的这些示例中的任何示例可操作用于从存储装置616获得内容。

例如,上面参考根据各方面的方法、系统和计算机程序产品的框图和/或操作图示来描述了各实现方式。框中记录的功能/动作可以不按任何流程图所示的顺序发生。例如,连续示出的两个框实际上可以基本上同时执行,或者这些框有时可以以相反的顺序执行,这取决于所涉及的功能/动作。

本申请中提供的一个或多个示例的描述和说明并非旨在以任何方式限制或制约所要求保护的范围。本申请中提供的方面、示例和细节被认为足以传达所有权并使得其他人能够制作和使用最佳模式。实现方式不应被解释为受限于本申请中提供的任何方面、示例或细节。无论是组合地还是单独地示出和描述,各种特征(在结构和方法两者上)旨在被选择性地包括或省略以产生具有特定特征集的示例。已经提供了本申请的描述和说明,本领域技术人员可以设想落入本申请中体现的总体发明构思的更广泛方面的精神内的变型、修改和替代示例,这些变型、修改和替代示例不脱离更广泛的范围。

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