CN106062689A - 知晓上下文的命令 - Google Patents

知晓上下文的命令 Download PDF

Info

Publication number
CN106062689A
CN106062689A CN201580011899.XA CN201580011899A CN106062689A CN 106062689 A CN106062689 A CN 106062689A CN 201580011899 A CN201580011899 A CN 201580011899A CN 106062689 A CN106062689 A CN 106062689A
Authority
CN
China
Prior art keywords
context
application
command
computer
command set
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.)
Pending
Application number
CN201580011899.XA
Other languages
English (en)
Inventor
A·尚卡尔
B·斯瓦米纳坦
R·帕拉萨纳
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 CN106062689A publication Critical patent/CN106062689A/zh
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • 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
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L69/00Network arrangements, protocols or services independent of the application payload and not provided for in the other groups of this subclass
    • H04L69/30Definitions, standards or architectural aspects of layered protocol stacks
    • H04L69/32Architecture of open systems interconnection [OSI] 7-layer type protocol stacks, e.g. the interfaces between the data link level and the physical level
    • H04L69/322Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions
    • H04L69/329Intralayer communication protocols among peer entities or protocol data unit [PDU] definitions in the application layer [OSI layer 7]

Landscapes

  • Engineering & Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Computer Security & Cryptography (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

客户端设备标识应用的当前上下文,并将该上下文发送给服务器上的命令组件。客户端设备接收对该上下文有效的一组命令,并在客户端设备上显示该命令。当接收到改变上下文的用户输入时,可以基于从服务器接收到的命令集本地地计算一个新的命令集,或者新的上下文可被发送给服务器以接收新的命令集。

Description

知晓上下文的命令
背景
计算机***当前被广泛应用。许多计算机***是相当大的,并且具有大量的页面、表单、或其他显示表面。
例如,一些这样的计算机***包括业务***。业务***可包括例如企业资源规划(ERP)***、客户关系管理(CRM)***、业务线(LOB)***等。这些类型的***可具有数千个不同的表单,每一表单具有许多不同的控件。控件可具有可由用户致动以执行操作的命令(或命令输入机制)。
事实上,业务***中的几乎每一个用户界面都具有各种不同类型的命令。命令基于业务***的上下文而改变。例如,如果用户正在查看一个机会表单,该表单可显示允许用户编辑或删除机会记录的命令。如果用户选择机会记录内的列表或网格中的一个给定的行项目,则可为用户提供额外的命令,这些额外命令允许用户执行与该行项目有关的其他操作。这些额外的命令被提供是因为底层应用的上下文发生了改变。用户不再简单地审阅机会记录,而是用户现在已经选择了一个列表或网格项目。
目前,所有的命令都被硬编码在它们所生成于的各种页面上。因此,几乎没有一种机制可用来扩展或以其它方式定制给定页面上的命令而无需大量的编码。
提供以上讨论仅用作一般的背景信息,并不旨在用作帮助来确定所要求保护的主题的范围。
概述
客户端设备标识应用的当前上下文,并将该上下文发送给服务器上的命令组件。客户端设备接收对该上下文有效的一组命令,并在客户端设备上显示该命令。当接收到改变上下文的用户输入时,可以基于从服务器接收到的命令集本地地计算一个新的命令集,或者新的上下文可被发送给服务器以接收新的命令集。
提供本概述以便以简化的形式介绍以下在详细描述中进一步描述的一些概念。本概述并非旨在标识出要求保护的主题的关键特征或必要特征,亦非旨在用作辅助确定要求保护的主题的范围。所要求保护的主题不限于解决在背景中提及的任何或所有缺点的实现。
附图简述
图1A和1B(统称为图1)示出一个说明性业务***架构的框图。
图2是解说图1中所示的命令标识器***的操作的一个实施例的流程图。
图2A-2D是解说命令如何随着上下文而改变的示例性用户界面显示。
图3是解说客户端设备的呈现组件正呈现给定上下文的命令的一个实施例的流程图。
图4是被部署在云计算架构中的图1的架构的框图。
图5-9示出了移动设备的各实施例。
图10是一个说明性计算环境的框图。
详细描述
图1A和1B(统称为图1)示出包括一个说明性业务***100的业务***架构90的框图。业务***100被示为正生成用户界面显示102,用户界面显示102可包括命令104以及其他的用户输入机制106。用户108与用户界面显示102交互(诸如通过命令和其他用户输入机制)以便与业务***100交互并且操纵业务***100。
业务***100说明性地包括处理器110、数据存储112、应用组件114、用户界面组件116以及命令标识器***118。它还可包括其它组件120。
数据存储112本身说明性地包括实体122、过程124、应用126、工作流128以及其他的数据记录130。实体122说明性地描述并定义了业务***100内的实体。例如,客户实体描述并定义客户。供应商实体描述并定义供应商。库存项实体描述并定义库存的项。订单实体描述并定义购买订单。这一列表仅仅是可在业务***100内被定义的各种不同类型的实体的一个小的示例。
应用126是说明性的业务应用,诸如总帐应用、其他会计应用、库存跟踪应用、跟踪机会的应用、以及其他业务应用的主机。应用组件114说明性地运行应用126,应用126可包括业务过程124和工作流128。过程124和工作流128说明性地运行在业务数据实体122和其他业务记录130上以允许用户108在业务***100内执行他或她的任务。过程和工作流可以是自动的、半自动的、或手动的。
用户界面组件116或者自行或者在业务***100中的其他项的控制下说明性地生成用户界面显示102。
命令标识器***118说明性地包括上下文标识器组件132、命令标识器组件134、合并组件136、命令数据存储138,并且它还可包括其他项140。图1示出用户108可使用客户端设备142来与业务***100交互。这一交互可或者通过网络144或者直接进行。
在图1中示出的实施例中,客户端设备142说明性地包括处理器146、数据存储148、用户界面组件150以及呈现组件152。它还可包括其它项154。
在更详细地描述客户端标识器***118和客户端设备142的操作之前,将提供简要的概览。用户108说明性地是访问业务***100中的业务应用126中的一个或多个的用户。业务应用说明性地提供由呈现组件152呈现为用户界面显示102的信息,用户界面显示102包括命令104以及其他的用户输入机制106。为了以一种可扩展的方式呈现命令104,呈现组件152标识用户108正使用的特定应用的上下文并且将该上下文信息156发送给命令标识器***118。上下文标识器组件132标识应用的特定上下文并将其提供给命令标识器组件134。命令标识器组件134标识特定上下文下的有效命令集,并且将命令158提供回给呈现组件152,在呈现组件152,命令158被呈现为用户界面显示102上的命令104。因此,有效命令集可容易地通过修改命令存储128来扩展或定制。
图2是更详细地解说***118的操作的一个实施例的流程图。***118首先接收指示用户正访问业务***100的用户输入。这由图2的框160指示。这可通过提供认证信息(诸如用户名和密码)162或通过提供其他信息164来进行。
当呈现组件152正准备呈现用户102正访问的业务应用之一的页面时,它发送上下文信息156给***118中的上下文标识器组件132。接收指示上下文的上下文信息在图2中由框166指示。上下文信息可指示各种各样的不同的上下文。例如,给定页面可具有提供某些命令的全局上下文168。其可具有提供其他命令的数据显示元素170。其可具有提供又一些其他命令的组件类型显示元素172或页面类型元素174以及自身包括其他命令的过程元素176。其可包括其他显示元素178,其他显示元素178还包括其他命令。
图2A示出指示这一点的一个示例性用户界面显示180。可以看到用户界面显示180说明性地是仪表盘显示。其包括总的在182处指示的全局命令集。全局命令适用于整个用户界面显示180。其还包括更具体的命令集184,该命令集184与用户界面显示180的特定显示类型(仪表盘显示类型)有关。显示180还包括数种不同的组件类型。例如,其包括包含与图表有关的命令186的图表显示组件。其还包括包含与网格有关的命令188的网格显示组件。当然,这些仅仅是示例。
图2B示出另一个示例性用户界面显示190。显示190是表单形式的显示。因此,其包括与图2A中所示的相同的全局命令182。然而,由于其是表单形式的显示,其还包括与表单有关的命令192。表单包括过程的显示,因而包括与过程有关的命令集194.在过程内是一组阶段。因此,显示还包括与阶段有关的命令集196。还可看到显示190包括网格,因而还包括与网格有关的命令198。
将会注意到,图2A和2B仅仅是用户界面显示的两个示例,它们每个基于显示的上下文而包括多个不同的有效命令集。因此,如果用户从图2A中所示的显示切换到图2B中所示,则上下文改变并且因此不同的有效命令集也改变。
再次参考图2的流程图,上下文标识器组件132基于从客户端设备上的呈现组件152接收的上下文信息156来标识特定上下文。标识具体上下文由图2中的框200指示。
一旦上下文被标识,命令标识器组件134使用该上下文来基于该上下文标识有效的一个或多个命令集。这由框202指示。组件134可用各种各样不同的方式来这么做。例如,其可基于上下文在命令数据存储138中搜索命令。这由框204指示。其还可使用试探法、或一组规则、或用其他方式来计算命令集。这由框206指示。其还可基于上下文以其他方式标识有效命令集,这由框208指示。
合并组件136随后针对给定页面执行任何期望的命令集合并。这由框210指示。作为示例,图2A和2B中所示的用户界面显示包括各种各样的不同上下文,每一个上下文具有相关联的有效命令。那些上下文包括全局上下文、与表单或仪表盘有关的上下文、与图表或网格有关的上下文、与过程有关的上下文以及甚至是与阶段有关的上下文。那些上下文中的每一个具有相关联的有效命令集,并且它们可被合并成一个命令集供传送给客户端设备142上的呈现组件152。合并同一页面上的多个上下文的命令集由框212指示。用其他方式来合并由框214指示。
一旦有效命令集被标识并合并(如果希望的话),它们被发送给客户端设备142。这由图2的框216指示。这可以用多种不同的方式来完成。
例如,在一个实施例中,***118简单地发送对于正呈现的显示屏幕上所存在的不同上下文而言有效的有效命令集。因此,随着上下文中的每次改变,在***118和客户端设备142之间进行往返以基于该新的上下文传送新的有效命令集。然而,在另一实施例中,一旦***118接收了上下文,其不仅发送该特定上下文集的有效命令集,也发送其他密切相关的上下文的有效命令集。例如,可能是当用户显示具有多个网格元素(例如,列表)的页面时,用户通常随后选择给定网格中的项中的一个或多个。这种情况下,上下文将改变并且有效命令集也可改变。然而,因为***118知道当前上下文是用于多个网格显示,因此其可将当前上下文集的有效命令与其中用户选择网格项之一的上下文的有效命令一起发送。在这种情况下,当上下文以此方式改变时,客户端设备142可处理上下文中的改变以标识新的有效命令集,而无需往返回到***118。本文构想了所有这些配置。仅发送所显示的页面上的当前上下文的命令集由图2中的框218指示,而发送这一上下文以及密切相关的上下文的多个命令集由图2中的框220指示。命令集也可用其它方式来发送,这由框222指示。
用户可随后改变上下文,如框224所指示的。如果是这样,则过程返回到框200,在此新的上下文被标识并且新的命令集被标识。将会注意到,虽然上下文是本地处理的,但是过程步骤是在设备142上执行的。然而,当到***118的回程被使用时,则过程步骤在***118处执行。
图2C和2D示出上下文(以及得到的有效命令集)可如何基于用户输入而改变的一个示例。在图2C中所示的实施例中,用户界面显示226显示网格元素。因此,有效命令是全局命令182和与网格有关的命令228和230。图2C示出用户已通过选择网格元素内的列表项(或网格项)232而改变了上下文。在这种情况下,全局命令182和一个网格命令集230保持不变。然而,被供应给用户的与网格有关的命令228现在已被改变为总的在234处所示的那些命令。也就是说,由于用户已选择了列表项232,用户现在被供应了用户可用来编辑、激活或解除激活所选择的列表项232的命令集。
图3是更详细地解说客户端设备142呈现命令时的操作的一个实施例的流程图。首先假设用户108正查看由业务***100中的应用126中的一个所生成的页面。这由图3的框240指示。呈现组件152标识该页面上所有组件的上下文。这由框242指示。客户端设备142随后将该上下文信息发送给命令标识器***118。这由框244指示。命令标识器***118随后计算命令集并且将命令集发送回给客户端设备142。从命令标识器***接收有效命令集由框246指示。呈现组件152随后呈现针对这一上下文的命令。这由框248指示。客户端设备142随后确定其是否已接收到改变上下文的用户输入。这由框250指示。如果是,则呈现组件152确定该上下文改变能否被本地处理。这由框252指示。
例如,并且如以上结合图2讨论的,***118可发送当前上下文的有效命令集,以及密切相关的上下文的有效命令集。如果该步骤完成,则客户端设备142可能够处理该上下文改变并且标识新的上下文的有效命令集。这由框254指示。然而,如果否,则过程返回至框242。
因此可看到,由于命令集是针对每一个新的上下文来计算的,因此命令基础架构(或命令标识器***118)提供了一种可扩展的基础架构,其中开发者可定义其自己的命令和对应的动作。基于其中命令被调用的上下文,不同的命令集被索取并返回。
还将注意到,在一个实施例中,***118仅仅规定命令是什么,以及命令可被不同地呈现在每一种不同类型的客户端设备142上。例如,它们可被呈现作为命令栏,它们可被呈现在命令条上、或者当用户在诸如智能手机之类的移动设备上划入命令时,它们可被呈现为边缘条(edgie)。
还应当注意,***118可在多个不同客户端设备间共享。因此,***118可以正为多个不同客户端设备计算不同的有效命令集,并且它们可基于呈现它们的具体设备而被不同地呈现在客户端设备上。
本讨论提到了处理器和服务器。在一个实施例中,处理器和服务器包括具有相关联的存储器和时序电路***(未分别示出)的计算机处理器。它们是它们所属的***或设备的功能部分,且由这些***中的其他组件或项的功能来激活并促成这些功能。
同样,讨论了多个用户界面显示。它们可以采取各种各样的不同形式且可具有布置于其上的各种各样的不同用户可致动输入机制。例如,用户可致动输入机制可以是文本框、复选框、图标、链接、下拉菜单、搜索框,等等。它们还可按各种不同的方式来致动。例如,可使用点击设备(诸如跟踪球或鼠标)来致动它们。可使用硬件按钮、开关、操纵杆或键盘、拇指开关或拇指垫等等来致动它们。还可使用虚拟键盘或其他虚拟致动器来致动它们。另外,在其上显示它们的屏幕是触敏屏的情况下,可以使用触摸手势来致动它们。同样,在显示它们的设备具有语音识别组件的情况下,可以使用语音命令来致动它们。
还讨论了多个数据存储。将注意,它们可各自被分解成多个数据存储。它们全部可位于访问它们的***的本地,全部可以是远程的,或一些可以在本地而其他在远程。本文构想了所有这些配置。
同样,附图示出了具有归属于每一框的功能的多个框。将注意,可以使用更少的框,使得功能由更少的组件来执行。同样,可以使用更多框,其中功能被分布在更多组件之间。
图4是图1中所示的架构100的框图,不同之处在于其元件被置于云计算架构500中。云计算提供了不要求终端用户知晓交付服务的***的物理位置或配置的计算、软件、数据访问和存储服务。在各个实施例中,云计算通过诸如因特网之类的广域网使用合适的协议来交付服务。例如,云计算提供者通过广域网交付应用,并且它们可以通过web浏览器或任何其他计算组件被访问。架构100的软件或组件以及相对应的数据可被存储在远程位置处的服务器上。云计算环境中的计算资源可以被整合在远程数据中心位置处或者它们可以是分散的。云计算基础结构可以通过共享数据中心来交付服务,即使在用户看来它们是单个访问点。因此,在此所述的组件和功能可以从使用云计算架构的远程位置处的服务提供者来提供。替代地,它们可以从常规的服务器中提供,或者它们可以直接地或以其他方式安装在客户端设备上。
本说明书旨在包括公共云计算和私有云计算两者。云计算(公共和私有两者)提供了基本无缝的资源联营以及对管理和配置底层硬件基础结构的降低的需求。
公共云由供应商管理,并且通常支持使用同一基础结构的多个消费者。此外,与私有云相反,公共云能够将终端用户从管理硬件中释放出来。私有云可由机构本身管理,并且基础结构通常不与其他机构共享。该机构在某种程度上仍然维护着硬件,诸如安装和维修等。
在图4中所示的实施例中,一些项与图1中所示的那些是类似的,并且它们被类似地编号。图4具体地示出业务***100可位于云502(可以是公共的、私有的或者其中某些部分是公共的而某些部分是私有的组合)中。因此,用户108使用用户设备142通过云502来访问那些***。
图4还描绘了云架构的另一实施例。图4示出还构想了体系结构100的某些元素被置于云502中而某些元素没有被置于云502中。作为示例,数据存储112和138可被置于云502的外部,并且通过云502来访问。在另一实施例中,命令标识器***118也在云502的外部。无论它们位于哪里,它们都可直接由设备142通过网络(广域网或局域网)访问,它们可由服务主存在远程站点处,或者它们可作为通过云来提供或通过驻留在云中的连接服务来访问的服务。本文构想了所有这些架构。
还要注意,***100或其部分可被置于各种不同的设备上。这些设备中的某些包括:服务器、台式计算机、膝上型计算机、平板计算机、或其他移动设备,诸如掌上计算机、蜂窝电话、智能电话、多媒体播放器、个人数字助理等。
图5是可被用作其中可部署本发明的***(或其部分)的用户或客户的手持式设备16的手持式或移动计算设备的一个说明性实施例的简化框图。图6-9是手持式或移动设备的示例。
图5提供了客户端设备16的组件的大体框图,该客户端设备16可以运行***100的组件或者与***100交互、或二者。在设备16中,提供了通信链路13,该通信链路允许手持设备与其它计算设备通信,并且在一些实施例中提供用于诸如通过扫描来自动接收信息的信道。通信链路13的示例包括:红外端口、串行/USB端口、诸如以太网端口之类的电缆网络端口、以及允许通过一个或多个通信协议的通信的无线网络端口,所述通信协议包括作为用于提供对网络的蜂窝接入的无线服务的通用分组无线服务(GPRS)、LTE、HSPA、HSPA+、以及其他3G和4G无线电协议、1Xrtt和短消息服务,并包括提供对网络的本地无线连接的802.11和802.11b(WiFi)协议、和蓝牙协议。
根据其他实施例,应用或***被容纳在连接到可移动安全数字(SD)卡接口15的SD卡上。SD卡接口15和通信链路13沿总线19与处理器17(也可实现来自图1的处理器110或146)进行通信,该总线19还连接到存储器21和输入/输出(I/O)组件23、以及时钟25和定位***27。
在一个实施例中,提供了I/O组件23以促成输入和输出操作。针对设备16的各个实施例的I/O组件23可以包括:输入组件,比如按钮、触摸传感器、多点触摸传感器、光学或视频传感器、语音传感器、触摸屏、邻近传感器、话筒、倾斜传感器以及重力开关;以及输出组件,比如显示设备、扬声器和或打印机端口。也可以使用其他I/O组件23。
时钟25说明性地包括输出时间和日期的真实时间时钟组件。时钟还可以说明性地为处理器17提供时序功能。
定位***27说明性地包括输出设备16的当前地理位置的组件。这例如可以包括全球定位***(GPS)接收机、LORAN***、航位推算***、蜂窝三角测量***或者其他定位***。这例如还可以包括生成所期望的地图、导航线路和其它地理功能的测绘软件或导航软件。
存储器21存储操作***29、网络设置31、应用33、应用配置设置35、数据存储37、通信驱动程序39以及通信配置设置41。存储器21可以包括所有类型的有形易失性和非易失性计算机可读存储器设备。其还可以包括计算机存储介质(下面描述)。存储器21存储计算机可读指令,所述指令在被处理器17执行时致使处理器根据所述指令执行计算机实现的步骤或功能。处理器17可以也被其他组件激活以促成它们的功能性。
网络设置31的示例包括诸如代理信息、因特网连接信息以及测绘之类的事物。应用配置设置35包括为特定企业或用户定制应用的设置。通信配置设置41提供了用于与其他计算机进行通信的参数,并且包括诸如GPRS参数、SMS参数、连接用户名和口令之类的项目。
应用33可以是之前已经存储在设备16上的应用或是在使用期间安装的应用,但是这些应用可以是操作***29的一部分,或者也可以在设备16之外被托管。
图6示出其中设备16是平板计算机600的一个实施例。在图6中,计算机600被示为具有用户界面显示屏602。屏幕602可以是触摸屏(使得来自用户手指的触摸姿势可以用于与应用交互)或者启用笔的界面,其接收来自笔或指示笔的输入。其还可以使用屏幕上虚拟键盘。当然,其还例如可以通过诸如无线链路或USB端口之类的合适的附连机制附连到键盘或其他用户输入设备。计算机600还可以说明性地接收语音输入。
图7和图8提供了可被使用的设备16的附加示例,但是也可以使用其它设备。在图7中,提供功能电话、智能电话或移动电话45作为设备16。电话45包括:一组小键盘47,其用于拨打电话号码;显示器49,其能够显示包括应用图像在内的图像、图标、网页、照片和视频;以及控制按钮51,其用于选择在显示器上示出的项目。电话包括天线53,该天线53用于接收诸如通用分组无线服务(GPRS)和1Xrtt之类的蜂窝电话信号以及短消息服务(SMS)信号。在一些实施例中,电话45还包括容纳安全数字(SD)卡57的SD卡槽55。
图8的移动设备是个人数字助理(PDA)59或多媒体播放器或平板计算设备等等(在此称为PDA 59)。PDA 59包括电感屏61,所述电感屏感测指示笔63(或其他指示器,诸如用户的手指)在该指示笔被置于屏幕之上时的位置。这允许用户在屏幕上选择、突出显示和移动项目以及绘图和书写。PDA 59还包括多个用户输入键或按钮(比如按钮65),其允许用户将显示器61上所显示的菜单选项或其他显示选项滚屏,并且允许用户在没有接触显示器61的情况下改变应用或选择用户输入功能。尽管未被示出,但是PDA 59可以包括允许与其他计算机进行无线通信的内置天线和红外发射机/接收机、以及允许与其他计算设备的硬件连接的连接端口。这样的硬件连接通常是通过经由串行或USB端口连接到其他计算机的支架来完成的。因此,这些连接是非网络连接。在一个实施例中,移动设备59还包括容纳SD卡69的SD卡槽67。
图9类似于图7,不同之处在于电话是智能电话71。智能电话71具有显示图标或磁贴或其他用户输入机制75的触敏显示器73。机制75可由用户用来运行应用、进行呼叫、执行数据传输操作,等等。一般而言,智能电话71被构建在移动操作***上且提供比功能电话更高级的计算能力和连接性。
注意,设备16的其他形式是可能的。
图10是其中可采用架构100或其一部分(作为示例)的计算环境的一个实施例。参考图10,用于实现一些实施例的示例性***包括计算机810形式的通用计算设备。计算机810的组件可以包括,但不限于,处理单元820(可以包括处理器110或146)、***存储器830、以及将包括***存储器在内的各种***组件耦合至处理单元820的***总线821。***总线821可以是若干类型的总线结构中的任一种,包括存储器总线或存储器控制器、***总线和使用各种总线架构中的任一种的局部总线。作为示例而非限制,这样的架构包括工业标准架构(ISA)总线、微通道架构(MCA)总线、增强型ISA(EISA)总线、视频电子技术标准协会(VESA)局部总线和***部件互连(PCI)总线(也称为夹层(Mezzanine)总线)。参考图1描述的存储器和程序可被部署在图10的对应部分中。
计算机810通常包括各种计算机可读介质。计算机可读介质可以是能由计算机810访问的任何可用介质,而且包含易失性和非易失性介质、可移动和不可移动介质。作为示例而非限制,计算机可读介质可包括计算机存储介质和通信介质。计算机存储介质不同于且不包括已调制数据信号或载波。计算机存储介质包括硬件存储介质,该硬件存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法和技术实现的易失性和非易失性、可移动和不可移动介质。计算机存储介质包括,但不限于,RAM、ROM、EEPROM、闪存或其它存储器技术、CD-ROM、数字多功能盘(DVD)或其它光盘存储、磁带盒、磁带、磁盘存储或其它磁性存储设备、或能用于存储所需信息且可以由计算机810访问的任何其它介质。通信介质通常具体化计算机可读指令、数据结构、程序模块或传输机制中的其他数据,并包括任何信息递送介质。术语“已调制数据信号”是指使得以在信号中编码信息的方式来设置或改变其一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接线连接之类的有线介质,以及诸如声学、RF、红外及其他无线介质之类的无线介质。上述任何组合也应该包括在计算机可读的介质范围内。
***存储器830包括易失性和/或非易失性存储器形式的计算机存储介质,如只读存储器(ROM)831和随机存取存储器(RAM)832。包含诸如在启动期间帮助在计算机810内的元件之间传输信息的基本例程的基本输入/输出***833(BIOS)通常存储在ROM 831中。RAM832通常包含处理单元820可立即访问和/或当前正在操作的数据和/或程序模块。作为示例而非限制,图10例示出了操作***834、应用程序835、其它程序模块836和程序数据837。
计算机810还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图10示出了从不可移动、非易失性磁介质中读取或向其写入的硬盘驱动器841,从可移动、非易失性磁盘852中读取或向其写入的磁盘驱动器851,以及从诸如CD ROM或其他光学介质等可移动、非易失性光盘856中读取或向其写入的光盘驱动器855。可在示例性操作环境中使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于,磁带盒、闪存卡、数字多功能盘、数字录像带、固态RAM、固态ROM等。硬盘驱动器841通常通过诸如接口840之类的不可移动存储器接口连接到***总线821,并且磁盘驱动器851和光盘驱动器855通常通过诸如接口850之类的可移动存储器接口连接到***总线821。
作为替换或补充,本文所述的功能可至少部分地由一个或多个硬件逻辑组件来执行。例如、但非限制,可使用的硬件逻辑组件的说明性类型包括现场可编程门阵列(FPGA)、程序专用的集成电路(ASIC)、程序专用的标准产品(ASSP)、片上******(SOC)、复杂可编程逻辑器件(CPLD)、等等。
上文讨论并在图10中示出的驱动器及其相关联的计算机存储介质为计算机810提供了对计算机可读指令、数据结构、程序模块和其它数据的存储。例如,在图10中,硬盘驱动器841被示为存储操作***844、应用程序845、其它程序模块846和程序数据847。注意,这些组件可与操作***834、应用程序835、其它程序模块836和程序数据837相同,也可与它们不同。在此操作***844、应用程序845、其它程序模块846以及程序数据847被给予了不同的编号,以至少说明它们是不同的副本。
用户可以通过诸如键盘862、话筒863以及诸如鼠标、跟踪球或触摸垫等定点设备861等输入设备来将命令和信息输入至计算机810中。其它输入设备(未示出)可以包括操纵杆、游戏手柄、圆盘式卫星天线、扫描仪等。这些以及其它输入设备通常通过耦合到***总线的用户输入接口860连接到处理单元820,但也可通过诸如并行端口、游戏端口或通用串行总线(USB)之类的其它接口和总线结构来连接。视觉显示器891或其他类型的显示设备也经由诸如视频接口890之类的接口连接至***总线821。除了监视器以外,计算机还可包括诸如扬声器897和打印机896之类的其它***输出设备,它们可通过输出***接口895来连接。
计算机810使用到诸如远程计算机880等一个或多个远程计算机的逻辑连接在网络化环境中操作。远程计算机880可以是个人计算机、手持设备、服务器、路由器、网络PC、对等设备或其它常见的网络节点,且一般包括以上关于计算机810描述的多个或所有的元件。图10中所示的逻辑连接包括局域网(LAN)871和广域网(WAN)873,但也可以包括其他网络。此类联网环境在办公室、企业范围的计算机网络、内联网和因特网中是常见的。
当在LAN联网环境中使用时,计算机810通过网络接口或适配器870连接到LAN871。当在WAN联网环境中使用时,计算机810通常包括调制解调器872或用于通过诸如因特网等WAN 873建立通信的其它手段。调制解调器872可以是内置的或外置的,可经由用户输入接口860或其它适当的机制连接到***总线821。在联网环境中,相关于计算机810所示的程序模块或其部分可被存储在远程存储器存储设备中。作为示例而非限制,图10示出了远程应用程序885驻留在远程计算机880上。应当理解,所示的网络连接是示例性的,并且可使用在计算机之间建立通信链路的其它手段。
还应注意,本文描述的不同实施例可以按不同的方式来组合。即,一个或多个实施例的各部分可以与一个或多个其他实施例的各部分组合在一起。本文中构想了所有这些。
示例1是一种计算机实现的方法,包括:
基于从客户端设备接收的上下文信息标识计算机***上下文;
基于所述计算机***上下文标识有效命令集;以及
将所述有效命令集发送给所述客户端设备。
示例2是示例1所述的计算机实现的方法并且进一步包括:
从所述客户端设备接收指示所述计算机***上下文的上下文信息。
示例3是一个或多个前述示例的计算机实现的方法,其中所述计算机***包括业务***,所述计算机***上下文包括所述业务***内的上下文,并且其中标识有效命令集包括:
基于所述业务***内的上下文来标识有效业务***命令集。
示例4是一个或多个前述示例的计算机实现的方法并且进一步包括:
基于所标识的所述业务***内的上下文来标识多个不同上下文;以及
标识多个不同有效命令集,所述多个不同上下文中的每一个上下文对应一个有效命令集。
示例5是一个或多个前述示例的计算机实现的方法并且进一步包括:
将所述多个不同有效命令集发送给所述客户端设备。
示例6是一个或多个前述示例的计算机实现的方法,其中标识有效命令集包括:
基于所述上下文信息搜索命令集的数据存储。
示例7是一个或多个前述示例的计算机实现的方法,其中所述上下文信息指示所述客户端设备上的业务***的显示页面的上下文,并且其中标识多个不同有效命令集包括:
标识针对所显示页面上的多个不同上下文中的每一个上下文的命令集;
将所显示页面上的多个不同上下文中的每一个上下文的命令集进行合并;以及
将经合并的命令集发送给所述客户端设备。
示例8是一个或多个前述示例的计算机实现的方法,其中标识计算机***上下文包括:
标识全局计算机***上下文、数据上下文、页面类型上下文、业务过程上下文、以及组件类型上下文中的一者或多者。
示例9是一种计算机***,包括:
运行应用的应用组件;
基于所述应用的上下文来标识要被呈现的命令集的命令标识器***;以及
计算机处理器,所述计算机处理器是所述***的功能部件且由所述应用组件和所述命令标识器致动以促成运行所述应用并且标识所述命令集。
示例8是一个或多个前述示例的计算机***,其中命令标识器***包括:
上下文标识器组件,所述上下文标识器组件接收指示所述应用的呈现页面的上下文的上下文信息,并且基于所述上下文信息来标识所述应用的呈现页面的上下文。
示例11是一个或多个前述示例的计算机***,其中应用包括业务应用。
示例12是一个或多个前述示例的计算机***,其中上下文标识器组件基于所述上下文信息来标识上下文以及一组相关上下文。
示例13是一个或多个前述示例的计算机***,其中命令标识器标识对应于所述上下文和所述一组相关上下文中的每一个的不同的命令集。
示例14是一个或多个前述示例的计算机***,其中命令标识器标识对应于所呈现的页面上的多个显示元素中的每一个的上下文的不同的命令集。
示例15是一个或多个前述示例的计算机***,其中命令标识器***包括:
合并不同命令集的合并组件。
示例16是一个或多个前述示例的计算机***并且进一步包括:
存储不同命令集供命令标识器***访问的命令集数据存储。
示例17是一种计算机实现的方法,包括:
将指示应用的上下文的上下文信息发送给命令标识器***;
接收对应于来自所述命令标识器***的应用的上下文的命令集;以及
将所述命令集呈现在所述应用中。
示例18是一个或多个前述示例的计算机实现的方法并且进一步包括:
标识应用的显示页面上的多个不同组件中的每一个的上下文以获得上下文信息。
示例19是一个或多个前述示例的计算机实现的方法,其中接收命令集包括:
基于上下文信息接收针对多个不同上下文的多个不同命令集;
接收将应用的上下文改变为经修改的上下文的用户输入;
确定经修改的上下文是否是多个不同上下文中的一个;以及
如果是,则呈现对应于经修改的上下文的命令。
示例20是一个或多个前述示例的计算机实现的方法并且进一步包括:
如果经修改的上下文不是多个不同上下文中的一个,则将指示经修改的上下文的上下文信息发送给命令标识器***以获得对于经修改的上下文有效的命令集。
尽管用结构特征和/或方法动作专用的语言描述了本主题,但可以理解,所附权利要求书中定义的主题不必限于上述具体特征或动作。更确切而言,上述具体特征和动作是作为实现权利要求的示例形式公开的。

Claims (10)

1.一种计算机***,包括:
运行应用的应用组件,所述应用具有多个不同上下文;
命令标识器***,所述命令标识器***获得所述应用的特定上下文并且基于所述应用的特定上下文来标识要被呈现的命令集,并且控制所述应用组件呈现对应于所述命令集的用户输入机制;以及
计算机处理器,所述计算机处理器是所述***的功能部件且由所述应用组件和所述命令标识器***致动以促成运行所述应用并且标识所述命令集。
2.如权利要求1所述的计算机***,其特征在于,所述命令标识器***包括:
上下文标识器组件,所述上下文标识器组件接收指示所述应用的呈现页面的上下文的上下文信息,并且基于所述上下文信息将所述应用的呈现页面的上下文标识为所述特定上下文。
3.如权利要求2所述的计算机***,其特征在于,所述上下文标识器组件基于所述上下文信息来标识所述特定上下文以及一组相关上下文;并且其中所述命令标识器标识对应于所述特定上下文和所述一组相关上下文中的每一个的不同的命令集。
4.一种计算机实现的方法,包括:
从客户端设备接收指示计算机***上下文的上下文信息;
基于从所述客户端设备接收的上下文信息检测所述计算机***上下文;
基于所述计算机***上下文标识有效命令集;以及
将所述有效命令集发送给所述客户端设备。
5.如权利要求4所述的计算机实现的方法,其特征在于,所述计算机***包括应用,所述计算机***上下文包括呈现在所述应用内的表单的上下文,并且其中标识有效命令集包括:
基于所述应用内的表单的上下文来标识有效应用命令集。
6.如权利要求5所述的计算机实现的方法,其特征在于,进一步包括:
基于所标识的所述应用内的上下文来标识多个不同上下文;以及
标识多个不同有效命令集,所述多个不同上下文中的每一个上下文对应一个有效命令集。
7.如权利要求6所述的计算机实现的方法,其特征在于,进一步包括:
将所述多个不同有效命令集发送给所述客户端设备。
8.如权利要求6所述的计算机实现的方法,其特征在于,所述上下文信息指示所述客户端设备上的应用的显示页面的上下文,并且其中标识多个不同有效命令集包括:
标识针对所显示页面上的多个不同上下文中的每一个上下文的命令集;
将所显示页面上的多个不同上下文中的每一个上下文的命令集进行合并;以及
将经合并的命令集发送给所述客户端设备。
9.如权利要求4所述的计算机实现的方法,其特征在于,检测计算机***上下文包括:
检测全局计算机***上下文、数据上下文、页面类型上下文、业务过程上下文、以及组件类型上下文中的一者或多者。
10.一种计算机实现的方法,包括:
将指示应用的上下文的上下文信息发送给命令标识器***;
接收对应于来自所述命令标识器***的应用的上下文的命令集;以及
将所述命令集呈现在所述应用中。
CN201580011899.XA 2014-03-03 2015-02-27 知晓上下文的命令 Pending CN106062689A (zh)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201461947186P 2014-03-03 2014-03-03
US61/947,186 2014-03-03
US14/303,082 US9804749B2 (en) 2014-03-03 2014-06-12 Context aware commands
US14/303,082 2014-06-12
PCT/US2015/017880 WO2015134302A1 (en) 2014-03-03 2015-02-27 Context aware commands

Publications (1)

Publication Number Publication Date
CN106062689A true CN106062689A (zh) 2016-10-26

Family

ID=54006766

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201580011899.XA Pending CN106062689A (zh) 2014-03-03 2015-02-27 知晓上下文的命令

Country Status (4)

Country Link
US (1) US9804749B2 (zh)
EP (1) EP3114550A1 (zh)
CN (1) CN106062689A (zh)
WO (1) WO2015134302A1 (zh)

Families Citing this family (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
USD758435S1 (en) * 2014-04-30 2016-06-07 Trumpf Gmbh + Co. Kg Portion of a display panel with a computer icon
IN2015CH03967A (zh) * 2015-07-31 2015-08-14 Wipro Ltd
US10514826B2 (en) 2016-02-08 2019-12-24 Microsoft Technology Licensing, Llc Contextual command bar
US11409432B2 (en) 2020-12-23 2022-08-09 Microsoft Technology Licensing, Llc Pen command for ink editing

Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1790243A (zh) * 2004-08-16 2006-06-21 微软公司 用于显示可选择软件功能控件的命令用户界面
CN101013954A (zh) * 2005-12-14 2007-08-08 阿尔卡特朗讯公司 用于被管理对象的类属列表的图形用户界面
EP2381353A1 (en) * 2010-04-23 2011-10-26 Research In Motion Limited Graphical context short menu
US20110302487A1 (en) * 2010-06-08 2011-12-08 Microsoft Corporation Web Client Command Infrastructure Integration into a Rich Client Application
US20130019182A1 (en) * 2011-07-14 2013-01-17 Microsoft Corporation Dynamic context based menus

Family Cites Families (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6493006B1 (en) 1996-05-10 2002-12-10 Apple Computer, Inc. Graphical user interface having contextual menus
US6307544B1 (en) 1998-07-23 2001-10-23 International Business Machines Corporation Method and apparatus for delivering a dynamic context sensitive integrated user assistance solution
US7512899B1 (en) * 1999-03-05 2009-03-31 Microsoft Corporation Method and apparatus for a unified user interface
WO2005020021A2 (en) * 2003-08-22 2005-03-03 Idx Systems Corporation Information system supporting customizable user interfaces and process flows
US7895531B2 (en) 2004-08-16 2011-02-22 Microsoft Corporation Floating command object
US7438215B2 (en) 2005-09-19 2008-10-21 Silverbrook Research Pty Ltd Printing location-based information using a mobile device
US20070238489A1 (en) 2006-03-31 2007-10-11 Research In Motion Limited Edit menu for a mobile communication device
US8243017B2 (en) 2006-09-11 2012-08-14 Apple Inc. Menu overlay including context dependent menu icon
US9213466B2 (en) 2009-07-20 2015-12-15 Apple Inc. Displaying recently used functions in context sensitive menu
US9026944B2 (en) 2011-07-14 2015-05-05 Microsoft Technology Licensing, Llc Managing content through actions on context based menus
US20130019175A1 (en) 2011-07-14 2013-01-17 Microsoft Corporation Submenus for context based menu system
US8910183B2 (en) 2011-08-19 2014-12-09 Sap Se Access to context information in a heterogeneous application environment
US8954330B2 (en) 2011-11-28 2015-02-10 Microsoft Corporation Context-aware interaction system using a semantic model
US9310888B2 (en) * 2012-03-16 2016-04-12 Microsoft Technology Licensing, Llc Multimodal layout and rendering

Patent Citations (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1790243A (zh) * 2004-08-16 2006-06-21 微软公司 用于显示可选择软件功能控件的命令用户界面
CN101013954A (zh) * 2005-12-14 2007-08-08 阿尔卡特朗讯公司 用于被管理对象的类属列表的图形用户界面
EP2381353A1 (en) * 2010-04-23 2011-10-26 Research In Motion Limited Graphical context short menu
US20110302487A1 (en) * 2010-06-08 2011-12-08 Microsoft Corporation Web Client Command Infrastructure Integration into a Rich Client Application
US20130019182A1 (en) * 2011-07-14 2013-01-17 Microsoft Corporation Dynamic context based menus

Also Published As

Publication number Publication date
US20150248201A1 (en) 2015-09-03
US9804749B2 (en) 2017-10-31
EP3114550A1 (en) 2017-01-11
WO2015134302A1 (en) 2015-09-11

Similar Documents

Publication Publication Date Title
CN106104459A (zh) 表单上自适应的基于键的导航
CN105723337B (zh) 用于从交互式开发环境递增地编译软件制品的方法和***
CN105264492B (zh) ***行为的自动发现
CN105830019B (zh) 用于基本模型定制的集成环境
CN106605234B (zh) 使用近场通信与许可控制共享内容
CN105531658A (zh) 角色定制的工作空间
CN106233252A (zh) 用于定制软件的动态更新安装器
CN105765539A (zh) 具有自动生成的虚拟环境的用户支持体验
CN106471517A (zh) 对显示元素的因用户而异的可视化
CN104508678A (zh) 商业数据***中针对承租人的安全和数据隔离
CN105612495A (zh) 在计算机***中安装所选更新之后自动解决冲突
CN105612496A (zh) 基于存储的生命周期信息来自动推荐更新
CN105339957A (zh) 显示实体的不同视图
CN106062789A (zh) 用于在事务中捕捉信息的图像标记
CN106133697A (zh) 具有分支和门控的便携式业务逻辑
CN105408922A (zh) 过程流基础结构和配置界面
CN106663090A (zh) 在编译期间将呈现元数据转换成浏览器可渲染格式
CN105229614A (zh) 多承租人数据中心内的诊断存储
CN105229679A (zh) 生存周期产品分析
CN107533696A (zh) 自动地将内容与人员相关
CN106062689A (zh) 知晓上下文的命令
CN105247547A (zh) 自动资源调度
CN106164851B (zh) 基于对已实现的过程进行过程建模的计算机***的自动配置
CN104737124A (zh) 用于提交服务的业务元数据的门户
CN106062793B (zh) 已被呈现的企业内容的检索

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20161026

WD01 Invention patent application deemed withdrawn after publication