上下文感知设备管理的制作方法

文档序号:11532578阅读:236来源:国知局
上下文感知设备管理的制造方法与工艺



背景技术:

隐私和安全对于使用包含个人或高度机密的信息和数据的设备的消费者和公司而言是优先考虑的事情。为了保护这些设备的安全,公司常常使用基于服务器的管理服务来为设备配置一组策略、设置、资源以及应用程序以确保设备是安全的,包括设备上的信息和数据。

然而,在当今世界,设备不再被用于单个目的。例如,膝上型电脑可以被用于个人和工作二者,同一台电话可以被出纳员用于后房中的结帐和库存使用,平板电脑可以被安装在商店中以显示促销广告,而且还使得商店雇员能够检查库存或者使得商店经理能够检查雇员换班调度表等等。

管理这些设备的常规解决方案涉及用以改变所述一组策略、设置、资源以及应用程序的手动用户交互。然而,这种方案并未考虑到通过如上所述的各种环境来回移动的设备的动态性质。其它常规技术涉及使用具有环境上下文的基于服务器的服务,并且依赖于基于服务器的管理服务来对配置进行改变。虽然这可以支持提供对所述一组策略、设置、资源以及应用程序的动态改变,但其依赖于在某些情形中可能不可访问(尤其是被移动设备)的网络连接。此外,某些上下文信号到基于服务器的管理服务的传输可能由于隐私问题而不被允许。



技术实现要素:

描述了上下文感知设备管理技术。标识数据由客户端设备经由网络经由通信连接提供给服务提供商,所述标识数据可由服务提供商用来标识客户端设备或客户端设备的功能。在客户端设备处经由网络从服务提供商接收对应于标识数据的一个或多个上下文。所述一个或多个上下文中的每一个包括管理对象以及一个或多个触发器,所述触发器被配置成促使上下文过渡至多个上下文状态中的相应一个并且从而引起对应于该上下文状态的一个或多个动作的执行。所述一个或多个上下文由客户端设备在本地实现,所述上下文可有效地用于在客户端设备不使用网络通信的情况下由客户端设备基于对一个或多个触发器的标识来标识和执行对应于上下文状态的一个或多个动作。

在一个或多个实现方式中,一种系统包括至少部分地用硬件实现的一个或多个模块。所述一个或多个模块被配置成执行包括经由通信连接从客户端设备接收标识数据的操作。响应于此接收,基于标识数据来标识多个上下文中的一个或多个,所述一个或多个上下文中的每一个具有管理对象以及一个或多个触发器,所述触发器被配置成促使上下文过渡至多个上下文状态中的相应一个并且从而引起对应于该上下文状态的一个或多个动作的执行。形成通信以经由网络将已标识的一个或多个上下文传送到客户端设备,所述已标识的一个或多个上下文可有效地用于促使客户端设备由客户端设备在本地实现一个或多个上下文,所述上下文可有效地用于在不与服务提供商通信的情况下基于对一个或多个触发器的标识来标识和执行对应于上下文状态的一个或多个动作。

在一个或多个实现方式中,客户端设备包括处理系统和保持指令的存储器,所述指令可由处理系统执行以促使操作被执行。所述操作包括经由网络经由通信连接向服务提供商提供标识数据,该标识数据可被服务提供商用来标识客户端设备或客户端设备的功能。所述操作还包括经由网络从服务提供商接收对应于标识数据的一个或多个上下文,所述一个或多个上下文中的每一个具有管理对象以及一个或多个触发器,所述触发器被配置成促使上下文过渡至多个上下文状态中的相应一个并且从而引起对应于该上下文状态的一个或多个动作的执行。所述操作还包括在本地实现一个或多个上下文,所述上下文可有效地用于在不使用网络通信的情况下由客户端设备基于对一个或多个触发器的标识来标识和执行对应于上下文状态的一个或多个动作。

提供本发明内容以便以简化形式介绍下面在具体实施方式中进一步描述的概念的选择。本发明内容并不意图标识要求保护的主题的关键特征或必要特征,其也不意图用作确定要求保护的主题的范围的辅助。

附图说明

参考附图来描述具体实施方式。在图中,参考标号的(多个)最左数位标识该参考标号第一次出现在其中的图。相同参考标号在说明书和图中的不同实例中的使用可以指示类似或相同的项目。图中表示的实体可以指示一个或多个实体,并且因此可以可互换地对讨论中的实体的单数或复数形式进行参考。

图1是可操作用于执行上下文感知设备管理技术的示例实现方式中的环境的图示。

图2描绘了其中由图1的服务提供商的受信任服务模块实现的受信任服务将用于在客户端设备处本地实现的上下文实例化的示例实现方式中的系统。

图3描绘了示例实现方式中的系统,该示例实现方式将图2的设备管理系统更详细地示出为接收可用来确定用于上下文的上下文状态的各种不同上下文触发器。

图4描绘了示例实现方式中的系统,该示例实现方式更详细地示出了图3的设备管理系统的组件的示例。

图5是描绘示例实现方式中的过程的流程图,在该示例实现方式中客户端设备被供应有用来在客户端设备处本地管理动作执行的上下文。

图6是描绘示例实现方式中的过程的流程图,在该示例实现方式中服务提供商使用基于设备的标识信息选择的上下文供应客户端设备。

图7图示出包括示例设备的各种组件的示例系统,该示例设备可以实现为如参考图1-6所述的任何类型的计算设备以实现本文中所述技术的实施例。

具体实施方式

综述

描述了上下文感知设备管理技术。在一个或多个实现方式中,一种系统可以用来为设备配置一组配置(称为“上下文”)以基于任何数目或组合的上下文信号来动态地设定和/或改变在设备上应用的一组策略、设置、资源以及应用程序。

另外,上下文信号还可以引发设备上管理动作发生,所述设备上管理动作可以在不涉及网络连接的情况下在设备上本地执行。例如,在设备上收集上下文信号并处理以在不涉及上下文信号到基于服务器的管理服务的传输的情况下确定动作以确定哪些动作将由计算设备执行。这样,设备本身可以采用该上下文并且在没有来自服务的进一步输入的情况下相应地做出反应。可以关于以下小节找到这些及其它示例的进一步讨论。

在以下讨论中,首先描述可以采用本文所述技术的示例环境。然后描述可以在本示例环境以及其它环境中执行的示例过程。因此,示例过程的执行不限于本示例环境,并且本示例环境不限于示例过程的执行。

示例环境

图1是可操作用于采用本文中所述的上下文感知设备管理技术的示例实现方式中的环境100的图示。所图示的环境100包括经由网络106通信地耦合到服务提供商104的客户端设备102。可以用各种方式来配置实现客户端设备102的计算设备以及可以实现服务提供商104的计算设备。

例如,计算设备可以被配置为能够通过网络进行通信的计算机,诸如桌面型计算机、移动站、娱乐用具、通信地耦合到显示设备的机顶盒、无线电话、游戏控制台等。计算设备还可以包括可包括在“物联网”中的设备,诸如灯泡、锁、汽车、厨房用具等。因此,计算设备的范围可以从具有丰富的存储器和处理器资源的全资源设备(例如,个人计算机、游戏控制台)至具有有限存储器和/或处理资源的低资源设备(例如,恒温器、锁等)。另外,计算设备可以表示多个不同的设备,诸如被企业用来诸如由服务提供商104执行操作的多个服务器、遥控器与机顶盒组合、图像捕捉设备和被配置成捕捉手势的游戏控制台等。

虽然网络106被图示为因特网,但网络可以采取各种各样的配置。例如,网络106可以包括广域网(wan)、局域网(lan)、无线网络、公共电话网、内联网等。此外,虽然示出了单个网络106,但网络106可以被配置成包括多个网络。

计算设备102被图示为包括各种硬件组件,其示例包括处理系统108、被图示为存储器110的计算机可读存储介质的示例、如图示的显示设备、可以包括网络连接设备等。处理系统108表示用以通过执行存储在存储器110中的指令来执行操作的功能。虽然被单独地图示,但这些组件的功能可以被进一步划分、组合(例如,在专用集成电路上)等。

客户端设备102进一步被图示为包括操作系统112。操作系统112被配置成将客户端设备102的底层功能抽象成可在客户端设备102上执行的应用程序114。例如,操作系统112可以将客户端设备102的处理系统108、存储器110、网络和/或显示设备功能进行抽象,使得可以在不知道此底层功能“如何”实现的情况下编写应用程序114。应用程序114例如可以向操作系统112提供数据以在不理解将如何执行再现的情况下再现。操作系统112还可以表示各种其它功能,诸如管理可被客户端设备102的用户导航的文件系统和用户界面。

环境100还包括受信任服务,其功能由在客户端设备102处本地实现的受信任服务模块116和由服务提供商104经由网络106远程地实现的受信任服务模块118表示。受信任服务模块116、118支持被配置成创建上下文120的受信任服务,所述上下文120可以被定义为用于由客户端设备102实现的管理策略、设置、资源和/或动作的抽象或很好地定义的分组,并且还可以通过使用设备管理系统122来定义这些上下文120将如何被应用、可访问、可使用或者被实行。

客户端设备102例如可以通过经由网络106与服务提供商104的受信任服务模块118的交互而与远程受信任服务相互认证。受信任服务的功能还可以如受信任服务模块116图示的作为操作系统112的一部分而常驻于客户端设备102本地,其信任构成操作系统108的其自己的组件。

客户端设备102通过与受信任服务中的任一个的认证而可以对受信任服务模块116、118所表示的受信任服务功能授予通过安全信道进行通信、发起动作以及修改客户端设备102的数据的能力。这允许受信任服务定义上下文120的属性,诸如哪些管理策略、设置、资源或动作与上下文120相关联。这还可以包括基于与上下文120相关联的单个触发器或其组合来供应(provision)上下文120应如何被设备管理系统122应用、可访问、可使用和/或实行。这样,设备管理系统122可以在不涉及来自受信任服务的任何指令的情况下基于通过本地或远程指示器的推断来主动地进行检测或者反应性地被通知。此外,受信任服务可以委托给另一受信任过程、应用程序114或端点以使触发器被无视(overridden),使得上下文120可以被手动地激活、去激活、返回到基于触发器的激活和去激活行为。

因此,受信任服务可以用于通过供应管理策略、设置、资源或动作并使其与上下文120相关联来创建可以基于一个或多个触发器进行激活/去激活的上下文120。在一个或多个实现方式中,受信任服务可以将许可委托给另一服务(例如,应用程序114),所委托的许可可以包括无视触发状态或者将管理策略、设置、资源或动作与上下文相关联/解除关联。受信任服务可以在设备上创建可以同时地相交互的任何数目的上下文120。此外,受信任服务可以将任何数目的上下文120进行链接、分组或排序以创建上下文120的分层适用性。这使得受信任服务能够创建基线上下文或者进行互连或创建定义上下文触发器将何时被处置(addressed)的依存性的能力。此外,上下文120可以具有预定义或动态定义的活动寿命,其中上下文120在已满足某些条件(例如,其可以包括时间和非时间条件)之后被自动地去激活。在以下描述中可以找到并在相应的图中示出了这些特征的进一步讨论。

图2描绘了示例实现方式中的系统200,该示例实现方式中由图1的服务提供商104的受信任服务模块118实现的受信任服务将用于在客户端设备102处本地实现的上下文120实例化。通过使用第一、第二、第三和第四202、204、206、208阶段图示出系统200。在第一阶段202处,在客户端设备102的设备管理系统122之间创建已认证连接210。可以用各种方式发起此已认证连接210。例如,设备管理系统122可以例如当首先通过在客户端设备102与服务提供商104的受信任服务模块118之间协商的先前设定的调度表获得网络连接时发起连接,等等。在另一示例中,受信任服务模块118可以例如通过涉及客户端设备102与“在云中”的服务提供商104之间的半持久性连接的按需连接来发起与客户端设备102的已认证连接210。此外,已认证连接210可以采取各种形式,诸如因特网连接、利用蜂窝特定形式的通信(例如,sms、mms)等等。

在第二阶段204处,由设备管理系统122向受信任服务模块118提供标识数据212。可以用各种方式来配置该标识数据212。例如,标识数据212可以标识客户端设备102本身(例如,使用型号或序列号、用户、用户帐户或者与客户端设备102相关联的企业),可以标识客户端设备102的功能,诸如在客户端设备102本地可用的硬件和/或软件资源,等等。这样,设备管理系统122可以用来向受信任服务模块118的受信任服务注册客户端设备102。

在第三阶段206处,受信任服务模块118通过在第一阶段202中相互认证的远程访问和第二阶段204的注册而被设备管理系统122许可管理客户端设备102的操作。为了这样做,受信任服务模块118向设备管理系统122传送上下文120。

上下文120包括管理对象214,管理对象214可用来由设备管理系统122管理客户端设备102的操作,诸如改变由客户端设备102输出的总体体验,例如以支持与支持软件安装的开放用户模式相反的锁定信息亭(kiosk)模式。管理对象214的示例包括管理设置216、管理策略218(例如,其可以改变用户界面看起来如何,用户界面可以是动态的)、管理资源220(例如,应用程序wi-fi端点、vpn)以及管理动作222。上下文120例如可以定义这些管理对象214之间的逻辑分组,诸如指定这些对象的分层适用性和相关联的依存性。可以关于图4找到设备管理系统122使用上下文120的管理对象214用于管理客户端设备102的操作的进一步讨论。

在第四阶段208,受信任服务模块118将上下文触发器224与设备管理系统112的上下文120相关联。例如,使用管理对象214来处理上下文触发器224以确定上下文102的上下文状态226,所述上下文状态226可用来确定被促使由设备管理系统122执行的客户端设备102的动作。上下文触发器224例如可以对应于由设备管理系统122执行的信号通知或信号数据的主动查询,其在被使用管理对象214处理时确定上下文120将被置多个上下文状态226中的哪一个。在下文中可以找到且在相应的图中示出了上下文触发器224和上下文状态的进一步讨论。

图3描绘了示例实现方式中的系统300,该示例实现方式将设备管理系统122更详细地示出为接收可用来确定用于上下文的上下文状态226的各种不同的上下文触发器224。在本示例中,设备管理系统122通过基于上下文120的上下文状态226引起动作302的执行来管理客户端设备102的操作。

设备管理系统122例如可以基于上下文触发器224来确定上下文状态226。可以将上下文触发器224配置为通过由设备管理系统执行的主动查询和/或由设备管理系统122接收到的通知而接收到的上下文信号。因此,上下文120的上下文状态226可以基于信号通知、信号数据的主动查询、可以被无视等等。上下文触发器224的第一此类示例是系统状态304,其可以包括客户端设备102是处于全功率还是部分功率模式、被配置成支持冬眠等。系统状态304还可以包括作为客户端设备102的一部分而包括的功能的状态,诸如网络连接的状态以及该网络连接的类型。网络连接例如可以包括连接是否是经由有线或无线网络连接、ip地址、vpn网络的使用等实现的。

在另一示例中,可以使用api306来将作为上下文触发器224的数据暴露给设备管理系统122。api306例如可以被应用程序114、第三方插件模块、操作系统112本身等暴露。由api206暴露的数据(例如作为api调用的一部分)因此可以描述各种不同的上下文,诸如应用程序114的执行状态、由应用程序114处理的数据、时间或其它调度表等。

在另一示例中,传感器数据308可以被设备管理系统122用作上下文触发器224。客户端设备102例如可以包括陀螺仪、加速度计、触摸传感器、相机、自然用户接口(nui)输入设备、麦克风等。因此,从这些传感器获得的传感器数据308可以被设备管理系统122用作上下文触发器224来确定上下文120的上下文状态226。

在又另一示例中,可以使用推断的用户动作310作为上下文触发器224。设备管理系统122例如可以推断用户在与客户端设备102相交互时所采取的动作并相应地做出反应。可以用各种方式来推断这些动作,诸如通过利用传感器数据308来检测与客户端设备102的用户交互以及其中发生此用户交互的环境,例如位置、日时等。还设想了各种其它示例。

当上下文触发器224按照上下文120的指定满足一组条件时,上下文状态226可以相应地改变。设备管理系统122例如可以处理上下文状态226变化并基于状态变化来提供动作302。这可以包括使上下文状态226暴露于可以解释状态并基于这些状态来采取动作的系统组件。因此,可以利用上下文状态226来促使由客户端设备102执行各种动作302,诸如管理设置的改变、管理策略的改变、被管理资源的改变、管理相关动作的改变等。

此外,由于设备管理系统122和上下文120是在客户端设备102处本地实现的,所以可以在不使用网络连接的情况下且在不经由网络106与服务提供商104的受信任服务模块118的受信任服务通信的情况下实现此功能。这样,设备管理系统122可以合并用于管理和解释在客户端设备102上本地收集的信号数据的规则和逻辑处理。因此,与要求网络连接和与网络服务的通信以确定将执行哪些动作的常规技术相反,可以在离线模式下更新和处理设备和上下文状态的管理。

图4描绘了示例实现方式中的系统400,该示例实现方式更详细地示出了图3的设备管理系统122的组件的示例。设备管理系统112被图示为包括各种组件,所述组件包括上下文管理器核心404、一般数据源406、调度系统408、策略/设置引擎410、资源412、其它系统组件414以及上下文120和上下文触发器224。

如先前关于图2所述,受信任服务可以使用已认证连接来创建上下文120,其可以包括将一组管理设置、管理策略、管理资源或管理动作分配或关联到上下文120。接下来,受信任服务配置上下文状态如何响应于一个或多个上下文触发器224和由管理对象指定的适用规则而改变。一旦在客户端设备102上被供应以供作为设备管理系统122的一部分使用,受信任服务就不可以被进一步用来命令设备,除非要对上下文120进行改变。因此,设备管理系统122可以在没有网络通信的情况下(包括在没有与服务提供商104的受信任服务模块118的通信的情况下)在离线模式下管理客户端设备102。

设备管理模块402表示设备管理系统122使用客户端设备102的网络堆栈经由网络106与服务提供商104的受信任服务模块118通信的功能。设备管理模块402还具有与上下文管理器核心404引擎相交互以实现上下文120、配置用于设备管理系统122的上下文触发器224以监视或侦听用于各种数据源和信号的改变、以及将管理策略、管理设置、管理资源、管理动作及其它系统组件关联到上下文120的能力。

设备管理系统122可以利用上下文120或一组上下文以及要满足以便使每个“上下文状态”基于上下文触发器224而发生改变的一组条件的全面定义。如关于图4所述,这些条件可以基于来自各种数据源的各种信号,并且信号数据可以通过操作(例如,not、and、or)而混合在一起,并且可以与括号表达式组合以定义其中上下文条件226可以改变的条件。

上下文120可以包括各种上下文状态226,诸如“常开”、“常闭”或者如下面更详细地描述的各种可替换状态。例如,可以创建可替换上下文状态,并且可以将相关联的上下文触发器224与该状态相关联。因此,上下文状态226可以在满足在上下文触发器224中定义的条件时被激活,并且在不满足在上下文触发器224中定义的条件时被去激活。在另一示例中,还可以创建可替换上下文状态226并将其与上下文触发器224相关联。在本示例中,当满足在上下文触发器224中定义的条件时认为上下文状态226是“依从的(compliant)”,并且当不满足在上下文触发器224中定义的条件时是“不依从的”。

受信任服务还可以将各种管理对象214与上下文120相关联。这可以包括管理策略218、管理设置216或管理资源220等。这还可以包括响应于上下文状态226而将采取的管理动作222(诸如锁定客户端设备102)的关联。

调度系统408被图示为通过与一般数据源406的交互来提供上下文触发器224。如前所述,可以用各种方式来配置上下文触发器224,诸如意图信息、由系统通过设备可访问的数据集合或传感器产生的信号等。

对于每个上下文120,当条件满足或者不再满足用于该上下文的要求时,调度系统408可以向上下文管理器核心404告知一个或多个上下文状态226已改变。上下文管理器核心404表示用以保持上下文120中的每一个及其各自上下文状态226的列表的功能。上下文管理器核心404然后可以与其它组件(包括策略/设置引擎410、资源412管理或其它系统组件414)相交互以向它们告知用于每个上下文120和用于每个组件的上下文状态226变化以采取相应的动作(如果期望的话)。

因此,在已经为设备管理系统122供应上下文120之后,在由设备管理系统122进行的判定和采取的动作中不再涉及受信任服务。这不同于取决于到服务的连接或基于服务的规则处理的其他常规技术。相反地,设备管理系统122可以在客户端设备102上本地处理上下文触发器224并采取立即动作以改变管理规则(策略/设置)、管理资源可用性,并且直接地在设备上发起管理动作。这可以用来支持各种不同的使用情景,其示例在下面进行描述。

在使用情景的第一示例中,可以将客户端设备102配置为通常称为在“物联网”中涉及的设备,诸如灯泡、恒温器、厨房用具(例如,冰箱、烤面包器、搅拌器、烘箱)、景观系统(例如,流水、照明)等。客户端设备102到用户家庭处的无线网络的连接可以导致如关于图2所述的已认证连接210的形成。可以与客户端设备102的制造商相关联的、服务提供商104的受信任服务模块118然后可以使用一个或多个上下文120供应客户端设备102。一旦被供应,客户端设备102就可以基于使用指定用于上下文120的条件的管理对象214处理的上下文触发器224来确定上下文状态226。

在另一示例使用情景中,可以将客户端设备102配置为用于运载工具(诸如汽车、船等)的钥匙圈(keyfob)。客户端设备102可以由服务提供商102供应以便包括上下文120,所述上下文120指定与用户相关联的另一设备(例如,用户的电话)将连同钥匙圈一起出现以许可访问与钥匙圈相关联的(例如使用nfc、rfid等检测到的)运载工具。这样,上下文120可以在被用来授予对运载工具的访问之前支持另一水平的用户认证。因此,在每个示例中,对客户端设备102进行供应,并且其然后可以离线地对上下文触发器224做出反应以基于上下文状态来执行动作392。还设想了其它示例(包括使用情景),可以关于以下过程找到其进一步讨论。

在另一示例中,上下文120可以包括上下文触发器224,使得当客户端设备102在企业自己的wi-fi接入点的范围内时(如在上下文和触发器的初始供应期间定义的),用于附近的wi-fi的上下文触发器224被启动以指示客户端设备102可以访问企业资源。此上下文触发器224被用来应用迫使屏幕在一分钟之后到时间的策略并阻断相机。一旦客户端设备102不再在企业wi-fi的范围内,则客户端设备102通过一个或多个上下文触发器224感测到这一点,并且更有限制性的上下文暂时被禁用。

还可以采用反弹检测和阈值。继续先前的示例,如果企业wi-fi变得不可用并且然后每三秒可用一次,则客户端设备102可以在上下文之间来回反弹,这可能是不期望的。因此,如果上下文触发器被快速地启动,则可以采用反弹检测来等待某个定义时间段以便在应用之前等到客户端设备102处于稳定状态。这可以使用用于单独上下文触发器的阈值来执行(例如,因此每个传感器可以具有不同的阈值),并且还可以作为总体来执行,例如以在参与状态变化之前等待预定义时间段以便作为总体的各上下文触发器稳定下来。

示例过程

以下讨论描述了可以利用先前描述的系统和设备实现的上下文感知设备管理技术。可以用硬件、固件或软件或其组合来实现每个过程的各方面。所述过程被示出为指定由一个或多个设备执行的操作的一组方框,并且不一定局限于用于由各个方框来执行操作的所示顺序。在以下讨论的各部分中,将对上面所述的图进行参考。

可以在本文中所述的过程的上下文中采用关于图1-3的示例所述的功能、特征以及概念。此外,关于下面的不同过程所描述的功能、特征以及概念可以在不同的过程之间互换,而不局限于在单独过程的上下文中实现。此外,可以将与本文中不同的代表性过程和相应的图相关联的方框一起应用和/或以不同的方式组合。因此,可以以任何适当的组合使用关于本文中不同的示例环境、装置、组件以及过程所描述的单独功能、特征以及概念,而不局限于枚举的示例所表示的特定组合。

图5描绘了示例实现方式中的过程500,该示例实现方式中客户端设备被供应有用来在客户端设备处本地管理动作执行的上下文。标识数据由客户端设备经由网络经由通信连接提供给服务提供商,所述标识数据可由服务提供商用来标识客户端设备或客户端设备的功能(方框502)。该标识数据例如可以通过序列号、型号来标识设备,并且还可以通过设备与用户或企业的关联来标识设备。

在客户端设备处经由网络从服务提供商接收对应于标识数据的一个或多个上下文。所述一个或多个上下文中的每一个包括管理对象以及一个或多个触发器,所述触发器被配置成促使上下文过渡至多个上下文状态中的相应一个并且从而引起对应于该上下文状态的一个或多个动作的执行(方框504)。触发器例如可以指定一组条件,该组条件在被满足的情况下引起到相应的上下文状态(例如,开、关或中间状态)的过渡,所述相应的上下文状态具有基于该状态而被导致执行的相应动作。

所述一个或多个上下文由客户端设备在本地实现,所述上下文可有效地用于在客户端设备不使用网络通信的情况下由客户端设备基于对一个或多个触发器的标识来标识和执行对应于上下文状态的一个或多个动作(方框506)。由于可以用各种方式来配置上下文触发器,因此也可以执行与上下文触发器相关联的动作,诸如将汽车解锁、关掉灯、许可访问旅馆房间等。

图6描绘了示例实现方式中的程序600,该示例实现方式中服务提供商使用基于设备的标识信息选择的上下文供应客户端设备。经由通信连接从客户端设备接收标识数据(方框602)。如之前一样,该标识数据可以采取各种形式以标识客户端设备和客户端设备102的功能,诸如在客户端设备102上本地可用的特定硬件或软件资源。

响应于此接收,基于标识数据来标识多个上下文中的一个或多个,所述一个或多个上下文中的每一个具有管理对象以及一个或多个触发器,所述触发器被配置成促使上下文过渡至多个上下文状态中的相应一个并且从而引起对应于该上下文状态的一个或多个动作的执行(方框604)。服务提供商104以及更特别地受信任服务模块118可以选择多个上下文中对应于客户端设备102(诸如用于特定用户的、与特定公司(例如,企业)相关联的等)的一个或多个上下文。

形成通信以经由网络将已标识的一个或多个上下文传送到客户端设备,所述已标识的一个或多个上下文可有效地用于促使客户端设备由客户端设备在本地实现该一个或多个上下文,所述上下文可有效地用于在不与服务提供商通信的情况下基于对一个或多个触发器的标识来标识和执行对应于上下文状态的一个或多个动作(方框606)。继续先前的示例,一旦由客户端设备102完成上下文120的传送和供应,就可以停止受信任服务模块118与客户端设备102的牵连,除了根据期望更新上下文120。这样,可以在不使用网络连接的情况下离线地执行客户端设备102所采取的管理和相应的动作。如前所述,还设想了各种其它示例。

示例系统和设备

图7一般地在700处图示出包括表示可实现本文所述各种技术的一个或多个计算系统和/或设备的示例计算设备702的示例系统。这通过包括设备管理器系统122和受信任服务模块118来举例说明。计算设备702可以是例如服务提供商的服务器、与客户端相关联的设备(例如,客户端设备)、片上系统和/或任何其它适当的计算设备或计算系统。

如图示的示例计算设备702包括处理系统704、一个或多个计算机可读介质706以及被相互通信地耦合的一个或多个i/o接口708。虽然未示出,但计算设备702还可以包括系统总线或将各种部件相互耦合的其它数据和命令传输系统。系统总线可以包括不同总线结构中的任何一个或组合,所述总线结构诸如存储器总线或存储器控制器、外围总线、通用串行总线和/或利用各种总线架构中的任何一个的处理器或本地总线。还设想了各种其它示例,诸如控制和数据线。

处理系统704表示用以使用硬件来执行一个或多个操作的功能。因此,处理系统704被图示为包括可被配置为处理器、功能块等的硬件元件710。这可以包括作为专用集成电路或使用一个或多个半导体形成的其它逻辑器件的硬件中的实现方式。硬件元件710不受形成它们的材料或在其中采用的处理机制的限制。例如,处理器可由(多个)半导体和/或晶体管(例如,电子集成电路(ic))构成。在这样的上下文中,处理器可执行指令可以是电子可执行指令。

计算机可读存储介质706被图示为包括存储器/储存器712。存储器/储存器712表示与一个或多个计算机可读介质相关联的存储器/储存器容量。存储器/存储组件712可以包括易失性介质(诸如随机存取存储器(ram))和/或非易失性介质(诸如只读存储器(rom)、闪速存储器、光盘、磁盘等)。存储器/存储器组件712可以包括固定介质(例如,ram、rom、固定硬驱等)以及可移动介质(例如,闪速存储器、可移动硬驱、光盘等)。可以用如下面进一步描述的各种其它方式来配置计算机可读介质706。

(多个)输入/输出接口708表示用以允许用户向计算设备702键入命令和信息且还允许使用各种输入/输出设备向用户和/或其它组件或设备呈现信息的功能。输入设备的示例包括键盘、光标控制设备(例如,鼠标)、麦克风、扫描仪、触摸功能(例如,被配置成检测物理触摸的电容性或其它传感器)、相机(例如,其可采用诸如红外频率之类的可见或不可见波长来识别作为不涉及触摸的手势的移动)等。输出设备的示例包括显示设备(例如,监视器或投影仪)、扬声器、打印机、网卡、触觉响应设备等。因此,可用如下面进一步描述的各种方式来配置计算设备702以支持用户交互。

在本文中可以在软件、硬件元件或程序模块的一般上下文中描述各种技术。一般地,此类模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、元件、组件、数据结构等。如本文所使用的术语“模块”、“功能”和“组件”一般地表示软件、固件、硬件或其组合。本文所述的技术的特征是平台无关的,意味着可以在具有各种处理器的各种商业计算平台上实现这些技术。

所述模块和技术的实现方式可以存储在某种形式的计算机可读介质上或跨某种形式的计算机可读介质传输。计算机可读介质可以包括可以被计算设备702访问的各种介质。以示例而非限制的方式,计算机可读介质可以包括“计算机可读存储介质”和“计算机可读信号介质”。

“计算机可读存储介质”可以指代使得能够实现信息的持久性和/或非瞬时存储的介质和/或设备(与仅仅信号传输、载波或信号本身相反)。因此,计算机可读存储介质指代非信号承载介质。计算机可读存储介质包括用适合于存储诸如计算机可读指令、数据结构、程序模块、逻辑元件/电路或其它数据之类的信息的方法或技术实现的诸如易失性和非易失性、可移动和不可移动介质和/或存储设备之类的硬件。计算机可读存储介质的示例可以包括但不限于ram、rom、eeprom、闪速存储器或其它存储器技术、cd-rom、数字多功能磁盘(dvd)或其它光学储存器、硬盘、盒式磁带、磁带、磁盘储存器或其它磁性存储设备或者适合于存储期望信息且可被计算机访问的其它存储设备、有形介质或制品。

“计算机可读信号介质”可以指代被配置成诸如经由网络向计算设备702的硬件传输指令的信号承载介质。信号介质典型地可以在诸如载波、数据信号或其它输运机制之类的已调制数据信号中体现计算机可读指令、数据结构、程序模块或其它数据。信号介质还包括任何信息输送介质。术语“已调制数据信号”意指这样的信号,其使其特性中的一个或多个以将信息编码在该信号中这样的方式进行设定或改变。以示例而非限制的方式,通信介质包括诸如有线网络或直接连线连接之类的有线介质以及诸如声学、rf、红外及其它无线介质之类的无线介质。

如前所述,硬件元件710和计算机可读介质706表示在某些实施例中可以用来实现本文所述技术的至少一些方面(诸如执行一个或多个指令)的以硬件形式实现的模块、可编程器件逻辑和/或固定器件逻辑。硬件可以包括集成电路或片上系统、专用集成电路(asic)、现场可编程门阵列(fpga)、复杂可编程逻辑器件(cpld)以及硅或其它硬件中的其它实现方式的组件。在本上下文中,硬件可以操作为执行由指令定义的程序任务和/或由硬件体现的逻辑的处理设备以及被用来存储指令以用于执行的硬件,例如先前所述的计算机可读存储介质。

还可以采用前述内容的组合来实现本文所述的各种技术。因此,可以将软件、硬件或可执行模块实现为在某种形式的计算机可读存储介质上体现和/或由一个或多个硬件元件710体现的一个或多个指令和/或逻辑。计算设备702可以被配置成实现对应于软件和/或硬件模块的特定指令和/或功能。因此,可以例如通过使用处理系统704的计算机可读存储介质和/或硬件元件710至少部分地用硬件来完成可由计算设备702作为软件执行的模块的实现。指令和/或功能可以可由一个或多个制品(例如,一个或多个计算设备702和/或处理系统704)执行/操作来实现本文所述的技术、模块以及示例。

如在图7中进一步图示的,示例系统700使得能够当在个人计算机(pc)、电视设备和/或移动设备上运行应用程序时实现用于无缝用户体验的普遍存在的环境。当在利用应用程序、播放视频游戏、观看视频等的同时从一个设备过渡至下一设备时,服务和应用程序在全部三个环境中基本上类似地运行以实现共同的用户体验。

在示例系统700中,通过中央计算设备将多个设备互连。中央计算设备可以在多个设备的本地,或者可以位于远离多个设备处。在一个实施例中,中央计算设备可以是通过网络、因特网或其它数据通信链路连接到多个设备的一个或多个服务器计算机的云。

在一个实施例中,此互连架构使得能够跨多个设备输送功能以向多个设备的用户提供共同且无缝的体验。多个设备中的每一个可以具有不同的物理要求和能力,并且中央计算设备使用平台来使得能够向设备输送针对该设备量身定制且对于所有设备而言共同的体验。在一个实施例中,创建一类目标设备并针对一般类别的设备量身定制体验。可以由设备的物理特征、使用类型或其它共同特性来定义一类设备。

在各种实现方式中,计算设备702可采取各种不同的配置,诸如用于计算机714、移动装置716以及电视718用途。这些配置中的每一个包括可以具有大体上不同的构造和能力的设备,并且因此可根据不同设备类别中的一个或多个来配置计算设备702。例如,可以将计算设备702实现为包括个人计算机、桌面型计算机、多屏幕计算机、膝上型计算机、上网本等的计算机714类的设备。

还可以将计算设备702实现为包括移动设备(诸如移动电话、便携式音乐播放器、便携式游戏设备、平板计算机、多屏幕计算机等)的移动装置716类的设备。还可以将计算设备702实现为电视718类的设备,其包括具有或连接到非正式观看环境中的一般地较大屏幕的设备。这些设备包括电视、机顶盒、游戏控制台等。

本文所述的技术可以被计算设备702的这些各种配置支持,并且不限于本文所述的技术的特定示例。此功能还可全部或者部分地通过使用分布式系统(诸如如下所述的经由平台722通过“云”720)来实现。

云720包括和/或表示用于资源724的平台722。平台722将云720的硬件(例如,服务器)和软件资源的底层功能进行抽象。资源724可以包括当计算机处理在远离计算设备702的服务器上被执行时可以利用的应用程序和/或数据。资源724还可以包括通过因特网和/或通过诸如蜂窝式或wi-fi网络之类的订户网络提供的服务。

平台722可以将资源和功能进行抽象以将计算设备702与其它计算设备相连。平台722还可以用于将资源的分级进行抽象以针对遇到的对经由平台722实现的资源726的需求提供相应水平的分级。因此,在互连设备实施例中,本文所述的功能的实现可以遍布于系统700。例如,可部分地在计算设备702上以及经由将云720的功能进行抽象的平台722来实现该功能。

结论

虽然已经用特定于结构特征和/或方法动作的语言描述了示例实现方式,但将理解的是在所附权利要求中定义的实现方式不一定局限于所述的特定特征或动作。相反地,这些特定特征和动作是作为实现要求保护的特征的示例形式而公开的。

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