CN113614765A - 基于对用户活动的自动学习和上下文分析的智能任务建议 - Google Patents

基于对用户活动的自动学习和上下文分析的智能任务建议 Download PDF

Info

Publication number
CN113614765A
CN113614765A CN202080021000.3A CN202080021000A CN113614765A CN 113614765 A CN113614765 A CN 113614765A CN 202080021000 A CN202080021000 A CN 202080021000A CN 113614765 A CN113614765 A CN 113614765A
Authority
CN
China
Prior art keywords
task
user
delivery
file
data
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
CN202080021000.3A
Other languages
English (en)
Inventor
J·T·福尔克纳
E·R·塞克索尔
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
Publication of CN113614765A publication Critical patent/CN113614765A/zh
Pending legal-status Critical Current

Links

Images

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/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/06311Scheduling, planning or task assignment for a person or group
    • G06Q10/063114Status monitoring or status determination for a person or group
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/903Querying
    • G06F16/9032Query formulation
    • G06F16/90332Natural language query formulation or dialogue systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/907Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually
    • G06F16/908Retrieval characterised by using metadata, e.g. metadata not derived from the content or metadata generated manually using metadata automatically derived from the content
    • 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/10Office automation; Time management
    • G06Q10/103Workflow collaboration or project 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/10Office automation; Time management
    • G06Q10/107Computer-aided management of electronic mailing [e-mailing]

Abstract

在本文中所公开的技术通过从多种不同类型的用户活动中自动地识别任务并且向一个或多个限定的递送机制提供针对任务的建议来改进现有系统。系统编译所述任务并且将每个任务推送到用户的个性化任务列表。每个任务的递送可以基于任何合适的用户活动,其可以包括在一个或多个用户之间的通信或者用户与特定文件或系统的交互。所述系统能够识别与所述任务相关联的时间线、性能参数和其他相关上下文数据。所述系统能够识别针对所述任务的递送时间表以优化所述任务递送的有效性。所述系统还能够提供智能通知。当任务与个人的日历相冲突时,所述系统能够基于日历事件的优先级来解决调度冲突。

Description

基于对用户活动的自动学习和上下文分析的智能任务建议
背景技术
存在允许用户进行协作的许多不同的软件应用。在一个示例中,一些应用提供协作环境,所述协作环境使得用户能够在通信会话内交换实况视频、实况音频以及其他形式的数据。在另一示例中,一些系统允许用户将消息发布到针对选定的一组个体具有访问许可的板,以实现以团队为中心或者以主题为中心的对话。
尽管存在允许用户进行协作的多种不同类型的系统和应用,但是用户可能并不总是从使用这些系统的特定信息交换或会议中受益。例如,尽管会议中的参与者可能讨论特定任务和目标,但是实际后续每个任务和目标需要多个人工步骤。例如,对于在会议期间创建的特定后续任务,可能要求会议参与者设置一个或多个日历事件以确保相关参与者在会议之后参与该任务。并且,即使这样的任务可以被记录,其也可能不会被记录在正确的介质中以在正确的时间吸引用户。例如,如果用户非常专注于创作特定文档,则该用户可能不容易看到他们关于特定任务的日历。现有系统的这样的缺点会导致生产力的损失以及计算资源的低效使用。
发明内容
在本文中所公开的技术通过从多种不同类型的协作用户活动中自动地识别任务和任务所有者来改进现有系统。在一些配置中,一种系统编译所识别出的任务并且将每个任务推送到用户的个性化任务列表。所述任务也能够通过多个递送选项递送给用户,所述多个递送选项是基于用户与多个应用和文件的交互的上下文分析来选择的。这样的递送选项可以包括但不限于:将任务插入到文件中、在通信线程内发布所述任务、修改用户经常使用的生产力应用的用户界面、发送文本消息、或者提供系统通知。任务能够被递送给满足一个或多个标准的任何类型的应用、平台或文件。所述系统能够识别与所述任务相关联的时间线、性能参数以及其他相关上下文数据。所述系统还能够识别针对所述任务的递送时间表以优化所述任务的递送的有效性。通过选择所述递送选项和递送时间表,所述系统能够在正确的地点和正确的时间递送任务。所述系统也能够响应于对调度冲突的检测而提供智能通知。例如,当任务被分配给特定人员(“受托人”或“任务所有者”)时,在特定目标日期,所述系统能够自动地检查受托人的日历并且向受托人提供任何调度冲突的通知。因此,如果受托人计划休假或有其他优先事项,则受托人不仅会收到通知,而且所述系统还提供推荐以解决任何识别出的调度冲突。
在许多其他益处中,所述系统还能够识别针对与任务相关联的每个用户的许可。所述许可能够控制对特定通信线程、相关文件或者与所述任务一起递送的其他上下文数据的各方面的读/写许可。因此,当与多个用户共享任务时,能够在每个用户的基础上维护针对任何编译数据的安全性。
所述递送时间表能够定义用于传送所述任务和任何相关联的上下文数据的多种不同机制。例如,系统可以识别与任务相关联的特定用户可以与许多不同的平台和文件进行交互,所述许多不同的平台和文件例如是Word、特定的项目文字文档、特定的团队站点和特定的web浏览器。基于用户与这些平台和文件的交互,所述系统能够对每个平台和文件进行排名,并且建立时间表以在最佳时间将所述任务递送给每个平台和文件。因此,在该示例中,基于所述用户的活动,所述任务能够被同时地发布到用户的团队站点、被显示在应用内(“app内”)菜单上、并且被嵌入到特定的文字文档中。
在涉及应用内菜单的示例中,所述系统能够生成用于将任务直接传送给参与该应用的用户的消息,而不管他们正在处理的文件如何。在一个说明性示例中,如果用户大量参与一个应用,诸如文字处理应用,则递送任务的系统能够修改应用的菜单,并且生成可以被直接显示在应用内菜单中的通知,例如,Office Ribbon。
在本文中所公开的技术还能够修改用户可能参与的文件。例如,用户可以参与涉及识别出的任务的特定演示文件。当所述系统识别出所述演示文件具有阈值水平的相关性时,可以将所述任务和任何关联的上下文数据插入到所述演示文件中。
系统能够基于用户活动和机器学习数据对多种不同的递送机制(在本文中也被称为“递送选项”)进行排名。例如,如果系统识别出用户没有参与日历程序并且更多地参与文字处理程序,则所述系统可以将所述文字处理程序识别为针对所述任务的更好的递送机制,而不是生成日历事件。所述系统能够通过对不同的递送机制进行排名并且在特定时间点将所述任务递送给每个选项来优化用户参与度。通过提供这样的分析,所述系统能够在正确的时间和正确的地点提供上下文感知的通知和提醒,以驱动高效的协作行为。
从上文所描述的分析导出的所述效率还能够导致对计算系统的更有效的使用。具体地,通过对用于生成任务提醒的多个不同过程进行自动化,能够改善与所述计算设备的用户交互。手动数据输入的减少以及人与计算机之间的用户交互的改善能够导致许多其他益处。例如,通过减少针对手动输入的需要,能够减少无意输入和人为错误。这最终能够导致对计算资源的更有效的使用,诸如存储器使用、网络使用、处理资源等。
通过阅读以下详细描述和回顾相关联的附图,除了上文明确描述的那些特征和技术优点之外的特征和技术优点将是显而易见的。提供本概述以简化形式介绍在下文的详细描述中进一步描述的概念的选择。本概述并不意图识别所要求保护的主题的关键或必要特征,也并不意图辅助确定所要求保护的主题的范围。例如,术语“技术”能够指代在上文以及贯穿全文所描述的上下文所允许的(一个或多个)系统、(一种或多种)方法、计算机可读指令、(一个或多个)模块、算法、硬件逻辑和/或(一个或多个)操作。
附图说明
具体实施方式参照附图进行描述。在附图中,附图标记最左边的(一个或多个)数字识别该附图标记首次出现的附图。不同附图中相同的附图标记指示相似或相同的项目。对多个项目中的个体项目进行引用能够使用带有字母序列中的字母的附图标记来引用每个个体项目。对项目的一般引用可以使用没有字母序列的特定附图标记。
图1图示了在用于例示说明本公开的各方面的示例性场景中所使用的系统。
图2图示了针对任务数据的结构的多个示例。
图3图示了其中根据活动数据、偏好数据和机器学习数据的特定集合而生成任务的示例。
图4图示了其中根据诸如活动数据、偏好数据和机器学习数据的上下文数据来生成任务递送时间表的示例。
图5图示了其中根据诸如活动数据和外部源数据的上下文数据生成许可的示例。
图6图示了其中可以针对特定用户身份修改许可的示例。
图7图示了其中使用与个体因素相关联的分数来选择一个或多个递送机制的示例性场景。
图8图示了其中能够使用多个加权分数来对用于选择一个或多个递送机制的因素进行评分的示例性场景。
图9A图示了能够如何修改应用的用户界面以使用应用内消息向接收者传达任务的示例。
图9B图示了能够如何修改应用的用户界面以使用应用内消息向接收者传达任务的示例。
图9C图示了能够如何通过使用频道(channel)应用将任务递送给接收者的示例。
图9D图示了能够如何通过使用频道应用将任务和相关文件递送给接收者的示例。
图9E图示了可以被用于传达任务以及与所述任务的冲突的频道条目的示例。
图9F图示了示出任务时间线和从属任务时间线的图形用户界面的示例。
图9G图示了图形用户界面的示例,其示出了与冲突的通知同时地显示的从属任务时间线。
图10是图示了用于对的计算有效的生成和管理的例程的各方面的流程图。
图11是计算系统图,其示出了用于在本文中所公开的技术的说明性操作环境的各方面。
图12是计算架构图,其示出了能够实现在本文中所公开的技术的各方面的计算设备的配置和操作的各方面。
具体实施方式
图1图示了用于例示说明本公开的各方面的示例性场景中的系统100。在本文中所公开的技术通过从多个不同类型的用户活动101中自动地识别任务并且向一个或多个限定的递送机制103提供任务推荐102(在本文中也被称为“任务102”)来改进现有系统。如所示的,用户活动101能够涉及由多个用户104(104A-104D)所使用的任意数量的不同类型的应用、平台、文件和通信介质。系统100能够分析任何类型的用户活动,诸如但不限于:用户与文档或文件的交互、电子邮件通信、频道通信、私人聊天通信、语音或视频通信、与日历的用户交互、以及在人与计算机之间的任何其他类型的用户活动。
定义用户活动101的活动数据105能够被解析和分析以识别要由一个或多个用户执行的任务。任务生成器106能够结合其他数据(诸如偏好数据107、机器学习数据108、日历数据109和外部源110)来分析活动数据105,以生成任务102并且识别与任务102相关联的任何用户104。例如,系统100可以分析多个团队会议、电子邮件和频道对话消息111,并且所述系统可以确定特定的个人需要在事件之前构建原型。当检测到这样的指示时,任务生成器106根据活动数据105中的关键字来生成任务描述。任务生成器106还能够确定时间线(例如,最后期限)以及针对任务102的其他参数。所述参数可以定义所述任务的各方面。例如,如果任务涉及原型的生成,则所述参数可以指示颜色、大小、形状等。
系统100能够生成能够被用于生成任务描述的多个句子。另外,所述系统还能够从经分析的内容中选择要在任务描述使用的句子和短语。在一些配置中,能够从满足阈值要求的任何通信流、文件或共享数据中生成或选择所述句子。在阈值要求的一个例示性示例中,能够基于特定主题的优先级从经分析的内容生成任务描述。例如,如果存在活动数据的若干不同的源,例如,消息或文件,则表示:“我们需要原型”、“原型将有助于设计过程”、“我们需要原型的帮助”以及“我们在原型可用之前停滞不前”,特定词语的出现次数能够被用于确定针对例如“原型”的关键字的优先级,并且能够将所述优先级与阈值进行比较。如果特定关键字的出现次数超过所述阈值,则系统100能够将该特定关键字确定为主题,并且相关联的优先级能够基于关键字被使用的次数。然后,所述系统能够围绕该主题来生成多个句子。在当前示例中,假设词语“原型”出现了阈值次数。响应于该确定,词语“原型”被给予优先级,所述优先级使得所述系统围绕该选定词语生成多个句子。围绕所述选定词语的其他词语(在本文中也被称为支持词语)能够被用于生成句子。一些支持词语能够包括但不限于诸如“需要”、“帮助”等的词语。能够使用常用短语,诸如“所述团队__一个__。”系统100能够利用所述选定词语和支持词语来填充这样的现成词语的字段以生成句子,例如“团队需要原型”。
能够意识到,针对关键字或主题的优先级能够基于许多其他因素。例如,优先级能够基于来自用户活动101的一个或多个方面的解释语言。例如,词语“重要”或“紧急”能够提高特定内容集合的优先级。其他预定的形容词或副词可以与特定关键字的字数结合使用以提高或降低优先级。提供这些示例是为了例示说明的目的,并且不应当被解释为限制。能够意识到,能够使用对文档的任何合适的解释或分析来关联针对关键字的优先级。
在一些配置中,所述系统可能仅对特定类别的关键字计数,诸如名词或动词。一些词语能够被忽略,诸如“该”、“和”、“她”、“他”等。另外,所述系统还可以从所述活动数据中选择多个句子并且引用那些句子。可以利用用于检查每个句子的语法的通用算法。如果活动数据101内的句子满足一个或多个标准,例如,其是完整的句子,其具有正确的语法,和/或其包含主题,则所述系统可以在任务描述内引用所述句子。
任务102能够包括多个不同的属性。图2图示了针对任务102的多个示例性数据结构,其在本文中能够被称为“任务数据102”。在第一示例中,任务102A可以包括任务描述、任务时间线、一个或多个用户身份、用户活动概要、任务递送时间表、相关文件、许可和角色。在第二示例中,任务102B可以包括任务描述、任务时间线、一个或多个用户身份和任务递送时间表。在第三示例中,任务102C可以包括任务描述和用户活动概要。在第四示例中,任务102D可以包括任务描述、任务时间线、一个或多个用户身份和相关文件。在另一示例中,任务102E可以包括任务描述、任务时间线和一个或多个用户身份。在又一示例中,任务102F可以包括一个或多个用户身份和用户活动概要。
所述任务描述能够包括描述要被执行的任务的句子的协调序列。所述任务描述能够包括概述用户活动101的计算机生成的句子。所述任务描述还能够包括从与用户活动101相关联的内容中提取的句子和关键字。例如,如果一系列会议、流送广播、频道帖子以及其他形式的通信指示需要特定的后续任务,则系统100能够分析这样的活动并且生成多个句子来描述所述任务。另外,从源自用户活动101的任何内容中提取的直接引语能够被整合为任务描述的一部分。在一个说明性示例中,可以检测会议中的一个或多个会话,其中,用户可以指示需要原型来完成开发过程的特定阶段。这样的用户活动能够被解释为生成指示该任务的任务描述。
所述任务时间线能够包括一个或多个日期和/或时间以指示关于任务的里程碑或最后期限。所述任务时间线能够包括基于对用户活动101的分析的计算机生成的日期或时间。例如,对若干文档、电子邮件、频道帖子、日历事件和其他形式的通信的分析能够被解释为识别针对特定任务的时间和/或日期。例如,响应于对任务的检测,诸如开发原型的需要,系统100能够分析指示开发过程的阶段的多个其他里程碑或事件,诸如多个日历事件。所述阶段和/或其他通信能够被解释为开发任务时间线,所述时间线可以包括针对特定任务的单个最后期限或者多个不同的最后期限。每个最后期限还可以与基于对用户活动101的解释的置信水平的优先级相关联。
所述用户身份能够包括涉及特定人或人群的任何类型的数据。在一些配置中,能够从用户活动101解释用户身份。个体或人群能够通过他们对日历事件、频道帖子、电子邮件、文档或者指示可能与任务102相关联的用户的任何其他数据的解释来识别。姓名和身份以及任何联系信息可以源自个人与通信频道、会议、文档、音频文件、视频文件或者源自对任何用户活动101的分析的任何其他数据的关联。所述用户身份能够包括针对与任务具有阈值相关性的用户或用户组的任何类型的标识符。个人的相关性可以基于根据活动数据101而生成的置信水平。例如,如果个人提到“Bob”要创建原型,并且Bob是与做出该声明的个人相关联的频道的成员,则Bob的用户身份可以被识别为具有阈值水平的相关性。阈值水平的相关性可以包括与提及该个人的特定会议直接相关的任何身份,或者如果有人在通信内直接提及标识符,例如,个人陈述电子邮件地址、名字和姓氏,等等。所述用户身份也能够通过使用头衔、角色或者在任何类型的用户活动101内提及或引用的任何其他描述来识别。
所述用户活动概要可以包括被用于生成任务102的用户活动101的描述。例如,如果系统100确定选择的电子邮件组、日历邀请的选择集合和若干文档用于形成任务,则所述用户活动概要可以描述会议、电子邮件和相关文档以向任务添加上下文。在一些实施例中,所述用户活动概要还可以包括针对特定任务的源的链接或摘录。例如,如果系统100检测到频道的特定发布描述了针对个人的任务,例如,Bob需要构建原型,则用户活动概要可以包括指向发布的链接或者针对发布的标识符。所述链接或摘录也能够被包含在任务102的其他属性中,诸如任务描述。
所述任务递送时间表可以包括定义用于将任务102或任务102的部分递送给特定个人或人群的事件的时间线。如下文更详细描述的,任务102可能需要在不止一次的情况下被递送给个人,以增加所述消息将被递送给预期接收者的可能性。系统100能够基于任务中所指示的最后期限或时间线,利用任务递送时间表来传送任务102的各个方面。在一些配置中,能够使用不同的递送机制103在不同的时间递送任务或任务的一部分。例如,能够经由电子邮件递送任务的第一提醒,然后,系统100稍后可以将任务102的各方面嵌入在文档内,然后,稍后将任务的各方面发布到频道。
文件还可以被嵌入或引用在任务102内。在一些配置中,具有与任务102的阈值水平的相关性的文件可以通过对用户活动101的分析来识别。例如,如果会话通过名称引用了特定文档,则这样的文档可以被包含在任务102中。如果文件被附加到会议请求或者以其他方式被附加到在会议期间发送的电子邮件,则可以认为这样的文件具有阈值水平的相关性,并且所述文件可以被包含在任务102中。文件可以具有基于多个因素的阈值水平的相关性。例如,可以使用在特定任务与文档之间共享的多个关键字来确定所述文档是否具有与任务的阈值水平的相关性。也可以基于特定文档与特定任务可能都具有的常见短语或术语的数量来对所述文档的短语和句子进行评分。如果系统确定特定文档和任务具有阈值数量的常用短语或术语,则可以在任务102内嵌入或引用这样的文档。可以在特定任务102内嵌入具有阈值水平的相关性的文件,或者可以在任务102内链接或者以其他方式引用文件。
任务102还可以定义多个许可。在一些配置中,所述许可可以定义对选定文件或任务102的其他属性的访问权限。在一个说明性示例中,如果具有嵌入文件的任务102被递送给多人,则所述许可可以授予一个接收者对所述文件的读和写访问权限,同时仅允许其他接收者读取访问许可。所述许可可以基于所述文档的原始所有者的访问权限以及在任务的接收者与原始所有者之间的关系。例如,如果原始所有者对文件具有读/写访问权限,并且该原始所有者与所有接收者处在同一团队中,则接收者可以接收相同的许可。随着任务的接收者与所递送的内容的原始所有者之间的关系变得不那么清楚,所述许可的特定方面可能受到更多约束。例如,如果原始所有者是中级管理者,并且任务102的接收者是更高级别的雇员,则接收者可以接收关于递送内容的相同或者更宽松的许可。然而,如果作为任务102的接收者的原始所有者是接收者的管理者,则接收者可以接收更多约束的许可,例如只读许可或者具有到期日期的许可。如果接收者在不同的团队中或者不与原始所有者直接关联,则可以基于对上下文数据(诸如组织图)的解释向所述接收者授予更多约束的许可。
任务还可以为每个用户身份定义多个角色。在一些配置中,活动数据101可以定义作为频道一部分的会议。在这样的实施例中,所述会议或所述频道可以为每个参与者定义角色。例如,基于在频道中或者在组织数据内定义的定义,可以将一个人指定为经理,将另一人指定为设计者,并且将另一人指定为测试者。那些经解释的角色可以被用于向每个人分发任务的不同方面,诸如任务描述的不同版本。角色也可以被用于确定所述许可。例如,如果与任务102相关的识别的文件被解释和识别为与项目的设计工作相关,则针对该文件的访问许可能对设计者的约束较少,并且对具有其他角色的其他接收者的约束更大。
在图2中所示的这些示例是为了说明目的而提供的,并且不应当被解释为限制。能够意识到,任务102能够包括所描述的属性的任意组合。例如,任务102可以仅包括任务描述,或者任务102可以仅包括活动概要。
图3图示了其中根据诸如活动数据101、偏好数据107和机器学习数据108的上下文数据生成任务102的示例。在该示例中,活动数据101包括指示需要原型的若干电子邮件以及在描述Amy S.作为原型专家的角色定义的频道上的会议的标识。活动数据101还包括定义针对原型设计的若干会议的若干日历事件和指示个人Steve在四月离开办公室一周的另一日历事件。活动数据101还包括频道帖子,所述频道帖子包括对关于若干原型上的文件的引用。
同样地,在该示例中,偏好数据107指示特定用户的优先级。在该示例中,Steve更喜欢当他休假回来时递送任务。一般而言,机器学习数据108能够定义用户的任何类型的活动。机器学习数据108能够由系统100处理以生成和修改任务。另外,机器学习数据108能够被用于确定针对任务102的最佳递送机制103。在该示例中,机器学习数据108指示Steve已经对过去已经被递送给他的任务102做出响应。
给定针对该示例的上下文数据的各种源,任务生成器106生成包括任务描述301、用户活动概要302和对文件的引用303的任务102。如所示的,任务描述301包括活动数据101的纯文本描述。另外,任务描述301指示用户身份Steve和截止日期4/1/2021。能够通过对诸如活动数据101、偏好数据107和机器学习数据108的上下文数据的分析来生成任务描述301。
在图3中还示出了用户活动概要302。在该示例中,用户活动概要302包括给Steve的对在他的假期期间发生的会议进行概述的注释。为了实现这一点,系统100能够分析Steve不在办公室的时间范围。系统100然后能够分析在该确定的时间范围期间发生的会议。在一些配置中,系统100能够过滤要被添加到用户活动概要302的信息。例如,系统100能够包括对具有与任务102的阈值水平的相关性的事件的描述。例如,能够在用户活动概要302中描述用于生成任务的会议,例如,具有与所述任务相关的文本或其他数据。用户活动概要302还能够包括其他信息和属性,诸如任务描述的简短概要、许可、用户身份、文件等。
在图3中所示的示例还示出了任务102包括文件303。如上文所概述的,如果文件303具有与任务102的阈值水平的相关性,则文件303能够被嵌入到任务102、链接到任务102或者在任务102内引用。如果文件在用户活动101的事件、帖子或通信内被直接引用,则文件303能够具有阈值水平的相关性。在该示例中,频道帖子引用文件,并且因此,文件303被包含在任务102中。
图4图示了其中根据诸如活动数据101、偏好数据107和机器学习数据108的上下文数据生成任务递送时间表401的示例。在该示例中,活动数据101包括指示需要原型的频道帖子。活动数据101还包括指示针对原型的专家(例如,Amy S.)的若干电子邮件。活动数据101还包括指示四次会议的若干日历事件。另外,活动数据101包括频道数据,所述频道数据包括描述时间表的线程。
在该示例中,在图4中所示的偏好数据107指示用户(在这种情况下为Amy)偏好应用内消息、日历事件和频道帖子。另外,机器学习数据108指示Amy频繁地使用日历程序。另外,机器学习数据108指示Amy频繁地与文档、频道和文字处理应用交互。机器学习数据108还指示Amy频繁地利用电子邮件程序。
基于所述上下文数据,系统100生成任务递送时间表401,任务递送时间表401包括基于对活动数据101、偏好数据107和机器学习数据108的解释而生成的多个最后期限和里程碑。如所示的,针对一项任务的任务递送时间表包括具有基于对在活动数据101中提供的时间表的解释的多个里程碑和最后期限的时间线。基于所述偏好数据和所述机器学习数据来选择特定的递送机制103。由于接收者Amy频繁地与文档、频道、文字处理应用和电子邮件应用交互,因此系统100能够利用这些应用和文件作为用于将任务102递送给Amy的选项。
在任务102的接收者与递送机制103中的每个递送机制交互时,系统100能够分析这些类型的交互并且更新机器学习数据108。例如,如果所述递送时间表的第一最后期限利用日历事件来递送任务102,并且接收者从未打开所述日历事件,则所述系统可以重新发送关于第一最后期限的通知并且还对其他里程碑或最后期限进行调整,以便在此后使用其他递送机制103而不是日历程序。
该示例是为了说明的目的而提供的,并且不应当被解释为限制。能够意识到,能够利用递送机制103的任意组合,并且能够基于使用时间、使用频率和每次使用的上下文相关性来选择每种机制。例如,如果确定任务102的接收者仅在该月的特定周内与特定文档进行交互,则在针对待递送的内容的特定里程碑或最后期限与该特定周相符合的情况下该文档可以被选择为针对任务102的递送机制103。
图5图示了其中根据诸如活动数据101和外部源数据110的上下文数据生成许可501的示例。在该示例中,活动数据101包括指示需要原型的频道帖子。活动数据101还包括指示针对原型的专家姓名(例如,Amy S.)的若干电子邮件。活动数据101还包括引用两个文档的若干日历事件以及指示Steve(104A)和Carole(104B)的任务是构建原型的日历事件。外部源数据110定义了针对Steve(104A)和Carole(104B)关于包括在所述日历事件中引用的文件的若干文件的许可。外部源数据110可以是数据存储、数据库或者能够存储和传送针对个体用户身份的许可的任何其他源的形式。
系统100能够分析所述上下文数据并且为每个识别出的用户生成许可501。在该示例中,Steve(104A)和Carole(104B)被授予读取与任务102相关联的文档的许可,并且被给予读取相关频道的帖子的访问权限。在该示例中,基于从外部源数据110读取的许可,Carole(104B)针对每个文档都具有写入许可以及对频道进行写入的许可,并且Steve(104A)对第二文档具有写入许可以及对频道进行写入的许可。
图6是在图5中所示的示例的扩展。在该示例中,一个用户Amy S.不是用户活动101中的参与者。然而,Amy被识别为能够对任务102做出贡献的专家的个人。在这种场景中,当个人在用户活动101内被引用但不是用户活动101的参与者时,可以为该人生成许可。该特征能够通过自动地将相关人员引入到项目中来增强现有系统,而无需手动输入许可数据。在该示例中,Amy(106E)被添加到许可501并且被授予对与任务102相关联的身份之一进行镜像的许可。该示例被提供用于例示说明目的并且不应当被解释为限制。能够意识到,被授予给在用户活动101内被引用但不是用户活动101的参与者的个体的许可可以基于多个因素。例如,这样的个体可以被授予只读许可,直到与所述任务相关联的一个或多个用户执行一个或多个动作。例如,可以响应于与个体的特定通信来扩展许可,例如,Carole具有与Amy的阈值数量的电子邮件或其他通信。
如果外部源不为特定用户提供许可,则能够基于在用户标识符与任务受让人之间的关系来设置任务受让人的许可。例如,如果Amy的许可未在外部源数据110中被列出,则所述系统能够基于他与Carole的关系以及她分配的许可来分配Amy的许可。能够将许可(例如,Carole的许可)复制并且分配给Amy,或者能够将经修改的许可(例如,更宽松的许可或更受约束的许可)授予受让人,诸如Amy。
在一些配置中,特定技术领域的专家可以通过使用一个或多个外部源来确定。例如,能够利用社交网络、地址簿以及与用户活动101的参与者相关联的其他源来寻找特定领域中的专家。在一个示例中,能够使用任务的参数在与Carole(104B)相关联的社交网络中搜索专家,例如,Amy S.。例如,任务的参数可以包括构造要求,例如,必须利用特定的编程语言或特定的材料来制作原型。并且,那些参数可以被用于生成查询,所述查询可以被用于搜索外部源,以用于识别具有阈值水平的经验的技术专家。所述系统可以对满足阈值水平的经验的候选人列表进行排名。例如,查询可以正在寻找具有特定数量的学位、多年经验、多年特定设计经验等的候选人。满足这样的阈值水平的经验的用户身份能够基于与搜索标准的匹配水平进行排序并且被显示在任务102内。
为了优化每个任务104的效力,系统100的选择器112能够识别能够被用于将任务102传送给与任务102相关联的用户的递送机制103。递送机制103能够包括任何系统、平台、文件、应用、服务或者用于传送和显示任务的任何其他计算机化机制。取决于个人何时与计算机交互、他们与计算机的交互类型、他们可以使用的应用以及他们与之交互的文件,任务102可以被递送给递送机制103的任意组合。例如,任务102可以被嵌入到文件中、经由文本发送、经由电子邮件发送、被发布在频道上、使用应用内(“app内”)消息进行递送、使用操作系统通知特征进行递送、作为文本消息发送等。如下文将更详细描述的,任务102可以被配置为使应用显示任务描述和/或提供相关联的最后期限的通知。
能够基于偏好数据107、机器学习数据108、外部源数据110和其他上下文数据来选择一种或多种递送机制103。例如,如果偏好数据107和机器学习数据108指示用户花费更多时间来查看文字处理应用而不是日历应用,则可以将用户的任务102直接发送到文字处理应用以用于显示应用内消息中的任务102。另外地或替代地,如果用户正在处理特定文件但是利用多个不同的应用来访问该文件,则可以将任务102嵌入该文件中,从而可以不管被用于访问所述文件的应用如何都显示所述任务。这样的实施例还能够帮助创作与任务102相关的任何文档。
图7图示了示出系统100的选择器112如何利用多个因素来为任务102选择一个或多个递送机制103的示例。一般而言,能够根据与用户的交互水平对每个因素进行评分。所述分数能够基于任何尺度。在一个示例中,分析每个递送机制103的使用频率、使用数据量和使用时间以选择用于任务102的递送机制103。该数据能够从机器学习数据或者可以随时间测量到的一般活动数据中获得。所述使用频率能够指示特定用户在一段时间内访问或使用递送机制的次数。例如,如果电子表格应用比文字处理应用使用得更频繁,则电子表格应用可能比文字处理应用具有更高的分数。
所述使用数据能够指示用户可能与应用或文件进行交互的水平。例如,如果用户编辑第一文字文档导致5KB的编辑,并且然后编辑第二文字文档导致200MB的编辑,则所述第一文字文档可能比所述第二文字文档具有更高的分数。使用数据也能够应用于应用,例如,如果用户通过应用编辑文档集合,则能够为这样的应用生成数据使用分数。
“使用时间”能够指示针对特定文档或文件的使用时间可以如何与和任务102相关联的时间重叠。例如,如果任务将在周末期间完成并且任务的接收者在周末使用文字处理应用比演示应用多,则文字处理应用比演示应用的分数更高。
关于在图7中所示的示例,对多个递送机构103进行评分并且相互进行比较。在该示例中,针对每个递送机制103的分数701被处理以生成累计分数702。尽管该示例说明了每个分数被召唤来创建累计分数,但是能够意识到,能够利用任意类型的算法来基于个体分数701生成累计分数702。在该示例中,将累计分数702与阈值进行比较,并且选择超过阈值的递送机制103以供使用。如果系统100确定所选择的机制没有被使用,则系统100能够利用排名的列表并且将任务递送给没有超过所述阈值的各种机制103。
在图7的表中所图示的数据在本文中被称为分析数据。这样的数据能够在图形用户界面701中被显示给用户,从而允许用户理解如何选择不同的递送机制。可以针对从用户活动101选择的不同主题图示出类似的表。在这样的实施例中,可以在诸如在图7中所示的表之类的表中显示特定关键字的频率或用户活动101指示主题的次数。通过显示这样的信息,用户能够理解如何在系统100内做出决定。另外,用户能够通过选择不同的因素、改变被应用于因素的权重或者允许用户进行手动选择,来进行一项或多项调整。例如,用户能够选择特定的递送机制或者改变所显示的递送机制的排名。如果用户在图7中所示的表内选择特定因素,则用户能够移除特定因素,诸如“使用频率”因素。响应于这样的输入,系统能够对所述递送机制进行重新排名和/或使用因素选择不同集合的递送机制而不考虑被移除的因素,例如,“使用频率”因素。
在一些配置中,系统100能够利用具有特定递送机制103的选择的任务递送时间表。因此,能够在正确的时间在正确的地点将任务102递送给用户,这可以包括为增加任务102递送的有用性和效力的目的的一系列协调动作或信息。
在一些配置中,针对每种递送机制103的分数能够被归一化或加权。图8图示了作为在图7中所示的示例的扩展的示例。在该示例中,多个权重被应用于每个分数701以生成加权分数801。所述加权分数被用于生成累计加权分数803。被应用于每个分数的所述权重能够基于许多源,包括但不限于在用户偏好数据、机器学习数据或活动数据内的定义。
在一个说明性示例中,如果系统100确定用户没有在特定递送选项处与任务进行交互,例如,任务的接收者没有读取与所述任务相关联的电子邮件,则所述系统可以降低被用于选择该递送选项的任何分数。例如,在图7和图8中所示的示例,如果系统100确定用户没有读取或使用该递送选项,则使用频率权重和使用时间权重可以降低电子邮件系统的相关分数。如在附图中所示的,电子邮件系统在图7中被选择为递送机制,但是后来在图8中作为选项被移除。这可能导致系统100确定特定系统(诸如电子邮件系统)不被利用或者不能有效地递送任务。
被应用于不同因素的所述权重能够来自许多不同的源。例如,能够由机器学习系统来生成所述权重,所述机器学习系统能够测量特定递送机制被使用的量。因此,如果所述机器学习系统确定特定递送机制(诸如电子邮件应用)常常被选择但是未被个人实际使用,则所述系统能够消除被用于选择这样的递送机制的因素,或者所述系统能够对这样的因素应用特定的权重,例如,小于1。在另一示例中,被应用于不同因素的权重能够来自用户输入。这使得用户能够在查看所述分析并且使得他们能够理解如何选择递送机制之后对决策制定过程进行实时调整。
如上文所概述的,所述递送机制能够涉及多种不同类型的用户界面、应用和能够传送任务的其他形式的数据。图9A-9G图示了能够与在本文中所公开的技术一起使用的多个示例性用户界面。
图9A图示了能够如何修改应用的用户界面900以使用应用内消息向接收者传达任务的示例。在该示例中,当用户准备好开始项目时(例如,当他们打开文件时),在战略性放置的位置中显示所述任务。在该示例中,在通常被用于打开文件的用户界面菜单内提供了任务描述和到两个文件(901A和901B)的链接。
图9B图示了能够如何利用应用内消息903修改用户界面901的另一示例。在该示例中,所述任务被嵌入在与接收者正在工作的内容非常接近(例如,邻近)的位置中。在一些配置中,应用内消息903还能够包括链接904,所述链接能够将用户导航到任务的源,例如,频道、对录制的或实况的会议的Skype呼叫等。
图9C图示了如何通过使用频道应用将任务递送给接收者的另一示例。在该示例中,频道的用户界面910填充有帖子911,帖子911指示个体的任务是构建原型。图9D图示了涉及频道应用的又一示例。在该示例中,频道的用户界面910填充有帖子913,帖子913指示个体的任务是构建原型。该频道条目还涉及到支持文档的链接914。这样的频道条目能够由系统100基于对这样的递送机制的选择和基于递送调度而自动地生成。
图9E图示了可以被用于传达针对特定接收者Amy的任务的频道条目的示例。在该示例中,接收者的任务包括任务时间线。所述任务时间线指示所述时间线与Amy的会议之一相冲突。用户界面910还图示了另一用户Bob的任务,该任务取决于Amy的任务。当检测到冲突时,可以向用户显示相关任务。这样的信息使得用户能够就冲突以及冲突可能如何影响他人做出决定。
当所述系统确定诸如会议的特定事件与任务时间线相冲突时,系统100能够生成指示冲突存在的图形元素950。图形元素950还能够提供描述事件或者冲突严重性的信息。图形元素950还可以指示关于与所述时间线相冲突的事件的优先级。基于会议的优先级,系统100能够采取一个或多个动作。例如,如果呈现冲突的事件是低优先级的,诸如一般团队会议,则所述系统可以生成第二图形元素951以允许用户解决所述冲突。响应于对第二图形元素951的用户选择,系统100可以移除引起所述冲突的事件、重新调度引起所述冲突的事件或者提示用户手动地移动引起所述冲突的事件。
参考图9F,在继续以上示例中,如果所述系统确定与所述时间线相冲突的事件具有高优先级,诸如CEO会议或假期,则系统100可以向与相关任务关联的其他用户自动地生成通知。另外,系统100可以生成被显示给任务所有者Amy的图形元素953,指示可以被显示给与相关任务相关联的用户(诸如Bob)的消息类型。
图9G图示了可以向与相关任务相关联的用户显示的示例性用户界面910。在这种情况下,显示Bob的任务的用户界面可以示出图形元素953,其通知任务所有者可能存在延迟或冲突,诸如发现的关于Amy任务的冲突。
图10是图示了用于对任务的计算有效的生成和管理的例程1000的各方面的图。本领域普通技术人员应当理解,在本文中所公开的方法的操作不一定以任何特定次序来呈现,并且以(一种或多种)替代次序执行一些或所有操作是可能的并且是预期的。为了便于描述和说明,已经按呈现次序介绍了这些操作。在不背离随附的权利要求的范围的情况下,可以添加、省略、一起执行和/或同时执行操作。
还应当理解,所例示说明的方法能够在任何时间结束并且不需要全部执行。所述方法的一些或所有操作和/或基本上等效的操作能够通过执行被包含在计算机存储介质上的计算机可读指令来执行,如在本文中所定义的。如在说明书和权利要求中所使用的术语“计算机可读指令”以及其变体在本文中被宽泛使用以包括例程、应用、应用模块、程序模块、程序、组件、数据结构、算法等。计算机可读指令能够在各种系统配置上实现,包括单处理器或多处理器系统、小型计算机、大型计算机、个人计算机、手持计算设备、基于微处理器的可编程消费者电子件、其组合等。
因此,应当意识到,在本文中所描述的逻辑操作被实现为:(1)在诸如在本文中所描述的那些的计算系统上运行的计算机实现的动作或程序模块的序列,和/或(2)在计算系统内的互连机器逻辑电路或电路模块。实现方式是取决于计算系统的性能和其他要求的选择问题。因此,逻辑操作可以以软件、固件、专用数字逻辑以及其任何组合来实现。
另外,在图10和其他图中所图示的操作能够与上文所描述的示例性呈现UI相关联地实施。例如,在本文中所描述的(一个或多个)各种设备和/或(一个或多个)模块能够生成、发送、接收和/或显示与通信会话的内容(例如,实况内容、广播事件、记录内容等)相关联的数据和/或呈现UI,包括远程计算设备、化身、频道、聊天会话、视频流、图像、虚拟对象和/或与通信会话相关联的应用的一个或多个参与者的渲染。
例程1000开始于操作1002,其中,系统100从多个资源接收定义用户活动的数据。在该操作中,出于识别关键字、描述或参数的目的,能够收集作为多个个体的用户活动的一部分的通信数据和/或文件。例如,所述系统能够识别对话内的短语并且将该对话与其他形式的通信(诸如聊天条目)相关联。所述系统能够分析与任何合适类型的用户活动相关联的文件。例如,如果用户正在编辑电子表格或Word文档,则能够接收和分析这样的文档的内容。还能够接收和分析被附加到其他类型通信的文件,诸如频道条目。操作1002能够包括接收任何类型的通信数据,包括但不限于:电子邮件、消息、视频和记录以及实况广播等。
例程1000进行到操作1004,其中,系统100基于接收到的定义用户活动的数据和/或机器学习数据来识别至少一项任务。操作1004能够包括用于分析关键字、短语、图像或者任何其他类型的数据以识别任务的任何合适的技术。能够在操作1004处确定任务的任何方面。例如,能够确定用户身份、文件、任务时间线、任务描述、任务递送时间表和其他活动。例如,文本数据或音频数据可以包括短语,诸如“Jason构建软件应用的原型将是有帮助的。软件应用的启动时间少于30秒也将是有帮助的。”在该示例中,系统100能够识别至少一个身份,例如Jason,以及至少一个参数,例如,启动时间需要小于30秒。可以在通信中指示关于该任务的时间线,或者所述时间线可以从其他信息导出。例如,所述系统指示正在讨论的软件应用具有在接下来的三个月内的发布时间表,而原型将在两个月内到期。根据这样的信息,所述系统可以组合诸如时间线、用户身份和任务描述等属性来生成任务。
接下来,在操作1006处,系统100能够确定针对所述任务的递送机制。如在本文中所描述的,能够利用一种或多种因素来确定合适的递送机制。所述因素能够基于但不限于:机器学习数据、活动数据、偏好以及从外部源(诸如地址簿、社交网络等)接收的上下文数据。
在操作1008处,系统100能够在考虑一个或多个外部源(诸如日历数据)的情况下分析所述任务以识别与任务时间线的冲突。例如,如果任务时间线指示用户需要在特定周内完成原型,并且该用户计划在那段时间期间出城,则系统100能够识别在任务时间线与一个或多个事件之间的冲突。
接下来,在操作1010处,系统100能够将具有多个冲突通知之一的任务递送给选定的递送机制。如上文所描述的,所述递送机制能够包括基于用户与计算机的交互而选择的任何合适的平台、软件应用或文件。如上文所描述的,系统100能够提供指示调度冲突的通知。系统100还能够提供用于允许用户解决冲突的工具。基于与和任务时间线相冲突的事件相关联的优先级,所述系统能够允许用户重新调度所述事件、删除所述事件或者以其他方式修改所述事件以减轻所述冲突。系统100还可以通知可能受到所述冲突影响的其他用户。
接下来,在操作1012处,出于收集和分析机器学习数据的目的,所述系统能够分析接收所生成的任务的个人(例如,接收者)的用户活动。例如,当特定用户接收所生成的任务并且该用户不与所述任务进行交互时,系统100能够分析该类型的活动并且进行实时调整以确保用户接收任务的通知。同时,系统100还可以测量关于用户与任务的交互的活动水平。能够收集并且利用该数据来确定针对任务的未来递送机制。例如,如果个人在读取描述任务的电子邮件之后以一个或多个用户活动进行响应,则所述系统更新分数和可以被用于决定针对未来任务的递送机制的其他度量。在该示例中,如果用户做出反应,例如,在读取电子邮件之后对任务取得任何可衡量的进展,则电子邮件系统作为递送机制的分数可能高于未使用的其他递送机制,诸如聊天消息等。
接下来,在操作1014处,系统100能够传送定义与机器学习服务的用户交互的数据。机器学习服务可以涉及系统100内的外部服务或内部服务。能够为任务的递送来存储和分析不同的度量,其示例在图7和图8中被示出。如所示的,例程1000能够从操作1014继续以返回到操作1002以使得系统100能够随着新任务的生成而连续地利用和调整所述机器学习数据。
除了例程1000之外或者结合例程1000,计算机可读介质可以使系统100监视定义多个用户的用户活动的输入数据,以从与文档、消息、频道线程、音频记录或通信流中的至少一项相关联的用户活动中识别关键字。所述系统然后可以分析所述关键字以识别任务以及与所述任务相关联的至少一个用户身份,并且然后基于所述关键字来生成任务描述。所述系统还可以分析定义与和所述任务相关联的至少一个用户身份相关联的用户活动的机器学习数据。在一些实施例中,所述机器学习数据可以指示多个递送应用和/或多个递送文件的使用频率。例如,如果用户使用若干应用与文件进行交互,则所述系统可以将所述任务的各方面嵌入或链接在文件内,而不是在软件应用内提供应用内消息。因此,所述系统能够将所述任务描述传送给多个递送软件应用中具有阈值使用水平的至少一个递送软件应用,其中,所述传送使所述至少一个递送软件应用在用户界面中显示所述任务描述。替代地或另外地,所述系统能够将所述任务描述嵌入在多个递送文件中具有阈值使用水平的至少一个递送文件中。
在一些实施例中,所述系统能够分析所述关键字来识别任务,所述任务还包括分析所述关键字然后识别与所述任务相关联的任务时间线。所述系统能够将所述任务时间线传送到具有阈值使用水平的至少一个递送软件应用,其中,所述传送使所述至少一个递送软件应用在所述用户界面中显示所述任务时间线。所述系统还能够将所述任务时间线嵌入在具有所述阈值使用水平的至少一个递送文件中。
在一些实施例中,所述系统能够识别相关文件并且与任务并发地递送所述相关文件。例如,所述系统能够分析文档、消息、频道线程、音频记录和/或通信流中的至少一项以识别与任务相关联的文件。例如,所述系统能够将所述文件或者针对所述文件的标识符传送给具有阈值使用水平的至少一个递送软件应用,其中,所述传送使所述至少一个递送软件应用在所述用户界面中显示所述文件的至少一部分或者针对所述文件的标识符。所述系统还能够将所述文件的至少一部分或者针对所述文件的标识符嵌入在具有阈值使用水平的至少一个递送文件中。
在一些实施例中,所述系统能够控制针对与任务相关联的文件的许可。例如,所述系统能够基于至少一个用户身份来确定与所述文件相关联的访问许可。参考上文所描述的示例中的一些示例,如果Steve被选择为被分配给任务的个人,则所述系统能够向被嵌入在递送文件中的文件的至少一部分或任何其他递送机制103分配访问许可。在一些实施例中,所述系统可以基于至少一个用户身份来确定与所述文件相关联的访问许可(例如,Bob的许可),并且将所述访问许可分配给被传送到所述至少一个递送软件应用的文件,例如分配给在图9A中所示的应用。
在一些配置中,所述系统可以确定针对所述软件应用的任务的递送时间表。例如,系统可以分析定义与和所述任务相关联的至少一个用户身份相关联的用户活动的机器学习数据,其中,所述机器学习数据指示对所述至少一个递送软件应用的使用时间。基于这样的分析,所述系统能够基于对所述至少一个递送软件应用的使用时间来将所述文件或针对所述文件的标识符传送给所述至少一个递送软件应用。
在一些配置中,所述系统可以确定针对所述递送文件的任务的递送时间表。例如,所述系统能够分析定义与和所述任务相关联的至少一个用户身份相关联的用户活动的机器学习数据,其中,所述机器学习数据指示所述至少一个递送文件的使用时间。所述系统然后能够基于所述至少一个递送文件的所述使用时间来将所述任务描述或者任何其他任务属性嵌入在所述至少一个递送文件(例如,图1的103)中。
在一些配置中,所述系统能够向操作系统递送任务以允许所述操作系统在所述应用没有在阈值水平被使用时提供系统通知。例如,系统可以确定所述递送软件应用不满足所述阈值使用水平。响应于确定所述递送软件应用不满足所述阈值使用水平,所述系统可以使所述任务描述被显示在操作系统通知中,其中,所述操作系统通知根据基于所述机器学习数据的递送时间表来显示。如在本文中所描述的,所述系统能够使用任何合适的递送机制来提供任务,包括但不限于:文本消息应用、文字处理应用、电子表格应用、演示编辑应用、频道通信应用、视频和音频通信应用或日历应用。
在一些配置中,所述系统能够识别与任务相关的专家。结合在本文中所公开的技术中的任意技术,所述系统能够分析所述任务描述以识别与所述任务相关联的所需凭证。所述系统然后能够生成包括与所述任务相关联的所需凭证的描述的查询。所述系统然后能够将所述查询传送到至少一个外部源,以用于使所述外部源识别具有与所述任务相关联的所需凭证相关的阈值水平的凭证的一个或多个用户身份。在一个说明性示例中,所述查询能够被发送到社交网络,诸如LinkedIn,并且分析与个人相关的任何数据。个人的凭证能够与由所述系统生成的任何标准相匹配,以确定所述个人是否满足针对特定任务的经验阈值水平,例如,预定数量的凭证、学位或成就。所述系统然后能够响应于所述查询而接收源数据。所述源数据能够识别相对于与所述任务相关联的所需凭证具有阈值水平的凭证的一个或多个用户身份。所述系统然后能够为至少一个计算设备生成访问许可,以允许具有所述阈值水平的凭证的所述一个或多个用户身份访问定义任务描述、任务时间线和/或与任务相关联的至少一个文件的任务数据。
应当意识到,上文所描述的主题可以被实现为计算机控制的装置、计算机过程、计算系统,或者被实现为诸如计算机可读存储介质的制品。所述示例性方法的操作在个体框中示出并且参考这些框进行概述。所述方法被图示为框的逻辑流程,其中的每个框能够表示能够在硬件、软件或者其组合中实现的一个或多个操作。在软件的上下文中,所述操作表示被存储在一个或多个计算机可读介质上的计算机可执行指令,所述计算机可执行指令在由一个或多个处理器执行时使得所述一个或多个处理器能够执行所述操作。
通常,计算机可执行指令包括执行特定功能或实现特定抽象数据类型的例程、程序、对象、模块、组件、数据结构等。操作被描述的次序并不旨在被解释为限制,并且任意数量的所描述的操作能够以任何次序来执行、以任何次序组合、被细分为多个子操作和/或并行执行以实现所描述的过程。所描述的过程能够由与一个或多个设备(诸如一个或多个内部或外部CPU或GPU)和/或一个或多个硬件逻辑单元(诸如现场可编程门阵列(“FPGA”)、数字信号处理器(“DSP”)或其他类型的加速器)相关联的资源来执行。
上文所描述的所有方法和过程都可以体现在由一个或多个通用计算机或处理器执行的软件代码模块中,并且经由所述软件代码模块完全自动化。所述代码模块可以被存储在任何类型的计算机可读存储介质或其他计算机存储设备中,诸如下文所描述的那些。一些或所有方法可替代地被体现在专用计算机硬件中,诸如下文所描述的。
在本文中所描述的和/或在附图中所描绘的流程图中的任何例程描述、元件或框应当被理解为潜在地表示模块、段或代码的部分,其包括用于实现例程中的特定逻辑功能或元件的一个或多个可执行指令。替代实现方式被包含在在本文中所描述的示例的范围内,其中,元件或功能可以从所示或所讨论的内容中删除或乱序执行,包括基本上同步或者以相反次序执行,这取决于所涉及的功能,如本领域技术人员将理解的那样。
图11是图示了其中系统1102能够实现在本文中所公开的技术的示例性环境1100的图。在一些实现方式中,系统1102可以用于收集、分析和共享定义被显示给通信会话1004的用户的一个或多个对象的数据。
如所图示的,通信会话1104可以在与系统1102相关联或者作为系统1102的一部分的多个客户端计算设备1106(1)至1106(N)(其中,N是具有值二或更大的数字)之间实现。客户端计算设备1106(1)至1106(N)使得用户(也被称为个体)能够参与通信会话1104。
在该示例中,系统1102通过一个或多个网络1108托管通信会话1104。亦即,系统1102能够提供使得客户端计算设备1106(1)至1106(N)参与通信会话1104(例如,经由实况观看和/或记录的观看)的服务。因此,通信会话1104的“参与者”能够包括用户和/或客户端计算设备(例如,多个用户可以在经由使用单个客户端计算设备参与通信会话的房间中),其中的每个能够与其他参与者进行通信。作为替代,通信会话1104能够由利用对等技术的客户端计算设备1106(1)至1106(N)之一托管。系统1102还能够托管聊天对话和其他团队协作功能(例如,作为应用套件的一部分)。
在一些实现方式中,这样的聊天对话和其他团队协作功能被视为与通信会话1104不同的外部通信会话。在通信会话1104中收集参与者数据的计算系统1102能够链接到这样的外部通信会话。因此,所述系统可以接收信息,诸如日期、时间、会话细节等,其使得能够连接到这样的外部通信会话。在一个示例中,能够根据通信会话1104进行聊天对话。另外,系统1102可以托管通信会话1104,通信会话1104包括共同位于会议地点(诸如会议房间或礼堂)或者位于不同的位置中的至少多个参与者。
在本文中所描述的示例中,参与通信会话1104的客户端计算设备1106(1)至1106(N)被配置为接收通信数据并且在显示屏的用户界面上呈现以用于显示。所述通信数据能够包括实况内容和/或记录的内容的各种实例或流的集合。实况内容和/或记录的内容的各种实例或流的集合可以由一个或多个相机来提供,诸如视频相机。例如,实况或记录的内容的个体流能够包括与由视频相机所提供的视频馈送相关联的媒体数据(例如,捕获参与所述通信会话的用户的外观和语音的音频和视频数据)。在一些实现方式中,所述视频馈送可以包括这样的音频和视觉数据、一幅或多幅静止图像和/或一个或多个化身。所述一幅或多幅静止图像也可以包括一个或多个化身。
实况或记录的内容的个体流的另一示例能够包括媒体数据,所述媒体数据包括参与所述通信会话的用户的化身以及捕获用户的语音的音频数据。实况或记录的内容的个体流的又一示例能够包括媒体数据,所述媒体数据包括被显示在显示屏上的文件以及捕获用户的语音的音频数据。因此,在所述通信数据内的实况或记录的内容的各种流使得能够在人群之间促进远程会议以及在任人群内共享内容。在一些实现方式中,在所述通信数据内的实况或记录的内容的各种流可以源自位于空间(诸如房间)中的多个共同定位的视频相机,以记录或实况流送包括一个或多个个体呈现的呈现项以及消费所呈现的内容的一个或多个个体。
参与者或出席者能够在活动发生时实况查看通信会话1104的内容,或者替代地,在活动发生之后的稍后时间经由记录查看。在本文中所描述的示例中,参与通信会话1104的客户端计算设备1106(1)至1106(N)被配置为接收和呈现通信数据以在显示屏的用户界面上显示。所述通信数据能够包括实况和/或记录的内容的各种实例或流的集合。例如,内容的个体流能够包括与视频馈送相关联的媒体数据(例如,捕获参与所述通信会话的用户的外观和语音的音频和视觉数据)。内容的个体流的另一示例能够包括具有参与会议会话的用户的化身以及捕获用户的语音的音频数据的媒体数据。内容的个体流的又一示例能够包括具有被显示在显示屏上的内容项和/或捕获用户的语音的音频数据的媒体数据。因此,所述通信数据内的内容的各种流使得能够在跨远程位置分散的人群之间促进会议或广播呈现。
通信会话的参与者或出席者是在相机或其他图像和/或音频捕获设备的范围内的人,使得在该个人正在查看和/或收听经由所述通信会话共享的内容的同时产生的所述个人的动作和/或声音能够被捕获(例如,记录)。例如,参与者可能坐在人群中查看在舞台呈现发生的广播位置处实况共享的内容。或者,参与者可能正坐在办公室会议室中经由显示屏查看与其他同事的通信会话的共享内容。甚至,进一步地,参与者可能坐在或站在个人设备(例如,平板计算机、智能手机、计算机等)前方单独在其办公室或家中查看通信会话的共享内容。
图11的系统1102包括(一个或多个)设备1110。(一个或多个)设备1110和/或系统1102的其他组件能够包括与彼此和/或与客户端计算设备1106(1)到1106(N)经由一个或多个网络1108通信的分布式计算资源。在一些示例中,系统1102可以是独立系统,其任务是管理诸如通信会话1104的一个或多个通信会话的各方面。例如,系统1102可以由诸如SLACK、WEBEX、GOTOMEETING、GOOGLE HANGOUTS等实体来管理。
(一个或多个)网络1108可以包括例如诸如互联网的公共网络、诸如机构和/或个人内联网的私有网络、或者私有网络和公共网络的一些组合。(一个或多个)网络1108还可以包括任何类型的有线和/或无线网络,包括但不限于:局域网(“LAN”)、广域网(“WAN”)、卫星网络、有线网络、Wi-Fi网络、WiMax网络、移动通信网络(例如,3G、4G等)或者其任何组合。(一个或多个)网络1108可以利用通信协议,包括基于分组和/或基于数据报的协议,诸如互联网协议(“IP”)、传输控制协议(“TCP”)、用户数据报协议(“UDP”)或者其他类型的协议。此外,(一个或多个)网络1108还可以包括促进网络通信和/或形成用于网络的硬件基础的多个设备,诸如交换机、路由器、网关、接入点、防火墙、基站、中继器、骨干设备等。
在一些示例中,(一个或多个)网络1108还可以包括使得能够连接到无线网络的设备,诸如无线接入点(“WAP”)。示例支持通过在各种电磁频率(例如,射频)上发送和接收数据的WAP的连接,包括支持电气和电子工程师协会(“IEEE”)802.11标准(例如,802.11g、802.11n、802.11ac等)和其他标准的WAP。
在各种示例中,(一个或多个)设备1110可以包括在集群或其他分组配置中操作以共享资源、平衡负载、提高性能、提供故障转移支持或冗余或者用于其他目的的一个或多个计算设备。例如,(一个或多个)设备1110可以属于各种类型的设备,诸如常规服务器类型设备、台式计算机类型设备和/或移动类型设备。因此,尽管被图示为单一类型的设备或服务器类型的设备,但是(一个或多个)设备1110可以包括多种设备类型并且并不限于特定类型的设备。(一个或多个)设备1110可以表示但不限于:服务器计算机、台式计算机、网络服务器计算机、个人计算机、移动计算机、膝上型计算机、平板计算机或者任何其他类型的计算设备。
客户端计算设备(例如,(一个或多个)客户端计算设备1106(1)至1106(N)之一)(其中的每一个在本文中也被称为“数据处理系统”)可以属于多种类别的设备,其可以与(一个或多个)设备1110相同或不同,诸如常规客户端类型设备、台式计算机类型设备、移动类型设备、专用类型设备、嵌入式类型设备和/或可穿戴类型设备。因此,客户端计算设备能够包括但不限于:台式计算机、游戏控制台和/或游戏设备、平板计算机、个人数据助理(“PDA”)、移动电话/平板混合设备、膝上型计算机、电信设备、计算机导航型客户端计算设备,诸如包括全球定位系统(“GPS”)设备的基于卫星的导航系统、可穿戴设备、虚拟现实(“VR”)设备、增强现实(“AR”)设备、植入式计算设备、汽车计算机、网络电视、瘦客户端、终端、物联网(“IoT”)设备、工作站、媒体播放器、个人视频记录器(“PVR”)、机顶盒、相机、用于包含在计算设备、电器或任何其他类型的计算设备中的集成组件(例如,外围设备)。此外,所述客户端计算设备可以包括客户端计算设备的较早列出的示例的组合,诸如,例如台式计算机类型设备或者与可穿戴设备组合的移动类型设备等。
各种类别和设备类型的(一个或多个)客户端计算设备1106(1)至1106(N)能够表示具有诸如经由总线1116可操作地连接到计算机可读介质1194的一个或多个数据处理单元1192的任何类型的计算设备,总线1116在一些实例中能够包括系统总线、数据总线、地址总线、PCI总线、Mini-PCI总线以及任何多种本地、外围和/或独立总线中的一种或多种。
被存储在计算机可读介质1194上的可执行指令可以包括例如操作系统1119、客户端模块1120、简档模块1122以及能由(一个或多个)数据处理单元1192加载和执行的其他模块、程序或应用。
(一个或多个)客户端计算设备1106(1)至1106(N)还可以包括一个或多个接口1124以实现在(一个或多个)客户端计算设备1106(1)至1106(N)与其他网络设备(诸如(一个或多个)设备1110)之间通过(一个或多个)网络1108的通信。这样的(一个或多个)网络接口1124可以包括一个或多个网络接口控制器(NIC)或者其他类型的收发器设备,以通过网络发送和接收通信和/或数据。此外,(一个或多个)客户端计算设备1106(1)至1106(N)能够包括输入/输出(“I/O”)接口(设备)1126,其支持与输入/输出设备的通信,诸如用户输入设备,其包括外围输入设备(例如,游戏控制器、键盘、鼠标、笔、语音输入设备(诸如麦克风)、用于获得和提供视频馈送和/或静止图像的视频相机、触摸输入设备、手势输入设备等),和/或输出设备,其包括外围输出设备(例如,显示器、打印机、音频扬声器、触觉输出设备等)。图11图示了客户端计算设备1106(1)以某种方式被连接到显示设备(例如,显示屏1129(N)),其能够根据在本文中所描述的技术来显示UI。
在图11的示例性环境1100中,客户端计算设备1106(1)至1106(N)可以使用其各自的客户端模块1120来与彼此连接和/或与(一个或多个)其他外部设备连接,以便参与通信会话1104,或者为了为协作环境贡献活动。例如,第一用户可以利用客户端计算设备1106(1)与另一客户端计算设备1106(2)的第二用户通信。当执行客户端模块1120时,用户可以共享数据,这可以导致客户端计算设备1106(1)通过(一个或多个)网络1108连接到系统1102和/或其他客户端计算设备1106(2)至1106(N)。
(一个或多个)客户端计算设备1106(1)至1106(N)可以使用其各自的简档模块1122来生成参与者简档(在图11中未示出),并且将参与者简档提供给其他客户端计算设备和/或到系统1102的(一个或多个)设备1110。参与者简档可以包括用户或一组用户的一个或多个身份(例如,姓名、独有标识符(“ID”)等)、诸如个人数据的用户数据、诸如位置(例如,IP地址、建筑物中的房间等)和技术能力的机器数据等。参与者简档可以被用于为通信会话注册参与者。
如在图11中所示的,系统1102的(一个或多个)设备1110包括服务器模块1130和输出模块1132。在该示例中,服务器模块1130被配置为从个体客户端计算设备(诸如客户端计算设备1106(1)至1106(N))接收媒体流1134(1)至1134(N)。如上文所描述的,媒体流能够包括视频馈送(例如,与用户相关联的音频和视觉数据)、将与用户的化身的呈现一起输出的音频数据(例如,其中未发送用户的视频数据的仅音频体验)、文本数据(例如,文本消息)、文件数据和/或屏幕共享数据(例如,文档、幻灯片、图像、被显示在显示屏上的视频等),等等。因此,服务器模块1130被配置为在通信会话1104的实况查看期间接收各种媒体流1134(1)至1134(N)的集合(所述集合在本文中被称为“媒体数据1134”)。在一些场景中,并非所有参与通信会话1104的客户端计算设备都提供媒体流。例如,客户端计算设备可能仅是消费或“收听”设备,使得其仅接收与通信会话1104相关联的内容但是不向通信会话1104提供任何内容。
在各种示例中,服务器模块1130能够选择媒体流1134的要与参与的客户端计算设备1106(1)至1106(N)中的个体客户端设备共享的各方面。因此,服务器模块1130可以被配置为基于流1134生成会话数据1136和/或将会话数据1136传递到输出模块1132。然后,输出模块1132可以将通信数据1139传送到客户端计算设备(例如,参与通信会话的实况查看的客户端计算设备1106(1)至1106(3))。通信数据1139可以包括视频、音频和/或其他内容数据,由输出模块1132基于与输出模块1132相关联的内容1150并且基于接收到的会话数据1136提供。
如所示的,输出模块1132向客户端计算设备1106(1)发送通信数据1139(1),并且向客户端计算设备1106(2)发送通信数据1139(2),并且向客户端计算设备1106(3)发送通信数据1139(3)等。被发送到所述客户端计算设备的通信数据1139能够相同或不同(例如,在用户界面内的内容流的定位可以从一个设备到下一设备而不同)。
在各种实施方式中,(一个或多个)设备1110和/或客户端模块1120能够包括GUI呈现模块1140。GUI呈现模块1140可以被配置为分析用于递送给一个或多个客户端计算设备1106的通信数据1139。具体而言,在(一个或多个)设备1110和/或客户端计算设备1106处的UI呈现模块1140可以分析通信数据1139以确定用于在关联客户端计算设备1106的显示屏1129上显示视频、图像和/或内容的适当方式。在一些实现方式中,GUI呈现模块1140可以向在相关联的客户端计算设备1106的显示屏1129上渲染的呈现GUI 1146提供视频、图像和/或内容。可以通过GUI呈现模块1140使呈现GUI 1146在显示屏1129上呈现。呈现GUI 1146可以包括由GUI呈现模块1140分析的视频、图像和/或内容。
在一些实现方式中,呈现GUI 1146可以包括多个部分或网格,其可以呈现或包括视频、图像和/或内容以在显示屏1129上显示。例如,呈现GUI 1146的第一部分可以包括呈现者或个体的视频馈送,呈现GUI 1146的第二部分可以包括个体消费由呈现者或个体提供的会议信息的视频馈送。GUI呈现模块1140可以以适当地模仿呈现者和个人可能正在共享的环境体验的方式来填充呈现GUI 1146的第一部分和第二部分。
在一些实现方式中,GUI呈现模块1140可以放大或提供由视频馈送所表示的个体的缩放视图,以便突出个体对呈现者的反应,诸如面部特征。在一些实现方式中,呈现GUI1146可以包括与诸如一般通信会话的会议相关联的多个参与者的视频馈送。在其他实现方式中,呈现GUI 1146可以与诸如聊天频道、企业团队频道等的频道相关联。因此,呈现GUI1146可以与不同于一般通信会话的外部通信会话相关联。
图12图示了示出被配置为生成针对在本文中所公开的一些用户界面的数据的示例性设备1200(在本文中也被称为“计算设备”)的示例性组件的图。设备1200可以生成可以包括一个或多个部分的数据,所述一个或多个部分可以呈现或包括视频、图像、虚拟对象和/或内容以用于在显示屏1129上显示。设备1200可以表示在本文中所描述的设备之一。另外地或替代地,设备1200可以不是客户端计算设备1106之一。
如所图示的,设备1200包括一个或多个数据处理单元1202、计算机可读介质1204和(一个或多个)通信接口1206。设备1200的组件例如经由总线1209可操作地连接,总线1209可以包括系统总线、数据总线、地址总线、PCI总线、Mini-PCI总线以及任何种类的本地、外围和/或独立总线中的一个或多个。
如在本文中所利用的,(一个或多个)数据处理单元(诸如(一个或多个)数据处理单元1202和/或(一个或多个)数据处理单元1192)可以表示例如CPU类型的数据处理单元、GPU类型的数据处理单元、现场可编程门阵列(“FPGA”)、另一类DSP或者在一些情况下可以由CPU驱动的其他硬件逻辑组件。例如但不限于:可以使用的硬件逻辑组件的说明性类型包括专用集成电路(“ASIC”)、专用标准产品(“ASSP”)、片上系统(“SOC”)、复杂可编程逻辑器件(“CPLD”)等。
如在本文中所使用的,诸如计算机可读介质1204和计算机可读介质1194的计算机可读介质可以存储能由(一个或多个)数据处理单元执行的指令。所述计算机可读介质还可以存储能由外部数据处理单元(诸如外部CPU、外部GPU)执行和/或能由外部加速器(诸如FPGA类型加速器、DSP类型加速器或者任何其他内部或外部加速器)执行的指令。在各种示例中,CPU、GPU和/或加速器中的至少一个被并入计算设备中,而在一些示例中,CPU、GPU和/或加速器中的一个或多个在计算设备外部。
计算机可读介质(在本文中也可以被称为计算机可读介质)可以包括计算机存储介质和/或通信介质。计算机存储介质可以包括以用于存储诸如计算机可读指令、数据结构、程序模块或其他数据的信息的任何方法或技术实现的易失性存储器、非易失性存储器和/或其他持久性和/或辅助计算机存储介质、可移动和不可移动计算机存储介质中的一个或多个。因此,计算机存储介质包括在设备中包含的有形和/或物理形式的介质和/或作为设备的一部分或设备外部的硬件组件,包括但不限于:随机存取存储器(“RAM”)、静态随机存取存储器(“SRAM”)、动态随机存取存储器(“DRAM”)、相变存储器(“PCM”)、只读存储器(“ROM”)、可擦除可编程只读存储器(“EPROM”)、电可擦除可编程只读存储器(“EEPROM”)、闪存、光盘只读存储器(“CD-ROM”)、数字多功能磁盘(“DVD”)、光卡或其他光存储介质、盒式磁带、磁带、磁盘存储设备、磁卡或者其他磁性存储设备或介质、固态存储器设备、存储阵列、网络附加存储装置、存储区域网络、托管计算机存储装置或任何其他存储存储器、存储设备和/或能够被用于存储和维护信息以供计算设备访问的存储介质。
与计算机存储介质相比,通信介质可以在诸如载波或其他传输机制的经调制的数据信号中体现计算机可读指令、数据结构、程序模块或其他数据。如在本文中所定义的,计算机存储介质不包括通信介质。亦即,计算机存储介质不包括仅由经调制的数据信号、载波或传播的信号自身组成的通信介质。
(一个或多个)通信接口1206可以表示例如网络接口控制器(“NIC”)或者其他类型的收发器设备以通过网络发送和接收通信。此外,(一个或多个)通信接口1206可以包括一个或多个视频相机和/或音频设备1222以使得能够生成视频馈送和/或静止图像等。
在所图示的示例中,计算机可读介质1204包括数据存储1208。在一些示例中,数据存储1208包括诸如数据库、数据仓库或者其他类型的结构化或非结构化数据存储装置的数据存储。在一些示例中,数据存储1208包括具有一个或多个表、索引、存储的流程等的语料库和/或关系数据库,以实现数据访问,包括例如一个或多个超文本标记语言(“HTML”)表、资源描述框架(“RDF”)表、网络本体语言(“OWL”)表和/或可扩展标记语言(“XML”)表。
数据存储1208可以存储用于被存储在计算机可读介质1204中和/或由(一个或多个)数据处理单元1202和/或(一个或多个)加速器执行的进程、应用、组件和/或模块的操作的数据。例如,在一些示例中,数据存储1208可以存储会话数据1210(例如,如在图11中所示的会话数据1136)、简档数据1212(例如,与参与者简档相关联)和/或其他数据。会话数据1210能够包括通信会话中的参与者(例如,用户和/或客户端计算设备)的总数、通信会话中发生的活动、通信会话的受邀者列表和/或与何时以及如何进行或托管通信会话相关的其他数据。数据存储1208还可以包括内容数据1214,诸如包括视频、音频或者用于在一个或多个显示屏1129上呈现和显示的其他内容的内容。
替代地,上文所引用的数据中的一些或全部数据能够被存储在一个或多个数据处理单元1202上的单独存储器1216上,诸如CPU型处理器、GPU型处理器、FPGA型加速器、DSP型加速器和/或其他加速器上的存储器。在该示例中,计算机可读介质1204也包括操作系统1218和(一个或多个)应用编程接口1210(API),其被配置为将设备1200的功能和数据暴露给其他设备。另外,计算机可读介质1204包括一个或多个模块,诸如服务器模块1230、输出模块1232和GUI呈现模块1240,但是所图示的模块的数量仅仅是示例,并且数量可以变化更高或更低。亦即,在本文中所描述的与所图示的模块相关联的功能可以由在一个设备上的较少数量的模块或较多数量的模块来执行,或者跨多个设备分布。
还应当意识到,可以对上文所描述的示例进行许多变化和修改,其中的元素将被理解为在其他可接受示例内。所有这样的修改和变化都旨在要被包含在本公开的范围内并且受以下权利要求保护。
最后,尽管已经以特定于结构特征和/或方法动作的语言描述了各种配置,但是应当理解,在所附的表示中定义的主题不一定限于所描述的特定特征或动作。相反,特定特征和动作被公开为实现所要求保护的主题的示例形式。

Claims (15)

1.一种由数据处理系统执行的方法,所述方法包括:
监视定义多个用户的用户活动的输入数据,以用于从与文档、消息、频道线程、音频记录或通信流中的至少一项相关联的所述用户活动中识别关键字;
分析满足阈值要求的所述关键字以识别任务和与所述任务相关联的至少一个用户身份;
基于所述关键字来生成任务描述;
分析与和所述任务相关联的所述至少一个用户身份相关联的用户活动数据,其中,所述用户活动数据指示对多个递送应用和多个递送文件的使用频率;
将所述任务描述传送给多个递送软件应用中具有阈值使用水平的至少一个递送软件应用,其中,所述传送使所述至少一个递送软件应用在用户界面中显示所述任务描述;以及
将所述任务描述嵌入在所述多个递送文件中具有所述阈值使用水平的至少一个递送文件中。
2.根据权利要求1所述的方法,其中,分析所述关键字以识别任务还包括分析所述关键字以识别与所述任务相关联的任务时间线,其中,所述方法还包括:
将所述任务时间线传送给具有所述阈值使用水平的所述至少一个递送软件应用,其中,所述传送使所述至少一个递送软件应用在所述用户界面中显示所述任务时间线;以及
将所述任务时间线嵌入在具有所述阈值使用水平的所述至少一个递送文件中。
3.根据权利要求1所述的方法,其中,分析所述文档、所述消息、所述频道线程、所述音频记录或所述通信流中的所述至少一项以识别与所述任务相关联的文件,其中,所述方法还包括:
将所述文件或针对所述文件的标识符传送给具有所述阈值使用水平的所述至少一个递送软件应用,其中,所述传送使所述至少一个递送软件应用在所述用户界面中显示所述文件的至少一部分或针对所述文件的所述标识符;以及
将所述文件的至少一部分或针对所述文件的所述标识符嵌入在具有所述阈值使用水平的所述至少一个递送文件中。
4.根据权利要求3所述的方法,还包括:
基于所述至少一个用户身份来确定与所述文件相关联的访问许可;以及
将所述访问许可分配给被嵌入在所述递送文件中的所述文件的所述至少一部分。
5.根据权利要求3所述的方法,还包括:
基于所述至少一个用户身份来确定与所述文件相关联的访问许可;以及
将所述访问许可分配给被传送给所述至少一个递送软件应用的所述文件。
6.根据权利要求1所述的方法,还包括:分析与和所述任务相关联的所述至少一个用户身份相关联的所述用户活动数据,其中,所述用户活动数据指示对所述至少一个递送软件应用的使用时间,其中,将所述文件或针对所述文件的所述标识符传送给所述至少一个递送软件是基于对所述至少一个递送软件应用的使用时间的。
7.根据权利要求1所述的方法,还包括:分析定义与和所述任务相关联的所述至少一个用户身份相关联的用户活动的用户活动学习数据,其中,所述用户活动数据指示对所述至少一个递送文件的使用时间,其中,将所述任务描述嵌入在所述至少一个递送文件中是基于对所述至少一个递送文件的所述使用时间的。
8.根据权利要求1所述的方法,还包括:
确定所述递送软件应用不满足所述阈值使用水平;以及
响应于确定所述递送软件应用不满足所述阈值使用水平,使所述任务描述被显示在操作系统通知中,其中,所述操作系统通知是根据基于所述用户活动数据的递送时间表来显示的。
9.根据权利要求1所述的方法,其中,所述多个递送软件应用包括以下中的至少一项:文本应用、文字处理应用、电子表格应用、演示编辑应用、频道通信应用、视频和音频通信应用、或者日历应用。
10.根据权利要求1所述的方法,还包括:
分析所述任务描述以识别与所述任务相关联的所需凭证;
生成包含与所述任务相关联的所需凭证的描述的查询;
将所述查询传送给至少一个外部源,以用于使所述外部源识别相对于与所述任务相关联的所需凭证具有阈值水平的凭证的一个或多个用户身份;以及
响应于所述查询而接收源数据,所述源数据识别相对于与所述任务相关联的所需凭证具有所述阈值水平的凭证的所述一个或多个用户身份。
11.根据权利要求10所述的方法,还包括:为至少一个计算设备生成访问许可,以用于允许具有所述阈值水平的凭证的所述一个或多个用户身份访问定义所述任务描述、任务时间线、或者与所述任务相关联的至少一个文件的任务数据。
12.一种方法,包括:
监视定义多个用户的用户活动的输入数据,以用于从文档、消息、频道线程、音频记录或通信流中的至少一项中识别关键字;
分析所述关键字以识别任务、针对所述任务的时间线和与所述任务相关联的至少一个用户身份;
分析定义针对所述至少一个用户身份的时间表的日历数据,以确定在所述时间表上的约定与针对所述任务的所述时间线之间存在冲突;
响应于确定在所述约定与针对所述任务的所述时间线之间存在所述冲突而生成描述所述冲突的通知;
将任务描述和针对所述任务的所述时间线传送给至少一个计算设备,所述传送使得显示所述任务描述、针对所述任务的所述时间线和描述所述冲突的所述通知。
13.根据权利要求12所述的方法,其中,所述约定具有相关联的优先级,其中,所述方法还包括:
确定所述约定的所述优先级满足阈值水平;
响应于确定所述约定的所述优先级满足所述阈值水平而将通知传送给与依赖于所述任务的其他任务相关联的用户身份。
14.根据权利要求12所述的方法,其中,所述约定具有相关联的优先级,其中,所述方法还包括:
确定所述约定的所述优先级不满足阈值水平;
响应于确定所述约定的所述优先级不满足所述阈值水平而将通知传送给与所述任务相关联的所述至少一个用户身份。
15.根据权利要求14所述的方法,其中,对所述至少一个用户身份的所述通知使得显示被配置为解决所述冲突的图形元素,其中,对所述图形元素的用户响应使得系统执行以下中的至少一项:移除所述预定,或者生成针对所述约定的、不与所述任务时间线相冲突的新时间的推荐。
CN202080021000.3A 2019-03-15 2020-03-05 基于对用户活动的自动学习和上下文分析的智能任务建议 Pending CN113614765A (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US16/354,953 2019-03-15
US16/354,953 US11107020B2 (en) 2019-03-15 2019-03-15 Intelligent task suggestions based on automated learning and contextual analysis of user activity
PCT/US2020/021297 WO2020190525A1 (en) 2019-03-15 2020-03-05 Intelligent task suggestions based on automated learning and contextual analysis of user activity

Publications (1)

Publication Number Publication Date
CN113614765A true CN113614765A (zh) 2021-11-05

Family

ID=70155348

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202080021000.3A Pending CN113614765A (zh) 2019-03-15 2020-03-05 基于对用户活动的自动学习和上下文分析的智能任务建议

Country Status (4)

Country Link
US (2) US11107020B2 (zh)
EP (1) EP3924914A1 (zh)
CN (1) CN113614765A (zh)
WO (1) WO2020190525A1 (zh)

Families Citing this family (14)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10810222B2 (en) 2014-11-24 2020-10-20 Asana, Inc. Continuously scrollable calendar user interface
US10977434B2 (en) 2017-07-11 2021-04-13 Asana, Inc. Database model which provides management of custom fields and methods and apparatus therfor
US10785046B1 (en) 2018-06-08 2020-09-22 Asana, Inc. Systems and methods for providing a collaboration work management platform that facilitates differentiation between users in an overarching group and one or more subsets of individual users
US11423104B2 (en) * 2019-08-30 2022-08-23 Microsoft Technology Licensing, Llc Transfer model learning for relevance models
US10735212B1 (en) 2020-01-21 2020-08-04 Capital One Services, Llc Computer-implemented systems configured for automated electronic calendar item predictions and methods of use thereof
WO2021226745A1 (en) * 2020-05-09 2021-11-18 Citrix Systems, Inc. Indicating relative urgency of activity feed notifications
CN111931464A (zh) * 2020-07-30 2020-11-13 北京字节跳动网络技术有限公司 一种文档编辑方法、装置和电子设备
US11641362B2 (en) * 2021-03-12 2023-05-02 Microsoft Technology Licensing, Llc Data object for selective per-message participation of an external user in a meeting chat
US11876805B2 (en) 2021-03-12 2024-01-16 Microsoft Technology Licensing, Llc Selective per-message participation of an external user in a meeting chat
US11544644B2 (en) * 2021-04-26 2023-01-03 Microsoft Technology Licensing, Llc Project aggregation and tracking system
US20220405709A1 (en) * 2021-06-16 2022-12-22 Microsoft Technology Licensing, Llc Smart Notifications Based Upon Comment Intent Classification
US11822771B2 (en) * 2021-06-30 2023-11-21 Microsoft Technology Licensing, Llc Structuring communication and content for detected activity areas
US20230032434A1 (en) * 2021-07-31 2023-02-02 Zoom Video Communications, Inc. Intelligent notification of multitasking options during a communication session
US11750669B1 (en) 2022-04-21 2023-09-05 Microsoft Technology Licensing, Llc Personalized contextual connection of items in a multi-user system

Family Cites Families (60)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US7020618B1 (en) * 1999-10-25 2006-03-28 Ward Richard E Method and system for customer service process management
US20020055868A1 (en) * 2000-05-24 2002-05-09 Dusevic Angela G. System and method for providing a task-centric online environment
US6948135B1 (en) * 2000-06-21 2005-09-20 Microsoft Corporation Method and systems of providing information to computer users
US6907447B1 (en) * 2001-04-30 2005-06-14 Microsoft Corporation Method and apparatus for providing an instant message notification
WO2003081429A1 (fr) * 2002-03-22 2003-10-02 Toyota Jidosha Kabushiki Kaisha Procede et dispositif de gestion de taches, procede et dispositif d'evaluation de fonctionnement et programme devant etre evalue
US7846023B2 (en) * 2003-03-27 2010-12-07 Microsoft Corporation Application-centric user interface techniques
US7881957B1 (en) * 2004-11-16 2011-02-01 Amazon Technologies, Inc. Identifying tasks for task performers based on task subscriptions
US7885844B1 (en) * 2004-11-16 2011-02-08 Amazon Technologies, Inc. Automatically generating task recommendations for human task performers
US8429292B2 (en) * 2005-09-26 2013-04-23 Research In Motion Limited Scheduling events from electronic messages
US7933914B2 (en) * 2005-12-05 2011-04-26 Microsoft Corporation Automatic task creation and execution using browser helper objects
US9407662B2 (en) * 2005-12-29 2016-08-02 Nextlabs, Inc. Analyzing activity data of an information management system
US7757176B2 (en) * 2006-05-03 2010-07-13 Sanjay Vakil Method and system for collective calendaring
US8006189B2 (en) * 2006-06-22 2011-08-23 Dachs Eric B System and method for web based collaboration using digital media
JP4922692B2 (ja) * 2006-07-28 2012-04-25 富士通株式会社 検索クエリー作成装置
US8219920B2 (en) * 2006-08-04 2012-07-10 Apple Inc. Methods and systems for managing to do items or notes or electronic messages
US9251476B2 (en) * 2007-06-08 2016-02-02 International Business Machines Corporation Managing calendar conflicts
US8645182B2 (en) * 2007-10-02 2014-02-04 International Business Machines Corporation Integrated calendar and task scheduler
US20090235280A1 (en) * 2008-03-12 2009-09-17 Xerox Corporation Event extraction system for electronic messages
JP2009223833A (ja) * 2008-03-18 2009-10-01 Ricoh Co Ltd ワークフロー管理システム
JP2009223840A (ja) 2008-03-19 2009-10-01 Fujitsu Ltd スケジュール管理プログラム,スケジュール管理装置およびスケジュール管理方法
US8208905B2 (en) * 2008-06-27 2012-06-26 Microsoft Corporation Discovering an event using a personal preference list and presenting matching events to a user on a display
US8108206B2 (en) * 2008-07-01 2012-01-31 International Business Machines Corporation Auto-generated to-do list
US8693993B2 (en) * 2008-12-24 2014-04-08 Microsoft Corporation Personalized cloud of mobile tasks
US20100169146A1 (en) * 2008-12-30 2010-07-01 International Business Machines Corporation Automated scheduling of to-do items within a calendar
US8707407B2 (en) * 2009-02-04 2014-04-22 Microsoft Corporation Account hijacking counter-measures
JP2010191864A (ja) 2009-02-20 2010-09-02 Nec Corp タスク自動生成システム、その方法及びそのプログラム
US9141260B2 (en) * 2009-10-08 2015-09-22 Red Hat, Inc. Workspace management tool
US9152299B2 (en) * 2009-10-08 2015-10-06 Red Hat, Inc. Activity management tool
US8832205B2 (en) * 2009-11-02 2014-09-09 Lextine Software, Llc System and method for extracting calendar events from free-form email
US20110145822A1 (en) * 2009-12-10 2011-06-16 The Go Daddy Group, Inc. Generating and recommending task solutions
US8346590B2 (en) * 2010-01-27 2013-01-01 Google Inc. Automatically schedule and re-schedule meetings through search interface
US20110307565A1 (en) * 2010-06-09 2011-12-15 Brian Szady Group messaging integration system, method and apparatus
US8375320B2 (en) * 2010-06-22 2013-02-12 Microsoft Corporation Context-based task generation
US20120143961A1 (en) * 2010-12-06 2012-06-07 Sony Ericsson Mobile Communications Ab Calendar event creation using electronic message conversations
WO2012092556A2 (en) * 2010-12-30 2012-07-05 Kleinbart Kyle System and method for online communications management
US20130204673A1 (en) * 2011-07-20 2013-08-08 Bank Of America Corporation Service level agreement reviews for project task management
US20140108085A1 (en) * 2011-11-08 2014-04-17 Matchware A/S Detection and rescheduling of unaddressed topics with the meeting management system
US8898178B2 (en) * 2011-12-15 2014-11-25 Microsoft Corporation Solution monitoring system
US9904435B2 (en) * 2012-01-06 2018-02-27 Box, Inc. System and method for actionable event generation for task delegation and management via a discussion forum in a web-based collaboration environment
WO2014008143A1 (en) * 2012-07-04 2014-01-09 Ehsolution.Com, Llc Systems and methods for new location task completion and enterprise-wide project initiative tracking
US9213462B2 (en) * 2012-10-10 2015-12-15 Microsoft Technology Licensing, Llc Unified communications application functionality in condensed views
US20140372162A1 (en) * 2013-06-14 2014-12-18 Avaya Inc. System and method for smart contextual calendaring based meeting scheduling
CN104794122B (zh) * 2014-01-20 2020-04-17 腾讯科技(北京)有限公司 一种位置信息推荐方法、装置和系统
BR112016023105A2 (pt) * 2014-04-04 2018-05-22 Jonathon Joseph Mccormack Mark escalonamento de processos e métodos
US9846527B2 (en) * 2014-04-30 2017-12-19 Microsoft Technology Licensing, Llc Task management from within a data feed
US11120408B2 (en) * 2014-05-06 2021-09-14 Microsoft Technology Licensing, Llc Scheduling conflict notification
CN105677620B (zh) 2014-11-21 2018-06-08 高德软件有限公司 项目管理文档生成方法及装置
US20160267439A1 (en) 2015-03-11 2016-09-15 Microsoft Technology Licensing, Llc Contextual calendar conflict resolution
US20160335572A1 (en) * 2015-05-15 2016-11-17 Microsoft Technology Licensing, Llc Management of commitments and requests extracted from communications and content
US10013146B2 (en) * 2015-08-27 2018-07-03 International Business Machines Corporation Data transfer target applications through content analysis
US20170344931A1 (en) * 2016-05-27 2017-11-30 Microsoft Technology Licensing, Llc Automatic task flow management across multiple platforms
DK201670540A1 (en) * 2016-06-11 2018-01-08 Apple Inc Application integration with a digital assistant
US10313404B2 (en) * 2016-06-30 2019-06-04 Microsoft Technology Licensing, Llc Sharing user context and preferences
US11004041B2 (en) * 2016-08-24 2021-05-11 Microsoft Technology Licensing, Llc Providing users with insights into their day
US20180107986A1 (en) * 2016-10-13 2018-04-19 Microsoft Technology Licensing, Llc Automatic update of calendar event
US10552218B2 (en) * 2017-01-06 2020-02-04 Microsoft Technology Licensing, Llc Dynamic context of tasks
US10742571B2 (en) * 2017-07-28 2020-08-11 Microsoft Technology Licensing, Llc Replay of conversations for task completion and delegation
US10534520B2 (en) * 2017-08-30 2020-01-14 Vmware, Inc. Smart email task reminders
US20200012939A1 (en) * 2018-07-07 2020-01-09 Massachusetts Institute Of Technology Methods and Apparatus for Visualization Recommender
US11526567B2 (en) * 2018-10-17 2022-12-13 International Business Machines Corporation Contextualizing searches in a collaborative session

Also Published As

Publication number Publication date
US11107020B2 (en) 2021-08-31
US11526818B2 (en) 2022-12-13
WO2020190525A1 (en) 2020-09-24
EP3924914A1 (en) 2021-12-22
US20220076188A1 (en) 2022-03-10
US20200293975A1 (en) 2020-09-17

Similar Documents

Publication Publication Date Title
US11526818B2 (en) Adaptive task communication based on automated learning and contextual analysis of user activity
US20200374146A1 (en) Generation of intelligent summaries of shared content based on a contextual analysis of user engagement
US10305847B2 (en) Structuring notification of events to users in a social networking system
US8266534B2 (en) Collaborative generation of meeting minutes and agenda confirmation
US20180359293A1 (en) Conducting private communications during a conference session
US20210105332A1 (en) Intelligent status indicators for predicted availability of users
US11733840B2 (en) Dynamically scalable summaries with adaptive graphical associations between people and content
US9224134B2 (en) Arranging a conversation among a plurality of participants
US11126796B2 (en) Intelligent summaries based on automated learning and contextual analysis of a user input
US11949642B2 (en) Controlled display of related message threads
US20230328023A1 (en) Coordination of message thread groupings across devices of a communication system
CN114556389A (zh) 保持对重要任务的跟踪
CN116569197A (zh) 在协作会话中的用户提升
US11985100B2 (en) Management of delegates for participants that are mentioned in a communication session
US20230412547A1 (en) Management of delegates for participants that are mentioned in a communication session
US11755340B2 (en) Automatic enrollment and intelligent assignment of settings
US20230353651A1 (en) Identifying suggested contacts for connection
WO2023129248A1 (en) Calendar update using template selections

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