CN110083458B - 用于通过应用间通信来促进任务完成的系统和方法 - Google Patents

用于通过应用间通信来促进任务完成的系统和方法 Download PDF

Info

Publication number
CN110083458B
CN110083458B CN201910007126.4A CN201910007126A CN110083458B CN 110083458 B CN110083458 B CN 110083458B CN 201910007126 A CN201910007126 A CN 201910007126A CN 110083458 B CN110083458 B CN 110083458B
Authority
CN
China
Prior art keywords
entity
action
application
target application
definition
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.)
Active
Application number
CN201910007126.4A
Other languages
English (en)
Other versions
CN110083458A (zh
Inventor
A.库马
S.萨胡卡
蒋昭玮
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
Priority to CN201910007126.4A priority Critical patent/CN110083458B/zh
Publication of CN110083458A publication Critical patent/CN110083458A/zh
Application granted granted Critical
Publication of CN110083458B publication Critical patent/CN110083458B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/48Program initiating; Program switching, e.g. by interrupt
    • G06F9/4806Task transfer initiation or dispatching
    • G06F9/4843Task transfer initiation or dispatching by program, e.g. task dispatcher, supervisor, operating system
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F9/00Arrangements for program control, e.g. control units
    • G06F9/06Arrangements for program control, e.g. control units using stored programs, i.e. using an internal store of processing equipment to receive or retain programs
    • G06F9/46Multiprogramming arrangements
    • G06F9/54Interprogram communication

Abstract

除了其它方面之外,提供了用于通过应用间通信促进任务完成和/或用于针对上下文感知任务执行而注册目标应用的一个或多个技术和/或系统。也就是说,当前应用可显示包括实体的内容(例如,地图绘制应用可显示饭店实体)。可暴露能够对实体执行的一个或多个动作(例如,预订桌位动作)。响应于动作的选择,可呈现能够对实体执行动作的一个或多个目标应用。响应于目标应用的选择,可将用于实体和/或动作的上下文信息传递至目标应用,使得可在上下文相关状态下启动目标应用以促进任务的完成。例如,可将进餐应用启动成用于饭店实体的桌位预订表格。

Description

用于通过应用间通信来促进任务完成的系统和方法
本申请是申请日为2013/12/13、申请号为201380065290.1的中国专利申请的分案申请。
技术领域
概括地说,本公开内容涉及计算机应用之间的通信。
背景技术
许多用户利用诸如移动电话、平板设备和/或个人计算机之类的计算设备来执行各种类型的动作。在一个示例中,用户可向移动电话中输入语音命令“今天的新闻是什么”。移动电话可通过web浏览器为用户提供新闻网站搜索结果的列表。在另一示例中,用户可通过经由平板设备访问的搜索引擎来输入搜索查询“订购电影票”。搜索引擎可提供可被标记为与电影票有关的网站列表。用户可手动地寻找可提供电影信息的电影网站,所述电影信息诸如电影评论、电影播出时间和/或电影票订购服务。在发现订票服务之后,用户可提供由订票服务所请求的信息以便完成订购电影票的动作。遗憾的是,完成订购电影票的动作可能要求对特定电影订票app或网站进行定位、广泛的手动输入、搜索、试错(trial anderror)和/或冗余信息的输入。
发明内容
提供本发明内容是为了以简化形式来介绍下面在详细描述中进一步描述的概念的选择。本发明内容并不意图识别要求保护的主题的关键因素或本质特征,本发明内容也不意图用来限制要求保护的主题的范围。
除了其他方面以外,本文提供了用于通过应用间通信促进任务完成和/或用于针对上下文感知任务执行而注册目标应用的一个或多个系统和/或技术。在促进任务完成的某些实施例中,可识别被包括在当前应用的内容内的实体。该实体可包括个人实体、企业实体、消费者产品实体、时间实体、位置实体、对象实体和/或任何其他类型的实体。例如,社交网络应用可显示包括描述针对2013年的跑车型号(Sports Car Model)(X)的内容社交网络帖子,其可用来识别汽车实体(例如,社交网络帖子的内容可与汽车实体定义相匹配,所述汽车实体定义包括用来定义汽车实体和/或描述可对汽车实体执行的动作的一个或多个实体参数)。可以暴露可对实体执行的一个或多个动作。在示例中,社交网络应用可具有嵌入社交网络应用内的查看汽车评论动作。在另一示例中,可基于汽车实体而动态地识别汽车报价动作(例如,汽车实体定义可涉及汽车报价动作定义,所述汽车报价动作定义包括与用来对汽车实体执行汽车报价动作的信息相对应的一个或多个动作参数)。
响应于动作的选择,可基于与实体相关联的实体上下文和/或与动作相关联的动作上下文来确定用户实现任务的意图。例如,可基于汽车实体(例如,汽车实体定义和/或由社交网络应用提供的关于汽车实体的上下文信息,诸如型号名称和/或型号年份)和/或汽车报价动作(例如,汽车报价定义和/或由社交网络应用提供的关于汽车报价动作的上下文信息,诸如经销商位置、汽车构造选项、汽车折价信息等)来确定用户执行汽车报价动作的意图。可呈现(例如,通过操作系统用户界面,诸如共享侧边栏(share charm))能够对实体执行动作的一个或多个目标应用(例如,汽车贸易商应用)。
响应于目标应用的选择,可将实体上下文(例如,型号名称和/或型号年份)和/或动作上下文(例如,经销商位置、汽车构造选项、汽车折价信息等)传递至目标应用,使得目标应用根据实体上下文和/或动作上下文而启动以促进任务的完成。在示例中,可在上下文感知状态(例如,汽车报价表格)下打开汽车贸易商应用,其可包括从实体上下文和/或动作上下文中提取的至少某些信息(例如,与仅仅打开成非上下文的主页屏幕相反)。这样,用户可以通过汽车贸易商应用采用例如相对较少的用户输入、搜索、试错和/或冗余信息输入高效地执行汽车报价动作。
在针对上下文感知任务执行而注册目标应用的某些实施例中,可接收用以与目标应用建立数据契约的注册请求。该注册请求可包括由目标应用支持的实体和/或动作。例如,汽车爱好者应用可请求基于支持汽车实体、汽车报价动作和/或其他实体和/或动作的汽车爱好者应用而在该汽车爱好者应用与任务执行部件之间建立数据契约,所述任务执行部件诸如操作系统用户界面(例如,共享侧边栏)。这样,可生成与目标应用的数据契约。数据契约可指定目标应用能够对实体执行动作。
可保存用于实体的实体定义。该实体定义可包括定义实体的一个或多个实体参数。实体参数可指定该动作能够对实体执行。例如,汽车实体定义可包括用于汽车型号信息的第一实体参数、用于型号年份信息的第二实体参数、指定可以对汽车实体执行汽车报价动作的第三实体参数和/或其他实体参数。可保存用于动作的动作定义。该动作定义可包括定义动作的一个或多个动作参数。动作参数可指定用来执行动作的信息。例如,汽车报价动作定义可包括用于经销商位置信息的第一动作参数、用于汽车构造选项信息的第二动作参数和/或其他动作参数。这样,基于从当前应用提取的上下文信息,可使用汽车实体定义和/或汽车报价动作定义来促进由目标应用进行的任务执行。
为了实现前述和相关目的,以下描述和附图阐述了某些说明性方面和实施方式。这些指示了可以采用其中的一个或多个方面的各种方式中的仅几个方式。当结合附图考虑时,根据以下详细描述,本公开内容的其他方面、优点以及新颖特征将变得显而易见。
附图说明
图1是图示出通过应用间通信来促进任务完成的示例性方法的流程图。
图2是图示出用于保存用于实体的实体定义、用于动作的动作定义和/或与目标应用相关联的数据契约的示例性系统的部件框图。
图3A是图示出用于通过应用间通信来促进任务完成的示例性系统的部件框图。
图3B是图示出用于通过应用间通信来促进任务完成的示例性系统的部件框图。
图4A是图示出用于通过应用间通信来促进任务完成的示例性系统的部件框图。
图4B是图示出用于通过应用间通信来促进任务完成的示例性系统的部件框图。
图5是图示出针对上下文感知任务执行而注册目标应用的示例性方法的流程图。
图6是示例性计算设备可读介质的图示,所述示例性计算设备可读介质中可包括被配置成体现本文所阐述的规定(provision)中的一个或多个规定的处理器可执行指令。
图7图示出其中可实现本文所阐述的规定中的一个或多个规定的示例性计算环境。
具体实施方式
现在参考附图来描述要求保护的主题,其中,自始至终,一般使用相同的附图标记来指示相同元件。在以下描述中,出于说明的目的,阐述了许多特定细节以便提供要求保护的主题的理解。然而,可显而易见的是可在没有这些特定细节的情况下实施要求保护的主题。在其他实例中,以框图形式图示出结构和设备以便促进描述要求保护的主题。
由图1中的示例性方法100图示通过应用间通信来促进任务完成的实施例。在102处,该方法开始。在示例中,用户可能正在与当前应用(例如,社交网络应用、电子邮件应用、显示网站的web浏览器、地图绘制应用、视频游戏、本地安装的应用、云应用等)进行交互。当前应用可显示包括一个或多个实体的内容。例如,社交网络应用可通过用户提及的、该用户欣赏的特定饭店(诸如墨西哥酒馆(Mexican Cantina))而显示社交网络帖子。在示例中,可从内容中动态地识别饭店实体(例如,可解析该内容以识别实体候选,所述实体候选可与包括定义实体的一个或多个实体参数的实体定义相匹配,所述实体参数诸如饭店名称、位置、价格范围以及可对饭店实体执行的一个或多个动作,诸如预订桌位动作、查看菜单动作等)。在另一示例中,饭店实体可由社交网络应用预定义。这样,在104处,可识别被包括在当前应用的内容内的实体。
在106处,能够对实体执行的一个或多个动作可被暴露。在示例中,饭店实体定义可指定可对饭店实体执行的一个或多个动作,诸如预订桌位动作。预订桌位动作定义可包括指定用来执行预订桌位动作的信息一个或多个动作参数,诸如座位号、时间、饭店名称等。这样,可基于该实体动态地识别动作,并且可呈现该动作。在另一示例中,可将动作嵌入当前应用内(例如,当前应用的开发者可将功能嵌入当前应用内,当前应用可响应于用户选择实体而呈现动作)。
在108处,响应于动作(例如,预订桌位动作)的选择,可基于与实体相关联的实体上下文和/或与动作相关联的动作上下文来确定用户实现任务(例如,在墨西哥酒馆预订桌位)的意图。例如,实体上下文可包括用于饭店实体定义内指定的一个或多个实体参数的值,诸如作为饭店名称的墨西哥酒馆和作为位置的市中心(Downtown)。可从当前应用的内容中提取和/或可从实体定义中提取用于实体参数的值。动作上下文可包括用于在预订桌位动作定义内指定的一个或多个动作参数的值,诸如作为饭店名称的墨西哥酒馆和作为时间的8:00。
可识别能够对实体执行动作的一个或多个目标应用。例如,食品专家应用可具有与任务执行部件的数据契约。该数据契约可指定食品专家应用支持饭店实体和/或预订桌位动作。这样,在110处,可呈现能够对实体执行动作的一个或多个目标应用。在示例中,可通过当前应用来呈现目标应用。在另一示例中,可通过操作系统用户界面(例如,共享侧边栏)来呈现目标应用,所述目标应用可相对于当前应用(例如,并排地、覆盖等)显示。
响应于目标应用(例如,食品专家应用)的选择,在112处,可将实体上下文和/或动作上下文传递至目标应用,使得目标应用可根据实体上下文和/或动作上下文而启动以促进任务的完成。目标应用可包括显示网站的web浏览器、本地安装的应用、云应用或服务和/或可用于下载和/或安装的市场应用(例如,可提示用户从应用市场获得市场应用)。例如,可将可在本地安装的食品专家应用打开成上下文相关状态,其可包括与实体上下文和/或动作上下文相关联的至少某些信息(例如,可将食品专家应用打开成采用来自一个或多个实体参数和/或一个或多个动作参数的值填充的桌位预订表格)。在将上下文信息传递至目标应用的示例中,可使用操作系统通信模型来向目标应用传递实体上下文和/或动作上下文。在示例中,可在沉浸式查看状态(例如,基本上全屏状态)下启动目标应用。在另一示例中,可与当前应用并排地启动目标应用。在另一示例中,可在可与当前应用并排显示的覆盖界面(例如,用来显示应用的操作系统用户界面,诸如侧边栏)内启动目标应用。这样,用户可在没有过度搜索适当的功能和/或手动输入冗余信息的情况下高效地完成任务。一旦目标应用被启动,各种命令可被执行,诸如可将目标应用的显示过渡到当前应用和/或可将目标应用的显示过渡到包括可被选择用于任务完成的一个或多个目标应用的任务界面的后退命令。
在示例中,可保存实体动作日志(例如,数据库、日志文件、交互式用户界面等)。实体动作日志可包括一个或多个条目,所述条目包括与任务完成有关的信息,诸如对于动作的使用模式、对于动作的约定模式、动作被启动的次数、应用被启动的次数等。可提供用于用户选择加入或选择退出的选项以使任何这样的信息、活动、动作等被记录。例如,条目可指定动作是由目标应用对实体执行的。可以向第三方应用(例如,旅行应用的开发者)暴露实体动作日志。可生成任务完成部件与第三方应用之间的数据契约(例如,开发者可发送指示生成数据契约的期望的注册请求)。数据契约可指定第三方应用支持对实体执行动作。这样,第三方应用可以被注册为目标应用,以用于上下文感知任务的执行。在114处,该方法结束。
图2图示出被配置用于保存用于实体的实体定义、用于动作的动作定义和/或与目标应用相关联的数据契约的系统200的示例。系统200可包括定义部件202和/或契约部件208。可将定义部件202配置成生成用于实体的实体定义。例如,定义部件202可保存用于饭店实体的饭店实体定义204。饭店实体定义204可包括一个或多个实体参数,所述实体参数定义该实体和/或指定可对该实体执行的动作。例如,可在饭店实体定义204内指定饭店名称参数、饭店位置参数、饭店类型参数和/或其他实体参数。在示例中,可基于采用对于实体参数(例如,作为饭店名称的墨西哥酒馆、作为饭店位置的市中心等)中的一个或多个实体参数的值填充饭店实体定义来定义饭店实体的实例,诸如墨西哥酒馆实体。可在饭店实体定义204内指定一个或多个所支持的动作,诸如预订桌位动作、阅读评论动作、查看菜单动作和/或可对饭店实体执行的其他动作。可使用饭店实体定义204来生成用于饭店实体的实体上下文,以便促进任务完成(例如,实体上下文可包括在饭店实体定义204内指定的至少某些信息,其可被传递至目标应用,使得可将目标应用启动成用于任务完成的上下文相关状态)。
可将定义部件202配置成生成用于动作的动作定义。例如,定义部件202可保存用于预订桌位动作的预订桌位动作定义206。预订桌位动作定义206可包括一个或多个动作参数,所述运动参数定义动作和/或指定用来执行该动作的信息。例如,预订桌位动作定义206可包括饭店名称参数、饭店位置参数、电话号码参数、预订时间参数、聚会规模参数和/或用来执行预订桌位动作的其他动作参数。预订桌位动作定义206可用来生成用于预订桌位动作的动作上下文,以便促进任务完成(例如,动作上下文可包括在预订桌位动作定义206内指定的至少某些信息,其可被传递至目标应用,使得可将目标应用启动成用于任务完成的上下文相关状态)。
可将契约部件208配置成保存任务执行部件(例如,被配置成通过应用间通信来促进任务的完成)与一个或多个第三方应用之间的一个或多个数据契约。例如,契约部件208可生成用于旅行应用的数据契约210。数据契约210可指定旅行应用支持一个或多个实体(例如,饭店实体、汽车租赁实体、旅馆实体等)和/或一个或多个动作(例如,预订桌位动作、预订汽车动作、旅馆比较动作等)。这样,可将旅行应用210识别为能够对实体执行动作以便促进任务完成的目标应用。
图3A图示出被配置用于通过应用间通信来促进任务完成的系统300的示例。系统300可包括任务执行部件308(例如,编程模块、web服务、应用功能和/或操作系统用户界面,例如诸如共享侧边栏)。任务执行部件308可与当前应用相关联,诸如地图绘制应用302。地图绘制应用302可向用户提供内容(例如,图示出市中心内的墨西哥酒馆304和书店的局部地图)。可将任务执行部件308配置成识别被包括在地图绘制应用302的内容内的实体,诸如墨西哥酒馆实体。例如,任务执行部件308可使用与地图绘制应用302的内容相关联的上下文信息306以便识别实体定义仓库312内的饭店实体定义,其可用来定义墨西哥酒馆实体。任务执行部件308可以暴露能够对墨西哥酒馆实体执行的一个或多个动作。例如,任务执行部件308可通过任务界面320来呈现318查看菜单动作322和/或预订桌位动作328。在示例中,可将动作嵌入地图绘制应用302中(例如,由开发者预定义)。在另一示例中,可基于动作定义仓库314内的动作定义(例如,查看菜单动作定义、预订桌位动作定义等)来动态地识别动作。
可将任务执行部件308配置成识别动作的选择。在示例中,用户可选择查看菜单动作322。可将任务执行部件308配置成基于与实体相关联的实体上下文和/或与动作相关联的动作上下文来确定用户实现任务的意图310。例如,用户意图310可基于实体上下文(例如,与墨西哥酒馆实体相关联的上下文信息,其可能已经从与地图绘制应用302的内容相关联的上下文信息306中导出和/或从来自实体定义仓库312的饭店实体定义中导出)和/或动作上下文(例如,与查看菜单动作相关联的上下文信息,其可能已经从与地图绘制应用302的内容相关联的上下文信息306中导出和/或从来自动作定义仓库314的查看菜单动作定义中导出)来指示用户期望查看对于墨西哥酒馆304的菜单。可呈现能够对实体执行动作的一个或多个目标应用,诸如菜单r us(menus r us)应用324和/或食品专家应用326(例如,通过用户界面320来呈现318,所述用户界面320诸如地图绘制应用302内的用户界面或诸如操作系统用户界面之类的外部用户界面)。例如,菜单r us应用324和/或食品专家应用326可具有数据契约仓库316内的数据契约,其可指定这样的应用支持墨西哥酒馆实体和/或查看菜单动作324。在另一示例中,在选择预订桌位动作328的场合,可基于旅行应用330与任务执行部件308之间的、指示墨西哥酒馆实体和预订桌位动作328被旅行应用330支持的数据契约而通过任务界面320来呈现旅行应用330。这样,用户可选择目标应用,其可在上下文相关状态下启动以用于任务完成(例如,如图3B中所示)。
图3B图示出被配置用于通过应用间通信来促进任务完成的系统340的示例。可认识到的是,在示例中,系统340对应于图3A的系统300。例如,系统340可包括任务执行部件370。任务执行部件370可与当前应用相关联,所述当前任务诸如地图绘制应用(例如,图3A的302)。基于在地图绘制应用的内容内出现的实体,诸如墨西哥酒馆实体,包括可对墨西哥酒馆实体执行的一个或多个动作和/或能够对墨西哥酒馆实体执行动作的一个或多个应用的任务界面(例如,图3A的320)可能已经被呈现。
可将任务执行部件370配置成接收应用的选择342,诸如与对于墨西哥酒馆实体的预订桌位动作(例如,图3A的328)相关联的旅行应用330(例如,用户可能已在图3A的任务界面320内选择旅行应用330)。任务执行部件370可基于来自地图绘制应用(例如,图3A的302)和/或来自预订桌位动作定义的上下文信息(例如,图3A的306)来识别预订桌位动作上下文344,所述预订桌位动作定义包括对应于被用来执行预订桌位动作(例如,图3A的328)的信息的一个或多个动作参数。预订桌位动作内容344可包括用来执行预订桌位动作的信息,诸如饭店名称、饭店位置、聚会规模等。任务执行部件370可基于来自地图绘制应用(例如,图3A的302)和/或来自饭店实体定义的上下文信息(例如,图3A的306)来识别定义墨西哥酒馆实体的饭店实体上下文346,所述饭店实体定义包括与描述墨西哥酒馆实体的信息相对应的一个或多个实体参数。
任务执行部件370可将预订桌位动作上下文344和/或饭店实体上下文346传递348(例如,利用操作系统通信模型)至旅行应用330,使得旅行应用330可根据预订桌位动作上下文344和/或饭店实体上下文346而启动。例如,旅行应用330可被打开成桌位预订表格,其可采用来自预订桌位动作上下文344和/或饭店实体上下文346的至少某些信息来填充,诸如作为饭店名称352的墨西哥酒馆、作为饭店位置354的市中心和/或作为电话号码356的555-555-5555。在示例中,可在沉浸式查看状态(例如,全屏等)下启动旅行应用330。在另一示例中,可在与当前应用并排显示的覆盖界面(例如,操作系统用户界面,诸如共享侧边栏)内启动旅行应用330。这样,用户可在没有例如过度搜索适当功能和/或手动输入冗余信息的情况下高效地预订墨西哥酒馆的桌位。
在示例中,系统340可包括分析部件358。可将分析部件358配置成保存实体动作日志360。分析部件358可基于旅行应用330的启动而生成实体动作日志360内的条目。例如,条目可指定动作是由目标应用对实体执行的,以便完成任务(例如,旅行应用330对墨西哥酒馆实体执行预订桌位动作)。实体动作日志360可包括各种各样的信息和/或度量标准,诸如动作被选择的次数、应用被启动以执行动作的次数等。可以向第三方应用(例如,第三方应用的开发者)暴露实体动作日志360,所述第三方应用可向任务执行部件370注册以创建可允许第三方应用被用作目标应用的数据契约,以用于上下文感知的任务完成。
图4A图示出被配置用于通过应用间通信来促进任务完成的系统400的示例。系统400可包括任务执行部件408(例如,编程模块、web服务、应用功能和/或操作系统界面,诸如共享侧边栏)。任务执行部件408可与当前应用相关联,诸如社交网络应用402。社交网络应用402可向用户呈现内容(例如,用户的、关于针对2013年的跑车型号(X)的社交网络帖子)。可将任务执行部件408配置成识别被包括在社交网络应用402的内容内的实体,诸如跑车型号(X)实体。例如,任务执行部件408可使用与社交网络应用402的内容相关联的上下文信息406,以便识别实体定义仓库412内的汽车实体定义,其可用来定义跑车型号(X)实体。任务执行部件408可暴露能够对跑车型号(X)实体执行的一个或多个动作。例如,任务执行部件408可通过任务界面420来呈现418汽车报价动作422和/或构造汽车动作428。在示例中,可将动作嵌入社交网络应用402中(例如,由开发者预定义)。在另一示例中,可基于动作定义仓库414内的动作定义来动态地识别动作(例如,汽车报价动作定义、构造汽车动作定义等)。
可将任务执行部件408配置成识别动作的选择。在示例中,用户可选择汽车报价动作422。可将任务执行部件408配置成基于与实体相关联的实体上下文和/或与动作相关联的动作上下文来确定用户实现任务的意图410。例如,用户意图410可基于实体上下文信息(例如,与跑车型号(X)实体相关联的上下文信息,其可能已经从与社交网络应用402的内容相关联的上下文信息406中导出和/或从来自实体定义仓库412的汽车实体定义中导出)和/或动作上下文信息(例如,与汽车报价动作422相关联的上下文信息,其可能已经从与社交网络应用402的内容相关联的上下文信息中406导出和/或从来自动作定义仓库414的汽车报价动作定义中导出)而指示用户期望获得用于跑车型号(X)实体的汽车报价。可呈现能够对实体执行动作的一个或多个目标应用,诸如汽车贸易商应用424和/或车辆经销商应用426(例如,通过任务界面420来呈现418,所述任务界面420诸如社交网络应用402内的用户界面或诸如操作系统用户界面之类的外部用户界面)。例如,汽车贸易商应用424和/或车辆经销商应用426可具有数据契约仓库416内的数据契约,其可指定这样的应用支持跑车型号(X)实体和/或汽车报价动作422。在另一示例中,在选择了构造汽车动作428的场合,可基于汽车制造商应用430与任务执行应用408之间的、指示跑车型号(X)实体和构造汽车动作428由汽车制造商应用430所支持的数据契约而通过任务界面420来呈现汽车制造应用430。这样,用户可选择目标应用,其可在上下文相关状态下启动(例如,如图4B中所示)以用于任务完成。
图4B图示出被配置用于通过应用间通信来促进任务完成的系统440的示例。可认识到的是,在示例中,系统440对应于图4A的系统400。例如,系统440可包括任务执行部件470。任务执行部件470可与当前应用相关联,诸如社交网络应用(例如,图4A的402)。基于在社交网络应用(例如,图4A的402)的内容内发生的实体,诸如跑车型号(X)实体,包括可对跑车型号(X)实体执行的一个或多个动作和/或能够对跑车型号(X)实体执行动作的一个或多个应用的任务界面(例如,图4A的420)可能已经被呈现。
可将任务执行部件470配置成接收应用的选择442,诸如与用于跑车型号(X)实体的汽车报价动作(例如,图4A的422)相关联的车辆经销商应用426(例如,用户可能已在图4A的任务界面420内选择了车辆经销商应用426)。任务执行部件470可基于来自社交网络应用(例如,图4A的402)和/或来自汽车报价动作定义的上下文信息(例如,图4A的406)来识别汽车报价动作上下文444,所述汽车报价动作定义包括与用来执行汽车报价动作(例如,图4A的422)的信息相对应的一个或多个动作参数。汽车报价动作内容444可包括用来执行汽车报价动作的信息,诸如汽车型号、型号年份、位置、折价信息、汽车选项等。任务执行部件470可基于来自社交网络应用(例如,图4A的402)和/或来自汽车实体定义的上下文信息(例如,图4A的406)来识别定义跑车型号(X)实体的汽车实体上下文446,所述汽车实体定义包括与描述跑车型号(X)实体的信息相对应的一个或多个实体参数。
任务执行部件470可将汽车报价动作上下文444和/或汽车实体上下文446传递448(例如,利用操作系统通信模型)到车辆经销商应用426,使得车辆经销商应用426可根据汽车报价动作上下文444和/或汽车实体上下文446而启动。例如,可将车辆经销商应用426打开成汽车报价表格,其可采用来自汽车报价动作上下文444和/或汽车实体上下文446的至少某些信息来填充,诸如作为汽车型号452的跑车型号(X)、作为型号年份454的2013和/或作为位置456的当前用户位置(例如,可使用与托管车辆经销商应用的用户设备相关联的补充数据(诸如用户设备的当前(例如,GPS)位置)作为用以填充汽车报价表格的值)。在示例中,可在沉浸式查看状态(例如,全屏等)下启动车辆经销商应用426。在另一示例中,可在与当前应用并排显示的覆盖界面(例如,操作系统用户界面,诸如共享侧边栏)内启动车辆经销商应用426。这样,用户可在没有例如过度搜索适当功能和/或手动输入冗余信息的情况下高效地获得用于跑车型号(X)的汽车报价。
在示例中,系统440可包括分析部件458。可将分析部件458配置成保存实体动作日志460。分析部件458可基于车辆经销商应用426的启动来生成实体动作日志460内的条目。例如,条目可指定由目标应用对实体执行动作,以便完成任务(例如,车辆经销商应用426对跑车型号(X)实体执行汽车报价动作)。实体动作日志460可包括各种各样的信息和/或度量标准,诸如动作被选择的次数、应用被启动以执行动作的次数等。可向第三方应用(例如,第三方应用的开发者)暴露实体动作日志460,所述第三方应用可向任务执行部件470注册以创建可允许使用第三方应用作为目标应用的数据契约,以用于上下文感知任务完成。
由图5中的示例性方法500来图示针对上下文感知任务执行而注册目标应用的实施例。在502处,该方法开始。在504处,可接收用以与目标应用建立数据契约的注册请求(例如,目标应用与任务执行部件之间的数据契约,所述任务执行部件被配置成将目标应用启动成上下文相关状态以便促进任务完成)。该注册请求可包括由目标应用所支持的实体和/或动作(例如,可由进餐应用对实体执行的动作)。在506处,生成与目标应用的数据契约。该数据契约可指定目标应用能够对实体执行动作。
在508处,可保存用于实体的实体定义。该实体定义可包括定义实体的一个或多个实体参数(例如,饭店实体定义可包括饭店名称参数、位置参数、价格等级参数等)。例如,实体参数可指定某个动作能够对实体执行(例如,预订桌位动作可对饭店实体执行)。在510处,可保存用于动作的动作定义。该动作定义可包括定义动作的一个或多个动作参数。例如,动作参数可指定用来执行动作的信息(例如,用于桌位预订动作的饭店位置)。这样,可使用数据契约、实体定义和/或动作定义来识别实体、可对实体执行的动作和/或能够对实体执行动作的目标应用。
在示例中,可在诸如地图绘制应用之类的当前应用的内容内识别诸如饭店实体之类的实体。可基于从当前应用导出以生成实体上下文的实体上下文信息来指定用于实体定义内的至少一个实体参数的值。例如,可将墨西哥酒馆(例如,从地图绘制应用的内容中提取)指定为用于饭店实体定义内的饭店名称实体参数的值。可暴露能够对实体执行的动作(诸如预订桌位动作)。响应于动作的选择,可基于从当前应用导出以生成动作上下文的上下文信息来指定用于动作定义内的至少一个动作参数的值。例如,可将市中心(例如,从地图绘制应用内显示的当前位置中导出)指定为对于预订桌位动作定义内的位置动作参数的值。可呈现能够对实体执行动作的目标应用,诸如进餐应用。响应于目标应用的选择,可将实体上下文和/或动作上下文传递至目标应用,使得可根据实体上下文和/或动作上下文而启动目标应用以完成任务(例如,可将进餐应用启动成上下文相关预订表格)。在512处,该方法结束。可认识到的是,可设想对公开主题的变化。例如,508和/或510或图5在某些实施例中可以是可选的。
又一实施例涉及到计算机可读介质,其包括被配置成实现本文提出的技术中的一种或多种技术的处理器可执行指令。在图6中图示出可以以这些方式设计的示例性计算机可读介质,其中,实现方式600包括计算机可读介质616(例如,CD-R、DVD-R或硬盘驱动器的盘),计算机可读数据614被编码在所述计算机可读介质616上。计算机可读数据614进而又包括被配置成根据本文所阐述的原理中的一个或多个而操作的一组计算机指令612。在一个这样的实施例600中,可将处理器可执行计算机指令612配置成执行方法610,例如,诸如图1的示例性方法100中的至少某些和/或图5的示例性方法500中的至少某些。在另一个这样的实施例中,可将处理器可执行指令612配置成实现系统,例如,诸如图2的示例性系统200中的至少某些、图3A的示例性系统300中的至少某些、图3B的示例性系统340中的至少某些、图4A的示例性系统400中的至少某些和/或图4B的示例性系统440中的至少某些。本领域的普通技术人员可设计被配置成根据本文所提出的技术而操作的许多这样的计算机可读介质。
虽然以特定于结构特征和/或方法动作的语言描述了本主题,但应理解的是,在所附权利要求中限定的主题不是必然地局限于上述特定特征或动作。而是,上文描述的特定特征和动作是作为实现权利要求的示例形式而公开的。
如在本申请中使用的,术语“部件”、“模块”、“系统”、“界面”等一般地意图指代计算机相关实体,或者是硬件、硬件和软件的组合、软件,或者是执行中的软件。例如,部件可以是但不限于是在处理器上运行的进程、处理器、对象、可执行文件、执行的线程、程序和/或计算机。作为图示,在控制器上运行的应用和控制器两者都可以是部件。一个或多个部件可常驻于进程和/或执行的线程内,并且部件可在一个计算机上本地化和/或分布在两个或更多计算机之间。
此外,可将要求保护的主题实现为使用标准编程和/或工程技术来产生软件、固件、硬件或其任何组合以控制计算机实现本公开主题的方法、装置或制品。如本文所使用的术语“制品”意图涵盖可从任何计算机可读设备、载体或介质访问的计算机程序。当然,本领域的技术人员将认识到,在不脱离要求保护的主题的范围或精神的情况下,可对此配置进行许多修改。
图7和以下讨论提供了将实现本文阐述的规定中的一个或多个规定的实施例的适当计算环境的简要的一般描述。图7的操作环境仅仅是适当操作环境的示例,并且并不意图暗示关于操作环境的使用或功能的范围的任何限制。示例计算设备包括但不限于个人计算机、服务器计算机、手持式或膝上型设备、移动设备(诸如移动电话、个人数字助理(PDA)、媒体播放器等)、多处理器系统、消费电子装置、小型计算机、大型计算机、包括以上系统或设备等中任何设备的分布式计算环境等。
虽然并不要求,但实施例被描述在由一个或多个计算设备执行“计算机可读指令”的一般上下文中。可经由计算机可读介质(下面讨论)来分布计算机可读指令。计算机可读指令可以被实现为执行特定任务或实现特定抽象数据类型的程序模块,诸如函数、对象、应用编程接口(API)、数据结构等。典型地,在各种环境中,可根据期望来组合或分布计算机可读指令的功能。
图7图示出包括被配置成实现本文所提供的一个或多个实施例的计算设备712的系统710的示例。在一个配置中,计算设备712包括至少一个处理单元716和存储器718。取决于计算设备的确切配置和类型,存储器718可以是易失性的(例如,诸如RAM)、非易失性的(例如,诸如ROM、闪存等)或两者的某种组合。在图7中由虚线714图示出此配置。
在其他实施例中,设备712可包括附加特征和/或功能。例如,设备712还可包括附加存储装置(例如,可移除的和/或不可移除的),其包括但不限于磁存储装置、光学存储装置等。在图7中由存储装置720图示出这样的附加存储装置。在实施例中,用以实现本文提供的一个或多个实施例的计算机可读指令可以处于存储装置720中。存储装置720还可存储其他计算机可读指令以实现操作系统、应用程序等。可将计算机可读指令载入到存储器718中以便由例如处理单元716执行。
本文所使用的术语“计算机可读介质”包括计算机存储介质。计算机存储介质包括以任何方法或技术实现以便存储诸如计算机可读指令或其他数据之类的信息的易失性和非易失性、可移除的和不可移除的介质。存储器718和存储装置720是计算机存储介质的示例。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其他存储技术、CD-ROM、数字多功能盘(DVD)或其他光学存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备或者可以用来存储所期望的信息且可以被设备712访问的任何其他介质。任何这样的计算机存储介质可以是设备712的一部分。
设备712还可包括允许设备712与其他设备通信的(一个或多个)通信连接726。(一个或多个)通信连接726可包括但不限于调制解调器、网络接口卡(NIC)、集成网络接口、射频发射机/接收机、红外端口、USB连接或者用于将计算设备712连接到其他计算设备的其他接口。(一个或多个)通信连接726可包括有线连接或无线连接。(一个或多个)通信连接726可发射和/或接收通信介质。
术语“计算机可读介质”可包括通信介质。通信介质典型地在诸如载波或其他传输机制之类的“已调制数据信号”中体现计算机可读指令或其他数据,并且包括任何信息传送介质。术语“已调制数据信号”可包括如下的信号,即:该信号使其特性中的一个或多个特性以这样的方式进行设置或改变,即:在该信号中对信息进行编码。
设备712可包括(一个或多个)输入设备724,诸如键盘、鼠标、笔、话音输入设备、触摸输入设备、红外照相机、视频输入设备和/或任何其他输入设备。在设备712中还可包括(一个或多个)输出设备722,诸如一个或多个显示器、扬声器、打印机和/或任何其他输出设备。可经由有线连接、无线连接或其任何组合将(一个或多个)输入设备724和(一个或多个)输出设备722连接到设备712。在实施例中,可以将来自另一个计算设备的输入设备或输出设备用作是用于计算设备712的(一个或多个)输入设备724或(一个或多个)输出设备722。
可以通过诸如总线之类的各种互连将计算设备712的部件连接。这样的互连可包括外设部件互连(PCI),诸如PCI Express、通用串行总线(USB)、火线(IEEE 1394)、光学总线结构等。在另一实施例中,可以通过网络将计算设备712的部件互连。例如,存储器718可由位于通过网络所互连的不同物理位置中的多个物理存储器单元构成。
本领域的技术人员将认识到用来存储计算机可读指令的存储设备可跨网络分布。例如,可经由网络728访问的计算设备730可存储计算机可读指令以实现本文所提供的一个或多个实施例。计算设备712可访问计算设备730并下载计算机可读指令的一部分或全部以用于执行。替换地,计算设备712可根据需要而下载多条计算机可读指令,或者可在计算设备712处执行某些指令并在计算设备730处执行某些指令。
本文提供了实施例的各种操作。在实施例中,所描述的操作中的一个或多个操作可组成存储在一个或多个计算机可读介质上的计算机可读指令,其如果被计算设备执行将使得计算设备执行所描述的操作。不应将描述操作中的某些操作或全部操作的顺序解释为暗示这些操作必须是依赖于顺序的。已受益于本说明书的本领域的技术人员将认识到替换的排序。此外,将理解的是,并非所有操作都必须存在于本文所提供的每个实施例中。
此外,单词“示例性”在本文被用来意指充当示例、实例或图示。在本文描述为“示例性”的任何方面或设计不一定要解释为比其他方面或设计有利。而是,单词示例性的使用意图以具体的方式提出概念。如在本申请中使用的,术语“或”意图意指包括性的“或”而不是排他性的“或”。也就是说,除非以其他方式指定或者根据上下文可清楚,“X采用A或B”意图意指任何的自然包括性置换。也就是说,如果X采用A;X采用B;或者X采用A和B两者,则在前述情况的任一种下都满足“X采用A或B”。另外,,一般地可将在本申请和所附权利要求中使用的冠词“一”和“一个”解释成意指“一个或多个”,除非以其他方式指定或者根据上下文可清楚它是针对单数形式的。并且,A和B中的至少一个等一般地意指A或B或A和B两者。
并且,虽然已相对于一个或多个实现方式示出并描述了本公开内容,但基于本说明书和附图的阅读和理解,本领域的技术人员将想到等价变更和修改。本公开内容包括所有这样的修改和变更且其仅仅受到以下权利要求的范围的限制。特别是关于由上述部件(例如,元件、资源等)执行的各种功能性,用来描述这样的部件的术语意图(除非以其他方式指示)对应于执行所描述的部件的指定功能性的任何部件(例如,在功能上等价),即使其并非在结构上等价于在本文所图示的本公开内容的示例性实现方式中的执行该功能性的公开结构。另外,虽然可能已仅相对于若干实现方式中的一个实现方式公开了本公开内容的特定特征,但可将这样的特征与对于任何给定或特定应用而言可能是期望且有利的其他实现方式的一个或多个其他特征进行组合。此外,在具体实施方式或权利要求中使用的术语“包括”、“有”、“具有”、“带有”或其变体的程度上,这样的术语意图以与术语“包括”类似的方式是包括性的。

Claims (19)

1.一种用于通过应用间通信来促进任务完成的系统,包括:
一个或多个处理单元;以及
包括指令的存储器,所述指令在由所述一个或多个处理单元中的至少一个处理单元执行时实施任务执行部件,所述任务执行部件被配置成:
识别被包括在第一应用的内容内的实体,其中,所述实体是第一企业实体或第二企业实体;
暴露能够对所述实体执行的动作,其中,所暴露的动作基于所述实体是所述第一企业实体还是所述第二企业实体而不同;
接收对所述动作的选择;
识别能够对所述实体执行所述动作的目标应用,其中,所述目标应用是与所述第一应用不同的应用;
促使呈现所识别的目标应用;
接收对所识别的目标应用的选择;
响应于接收对所识别的目标应用的选择,将实体上下文信息和动作上下文信息从所述第一应用传递至所选择的目标应用;
促使显示所选择的目标应用;以及
保存包括分析数据的度量日志,所述分析数据包括所识别的目标应用被选择的次数,
其中,所述指令在被执行时实施分析部件,所述分析部件被配置成:
生成实体动作日志内的条目,所述条目指定所述动作是由所选择的目标应用对所述实体执行的。
2.根据权利要求1所述的系统,所述任务执行部件包括操作系统用户界面,其中,所述操作系统用户界面还包括共享侧边栏。
3.根据权利要求1所述的系统,其中,所执行的指令使得所述任务执行部件被配置成:基于与所述实体相关联的所述实体上下文信息和与所述动作相关联的所述动作上下文信息来确定用户实现任务的意图。
4.根据权利要求1所述的系统,所述动作被嵌入所述第一应用内。
5.根据权利要求1所述的系统,所述任务执行部件被配置成:
基于所述实体来动态地识别所述动作;以及
促使显示所述动作。
6.根据权利要求1所述的系统,所述第一应用或所选择的目标应用中的至少一个应用包括以下各项中的至少一项:web浏览器、可用于下载的市场应用、云应用、或本地安装的应用。
7.根据权利要求1所述的系统,所述任务执行部件被配置成:
基于在所述任务执行部件与所选择的目标应用之间的、指定所选择的目标应用支持所述动作和所述实体的数据契约来确定所选择的目标应用能够对所述实体执行所述动作。
8.根据权利要求1所述的系统,所述任务执行部件被配置成:
使得所选择的目标应用在与所述第一应用并排显示的覆盖界面内启动。
9.根据权利要求1所述的系统,所述任务执行部件被配置成:
利用操作系统通信模型将所述实体上下文信息和所述动作上下文信息传递至所选择的目标应用。
10.根据权利要求1所述的系统,所述分析部件还被配置成:
向第三方应用暴露所述实体动作日志。
11.根据权利要求1所述的系统,所述指令在被执行时实施契约部件,所述契约部件被配置成:
生成数据契约,所述数据契约指定第三方应用支持对所述实体执行所述动作。
12.根据权利要求1所述的系统,所述任务执行部件被配置成:
接收与所选择的目标应用相关联的后退命令;以及
使得将所选择的目标应用的显示过渡到所述第一应用或包括所识别的目标应用的任务界面中的至少一个。
13.根据权利要求1所述的系统,所述任务执行部件被配置成:
基于所识别的目标应用具有两个数据契约而促使显示所识别的目标应用,所述两个数据契约包括指定支持所述动作的第一数据契约和指定支持所述实体的第二数据契约。
14.根据权利要求1所述的系统,所述指令在被执行时实施定义部件,所述定义部件被配置成:
生成针对所述实体的实体定义,所述实体定义用于生成所述实体上下文信息,所述实体定义包括定义所述实体的一个或多个实体参数,实体参数指定所述动作能够对所述实体执行;以及
生成针对所述动作的动作定义,所述动作定义用于生成所述动作上下文信息,所述动作定义包括定义所述动作的一个或多个动作参数,动作参数指定用于执行所述动作的信息。
15.一种用于通过应用间通信来促进任务完成的方法,包括:
识别被包括在第一应用的内容内的实体,其中,所述实体是第一企业实体或第二企业实体;
暴露能够对所述实体执行的动作,其中,所暴露的动作基于所述实体是所述第一企业实体还是所述第二企业实体而不同;
接收对所述动作的选择;
识别能够对所述实体执行所述动作的目标应用,其中,所述目标应用是与所述第一应用不同的应用;
促使呈现所识别的目标应用;
接收对所识别的目标应用的选择;
响应于接收对所识别的目标应用的选择,将与所述实体相关联的实体上下文信息和与所述动作相关联的动作上下文信息从所述第一应用传递至所选择的目标应用;
促使显示所选择的目标应用;
保存包括分析数据的度量日志,所述分析数据包括所识别的目标应用被选择的次数;以及
响应于所选择的目标应用对所述实体执行所述动作,生成实体动作日志内的条目,所述条目指定所述动作是由所选择的目标应用对所述实体执行的。
16.根据权利要求15所述的方法,所述呈现包括:基于与所选择的目标应用的、指定所选择的目标应用支持所述动作和所述实体的数据契约来确定所选择的目标应用能够对所述实体执行所述动作。
17.根据权利要求15所述的方法,所述传递包括:利用操作系统通信模型将所述实体上下文信息和所述动作上下文信息传递至所选择的目标应用。
18.一种用于针对上下文感知任务执行而注册目标应用的方法,包括:
接收用以与目标应用建立数据契约的注册请求,所述注册请求包括由所述目标应用所支持的实体和动作;
生成与所述目标应用的数据契约,所述数据契约指定所述目标应用能够对所述实体执行所述动作;
保存针对所述实体的实体定义,其中,所述实体是第一企业实体或第二企业实体,所述实体定义包括定义所述实体的一个或多个实体参数,实体参数指定所述动作能够对所述实体执行;
保存针对所述动作的动作定义,其中,所述动作基于所述实体是所述第一企业实体还是所述第二企业实体而不同,所述动作定义包括定义所述动作的一个或多个动作参数,动作参数指定用于执行所述动作的信息;
识别能够对所述实体执行所述动作的目标应用;
响应于对所述动作的选择,促使呈现所识别的目标应用;
响应于对所述目标应用的选择,促使显示所选择的目标应用内填充的动作项,其中,所填充的动作项是利用与所述实体定义相对应的实体上下文信息来填充的,并且其中,所述实体上下文信息是从另一启动的应用接收的;
保存包括分析数据的度量日志,所述分析数据包括所识别的目标应用被选择的次数;以及
响应于所选择的目标应用对所述实体执行所述动作,生成实体动作日志内的条目,所述条目指定所述动作是由所选择的目标应用对所述实体执行的。
19.根据权利要求18所述的方法,包括:
识别被包括在所述另一启动的应用的内容内的实体;
基于从所述另一启动的应用导出以生成实体上下文的所述实体的实体上下文信息来指定所述实体定义内的至少一个实体参数的值;
暴露能够对所述实体执行的动作;
响应于对所述动作的选择:
基于从当前应用导出以生成动作上下文的上下文信息来指定所述动作定义内的至少一个动作参数的值,以及
响应于对所述目标应用的选择:
将所述实体上下文信息和所述动作上下文传递至所选择的目标应用,以使得所选择的目标应用根据所述实体上下文信息和所述动作上下文来启动以便完成任务。
CN201910007126.4A 2012-12-13 2013-12-13 用于通过应用间通信来促进任务完成的系统和方法 Active CN110083458B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201910007126.4A CN110083458B (zh) 2012-12-13 2013-12-13 用于通过应用间通信来促进任务完成的系统和方法

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US13/713,375 2012-12-13
US13/713,375 US10528385B2 (en) 2012-12-13 2012-12-13 Task completion through inter-application communication
CN201380065290.1A CN104919424B (zh) 2012-12-13 2013-12-13 用于通过应用间通信来促进任务完成的系统和方法
PCT/US2013/075182 WO2014093929A1 (en) 2012-12-13 2013-12-13 Task completion through inter-application communication
CN201910007126.4A CN110083458B (zh) 2012-12-13 2013-12-13 用于通过应用间通信来促进任务完成的系统和方法

Related Parent Applications (1)

Application Number Title Priority Date Filing Date
CN201380065290.1A Division CN104919424B (zh) 2012-12-13 2013-12-13 用于通过应用间通信来促进任务完成的系统和方法

Publications (2)

Publication Number Publication Date
CN110083458A CN110083458A (zh) 2019-08-02
CN110083458B true CN110083458B (zh) 2023-11-28

Family

ID=49956361

Family Applications (2)

Application Number Title Priority Date Filing Date
CN201380065290.1A Active CN104919424B (zh) 2012-12-13 2013-12-13 用于通过应用间通信来促进任务完成的系统和方法
CN201910007126.4A Active CN110083458B (zh) 2012-12-13 2013-12-13 用于通过应用间通信来促进任务完成的系统和方法

Family Applications Before (1)

Application Number Title Priority Date Filing Date
CN201380065290.1A Active CN104919424B (zh) 2012-12-13 2013-12-13 用于通过应用间通信来促进任务完成的系统和方法

Country Status (7)

Country Link
US (3) US10528385B2 (zh)
EP (1) EP2932385A1 (zh)
JP (1) JP6263199B2 (zh)
KR (2) KR102251597B1 (zh)
CN (2) CN104919424B (zh)
HK (1) HK1215081A1 (zh)
WO (1) WO2014093929A1 (zh)

Families Citing this family (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9313162B2 (en) 2012-12-13 2016-04-12 Microsoft Technology Licensing, Llc Task completion in email using third party app
US10013496B2 (en) 2014-06-24 2018-07-03 Google Llc Indexing actions for resources
US10511501B2 (en) * 2014-11-06 2019-12-17 Shimadzu Corporation Analyzing device system and program for the system
US10192549B2 (en) 2014-11-28 2019-01-29 Microsoft Technology Licensing, Llc Extending digital personal assistant action providers
US10762143B2 (en) * 2015-02-13 2020-09-01 Microsoft Technology Licensing, Llc Extension of third party application functionality for intent determination
US10078482B2 (en) * 2015-11-25 2018-09-18 Samsung Electronics Co., Ltd. Managing display of information on multiple devices based on context for a user task
ITUB20159753A1 (it) * 2015-12-30 2017-06-30 Qayzen Srl Sistema per l?esecuzione integrata ed interoperativa di applicazioni diverse ed indipendenti
US20170289338A1 (en) * 2016-03-31 2017-10-05 Microsoft Technology Licensing, Llc Enabling stateful dynamic links in mobile applications
CN107291744A (zh) 2016-03-31 2017-10-24 阿里巴巴集团控股有限公司 确定及运用应用程序之间的关系关联的方法及装置
WO2017173162A1 (en) 2016-03-31 2017-10-05 Dexcom, Inc. Systems and methods for inter-app communications
US10409876B2 (en) * 2016-05-26 2019-09-10 Microsoft Technology Licensing, Llc. Intelligent capture, storage, and retrieval of information for task completion
US10929782B2 (en) * 2016-06-11 2021-02-23 Apple Inc. Integrating restaurant reservation services into a navigation application
US10503767B2 (en) * 2016-09-13 2019-12-10 Microsoft Technology Licensing, Llc Computerized natural language query intent dispatching
US10733553B2 (en) * 2016-09-15 2020-08-04 Microsoft Technology Licensing, Llc Action item extraction for work item creation
US10311856B2 (en) 2016-10-03 2019-06-04 Google Llc Synthesized voice selection for computational agents
US11663535B2 (en) 2016-10-03 2023-05-30 Google Llc Multi computational agent performance of tasks
US10853747B2 (en) * 2016-10-03 2020-12-01 Google Llc Selection of computational agent for task performance
US11107021B2 (en) 2016-11-06 2021-08-31 Microsoft Technology Licensing, Llc Presenting and manipulating task items
US10565274B2 (en) * 2017-06-30 2020-02-18 Microsoft Technology Licensing, Llc Multi-application user interest memory management
US11410075B2 (en) * 2018-01-15 2022-08-09 Microsoft Technology Licensing, Llc Contextually-aware recommendations for assisting users with task completion
US20200196922A1 (en) 2018-12-19 2020-06-25 Dexcom, Inc. Intermittent monitoring

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101006425A (zh) * 2004-03-10 2007-07-25 汉德马克公司 数据访问架构
CN102521317A (zh) * 2010-12-01 2012-06-27 微软公司 利用流动上下文的自动任务完成

Family Cites Families (148)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
NL289310A (zh) 1963-02-21
US6951019B1 (en) 1992-09-30 2005-09-27 Apple Computer, Inc. Execution control for processor tasks
US5394549A (en) 1992-12-17 1995-02-28 International Business Machines Corporation Task spawning responsive to relational database conditions and operations
US5878258A (en) 1996-05-06 1999-03-02 Merrill Lynch, Pierce, Fenner & Smith Seamless application interface manager
CA2296119A1 (en) 1998-04-16 1999-10-28 Creator Ltd. Interactive toy
JP2000029945A (ja) 1998-07-08 2000-01-28 Nec Corp スケジュール管理システム及びそのスケジュール管理方法並びにその制御プログラムを記録した記録媒体
US8041604B1 (en) 1999-03-16 2011-10-18 Studebaker & Brackett PC Method of embedding advertisements in communication
US7035901B1 (en) 1999-12-06 2006-04-25 Global Media Online, Inc. SMTP server, POP server, mail server, mail processing system and web server
US6993559B2 (en) 2000-02-14 2006-01-31 Bigbow.Com, Inc. System, method, apparatus and computer program product for operating a web site by electronic mail
US6898622B1 (en) 2000-05-04 2005-05-24 Bellsouth Intellectual Property Corp. Method for composing packages of electronic mail attachments
AU2001278148A1 (en) 2000-08-01 2002-02-13 Hrl Laboratories, Llc Apparatus and method for context-sensitive dynamic information service
JP2003345764A (ja) 2002-05-27 2003-12-05 Hitachi Ltd 備忘録端末及び備忘録管理方法
US7016855B2 (en) 2002-05-31 2006-03-21 Motorola, Inc. Method and apparatus for managing a task list using location based filtering
US20040059712A1 (en) 2002-09-24 2004-03-25 Dean Jeffrey A. Serving advertisements using information associated with e-mail
US8311890B2 (en) 2002-11-01 2012-11-13 Google Inc. Method and system for dynamic textual ad distribution via email
US8561069B2 (en) 2002-12-19 2013-10-15 Fujitsu Limited Task computing
US7543237B2 (en) 2003-03-19 2009-06-02 Accenture Global Servicecs Gmbh Dynamic collaboration assistant
US9256753B2 (en) 2003-06-11 2016-02-09 Microsoft Technology Licensing, Llc Method and apparatus for protecting regions of an electronic document
US9715678B2 (en) 2003-06-26 2017-07-25 Microsoft Technology Licensing, Llc Side-by-side shared calendars
US7245483B2 (en) 2003-07-18 2007-07-17 Satori Labs, Inc. Integrated personal information management system
US7730182B2 (en) * 2003-08-25 2010-06-01 Microsoft Corporation System and method for integrating management of components of a resource
GB0321213D0 (en) 2003-09-10 2003-10-08 British Telecomm Diary management method and system
US20050108074A1 (en) 2003-11-14 2005-05-19 Bloechl Peter E. Method and system for prioritization of task items
US20050132010A1 (en) 2003-12-12 2005-06-16 International Business Machines Corporation Scheduled electronic mail deletions
US7363294B2 (en) 2003-12-19 2008-04-22 Fuji Xerox Co., Ltd. Indexing for contextual revisitation and digest generation
US7349920B1 (en) 2004-02-13 2008-03-25 Microsoft Corporation Simultaneous display of multiple calendar systems
US7496500B2 (en) 2004-03-01 2009-02-24 Microsoft Corporation Systems and methods that determine intent of data and respond to the data based on the intent
US8224639B2 (en) 2004-03-29 2012-07-17 Sony Computer Entertainment Inc. Methods and apparatus for achieving thermal management using processing task scheduling
US20050262449A1 (en) * 2004-05-03 2005-11-24 Microsoft Corporation Online service switching and customizations
US20050268306A1 (en) 2004-05-25 2005-12-01 Anspach Mark S Method and system for presenting actions associated with a managed object in a task context
US20050267770A1 (en) 2004-05-26 2005-12-01 International Business Machines Corporation Methods and apparatus for performing task management based on user context
US8640035B2 (en) 2004-06-24 2014-01-28 Oracle America, Inc. Identity based user interface
US7685414B1 (en) 2004-08-27 2010-03-23 Voltage Security, Inc. Subscription management service for secure messaging system
US8185427B2 (en) 2004-09-22 2012-05-22 Samsung Electronics Co., Ltd. Method and system for presenting user tasks for the control of electronic devices
US20060069599A1 (en) 2004-09-29 2006-03-30 Microsoft Corporation Workflow tasks in a collaborative application
US7747966B2 (en) 2004-09-30 2010-06-29 Microsoft Corporation User interface for providing task management and calendar information
US7603381B2 (en) * 2004-09-30 2009-10-13 Microsoft Corporation Contextual action publishing
US7788589B2 (en) 2004-09-30 2010-08-31 Microsoft Corporation Method and system for improved electronic task flagging and management
US20060149677A1 (en) 2005-01-06 2006-07-06 Microsoft Corporation Contextual ad processing on local machine
US8069422B2 (en) 2005-01-10 2011-11-29 Samsung Electronics, Co., Ltd. Contextual task recommendation system and method for determining user's context and suggesting tasks
US7233229B2 (en) 2005-03-01 2007-06-19 Microsoft Corporation Actionable communication reminders
EP3217285B1 (en) 2005-03-10 2021-04-28 Xilinx, Inc. Transmitting data
FI20055111A0 (fi) 2005-03-11 2005-03-11 Nokia Corp Informaation muodostaminen elektronisen laitteen kalanterisovellukselle
US7817796B1 (en) 2005-04-27 2010-10-19 Avaya Inc. Coordinating work assignments for contact center agents
EP1920393A2 (en) * 2005-07-22 2008-05-14 Yogesh Chunilal Rathod Universal knowledge management and desktop search system
US20080086640A1 (en) 2005-07-28 2008-04-10 Jmj Software, Llc Systems, methods and apparatus of an email client
US20070027732A1 (en) 2005-07-28 2007-02-01 Accu-Spatial, Llc Context-sensitive, location-dependent information delivery at a construction site
US20070157105A1 (en) * 2006-01-04 2007-07-05 Stephen Owens Network user database for a sidebar
US8185944B2 (en) 2006-02-28 2012-05-22 The Boeing Company High-assurance file-driven content filtering for secure network server
US8744885B2 (en) 2006-03-28 2014-06-03 Snowflake Itm, Inc. Task based organizational management system and method
US20080005108A1 (en) 2006-06-28 2008-01-03 Microsoft Corporation Message mining to enhance ranking of documents for retrieval
US7548895B2 (en) 2006-06-30 2009-06-16 Microsoft Corporation Communication-prompted user assistance
US20080005168A1 (en) 2006-06-30 2008-01-03 Microsoft Corporation Managing family information
US8219920B2 (en) 2006-08-04 2012-07-10 Apple Inc. Methods and systems for managing to do items or notes or electronic messages
US9318108B2 (en) * 2010-01-18 2016-04-19 Apple Inc. Intelligent automated assistant
US20100169176A1 (en) 2006-09-14 2010-07-01 Bhavin Turakhia Method for tracking user behavior and to display advertisements
US8594702B2 (en) 2006-11-06 2013-11-26 Yahoo! Inc. Context server for associating information based on context
CA2674971C (en) 2007-01-09 2016-12-06 Spinvox Limited Selection of a link in a received message for speaking reply, which is converted into text form for delivery
US20080256056A1 (en) 2007-04-10 2008-10-16 Yahoo! Inc. System for building a data structure representing a network of users and advertisers
US9292807B2 (en) 2007-05-10 2016-03-22 Microsoft Technology Licensing, Llc Recommending actions based on context
JP2009026138A (ja) 2007-07-20 2009-02-05 Toshiba Corp 情報通知装置、方法およびプログラム
US8645182B2 (en) 2007-10-02 2014-02-04 International Business Machines Corporation Integrated calendar and task scheduler
US8146104B2 (en) 2007-10-09 2012-03-27 International Business Machines Corporation System and method for programmatically generating to-do list and creating notification between calendar and other applications
US20090111425A1 (en) 2007-10-26 2009-04-30 Sony Eriscsson Mobile Communications Ab Device and method for category based collaboration and control for mobile communications devices
US20090239552A1 (en) 2008-03-24 2009-09-24 Yahoo! Inc. Location-based opportunistic recommendations
US20090254824A1 (en) * 2008-04-08 2009-10-08 Gurvinder Singh Distribution Of Context Aware Content And Interactable Advertisements
US8219115B1 (en) 2008-05-12 2012-07-10 Google Inc. Location based reminders
EP2306332A4 (en) 2008-07-25 2012-04-25 Nec Corp ELECTRONIC ADHESIVE TIP SYSTEM
WO2010014853A1 (en) * 2008-07-30 2010-02-04 Michael Zimmerman Data-oriented user interface for mobile device
US8201176B2 (en) 2008-08-06 2012-06-12 International Business Machines Corporation Detecting the starting and ending of a task when thread pooling is employed
US8504001B2 (en) 2008-08-12 2013-08-06 Apple Inc. Unified settings for multiple account types
US8560371B2 (en) 2008-09-26 2013-10-15 Microsoft Corporation Suggesting things to do during time slots in a schedule
JP4990258B2 (ja) 2008-11-14 2012-08-01 株式会社日立製作所 支援情報提示装置、支援情報提示方法及び支援情報提示プログラム
US8434053B2 (en) 2008-11-26 2013-04-30 Red Hat, Inc. Package review process workflow
US20100257015A1 (en) 2009-04-01 2010-10-07 National Information Solutions Cooperative, Inc. Graphical client interface resource and work management scheduler
US9008631B2 (en) 2009-05-01 2015-04-14 T-Mobile Usa, Inc. Providing context information during voice communications between mobile devices, such as providing visual media
US20100287320A1 (en) 2009-05-06 2010-11-11 Lsi Corporation Interprocessor Communication Architecture
US10706373B2 (en) 2011-06-03 2020-07-07 Apple Inc. Performing actions associated with task items that represent tasks to perform
US10241644B2 (en) 2011-06-03 2019-03-26 Apple Inc. Actionable reminder entries
US8626133B2 (en) 2009-08-19 2014-01-07 Cisco Technology, Inc. Matching a location of a contact with a task location
NZ581850A (en) 2009-08-27 2011-12-22 Eyemagnet Ltd Informational content scheduling system and method
US9460422B2 (en) 2009-11-20 2016-10-04 Sears Brands, L.L.C. Systems and methods for managing to-do list task items to automatically suggest and add purchasing items via a computer network
TWI588760B (zh) 2009-11-30 2017-06-21 萬國商業機器公司 關聯連絡資訊之工作管理系統及其方法
US20110145823A1 (en) 2009-12-10 2011-06-16 The Go Daddy Group, Inc. Task management engine
US8543527B2 (en) * 2010-01-08 2013-09-24 Oracle International Corporation Method and system for implementing definable actions
US8595824B2 (en) 2010-03-08 2013-11-26 Vmware, Inc. Task-based access control in a virtualization environment
US9356790B2 (en) 2010-05-04 2016-05-31 Qwest Communications International Inc. Multi-user integrated task list
US8904274B2 (en) 2010-05-14 2014-12-02 Xerox Corporation In-situ mobile application suggestions and multi-application updates through context specific analytics
US8381088B2 (en) 2010-06-22 2013-02-19 Microsoft Corporation Flagging, capturing and generating task list items
US20110313803A1 (en) 2010-06-22 2011-12-22 Microsoft Corporation Social Task Lists
US8375320B2 (en) 2010-06-22 2013-02-12 Microsoft Corporation Context-based task generation
JP5655392B2 (ja) 2010-06-23 2015-01-21 富士ゼロックス株式会社 印刷画像処理装置及びプログラム
US8854318B2 (en) 2010-09-01 2014-10-07 Nokia Corporation Mode switching
US9189549B2 (en) * 2010-11-08 2015-11-17 Microsoft Technology Licensing, Llc Presenting actions and providers associated with entities
US9805022B2 (en) 2010-12-09 2017-10-31 Apple Inc. Generation of topic-based language models for an app search engine
US9015140B2 (en) 2010-12-30 2015-04-21 Yahoo! Inc. System and method for providing contextual actions on a search results page
US9858092B2 (en) 2011-01-06 2018-01-02 Mitel Networks Corporation Contextual application launch via search query
JP5799512B2 (ja) 2011-01-31 2015-10-28 ソニー株式会社 情報処理装置、および情報処理方法、並びにプログラム
AU2012220669A1 (en) * 2011-02-22 2013-05-02 Visa International Service Association Universal electronic payment apparatuses, methods and systems
US9026942B2 (en) * 2011-02-25 2015-05-05 Cbs Interactive Inc. Song lyric processing with user interaction
US20120221384A1 (en) * 2011-02-28 2012-08-30 Qualcomm Innovation Center, Inc. System, method, and apparatus for organizing and distributing apps
US9262057B2 (en) * 2011-03-11 2016-02-16 Microsoft Techology Licensing, Llc Providing item specific functionality via service-assisted applications
US8766793B2 (en) 2011-03-25 2014-07-01 Microsoft Corporation Contextually-appropriate task reminders
US20120253916A1 (en) 2011-04-01 2012-10-04 Yahoo! Inc. Delivering ad-initiated emails to a user's visual email inbox to provide access to content
US20120278120A1 (en) 2011-04-29 2012-11-01 Siemens Product Lifecycle Management Software Inc. Cross-schedule dependencies using proxy tasks
US8949275B1 (en) 2011-04-29 2015-02-03 Google Inc. Inter-application to do list management
US8943514B2 (en) * 2011-04-30 2015-01-27 Samsung Electronics Co., Ltd. Middle partners
US8762360B2 (en) * 2011-05-06 2014-06-24 Microsoft Corporation Integrating applications within search results
US8818994B2 (en) * 2011-06-27 2014-08-26 Bmc Software, Inc. Mobile service context
US20130006689A1 (en) 2011-06-29 2013-01-03 Foliovision S.R.O. Methods, software, and systems for maintaining a single hierarchy of tasks across multiple projects and/or multiple task management tools
CN102253860A (zh) 2011-07-13 2011-11-23 深圳市万兴软件有限公司 一种异步操作方法及异步操作管理装置
US10192176B2 (en) 2011-10-11 2019-01-29 Microsoft Technology Licensing, Llc Motivation of task completion and personalization of tasks and lists
US8812416B2 (en) * 2011-11-08 2014-08-19 Nokia Corporation Predictive service for third party application developers
US8930473B2 (en) * 2012-02-20 2015-01-06 Powerinbox, Inc Application platform for electronic mail
US9811850B2 (en) 2012-04-08 2017-11-07 Microsoft Technology Licensing, Llc User task completion via open market of actions and/or providers
US20130275429A1 (en) 2012-04-12 2013-10-17 Graham York System and method for enabling contextual recommendations and collaboration within content
US8751493B2 (en) * 2012-04-23 2014-06-10 Google Inc. Associating a file type with an application in a network storage service
US9658872B1 (en) 2012-05-03 2017-05-23 Juniper Networks, Inc. Maintaining user identity associated with access to network resources using virtual machines
US10417037B2 (en) 2012-05-15 2019-09-17 Apple Inc. Systems and methods for integrating third party services with a digital assistant
US20130311285A1 (en) 2012-05-18 2013-11-21 Microsoft Corporation Apps in advertisements
US9111291B2 (en) 2012-06-19 2015-08-18 Yahoo! Inc. System and method for providing sponsored applications in email
US20130346981A1 (en) 2012-06-21 2013-12-26 Sony Network Entertainment International Llc Task management application for mobile devices
US20130346247A1 (en) * 2012-06-22 2013-12-26 Cullen E. Bash Recommending Options Based on Sustainability Metrics
US8990143B2 (en) 2012-06-29 2015-03-24 Intel Corporation Application-provided context for potential action prediction
US9626637B2 (en) 2012-09-18 2017-04-18 Salesforce.Com, Inc. Method and system for managing business deals
US20140082521A1 (en) 2012-09-20 2014-03-20 Handle, Inc. Email and task management services and user interface
US9477945B2 (en) 2012-09-27 2016-10-25 Oracle International Corporation Task-centered context management
US9313162B2 (en) 2012-12-13 2016-04-12 Microsoft Technology Licensing, Llc Task completion in email using third party app
US20140173602A1 (en) 2012-12-14 2014-06-19 Microsoft Corporation Matching Opportunity to Context
EP2973315A4 (en) 2013-03-15 2016-11-16 Adityo Prakash SYSTEMS AND METHODS FOR FACILITATING INTEGRATED BEHAVIORAL SUPPORT
US10535043B2 (en) 2013-06-10 2020-01-14 Microsoft Technology Licensing, Llc Navigating a calendar
US9483565B2 (en) 2013-06-27 2016-11-01 Google Inc. Associating a task with a user based on user selection of a query suggestion
US20150095268A1 (en) 2013-10-02 2015-04-02 Apple Inc. Intelligent multi-user task planning
WO2015051314A2 (en) 2013-10-04 2015-04-09 Clique Intelligence Systems and methods for enterprise management using contextual graphs
US9706007B2 (en) 2013-10-17 2017-07-11 Blue Syntax Consulting LLC System and method for querying disparate data sources in real time
US20150118672A1 (en) 2013-10-24 2015-04-30 Google Inc. System and method for learning management
WO2015127404A1 (en) 2014-02-24 2015-08-27 Microsoft Technology Licensing, Llc Unified presentation of contextually connected information to improve user efficiency and interaction performance
US20150269508A1 (en) 2014-03-18 2015-09-24 Mckesson Financial Holdings Method And Apparatus For Configuring A Task List
US9911088B2 (en) 2014-05-01 2018-03-06 Microsoft Technology Licensing, Llc Optimizing task recommendations in context-aware mobile crowdsourcing
US20160086116A1 (en) 2014-07-27 2016-03-24 Supriya Rao Method and system of an automatically managed calendar and contextual task list
US20160071064A1 (en) 2014-09-06 2016-03-10 Sugarcrm Inc. Context driven task creation and management
US9832149B2 (en) 2014-09-30 2017-11-28 Microsoft Technology Licensing, Llc Treatment of cloud-based and local attachments in communication applications
US9811791B2 (en) 2014-12-23 2017-11-07 Sap Se Personalized work planning based on self-optimizing role-based crowd-sourced information
US10872111B2 (en) 2015-01-14 2020-12-22 Lenovo Enterprise Solutions (Singapore) Pte. Ltd User generated data based map search
US10824636B2 (en) 2015-05-27 2020-11-03 Kaseya International Limited Mechanisms for querying disparate data storage systems
US20160379175A1 (en) 2015-06-23 2016-12-29 Mayukh Bhattacharya System and Method for Automated Optimized Personal Task Scheduling and Targeted Advertising
US10607498B2 (en) 2015-12-31 2020-03-31 Dropbox, Inc. Releasing assignments to students
US11107021B2 (en) 2016-11-06 2021-08-31 Microsoft Technology Licensing, Llc Presenting and manipulating task items

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN101006425A (zh) * 2004-03-10 2007-07-25 汉德马克公司 数据访问架构
CN102521317A (zh) * 2010-12-01 2012-06-27 微软公司 利用流动上下文的自动任务完成

Also Published As

Publication number Publication date
US20200065139A1 (en) 2020-02-27
US10528385B2 (en) 2020-01-07
KR20200099619A (ko) 2020-08-24
US11347540B2 (en) 2022-05-31
JP6263199B2 (ja) 2018-01-17
KR102146592B1 (ko) 2020-08-20
US20140173625A1 (en) 2014-06-19
KR102251597B1 (ko) 2021-05-12
KR20150095672A (ko) 2015-08-21
WO2014093929A1 (en) 2014-06-19
CN104919424A (zh) 2015-09-16
CN110083458A (zh) 2019-08-02
JP2016506568A (ja) 2016-03-03
US20220269529A1 (en) 2022-08-25
CN104919424B (zh) 2019-01-11
EP2932385A1 (en) 2015-10-21
HK1215081A1 (zh) 2016-08-12

Similar Documents

Publication Publication Date Title
CN110083458B (zh) 用于通过应用间通信来促进任务完成的系统和方法
US10810649B2 (en) User task completion via open market of actions and/or providers
US9558275B2 (en) Action broker
KR102005054B1 (ko) 웹페이지들로부터의 어플리케이션 런칭
US8924955B2 (en) Generating application recommendations based on user installed applications
US11175968B2 (en) Embedding an interface of one application into an interface of another application
US9262057B2 (en) Providing item specific functionality via service-assisted applications
JP2020173834A (ja) 通信セッションの状態の保存
US20110289015A1 (en) Mobile device recommendations
JP2010182309A (ja) アプリケーションプログラムのインテリジェントなダウンロード
US20120227035A1 (en) Cross platform service notification
KR102384626B1 (ko) 상이한 사이트들에 걸쳐 데이터를 채택하는 방법
TW201502947A (zh) 使直接app動作浮現
US20150067638A1 (en) Business-to-consumer extendable base application
KR102449543B1 (ko) 전자 장치 및 전자 장치에서 사용자의 정보를 획득하는 방법
US10007903B1 (en) System for transmitting customer data from a device

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
GR01 Patent grant
GR01 Patent grant