CN108351901A - 统一活动服务 - Google Patents

统一活动服务 Download PDF

Info

Publication number
CN108351901A
CN108351901A CN201680067228.XA CN201680067228A CN108351901A CN 108351901 A CN108351901 A CN 108351901A CN 201680067228 A CN201680067228 A CN 201680067228A CN 108351901 A CN108351901 A CN 108351901A
Authority
CN
China
Prior art keywords
activity
file
metadata
stored
storage platform
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.)
Granted
Application number
CN201680067228.XA
Other languages
English (en)
Other versions
CN108351901B (zh
Inventor
D·L·米尔瓦尼
A·W·哈里斯
C·H·M·王
M·K·舒克拉
D·J·查塔恩
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 CN108351901A publication Critical patent/CN108351901A/zh
Application granted granted Critical
Publication of CN108351901B publication Critical patent/CN108351901B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/28Databases characterised by their database models, e.g. relational or object models
    • G06F16/284Relational databases
    • G06F16/285Clustering or classification
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/16File or folder operations, e.g. details of user interfaces specifically adapted to file systems
    • G06F16/164File meta data generation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/20Information retrieval; Database structures therefor; File system structures therefor of structured data, e.g. relational data
    • G06F16/24Querying
    • G06F16/245Query processing
    • G06F16/2457Query processing with adaptation to user needs
    • G06F16/24573Query processing with adaptation to user needs using data annotations, e.g. user-defined metadata
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/194Calculation of difference between files
    • 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/101Collaborative creation, e.g. joint development of products or services

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Databases & Information Systems (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Business, Economics & Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Engineering & Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Computational Linguistics (AREA)
  • Operations Research (AREA)
  • Quality & Reliability (AREA)
  • Library & Information Science (AREA)
  • Human Computer Interaction (AREA)
  • General Business, Economics & Management (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Tourism & Hospitality (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本公开的各方面涉及统一活动服务。在一个方面,存储在第一存储平台上的第一文件可以渲染在第一用户界面上。可以从活动服务获得与第一文件相关联的一个或多个活动。存储在第二存储平台上的第二文件可以渲染在第二用户界面上。可以从活动服务获得与第二文件相关联的一个或多个活动。在另一方面,对应于与存储在第一存储平台上的第一文件相关联的至少一个活动的活动元数据和对应于与存储在第二存储平台上的第二文件相关联的至少一个活动的活动元数据可以在所述活动服务处被接收并存储在所述活动服务中。

Description

统一活动服务
背景技术
计算机和软件用户已经习惯于用于共同创作文件、文档、消息等的用户友好的软件应用。例如,存储提供商(例如,云存储提供商)提供诸如文字处理应用、电子表格应用、电子幻灯片演示应用、电子邮件应用、聊天应用、语音应用等的应用,其中用户可以在应用内共同创作和彼此协作。提供协作体验的当前实体和/或存储提供商要求将应用、文件和/或关于应用和/或文件的元数据存储在实体的服务和/或存储装置本身上。也就是说,文件内容和有关文件的元数据都存储在同一位置,并与实体服务和/或存储提供商绑定。进而,用于提供应用协作体验的当前技术可能速度慢,效率低下,并且要求用户在绑定到特定存储提供商的应用内协作并存储绑定到特定存储提供商的应用。
发明内容
提供该发明内容以便以简化的形式来引入下面的具体实施方式中进一步描述的概念的选择。该发明内容不旨在确定所要求保护的主题的关键特征或主要特征,也不旨在用作用于限定所要求保护的主题的范围的辅助手段。
概括地,本公开总体上涉及用于协作体验的统一活动服务。在一个方面,存储在第一存储平台上的文件可以在第一用户界面上渲染。可以从活动服务获得与该文件相关联的一个或多个活动。该一个或多个活动可以包括关联的活动元数据。存储在第二存储平台上的另一文件可以在第二用户界面上渲染。可以从活动服务获得与另一文件相关联的一个或多个活动。该一个或多个活动可以包括关联的活动元数据。
在另一方面,可以接收对与文件相关联的至少一个活动的发生的指示的接收。可以生成与关联于该文件的至少一个活动相对应的活动元数据。生成的活动元数据可以被发送到活动服务以存储生成的活动元数据。在一些示例中,文件可以独立于活动服务而被存储。
在又一方面,可以在活动服务处接收与关联于存储在第一存储平台上的文件的至少一个活动相对应的活动元数据。可以存储与关联于存储在第一存储平台上的文件的至少一个活动相对应的活动元数据。可以在活动服务处接收与关联于存储在第二存储平台上的另一文件的至少一个活动相对应的活动元数据。可以存储与关联于存储在第二存储平台上的另一文件的至少一个活动相对应的活动元数据。
附图说明
参照附图描述具体实施方式。在这些图中,附图标记的最左边的数字表示附图标记首次出现的图。说明书和附图中在不同情况下使用相同的附图标记可表示相似或相同的项目。
图1示出根据示例性方面的示例性统一活动系统。
图2示出根据示例性方面的示例性统一活动系统。
图3示出根据示例性方面的用于将活动元数据存储在活动服务中的示例性方法。
图4示出根据示例性方面的用于将活动元数据存储在活动服务中的示例性方法。
图5示出根据示例性方面的用于访问来自活动服务的一个或多个活动的示例性方法。
图6示出了适合于实现本文公开的增强的统一活动服务技术的计算系统,包括在附图中示出并在下面的技术公开中讨论的任何环境、体系结构、元件、过程、用户界面以及操作场景和序列。
具体实施方式
本公开的各方面总体上涉及用于实现丰富协作体验的统一活动服务。例如,统一活动服务可以被配置为存储活动元数据,使得多个实体可以将活动元数据写入到统一活动服务并且消费来自统一活动服务的活动元数据。活动元数据可以对应于与一个文件和/或多个文件相关联的一个或多个活动。在一些示例中,与文件相关联的活动可以包括诸如文件中的内容改变(例如,编辑和删除)、共享文件、重命名文件、文件内的评论、消息传递等的活动。在一些示例中,与文件相关联的活动可以包括围绕文件的活动,并且可以包括诸如文档周围的会话(例如,讨论和/或参考文件的电子邮件通信和/或消息传递通信)等活动。
在一些情况下,可以向统一活动服务写入活动元数据并从统一活动服务消费活动元数据的多个实体至少包括客户端计算设备、存储平台和/或任何第三方实体,它们独立于统一活动服务。例如,可以在第一客户端计算设备的用户界面上渲染与应用相关联的文件。在一种情况下,该文件可以存储在存储平台上。当文件内发生活动(例如,用户编辑文件)时,与编辑相对应的活动元数据(例如,活动类型、标识符和时间戳)可以由第一客户端计算设备发送到/写入活动服务。在另一个示例中,存储文件的存储平台可以将活动元数据写入/发送给活动服务。
在一些情况下,可以在第二客户端计算设备上渲染文件。当文件被渲染在第二客户端计算设备上时,可以向活动服务发送对与该文件相关联的一个或多个活动的请求。可以从活动服务接收一个或多个活动(和相关联的活动元数据)并将其显示在第二客户端计算设备上渲染的文件内的文件活动馈送中。使用上述示例,在第一客户端计算设备上的文件内发生的编辑和关联的元数据可以显示在第二客户端计算设备上的文件内的文件活动馈送中。在该示例中,文件被存储在存储平台中,活动元数据被存储在活动服务中,并且第一和第二客户端计算设备消费来自活动服务的活动元数据。在这方面,文件本身及其存储平台独立于活动元数据。因此,活动服务存储和处理有关文件的数据,例如,独立于文件本身及其存储平台。
在另一种情况下,活动服务可以接收并存储与存储在第一存储平台上的第一文件相关联的活动元数据以及与存储在第二存储平台上的第二文件相关联的活动元数据。例如,第一实体可以使用第一存储平台在应用和/或与应用相关联的文件内进行协作。第二实体可以使用第二存储平台在应用和/或与应用相关联的文件内进行协作。然而,在任一情况下,由第一存储平台托管的文件的共同作者和由第二存储平台托管的文件的共同作者可以使用活动服务创建并消费与文件相关联的一个或多个活动,而不管哪个存储平台正在托管该文件。在这方面,在文件上协作的共同作者将具有相同的协作体验,而与托管文件的存储平台无关。在其他情况下,第三方实体可以消费来自活动服务的一个或多个活动(以及相关的活动元数据)。例如,第三方实体可以消费一个或多个活动来提供一个或多个活动的概要和/或提供围绕一个或多个活动的分析,独立于文件本身。也就是说,与文件相关联的一个或多个活动可被提供给独立于托管文件的存储平台的第三方实体并由其使用。
如上所述,提供协作体验的当前实体和/或存储提供商要求将应用、文件和/或关于应用和/或文件的元数据存储在实体的服务和/或存储装置本身上。也就是说,文件内容和有关文件的元数据二者都存储在同一位置,并与实体服务和/或存储提供商绑定。进而,用于提供应用协作体验的当前技术可能速度慢,效率低下,并且要求用户在绑定到特定存储提供商的应用内协作并存储绑定到特定存储提供商的应用。
因此,本文描述的方面包括用于独立于文件本身和/或托管文件的存储平台来存储与文件相关联的活动元数据的统一活动服务。就这一点而言,存储在第一存储平台上的文件可以在第一用户界面上渲染。可以从活动服务获得与该文件相关联的一个或多个活动。该一个或多个活动可以包括关联的活动元数据。在某些情况下,与文件关联的一个或多个活动可以显示在文件内的文件活动馈送中。存储在第二存储平台上的另一文件可以在第二用户界面上渲染。在一些情况下,第一用户界面和第二用户界面相同,使得存储在第一存储平台上的文件和存储在第二存储平台上的另一文件两者都渲染在相同的客户端计算设备上。在其他情况下,存储在第一存储平台上的文件和存储在第二存储平台上的另一文件可以渲染在不同的客户端计算设备上。可以从活动服务获得与另一文件(存储在第二存储平台上)相关联的一个或多个活动。该一个或多个活动可以包括关联的活动元数据。在一些情况下,与另一文件相关联的一个或多个活动可以显示在另一文件内的文件活动馈送中。在这方面,可以意识到的技术效果是,独立于托管文件的存储平台,针对每个文件和/或用户/共同作者跨多个平台实现相同的引人注目的视觉和功能协作体验。
这里描述的其他方面包括将活动元数据存储在统一活动服务中。例如,可以在活动服务处接收与关联于存储在第一存储平台上的文件的至少一个活动相对应的活动元数据。在一种情况下,活动元数据可以由第一存储平台生成并从第一存储平台发送。在另一种情况下,活动元数据可以由渲染存储在第一存储平台上的文件的客户端计算设备生成并从该客户端计算设备发送。活动元数据可以响应于与文件相关联的至少一个活动的发生的指示而生成。与关联于存储在第一存储平台上的文件的至少一个活动相对应的活动元数据可以存储在活动服务内。在一些情况下,活动本身和/或活动的内容可以在活动服务处被接收并存储。例如,如果活动包含对文件的编辑,则编辑本身可以在活动服务处被接收并由其存储。
在另一个示例中,可以在活动服务处接收与关联于存储在第二存储平台上的另一文件的至少一个活动相对应的活动元数据。在一种情况下,活动元数据可以由第二存储平台生成并从第二存储平台发送。在另一种情况下,活动元数据可以由渲染存储在第二存储平台上的另一文件的客户端计算设备生成并从其发送。与关联于存储在第二存储平台上的另一文件的至少一个活动相对应的活动元数据可以存储在活动服务内。就这一点而言,活动服务独立于文件本身和托管文件的存储平台而存储活动元数据(例如,关于和/或围绕文件的数据)。此外,活动服务可供文件的共同作者、托管文件的存储平台和/或第三方实体访问。因此,文件活动可以很容易在文件本身之外访问。因此,可以意识到的另一技术效果是文件的用户/共同作者、存储平台和/或第三方实体可以快速、容易且高效地访问他们最感兴趣的那些活动。可以意识到的另一技术效果是本公开的统一活动服务通过提供独立于应用/文件本身以及托管应用/文件的存储平台的活动元数据存储来改进应用和/或文件协作。
现在参考附图,其中,相同的附图标记在若干附图中表示相同的元件,将描述本公开的各方面和示例性操作环境。参考图1,示出了用于存储活动元数据并且实现丰富协作体验的统一活动系统100的一个方面。在各方面中,统一活动系统100可以包括客户端计算设备104、服务器计算设备106、活动服务108和通知服务110。在基本配置中,客户端计算设备104是具有输入元件和输出元件二者的手持式计算机。客户端计算设备104可以是用于实现统一活动系统100以用于独立于文件本身和/或托管文件的存储平台来存储活动元数据的任何合适的计算设备。例如,客户端计算设备104可以是以下中的至少一个:移动电话;智能电话;平板计算机;平板手机;智能手表;可穿戴计算机;个人计算机;台式计算机;膝上型计算机;游戏设备/计算机(例如Xbox);电视机;等等。该列表仅仅是示例性的,不应被认为是限制性的。可以使用用于实现统一活动系统100以独立于文件本身和/或托管文件的存储平台来存储活动元数据的任何合适的客户端计算设备104。
在各方面中,服务器计算设备106可以通过网络105向客户端计算设备104和/或活动服务108提供数据和从客户端计算设备104和/或活动服务108提供数据。在各方面中,统一活动系统100可以在多于一个服务器计算设备106,诸如多个服务器计算设备106上实现。如上面所讨论的,服务器计算设备106可以通过网络105向客户端计算设备104和/或活动服务108提供数据和从客户端计算设备104和/或活动服务108提供数据。数据可以通过适合传输数据的任何网络进行传送。在一些方面,网络是分布式计算机网络,例如因特网。在这方面,网络可以包括局域网(LAN)、广域网(WAN)、因特网、无线和有线传输介质。可以根据各种通信协议、协议的组合或其变体来传送数据。在一个示例中,可以根据HTTPS(安全超文本传输协议)传送数据。
这里描述的方面和功能可以经由多种计算系统进行操作,包括但不限于台式计算机系统、有线和无线计算系统、移动计算系统(例如,移动电话、上网本、平板计算机或板型计算机、笔记本计算机和膝上型计算机)、手持设备、多处理器系统、基于微处理器或可编程消费电子产品、小型计算机和大型计算机。
另外,这里描述的方面和功能可以在分布式系统(例如,基于云的计算系统)上操作,其中应用功能、存储器、数据存储和检索以及各种处理功能可以通过分布式计算网络,例如互联网或内联网彼此远离地进行操作。用户界面和各种类型的信息可以经由板上计算设备显示器或经由与一个或多个计算设备相关联的远程显示单元来显示。例如,用户界面和各种类型的信息可以在用户界面和各种类型的信息被投影到的墙面上显示和与其交互。与可以实践本发明的多个方面的众多计算系统的交互包括键击输入、触摸屏输入、语音或其他音频输入、手势输入(其中相关联的计算设备配备有用于捕获并解释用于控制计算设备的功能的用户手势的检测(例如,相机)功能)等。
如上所述,统一活动系统100可以包括客户端计算设备104、服务器计算设备106、活动服务108和通知服务110。各种组件可以使用硬件、软件或硬件和软件的结合来实现。统一活动系统100可以被配置为存储活动元数据并且在文件内实现丰富的协作体验。就此而言,活动服务108可以被配置为接收、存储、创建、生成、更新、管理和访问与统一活动系统100相关联的数据和/或信息。例如,活动服务108可以接收、存储、创建、生成、更新和管理与文件相关联的一个或多个活动和/或与关联于文件的一个或多个活动相对应的活动元数据。在另一个示例中,活动服务108可以提供对与文件相关联的一个或多个活动和/或与关联于文件的一个或多个活动相对应的活动元数据的访问。在一种情况下,客户端计算设备104、服务器计算设备106和/或与客户端计算设备104和/或服务器计算设备106相关联的应用可以访问活动服务108。
在一个示例中,应用可以包括适合于协作和/或共同创作的任何应用,诸如文字处理应用、电子表格应用、电子幻灯片演示应用、电子邮件应用、聊天应用、语音应用等。在一种情况下,与应用相关联的文件可以包括文字文档(word document)、电子表格、电子幻灯片演示文稿、电子邮件、聊天对话等。这样,示例性应用可以是电子幻灯片演示应用。在这个示例中,与电子幻灯片演示应用相关联的示例性文件可以包括电子幻灯片演示。这样,在一个示例中,活动服务108可以接收、存储、创建、生成、更新和管理与电子幻灯片演示相关联的一个或多个活动。可以意识到,活动服务108可以接收、存储、创建、生成、更新和管理与关联于任何数量的应用的任何数量的文件相关联的一个或多个活动。
在一个示例中,多个活动可以包括客户端侧活动和服务器侧活动二者。例如,多个活动可以包括与客户端计算设备104相关联的活动以及与服务器计算设备106相关联的活动。在一个示例中,多个活动可以包括内容改变、通信活动、文档内容交换、许可请求、共享、打印、与活动相关联的时间(例如,文件被打印的时间、文件被共享的时间、文件被编辑的时间)等。在各方面中,服务器计算设备106不知道与客户端计算设备104相关联的多个活动,并且客户端计算设备104不知道与服务器计算设备106相关联的多个活动。在一个示例中,与客户端计算设备104相关联的多个活动可以包括诸如即时消息传递和/或语音通信、评论、电子邮件活动、文件的呈现、文件被打印的时间、文件被共同创作的时间等等之类的通信。在一种情况下,电子邮件活动可以包括文件通过电子邮件发送的时间、文件通过电子邮件发送时的文件内容、电子邮件的发件人和收件人等。在一个示例中,与服务器计算设备106相关联的一个或多个活动可以包括共享文件的接收者、与重命名文件相关联的信息、共享文件、编辑文件、重命名文件、与恢复的文件相关联的信息(例如,关于文件从第二版本恢复到第一版本的信息)等。
在各方面中,活动元数据可以至少包括标识符、时间戳、活动类型、位置和链接。在一种情况下,标识符可以是用户和/或文件的共同作者的标识符。在一个示例中,标识符可以指示执行活动的用户和/或共同作者。在另一个示例中,标识符可以指示活动的接收者。在一个示例中,时间戳可以指示执行活动的时间。在另一个示例中,时间戳可以指示自从执行活动以来已经过去的时间量。活动类型可以指示相对于文件发生的活动的类型,例如本文描述的任何活动。在一个示例中,位置可以指示活动位于文件内和/或相对于文件的位置。在一种情况下,链接可以提供对与该活动相关联的文件的访问。例如,如果活动是电子邮件活动并且用户/共同作者在电子邮件应用中,则在收到链接的选择后,用户/共同作者可以访问与电子邮件活动相关联的文件。
在各方面中,通知服务112可以生成包括和/或关于在文件中或针对文件发生和/或存储在活动服务108中的一个或多个活动的通知。例如,用户、共同作者、存储平台和/或第三方实体可以接收包括在特定时间段内(例如,在上周内)已经发生在文件中或针对文件发生的一个或多个活动的通知。在一个示例中,通知可以通过电子邮件应用发送。当接收到通知时,可以从通知中打开与包含在通知中的一个或多个活动相关联的文件。当文件从通知打开时,文件可以包括文件活动馈送,该文件活动馈送包括通知中包括的一个或多个活动(例如,在上周内发生的一个或多个活动)。这里描述的示例仅是示例性的,不应被认为是限制性的。例如,虽然这里描述了一周的特定时间量,但是可以意识到,可以针对在任何特定的时间量内发生的一个或多个活动生成通知。
如图1所示,客户端计算设备104包括用户界面组件110。在一些示例中,用户界面组件110可以被配置为显示与应用相关联的文件和包括关联于文件的一个或多个活动的文件活动馈送,如在此描述的。在另一个示例中,用户界面组件110可以渲染存储在存储平台上的文件。例如,用户界面组件110可渲染存储在任何数量和/或类型的存储平台上的任何数量的文件。在一个示例中,用户界面组件110可以是可触摸的用户界面,其能够经由与客户端计算设备104的屏幕的接触来接收输入,从而用作输入设备和输出设备二者。例如,可以在客户端计算设备104的屏幕上显示或输出内容,并且可以通过使用触笔或通过用户的直接物理接触(例如触摸屏幕)接触屏幕来接收输入。接触可以包括,例如,轻击屏幕,使用手势(例如滑动或捏合屏幕),在屏幕上绘制草图等。
在另一个示例中,用户界面组件110可以是非触摸用户界面。在一种情况下,例如,平板设备可以被用作当其插接(dock)在插接站(dockingstation)(例如,平板设备可以包括非触摸用户界面)时的非触摸设备。在另一种情况下,台式计算机可以包括非触摸用户界面。在该示例中,不可触摸的用户界面可以能够经由与客户端计算设备104的屏幕的接触来接收输入,从而用作输入设备和输出设备两者。例如,可以在客户端计算设备104的屏幕上显示或输出内容,并且例如可以通过使用光标接触屏幕来接收输入。就此而言,接触可以包括例如使用诸如鼠标的设备将光标放置在不可触摸的用户界面上。
在一些方面中,服务器计算设备106可以包括存储平台130和数据存储库140。在一个示例中,存储平台130可以被配置为存储、管理和访问与统一活动系统100相关联的数据和/或信息。例如,存储平台130可以将一个或多个文件和/或与文件相关联的一个或多个活动存储在数据存储库140中。在另一个示例中,数据存储库140可以包括属性信息。在一种情况下,属性信息可以包括关于执行活动的用户/作者和/或多个活动的接收者的信息。在一个示例中,数据存储库140可以是存储平台130的一部分和/或位于存储平台130处。在另一个示例中,数据存储库140可以是分离的组件和/或可以位于与存储平台130分离的位置。可以意识到,尽管在图1中示出了一个服务器计算设备106,统一活动系统100可以包括具有多个存储平台130和多个数据存储库140的多个服务器计算设备106,这些将相对于图2进行更详细地描述。在一些情况下,服务器计算设备106可以包括多个存储平台130和多个数据存储库140。例如,多个存储平台130可以至少包括文件存储提供商、外部活动服务和文档编辑客户端。在一个示例中,存储平台130可以是诸如OneDrive、SharePoint、Google Drive、Dropbox等的云存储服务。
在各方面中,存储平台130可以与客户端计算设备104和/或活动服务108通信。就此而言,存储平台130可以从活动服务108中检索和/或获得与一个或多个文件相关联的一个或多个活动。在一种情况下,存储平台130可以从活动服务108检索和/或获得对应于一个或多个活动的活动元数据。在另一种情况下,存储平台130可以将与关联于一个或多个文件的一个或多个活动相对应的活动元数据发送到活动服务108以供存储。在一个示例中,客户端计算设备104的用户可以创建和/或访问第一文件。在一种情况下,第一文件位于客户端计算设备104上。在另一种情况下,第一文件位于第一存储平台130上。多个活动可以与第一文件相关联。与第一文件相关联的多个活动(和对应的活动元数据)可以存储在活动服务108中。在一种情况下,客户端计算设备104可以从活动服务108获取和/或检索多个活动和对应的活动元数据以在客户端计算设备104上的第一文件的文件活动馈送内显示。在另一种情况下,第一存储平台130可以从活动服务108获取和/或检索多个活动和对应的活动元数据以在客户端计算设备104上的第一文件的文件活动馈送内进行显示。在又一种情况下,第一存储平台130可以从活动服务108获取和/或检索多个活动和对应的活动元数据,以提供围绕与第一文件相关联的活动元数据和/或多个活动的分析。
现在参考图2,示出了用于存储活动元数据并实现丰富协作体验的统一活动系统200的一个方面。在各方面中,统一活动系统200可以包括客户端计算设备204A-204B、活动服务208、第三方实体220以及存储平台230A-230C。类似于上文关于图1讨论的客户端计算设备104,客户端计算设备204A-204B可以是具有输入元件和输出元件二者的手持式计算机。客户端计算设备204A-204B可以是用于实现统一活动系统200用于独立于文件本身和/或托管文件的存储平台来存储活动元数据的任何合适的计算设备。例如,客户端计算设备204A-204B包括但不限于移动电话、智能电话(例如,204A)、平板计算机、平板手机、智能手表、可穿戴计算机、个人计算机、台式计算机、膝上型计算机(例如204B)、游戏设备/计算机(例如Xbox)、电视机等等。该列表仅仅是示例性的并且不应被认为是限制性的。可以利用用于实现统一活动系统200以独立于文件本身和/或托管文件的存储平台来存储活动元数据的任何合适的客户端计算设备204A-204B。
在各方面中,客户端计算设备204A-204B可以经由网络205连接。就这一点而言,客户端计算设备204A-204B可以通过网络105向活动服务208、第三方实体220和/或存储平台230A-230C提供数据并且从活动服务208、第三方实体220以及/或存储平台230A-230C提供数据。第三方实体220可通过网络105向活动服务208、客户端计算设备204A-204B和/或存储平台230A-230C提供数据并且从活动服务208、客户端计算设备204A-204B和/或存储平台230A-230C提供数据。存储平台230A-230C可以通过网络205向客户端计算设备204A-204B、活动服务208和/或第三方实体220提供数据以及从客户端计算设备204A-204B、活动服务208和/或第三方实体220提供数据。活动服务208可以通过网络205向客户端计算设备204A-204B、存储平台230A-230C和/或第三方实体220提供数据并且从客户端计算设备204A-204B、存储平台230A-230C和/或第三方实体220提供数据。数据可以通过适合传输数据的任何网络传送。在一些方面,网络是分布式计算机网络,例如因特网。在这方面,网络可以包括局域网(LAN)、广域网(WAN)、因特网、无线和有线传输介质。可以根据各种通信协议、协议的组合或其变体来传送数据。在一个示例中,可以根据HTTPS(安全超文本传输协议)传送数据。
在一个方面,类似于图1的统一活动系统100,统一活动系统200可以包括活动服务208和存储平台230A-230C。就这一点而言,活动服务208和存储平台230A-230C可以具有与本文相对于图1描述的活动服务108和存储平台130相同的功能和/或特征。第三方实体220可以包括能够提供云连接的存储平台不可知的文件创作协作解决方案的任何实体。例如,第三方实体220可以包括诸如社交媒体、学术研究和/或大学的实体、文件/文档处理工具、内容阅读和/或转换软件、生成围绕文件的感兴趣的信息的任何服务和/或组件,等等。可以意识到,尽管统一活动系统200示出了第三方实体220,但是可以在统一活动系统200内实现任意数量的第三方实体。
在一个方面,可以接收与文件(例如,第一文件)相关联的至少一个活动的发生的指示。例如,作者可以在客户端计算设备204A上打开文件。在一种情况下,文件可以是与文字处理应用相关的文字文档。在一个示例中,文字处理应用是Microsoft Office文字处理应用。例如,作者可以编辑文件和/或打印文件。在这点上,可以在客户端计算设备204A处接收到编辑和/或打印的发生的指示。客户端计算设备204A可以生成对应于编辑和/或打印活动的活动元数据。例如,生成的活动元数据可以包括诸如指示谁编辑和/或打印文件的作者标识符、文件被编辑和/或打印的时间、活动类型(例如,编辑和/或打印)等数据。客户端计算设备204A可以将所生成的活动元数据经由网络205发送给活动服务208以用于存储所生成的活动元数据。就此而言,活动服务208可以接收与关联于文件的编辑和/或打印活动对应的活动元数据并存储活动元数据。在一个示例中,与编辑和打印活动相关联的文件可以包括全局标识符。在一种情况下,全局标识符标识文件和存储文件的设备。例如,在这种情况下,全局标识符可以标识文件并且文件被存储在客户端计算设备204A上。这样,可以将全局标识符与所生成的活动元数据一起发送给活动服务208以进行存储。在所描述的示例中,文件(和文件内容)被存储在客户端计算设备204A处,并且与该文件相关联的活动元数据被存储在存储服务208处。在这方面,文件独立于活动服务108被存储。
在一个示例中,在客户端计算设备204A上打开的文件可以存储在存储平台230A上。在一个示例中,存储平台230A可以是诸如OneDrive的存储平台。就此而言,可以在存储平台230A处接收编辑和/或打印的发生的指示。存储平台230A可以生成对应于编辑和/或打印活动的活动元数据。例如,生成的活动元数据可以包括诸如指示谁编辑和/或打印文件的作者标识符、文件被编辑和/或打印的时间、活动类型(例如,编辑和/或打印)等数据。存储平台230A可以将生成的活动元数据经由网络205发送到活动服务208,以存储生成的活动元数据。在这种情况下,全局标识符可以标识文件并且文件被存储在存储平台230A上。这样,可以将全局标识符与所生成的活动元数据一起发送给活动服务208以进行存储。在所描述的示例中,文件(和文件内容)被存储在存储平台230A处,并且与该文件相关联的活动元数据被存储在存储服务208处。在这方面,存储平台230A独立于活动服务208。
在另一方面,存储在存储平台230A上的文件可以渲染在客户端计算设备204B的用户界面上。客户端计算设备204B可以从活动服务208获得与该文件相关联的包括对应活动元数据的一个或多个活动。例如,客户端计算设备204B可以获得对于该文件发生的包括对应活动元数据的编辑和/或打印活动(例如,如上所述)。就此而言,文件的共同作者(例如,客户端计算设备204B的用户)可以被另一个共同作者通知对于该文件已经发生的活动。在一个示例中,可以在文件的文件活动馈送内显示活动(例如,编辑和/或打印活动)和对应的活动元数据。在一种情况下,客户端计算设备204B可以通过向活动服务208发送关于一个或多个活动和对应的活动元数据的请求来获得一个或多个活动和对应的活动元数据。在一些情况下,在客户端计算设备204B可以获得一个或多个活动和对应的活动元数据之前,确定与文件相关联的作者/用户是否具有访问一个或多个活动和对应活动元数据的许可。在一个实现方式中,客户端计算设备204A-204B可以接收来自活动服务208的、确定与文件相关联的作者/用户是否具有访问一个或多个活动和对应的活动元数据的许可的请求。在另一实现方式中,存储平台230A-230C可以接收来自活动服务208的、确定与文件相关联的作者/用户是否具有访问一个或多个活动和对应的活动元数据的许可的请求。
在一个方面,可以接收与另一文件(例如,第二文件)相关联的至少一个活动的发生的指示。例如,作者可以在客户端计算设备204A上打开另一文件。在一种情况下,该文件可以是与电子表格应用相关联的电子表格。在一个示例中,电子表格应用是MicrosoftOffice电子表格应用,例如Excel。例如,作者可以对该文件发表评论和/或重命名该文件。就此而言,可以在客户端计算设备204A处接收对第二文件的评论和/或重命名的发生的指示。客户端计算设备204A可以生成与第二文件的评论和/或重命名活动对应的活动元数据。例如,所生成的活动元数据可以包括诸如指示谁评论和/或重命名第二文件的作者标识符、第二文件被重命名的时间和/或作出评论的时间、活动类型(例如,评论和/或重命名)等数据。客户端计算设备204A可以将所生成的活动元数据经由网络205发送给活动服务208以用于存储所生成的活动元数据。就这一点而言,活动服务208可以接收与关联于第二文件的评论和/或重命名活动相对应的活动元数据并存储活动元数据。在一个示例中,与评论和重命名活动相关联的第二文件可以包括全局标识符。在一种情况下,全局标识符标识第二文件和存储第二文件的设备。例如,在这种情况下,全局标识符可以标识第二文件并且第二文件存储在客户端计算设备204A上。这样,可以将全局标识符与所生成的活动元数据一起发送给活动服务208以进行存储。在所描述的示例中,第二文件(和第二文件内容)被存储在客户端计算设备204A处,并且与第二文件相关联的活动元数据被存储在存储服务208处。在这方面,第二文件独立于活动服务108被存储。
在一个示例中,在客户端计算设备204A上打开的第二文件可以存储在存储平台230B上。在一个示例中,存储平台230B可以是诸如Dropbox的存储平台。就此而言,可以在存储平台230B处接收对第二文件评论和/或重命名的发生的指示。存储平台230B可以生成对应于评论和/或重命名活动的活动元数据。例如,生成的活动元数据可以包括诸如指示谁评论和/或重命名第二文件的作者标识符、第二文件被重命名的时间和/或做出评论的时间、活动类型(例如,评论和/或重命名第二文件)等数据。存储平台230B可以将生成的活动元数据经由网络205发送到活动服务208,以存储生成的活动元数据。在这种情况下,全局标识符可以标识第二文件并且第二文件被存储在存储平台230B上。这样,可以将全局标识符与所生成的活动元数据一起发送给活动服务208以进行存储。在所描述的示例中,第二文件(和第二文件内容)被存储在存储平台230B处,并且与第二文件相关联的活动元数据被存储在存储服务208处。在这方面,存储平台230B独立于活动服务208。
在另一方面,存储在存储平台230B上的第二文件可以渲染在客户端计算设备204B的用户界面上。客户端计算设备204B可以从活动服务208获得与第二文件相关联的一个或多个活动。该一个或多个活动可以包括对应的活动元数据。例如,客户端计算设备204B可以获得对于第二文件发生的包括对应活动元数据的评论和/或重命名活动(例如,如上文所述)。就此而言,第二文件的共同作者(例如,客户端计算设备204B的用户)可以被另一个共同作者通知对于第二文件已经发生的活动。在一个示例中,可以在第二文件的文件活动馈送内显示活动(例如,评论和/或重命名活动)和对应的元数据。在一种情况下,客户端计算设备204B可以通过向活动服务208发送关于一个或多个活动和对应的活动元数据的请求来获得一个或多个活动和对应的活动元数据。在一些情况下,在客户端计算设备204B可以获得一个或多个活动和对应的活动元数据之前,确定与第二文件相关联的作者/用户是否具有访问一个或多个活动和对应的活动元数据的许可。
在一个方面,可以接收与另一文件(例如,第三文件)相关联的至少一个活动的发生的指示。例如,作者可以在客户端计算设备204A上打开第三文件。在一种情况下,第三文件可以是与电子幻灯片演示应用相关联的电子幻灯片演示文稿。在一个示例中,电子幻灯片演示应用是诸如PowerPoint的Microsoft Office电子幻灯片演示应用。例如,作者可以演示第三文件和/或在电子邮件中提到第三文件。就这一点而言,可以在客户端计算设备204A处接收对演示和/或电子邮件的发生的指示。客户端计算设备204A可以生成对应于演示和/或电子邮件活动的活动元数据。例如,所生成的活动元数据可以包括诸如指示谁演示和/或在电子邮件中提及第三文件的作者标识符、演示和/或在电子邮件中提及第三文件的时间、活动类型(例如,演示和/或电子邮件)等数据。客户端计算设备204A可以将所生成的活动元数据经由网络205发送给活动服务208以用于存储所生成的活动元数据。就这一点而言,活动服务208可以接收对应于与第三文件相关联的演示和/或电子邮件活动的活动元数据并存储活动元数据。在一个示例中,与演示和电子邮件活动相关联的第三文件可以包括全局标识符。在一种情况下,全局标识符标识第三文件和存储第三文件的设备。例如,在这种情况下,全局标识符可以标识第三文件并且第三文件存储在客户端计算设备204A上。这样,可以将全局标识符与所生成的活动元数据一起发送给活动服务208以进行存储。在所描述的示例中,第三文件(和第三文件内容)被存储在客户端计算设备204A处,并且与第三文件相关联的活动元数据被存储在存储服务208处。在这方面,第三文件独立于活动服务108被存储。
在一个示例中,在客户端计算设备204A上打开的第三文件可以存储在存储平台230C上。在一个示例中,存储平台230C可以是诸如SharePoint的存储平台。就此而言,可以在存储平台230C处接收对演示和/或电子邮件的发生的指示。存储平台230C可以生成对应于演示和/或电子邮件活动的活动元数据。例如,生成的活动元数据可以包括诸如指示谁演示和/或通过电子邮件发送第三文件的作者标识符、演示和/或通过电子邮件发送第三文件的时间、活动类型(例如,演示和/或电子邮件)等数据。存储平台230C可以将生成的活动元数据经由网络205发送到活动服务208,以存储生成的活动元数据。在这种情况下,全局标识符可以标识第三文件并且第三文件存储在存储平台230C上。这样,可以将全局标识符与所生成的活动元数据一起发送给活动服务208以进行存储。在所描述的示例中,第三文件(和第三文件内容)被存储在存储平台230C处,并且与第三文件相关联的活动元数据被存储在存储服务208处。在这点上,存储平台230C独立于活动服务208。
在另一方面,存储在存储平台230C上的第三文件可以渲染在客户端计算设备204B的用户界面上。客户端计算设备204B可以从活动服务208获得与第三文件相关联的一个或多个活动。该一个或多个活动可以包括对应的活动元数据。例如,客户端计算设备204B可以获得对于第三文件发生的演示和/或电子邮件活动以及相应的活动元数据(例如,如上文所述)。就这一点而言,第三文件的共同作者(例如,客户端计算设备204B的用户)可被另一共同作者通知对于第三文件已经发生的活动。在一个示例中,可以在第三文件的文件活动馈送内显示活动(例如,演示和/或电子邮件活动)和对应的元数据。在一种情况下,客户端计算设备204B可以通过向活动服务208发送对于一个或多个活动和对应的活动元数据的请求来获得一个或多个活动和对应的活动元数据。在一些情况下,在客户端计算设备204B可以获得一个或多个活动和对应的活动元数据之前,确定与第三文件相关联的作者/用户是否具有访问一个或多个活动和对应的活动元数据的许可。
在一些方面,存储平台230A-230C可以对与一个文件和/或多个文件相关联的一个或多个活动和/或对应的活动元数据执行和/或提供分析。如上所述,存储平台230A-230C可以生成对应于与文件相关联的一个或多个活动的活动元数据。存储平台230A-230C可以将生成的活动元数据经由网络205发送到活动服务208,以存储生成的活动元数据。在另一个示例中,存储平台230A-230C可以获得和/或检索与关联于文件的一个或多个活动对应的活动元数据。就这一点而言,存储平台230A-230C可以对活动元数据执行分析。在一种情况下,存储平台230A-230C可以通过对活动元数据和/或一个或多个活动执行分析来创建热文件。热文件可以包括那些在特定的时间量内相对于文件发生了很多变化和/或活动的文件。特定的时间量可以包括任何时间量(例如,在一天、一周、一个月内)。在另一种情况下,热文件可以包括那些关于特别感兴趣的用户和/或共同作者的相对于文件发生了许多变化和/或活动的文件。例如,一个用户和/或共同作者可能对另一个特定共同作者的更改感兴趣。在这个示例中,当特定共同作者对文件进行了多次更改时,对特定共同作者的更改感兴趣的作者可以通过接收通知来接收这种更改的指示。在一个示例中,当用户接收到通知时,用户可以打开该文件并且看到由特定共同作者发生的更改(例如,可以在文件内容窗格中显示更改并且可以将相应的元数据显示在文件的文件活动馈送中)。可以意识的是,可以对与文件相关联的活动元数据和/或一个或多个活动执行任何类型的分析,并且可以将分析提供给任何用户、共同作者和/或实体用于消费。
在一个方面中,活动服务208可以生成对应于与存储在任何存储平台230A-230C上的文件相关联的多个活动的活动元数据。例如,活动服务208可以生成对应于与存储在存储平台230A(例如,第一存储平台)上的文件相关联的多个活动的活动元数据。在另一个示例中,活动服务208可以生成对应于与存储在存储平台230B(例如,第二存储平台)上的文件相关联的多个活动的活动元数据。在又一示例中,活动服务208可以生成对应于与存储在存储平台230C(例如,第三存储平台)上的文件相关联的多个活动的活动元数据。在另一方面,活动服务208可以将生成的活动元数据发送到存储平台230A-230B中的任何。例如,活动服务208可以将生成的活动元数据发送到存储平台230A(例如,第一存储平台)。在另一个示例中,活动服务208可以将生成的活动元数据发送到存储平台230B(例如,第二存储平台)。在又一示例中,活动服务208可以将生成的活动元数据发送到存储平台230C(例如,第三存储平台)。
在一些方面,活动服务208可以从第三方实体220接收对于对应于与存储在第一存储平台(例如,存储平台230A-230C中的任何一个)上的文件相关联的多个活动的活动元数据的请求。活动服务208可以将所请求的活动元数据发送给第三方实体220。在一种情况下,第三方实体220独立于活动服务208。在另一种情况下,第三方实体220独立于存储平台230A-230C。在一些情况下,第三方实体220可以生成对应于与文件相关联的多个活动的活动元数据。第三方实体220可以将所生成的活动元数据发送给活动服务208以进行存储。在一些示例中,存储平台230A-230C可以向活动服务208发送对由第三方实体220生成的活动和对应的活动元数据的请求。在其他示例中,第三方实体220可以包括与第三方实体220相关联的存储平台(未示出)。与第三方实体220相关联的存储平台可以向活动服务208发送对于由第三方实体220生成的活动和对应的活动元数据的请求。在一个示例中,第三方实体220可以是大学。在这个示例中,可以生成的与文件相关联的一个或多个活动可以包括活动,诸如那些指示何时已经由学生完成论文以及论文何时已被教授评分的活动。可以意识的是,虽然这里描述了第三方实体、存储平台、文件、应用和活动的示例,但是对第三方实体、存储平台、文件、应用和活动的讨论仅仅是示例性的,并且不应被视为限制。
应该意识到的是,图2示出了统一活动系统200的客户端计算设备204A-204B、活动服务208、第三方实体220和存储平台230A-230C,客户端计算设备204A-204B、活动服务208、第三方实体220以及存储平台230A-230C和统一活动系统200的讨论仅是示例性的并且不应被认为是限制性的。任何合适的数量和/或类型的客户端计算设备、存储平台和第三方实体可以生成对应于与任意数量的文件相关联的一个或多个活动的活动元数据并与活动服务208通信(例如,发送到,写入,从中读取,从中接收,消费),使得与文件相关联的活动(和对应的活动元数据)可以独立于与活动相关联的文件、与活动相关联的文件的内容和/或托管与活动相关联的文件的存储平台进行存储和/或消费。此外,尽管本公开讨论了文字处理应用、电子表格应用和电子幻灯片应用、第一文件、第二文件、第三文件、第一存储平台、第二存储平台、第三存储平台、第一客户端计算设备、第二客户端计算设备和第三方实体,这仅是示例性的并且不应被认为是限制性的。结合本公开可以使用任何数量的应用、文件、存储平台、客户端计算设备和/或第三方实体。
现在参考图3,示出了根据示例方面的用于将活动元数据存储在活动服务中的示例性方法300。方法300可以在能够通过至少一个处理器执行指令的计算设备或类似电子设备上实现。一个或多个活动和对应的活动元数据可以由任何合适的软件应用生成。例如,软件应用可以是电子邮件应用、社交网络应用、项目管理应用、协作应用、企业管理应用、消息传送应用、文字处理应用、电子表格应用、数据库应用、演示文稿应用、联系人应用、日历应用等中的一个。此列表仅是示例性的,不应被视为限制。方法300可以利用用于生成和存储活动元数据的任何合适的应用。
方法300可以开始于操作302,其中可以接收与独立于活动服务存储的文件相关联的至少一个活动的发生的指示。例如,作者可以在客户端计算设备上打开文件。在一种情况下,文件可以存储在客户端计算设备上。在这方面,可以在客户端计算设备处接收对至少一个活动的发生的指示。在另一种情况下,该文件可以存储在存储平台上。在这方面,可以在存储平台处接收对至少一个活动的发生的指示。
当接收到与独立于活动服务存储的文件相关联的至少一个活动的发生的指示时,流程行进至操作304,在该操作处生成对应于与该文件相关联的至少一个活动的活动元数据。在一个示例中,活动元数据在客户端计算设备处生成。在另一个示例中,活动元数据在存储平台上生成。在一个示例中,活动元数据可以至少包括标识符、时间戳、活动类型、位置和链接。在一种情况下,标识符可以是用户和/或文件的共同作者的标识符。在一个示例中,标识符可以指示执行活动的用户和/或共同作者。在另一个示例中,标识符可以指示活动的接收者。在一个示例中,时间戳可以指示执行活动的时间。在另一个示例中,时间戳可以指示自从执行活动以来已经过去的时间量。活动类型可以指示相对于文件发生的活动的类型,例如本文描述的任何活动。在一个示例中,位置可以指示活动位于文件内的和/或相对于文件的位置。在一种情况下,链接可以提供对与活动相关联的文件的访问。例如,如果活动是电子邮件活动并且用户/共同作者在电子邮件应用中,则在收到链接的选择后,用户/共同作者可以访问与电子邮件活动相关联的文件。
当生成对应于与文件相关联的至少一个活动的活动元数据时,流程进行到操作306,在操作306,将生成的活动元数据发送到活动服务以存储生成的活动元数据。在一种情况下,所生成的活动元数据可以从客户端计算设备发送。在另一种情况下,所生成的活动元数据可以从存储平台发送。在又一种情况下,所生成的活动元数据可以从第三方实体发送。在一个示例中,可以从客户端计算设备、存储平台和第三方实体中的至少一个发送包括对应的所生成的活动元数据的一个或多个活动。
现在参考图4,示出了根据示例方面的用于将活动元数据存储在活动服务中的示例性方法400。方法400可以在能够通过至少一个处理器执行指令的计算设备或类似电子设备上实现。方法400开始于操作402,其中在活动服务处接收与关联于存储在第一存储平台上的文件的至少一个活动对应的活动元数据。在一个示例中,第一存储平台独立于活动服务。在另一个示例中,存储在第一存储平台上的文件独立于活动服务。就这一点而言,文件(和文件的内容)独立于与该文件相关联的至少一个活动以及对应活动元数据存储。
当在活动服务处接收到对应于与在第一存储平台上存储的文件相关联的至少一个活动的活动元数据时,流程进行到操作404,其中对应于与存储在第一存储平台上的文件相关联的至少一个活动的活动元数据被存储。在一个示例中,活动服务可以存储来自客户端计算设备的活动元数据。在另一种情况下,活动服务可以存储来自存储平台的活动元数据。在另一种情况下,活动服务可以存储来自第三方实体的活动元数据。在一个示例中,活动服务可以存储来自客户端计算设备、存储平台和第三方实体中的至少一个的一个或多个活动。活动服务可以存储对应于与存储在多个存储平台上的多个文件相关联的多个活动的活动元数据。
在操作406,在活动服务处接收对应于与存储在第二存储平台上的另一文件相关联的至少一个活动的活动元数据。在一个示例中,第二存储平台独立于活动服务。在另一个示例中,存储在第二存储平台上的另一文件独立于活动服务。就这一点而言,另一文件(以及另一文件的内容)独立于与另一文件相关联的至少一个活动和对应的活动元数据被存储。
当在活动服务处接收到对应于与存储在第二存储平台上的另一文件相关联的至少一个活动的活动元数据时,流程进行到操作408,其中对应于与存储在第二存储平台上的另一文件相关联的至少一个活动的活动元数据被存储。在一个示例中,活动服务可以存储来自客户端计算设备的活动元数据。在另一种情况下,活动服务可以存储来自存储平台的活动元数据。在另一种情况下,活动服务可以存储来自第三方实体的活动元数据。在一个示例中,活动服务可以存储来自客户端计算设备、存储平台和第三方实体中的至少一个的一个或多个活动。活动服务可以存储对应于与存储在多个存储平台上的多个文件相关联的多个活动的活动元数据。
现在参考图5,示出了根据示例方面的用于访问来自活动服务的一个或多个活动的示例性方法500。方法500可以在能够通过至少一个处理器执行指令的计算设备或类似电子设备上实现。方法500从操作502开始,其中存储在第一存储平台上的文件被渲染在第一用户界面上。在一个示例中,文件可以渲染在客户端计算设备的第一用户界面上。存储在第一存储平台上的文件可以渲染在多个客户端计算设备的多个用户界面上。例如,该文件可以渲染在第二客户端计算设备的第二用户界面上。在另一个示例中,文件可以渲染在第三客户端计算设备的第三用户界面上。存储在第一存储平台上的文件可以渲染在任何数量的客户端计算设备上。
当存储在第一存储平台上的文件被渲染在第一用户界面上时,流程前进到操作504,在操作504中,从活动服务获得与文件相关联的一个或多个活动。在一种情况下,一个或多个活动包括对应的活动元数据。例如,客户端计算设备可以获得对于该文件发生的包括相应活动元数据的一个或多个活动。在这方面,文件的共同作者(例如,客户端计算设备的用户)可以被另一个共同作者通知对于该文件已经发生的活动。在一个示例中,可以在文件的文件活动馈送内显示一个或多个活动和对应的活动元数据。在一种情况下,客户端计算设备可以通过向活动服务发送对于一个或多个活动和对应的活动元数据的请求来获得一个或多个活动和对应的活动元数据。
在操作506处,存储在第二存储平台上的另一文件被渲染在第二用户界面上。在一个示例中,另一个(例如,第二)文件可以渲染在客户端计算设备的第二用户界面上。存储在第二存储平台上的第二文件可以渲染在多个客户端计算设备的多个用户界面上。例如,第二文件可以渲染在第二客户端计算设备的第二用户界面上。在另一个示例中,可以在第三客户端计算设备的第三用户界面上渲染第二文件。存储在第二存储平台上的第二文件可以在任何数量的客户端计算设备上渲染。
当存储在第二存储平台上的另一个(例如第二)文件被渲染在第二用户界面上时,流程前进到操作508,在操作508中从活动服务获得与另一文件相关联的一个或多个活动。在一种情况下,一个或多个活动包括对应的活动元数据。例如,客户端计算设备可以获得对于第二文件发生的包括对应活动元数据的一个或多个活动。就此而言,第二文件的共同作者(例如,客户端计算设备的用户)可以被另一个共同作者通知对于第二文件已经发生的活动。在一个示例中,一个或多个活动和对应的活动元数据可以被显示在第二文件的文件活动馈送内。在一种情况下,客户端计算设备可以通过向活动服务发送对于一个或多个活动和对应的活动元数据的请求来获得一个或多个活动和对应的活动元数据。
这里使用的术语“渲染”通常是指在各种计算体系结构中用来组装信息的各种能力,然后其他能力可以使用这些信息来生成一个或多个图像。在方法500的上下文中,例如,在用户界面上渲染文件通常指的是组装用于生成一起产生文件的一个或多个图像的信息或数据。动画或其他动态也可以用来实现某些效果。
然而,可以意识到的是,在本公开的范围内可以考虑关于渲染的其他观点。例如,在此使用的渲染也可以在一些情况下被认为是指由各种计算体系结构用来根据为此目的而组装的信息生成一个或多个图像的各种能力。关于方法500,在用户界面上渲染文件可以指从为该目的组装的信息中生成一个或多个图像,这些图像一起产生文件,然后可以显示该文件。
还可以意识到的是,在一些场景中渲染可以指上述可能性的组合。例如,在一些场景中的渲染可以指将用于生成文件的一个图像或多个图像的信息组装起来,并且然后生成该文件的一个图像或多个图像。另外,在呈现文件的上下文中可能会出现各种各样的其他步骤、过程和阶段,所有这些步骤、过程和阶段都可以被认为是呈现文件的一部分。因此,方法500上的另一个变型包括但不限于:在第一用户界面上呈现文件,获得一个或多个活动,在第二用户界面上呈现另一文件,以及获得一个或多个活动。
图6示出了计算系统601,其表示其中可以实现本文公开的各种应用、服务、场景和过程的任何系统或系统的集合。计算系统601的示例包括但不限于服务器计算机、机架式服务器、web服务器、云计算平台和数据中心设备以及任何其他类型的物理或虚拟服务器机器、容器以及任何变型或它们的组合。其他示例可以包括智能电话、膝上型计算机、平板计算机、台式计算机、混合计算机、游戏机、虚拟现实设备、智能电视、智能手表和其他可穿戴设备以及其任何变型或其组合。
计算系统601可以被实现为单个装置、系统或设备,或者可以以分布式方式被实现为多个装置、系统或设备。计算系统601包括但不限于处理系统602、存储系统603、软件605、通信接口系统607和用户界面系统609。处理系统602可操作地与存储系统603、通信接口系统607和用户界面系统609耦合。
处理系统602从存储系统603加载并执行软件605。软件605包括应用606,其代表关于前面的图1-5所讨论的应用,包括在此描述的电子幻灯片应用和文字处理应用。当由处理系统602执行以增强统一活动服务时,软件605引导处理系统602如本文中所描述的至少针对前述实施方式中讨论的各种过程、操作场景和序列进行操作。计算系统601可以可选地包括为了简洁而未讨论的附加设备、特征或功能。
仍然参照图6,处理系统602可以包括微处理器和从存储系统603中检索并执行软件605的其它电路。处理系统602可以在单个处理设备内实现,但也可以跨越在执行程序指令时协作的多个处理设备或者子系统分布。处理系统602的示例包括通用中央处理单元、专用处理器和逻辑设备,以及任何其他类型的处理设备、其组合或变型。
存储系统603可以包括可由处理系统602读取并且能够存储软件605的任何计算机可读存储介质。存储系统603可以包括以用于存储信息的任何方法或技术实现的易失性和非易失性、可移动和不可移动介质,诸如计算机可读指令、数据结构、程序模块或其他数据。存储介质的示例包括随机存取存储器、只读存储器、磁盘、光盘、闪存、虚拟存储器和非虚拟存储器、盒式磁带、磁带、磁盘存储器或其他磁性存储设备或任何其他合适的存储介质。在任何情况下计算机可读存储介质都不是传播信号。
除了计算机可读存储介质之外,在一些实现方式中,存储系统603还可以包括计算机可读通信介质,在该计算机可读通信介质上可以在内部或外部传送软件605中的至少一些。存储系统603可以被实现为单个存储设备,但是也可以跨多个存储设备或子系统实现,该多个存储设备或子系统位于彼此共置或相对于彼此分布。存储系统603可以包括能够与处理系统602或可能的其他系统通信的附加元件,诸如控制器。
软件605可以在程序指令中实现,并且除了其他功能之外,当由处理系统602执行时,可以指导处理系统602如关于本文所示的各种操作场景、序列和过程所描述的那样进行操作。例如,软件605可以包括用于实现增强型统一活动服务的程序指令。
特别地,程序指令可以包括协作或以其他方式交互以执行在此描述的各种过程和操作场景的各种组件或模块。各种组件或模块可以以编译或解释的指令,或以某些其他指令变型或组合来体现。各种组件或模块可以以同步或异步方式,串行或并行,单线程环境或多线程,或根据任何其他合适的执行范例、变体或其组合来执行。除了应用606之外或包括应用606之外,软件605可以包括附加的过程、程序或组件,诸如操作系统软件、虚拟机软件或其他应用软件。软件605还可以包括固件或处理系统602可执行的某种其他形式的机器可读处理指令。
通常,软件605可以在被加载到处理系统602中并且被执行时将总体上来自通用计算系统的合适的装置、系统或设备(计算系统601代表的)变换成定制以促进增强的统一活动服务的专用计算系统。实际上,在存储系统603上编码软件605可以变换存储系统603的物理结构。物理结构的特定变换可以取决于本说明的不同实现方式中的各种因素。这些因素的示例可以包括但不限于用于实现存储系统603的存储介质的技术以及计算机存储介质是否被表征为主存储器或辅助存储器以及其他因素。
例如,如果计算机可读存储介质被实现为基于半导体的存储器,软件605可以在程序指令在其中被编码时变换半导体存储器的物理状态,例如通过变换晶体管、电容器或构成半导体存储器的其他分立电路元件的状态。对于磁性或光学介质可能会发生类似的变换。在不脱离本说明书的范围的情况下,物理介质的其他变换是可能的,提供前述示例仅用于促进本讨论。
通信接口系统607可以包括允许通过通信网络(未示出)与其他计算系统(未示出)通信的通信连接和设备。一起允许系统间通信的连接和设备的示例可以包括网络接口卡、天线、功率放大器、RF电路、收发机和其他通信电路。连接和设备可以通过通信介质进行通信以与其他计算系统或系统网络(例如金属、玻璃、空气或任何其他合适的通信介质)交换通信。上述介质、连接和设备是众所周知的,在此不必详细讨论。
用户界面系统609是可选的并且可以包括键盘、鼠标、语音输入设备、用于接收来自用户的触摸手势的触摸输入设备、用于通过检测用户的非触摸手势和其他运动的运动输入设备,以及能够接收来自用户的用户输入的其他可比较的输入设备和相关联的处理元件。诸如显示器、扬声器、触觉设备以及其他类型的输出设备之类的输出设备也可被包括在用户界面系统609中。在一些情况下,输入设备和输出设备可被组合在单个设备中,诸如能够显示图像和接收触摸手势的显示器。前述的用户输入和输出设备在本领域中是公知的,在此不必详细讨论。
用户界面系统609还可以包括由处理系统602可执行的关联用户界面软件,以支持上面讨论的各种用户输入和输出设备。单独地或彼此结合地以及其他硬件和软件元件、用户界面软件和用户界面设备可以支持图形用户界面、自然用户界面或任何其他类型的用户界面。
计算系统601和其他计算系统(未示出)之间的通信可以通过一个或多个通信网络并且根据各种通信协议、协议的组合或其变型来发生。示例包括内联网、互联网、因特网、局域网、广域网、无线网络、有线网络、虚拟网络、软件定义网络、数据中心总线、计算背板或任何其他类型的网络、网络的组合或它们的变体。上述通信网络和协议是众所周知的,因此不需要在这里详细讨论。然而,可以使用的一些通信协议包括但不限于因特网协议(IP,IPv4,IPv6等)、传输控制协议(TCP)和用户数据报协议(UDP)以及任何其他合适的通信协议、变体或其组合。
在其中数据、内容或任何其他类型的信息被交换的任何前述示例中,信息交换可根据多种协议中的任一种来发生,所述协议包括FTP(文件传输协议)、HTTP(超文本传输协议)、REST(代表状态传输)、Web Socket、DOM(文档对象模型)、HTML(超文本标记语言)、CSS(级联样式表)、HTML5、XML(可扩展标记语言)、JavaScript、JSON(JavaScript对象表示法)和AJAX(异步JavaScript和XML)以及任何其他合适的协议、变体或其组合。
在其他示例中,本公开呈现了包括以下各项的系统:一个或多个计算机可读存储介质;以及存储在所述一个或多个计算机可读存储介质上的程序指令,所述程序指令在由至少一个处理器执行时使所述至少一个处理器至少:在第一用户界面上渲染存储在第一存储平台上的文件;从所述活动服务获得与所述文件相关联的一个或多个活动,其中所述一个或多个活动包括对应的活动元数据;在第二用户界面上渲染存储在第二存储平台上的另一文件;并且从活动服务获得与该另一文件相关联的一个或多个活动,其中该一个或多个活动包括对应的活动元数据。在进一步的示例中,第一用户界面和第二用户界面相同,并且其中文件被渲染在客户端计算设备上,并且其中另一文件被渲染在客户端计算设备上。在进一步的示例中,文件被渲染在第一客户端计算设备上,并且其中该另一文件被渲染在第二客户端计算设备上。在进一步的示例中,第一存储平台独立于活动服务。在进一步的示例中,第二存储平台独立于活动服务。在进一步的示例中,程序指令还使得至少一个处理器至少在从活动服务获得与文件相关联的一个或多个活动之前确定与文件相关联的用户是否具有访问一个或多个活动的许可。在进一步的示例中,程序指令还使得至少一个处理器至少在从活动服务获得与另一文件相关联的一个或多个活动之前确定与另一文件相关联的用户是否具有访问一个或多个活动的权限。在进一步的示例中,活动元数据包括标识符、时间戳、类型、位置和链接中的至少一个。
本文公开的其他方面提供了用于将活动元数据存储在活动服务中的示例性方法,该方法包括:接收与独立于活动服务存储的文件相关联的至少一个活动的发生的指示;生成对应于与所述文件相关联的所述至少一个活动的活动元数据;以及将生成的活动元数据发送到活动服务以存储生成的活动元数据。在进一步的示例中,文件被存储在客户端计算设备上。在进一步的示例中,文件被存储在第一存储平台上。在进一步的示例中,该方法还包括:接收与存储在第二存储平台上的另一文件相关联的至少一个活动的发生的指示;生成对应于与所述另一文件相关联的所述至少一个活动的活动元数据;以及将生成的活动元数据发送到活动服务以存储生成的活动元数据。在进一步的示例中,第二存储平台独立于活动服务。
本文公开的其他方面提供了示例性系统,包括:至少一个处理器以及编码有计算机可执行指令的存储器,所述计算机可执行指令在由所述至少一个处理器执行时执行用于将活动元数据存储在活动服务中的方法,所述方法包括:在所述活动服务处接收对应于与存储在第一存储平台上的文件相关联的至少一个活动的活动元数据;存储对应于与存储在第一存储平台上的文件相关联的至少一个活动的活动元数据;在所述活动服务处接收对应于与存储在第二存储平台上的另一文件相关联的至少一个活动的活动元数据;以及存储对应于与存储在第二存储平台上的另一文件相关联的至少一个活动的活动元数据。在进一步的示例中,该系统还包括:生成对应于与存储在第一存储平台上的文件相关联的多个活动的活动元数据;并将生成的活动元数据发送给第一存储平台。在进一步的示例中,该系统还包括:生成对应于与存储在第二存储平台上的另一文件相关联的多个活动的活动元数据;并将生成的活动元数据发送给第二存储平台。在进一步示例中,从第三方实体接收对对应于与存储在第一存储平台上的文件相关联的多个活动的活动元数据的请求;并将所请求的活动元数据发送给第三方实体,其中第三方实体独立于活动服务、第一存储平台和第二存储平台。在进一步的示例中,存储在第一存储平台上的文件具有第一全局标识符,并且其中存储在第二存储平台上的另一文件具有第二全局标识符。在进一步的示例中,活动服务存储对应于与存储在多个存储平台上的多个文件相关联的多个活动的活动元数据。在进一步的示例中,该系统还包括:在活动服务处接收对应于与存储在第三存储平台上的另一文件相关联的至少一个活动的活动元数据;以及存储对应于与存储在第三存储平台上的另一文件相关联的至少一个活动的活动元数据。
描述用于生成和存储活动元数据的技术。虽然各方面是以特定于结构特征和/或方法行为的语言来描述的,但是应该理解,所附权利要求中限定的方面不一定限于上面描述的特定特征或行为。相反,具体特征和行为被公开为实施所要求保护的方面的示例形式。
可以实施多种方法来执行本文讨论的技术。方法的各方面可以用硬件、固件或软件或其组合来实现。这些方法被示出为指定由一个或多个设备执行的操作的一组块,并且不一定限于所示的用于执行各个块的操作的顺序。此外,根据一个或多个实现方式,关于特定方法示出的操作可以与不同方法的操作组合和/或互换。方法的各方面可以经由以上参考可触摸用户界面讨论的各种实体之间的交互来实现。
上面例如参照根据本公开的方面的方法、系统和计算机程序产品的框图和/或操作说明描述了本公开的各方面。在任何流程图中所示的框中记录的功能/行为可以不按顺序发生。例如,取决于所涉及的功能/动作,连续示出的两个框实际上可以基本上同时执行,或者框有时可以以相反的顺序执行。
本申请中提供的一个或多个方面的描述和说明不意图限制或限缩以任何方式要求保护的本公开的范围。本申请中提供的方面、示例和细节被认为足以传达所有权并使其他人能够制作和使用所要求保护的公开内容的最佳方式。所要求保护的公开内容不应被解释为限于本申请中提供的任何方面、示例或细节。无论是组合还是分开显示和描述,各种特征(结构和方法两者)都旨在被选择性地包括或省略以产生具有特定特征集的方面。已经被提供了本申请的描述和说明,本领域技术人员可以想到落入本申请中体现的总体发明构思的更广泛方面的精神内的、不偏离要求保护的公开内容的更宽范围的变型、修改和替代方面。
另外,虽然各方面可以在结合在计算设备上的操作系统上运行的应用程序执行的统一活动服务的一般上下文中描述,但是本领域技术人员将认识到,各方面也可以是与其他程序模块结合实现。在进一步的方面中,本文公开的各方面可以用硬件来实现。
一般而言,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、组件、数据结构和其他类型的结构。此外,本领域技术人员将意识到,可以用包括手持设备、多处理器系统、基于微处理器或可编程消费者电子设备、小型计算机、大型计算机和类似计算设备的其他计算机系统配置来实施这些方面。各方面也可以在分布式计算环境中实施,其中任务由通过通信网络链接的远程处理设备执行。在分布式计算环境中,程序模块可以位于本地和远程存储器存储设备中。
各方面可以实现为计算机实现的过程(方法)、计算系统或者制品,诸如计算机程序产品或计算机可读介质。计算机程序产品可以是计算机系统可读并对包括用于使计算机或计算系统执行示例过程的指令的计算机程序进行编码的计算机存储介质。计算机可读存储介质可以例如经由易失性计算机存储器、非易失性存储器、硬盘驱动器、闪存驱动器、软盘或紧凑型服务器、在单个计算设备上执行的应用和类似的系统中的一个或多个来实现。

Claims (10)

1.一种系统,包括:
一个或多个计算机可读存储介质;以及
存储在所述一个或多个计算机可读存储介质上的程序指令,所述程序指令在由至少一个处理器执行时使所述至少一个处理器至少:
在第一用户界面上渲染存储在第一存储平台上的文件;
从活动服务获得与所述文件相关联的一个或多个活动,其中,所述一个或多个活动包括对应的活动元数据;
在第二用户界面上渲染存储在第二存储平台上的另一文件;以及
从所述活动服务获得与所述另一文件相关联的一个或多个活动,其中,所述一个或多个活动包括对应的活动元数据。
2.如权利要求1所述的系统,其中,所述第一用户界面和所述第二用户界面相同,并且其中所述文件被渲染在客户端计算设备上,并且其中所述另一文件被渲染在所述客户端计算设备上。
3.如权利要求1至2中任一项所述的系统,其中,所述文件被渲染在第一客户端计算设备上,并且其中所述另一文件被渲染在第二客户端计算设备上。
4.如权利要求1至3中任一项所述的系统,其中,所述第一存储平台独立于所述活动服务。
5.如权利要求1至4中任一项所述的系统,其中,所述第二存储平台独立于所述活动服务。
6.如权利要求1至5中任一项所述的系统,其中,所述程序指令还使所述至少一个处理器至少在从所述活动服务获得与所述文件相关联的所述一个或多个活动之前确定与所述文件相关联的用户是否具有访问所述一个或多个活动的许可。
7.如权利要求1至6中任一项所述的系统,其中,所述程序指令还使所述至少一个处理器至少在从所述活动服务获得与所述另一文件相关联的所述一个或多个活动之前确定与所述另一文件相关联的用户是否具有访问所述一个或多个活动的许可。
8.如权利要求1至7中任一项所述的系统,其中,所述活动元数据包括标识符、时间戳、类型、位置和链接中的至少一个。
9.一种用于将活动元数据存储在活动服务中的计算机实现的方法,所述方法包括:
接收对与独立于所述活动服务存储的文件相关联的至少一个活动的发生的指示;
生成对应于与所述文件相关联的所述至少一个活动的活动元数据;以及
将生成的活动元数据发送到所述活动服务以存储所述生成的活动元数据。
10.一种系统,包括:
至少一个处理器;以及
对计算机可执行指令进行编码的存储器,所述计算机可执行指令在由所述至少一个处理器执行时执行用于将活动元数据存储在活动服务中的方法,所述方法包括:
在所述活动服务处接收对应于与存储在第一存储平台上的文件相关联的至少一个活动的活动元数据;
存储对应于与存储在所述第一存储平台上的所述文件相关联的至少一个活动的活动元数据;
在所述活动服务处接收对应于与存储在第二存储平台上的另一文件相关联的至少一个活动的活动元数据;以及
存储对应于与存储在所述第二存储平台上的所述另一文件相关联的至少一个活动的活动元数据。
CN201680067228.XA 2015-11-17 2016-11-14 统一活动服务 Active CN108351901B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/943,191 US10353926B2 (en) 2015-11-17 2015-11-17 Unified activity service
US14/943,191 2015-11-17
PCT/US2016/061751 WO2017087290A1 (en) 2015-11-17 2016-11-14 Unified activity service

Publications (2)

Publication Number Publication Date
CN108351901A true CN108351901A (zh) 2018-07-31
CN108351901B CN108351901B (zh) 2021-11-30

Family

ID=57396852

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201680067228.XA Active CN108351901B (zh) 2015-11-17 2016-11-14 统一活动服务

Country Status (4)

Country Link
US (2) US10353926B2 (zh)
EP (1) EP3377988A1 (zh)
CN (1) CN108351901B (zh)
WO (1) WO2017087290A1 (zh)

Families Citing this family (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US11416503B2 (en) * 2018-02-09 2022-08-16 Microsoft Technology Licensing, Llc Mining data for generating consumable collaboration events
US10943059B2 (en) 2018-06-27 2021-03-09 Microsoft Technology Licensing, Llc Document editing models and management

Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1130511A2 (en) * 2000-01-25 2001-09-05 FusionOne, Inc. Data transfer and synchronization system
CN101261589A (zh) * 2006-12-21 2008-09-10 国际商业机器公司 将私有元数据集成到协作环境中的方法与系统
CN101855629A (zh) * 2007-11-09 2010-10-06 微软公司 协作创作
CN102427442A (zh) * 2010-08-06 2012-04-25 微软公司 组合请求相关元数据和元数据内容
US20120192055A1 (en) * 2011-01-21 2012-07-26 Oudi Antebi Distributed document co-authoring and processing
US20130246901A1 (en) * 2012-03-19 2013-09-19 Litera Technologies, LLC. System and method for synchronizing bi-directional document management
US20130297680A1 (en) * 2012-05-02 2013-11-07 Box, Inc. System and method for a third-party application to access content within a cloud-based platform
CN103812939A (zh) * 2014-02-17 2014-05-21 李漾 一种大数据存储系统
CN104123359A (zh) * 2014-07-17 2014-10-29 江苏省邮电规划设计院有限责任公司 一种分布式对象存储系统的资源管理方法
CN104221011A (zh) * 2012-03-30 2014-12-17 微软公司 使用文档评论来跟踪共同创作冲突
US20150149407A1 (en) * 2013-11-25 2015-05-28 Dropbox, Inc. Generating and sharing metadata for indexing synchronized content items
CN104919453A (zh) * 2012-12-27 2015-09-16 微软技术许可有限责任公司 数据库内容的每用户汇总

Family Cites Families (18)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6671757B1 (en) * 2000-01-26 2003-12-30 Fusionone, Inc. Data transfer and synchronization system
US8051483B2 (en) 2004-03-12 2011-11-01 Fortinet, Inc. Systems and methods for updating content detection devices and systems
US7596571B2 (en) * 2004-06-30 2009-09-29 Technorati, Inc. Ecosystem method of aggregation and search and related techniques
US7747557B2 (en) 2006-01-05 2010-06-29 Microsoft Corporation Application of metadata to documents and document objects via an operating system user interface
US8117246B2 (en) * 2006-04-17 2012-02-14 Microsoft Corporation Registering, transfering, and acting on event metadata
US20070255754A1 (en) * 2006-04-28 2007-11-01 James Gheel Recording, generation, storage and visual presentation of user activity metadata for web page documents
US7797335B2 (en) * 2007-01-18 2010-09-14 International Business Machines Corporation Creation and persistence of action metadata
US20100088299A1 (en) * 2008-10-06 2010-04-08 O'sullivan Patrick J Autonomic summarization of content
US8296338B2 (en) 2009-05-05 2012-10-23 Entangled Media Corp. Method for a cloud-based meta-file system to virtually unify remote and local files across a range of devices' local file systems
US9978040B2 (en) 2011-07-08 2018-05-22 Box, Inc. Collaboration sessions in a workspace on a cloud-based content management system
US8983947B2 (en) 2011-09-30 2015-03-17 Jive Software, Inc. Augmenting search with association information
US20140082463A1 (en) * 2012-09-14 2014-03-20 David H. Sitrick Multi-Event Processing Systems And Methodologies
US9106721B2 (en) 2012-10-02 2015-08-11 Nextbit Systems Application state synchronization across multiple devices
US8447801B1 (en) * 2012-11-01 2013-05-21 LavaRipples, LLC Content sharing with limited cloud storage
US9122696B2 (en) * 2012-12-06 2015-09-01 International Business Machines Corporation Sharing electronic file metadata in a networked computing environment
KR102195899B1 (ko) * 2014-03-12 2020-12-28 삼성전자주식회사 컨텐트 관리 방법 및 이를 위한 클라우드 서버
US9916458B2 (en) * 2015-03-31 2018-03-13 EMC IP Holding Company LLC Secure cloud-based storage of data shared across file system objects and clients
CN105045770B (zh) * 2015-07-22 2018-03-23 福建福昕软件开发股份有限公司 一种文档新版本自动提醒方法

Patent Citations (12)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
EP1130511A2 (en) * 2000-01-25 2001-09-05 FusionOne, Inc. Data transfer and synchronization system
CN101261589A (zh) * 2006-12-21 2008-09-10 国际商业机器公司 将私有元数据集成到协作环境中的方法与系统
CN101855629A (zh) * 2007-11-09 2010-10-06 微软公司 协作创作
CN102427442A (zh) * 2010-08-06 2012-04-25 微软公司 组合请求相关元数据和元数据内容
US20120192055A1 (en) * 2011-01-21 2012-07-26 Oudi Antebi Distributed document co-authoring and processing
US20130246901A1 (en) * 2012-03-19 2013-09-19 Litera Technologies, LLC. System and method for synchronizing bi-directional document management
CN104221011A (zh) * 2012-03-30 2014-12-17 微软公司 使用文档评论来跟踪共同创作冲突
US20130297680A1 (en) * 2012-05-02 2013-11-07 Box, Inc. System and method for a third-party application to access content within a cloud-based platform
CN104919453A (zh) * 2012-12-27 2015-09-16 微软技术许可有限责任公司 数据库内容的每用户汇总
US20150149407A1 (en) * 2013-11-25 2015-05-28 Dropbox, Inc. Generating and sharing metadata for indexing synchronized content items
CN103812939A (zh) * 2014-02-17 2014-05-21 李漾 一种大数据存储系统
CN104123359A (zh) * 2014-07-17 2014-10-29 江苏省邮电规划设计院有限责任公司 一种分布式对象存储系统的资源管理方法

Non-Patent Citations (2)

* Cited by examiner, † Cited by third party
Title
XIA HOU, NING LI, YING AI TIAN: "A Framework based on MVC of Document Processing", 《FOURTH INTERNATIONAL CONFERENCE ON COOPERATION AND PROMOTION OF INFORMATION RESOURCES IN SCIENCE AND TECHNOLOGY》 *
李雪山: "基于OpenKM构建铁路知识管理与文档协作系统应用研究", 《铁路计算机应用》 *

Also Published As

Publication number Publication date
EP3377988A1 (en) 2018-09-26
US20190310998A1 (en) 2019-10-10
US20170140025A1 (en) 2017-05-18
CN108351901B (zh) 2021-11-30
WO2017087290A1 (en) 2017-05-26
US10353926B2 (en) 2019-07-16
US11416520B2 (en) 2022-08-16

Similar Documents

Publication Publication Date Title
Kleppmann et al. Local-first software: you own your data, in spite of the cloud
Klokmose et al. Webstrates: shareable dynamic media
JP2005293239A (ja) 情報共有装置及び情報共有方法
RU2008121949A (ru) Удаленный доступ считывания-записи к различным хранилищам данных
CN106462828A (zh) 对协作服务的用户界面中的活动摘要
CN108292303A (zh) 活动通知系统
Wellner From cellphones to machine learning. A shift in the role of the user in algorithmic writing
Zhou et al. A collaborative and open solution for large‐scale online learning
CN108351901A (zh) 统一活动服务
CN111684442A (zh) 用于实现笔记服务的系统、方法和软件
Soulioti et al. Double trouble: replicas in contemporary art and their impact in conservation decision-making
Harms Research goals for evolving the ‘form’user interface metaphor towards more interactivity
CN106537372A (zh) 用于增强的文档生产率的实体识别
Sielis et al. Enhancing the creativity process by adding context awareness in creativity support tools
US11949722B1 (en) Electronic universal shared utility board infinite canvas system
Jelemenská et al. Enhanced classroom presenter
Drescher et al. Thinking in Layers and Aspects: Analyzing systems by separating them into layers and aspects
US20230344665A1 (en) Presentation content effectiveness using attraction modeling
Lee Design of tablet-based live mobile learning system supporting improved annotation
Andrzejewski et al. Brainstorming Sessions–Towards Improving Effectiveness and Assessment of Ideas Generation
Abernethy et al. Teaching computing soft skills: an experiential approach
Kristiansen et al. Enhancing reflection by collaboratively capturing experiences in a timeline
Bhandal et al. Importance of Information and Communication Technology in Extension Education
Helms The Friendly Orange Glow: The Untold Story of the Rise of Cyberculture
Hockx-Yu Broad band, the untold story of the women who made the internet: by Claire L. Evans, New York, Portfolio/Penguin, 2018, $27.00

Legal Events

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