CN109074531A - 工作流事件的自动化 - Google Patents

工作流事件的自动化 Download PDF

Info

Publication number
CN109074531A
CN109074531A CN201780026421.3A CN201780026421A CN109074531A CN 109074531 A CN109074531 A CN 109074531A CN 201780026421 A CN201780026421 A CN 201780026421A CN 109074531 A CN109074531 A CN 109074531A
Authority
CN
China
Prior art keywords
data
supplier
expert
equipment
computer
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.)
Withdrawn
Application number
CN201780026421.3A
Other languages
English (en)
Inventor
N·乔希
W·H·霍姆斯
P·D·蒂什豪瑟
C·K·贾殷
T-H·佩尔赛特
R·A·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 CN109074531A publication Critical patent/CN109074531A/zh
Withdrawn legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/109Time management, e.g. calendars, reminders, meetings or time accounting
    • G06Q10/1093Calendar-based scheduling for persons or groups
    • G06Q10/1097Task assignment
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0631Resource planning, allocation, distributing or scheduling for enterprises or organisations
    • G06Q10/06316Sequencing of tasks or work
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/06Resources, workflows, human or project management; Enterprise or organisation planning; Enterprise or organisation modelling
    • G06Q10/063Operations research, analysis or management
    • G06Q10/0633Workflow analysis

Landscapes

  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Engineering & Computer Science (AREA)
  • Strategic Management (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Economics (AREA)
  • Physics & Mathematics (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Development Economics (AREA)
  • Educational Administration (AREA)
  • Game Theory and Decision Science (AREA)
  • Data Mining & Analysis (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)

Abstract

本文中所描述的技术提供了工作流事件的自动化。可以利用上下文数据来处理输入数据以生成工作流数据。工作流数据可以定义描述活动的经编排的模式的方面的多阶段过程。在一些配置中,可以由一个或多个计算设备来接收指示日历事件的输入数据。输入数据可以包括语音输入或文本描述,其指示要发起项目、定义目标、达成一个或多个度量等的期望。响应于接收到输入数据,可以从多个资源接收上下文数据,所述资源包括具有针对特定主题的知识库的专用资源。本文中所公开的技术利用上下文数据来生成可以定义多阶段过程的工作流数据。可以通过工作流数据生成日历事件、提醒以及其他形式的通信。

Description

工作流事件的自动化
背景技术
计算机用户利用日历程序来安排预约、保存记录以及与彼此传送信息。尽管现有的日历程序提供了许多特征来帮助用户协调事件和共享信息,但当谈论到数据录入以及人类与这样的程序的交互的效率时,现有的技术有时可能是有些繁琐的。
在许多情况下,当用户安排预约时,他或她需要在多个数据录入字段中手动地录入数据,例如时间、日期、参与者的名字、以及其他相关数据。当用户在进行与大量预约相关联的项目时,这样的任务可能是愈发繁琐的。除了需要用户针对每个预约手动地录入数据,用户可能还需要编译和管理信息以用于布置和协调每个预约。这样的管理和协调任务可能需要一个或多个相关主题中的深入的知识库或者专业知识。当这样的场景被呈现时,与现有的日历程序的用户体验可能是不理想的,并且有时极其低效率。
关于这些和其他考虑呈现了在本文中进行的公开内容。
发明内容
在本文中所描述的技术提供了工作流事件的自动化。一般而言,可以利用上下文数据来处理输入数据以生成工作流数据。工作流数据可以定义描述活动的经编排的模式的方面的多阶段过程。例如,工作流数据可以定义使能对资源的***化组织的阶段的时间线,所述资源可以转换材料、提供服务或者处理信息。在一些配置中,可以由一个或多个计算设备来接收指示日历事件的输入数据。输入数据可以定义日历事件的日期和时间以及描述。在一些配置中,输入数据可以包括语音输入或文本描述,其指示要发起项目、定义目标、达成一个或多个度量等的期望。在一些配置中,可以分析包括文本描述的输入数据以确定主题、目标或者一个或多个度量。响应于接收到输入数据,可以从多个资源接收上下文数据,所述资源包括具有针对特定主题的知识库的专用资源。例如,如果输入数据指示要安排医疗预约,则***可以从美国医学协会以及其他资源(例如,医学记录的数据库以及其他专业资源)收集上下文数据。
本文中所公开的技术利用上下文数据来生成可以定义多阶段过程的工作流数据。在当前示例中,如果医疗预约包括针对孩子的常规检查,则本文中所公开的技术可以识别并且安排由一个或多个资源所推荐的其他检查和其他预约,例如免疫注射。本文中所公开的技术可以生成许多不同形式的通信以协调每个阶段的方面。例如,一个或多个计算设备可以生成电子邮件、通知、提醒、预约、以及可以用于协调所生成的工作流数据的方面的其他形式的数据。
对诸如安排数据之类的上下文数据的任何分析可以使得***能够生成日历事件并且缓解关于工作流的阶段的安排冲突。另外,对诸如地图数据、交通数据、位置数据、天气数据、地图数据、安排数据、工作负荷数据、工作历史数据、支付数据以及专业数据之类的上下文数据的分析可以用于对所建议的日历事件的候选时隙进行识别和排序。对这样的上下文数据的使用可以对一方或多方有利。由本文中所公开的技术所生成的推荐可以用于缓解安排冲突、减少通勤(commute)、并且增加用户可以在预约之间成功地通勤的概率,此外还有许多其他益处。
本文中所公开的技术可以分析上下文数据以识别在工作流数据中定义的突出的阶段。例如,可以从对工作流数据的分析来生成日历事件。所述日历事件可以具有指示优先级的数据和/或定义“可中断性”等级的数据。除了生成和传送提醒、通知、日历事件、文档、电子邮件之外,本文中所公开的技术可以生成诸如感谢电子邮件、问候等的专用通信。
应当领会的是,上文描述的主题还可以被实现为计算机控制的装置、计算机过程、计算***、或者被实现为诸如计算机可读介质之类的制品。通过阅读以下的具体实施方式和审阅相关联的附图,这些和各种其他特征将是显而易见的。
提供了本发明内容以用简化形式介绍对将在下文的具体实施方式中进一步描述的构思的选择。本发明内容并不旨在标识所要求保护的主题的关键特征或必要特征,也不旨在本发明内容要用于限制所要求保护的主题的范围。此外,所要求保护的主题不限于解决了在本公开内容的任何部分中所述的任何或全部缺点的实施方式。
附图说明
参考附图描述了具体实施方式。在附图中,附图标记的最左边的数字标识了该附图标记第一次出现所在的图。不同图中的相同的附图标记指示相似或相同的项。
图1是示出了用于使能工作流事件的自动化的说明性***的框图。
图2A-2B包括示出了说明性图形用户界面的屏幕图,该图形用户界面被配置有用于接收输入数据的图形元素以及被配置为示出工作流数据的方面的图形元素。
图3A-3B包括示出了图形元素的屏幕图,该图形元素被配置为示出工作流数据以及针对工作流的阶段的候选选项的经排序的列表的方面。
图4是示出了例程的流图,所述例程示出了本文中所公开的用于使能工作流事件的自动化的机制的方面。
图5是计算机架构图,其示出了能够实现在本文中所呈现的技术和方法的方面的计算***的说明性计算机硬件和软件架构。
图6是示出了能够实现在本文中所呈现的技术和方法的方面的分布式计算环境的图。
图7是计算机架构图,其示出了能够实现在本文中所呈现的技术和方法的方面的计算设备的计算设备架构。
具体实施方式
以下具体实施方式描述了使能工作流事件的自动化的技术。一般而言,可以利用上下文数据来处理输入数据以生成工作流数据。工作流数据可以定义描述活动的经编排的模式的方面的多阶段过程。例如,工作流数据可以定义使能对资源的***化组织的阶段的时间线,所述资源可以转换材料、提供服务或者处理信息。在一些配置中,可以由一个或多个计算设备来接收指示日历事件的输入数据。输入数据可以定义日历事件的日期和时间以及描述。在一些配置中,输入数据可以包括语音输入或文本描述,其指示要发起项目、定义目标、达成一个或多个度量等的期望。在一些配置中,可以分析包括文本描述的输入数据以确定主题、目标或者一个或多个度量。响应于接收到输入数据,可以从多个资源接收上下文数据,所述资源包括具有针对特定主题的知识库的专用资源。例如,如果输入数据指示要安排医疗预约,则***可以从美国医学协会以及其他资源(例如,医学记录的数据库以及其他专业资源)收集上下文数据。
本文中所公开的技术利用上下文数据来生成可以定义多阶段过程的工作流数据。在当前示例中,如果医疗预约包括针对孩子的常规检查,则本文中所公开的技术可以识别并且安排由一个或多个资源推荐的其他检查和其他预约,例如免疫注射。本文中所公开的技术可以生成许多不同形式的通信以协调每个阶段的方面。例如,一个或多个计算设备可以生成电子邮件、通知、提醒、预约、以及可以用于协调所生成的工作流数据的方面的其他形式的数据。
通过使用在本文中所描述的技术,可以利用来自多个资源的上下文数据来使能工作流事件的自动化。这样的技术可以通过基于初始输入而自动地生成工作流数据来改进与计算设备的用户交互。工作流数据的生成对于协助正在协调项目的方面(例如,生成日历事件)的用户而言可以是有利的。可以改进与设备的用户交互,这可以降低非故意输入的数量、降低处理资源的消耗、并且缓解网络资源的使用,此外还有由在本文中所描述的技术所提供的许多益处。还可以通过本文中所公开的技术的实施方式实现除了在本文中所提及的技术效果之外的其他技术效果。
应当领会的是,上文描述的主题还可以被实现为计算机控制的装置、计算机过程、计算***、或者被实现为诸如计算机可读介质之类的制品。通过阅读以下的具体实施方式和审阅相关联的附图,这些和各种其他特征将是显而易见的。此外,所要求保护的主题不限于解决了在本公开内容的任何部分中所述的任何或全部缺点的实施方式。
如将在本文中更加详细地描述的,应当领会的是,本文中所描述的技术和方法的实施方式可以包括对固态电路、数字逻辑电路、计算机组件、和/或在一个或多个设备上执行的软件的使用。本文中所描述的信号可以包括用于传送改变的状态、运动、和/或与运动检测相关联的任何数据的模拟和/或数字信号。由计算设备的用户所捕获的手势可以使用任何类型的传感器或输入设备。
尽管在结合对计算机***上的操作***和应用程序的执行而执行程序模块的一般上下文中呈现了在本文中所描述的主题,但是本领域技术人员将认识到可以结合其他类型的程序模块来执行其他实施方式。一般而言,程序模块包括例程、程序、组件、数据结构、以及执行特定任务或实现特定抽象数据类型的任何其他类型的结构。此外,本领域技术人员将领会,可以利用其他计算机***配置来实践在本文中所描述的主题,包括手持设备、多处理器***、基于微处理器的或可编程的消费性电子产品、小型计算机、大型机计算机等。
在以下的详细描述中,对形成了其一部分并且其中通过示出具体配置或示例的方式示出的附图进行了参考。现在参考附图,其中,相同的附图标记贯穿若干附图,用于提供工作流事件的自动化的计算***、计算机可读存储介质以及计算机实现的方法的方面表示相同的元素。如将在下文中关于图5-7更加详细地描述的,存在可以实施在本文中所描述的功能和技术的多个应用和服务。
图1是示出了一个示例性环境100的方面的框图,所述示例性环境100在本文中还被称为“***100”,其在本文中被公开以用于提供工作流事件的自动化。在一个说明性示例中,示例性环境100可以包括一个或多个服务120、一个或多个网络150、一个或多个客户设备101A-101B(统称为“客户设备101”)、一个或多个提供者设备104A-104D(统称为“提供者设备104”)以及一个或多个资源106A-106E(统称为“资源106”)。客户设备101可以用于与一个或多个客户103A-103B(统称为“客户103”)的交互,而提供者设备104可以用于与一个或多个服务提供者105A-105D(统称为“服务提供者105”)的交互。该示例是出于说明性目的而被提供的,并且不被理解为进行限制。应当领会的是,示例性环境100可以包括任何数量的设备、客户、提供者和/或任何数量的服务器120。
出于说明性的目的,服务提供者105可以是公司、个人、或者能够为客户103提供服务或产品的任何类型的实体,客户103也可以是公司、个人或其他实体。出于说明性的目的,服务提供者105和客户103在本文中可以一般地和个体地被称为“用户”。一般而言,本文中所公开的技术使得用户能够利用来自多个资源106的上下文数据来生成工作流数据128和与工作流数据128有关的其他数据对象。在一些配置中,数据对象可以包括与工作流的阶段有关的一个或多个日历事件。可以分析上下文数据以确定针对个体阶段的一个或多个候选时隙。所述候选时隙可以基于上下文数据而被排序,并且候选时隙的经排序的列表可以被呈现给用户以供选择。
客户设备101、提供者设备104、服务器120和/或被配置有本文中所公开的特征的任何其他计算机可以通过一个或多个局域网和/或广域网(例如,网络150)来相互连接。另外,计算设备可以使用诸如蓝牙、WIFI、WIFI直连、NFC、或任何其他合适的技术之类的任何技术来进行通信,所述技术可以包括基于光的、有线的、或无线的技术。应当领会的是,可以利用比在本文中所描述的多得多的类型的连接。
客户设备101或提供者设备104(统称为“计算设备”)可以用作独立的设备,或者这样的设备可以结合诸如一个或多个服务器120之类的其他计算机来操作。个体计算设备可以采用以下形式:个人计算机、移动电话、平板设备、包括头戴显示器(HMD)或手表在内的可穿戴计算机、或者具有用于与一个或多个用户和/或远程计算机进行交互的组件的任何其他计算设备。在一个说明性示例中,客户设备101和提供者设备104可以包括在本文中也被称为“计算机可读存储介质”的本地存储器180,其被配置为对诸如客户端模块102和在本文中所描述的其他上下文数据之类的数据进行存储。
服务器120可以采用以下形式:个人计算机、服务器群、大规模***、或者具有用于在一个或多个计算设备之间处理、协调、收集、存储和/或传送数据的组件的任何其他计算***。在一个说明性示例中,服务器120可以包括在本文中也被称为“计算机可读存储介质”的本地存储器180,其被配置为对诸如服务器模块121和在本文中所描述的其他数据之类的数据进行存储。服务器120还可以包括组件和服务,例如应用服务,并且在图6中被示出为用于提供、接收、处理上下文数据并且执行在本文中所描述的技术的一个或多个方面。如在本文中更加详细地描述的,任何合适的模块可以结合其他模块或设备来操作以实现本文中所公开的技术的方面。
在一些配置中,应用编程接口199(“API”)显露接口,通过该接口,在计算设备上执行的操作***和应用程序可以使能本文中所公开的功能。通过对该数据接口和其他接口的使用,操作***和应用程序可以传送并处理上下文数据以修改安排数据,如在本文中所描述的。
***100可以包括多个资源,例如交通数据资源106A、地图数据资源106B、搜索引擎资源106C、专业数据106D以及天气数据资源106E(在本文中统称为“资源106”)。资源106可以是服务器120的一部分或者与服务器120是分开的,并且资源106可以提供上下文数据,包括交通数据124、位置数据125、专业数据126、地图数据127、工作流数据128、偏好数据129、支付数据130、安排数据131、工作负荷数据132、工作历史数据133、状态数据134、技能集合数据135、天气数据136、以及在本文中所描述的其他数据。元数据可以包括但不限于人员的名字、公司名称、联系人信息、位置数据、以及与提供者105或客户103有关的任何其他数据。在一些配置中,元数据140可以包括适合于填充用户界面的一个或多个数据录入字段的任何格式。
这些示例性资源106和上下文数据是出于说明性的目的提供的,并且不被理解为进行限制。应当领会的是,本文中所公开的技术可以利用比在图1中所示出的更多或更少的资源106。还应当领会的是,在图1中所示出的资源中的一些资源可以从诸如社交网络、电子商务***、政府***以及其他类似的源之类的其他资源获得任何类型的上下文信息。例如,来自电子商务***的销售数据可以用于确定客户或提供者的性能指标。
安排数据131可以定义针对客户103和提供者105的预约。安排数据131可以定义开始时间和结束时间。如果预约与地理位置、全球坐标、地址、房间号、以及标识位置的其他信息相关联,则安排数据131还可以包括位置数据125。安排数据131可以定义单个预约或一系列预约。另外,安排数据131可以包括通信信息,例如电话号码、IM地址、URL、或者用于促进语音或视频会议的其他信息。安排数据131还可以包括预约的文本描述以及指示主题、服务、类别、客户103和/或提供者105的其他数据。安排数据131可以被存储在服务器120、客户设备101、提供者设备104、或者可以包括基于Web的服务的任何合适的计算设备上。
地图数据127可以定义地理区域内的道路以及其他类型的行进路径。地图数据127还可以包括拓扑数据以及可以影响用户从一个位置到另一位置的通勤的其他数据。地图数据127还可以包括定义建筑、住宅和其他地标的数据。地图数据127还可以包括图像数据,其可以包括地理区域内的道路和路径的卫星图像,以及建筑、住宅和其他地标的图像。地图数据127可以来自多个资源,包括基于web的服务、政府服务或者其他资源。
交通数据124可以包括对地理区域内的车辆交通的实时更新。交通数据124还可以包括历史行进数据,其可以用于预测两个或更多个位置之间的行进时间。交通数据124可以采用用于定义两个或更多个位置之间的预测的行进时间的任何合适的格式,其考虑到行进的时间、在行进时间的天气、在行进时间的交通、以及可能影响预测的行进时间的其他因素。交通数据124可以来自多个资源,包括基于web的服务、政府服务或者其他资源。
天气数据136可以包括指示天气状况的当前、历史和预告数据。天气数据136可以包括关于风、降水、温度、以及可能影响从一个位置到另一个位置的通勤的其他状况的数据。天气数据136可以采用用于使能对两个或更多位置之间的行进时间的预测的任何合适的格式。天气数据136可以来自多个资源,包括基于web的服务、政府服务、或者其他资源。
专业数据126可以包括与专业、科目、主题、一个或多个行业或者感兴趣的领域有关的信息。例如,专业数据126可以包括与诸如儿科、牙科等的医学主题有关的细节。在其他示例中,专业数据126可以与疾病、治疗、病情以及其他类似主题有关。专业数据126可以从多个不同的资源获得,包括基于web的资源,例如由WebMD、美国医学协会以及疾病控制中心所提供的网站。这些示例是出于说明性的目的提供的,并且不应被理解为进行限制,这是由于专业数据126可以与感兴趣的任何主题或领域有关。
工作流数据128可以定义多步骤过程以及过程的每个步骤内的属性定义。可以从包括基于web的资源在内的不同资源获得工作流数据128。另外,可以从诸如专业数据126之类的其他数据导出工作流数据128。例如,可以分析与儿科有关的专业数据126来确定涉及多个步骤的过程,所述多个步骤可以包括免疫注射、跟进检查、以及在某些时间所推荐的其他里程碑和任务。
工作负荷数据132可以包括针对提供者安排的多个服务、项目或者预约的列表。例如,工作负荷数据132可以列出当前针对公司所安排的多个项目。工作负荷数据132还可以是基于安排数据131的,例如针对医生所安排的多个预约。工作负荷数据131还可以定义一个或多个门限。这样的数据可以用于确定公司或个人处于、低于还是高于给定的负荷量(capacity)。在一些配置中,工作负荷数据132定义指示个体提供者相对于预先确定的工作负荷量的能力的值。
技能集合数据135识别并量化特定的公司或个人的技能和/或能力的范围。技能集合数据135可以包括数据的层级,其标识行业、行业内的专业化、以及关于在过去已经被执行的这些具体项目的细节。例如,技能集合数据135可以将一公司识别为能够执行特定类型的装修的建筑公司。技能集合数据135还可以提供关于特定装修项目的细节以及与那些项目有关的专业化特征。技能集合数据135可以适用于与任何行业有关的任何公司或个人。
工作历史数据133可以包括与提供者105或客户103有关的性能指标。例如,工作历史数据133可以指示由提供者105执行的一个或多个项目的质量。工作历史数据133可以包括一批不同的性能指标,所述性能指标可以关于及时性、生产力、精确度、价格、其他指标及其组合。在其他示例中,工作历史数据133可以指示与客户103相关联的性能指标。在这样的示例中,客户103可以与一批不同的性能指标相关联,所述性能指标可以关于信用分数,或者与公司、个人、或个人的群组的行为相关联的任何其他分数。
支付数据130可以包括在两方或更多方之间进行的支付的记录。支付数据130还可以包括指示支付被进行的及时性。支付数据130还可以包括信用分数,或者指示进行及时支付的可靠性和/或能力的任何其他数据。
状态数据134可以定义一方或多方的可用性。例如,状态数据134可以指示一方是不可用的、是可用的、还是直到特定的日期为止都是不可用的。状态数据134还可以定义可用性的等级。这些示例是出于说明性的目的提供的,并且不应被理解为进行限制。应当领会的是,状态数据134包括指示公司、个人、或个人的群组的可用性的一种形式的数据。
偏好数据129可以包括客户定义的偏好或者提供者定义的偏好。在一些配置中,偏好数据129可以包括指示优先级、偏好和/或目标的多个加权的参数。例如,提供者105可以指示他们对识别关于预约准时的客户感兴趣。在其他示例中,提供者105可以指示他们对具有良好信用的客户或者可能具有特定支付历史的客户感兴趣。在一些配置中,提供者定义的偏好可以包括参数和/或优先级的组合,其使得***100能够识别、选择和排序对提供者具有长期价值或短期价值的客户。在一个说明性示例中,提供者定义的偏好可以识别关于客户的多个性能度量,并且每个性能度量可以被加权以使得提供者105能够识别具有“高终身价值”的客户。这样的偏好可以被配置用于期望获取可以关于长期目标对其公司有利的客户的提供者。偏好数据129可以包括提供者定义的偏好,其使得***100能够识别、选择和排序高容量客户、高端客户、以及适合一个或多个商业模型的其他类型的客户或用户。除了识别优选的客户之外,本文中所公开的技术还可以使得提供者能够“解雇(fire)”(例如,终止)不希望的客户。
在一些配置中,偏好数据129可以帮助客户识别和/或终止提供者。在一些配置中,客户定义的偏好可以指示他们对识别具有特定质量评级的提供者105感兴趣。偏好数据129还可以包括用于指示参数、目标和/或优先级的组合的其他数据。例如,偏好数据129可以包括客户定义的偏好,其使得***100能够识别、选择、排序高容量提供者、高端提供者、以及满足客户的需求的其他类型的提供者。
偏好数据129还可以定义指示特定的项目、工作、预约或事件的“可中断性”的等级的值。如将在本文中所提供的示例中描述的,客户103或提供者105可以指示特定的日历事件是否可以被其他日历事件提议中断。这样的特征使得本文中所公开的技术能够解决日历事件之间的冲突,并且在冲突出现的情况下识别替代计划。
应当领会的是,日历事件的可中断性等级、优先级或其他偏好可以来自多个源。例如,优先级或可中断性等级可以在日历事件被创建时被传送。在一些配置中,日历事件的优先级可以是基于由日历事件的发送者所指示的优先级的。在这样的示例中,录入输入数据的用户可以指示优先级或可中断性等级。另外,日历事件的优先级可以是基于由日历事件的接收者所建立的优先级的。在这样的示例中,接收者可以接受针对预约的邀请,并且提供指示优先级和/或可中断性等级的输入数据。优先级和/或可中断性等级还可以是来自日历事件的发送者和接收者的输入的组合。
现在转到图2A-2B,示例性图形用户界面(UI)被配置为显示和接收与本文中所公开的技术有关的数据。示例性UI可以被显示给期望安排日历事件或者以其他方式提供输入数据的用户。尽管以下示例包括有关项目或有关日历的界面,但应当领会的是,本文中所公开的技术可以应用于被配置为采用任何合适形式的输入(包括语音命令、手势等)的任何用户界面。还应当领会的是,本文中所公开的示例可以适用于任何类型的用户,例如客户103或提供者105。
图2A是屏幕图,其示出了说明性图形UI 200,该图形UI 200显示与用于使能工作流事件的自动化的技术有关的数据。UI 200可以由在图1中示出的客户端模块102生成,并且在诸如客户设备101或提供者设备104之类的计算设备上被呈现。
如在图2A中所示出的,UI 200包括对用于接收和显示数据的多个图形元素的显示。在该示例中,UI 200包括用于接收优选的预约日期的“日期”UI元素205A、用于接收优选的预约时间的“时间”UI元素205B、用于接收指定至少一个提供者105的名字的数据的“提供者名字”UI元素205C、用于接收与预约有关的数据的“评论”UI元素205D。与预约有关的数据可以包括例如文本描述、图像、链接、元数据、或者与预约有关的其他信息。图2A的示例是出于说明性的目的提供的,并且不应被理解为进行限制。应当领会的是,输入数据可以采用其他形式,例如指示对发起项目、安排一系列会议等感兴趣的文本描述。输入数据可以采用任何格式,例如,文本消息、电子邮件、或者音频文件,或者适合于发起用于生成工作流数据的过程的任何格式。
响应于接收到输入数据,可以从多个资源接收上下文数据,所述资源包括具有针对一个或多个主题的知识库的专业化资源。例如,如果输入数据指示医疗预约将被安排,则***可以从美国医学协会(AMA)和其他资源(例如,医学记录的数据库、以及其他专业资源)收集上下文数据。所述上下文数据还可以包括交通数据124、位置数据125、专业数据126、地图数据127、偏好数据129、支付数据130、安排数据131、工作流数据132、工作历史数据133、状态数据134、技能集合数据135、天气数据136以及其他数据。上下文数据还可以包括从一个或多个资源接收的工作流数据128。例如,AMA数据存储区可以提供工作流数据128,其能够由***100解译以生成输出数据,所述输出数据包括对从一个或多个资源接收的工作流数据128的编译。
本文中所公开的技术利用上下文数据来生成可以定义多阶段过程的工作流数据。在当前示例中,如果医疗预约包括针对孩子的常规检查,则本文中所公开的技术可以识别和安排由一个或多个资源推荐的其他检查和其他预约,例如免疫注射。在另一示例中,如果客户指示他们购买了一辆新车,则本文中所公开的技术可以访问保养店的数据库、保养店的电子日历、制造商的网站、车主的电子日历、具有适合于进行交通预测的历史趋势的交通数据库、以及其他数据。
基于这样的上下文数据以及其他数据,可以生成指示指示保养安排的工作流数据。所述工作流数据可以定义针对诸如更换机油、轮胎换位、电池更换以及其他类似项目之类的项目的多个预约。在这样的示例中,可以通过从汽车制造商网站、百科全书、专业数据库、社交网站以及任何其他合适的资源接收上下文数据来生成工作流数据。一旦生成了工作流数据,可以将示出工作流数据的方面的图形表示显示给用户。
图2B示出了包含图形元素300的一个示例性UI 200,所述图形元素300示出了由本文中所公开的技术所生成的流数据的方面。如将在下文中更加详细地描述的,图形元素300可以包括时间线,其示出了日期、里程碑、阶段、里程碑和/或阶段的文本描述、预约、推荐、突出的事件、以及其他信息。
如在上文中总结的,本文中所公开的技术可以生成电子邮件、通知、提醒、预约、以及可以用于协调所生成的工作流数据的方面的其他形式的数据。在图2B中所示出的示例中,显示所生成的预约的概要。除了显示所述预约,还显示被配置为接收用于进行控制的命令的图形元素。在该示例中,通过使用所述命令,用户可以接受或拒绝所提出的预约。另外地或替代地,本文中所公开的技术可以基于一个或多个因素(例如,安排冲突的存在或不存在)来自动地接受或拒绝预约。
图3A示出了图形元素300的详细视图,所述图形元素300示出了由本文中所公开的技术所生成的工作流数据128的方面。该说明性示例包括示出了时间线的日期,以及与多阶段过程的各个阶段相关联的多个动作,例如预约和通信。在该示例中,第一预约301示出了由数据所生成的日历事件。在该示例中,第一预约301是基于针对一岁孩子的检查的输入数据而被生成的。在该示例中,利用诸如来自多个医学专家数据存储区的专业数据126之类的上下文数据来生成多个事件。在本示例中,生成第二预约302。在该示例中,第二预约302包括针对病人的第一轮免疫注射。在一些配置中,基于对诸如工作流数据、安排数据以及其他数据之类的上下文数据的分析,可以针对第二预约302而生成日历事件。同样在该示例中,生成第三预约303。第三预约303包括针对病人的血液测试。在该示例中,第三预约303包括血液测试。类似于第二预约302,第三预约303基于对上下文数据的分析而自动地被安排。该示例涉及被安排为在特定日期递送的未来通信305。
在一些配置中,所生成的日历事件的日期和时间(例如,时隙)可以是基于所涉及的一方或多方(例如,医疗提供者或病人)的可用性的。所生成的日历事件的日期和时间还可以是基于位置信息、地图信息、以及使得病人和/或提供者能够成功地通勤至预约的其他信息。如将在下文中更加详细地描述的,偏好数据和其他数据的使用可以用来识别时隙。除了生成针对时隙的推荐之外,本文中所公开的技术还可以包括对一个或多个提供者的选择。在另一特征中,所生成的推荐(其可以包括候选时隙和/或候选提供者)可以基于对上下文数据的分析而被排序。候选时隙和/或候选提供者的经排序的列表也可以接近于所生成的工作流的相关部分而被显示。
图3B示出了图形元素307的一个示例,所述图形元素307用于显示候选时隙和/或候选提供者的经排序的列表的方面。在该所示出的示例中,图形元素307包括由工作流数据所定义的阶段的文本描述。在该示例中,该阶段包括第一轮免疫注射。另外,图形元素307包括项目的经排序的列表,其中,每个项目标识候选时隙和候选提供者。尽管该示例示出了针对每个项目的候选时隙和候选提供者二者,但应当领会的是,项目的经排序的列表可以包括针对单个提供者的候选时隙或者针对单个时隙的多个提供者。可以领会的是,本文中所公开的技术可以基于在本文中所描述的上下文数据或者适合于影响对项目的排序的任何其他数据来对任何类型的项目进行排序。
在该示例中,第一项目推荐与Dr.Howson在第一日期和第一时间的预约,与Dr.Woodward在第二日期和第二时间的预约、以及与Dr.Barry在第三日期和第三时间的预约。如将在下文中更加详细地描述的,可以分析与提供者和/或客户(例如,病人或病人的父母)有关的上下文数据以影响对每个项目的排序。在本示例中,可以取决于对上下文数据的分析而将免疫注射或血液测试与不同的提供者对应。在一些配置中,可以分析所述上下文数据来选择各种提供者,所述提供者与由提供者所定义的目标和标准以及由客户(例如,病人)所定义的目标和标准相匹配。
对候选提供者和/或候选时隙的选择和/或排序可以是基于多个因素的。在一些配置中,对安排数据131的分析可以影响对一个或多个提供者的选择或排序。例如,本文中所公开的技术可以识别在所生成的工作流数据中所指示的日期和时间处可用的一个或多个提供者。如果一个或多个提供者在由所生成的工作流数据所指示的期望的日期和时间期间是可用的,则这样的提供者可以在提供者的经排序的列表中被选择和/或排序。具有空闲安排的提供者可以比具有冲突的提供者更高地被排序。
另外,冲突的严重性可以影响对候选提供者和/或候选时隙的排序和/或选择。在一些配置中,本文中所公开的技术可以使得生成指示冲突的严重性的数据。这样的量化可以基于多个因素,包括两个或更多个实体的安排日期、在两个或更多个预约之间通勤的可能性、以及可以用于确定会议是不太可能的或是可能的其他因素。指示冲突的严重性的数据还可以是基于指示安排冲突是不可调和的或是可调和的因素的。指示冲突的严重性的数据还可以是基于关于特定日历事件的优先级和可中断性的程度的。例如,如果两个会议被确定为具有高程度的可中断性,则这样的冲突的严重性可以高于在仅一个日历事件具有高程度的可中断性的情况下的冲突。
在一个示例中,可以分析与一个或多个提供者105和客户103相关联的安排数据131来确定是否存在安排冲突。候选提供者和/或候选时隙的排序可以受到安排冲突的严重性的影响。例如,如果第一提供者具有完全与由输入数据所定义的预约重叠的安排冲突,则第一提供者的排序可以低于具有不完全与由输入数据所定义的预约重叠的安排冲突的另一提供者。与极其严重的冲突相关联的候选提供者和/或候选时隙可以低于与较不严重的冲突相关联的候选提供者和/或候选时隙而被排序。
在一些配置中,对位置数据125、地图数据127、天气数据136和/或交通数据124的分析可以影响对候选提供者和/或候选时隙的选择和/或排序。例如,如果第一提供者涉及比第二提供者更短的通勤,则第一提供者可以高于第二提供者而被排序。这样的分析还可以涉及地图数据、天气数据、以及用于确定对通勤时间、通勤的可能性、和/或通勤的困难程度的预测的其他数据。
在一些配置中,对位置数据125和安排数据131的分析可以影响对候选提供者和/或候选时隙的选择和/或排序。例如,如果特定提供者具有彼此临近的两个日历事件,则可以确定所述事件之间成功通勤的可能性。具有高可能性成功通勤的提供者可以高于具有低可能性成功通勤的提供者而被排序。
这样的分析可以适用于客户的通勤。例如,如果客户具有彼此临近的两个预约,则与客户在所述预约之间通勤相关联的可能性可以影响对一个或多个提供者的选择和/或排序。例如,如果用户安排数据131指示客户仅有20分钟来通勤至特定提供者的位置,则可以分析地图数据127、交通数据124以及其他上下文数据来确定该通勤在给定的时间框内是否是可能的。可以生成针对通勤到每个提供者的可能性,并且每个提供者可以基于这样的生成的数据而被排序。另外,如果该可能性不满足或超过一个或多个门限,则一个或多个提供者可以从列表中被过滤。
提供者的经排序的列表还可以是基于地图数据127、交通数据124、位置数据125、天气数据136和/或其他数据的。在这样的配置中,交通数据124可以指示在输入数据中所指示的期望的日期和时间的交通状况。在这样的配置中,一个或多个设备和/或服务器120可以基于交通模式来生成用于确定用户或提供者是否可以完成预约的预测。例如,如果预约是针对工作日拥挤时间安排的,则如果与特定提供者相关联的通勤受到这样的交通状况的影响,则本文中所公开的技术可以改变该特定提供者的排序。这样的分析可以受到在天气数据136中所定义的预报的影响。例如,如果天气数据136指示有利的预报,则受到这样的预报影响的提供者的排序可以提高。另外,如果天气数据136指示不利的预报,则受到这样的预报影响的提供者的排序可以降低。
在一些配置中,对工作历史数据133、技能集合数据135、工作流数据128、工作负荷数据132和/或其他上下文数据的分析可以影响对候选提供者和/或候选时隙的选择和/或排序。例如,具有高质量评级的特定提供者可以高于具有低质量评级的提供者而被排序。在另一示例中,可以分析技能集合135以确定提供者的能力是否符合与特定预约相关联的目标。量化提供者的技能集合与一个或多个目标之间的符合度的数据可以影响对该提供者和/或其他提供者的排序。
在另一示例中,具有较重工作负荷的提供者可以高于或低于具有较轻工作负荷的提供者而被排序。在另一示例中,可以分析工作流数据128以确定特定提供者的排序。例如,定义多步骤过程的工作流数据128指示特定的提供者更适合于特定的步骤,对这样的提供者的排序可以高于对较不适合该特定步骤的提供者的排序。这些示例是出于说明性的目的提供的,并且不应被理解为进行限制。
在一些配置中,工作历史数据133可以定义两个或更多个实体之间的关系的状态。例如,如果两个或更多个实体当前从事一个项目,则关于客户和/或提供者的排序可以提高。如果两方或更多方已经一段时间没有一起工作过,则关于客户和/或提供者的排序可以取决于期望的结果而提高或降低。例如,如果具有高终身价值的客户(例如,Bill Gates的家族)期望设定与提供者的预约,则寻求这样的客户/病人的提供者可以高于其他提供者而被排序。在另一示例中,如果病人的偏好数据指示与具有某一状态的医生或其他提供者(例如,排名前10的专家)工作的期望,则与客户目标相匹配的这样的提供者可以高于与该目标不匹配的其他提供者而被排序。
在一些配置中,对提供者排序和/或选择可以是基于支付历史数据的。例如,如果客户的支付是按时规律地进行的,则对期望这样的客户的提供者的排序可以提高。在一些配置中,偏好数据可以定义针对提供者的门限。如果与客户相关联的性能数据降到门限之下(例如,关于支付、通信和/或投诉的),则本文中所公开的技术可以促使提供关于客户关系应当终止的通知的数据的生成。可以响应于再一个条件而生成提供对提醒的通知的其他数据,所述再一个条件例如逾期支付、逾期支付的历史、投诉等。在这样的配置中,可以在***发现了这样的条件时生成电子邮件、会议通知、或其他形式的数据对象。
返回示例3B,图形元素307示出了多个候选提供者和候选时隙。图形元素307可以被配置为接收对经排序的列表中的至少一个项目的选择,例如用户选择。对至少一个项目的选择可以促使日历事件的生成,所述日历事件可以被传送至多个用户以供验证和处理。可以将定义日历事件的安排数据存储在一个或多个设备和/或服务器中。另外,可以基于这样的安排数据来生成通知、提醒和其他形式的通信。
如在上文中所总结的,本文中所公开的技术可以生成许多不同形式的通信以协调在所生成的工作流数据128中定义的每个节点的方面。例如,一个或多个计算设备可以生成电子邮件、通知、提醒、预约、以及可以用于协调所生成的工作流数据128的方面的其他形式的数据。例如,参考图1,与免疫注射有关的日历事件可以被传送至一个或多个提供者、客户、以及其他计算机用户。通信可以使用可以包括社交网络、日历程序等的机制的任何组合。
在本文中所提供的示例是出于说明性的目的提供的,并且不应被理解为进行限制。尽管在本文中所提供的示例示出了病人安排针对医生的预约的图形用户界面,但应当领会的是,本文中所公开的技术还可以由提供者或其他类型的用户利用,以安排预约或发起可以由工作流数据128建模的项目。这样的技术还可以应用于针对提供者的用户界面。
现在转到图4,在下文中示出并描述了用于提供工作流事件的自动化的例程400的方面。应当理解的是,本文中所公开的方法的操作不需要以任何特定的顺序来呈现,并且以替代顺序执行所述操作中的一些或全部操作是可能的和预期的。为了便于描述和说明而以所展示的顺序呈现了所述操作。操作可以被增加、省略、和/或同时地执行,而不脱离所附权利要求的范围。
还应当理解的是,所示出的方法可以在任何时间被结束并且不需要整体被执行。所述方法中的一些或全部操作和/或大体上等价的操作可以通过如在下文中所定义的包括在计算机存储介质上的计算机可读指令的执行来执行。如在说明书和权利要求中所使用的,术语“计算机可读指令”及其变型在本文中扩展性地用于包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等。计算机可读指令可以在各种***配置上实现,所述***配置包括单处理器或多处理器***、小型计算机、大型计算机、个人计算机、手持式计算设备、基于微处理器的可编程消费性电子产品、其组合等。
因此,应当领会的是,在本文中所描述的逻辑操作被实现为(1)在计算***上运行的计算机实现的动作或者程序模块的序列,和/或(2)计算***内的相互连接的机器逻辑电路或电路模块。实现是取决于计算***的性能和其他要求的选择的问题。因此,在本文中所描述的逻辑操作不同地被称为状态、操作、结构设备、动作或模块。这些操作、结构设备、动作和模块可以用软件、用固件、用专用数字逻辑单元和其任何组合实现。
如将在下文中结合图1更加详细地描述的,例程400的操作在本文中被描述为至少部分地由应用、组件和/或电路来实现。尽管以下的说明涉及图1的组件,但应当领会的是,例程400的操作还可以以许多其他方式来实现。例如,例程400可以至少部分地由计算机处理器或者另一计算机的处理器来实现。另外,替代地或另外地,例程400的操作中的一个或多个操作可以至少部分地由独立工作或者结合其他软件模块(例如,服务器模块121)工作的计算机来实现。
现在参考图4,例程400在操作401处开始,其中,一个或多个计算设备获得输入数据。所述输入数据可以包括语音输入、文本输入、对菜单项目的选择、或者其他类型的输入,其中,动作是由用户或计算设备发起的,或者数据是从用户或计算设备接收的。例如,用户可以将描述主题、感兴趣的领域、项目或事件的信息说出或键入到电子邮件或日历事件中。在其他示例中,用户可以提供其他形式的输入数据,例如指示服务类别的文本描述或语音输入,例如,“我需要为我的车建立保养安排”,或者“我需要为我孩子的第一年检查来进行预约”。
接着,在操作403处,一个或多个计算设备获得上下文数据。如在本文中所描述的,可以从多个不同资源获得上下文数据。例如,可以从以下资源获得上下文数据:交通数据资源106A、地图数据资源106B、搜索引擎资源106C、专业数据资源106D、以及天气数据资源106E,和/或适合于存储、处理和/或传送上下文数据的其他资源。
上下文数据可以与服务提供者和/或消费者有关。所述上下文数据可以包括例如定义两个或更多个实体之间的先前的工作历史的数据、支付历史、信用历史、一方或多方的可用性、项目的位置、到预约的行进时间、交通数据、技能集合数据、优选的工作时间、安排可用性、性能度量、安排冲突、客户偏好、供应商偏好、工作流定义、其他数据及其组合。本文中所公开的技术还可以量化客户的价值或供应商的价值。可以从一个或多个资源接收这样的上下文数据,并且可以从其他类型的上下文数据导出这样的上下文数据。例如,可以通过支付历史、信用历史以及其他信息来生成定义客户的终身价值或提供者的终身价值的数据。
操作403还可以包括对与专业化、科目、主题、一个或多个行业或者感兴趣的领域有关的专业数据126的收集。例如,专业数据126可以包括与医学主题有关的细节,例如,儿科、牙科等。在其他示例中,专业数据126可以涉及疾病、治疗、病情以及其他类似主题。专业数据126可以从多个不同的资源获得,包括基于web的资源,例如由WebMD、美国医学协会以及疾病控制中心提供的网站。这些示例是出于说明性的目的提供的,并且不应被理解为进行限制,这是由于专业数据126可以与感兴趣的任何主题或领域有关。
接下来,在操作405处,一个或多个计算设备可以生成工作流数据128。工作流数据128可以定义多步骤过程以及过程的每个步骤内的属性定义。可以从包括基于web的资源在内的不同资源获得工作流数据128。另外,可以从诸如专业数据126之类的其他数据导出工作流数据128。例如,可以分析与儿科有关的专业数据126来确定涉及多个步骤的过程,所述多个步骤可以包括免疫注射、跟进检查、以及在某些时间推荐的其他里程碑和任务。
接下来,在操作407处,一个或多个计算设备可以显示工作流数据128。对工作流数据128的显示可以包括多个合适的格式。例如,工作流数据128的文本描述可以被显示给用户。这可以包括多个步骤的文本描述,其可以被突出显示和/或被格式化以表示多步骤过程的突出的步骤。在一些配置中,对工作流数据128的显示可以包括示出工作流数据128的方面的图或表示。如在图3A和3B的示例中所示出的,可以生成具有各种日期、阶段、文本描述和其他细节的时间线的图形表示。
对这样的图形表示的显示可以被配置为基于图形表示的缩放等级来显示各种等级的细节。例如,在移动设备中示出的小的表示(例如,在图2B中所示出的图形表示)可以包括针对每个阶段的单个词语描述。当用户放大图形表示时,可以显示额外的细节。
接下来,在操作409处,一个或多个计算设备可以基于输入数据和所获得的上下文数据来生成项目的经排序的列表。可以响应于一个或多个状况的存在而自动地生成项目的经排序的列表,或者可以响应于一个或多个用户发起的动作而生成项目的经排序的列表。在一个示例中,在用户偏好数据中定义的标准可以指示用于生成项目的经排序的列表的一个或多个门限。可以分析所述上下文数据以确定满足或超过一个或多个门限的状况的存在。当发现这样的状况时,一个或多个计算设备可以生成项目的经排序的列表。
在另一示例中,可以响应于用户动作而生成项目的经排序的列表。例如,当用户提供定义日历项目的输入数据时,可以通过使用在本文中所描述的技术来处理输入数据和上下文数据以生成项目的经排序的列表。应当领会的是,经排序的列表还可以包括任务,例如用于进行以下操作的提醒:安排预约、用电子邮件发送消息、向一方发送文本、或者生成与工作流数据有关的任何其他数据对象。
接下来,在操作411处,一个或多个计算设备可以显示经排序的列表。经排序的列表可以接近于工作流数据的图形表示的相关部分而被显示。在一些配置中,经排序的列表可以接近于或者链接至工作流数据的特定阶段而被显示。例如,如在图3B中所示出的,示出了经排序的列表的图形元素可以被配置有指向工作流的各个分段的线。这样的特征使得用户能够容易地理解候选提供者和/或候选时隙如何与工作流相关。在一些配置中,显示经排序的列表的图形元素可以被配置为接收对列表中的一个项目的用户选择。
接下来,在操作413处,一个或多个计算设备可以响应于对经排序的列表上的项目的选择而生成日历事件或另一类型的数据对象。对至少一个项目的选择可以通过多个不同的方法来达成。例如,操作413可以涉及指示对项目的选择的用户输入。在其他示例中,操作413可以涉及针对一个或多个项目的自动化选择的技术。在这样的配置中,偏好数据可以定义针对对一个或多个项目的自动化选择的标准。例如,如果项目与满足在提供者或客户的偏好数据中定义的门限的性能数据相关联,则这样的项目可以被一个或多个计算设备自动地选择。操作413还可以包括对与所生成的工作流数据有关的任何类型的数据对象的通信和处理。例如,提醒、通知、电子邮件以及其他数据对象可以被发送给提供者和/或客户。
图5示出了计算机的示例性计算机架构500的额外细节,所述计算机能够执行在本文中所描述的程序组件,例如计算设备101(图1)。因此,在图5中所示出的计算机架构500示出了服务器计算机、移动电话、PDA、智能电话、台式计算机、上网本计算机、平板计算机和/或膝上型计算机的架构。计算机架构500可以用于执行在本文中所呈现的软件组件的任何方面。
图5中所示出的计算机架构500包括中央处理单元502(“CPU”)、***存储器504,其包括随机存取存储器506(“RAM”)和只读存储器(“ROM”)508、以及将存储器504耦合至CPU502的***总线510。包含有助于在计算机架构500内的元件之间传输信息(例如,在启动期间)的基本例程的基本输入/输出***被存储在ROM 508中。计算机架构500还包括用于存储操作***507以及诸如上下文数据550和输入数据551之类的其他数据的大容量存储设备512。
大容量存储设备512通过连接至总线510的大容量存储控制器(未示出)连接至CPU502。大容量存储设备512及其相关联的计算机可读介质为计算机架构500提供了非易失性存储。尽管在本文中所包含的计算机可读介质的描述指的是大容量存储设备,例如固态驱动器、硬盘或CD-ROM驱动器,但本领域技术人员应当领会的是,计算机可读介质可以是可以由计算机架构500存取的任何可获得的计算机存储介质或者通信介质。
通信介质包括计算机可读指令、数据结构、程序模块、或者诸如载波或其他传输机制之类的经调制的数据信号中的其他数据,并且包括任何递送介质。术语“经调制的数据信号”表示具有以关于对信号中的信息进行编码的方式改变或设置的信号的特性中的一个或多个特性的信号。作为示例而非限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质,以及诸如声音、RF、红外线和其他无线介质之类的无线介质。还应当将以上中的任意一个的组合包括在计算机可读介质的范围内。
作为示例而非限制,计算机存储介质可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动的介质,所述信息例如是计算机可读指令、数据结构、程序模块或其他数据。例如,计算机介质包括但不限于RAM、ROM、EPROM、EEPROM、闪速存储器或其他固态存储器技术、CD-ROM、数字多功能盘(“DVD”)、HD-DVD、BLU-RAY、或者其他光存储装置、盒式磁带、磁带、磁盘存储装置或其他磁存储设备、或者可以用于存储期望的信息并且可以由计算机架构500存取的任何其他介质。出于权利要求的目的,短语“计算机存储介质”、“计算机可读存储介质”及其变型不包括波、信号、和/或其他瞬时和/或非有形通信介质本身。
根据各种配置,计算机架构500可以使用通过网络756和/或另一网络(未示出)至远程计算机的逻辑连接来在联网环境中操作。计算机架构500可以通过连接至总线510的网络接口单元514而连接至网络756。应当领会的是,网络接口单元514还可以用于连接至其他类型的网络和远程计算机***。计算机架构500还可以包括用于接收和处理来自许多其他设备的输入的输入/输出控制器516,其包括键盘、鼠标、电子触笔(未在图5中示出)。相似地,输入/输出控制器516可以向显示屏、打印机、或者其他类型的输出设备(也未在图5中示出)提供输出。
应当领会的是,本文中所描述的软件组件当被加载到CPU 502中并被执行时,可以将CPU 502和整个计算机架构500从通用计算***转换成定制为促进在本文中所呈现的功能的专用计算***。CPU 502可以通过任何数量的晶体管或其他分立电路元件构造,其可以单独地或集体地假定任何数量的状态。更具体而言,CPU 502可以响应于在本文中公开的软件模块内所包含的可执行指令而操作为有限状态机。这些计算机可执行指令可以通过指定CPU 502如何在状态之间转变来转换CPU 502,由此转换构成CPU502的晶体管或其他分立硬件元件。
对在本文中所呈现的软件模块进行编码还可以转换在本文中所呈现的计算机可读介质的物理结构。在本说明书的不同实施方式中,物理结构的具体转换可以取决于各种因素。这样的因素的示例包括但不限于用于实现计算机可读介质的技术,无论计算机可读介质被表征为主存储器还是辅存储器等。例如,如果计算机可读介质被实现为基于半导体的存储器,则本文中所公开的软件可以通过转换半导体存储器的物理状态来在计算机可读介质上进行编码。例如,软件可以转换晶体管、电容器、或构成半导体存储器的其他分立电路元件的状态。软件还可以转换这样的组件的物理状态以将数据存储在其上。
作为另一示例,本文中所公开的计算机可读介质可以使用磁或光技术来实现。在这样的实施方式中,当软件被编码在其中时,在本文中所呈现的软件可以转换磁或光介质的物理状态。这些转换可以包括警告给定磁介质内特定位置的磁特性。这些转换还可以包括警告给定光介质内特定位置的物理特征或特性以改变那些位置的光特性。在不脱离本说明书的范围和精神的情况下,物理介质的其他转换是可能的,其中,前述示例仅被提供以促进该讨论。
根据上文,应当领会的是,在计算机架构500中可以发生许多类型的物理转换以存储并执行在本文中所呈现的组件。还应该领会的是,计算机架构500可以包括其他类型的计算设备,包括手持式计算机、嵌入式计算机***、个人数字助理、以及本领域技术人员已知的其他类型的计算设备。还可以预期的是,计算机架构500可以不包括在图5中所示出的所有组件,可以包括在图5中没有明确示出的其他组件、或者可以利用与在图5中所示出的完全不同的架构。
图6描绘了说明性分布式计算环境600,其能够执行在本文中所描述的用于提供工作流事件的自动化的软件组件。因此,图6中示出的分布式计算环境600可以用于执行在本文中所呈现的软件组件的任何方面。例如,分布式计算环境600可以用于执行在本文中所描述的软件组件的方面。
根据各种实施方式,分布式计算环境600包括在网络604上操作、与网络604进行通信、或作为网络604的一部分的计算环境600。网络604可以是或可以包括网络756,如在上文中关于图6所描述的。网络604还可以包括各种接入网络。一个或多个客户端设备606A-606N(在下文中统一地和/或一般地被称为“客户端606”)可以经由网络604和/或其他连接(在图6中未示出)与计算环境602进行通信。在所示出的一个配置中,客户端606包括:诸如膝上型计算机、台式计算机、或其他计算设备之类的计算设备606A;板式或平板计算设备(“平板计算设备”)606B;诸如移动电话、智能电话、或其他移动计算设备之类的移动计算设备606C;服务器计算机606D;和/或其他设备606N。应当理解的是,任何数量的客户端606可以与计算环境602进行通信。在本文中参考图5和7示出和描述了针对客户端606的两个示例性计算架构。应当理解的是,本文中所示出的客户端606以及本文中所示出和描述的计算机架构是说明性的,并且不应当被解释为以任何方式受到限制。
在所示出的配置中,计算环境602包括应用服务器608、数据存储装置610、以及一个或多个网络接口612。根据各种实施方式,应用服务器608的功能可以由作为网络604的一部分执行或者与网络604进行通信地一个或多个服务器计算机来提供。应用服务器608可以托管各种服务、虚拟机、端口和/或其他资源。在所示出的配置中,应用服务器608托管用于托管应用或其他功能的一个或多个虚拟机614。根据各种实施方式,虚拟机614托管用于提供工作流事件的自动化的一个或多个应用和/或软件模块。应当理解的是,该配置是说明性的,并且不应当被解释为以任何方式进行限制。应用服务器608还可以托管或提供对一个或多个门户、链接页面、网站、和/或其他信息(“网络门户”)616的访问。
根据各种实施方式,应用服务器608还包括一个或多个邮箱服务618以及一个或多个消息传送服务620。邮箱服务618可以包括电子邮件(“email”)服务。邮箱服务618还可以包括各种个人信息管理(“PIM”)服务,包括但不限于日历服务、联系人管理服务、协同服务或和/或其他服务。消息传送服务620可以包括但不限于即时消息传送(“IM”)服务、聊天服务、论坛服务和/或其他通信服务。
应用服务器608还可以包括一个或多个社交网络服务622。社交网络服务622可以包括各种社交网络服务,其包括但不限于用于分享或发布状态更新、即时消息、链接、照片、视频和/或其他信息的服务;用于评论或显示对文章、产品、博客或其他资源感兴趣的服务;和/或其他服务。在一些配置中,社交网络服务622是由FACEBOOK社交网络服务、LINKEDIN职业网络服务、MYSPACE社交网络服务、FOURSQUARE地理网络服务、YAMMER办公室同事网络服务等提供的或者包括所述服务。在其他配置中,社交网络服务622由可以被或可以不被明确称为社交网络供应者的其他服务、站点和/或提供者来提供。例如,一些网站允许用户经由电子邮件、聊天服务和/或其他方式在各种活动和/或上下文期间(例如,阅读出版的文章、对商品或服务进行评论、出版、协同、游戏等)彼此交互。这样的服务的示例包括但不限于来自华盛顿州雷德蒙市的微软公司的WINDOWS LIVE服务和XBOX LIVE服务。其他服务是可能的并且是预期的。
社交网络服务622还可以包括评论、博客和/或微博客服务。这样的服务示例包括但不限于YELP评论服务、KUDZU审查服务、OFFICETALK企业微博客服务、TWITTER消息传送服务、谷歌BUZZ服务、和/或其他服务。应当领会的是,上述服务列表不是穷举的且为了简单起见在本文中没有提及多个额外的和/或替代的社交网络服务622。如此,上述配置是说明性的,并且不应当被解释为以任何方式受到限制。根据各种实施方式,社交网络服务622可以托管用于提供在本文中所描述的功能(用于提供工作流事件的自动化)的一个或多个应用和/或软件模块。例如,应用服务器608中的任何一者可以传送或促进在本文中所描述的功能和特征。例如,在电话或任何其他客户端606上运行的社交网络应用、邮件客户端、消息传送客户端或者浏览器可以与网络服务622进行通信,并且促进甚至在上文中关于图4所描述的功能。
如在图6中所示出的,应用服务器608还可以托管其他服务、应用、门户和/或其他资源(“其他资源”)624。其他资源624可以包括但不限于文档共享、渲染或任何其他该功能。应当领会的是,计算环境602可以提供本文中关于各种邮箱、消息传送、社交网络和/或其他服务或资源所提供的本文所公开的构思与技术的集成。
如上文提及的,计算环境602可以包括数据存储装置610。根据各种实施方式,数据存储装置610的功能是由在网络604上操作或者与网络604进行通信的一个或多个数据库提供的。数据存储装置610的功能还可以由被配置为托管计算环境602的数据的一个或多个服务器计算机来提供。数据存储装置610可以包括、托管、或提供一个或多个实际的或虚拟的数据存储区626A-626N(在下文中被统一称为和/或一般地称为“数据存储区626”)。数据存储区626被配置为托管由应用服务器608使用或创建的数据和/或其他数据。尽管没有在图6中示出,数据存储区626还可以托管或存储网页文档、文字文档、演示文档、数据结构、用于由推荐引擎执行的算法、和/或由任何应用程序或另一模块利用的其他数据。数据存储区626的方面可以与用于存储文件的服务相关联。
计算环境602可以与网络接口612通信或者由网络接口612访问。网络接口612可以包括用于支持两个或更多个计算设备之间的通信的各种类型的网络硬件和软件,所述计算设备包括但不限于客户端606和应用服务器608。应该领会的是,网络接口612还可以用于连接至其他类型的网络和/或计算机***。
应当理解的是,本文中所描述的分布式计算环境600可以利用任何数量的虚拟计算资源来提供本文中所描述的软件元件的任何方面和/或可以被配置为执行本文中所公开的软件组件的任何方面的其他分布式计算功能。根据本文中所公开的构思和技术的各种实施方式,分布式计算环境600将本文中所描述的软件作为服务提供给客户端606。应当理解的是,客户端606可以包括实际的或虚拟的机器,其包括但不限于服务器计算机、web服务器、个人计算机、移动计算设备、智能电话和/或其他设备。如此,本文中所公开的构思和技术的各种配置使得被配置为访问分布式计算环境600的任何设备能够利用本文中所描述的用于提供工作流事件的自动化等的功能,此外还有其他方面。
现在转到图7,能够执行本文中描述的用于提供工作流事件的自动化的各种软件组件的计算设备的说明性计算设备架构700。计算设备架构700部分地由于形状因子、无线连接性和/或电池供电操作而适用于促进移动计算的计算设备。在一些配置中,计算设备包括但不限于移动电话、平板设备、板式设备、便携视频游戏设备等。计算设备架构700适用于图6中所示出的客户端606中的任何一者。此外,计算设备架构700的方面可以适用于传统台式计算机、便携式计算机(例如,膝上型计算机、笔记本、超便携计算机和上网本)、服务器计算机以及其他计算***,例如参考图5在本文中所描述的这些。例如,在下文公开的单点触摸和多点触摸的方面可以应用于利用触摸屏或诸如具有触摸功能的轨迹垫或具有触摸功能的鼠标之类的具有触摸功能的某一其他设备的台式计算机。
图7中所示出的计算设备架构700包括处理器702、存储器组件704、网络连接性组件706、传感器组件708、输入/输出组件710以及电源组件712。在所示出的配置中,处理器702与存储器组件704、网络连接性组件706、传感器708、输入/输出(“I/O”)组件710以及电源组件712进行通信。尽管在图7中所示出的个体组件之间没有示出连接,但是这些组件可以交互以实行设备功能。在一些配置中,组件被布置以便经由一个或多个总线(未示出)来进行通信。
处理器702包括中央处理单元(“CPU”)内核,其被配置为处理数据,执行一个或多个应用程序的计算机可执行指令,以及与计算设备架构700的其他组件进行通信以便执行在本文中所描述的功能的方面。处理器702可以用于执行在本文中所呈现的软件组件的方面,并且特别地执行至少部分地利用支持触摸的输入的软件组件的方面。
在一些配置中,处理器702包括被配置为加速由CPU执行的操作的图形处理单元(“GPU”),其包括但不限于通过执行通用科学和/或工程计算应用以及诸如高分辨率视频(例如,720P、1080P以及更高分辨率)的图形密集型计算应用、视频游戏、三维(“3D”)建模应用等所执行的操作。在一些配置中,处理器702被配置为与分立GPU(未示出)进行通信。在任何情况下,CPU和GPU可以根据协处理CPU/GPU计算模型来配置,其中,在CPU上执行的应用的顺序部分,并且计算密集型部分由GPU来加速。
在一些配置中,处理器702是与在下文在本文中描述的其他组件中的一者或多者一起的片上***(“SoC”)或包括在所述片上***中。例如,SoC可以包括处理器702、GPU、网络连接性组件706中的一个或多个网络连接性组件、以及传感器组件708中的一个或多个传感器组件。在一些配置中,处理器702部分地利用封装叠加(“PoP”)集成电路封装技术来制造。处理器702可以是单核或多核处理器。
处理器702可以根据ARM架构来创建,所述ARM架构可以从英国剑桥市的ARM国际公司获得许可。替代地,处理器702可以根据x86架构来创建,所述x86架构例如是从加利福尼亚州山景城市的Intel公司和其他公司可获得的。在一些配置中,处理器702是从加利福尼亚州圣地亚哥市的高通公司可获得的SNAPDRGON SoC、从加利福尼亚州的圣塔克拉拉市的NVIDIA可获得的TEGRA SoC、从韩国首尔的三星公司可获得的HUMMINGBIRD SoC、从得克萨斯州达拉斯市的德州仪器可获得的开放多媒体应用平台(“OMAP”)SoC、上述SoC中任何一者的定制版本、或专用SoC。
存储器组件704包括随机存取存储器(RAM)714、只读存储器(ROM)716、集成存储存储器(“集成存储装置”)718以及可移动存储存储器(“可移动存储装置”)720。在一些配置中,RAM 714或其部分、ROM 716或其部分、和/或RAM 714和ROM 716的一些组合被集成在处理器702中。在一些配置中,ROM 716被配置为存储固件、操作***或其部分(例如,操作***内核)、和/或用于从集成存储装置718或可移动存储装置720加载操作***内核的引导加载程序。
集成存储装置718可以包括固态存储器、硬盘、或固态存储器和硬盘的组合。集成存储装置718可以被焊接或以其他方式连接至本文中所描述的处理器702和其他组件也可以连接到其上的逻辑板。如此,集成存储装置718被集成在计算设备中。集成存储装置718可以被配置为存储操作***或其部分、应用程序、数据、和在本文中所描述的其他软件组件。
可移动存储装置720可以包括固态存储器、硬盘、或固态存储器和硬盘的组合。在一些配置中,代替集成存储装置718而提供可移动存储装置720。在其他配置中,可移动存储装置720被提供为额外的可选存储装置。在一些配置中,可移动存储装置720在逻辑上与集成存储装置718集成,以使得整个可用的存储装置可用作总组合的存储容量。在一些配置中,向用户示出集成存储装置718和可移动存储装置720的总组合的容量,而不是针对集成存储装置718和可移动存储装置720的单独的存储容量。
可移动存储装置720被配置为***到可移动存储存储器插槽(未示出)或其他机构中,通过所述机构,可移动存储装置720被***并固定以促进可移动存储装置720在其上可以与计算设备的其他组件(例如,处理器702)进行通信的连接。可移动存储装置720可以以各种存储卡格式被实施,包括但不限于PC卡、压缩闪存卡、存储器棒、安全数字(“SD”)、迷你SD、微SD、通用集成电路卡(“UICC”)(例如,用户识别模块(“SIM”)或通用SIM(“USIM”))、专用格式等。
可以理解的是,存储器组件704中的一者或多者可以存储操作***。根据各种配置,操作***包括但不限于来自华盛顿州雷德蒙市的微软公司的WINDOWS MOBILE OS、来自微软公司的WINDOWS PHONE OS、来自微软公司的WINDOWS、来自加利福尼亚州帕洛阿尔托市的惠普(Hewlett-Packard)公司的PALM WEBOS、来自加拿大安大略省滑铁卢市的动态研究(Research in Motion)有限公司的BLACKBERRY OS、来自加利福尼亚州库比蒂诺市的苹果公司的IOS、以及来自加利福尼亚州山景城市的谷歌公司的ANDROID OS。其他操作***是预期的。
网络连接性组件706包括无线广域网组件(“WWAN组件”)722、无线局域网络组件(“WLAN组件”)724、以及无线个域网组件(“WPAN组件”)726。网络连接性组件706促进来往于网络756或另一网络的通信,所述网络可以是WWAN、WLAN或WPAN。尽管仅示出了网络756,但是网络连接性组件706可以促进与多个网络(包括图6的网络604)的同时通信。例如,网络连接性组件706可以促进经由WWAN、WLAN或WPAN中的一者或多者与多个网络同时通信。
网络756可以是或者包括WWAN,例如利用一个或多个移动电信技术以经由WWAN组件722向利用计算设备架构700的计算设备提供语音和/或数据服务的移动电信网络。移动电信技术可以包括但不限于全球移动通信***(“GSM”)、码分多址(“CDMA”)ONE、CDMA7000、通用移动电信***(“UMTS”)、长期演进(“LTE”)、以及全球微波接入互操作性(“WiMAX”)。此外,网络756可以利用各种信道接入方法(其可以通过前述标准使用或不通过前述标准来使用),包括但不限于时分多址(“TDMA”)、频分多址(“FDMA”)、CDMA、宽带CDMA(“W-CDMA”)、正交频分复用(“OFDM”)、空分多址(“SDMA”)等。可以使用通用分组无线服务(“GPRS”)、用于全球演化的增强型数据速率(“EDGE”)、包括高速下行链路分组接入(“HSDPA”)的高速分组接入(“HSPA”)协议家族、增强型上行链路(“EUL”)或以其他方式所称的高速上行链路分组接入(“HSUPA”)、演进型HSPA(“HSPA+”)、LTE、以及各种其他当前的和未来的无线数据接入标准来提供数据通信。网络756可以被配置为利用上述技术的任何组合来提供语音和/或数据通信。网络756可以被配置为或适配为根据后代技术来提供语音和/或数据通信。
在一些配置中,WWAN组件722被配置为提供到网络756的双-多-模连接。例如,WWAN组件722可以被配置为提供至网络756的连接性,其中,网络756经由GSM或UMTS技术或经由技术的某一其他组合来提供服务。替代地,多个WWAN组件722可以用于执行这样的功能,和/或提供用于支持其他非兼容技术(即,不能够由单个WWAN组件支持)的额外功能。WWAN组件722可以促进到多个网络(例如,UMTS网络和LTE网络)的类似连接性。
网络756可以是根据一个或多个电气与电子工程师协会(“IEEE”)802.11标准(例如,IEEE 802.11a、802.11b、802.11g、802.11n和/或未来的802.11标准(在本文中统称为WI-FI))进行操作的WLAN。草案802.11标准也是预期的。在一些配置中,利用一个或多个无线WI-FI接入点来实现WLAN。在一些配置中,无线WI-FI接入点中的一者或多者是充当WI-FI热点的具有到WWAN的连接性的另一计算设备。WLAN组件724被配置为经由WI-FI接入点而连接至网络756。可以经由各种加密技术来确保这样的连接的安全,所述加密技术包括但不限于WI-FI保护接入(“WPA”)、WPA2、有线等效保密(“WEP”)等。
网络756可以是根据红外数据通讯(“IrDA”)、蓝牙、无线通用串行总线(“USB”)、Z-波、ZIGBEE或某一其他短程无线技术进行操作的WPAN。在一些配置中,WPAN组件726被配置为促进经由WPAN与其他设备(例如,***设备、计算机或其他计算设备)的通信。
传感器组件708包括磁力计728、环境光传感器730、接近度传感器732、加速度计734、陀螺仪736以及全球定位***传感器(“GPS传感器”)738。预期的是,其他传感器(例如但不限于温度传感器或震动检测传感器)也可以并入到计算设备架构700中。
磁力计728被配置为测量磁场的强度和方向。在一些配置中,磁力计728向存储在存储器组件704中的一者内的指南针应用程序提供测量结果,以便在参考帧中向用户提供包括基本方向北、南、东和西的准确的方向。可以向包括指南针组件的导航应用程序提供类似的测量结果。由磁力计728获得的测量结果的其他用途是预期的。
环境光传感器730被配置为测量环境光。在一些配置中,环境光传感器730向存储在存储器组件704中的一者内的应用程序提供测量结果以便自动地调节(下文描述的)显示器的亮度,从而对低亮度和高亮度环境进行补偿。由环境光传感器730获得的测量结果的其他用途是预期的。
接近度传感器732被配置为在没有直接接触的情况下检测邻近计算设备的对象或事物的存在。在一些配置中,接近度传感器732检测用户身体(例如,用户的脸)的存在并且向存储在存储器组件704内的一者内的应用程序提供该信息,所述应用程序利用该接近度信息来启用或禁用计算设备的某一功能。例如,电话应用程序可以响应于接收到接近度信息而自动地禁用(下文描述的)触摸屏,以使得用户的脸不会在通话期间非故意地终止电话或启用/禁用电话应用程序内的其他功能。如由接近度传感器732检测到的接近度的其他用途是预期的。
加速度计734被配置为测量正确的加速度。在一些配置中,来自加速度计734的输出被应用程序用作控制应用程序的某一功能的输入机制。例如,应用程序可以是视频游戏,其中,响应于经由加速度计734接收的输入,特征、其部分、或者对象被移动或者以其他方式***纵。在一些配置中,向应用程序提供来自加速度计734的输出,以在风景和肖像模式之间切换、计算协调加速度、或检测下降时使用。加速度计734的其他用途是预期的。
陀螺仪736被配置为测量并维持方向。在一些配置中,来自陀螺仪736的输出被应用程序用作控制应用程序的某一功能的输入机制。例如,陀螺仪736可以用于准确识别在视频游戏应用或某一其他应用的3D环境内的运动。在一些配置中,应用程序利用来自陀螺仪736和加速度计734的输出来增强对应用程序的某一功能的控制。陀螺仪736的其他用途是预期的。
GPS传感器738被配置为从GPS卫星接收信号以在计算位置时使用。由GPS传感器738计算的位置可以由需要位置信息或从位置信息受益的任何应用程序使用。例如,由GPS传感器738计算的位置可以与导航应用程序一起使用,以提供从该位置到目的地的方向或从目的地到该位置的方向。此外,GPS传感器738可以用于向诸如E911服务之类的外部的基于位置的服务提供位置信息。GPS传感器738可以获得经由WI-FI、WIMAX、和/或利用网络连接性组件706中一者或多者来辅助GPS传感器738获得定位的蜂窝三角技术而生成的位置信息。GPS传感器738还可以在辅助GPS(“A-GPS”)***中使用。
I/O组件710包括显示器740、触摸屏742、数据I/O接口组件(“数据I/O”)744、音频I/O接口组件(“音频I/O”)746、视频I/O接口组件(“视频I/O”)748以及相机750。在一些配置中,组合显示器740和触摸屏742。在一些配置中,组合数据I/O组件744、音频组件746以及视频I/O组件748中的两者或更多者。I/O组件710可以包括被配置为支持下文描述的各种接口的分立处理器,或可以包括内置到处理器702中的处理功能。
显示器740是被配置为以可视形式呈现信息的输出设备。特别地,显示器740可以呈现图形用户界面(“GUI”)元素、文本、图像、视频、通知、虚拟按钮、虚拟键盘、消息传送数据、互联网内容、设备状态、时间、日期、日历数据、偏好、地图信息、位置信息、以及能够以可视形式呈现的任何其他信息。在一些配置中,显示器740是使用任何主动或被动矩阵技术以及任何背光技术(如果使用的话)的液晶显示器(“LCD”)。在一些配置中,显示器740是有机发光二极管(“OLED”)显示器。其他显示器类型是预期的。
触摸屏742(在本文中还被称为“支持触摸的屏幕”)是被配置为检测触摸的存在和位置的输入设备。触摸屏742可以是电阻式触摸屏、电容式触摸屏、表面声波触摸屏、红外触摸屏、光学成像触摸屏、分散信号触摸屏、声音脉冲识别触摸屏,或者可以利用任何其他的触摸屏技术。在一些配置中,触摸屏742作为透明层被并入到显示器740的顶部以使得用户能够使用一个或多个触摸来与在显示器740上呈现的对象或其他信息进行交互。在其他配置中,触摸屏742是并入到不包括显示器740的计算设备表面上的触摸板。例如,计算设备可以具有并入到显示器740顶部上的触摸屏和在显示器740对面的表面上的触摸板。
在一些配置中,触摸屏742是单点触摸屏。在其他配置中,触摸屏742是多点触摸屏。在一些配置中,触摸屏742被配置为检测离散的触摸、单点触摸手势和/或多点触摸手势。为了方便起见,在本文中这些统一被称为手势。现在将描述若干手势。应当理解的是,这些手势是说明性的并且不旨在限制所附权利要求的范围。此外,所描述的手势、额外的手势和/或替代的手势可以用软件实现以与触摸屏742一起使用。如此,开发者可以创建专用于特定应用程序的手势。
在一些配置中,触摸屏742支持轻敲手势,其中,用户在显示器740上呈现的项目上轻敲触摸屏742一次。轻敲手势可以用于各种原因,包括但不限于打开或发起任何用户轻敲的东西。在一些配置中,触摸屏742支持双敲手势,其中,用户在显示器740上呈现的项目上轻敲触摸屏742两次。双敲手势可以用于各种原因,包括但不限于逐步放大或缩小。在一些配置中,触摸屏742支持轻敲并保持手势,其中,用户轻敲触摸屏742并保持接触达至少预先定义的时间。轻敲并保持手势可以用于各种原因,包括但不限于打开特定于上下文的菜单。
在一些配置中,触摸屏742支持平移手势,其中,用户将手指放在触摸屏742上并在于触摸屏742上移动手指的同时保持与触摸屏742的接触。平移手势可以用于各种原因,包括但不限于以受控的速度移动通过屏幕、图像或菜单。多个手指平移手势也是预期的。在一些配置中,触摸屏742支持轻扫手势,其中,用户在用户想要屏幕移动的方向上滑动手指。轻扫手势可以用于各种原因,包括但不限于,水平地或垂直地滚动通过菜单或页面。在一些配置中,触摸屏742支持挤压和伸展手势,其中,用户在触摸屏742上用两个手指(例如,拇指和食指)做出挤压的动作或将两个手指移开。挤压和伸展手势可以用于各种原因,包括但不限于逐渐地放大或缩小网站、地图或图片。
虽然已经参考用于执行手势的一个或多个手指的使用呈现了上文描述的手势,但是诸如脚趾之类的其他附肢或诸如触笔之类的对象可以用于与触摸屏742交互。如此,上文的手势应当被理解为是说明性的,并且不应被解释为以任何方式进行限制。
数据I/O接口组件744被配置为促进向计算设备输入数据以及从计算设备输出数据。在一些配置中,数据I/O接口组件744包括被配置为在计算设备和计算***之间提供有线连接性的连接器,例如,为了同步操作的目的。连接器可以是专有连接器或诸如USB、微USB、迷你USB等的标准化连接器。在一些配置中,连接器是用于将计算设备与诸如插接站、音频设备(例如,数字音乐播放器)或视频设备之类的另一设备对接的基座连接器。
音频I/O接口组件746被配置为向计算设备提供音频输入和/或输出能力。在一些配置中,音频I/O接口组件746包括被配置为收集音频信号的麦克风。在一些配置中,音频I/O接口组件746包括被配置为提供针对耳机或其他外部扬声器的连接性的耳机插口。在一些配置中,音频I/O接口组件746包括用于输出音频信号的扬声器。在一些配置中,音频I/O接口组件746包括光学音频电缆输出。
视频I/O接口组件748被配置为向计算设备提供视频输入和/或输出能力。在一些配置中,视频I/O接口组件748包括被配置为从另一设备(例如,诸如DVD或蓝牙播放器之类的视频媒体播放器)接收视频作为输入或者向另一设备(例如,监视器、电视或某一其他外部显示器)发送视频作为输出的视频连接器。在一些配置中,视频I/O接口组件748包括高分辨率多媒体接口(“HDMI”)、迷你HDMI、微HDMI、显示端口(DisplayPort)、或用于输入/输出视频内容的专用连接器。在一些配置中,视频I/O接口组件或其部分与音频I/O接口组件746或其部分组合。
相机750可以被配置为捕获静态图像和/或视频。相机750可以使用电荷耦合器件(“CCD”)或互补金属氧化物半导体(“CMOS”)图像传感器来捕获图像。在一些配置中,相机750包括帮助在低亮度环境中拍照的闪光灯。针对相机750的设置可以被实现为硬件或软件按钮。
尽管没有被示出,但是一个或多个硬件按钮还可以被包括在计算设备架构700中。硬件按钮可以用于控制计算设备的某一操作方面。硬件按钮可以是专用按钮或多用途按钮。硬件按钮可以是机械的或基于传感器的。
所示出的电源组件712包括一个或多个电池752,其可以连接到电池电量计754。电池752可以是可充电的或一次性的。可充电电池类型包括但不限于锂聚合物、锂离子、镍镉以及镍氢。电池752中的每一者可以由一个或多个单元组成。
电池电量计754可以被配置为测量诸如电流、电压和温度之类的电池参数。在一些配置中,电池电量计754被配置为测量电池的放电率的效果、温度、年龄以及用于在特定的误差百分比之内预测剩余寿命的其他因素。在一些配置中,电池电量计754向应用程序提供测量结果,所述应用程序被配置为利用这些测量结果来向用户呈现有用的电源管理数据。电源管理数据可以包括以下各项中的一项或多项:已使用电池的百分比、剩余电池的百分比、电池状况、剩余时间、剩余容量(例如,以瓦特时为单位)、电流消耗以及电压。
电源组件712还可以包括电源连接器,其可以与前述I/O组件710中的一者或多者组合。电源组件712可以经由电源I/O组件与外部电源***或充电设备对接。
最后,尽管已经用特定于结构特征和/或方法动作的语言描述了各种配置,但应当理解的是,在所附表示中所定义的主题不一定限于所描述的具体特征或动作。确切地说,具体的特征和动作是作为实现要求保护的主题的示例性形式而公开的。

Claims (15)

1.一种计算机实现的方法,包括:
在计算设备处接收定义日历事件的安排数据,所述安排数据包括事件类型、事件位置、开始时间和提供者中的至少一者;
从所述计算设备向一个或多个资源发送针对专业数据的请求,所述请求至少部分地基于定义所述日历事件的所述数据;
在所述计算设备处从所述一个或多个资源接收所述专业数据;
促使定义多个阶段的工作流数据的生成,其中,所述多个阶段中的个体阶段定义阶段时间,其中,所述工作流数据是至少部分地基于所述专业数据的;以及
促使去往一个或多个远程设备的至少一个数据对象的递送,其中,所述至少一个数据对象包括定义所述个体阶段的至少一部分的数据。
2.根据权利要求1所述的方法,其中,所述至少一个数据对象包括消息、通知和日历事件中的至少一者。
3.根据权利要求1所述的方法,其中,所述至少一个数据对象包括所述专业数据的方面,其中,所述方面包括对要在从所述阶段时间起的门限量的时间处执行的一个或多个任务的描述。
4.根据权利要求1所述的方法,其中,所述至少一个数据对象包括描述所述专业数据的方面的第二日历事件,其中,所述方面包括对一个或多个任务的描述,其中,所述第二日历事件包括从所述阶段时间起的门限量的时间处的开始时间。
5.根据权利要求1所述的方法,生成针对所述第二日历事件的候选时隙的经排序的列表,其中,所述时隙是至少部分地基于通过来自多个资源的上下文数据确定的合格性等级的。
6.根据权利要求5所述的方法,其中,所述上下文数据包括以下各项中的至少一项:安排数据、工作负荷数据、工作历史数据、支付数据、天气数据、地图数据、交通数据、位置数据或专业数据。
7.根据权利要求1所述的方法,还包括至少部分地基于上下文数据来确定一个或多个候选提供者,所述上下文数据包括以下各项中的至少一项:安排数据、工作负荷数据、工作历史数据、支付数据、天气数据、地图数据、交通数据、位置数据或专业数据。
8.根据权利要求1所述的方法,还包括:
将针对经更新的专业数据的查询传送至所述一个或多个资源;
响应于所述查询而在所述计算设备处接收经更新的专业数据;以及
基于所述经更新的专业数据来生成经更新的工作流数据,其中,所述经更新的工作流数据定义以下各项中的至少一项:与个体阶段相关联的经更新的描述、新的阶段、以及对所述多个阶段中的一个或多个阶段的修改,其中,所述至少一个数据对象包括经更新的安全数据的方面。
9.根据权利要求1所述的方法,还包括:促使对被配置为在图形用户界面上示出所述工作流数据的方面的图形元素的显示。
10.一种***,包括:
处理器,以及
与所述处理器进行通信的存储器,所述存储器具有存储在其上的计算机可读指令,所述计算机可读指令当由所述处理器执行时使得所述处理器执行方法,所述方法包括:
在计算设备处接收指示主题的输入数据;
从所述计算设备向一个或多个资源发送针对专业数据的请求,所述请求至少部分地基于所述输入数据;
在所述计算设备处从所述一个或多个资源接收所述专业数据;
促使定义多个阶段的工作流数据的生成,其中,所述多个阶段中的个体阶段定义阶段时间,其中,所述工作流数据是至少部分地基于所述专业数据的;以及
促使去往一个或多个远程设备的至少一个数据对象的递送,其中,所述至少一个数据对象包括定义所述个体阶段的至少一部分的数据。
11.根据权利要求10所述的***,其中,所述至少一个数据对象包括消息、通知和日历事件中的至少一者。
12.根据权利要求10所述的***,其中,所述至少一个数据对象包括所述专业数据的方面,其中,所述方面包括对要在从所述阶段时间起的门限量的时间处执行的一个或多个任务的描述。
13.根据权利要求10所述的***,其中,所述至少一个数据对象包括描述所述专业数据的方面的第二日历事件,其中,所述方面包括对一个或多个任务的描述,其中,所述第二日历事件包括从所述阶段时间起的门限量的时间处的开始时间。
14.根据权利要求10所述的***,其中,所述指令使得所述处理器执行生成针对所述第二日历事件的候选时隙的经排序的列表的方法,其中,所述时隙是至少部分地基于通过来自多个资源的上下文数据确定的合格性等级的。
15.根据权利要求10所述的***,其中,所述指令使得所述处理器执行促使对被配置为在图形用户界面上示出所述工作流数据的方面的图形元素的显示的方法。
CN201780026421.3A 2016-04-29 2017-04-21 工作流事件的自动化 Withdrawn CN109074531A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/142,108 2016-04-29
US15/142,108 US20170316387A1 (en) 2016-04-29 2016-04-29 Automation of workflow events
PCT/US2017/028704 WO2017189340A1 (en) 2016-04-29 2017-04-21 Automation of workflow events

Publications (1)

Publication Number Publication Date
CN109074531A true CN109074531A (zh) 2018-12-21

Family

ID=58664830

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201780026421.3A Withdrawn CN109074531A (zh) 2016-04-29 2017-04-21 工作流事件的自动化

Country Status (4)

Country Link
US (1) US20170316387A1 (zh)
EP (1) EP3449429A1 (zh)
CN (1) CN109074531A (zh)
WO (1) WO2017189340A1 (zh)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022099784A1 (zh) * 2020-11-13 2022-05-19 苏州工业园区东诚智能网络技术有限公司 医疗服务预约方法、装置、电子设备及存储介质

Families Citing this family (10)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11030542B2 (en) 2016-04-29 2021-06-08 Microsoft Technology Licensing, Llc Contextually-aware selection of event forums
US10855625B1 (en) * 2016-05-11 2020-12-01 Workato, Inc. Intelligent, adaptable, and trainable bot that orchestrates automation and workflows across multiple applications
US11087252B2 (en) 2016-08-16 2021-08-10 Teleport Mobility, Inc. Interactive real time system and real time method of use thereof in conveyance industry segments
US11182709B2 (en) 2016-08-16 2021-11-23 Teleport Mobility, Inc. Interactive real time system and real time method of use thereof in conveyance industry segments
US11176500B2 (en) 2016-08-16 2021-11-16 Teleport Mobility, Inc. Interactive real time system and real time method of use thereof in conveyance industry segments
US10621773B2 (en) * 2016-12-30 2020-04-14 Google Llc Rendering content in a 3D environment
US11138568B2 (en) * 2018-01-29 2021-10-05 Microsoft Technology Licensing, Llc Calendar-aware resource retrieval
US11556881B2 (en) 2019-04-23 2023-01-17 International Business Machines Corporation Generation of business process model
US11537997B2 (en) * 2019-07-18 2022-12-27 Microsoft Technology Licensing, Llc Providing task assistance to a user
WO2022266129A1 (en) * 2021-06-17 2022-12-22 Microsoft Technology Licensing, Llc Machine learning assisted automation of workflows based on observation of user interaction with operating system platform features

Family Cites Families (19)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7236976B2 (en) * 2000-06-19 2007-06-26 Aramark Corporation System and method for scheduling events and associated products and services
US7584114B2 (en) * 2003-01-22 2009-09-01 International Business Machines Corporation System and method for integrating projects events with personal calendar and scheduling clients
US20070078729A1 (en) * 2005-03-14 2007-04-05 Brown Kevin L Itinerary planning tool, system, method, software, and hardware
US20060287905A1 (en) * 2005-06-16 2006-12-21 International Business Machines Corporation Calendar folders
US20080114638A1 (en) * 2006-11-10 2008-05-15 Inspection Management Systems, Inc. Parameter-based appointment scheduling system and method
US20090158186A1 (en) * 2007-12-17 2009-06-18 Bonev Robert Drag and drop glads
US20100153160A1 (en) * 2008-12-12 2010-06-17 Smart Technologies Ulc System for supporting coordination of resources for events in an organization
WO2010101840A2 (en) * 2009-03-02 2010-09-10 Lilley Ventures, Inc. Dba - Workproducts, Inc. Enabling management of workflow
US20120203589A1 (en) * 2009-07-27 2012-08-09 Nextgen Healthcare Information Systems, Inc. Systematic Rule-Based Workflow Tasking and Event Scheduling
US9779386B2 (en) * 2009-08-31 2017-10-03 Thomson Reuters Global Resources Method and system for implementing workflows and managing staff and engagements
US20110093538A1 (en) * 2009-10-15 2011-04-21 International Business Machines Corporation Collaborative calendar and workflow management
US20140039962A1 (en) * 2010-10-19 2014-02-06 ClearCare, Inc. System and Apparatus for Generating Work Schedules
US8738414B1 (en) * 2010-12-31 2014-05-27 Ajay R. Nagar Method and system for handling program, project and asset scheduling management
US20120284637A1 (en) * 2011-05-02 2012-11-08 John Edward Boyer Unified Virtual Group Calendar System
US9875514B2 (en) * 2011-11-02 2018-01-23 William Smallwood System and methods for managing patients and services
WO2014026023A1 (en) * 2012-08-09 2014-02-13 Buth Steven L Multi-application workflow integration
US8798596B2 (en) * 2012-12-30 2014-08-05 Gary Stephen Shuster Global contact synchronization
US9477522B2 (en) * 2014-07-01 2016-10-25 Tuul, Inc. System and method for implementing workflow management using messaging
US11157879B2 (en) * 2015-01-20 2021-10-26 NetSuite Inc. System and methods for facilitating scheduling of event or meeting

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022099784A1 (zh) * 2020-11-13 2022-05-19 苏州工业园区东诚智能网络技术有限公司 医疗服务预约方法、装置、电子设备及存储介质

Also Published As

Publication number Publication date
US20170316387A1 (en) 2017-11-02
EP3449429A1 (en) 2019-03-06
WO2017189340A1 (en) 2017-11-02

Similar Documents

Publication Publication Date Title
CN109074531A (zh) 工作流事件的自动化
CN109074393A (zh) 对于日历事件的上下文感知洞察
CN107077809B (zh) 用于处理可穿戴式显示设备的媒体的***
CN109074550A (zh) 上下文感知调度特例
CN109074351A (zh) 文档协作发现
CN109074392A (zh) 知晓上下文的资源管理器
CN102968312B (zh) 用于应用扩展程序的用户界面占位符
CN104541271A (zh) 从电子表格数据生成场景和游览
CN102982440A (zh) 聚集和呈现任务
CN108369595B (zh) 可收集数据结构的可扩展性
CN104067215B (zh) 呈现数据驱动表单
CN108141702A (zh) 上下文知晓的位置共享服务
US20210158304A1 (en) Enhanced views and notifications of location and calendar information
CN109478203A (zh) 基于资源的服务提供者选择和自动完成
EP3766025B1 (en) Driving contextually-aware user collaboration based on user insights
CN110168588A (zh) 基于位置、使用模式以及内容来识别文档
CN108885640A (zh) 生成服务应用
US11030542B2 (en) Contextually-aware selection of event forums
CN107810489A (zh) 应用与设备之间的无缝转换
CN107407944A (zh) 参考传感器的发现和利用

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
WW01 Invention patent application withdrawn after publication

Application publication date: 20181221

WW01 Invention patent application withdrawn after publication