CN110603551B - 文档活动指示符的主动分阶段分发 - Google Patents

文档活动指示符的主动分阶段分发 Download PDF

Info

Publication number
CN110603551B
CN110603551B CN201880029255.7A CN201880029255A CN110603551B CN 110603551 B CN110603551 B CN 110603551B CN 201880029255 A CN201880029255 A CN 201880029255A CN 110603551 B CN110603551 B CN 110603551B
Authority
CN
China
Prior art keywords
user
document
users
activity
workspace
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
CN201880029255.7A
Other languages
English (en)
Other versions
CN110603551A (zh
Inventor
A·W·哈里斯
M·夏尔马
M·菲茨杰拉德
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 CN110603551A publication Critical patent/CN110603551A/zh
Application granted granted Critical
Publication of CN110603551B publication Critical patent/CN110603551B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/14Digital output to display device ; Cooperation and interconnection of the display device with other functional units
    • G06F3/147Digital output to display device ; Cooperation and interconnection of the display device with other functional units using display panels
    • 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/93Document management systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F40/00Handling natural language data
    • G06F40/10Text processing
    • G06F40/166Editing, e.g. inserting or deleting
    • 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
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Strategic Management (AREA)
  • Data Mining & Analysis (AREA)
  • General Business, Economics & Management (AREA)
  • General Engineering & Computer Science (AREA)
  • Economics (AREA)
  • Databases & Information Systems (AREA)
  • Tourism & Hospitality (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Marketing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Human Computer Interaction (AREA)
  • Artificial Intelligence (AREA)
  • Audiology, Speech & Language Pathology (AREA)
  • Computational Linguistics (AREA)
  • General Health & Medical Sciences (AREA)
  • Health & Medical Sciences (AREA)
  • Computer Hardware Design (AREA)
  • Information Transfer Between Computers (AREA)
  • Document Processing Apparatus (AREA)

Abstract

为了能够快速地呈现显示其他用户访问或编辑过的文档的用户界面,可以以主动方式执行文档活动指示符的分发,以使文档活动指示符在该用户界面将要进行呈现时已经可用。文档活动触发了相应文档活动标识符的生成,可以根据文档活动本身、活动的类型、执行活动的用户、最初创建文档的用户或者其组合,将相应的文档活动标识符分发给一个或多个用户的工作空间。当另一个用户利用内容创建计算机应用程序时,其他用户的活动选择性地反映在这种内容创建计算机应用程序所呈现的用户界面内。

Description

文档活动指示符的主动分阶段分发
背景技术
虽然遍及全球的计算机通信网络(例如,互联网)已经提高了计算设备对其他人提供的内容进行消费的利用率,但是计算设备仍然继续用作内容创建设备,尤其是在传统文字处理、电子表格、演示文稿和其它类似的传统内容创建计算机应用程序的环境中。通常,通过此类计算机应用程序创建内容是一个迭代的扩展过程,用户需要创建,然后多次编辑同一文档,无论是一天、几天还是甚至跨度更长的时间段。因此,这些内容创建计算机应用程序经常向用户呈现使用户能够快速地选择用户最近正在处理的文档的用户界面。
近来,内容创建计算机应用程序已经促进了通常被多个计算设备通过计算机通信网络访问的、来自集中式文档存储库的文档的存储和访问。这种集中式文档存储库使多个不同的用户能够访问同一文档,以进行协作式内容创建和编辑,并进一步使这些多个不同的用户能够更轻松地共享文档和内容。但是,由内容创建计算机应用程序呈现的用户界面仍然聚焦于该用户界面正呈现给的单个用户所最近访问的文档。此外,期望以迅速且无滞后的方式呈现这样的用户界面,以便维持可接受的用户体验。因此,可能期望一种用户界面,该用户界面不仅向用户自动地提供该特定用户最近访问过的文档,而且还提供与该用户有关的其他用户访问过或编辑过的文档,只要可以以足够迅速的方式呈现这样的用户界面以维持可接受的用户体验即可。
发明内容
为了能够快速地呈现显示其他用户访问或编辑过的文档的用户界面,可以以主动方式执行文档活动指示符的分发,以使文档活动指示符在该用户界面将要进行呈现时已经可用,从而避免了在要呈现用户界面时轮询此类信息的延迟,并避免了此类轮询所需的处理和通信工作量的相应增加。文档活动触发了相应文档活动标识符的生成,可以根据文档活动本身、活动的类型、执行活动的用户、最初创建文档的用户或者其组合,将相应的文档活动标识符分发给一个或多个用户的工作空间。当另一个用户利用内容创建计算机应用程序时,其他用户的活动可以反映在这种内容创建计算机应用程序所呈现的用户界面内。内容创建计算机应用程序可以从其用户工作空间中获取文档活动指示符,因为这样的文档活动指示符可以随时在那里等待,从而避免了轮询此类信息的需要,并避免了与之相关联的延迟。
提供本概括部分以便用简化的形式介绍将在以下的详细描述中进一步描述的概念选择。本概括部分并不是旨在标识本发明的关键特征或本质特征,也不是用于限制本发明的保护范围。
通过参考附图进行的以下详细描述,其它特征和优点将变得显而易见。
附图说明
在结合附图时,可以最好地理解以下的详细描述,在附图中:
图1是示出利用文档活动指示符的主动分发的示例性系统的系统图;
图2是示出文档活动指示符的主动分发的一个方面的示例性系统的系统图;
图3是示出文档活动指示符的主动分发的另一个方面的示例性系统的系统图;
图4是示出文档活动指示符的主动分发的另一个方面的示例性系统的系统图;
图5是示出文档活动指示符的主动分发的另外方面的示例性系统的系统图;
图6是示出文档活动指示符的主动分发的另外方面的示例性系统的系统图;
图7是示例性一系列步骤的流程图,通过这些步骤,可以执行文档活动指示符的主动分发;
图8是示例性一系列步骤的流程图,通过这些步骤,可以基于社交关系进行文档活动指示符的主动分阶段分发;以及
图9是用于实现和/或利用文档活动指示符的主动分发的示例性计算设备的框图。
具体实施方式
下面的详细描述涉及与将文档活动指示符主动地分发到多个用户工作空间(其包括以主动方式)。为了能够快速地呈现显示其他用户访问或编辑过的文档的用户界面,可以以主动方式执行文档活动指示符的分发,以使文档活动指示符在该用户界面将要进行呈现时已经可用,从而避免了在要呈现用户界面时轮询此类信息的延迟,并避免了此类轮询所需的处理和通信工作量的相应增加。文档活动触发了相应文档活动标识符的生成,可以根据文档活动本身、活动的类型、执行活动的用户、最初创建文档的用户或者其组合,将相应的文档活动标识符分发给一个或多个用户的工作空间。当另一个用户利用内容创建计算机应用程序时,其他用户的活动可以反映在这种内容创建计算机应用程序所呈现的用户界面内。内容创建计算机应用程序可以从其用户工作空间中获取文档活动指示符,因为这样的文档活动指示符可以随时在那里等待,从而避免了轮询此类信息的需要,以及避免了与之相关联的延迟。以这种方式,内容创建计算机应用程序可以呈现使用户能够查看其同事、朋友、家庭成员或其他类似的协创作者最近对哪些文档进行了操作的用户界面。
本文所描述的技术引用了用户“工作空间”。如本文所使用的,术语“工作空间”是指一个规定的存储位置,该存储位置对于用户或者与之相关的用户组是唯一的。因此,例如,如本文所使用的用户“工作空间”的一个示例是存储在一个或多个服务器计算设备上的电子邮件邮箱。用户工作空间的另一个例子可以是例如在文件共享服务器上的用户文件夹或帐户。另外,虽然参考“文档”描述了本文所描述的技术,但是它们并不限于可以在其中存储内容的特定文件结构,因此,它们同样适用于不太严格定义的文件结构。
虽然不是必需的,但是将在由计算设备执行的计算机可执行指令(例如,程序模块)的通常上下文中进行下面的一些描述。具体而言,除非另外说明,否则本说明书将参考由一个或多个计算设备或外围设备执行的操作的动作和符号表示。因此,应当理解的是,这种有时称为计算机执行的动作和操作包括:处理单元对于以结构化形式表示数据的电信号的操作。该操作对数据进行转换或者将其维持在存储器中的位置,其以本领域普通技术人员熟知的方式来重新配置或者以其它方式改变计算设备或外围设备的操作。维护数据的数据结构是具有由该数据的格式所规定的特定属性的物理位置。
通常,程序模块包括执行特定任务或实现特定抽象数据类型的例程、程序、对象、组件、数据结构等等。此外,本领域普通技术人员应当理解,计算设备并不是必需限于传统的个人计算机,计算设备包括其它计算配置,其包括手持设备、多处理器系统、基于微处理器或可编程的消费电子产品、网络PC、微型计算机、大型计算机等等。类似地,计算设备并不是必需限于独立计算设备,这是因为这些机制也可以在分布式计算环境中实践,其中在分布式计算环境下,由通过通信网络链接的远程处理设备来执行任务。在分布式计算环境下,程序模块可以位于本地和远程存储器存贮设备中。
参见图1,该图示出了为以下描述提供了上下文的示例性系统100。示例性系统100可以包括但不限于一个或多个用户控制的计算设备,例如示例性个人计算设备114、115和116,将它们示出为分别由用户111、112和113进行使用。诸如示例性个人计算设备114、115116之类的用户控制的计算设备可以经由网络(例如,示例性网络110)彼此通信地耦合,以及通信地耦合至诸如示例性文档服务器计算设备120之类的一个或多个服务器计算设备。因此,在示例性个人计算设备114.、115和116上执行的计算机应用程序可以通过与示例性文档服务器120的通信连接,访问在用户111、112和113中的一些和所有用户之间共享的数据。例如,示例性文档服务器120可以通信地耦合到文档存储(例如,示例性文档存储130),在该文档存储上可以存储多个文档,例如示例性文档131、132和133。示例性用户111、112和113中的一个或多个可以例如通过内容创建计算机应用程序与示例性文档存储130所存储的文档进行协作交互,内容创建计算机应用程序可以在示例性个人计算设备114、115和116中的每一个上执行。例如,图1的示例性系统100示出了由用户111在个人计算设备114上执行的示例性文字处理计算机应用程序119。同样,图1示出了分别由用户111和112在个人计算设备115和116上执行的示例性的文字处理计算机应用程序119和119。
传统上,由内容创建计算机应用程序(例如,示例性文字处理计算机应用程序119、119和119)呈现的用户界面包括该用户界面正在呈现给的用户最近访问的文档的指示符。因此,例如,如果示例性用户111上次利用文字处理应用程序119创建或编辑了文档131,则下次示例性用户111执行文字处理应用程序119时,文字处理应用程序119可以显示能够枚举文档131的用户界面(例如,示例性用户界面121),从而使用户111能够快速地重新打开该文档并返回对其进行编辑。例如,示例性用户界面121可以是“打开”用户界面,例如当用户调用“打开”命令时,将由诸如示例性文字处理应用程序119之类的应用程序所呈现的用户界面,以便选择要由应用程序打开的文档(例如,用于查看或编辑)。再举一个例子,示例性用户界面121可以是“欢迎”用户界面,例如,当用户第一次执行或实例化诸如示例性文字处理应用程序119之类的应用程序时,由这样的应用程序所呈现的“欢迎”用户界面。如本领域普通技术人员将认识到的,经常向用户呈现这样的“打开”或“欢迎”用户界面,其不仅具有图形用户界面(用户可以通过该图形用户界面浏览文件层次结构以选择文档),而且这样的用户界面还经常向用户显示该用户的最近文档,这是因为用户经常返回到与他们最近查看或编辑的相同文档。因此,这样的最近文档的呈现提高了用户的效率,这是因为用户能够毫不费力地选择这些最近文档。
但是,如前所述,这些最近文档仅包括用户最近打开或编辑的文档。因此,例如,在图1的示例性系统100内,传统上,由文字处理应用程序119呈现给用户111的用户界面121将仅包括用户111先前打开或编辑过的那些文档(其包括来自文档存储130的文档)。传统上,示例性用户界面121将不包括诸如示例性用户112和113之类的其他用户打开或编辑的文档(仅仅通过这些其他用户的访问来包括)。这种短视视图可能导致协作环境中的用户效率低下。例如,示例性用户111可以与示例性用户112和113中的一个或多个一起工作(例如,以协作方式编辑文档131)。在完成对示例性文档131的编辑后,示例性用户111可以继续创建、打开、编辑或以其它方式访问其它文档(例如,示例性文档132和133)。同时,对示例性文档131的编辑动作可以通过由示例性用户111和112进行编辑而继续进行。在该实例中,由于例如由示例性文字处理应用程序119呈现的“打开”和/或“欢迎”用户界面仅仅显示了文档132和133,因此示例性用户111可能不知道该活动,这是因为这些文档是示例性用户111最近访问过的(即使文档131可能是最近编辑过的文档),但是对于示例性文档131的编辑可能是由不同于示例性用户111的其他用户(例如,示例性用户112或113)进行的事实。
一种用于由内容创建计算机应用程序生成用户界面(例如,示例性用户界面121)的机制可以是使应用程序轮询服务器(例如,示例性文档服务器120),以便识别例如示例性文档存储库130内的所有文档,这些文档已经由其他用户中的至少一个(例如,示例性用户112、113)或者其某个规定的子集针对它们进行了活动。但是,这种轮询太慢了。例如,试图利用文字处理应用程序119打开文档的用户会发现,在呈现用户可以选择并打开该文档的用户界面方面存在的延迟是不可接受的,这是因为从主动地向用户显示文档(作为这种“打开”界面的一部分)而获得的潜在效率可能不足以证明每次用户尝试打开文档时都经历这种延迟的合理性。再举一个例子,发起应用程序(例如,示例性文字处理应用程序119)的用户将感觉到在呈现“欢迎”界面方面的任何延迟,在应用程序实例化过程的部分中是性能较差的产品,这可能使用户难以使用这种应用程序。
因此,根据一个方面,足以促进可以主动地向用户呈现不仅该特定用户先前访问过的文档、而且还具有其他用户针对其进行的活动的文档的用户界面(例如,示例性用户界面121)的呈现的信息,该信息可能已经例如在用户工作空间中可用,因此可以快速地获取并用于生成相应的用户界面。例如,图1中所示的示例性系统100示出了工作空间存储140,该工作空间存储140可以例如通过示例性文档服务器120或其它服务器计算设备通信地耦合到示例性网络110。示例性工作空间存储140可以包括与用户或者规定的用户组相对应的多个工作空间。为了说明起见,示例性工作空间141可以对应于示例性用户111。类似地,示例性工作空间142可以对应于示例性用户112,示例性工作空间143可以对应于用户113。根据一个方面,诸如示例性工作空间141、142和143之类的工作空间可以是电子邮件邮箱,例如可以是电子邮件、日历或其它类似的个人信息管理服务器应用程序的一部分。因此,在这样的方面,示例性工作空间存储140可以是邮箱的数据库,例如将由服务器电子邮件应用程序维护。另外,在该方面,示例性工作空间存储140可以通信地耦合到与示例性文档服务器计算设备120不同的一个或多个服务器计算设备。例如,在该方面,示例性工作空间存储140可以通信地耦合到一个或多个电子邮件服务器计算设备、或者独立于文档服务器计算设备120的其它类似服务器计算设备。
为了便于说明本文所描述的机制,除其它信息之外,每个工作空间还可以存储有活动指示符,该活动指示符可以指示用户在文档上执行的特定活动或一组活动。因此,图1的示例性系统100将示例性用户工作空间141示出为包括两个不同的活动指示符(即示例性活动指示符151和152)。与用户工作空间141相对应,的用户(例如示例性用户111)执行的应用程序,可以从示例性用户工作空间141中获取活动指示符(例如,示例性活动指示符151和152),并且可以利用活动指示符中包含的信息来生成用户界面(例如,示例性用户界面121),其不仅可以包括用户111最近访问的文档,而且可以包括诸如示例性用户112和113之类的其他用户访问的文档。例如,如果示例性活动指示符151指示用户112对文档132的编辑动作(例如,通过在其个人计算设备115上使用文字处理应用程序119),则文字处理应用程序119可以从示例性工作空间141中获得这样的活动指示符151,并基于其中包含的信息,确定可以将与文档132的链接单独地或者与关于文档132的其它信息一起显示为示例性用户界面121的一部分。因此,可以向用户111呈现示例性用户界面121,该示例性用户界面121不仅包括用户111先前编辑过的文档(例如,示例性文档131),而且还可以包括其他用户(例如,示例性用户112)最近还与之交互的文档(例如,示例性文档132)。
转到图2,图2中所示的示例性系统200示出了用于填充诸如示例性工作空间141、142和143之类的用户工作空间的示例性机制。在示例性系统200内,将用户113示出为在其个人计算设备(即,示例性个人计算设备116)上利用文字处理应用程序119打开文档131,如打开动作210所示出的。为了说明使用文档活动指示符填充用户工作空间的示例性机制,在图2所示的例子中,文档131可以最初由用户111创建,并且可以随后由用户112自己编辑,或者与来自用户111的编辑进行组合。根据一个方面,对于文档131,在示例性个人计算设备116上执行的示例性文档服务器120可以检测到用户113对文档131执行的打开文档动作210(例如,当示例性文档服务器120接收到来自文字处理应用程序119的请求时)。
根据一个方面,在检测到打开文档动作210时,可以生成指示用户113打开文档131的活动指示符,并将其提供给打开该文档的用户和最初创建该文档的用户(可以认为其是“主用户”)的工作空间。具体而言,根据一个方面,至少一个用户可以使他们的工作空间充当与特定文档相对应的所有活动的文档活动指示符的规定性存储库。该用户可以称为该特定文档的“主用户”,而这些用户工作空间可以称为“主用户工作空间”。根据一个方面,这种“主用户”可以是最初创建文档的用户。根据另一个方面,“主用户”可以由一个或多个用户例如通过呈现的用户界面来明确地建立(通过内容创建计算机应用程序本身,或者通过文档共享实用程序、协作促进实用程序或者其它类似的计算机应用程序)。
基于上面定义的示例性参数,返回到图2的示例性系统200,其中用户111最初创建了文档131,用户111可以是“主用户”。相应地,可以基于动作的类型(即其是文档打开动作的事实)、基于最初创建文档的用户(即示例性用户111)、以及基于打开文档的用户(其触发指示打开操作的文档活动指示符的生成)(即示例性用户113),将指示打开动作210的活动指示符分发给用户工作空间。根据一个方面,文档打开类型的文档操作可以触发相应文档活动指示符向主用户和打开文档的用户的分发。因此,在图2的示例性系统200内,将指示打开动作210的文档活动指示符示出为分发给与用户111相对应的用户工作空间141(如通信211所示出的)、以及与用户113相对应的工作空间143(如通信212所示出的)。
因为可以将文档活动指示符分发到的工作空间是基于文档活动的类型,所以其它类型的文档活动可能导致相应文档活动指示符的不同类型的分发。例如,转到图3,该图中所示出的示例性系统300示出了示例性用户113对示例性文档131执行编辑动作310。可以在上述的打开动作210之后执行这种编辑动作310,在该情况下,以图3的示例性系统300所示出并且以本文所描述的方式进行分布的文档活动指示符可以是除了指示上述的打开动作210的文档活动指示符(上面已详细描述了该文档活动指示符的分发)。
根据一个方面,指示对文档的编辑动作的文档活动指示符可以分发给先前已经编辑过同一文档的所有用户。在图3的系统300所示出的例子内,由用户113编辑的文档131(如编辑动作310所示出的)可以是由用户111最初创建的,并且可以由用户112随后进行编辑。因此,可以将指示编辑动作310的文档活动指示符分发给:(1)执行编辑动作310的用户的工作空间,即与用户113相对应的工作空间143;(2)最初创作该文档的用户的工作空间,即与用户111相对应的工作空间141;以及(3)先前编辑过文档131的用户的工作空间(例如,在所示出的例子中,与用户112相对应的工作空间142)。箭头313、31l和312分别示出了文档活动指示符的这种分发。
根据其它方面,可以根据对上述枚举的动作的修改的分发标准,来分发指示对文档的编辑动作的文档活动指示符。例如,不是将文档活动指示符分发给先前已编辑过同一文档的所有用户,而是可以将文档活动指示符分发给先前在预定时间量内编辑过同一文档的所有用户。例如,在最后一天、一周、一个月或任何其它类似的预定时间间隔内编辑过该文档的用户可以接收到指示对该文档的编辑动作的文档活动指示符,而在该预定时间间隔之外编辑过该文档的其他用户则不需要接收指示对该文档的编辑动作的文档活动指示符。
再举一个例子,可以将指示编辑动作的文档活动指示符分发给先前打开过同一文档的所有用户,而不管这些用户是否实际上对文档内容本身或其元数据进行了任何编辑。如先前所述,可以基于预定的时间间隔来减少该用户池。因此,例如,可以将指示编辑动作的文档活动指示符分发给先前在最后一天、一周、一个月或任何其它类似预定时间间隔内打开过同一文档的所有用户。另外,与仅打开文档以消费其中的内容而不进行任何编辑的用户或者被禁止编辑该文档的用户相比,可以为编辑该文档的用户单独地建立该预定时间间隔。例如,可以将指示编辑动作的文档活动指示符分发给先前在上个月编辑过同一文档的所有用户,并且可以进一步分发给先前在上周打开过同一文档的所有用户。可以等同地利用其它预定的时间间隔,其中,独立于用于仅打开文档的那些用户的时间间隔,来设置用于编辑文档的用户的时间间隔。另外,可以使用去重复(deduplication)处理来避免将多个指示同一编辑动作的文档活动指示符发送到同一工作空间,例如将指示编辑动作的一个文档活动指示符发送到一个用户的工作空间(因为该用户先前已打开该文档),而将指示该相同的编辑动作的另一个单独文档活动指示符发送到同一用户的工作空间(因为该用户除了先前打开文档之外,还在打开文档的同时对其进行了编辑)。替代地,不需要执行这种去重复,甚至指示同一动作的多个文档活动指示符也可以简单地保留在用户工作空间中,直到被诸如内容创建应用程序获得,然后可以对其进行过滤或者以其它方式处理这些文档活动指示符,以用于生成用户界面(例如,上面详述的“打开”或“欢迎”用户界面)的目的。
如先前所指示的,文档活动指示符所分发到的工作空间可以是基于文档活动的类型。另一种类型的文档活动可以是通常对内容创建计算机应用程序提供的注释功能或其它类似功能的利用。根据一个方面,可以以类似于上面关于任何其它形式的文档内容编辑形式所详细描述的方式,对待用户诸如通过这种注释功能在文档内提供注释。因此,例如,在图4所示的示例性系统400中,由用户113对文档131执行的注释动作410可以导致将文档活动指示符分发到工作空间143(其与执行编辑/注释的用户113相对应)、与用户111(在当前示例中,用户111最初创作了用户113在其中执行了注释动作410的文档131)相对应的工作空间141、以及与用户112(在当前示例中,用户112是先前打开或编辑过该文档的用户)相对应的工作空间142,以便根据预先建立的标准为他们提供文档活动指示符。在图4的示例性系统400中,分别通过箭头413、411和412示出了指示注释动作410的这种文档活动指示符的提供。
根据一个方面,如果注释不是一般注释,而是特别针对特定个体用户或规定的用户组的注释,则根据该方面,可以生成另外的文档活动指示符,并提供给这些注释专门针对的那些用户的工作空间。例如,某些内容创建计算机应用程序的注释功能可以包括以编程方式回复另一个用户所做的先前注释的能力。再举一个例子,某些内容创建计算机应用程序可以包括以编程方式将注释或其它编辑专门定向到单个用户或规定的用户组的能力。以编程方式将反馈定向到特定用户的能力,有时是通过利用特定的符号或关键字(例如,“@”符号)来触发的。因此,在一些内容创建计算机应用程序中,以编程方式将反馈定向到特定用户的能力称为“@提及”或其它类似的术语。
返回到图4所示的示例性系统400,将注释动作410示出为包括注释-回复动作420,其中,由注释动作410做出的注释之一是对特定用户的先前注释的回复。如示例性系统400所示,该注释回复动作420可以导致将指示注释回复动作420的目标性质的单独的文档活动指示符分发给该注释回复所标识的用户的工作空间、以及该注释回复动作所针对的用户的工作空间。在所示出的例子中,示例性注释回复动作420可以是对用户112先前做出的注释的注释回复。因此,如箭头421所示,指示注释回复动作420的文档活动指示符可以提供给与用户112相对应的工作空间142。另外,如箭头412和421所示,工作空间142既可以接收指示注释动作410的文档活动指示符,也可以接收指示注释回复动作420的单独的文档活动指示符。
内容创建计算机应用程序可以利用这样的多个单独的文档活动指示符,以提供更丰富或更富表现力的用户界面。例如,在个人计算设备115上执行的文字处理应用程序119可以从对应于用户112的工作空间142中,获取指示注释动作410的文档活动指示符和指示注释回复动作420的单独的文档活动指示符。然后,文字处理应用程序119可以生成主动地呈现文档131的表示的用户界面,使得用户可以快速选择要打开的文档131。文档131的表示的这种主动表示可以是基于指示注释动作410的文档活动指示符。另外,文字处理应用程序119可以基于指示注释回复动作420的文档活动指示符,来生成还包括以下指示的用户界面:用户112已经接收到对该用户先前的注释的回复。这样的指示在视觉上可以与文档131的表示的主动呈现不同。以这种方式,作为一个示例,可以利用不同的文档活动指示符(甚至是关于同一文档的相关动作),来生成不同的用户界面方面或元素。
由某些内容创建计算机应用程序提供的程序化定向反馈选项(例如,前面提到的“@提及”功能),可以导致文档活动指示符的生成和分发,类似于上面针对注释回复动作420所描述的。具体而言,定向反馈动作可以导致专门针对这种定向反馈所针对的用户生成文档活动指示符。另外,定向反馈动作还可以导致生成文档活动指示符,其包括单独的、不同的文档活动指示符,这些文档活动指示符通常仅以定向反馈的形式指示编辑的存在(其可以传递给多个用户的工作空间,包括创作该文档的用户的工作空间、生成定向反馈的用户的工作空间、以及在先前时间中打开或编辑过该文档的用户的工作空间)。
除了针对文档内容的动作(例如,上面详述的动作)之外,还可以针对文档元数据的动作(例如,文档名称的更改、其文件结构或类型的更改、以及对此类文档的访问许可的更改)来生成文档活动指示符并进行分发。例如,并且转到图5,图5中所示的示例性系统500示出了用户(例如,示例性用户113)执行共享或取消授权动作510以与另一个用户(例如,示例性用户112)显式地共享文档131,其中该另一个用户先前不具有对该文档的访问许可,或者可以替代地撤销该用户对该文档的访问许可。根据一个方面,对文档的访问许可的这种改变可以触发向访问许可发生改变的用户以及文档的原始创作者分发相应的文档活动指示符。因此,例如,如果示例性用户113与用户112显式地共享文档131,则可以生成指示向用户112进行文档的这种共享的文档活动指示,并将其分发给用户111的工作空间,在本例子中,用户111可以是文档131的创创作者如箭头511所示。另外,可以生成指示文档131已与用户112显式共享的文档活动指示符,并将其分发到该用户的工作空间(即,工作空间142),如箭头512所示。根据其它方面,执行共享的用户还可以接收文档活动指示符,先前已被授权的用户、先前已打开该文档的用户、先前编辑过该文档的用户或者其组合也可以接收指示与新用户共享该文档的文档活动指示符。
以类似的方式,例如,同样可以生成指示显式取消授权的文档活动指示符,并将其分发给已被撤销访问许可的用户以及文档的原始创创作者。因此,例如,如果动作510是示例性用户113通过其解除示例性用户112的访问许可并阻止用户112进一步访问文档131的取消授权动作,则可以生成与该取消授权动作510相对应的文档活动指示符,并将其提供给与用户111相对应的工作空间141(在本例子中,该用户111是文档的创作者)、以及与用户112相对应的工作空间142(在本例子中,用户112的访问许可被取消授权动作510进行了撤销)。如前所述,根据其它方面,可以将指示这种取消授权的文档活动指示符提供给其它用户的工作空间,例如先前已经具有访问许可的用户、先前已经打开过该文档的用户、先前已经编辑过该文档的用户、执行取消授权的用户、或者其组合。
根据一个方面,其工作空间具有分发给他们的文档活动指示符的用户可以包括:基于他们与执行文档活动的用户、文档的原始创作者或其组合的社交关系而选择的用户。此外,可以在分阶段或迭代的过程中执行使用预先规定的社交关系来识别将向其工作空间分发文档活动指示符的用户,其中,可以基于与在先前迭代中被分发了这些文档活动指示符的用户的社交关系,来选择向其工作空间分发该文档活动指示符的用户。具体而言,可以构建和维护能够量化或以其它方式描绘多个不同用户之间的关系的社交图。由这样的社交图描绘的关系可以包括显式定义的关系,例如,在数字通信的上下文中已经放置在单个组、别名或其它类似的单个引用内的用户之间的关系。作为显式定义的关系的另一个例子,这样的社交图所描绘的关系可以包括管理性组织结构图关系,例如哪些用户向哪些管理用户进行报告,每个在商业环境中是常见的。由这样的社交图描绘的关系还可以包括隐式定义的关系,例如通过一个或多个用户的动作识别的关系。例如,一个用户与另一个用户共享文档的重复实例,可以导致社交图在两个用户之间描绘出一种关系。再举一个例子,两个用户之间的重复电子邮件通信可以导致社交图在他们之间描绘出一种关系。再举一个例子,诸如通过共享日历服务而被邀请参加同一会议或事件的用户,可以基于该共同会议或事件,而由社交图在他们之间描绘一种关系。在社交图中描绘用户之间的关系的精确方式以及量化这些关系的强度的精确方式对于本文所描述的机制并不重要,这是因为这样的社交图仅用于标识可以向其分发文档活动指示符的其他用户(例如,通过上面详述的机制)。
通过特定的示例,转到图6,图6中示出的示例性系统600以分阶段方式示出了文档活动指示符的示例性重新分发,以说明用户之间的社交联系。具体而言,示例性系统600示出了由用户113对文档131执行的文档活动610。文档活动610可以是上面所描述的文档活动中的任何一个,并且可以例如根据上面所详述的机制,触发将文档活动指示符分发给例如工作空间141和工作空间143,如箭头611和612所示。根据一个方面,在工作空间处接收到文档活动指示符之后,可以进行进一步的评估,以判断是否要例如根据社交图来进一步重新分发该文档活动指示符。可以通过在一个或多个服务器计算设备(例如,示例性文档服务器计算设备120)上执行的处理、在个人计算设备中的单一一个上执行的处理(例如,在示例性个人计算设备114上执行的处理,其中示例性个人计算设备114可以访问与利用个人计算设备114的用户111相对应的工作空间141)或者其组合,来执行这样的进一步评估。在。
进一步的评估可以考虑与工作空间141相对应的用户111社交连接的用户(例如,在上述的社交图中)。根据保持社交图信息的方式,可以量化关系的强度,使得可以识别具有大于阈值的关系强度的用户以接收文档活动指示符的进一步分发。替代地或另外地,可以识别具有规定类型的社交关系(例如,同事关系、管理关系、家庭关系或其它类型的规定关系)的用户,以接收文档活动指示符的进一步分发。在图6的系统600所示的例子中,可以通过前述处理将用户112识别为在社交图中连接到用户111。例如,用户112可以是用户111的团队成员,使得提供给用户111的文档活动指示符也可能潜在地与用户112有关,即使用户112以前可能没有打开或编辑过触发该文档活动指示符的动作所针对的文档(例如,示例性文档131)。在该实例中,提供给示例性工作空间141的文档活动指示符(例如,如图6中的箭头611所示)可以被进一步重新分发给与用户112相对应的示例性工作空间142,如箭头613所示。
根据一个方面,可以参考来自文档活动指示符或者甚至来自文档本身的各种信息,来确定哪些用户经由社交图连接到其工作空间接收了文档活动指示符的用户、并确定文档活动指示符要重新分发到的用户。例如,符合某些命名约定(例如,某些关键字、数字标识符的使用或者其它类似的命名约定)的文档可以将与对这些文档的动作相对应的文档活动指示符分发给一组同事。因此,对诸如箭头611所例示的文档活动指示符(其指示对具有这样的命名结构的文档的活动)的接收,可以导致识别作为团队、小组或其它类似用户集合的一部分的其他用户(如在社交图中所识别的),以便这些用户中的一个用户(例如,用户111)对文档活动指示符的接收,可以触发将该文档活动指示符重新分发给该团队、组或其他类似的用户集合中的其他用户,例如箭头613所示。
转到图7,图7中所示的流程图700示出了示例性的一系列步骤,通过这些步骤,可以根据文档活动指示符所指示的活动的类型来进行文档活动指示符的主动分发。具体而言,在步骤710中检测到对文档的动作之后,处理可以转到识别文档活动的类型。例如,在步骤715处,可以判断该文档活动是否是打开动作,如果是,则可以在步骤725进一步判断文档的这种打开是否还导致了文档的编辑,或者在步骤735处,可以判断这种动作是否是注释动作。虽然将步骤715、725、735、745和755示出为串行地执行,但它们同样可以并行地执行,也可以通过单个步骤来执行,其中该单个步骤将对于文档的动作标识为特定类型之一。
但是,在图7所示的示例性流程图700中,如步骤715所示,可以对文档中执行的动作是否为打开动作进行初步判断。如果在步骤715中确定如果文档活动不是打开动作,则该活动可以是未为其生成文档活动指示符的种类(例如,将文档移动到不同的存储位置等等),并且在步骤765处,相关处理可以结束。但是,如果在步骤715确定文档活动是文档打开动作,则处理可以转到步骤720,并且可以生成指示这种打开动作的活动指示符,并将其分发给与该文档的创作者相对应的工作空间、以及与操作该文档的用户相对应的工作空间。然后,处理可以进一步转到步骤725,在步骤725处,可以进一步判断步骤715的打开动作是否也是编辑动作。如果在步骤725处确定没有执行编辑,则进一步的处理可以考虑该活动是否是注释动作(例如,在步骤735处)。相反,如果在步骤725处确定执行了编辑动作,则处理可以转到步骤730,并且可以将指示编辑动作的活动指示符分发给创作者、执行该动作的用户、以及先前打开或编辑文档的授权用户的工作空间,诸如以上面所详述的方式。如上所述,在步骤730处分发的活动指示符可以是除步骤720的活动指示符之外的活动指示符,或者它们可以是其替代。
在步骤735处,如果该活动不是注释动作,则处理可以转到步骤755,以判断该活动是程序性响应还是目标反馈(例如,“@提及”)。相反,如果在步骤735处,该活动是注释动作,则在步骤740处,可以将活动指示符分发给创作者、执行注释动作的用户、以及先前打开或编辑过该文档的授权用户的工作空间,如先前所详述的。在步骤745处,可以进一步判断步骤735的注释动作是否包括特定用户对特定注释的针对性回复,在该情况下,处理可以转到步骤750,并且可以向该回复所针对的用户的工作空间分发其它活动指示符。在步骤755处,如果确定活动是“@提及”等等,则可以将活动指示符分发给创作者、执行该“@提及”的用户、先前已经打开或编辑过该文档的其他授权用户的工作空间,其中生成其它单独的活动指示符,并将其提供给“@提及”用户的工作空间。然后,相关处理可以在步骤765结束。
转到图8,图8中所示的示例性流程图800示出了当接收到文档活动指示符时可以执行的另一系列步骤,以便以分阶段的方式主动地分发这种文档活动指示符。具体地说,在步骤810处,可以接收文档活动指示符。如先前所指示的,可以利用在服务器计算设备上执行的处理来执行示例性流程图800的步骤,例如服务器计算设备可以访问这些文档活动指示符将分发到的用户工作空间并从而进行接收。但是,如先前还指出的,可以利用在远程用户计算设备(例如,正在执行内容创建计算机应用程序的用户计算设备,该程序可以偶尔利用这种用户计算设备来访问与用户相对应的工作空间)上执行的处理来执行示例性流程图800的步骤。在已经接收到文档活动指示符之后,例如在步骤810处,处理可以转到步骤820,其中在步骤820,可以判断是否应该进一步分发所接收的文档活动指示符,比如经由社交图,在步骤810中在其工作空间中接收到文档活动指示符的用户通过社交图在社交上连接到其他用户(例如,以上面所详述的方式)。如果在步骤820处确定不应进一步分发在步骤810处接收的文档活动指示符,则相关处理可以在步骤850处结束。
相反,如果在步骤820确定要进行进一步的经由社交图的分发,则处理转到步骤830,可以参考社交图来识别在步骤810中在其工作空间中接收到文档活动指示符的用户的其他用户。如先前所指示的,可以基于由社交图量化的关系的强度、关系的类型或者其它类似的关系因素,来识别向其进一步分发在步骤810接收到的文档活动指示符的其他用户。另外,如先前还指示的,可以基于来自文档活动指示符的信息(例如,文档名称、其在共享文件夹内的位置或其它类似信息)以及来自文档本身的信息,来通知步骤830处的确定。一旦确定了在步骤830识别的用户,则在步骤840处,将在步骤810接收的文档活动指示符进一步分发给这些用户。然后,相关处理可以在步骤850结束。
转到图9,在该图中示出了可以用于执行上面所描述的机制和动作中的一些或全部的示例性计算设备900。示例性计算设备900可以包括但不限于:一个或多个中央处理单元(CPU)920、系统存储器930、以及将包括系统存储器的各种系统组件耦合到处理单元920的系统总线921。系统总线921可以是几种类型的总线结构中的任何一种,其包括存储器总线或存储器控制器、外围总线和使用各种总线架构中的任何一种的本地总线。计算设备900可以可选地包括图形硬件,其包括但不限于图形硬件接口950和显示设备951(其可以包括能够接收基于触摸的用户输入的显示设备,例如触摸敏感型、或具备多触摸功能的显示设备)。根据具体的物理实现,CPU 920、系统存储器930和计算设备900的其它组件中的一个或多个可以物理地同处一地,例如位于单个芯片上。在这种情况下,系统总线921中的一些或全部可以仅仅是单个芯片结构内的硅通路,并且图9中的图示仅仅是为了标记方便以便于说明。
计算设备900通常还包括计算机可读介质,其可以包括可由计算设备900访问的任何可用介质,并且包括易失性和非易失性介质以及可移动和不可移动介质。举例而言但非做出限制,计算机可读介质可以包括计算机存储介质和通信介质。计算机存储介质包括以用于存储诸如计算机可读指令、数据结构、程序模块或其它数据之类的信息的任何方法或技术来实现的介质。计算机存储介质包括但不限于RAM、ROM、EEPROM、闪存或其它存储技术、CD-ROM、数字通用光盘(DVD)或其它光盘存储器、盒式磁带、磁带、磁盘存储器或其它磁存储设备、或者可以用于存储期望的内容并且能够由计算设备900访问的任何其它介质。但是,计算机存储介质不包括通信介质。通信介质通常以诸如载波波形或其它传输机制之类的已调制数据信号来体现计算机可读指令、数据结构、程序模块或其它数据,并且包括任何内容传递介质。举例而言但非做出限制,通信介质包括诸如有线网络或直接有线连接之类的有线介质、以及诸如声学、RF、红外和其它无线介质之类的无线介质。上述的任何组合也应当包括在计算机可读介质的范围内。
系统存储器930包括易失性和/或非易失性存储器形式的计算机存储介质,例如只读存储器(ROM)931和随机存取存储器(RAM)932。基本输入/输出系统933(BIOS)包含有助于例如在启动期间在计算设备900内的元件之间传送信息的基本例程,BIOS通常存储在ROM931中。RAM 932通常包含可由处理单元920立即访问和/或当前正在操作的数据和/或程序模块。举例而言但非做出限制,图9示出了操作系统934、其它程序模块935和程序数据936。
计算设备900还可以包括其它可移动/不可移动、易失性/非易失性计算机存储介质。仅作为示例,图9示出了从不可移动的非易失性磁介质读取或者写入的硬盘驱动器941。可以与该示例性计算设备一起使用的其它可移动/不可移动、易失性/非易失性计算机存储介质包括但不限于:磁带盒、闪存卡、数字通用光盘、数字录像带、固态RAM、固态ROM和其它计算机存储介质,如上面所规定和描述的那样。硬盘驱动器941通常通过诸如接口940之类的非易失性存储器接口来连接到系统总线921。
上面所讨论并在图9中示出的驱动器以及其相关联的计算机存储介质为计算设备900提供计算机可读指令、数据结构、程序模块和其它数据的存储。在图9中,例如,将硬盘驱动器941示出为存储操作系统944、其它程序模块945和程序数据946。应当注意,这些组件可以与操作系统934、其它程序模块935和程序数据936相同或者不同。操作系统944、其它程序模块945和程序数据946在这里给出不同的数字,以说明它们至少是不同的副本。
计算设备900可以使用逻辑连接到一个或多个远程计算机,在网络环境下进行操作。将计算设备900示出为通过网络接口或适配器960连接到通用网络连接961,转而网络接口或适配器960连接到系统总线921。在网络环境下,相对于计算设备900描绘的程序模块或者其一部分或外围设备可以存储在通过通用网络连接961通信地耦合到计算设备900的一个或多个其它计算设备的存储器中。应当理解,所示的网络连接只是示例性的,可以使用在计算设备之间建立通信链路的其它方式。
虽然将示例性计算设备900描述为单个物理设备,但其可以是虚拟计算设备,在这种情况下,上述的物理组件(例如,CPU 920、系统存储器930、网络接口960和其它类似组件)的功能可以通过计算机可执行指令来提供。这样的计算机可执行指令可以在单个物理计算设备上执行,或者可以分布在多个物理计算设备上,其包括以动态方式分布在多个物理计算设备上,使得托管这些计算机可执行指令的特定物理计算设备可以根据需要和可用性来随时间动态变化。在示例性计算设备900是虚拟化设备的情况下,托管这种虚拟化计算设备的底层物理计算设备本身可以包括与上面所描述的那些类似的物理组件,并且以类似的方式进行操作。此外,可以在多个层中使用虚拟计算设备,其中一个虚拟计算设备在另一个虚拟计算设备的构造内执行。因此,如本文所使用的术语“计算设备”意味着物理计算设备或者包括虚拟计算设备的虚拟化计算环境,其中在虚拟化计算环境下,计算机可执行指令可以以与物理计算设备的执行一致的方式来执行。类似地,如本文所使用的指代计算设备的物理组件的术语,表示执行相同或等同功能的那些物理组件或者其虚拟化。
作为第一示例,上面的描述包括一组的一个或多个计算设备,总计包括:一个或多个处理单元;以及包括计算机可执行指令的一个或多个计算机可读介质,当所述计算机可执行指令由所述一个或多个处理单元执行时,使所述一组的计算设备用于:检测由第一用户对创建者用户创建的文档执行的第一活动;生成与第一活动相对应的第一活动指示符;基于以下各项来识别第一组用户:所述第一活动对所述文档所做的更改、所述第一活动的类型、所述第一用户和所述创建者用户;将所述第一活动指示符分发给第一组用户工作空间,每个用户工作空间对应于所识别的第一组用户中的一个或多个用户;从请求方用户的工作空间接收对活动指示符的请求;以及响应于所述请求,从所述请求方的用户工作空间中提供所述活动指示符。
第二示例是根据第一示例所述的一组的计算设备,其中,用于识别所述第一组用户的计算机可执行指令包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:如果所述第一活动是所述第一用户对所述文档的打开,则将所述第一组用户识别为包括所述第一用户和所述创建者用户。
第三示例是根据第一示例所述的一组的计算设备,其中,用于识别所述第一组用户的计算机可执行指令包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:如果所述第一活动是所述第一用户对所述文档的编辑,则将所述第一组用户识别为包括所述第一用户、所述创建者用户、以及先前已经打开所述文档的当前授权用户。
第四示例是根据第三示例所述的一组的计算设备,其中,被识别为所述第一组用户的一部分的先前已经打开所述文档的所述当前授权用户仅仅是那些先前在预定的过去时间量内打开所述文档的用户。
第五示例是根据第三示例所述的一组的计算设备,其中,被识别为所述第一组用户的一部分的先前已经打开所述文档的所述当前授权用户仅仅是那些先前也编辑过所述文档的用户。
第六示例是根据第一示例所述的一组的计算设备,其中,用于识别所述第一组用户的计算机可执行指令包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:如果所述第一活动是所述第一用户对所述文档的内容的注释,则将所述第一组用户识别为包括所述第一用户、所述创建者用户、以及先前已经打开所述文档的当前授权用户。
第七示例是根据第六示例所述的一组的计算设备,其中,所述一个或多个计算机可读介质还包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:如果所述第一活动是注释回复,则识别所述注释回复所针对的回复用户;生成与所述第一活动相对应的第二活动指示符,并指示所述第一活动是对所述回复用户的所述注释回复;以及将所述第二活动指示符分发到与所述回复用户相对应的回复用户工作空间,其中所述回复用户工作空间也具有分发给其的所述第一活动指示符。
第八示例是根据第一示例所述的一组的计算设备,其中,用于识别所述第一组用户的计算机可执行指令包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:如果所述第一活动是所述第一用户在所述文档的上下文中针对提及的用户的有针对性的提及,则将所述第一组用户识别为包括所述第一用户、所述创建者用户、先前已经打开所述文档的当前授权用户以及所述提及的用户。
第九示例是根据第八示例所述的一组的计算设备,其中,所述一个或多个计算机可读介质还包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:生成与所述第一活动相对应的第二活动指示符,并指示所述第一活动是针对所述提及的用户的有针对性的提及;以及将所述第二活动指示符分发到与所述提及的用户相对应的提及的用户工作空间,其中所述提及的用户工作空间也具有分发给其的所述第一活动指示符。
第十示例是根据第一示例所述的一组的计算设备,其中,用于识别所述第一组用户的计算机可执行指令包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:将所述第一组用户识别为包括:如果所述第一活动是所述第一用户与共享用户对所述文档的共享,则将所述第一组用户识别为包括所述创建者用户和所述共享用户。
第十一示例是根据第一示例所述的一组的计算设备,其中,用于识别所述第一组用户的计算机可执行指令包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:如果所述第一活动是所述第一用户对与所述文档相关联的访问许可的改变、撤消取消授权的用户访问所述文档的许可,则将所述第一组用户识别为包括所述创建者用户和所述取消授权的用户。
第十二示例是根据第一示例所述的一组的计算设备,其中,用于识别所述第一组用户的计算机可执行指令包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:将所述第一组用户识别为包括:如在预先生成的社交图中所识别的在社交上直接连接到所述第一用户或所述创建者用户中的至少一个的用户。
第十三示例是根据第一示例所述的一组的计算设备,其中,所述一个或多个计算机可读介质还包括当由所述一个或多个处理单元执行时,使所述一组的计算设备用于执行以下操作的计算机可执行指令:在与第二用户相对应的第二用户工作空间处单独地检测对所述第一活动指示符的接收,所述第二用户工作空间是所述第一活动指示符被分发到的所述第一组用户工作空间的一部分;识别第二组用户,所述第二组用户包括如在预先生成的社交图中所识别的在社交上直接连接到所述第二用户的用户;以及将所述第一活动指示符重新分发给第二组用户工作空间,每个用户工作空间对应于所识别的第二组用户中的一个或多个用户。
第十四示例是一种主动分发文档活动指示符的方法,该方法包括:检测由第一用户对创建者用户创建的文档执行的第一活动;生成与第一活动相对应的第一活动指示符;基于以下各项来识别第一组用户:所述第一活动对所述文档所做的更改、所述第一活动的类型、所述第一用户和所述创建者用户;将所述第一活动指示符分发给第一组用户工作空间,每个用户工作空间对应于所识别的第一组用户中的一个或多个用户;从请求方用户的工作空间接收对活动指示符的请求;以及响应于所述请求,从所述请求方的用户工作空间中提供所述活动指示符。
第十五示例是根据第十四示例所述的方法,其中,识别所述第一组用户包括:如果所述第一活动是所述第一用户对所述文档的编辑或者是所述第一用户对所述文档的内容的注释,则将所述第一组用户识别为包括所述第一用户、所述创建者用户、以及先前已经打开所述文档的当前授权用户。
第十六示例是根据第十五示例所述的方法,其中,该方法还包括:如果所述第一活动是注释回复,则识别所述注释回复所针对的回复用户;生成与所述第一活动相对应的第二活动指示符,并指示所述第一活动是对所述回复用户的所述注释回复;以及将所述第二活动指示符分发到与所述回复用户相对应的回复用户工作空间,其中所述回复用户工作空间也具有分发给其的所述第一活动指示符。
第十七示例是根据第十四示例所述的方法,其中,识别所述第一组用户包括将所述第一组用户识别为包括:如在预先生成的社交图中所识别的在社交上直接连接到所述第一用户或所述创建者用户中的至少一个的用户。
第十八示例是根据第十四示例所述的方法,其中,在与第二用户相对应的第二用户工作空间处单独地检测对所述第一活动指示符的接收,所述第二用户工作空间是所述第一活动指示符被分发到的所述第一组用户工作空间的一部分;识别第二组用户,所述第二组用户包括如在预先生成的社交图中所识别的在社交上直接连接到所述第二用户的用户;以及将所述第一活动指示符重新分发给第二组用户工作空间,每个用户工作空间对应于所识别的第二组用户中的一个或多个用户。
第十九示例是一种系统,该系统包括第一服务器计算设备,其包括:一个或多个第一服务器处理单元;以及包括计算机可执行指令的一个或多个第一服务器计算机可读介质,当所述计算机可执行指令由所述一个或多个第一服务器处理单元执行时,使所述第一服务器计算设备执行以下操作:检测由第一用户对创建者用户创建的文档执行的第一活动;生成与所述第一活动相对应的第一活动指示符;基于以下各项来识别第一组用户:所述第一活动对所述文档所做的更改、所述第一活动的类型、所述第一用户和所述创建者用户、所述第一组用户包括第二用户;将所述第一活动指示符分发给第一组用户工作空间,每个用户工作空间对应于所识别的第一组用户中的一个或多个用户,所述第一组用户工作空间包括与所述第二用户相对应的第二用户工作空间;所述系统包括客户端计算设备,其包括:显示设备;一个或多个客户端处理单元;以及包括计算机可执行指令的一个或多个客户端计算机可读介质,当所述计算机可执行指令由所述一个或多个客户端处理单元执行时,使所述客户端计算设备执行以下操作:从所述第二用户工作空间中获得所述第一活动指示符;以及在所述显示设备上生成用户界面,所述用户界面至少部分地基于从所述第二用户工作空间获得的活动指示符向所述第二用户可视地呈现最近的文档活动,所述最近的文档活动包括由所述第一用户执行的所述第一活动。
第二十示例是根据第十九示例所述的系统,其还包括第二服务器计算设备,所述第二服务器计算设备包括:一个或多个第二服务器处理单元;以及包括计算机可执行指令的一个或多个第二服务器计算机可读介质,当所述计算机可执行指令由所述一个或多个第二服务器处理单元执行时,使所述第二服务器计算设备执行以下操作:在所述第二用户工作空间处检测对所述第一活动指示符的接收;识别第二组用户,所述第二组用户包括如在预先生成的社交图中所识别的在社交上直接连接到所述第二用户的用户;以及将所述第一活动指示符重新分发给第二组用户工作空间,每个用户工作空间对应于所识别的第二组用户中的一个或多个用户。
通过上面的描述可以看出,已经提出了用于主动地分发文档活动指示符(其包括以分阶段方式)的机制。鉴于本文所描述的主题的众多可能的变化,将落入所附权利要求及其等同物的保护范围内的所有这些实施例都声称为本发明。

Claims (15)

1.一种主动分发文档活动指示符的方法,所述方法包括:
检测由第一用户对创建者用户创建的文档执行的第一活动;
生成与所述第一活动相对应的第一活动指示符;
基于以下各项来识别第一组用户:所述第一活动对所述文档所做的更改、所述第一活动的类型、所述第一用户和所述创建者用户;
将所述第一活动指示符分发给第一组用户工作空间,每个用户工作空间对应于所识别的第一组用户中的一个或多个用户;
从请求方用户的工作空间接收对活动指示符的请求;以及
响应于所述请求,从所述请求方的用户工作空间中提供所述活动指示符。
2.根据权利要求1所述的方法,其中,识别所述第一组用户包括:如果所述第一活动是所述第一用户对所述文档的打开,则将所述第一组用户识别为包括所述第一用户和所述创建者用户。
3.根据权利要求1所述的方法,其中,识别所述第一组用户包括:如果所述第一活动是所述第一用户对所述文档的编辑,则将所述第一组用户识别为包括所述第一用户、所述创建者用户、以及先前已经打开所述文档的当前授权用户。
4.根据权利要求1所述的方法,其中,识别所述第一组用户包括:如果所述第一活动是所述第一用户对所述文档的内容的注释,则将所述第一组用户识别为包括所述第一用户、所述创建者用户、以及先前已经打开所述文档的当前授权用户。
5.根据权利要求4所述的方法,还包括:
如果所述第一活动是注释回复,则识别所述注释回复所针对的回复用户;
生成与所述第一活动相对应的第二活动指示符,并指示所述第一活动是对所述回复用户的所述注释回复;以及
将所述第二活动指示符分发到与所述回复用户相对应的回复用户工作空间,其中所述回复用户工作空间也具有分发给其的所述第一活动指示符。
6.根据权利要求1所述的方法,其中,识别所述第一组用户包括:如果所述第一活动是所述第一用户在所述文档的上下文中针对提及的用户的有针对性的提及,则将所述第一组用户识别为包括所述第一用户、所述创建者用户、先前已经打开所述文档的当前授权用户以及所述提及的用户。
7.根据权利要求1所述的方法,其中,识别所述第一组用户包括:将所述第一组用户识别为包括:如在预先生成的社交图中所识别的在社交上直接连接到所述第一用户或所述创建者用户中的至少一个的用户。
8.根据权利要求1所述的方法,还包括:
在与第二用户相对应的第二用户工作空间处单独地检测对所述第一活动指示符的接收,所述第二用户工作空间是所述第一活动指示符被分发到的所述第一组用户工作空间的一部分;
识别第二组用户,所述第二组用户包括如在预先生成的社交图中所识别的在社交上直接连接到所述第二用户的用户;以及
将所述第一活动指示符重新分发给第二组用户工作空间,每个用户工作空间对应于所识别的第二组用户中的一个或多个用户。
9.根据权利要求3所述的方法,其中,被识别为所述第一组用户的一部分的先前已经打开所述文档的所述当前授权用户仅仅是那些先前在预定的过去时间量内打开所述文档的用户。
10.根据权利要求6所述的方法,还包括:
生成与所述第一活动相对应的第二活动指示符,并指示所述第一活动是针对所述提及的用户的有针对性的提及;以及
将所述第二活动指示符分发给与所述提及的用户相对应的提及的用户工作空间,所述提及的用户工作空间也具有分发给其的所述第一活动指示符。
11.根据权利要求1所述的方法,其中,所述识别所述第一组用户包括:如果所述第一活动是所述第一用户与共享用户对所述文档的共享,则将所述第一组用户识别为包括所述创建者用户和所述共享用户。
12.根据权利要求1所述的方法,其中,所述识别所述第一组用户包括:如果所述第一活动是所述第一用户对与所述文档相关联的访问许可的改变、撤消取消授权的用户访问所述文档的许可,则将所述第一组用户识别为包括所述创建者用户和所述取消授权的用户。
13.一组的一个或多个计算设备,总计包括:
一个或多个处理单元;以及
包括计算机可执行指令的一个或多个计算机可读介质,当所述计算机可执行指令由所述一个或多个处理单元执行时,使所述一组的计算设备执行根据权利要求1所述的方法。
14.一种系统,包括:
第一服务器计算设备,包括:
一个或多个第一服务器处理单元;以及
包括计算机可执行指令的一个或多个第一服务器计算机可读介质,当所述计算机可执行指令由所述一个或多个第一服务器处理单元执行时,使所述第一服务器计算设备执行以下操作:
检测由第一用户对创建者用户创建的文档执行的第一活动;
生成与所述第一活动相对应的第一活动指示符;
基于以下各项来识别第一组用户:所述第一活动对所述文档所做的更改、所述第一活动的类型、所述第一用户和所述创建者用户、所述第一组用户包括第二用户;
将所述第一活动指示符分发给第一组用户工作空间,每个用户工作空间对应于所识别的第一组用户中的一个或多个用户,所述第一组用户工作空间包括与所述第二用户相对应的第二用户工作空间;以及客户端计算设备,包括:
显示设备;
一个或多个客户端处理单元;以及
包括计算机可执行指令的一个或多个客户端计算机可读介质,当所述计算机可执行指令由所述一个或多个客户端处理单元执行时,使所述客户端计算设备执行以下操作:
从所述第二用户工作空间中获得所述第一活动指示符;以及在所述显示设备上生成用户界面,所述用户界面至少部分地基于从所述第二用户工作空间获得的活动指示符向所述第二用户可视地呈现最近的文档活动,所述最近的文档活动包括由所述第一用户执行的所述第一活动。
15.根据权利要求14所述的系统,还包括第二服务器计算设备,所述第二服务器计算设备包括:
一个或多个第二服务器处理单元;以及
包括计算机可执行指令的一个或多个第二服务器计算机可读介质,当所述计算机可执行指令由所述一个或多个第二服务器处理单元执行时,使所述第二服务器计算设备执行以下操作:
在所述第二用户工作空间处检测对所述第一活动指示符的接收;
识别第二组用户,所述第二组用户包括如在预先生成的社交图中所识别的在社交上直接连接到所述第二用户的用户;以及
将所述第一活动指示符重新分发给第二组用户工作空间,每个用户工作空间对应于所识别的第二组用户中的一个或多个用户。
CN201880029255.7A 2017-05-02 2018-04-11 文档活动指示符的主动分阶段分发 Active CN110603551B (zh)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US15/585,136 2017-05-02
US15/585,136 US10303420B2 (en) 2017-05-02 2017-05-02 Proactive staged distribution of document activity indicators
PCT/US2018/026985 WO2018204038A1 (en) 2017-05-02 2018-04-11 Proactive staged distribution of document activity indicators

Publications (2)

Publication Number Publication Date
CN110603551A CN110603551A (zh) 2019-12-20
CN110603551B true CN110603551B (zh) 2023-07-14

Family

ID=62152637

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201880029255.7A Active CN110603551B (zh) 2017-05-02 2018-04-11 文档活动指示符的主动分阶段分发

Country Status (4)

Country Link
US (2) US10303420B2 (zh)
EP (1) EP3619662A1 (zh)
CN (1) CN110603551B (zh)
WO (1) WO2018204038A1 (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20220269851A1 (en) * 2021-02-23 2022-08-25 Coda Project, Inc. System, method, and apparatus for publication and external interfacing for a unified document surface
US10466867B2 (en) 2016-04-27 2019-11-05 Coda Project, Inc. Formulas
JP2021043719A (ja) * 2019-09-11 2021-03-18 富士ゼロックス株式会社 情報処理装置及びプログラム
WO2023075907A1 (en) * 2021-10-28 2023-05-04 Microsoft Technology Licensing, Llc. Managing a collaborative workspace to identify relevant activities and present the relevant activities to a user
US20230244802A1 (en) * 2022-01-31 2023-08-03 Salesforce, Inc. Managing permissions for collaborative shared documents

Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102047277A (zh) * 2008-05-29 2011-05-04 诺基亚公司 通过利用社会图信息进行内容使用分配的方法、装置和计算机程序产品
CN102841930A (zh) * 2007-06-19 2012-12-26 微软公司 电子文档的集成共享
CN102981843A (zh) * 2011-11-11 2013-03-20 微软公司 绘图工具中的共同创作
GB2499097A (en) * 2012-01-06 2013-08-07 Box Inc Discussion forum with integrated task assignment function

Family Cites Families (42)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20040205514A1 (en) * 2002-06-28 2004-10-14 Microsoft Corporation Hyperlink preview utility and method
US7257774B2 (en) * 2002-07-30 2007-08-14 Fuji Xerox Co., Ltd. Systems and methods for filtering and/or viewing collaborative indexes of recorded media
US7430721B2 (en) * 2003-04-08 2008-09-30 Tidebreak, Inc. Pointright: a system to redirect mouse and keyboard control among multiple machines
DE10326811A1 (de) * 2003-06-13 2005-01-20 Siemens Ag Verfahren zur Darstellung von Grafikobjekten und Kommunikationsgerät
US7702730B2 (en) * 2004-09-03 2010-04-20 Open Text Corporation Systems and methods for collaboration
US20070130145A1 (en) 2005-11-23 2007-06-07 Microsoft Corporation User activity based document analysis
US7774703B2 (en) * 2006-02-09 2010-08-10 Microsoft Corporation Virtual shadow awareness for multi-user editors
US8214746B2 (en) * 2007-03-15 2012-07-03 Accenture Global Services Limited Establishment of message context in a collaboration system
US20090169060A1 (en) * 2007-12-26 2009-07-02 Robert Bosch Gmbh Method and apparatus for spatial display and selection
US9965638B2 (en) * 2008-01-28 2018-05-08 Adobe Systems Incorporated Rights application within document-based conferencing
US9436927B2 (en) * 2008-03-14 2016-09-06 Microsoft Technology Licensing, Llc Web-based multiuser collaboration
US10091460B2 (en) * 2008-03-31 2018-10-02 Disney Enterprises, Inc. Asynchronous online viewing party
US20100037153A1 (en) * 2008-08-06 2010-02-11 Rogers Jarrod C Chat and web page integration method and system
US20140033073A1 (en) * 2008-10-01 2014-01-30 Nigel Pegg Time-shifted collaboration playback
US20110010638A1 (en) * 2009-07-10 2011-01-13 Novell, Inc. Presence-enabled inbox
US8972391B1 (en) 2009-10-02 2015-03-03 Google Inc. Recent interest based relevance scoring
JP4727755B2 (ja) * 2009-10-06 2011-07-20 シャープ株式会社 電子文書処理装置、電子文書表示装置、電子文書処理方法、電子文書処理プログラム、および記録媒体
US9659265B2 (en) 2009-10-12 2017-05-23 Oracle International Corporation Methods and systems for collecting and analyzing enterprise activities
US20120063367A1 (en) * 2009-12-22 2012-03-15 Waldeck Technology, Llc Crowd and profile based communication addresses
US8261198B2 (en) * 2010-06-30 2012-09-04 International Business Machines Corporation Automatic co-browsing invitations
US9262390B2 (en) * 2010-09-02 2016-02-16 Lexis Nexis, A Division Of Reed Elsevier Inc. Methods and systems for annotating electronic documents
US9477574B2 (en) 2011-05-12 2016-10-25 Microsoft Technology Licensing, Llc Collection of intranet activity data
US9501531B2 (en) 2011-05-18 2016-11-22 Microsoft Technology Licensing, Llc Contextual relevance engine for activity feeds
WO2013009337A2 (en) * 2011-07-08 2013-01-17 Arnold Goldberg Desktop application for access and interaction with workspaces in a cloud-based content management system and synchronization mechanisms thereof
US9122886B2 (en) * 2011-12-20 2015-09-01 Apple Inc. Track changes permissions
US9064237B2 (en) * 2012-01-23 2015-06-23 Microsoft Technology Licensing, Llc Collaborative communication in a web application
US8635021B2 (en) * 2012-05-04 2014-01-21 Google Inc. Indicators for off-screen content
US9479549B2 (en) * 2012-05-23 2016-10-25 Haworth, Inc. Collaboration system with whiteboard with federated display
JP2014021511A (ja) * 2012-07-12 2014-02-03 Sony Corp 表示制御装置、表示制御方法、プログラム、及び通信システム
US9461876B2 (en) * 2012-08-29 2016-10-04 Loci System and method for fuzzy concept mapping, voting ontology crowd sourcing, and technology prediction
US20140101310A1 (en) * 2012-10-04 2014-04-10 Box, Inc. Seamless access, editing, and creation of files in a web interface or mobile interface to a collaborative cloud platform
US20140101571A1 (en) * 2012-10-04 2014-04-10 Lucid Dream Software, Inc. Shared collaborative environment
US20140236964A1 (en) 2013-02-19 2014-08-21 Lexisnexis, A Division Of Reed Elsevier Inc. Systems And Methods For Ranking A Plurality Of Documents Based On User Activity
US9454622B2 (en) * 2013-03-15 2016-09-27 Doron Etzioni Educational hub
US20150199347A1 (en) 2014-01-15 2015-07-16 Microsoft Corporation Promoting documents based on relevance
US10757201B2 (en) 2014-03-01 2020-08-25 Microsoft Technology Licensing, Llc Document and content feed
US10169457B2 (en) 2014-03-03 2019-01-01 Microsoft Technology Licensing, Llc Displaying and posting aggregated social activity on a piece of enterprise content
US9753921B1 (en) * 2015-03-05 2017-09-05 Dropbox, Inc. Comment management in shared documents
US9684798B2 (en) * 2015-05-01 2017-06-20 International Business Machines Corporation Audience-based sensitive information handling for shared collaborative documents
US20160371258A1 (en) 2015-06-22 2016-12-22 Microsoft Technology Licensing, Llc Systems and methods for creating unified document lists
US9730016B2 (en) * 2015-07-31 2017-08-08 Google Inc. Broadcast of content data to geographic areas by devices
US11157149B2 (en) * 2017-12-08 2021-10-26 Google Llc Managing comments in a cloud-based environment

Patent Citations (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102841930A (zh) * 2007-06-19 2012-12-26 微软公司 电子文档的集成共享
CN102047277A (zh) * 2008-05-29 2011-05-04 诺基亚公司 通过利用社会图信息进行内容使用分配的方法、装置和计算机程序产品
CN102981843A (zh) * 2011-11-11 2013-03-20 微软公司 绘图工具中的共同创作
GB2499097A (en) * 2012-01-06 2013-08-07 Box Inc Discussion forum with integrated task assignment function

Also Published As

Publication number Publication date
EP3619662A1 (en) 2020-03-11
US20180321889A1 (en) 2018-11-08
US20190250868A1 (en) 2019-08-15
WO2018204038A1 (en) 2018-11-08
CN110603551A (zh) 2019-12-20
US10303420B2 (en) 2019-05-28

Similar Documents

Publication Publication Date Title
CN110603551B (zh) 文档活动指示符的主动分阶段分发
CN107646120B (zh) 用于内容创建的交互式命令行
US8954863B2 (en) Intelligent social collaboration unified media
US8938690B1 (en) Intelligent social collaboration hover card
US10706013B2 (en) Workflow function of content management system enforced by client device
US9141709B1 (en) Relevant file identification using automated queries to disparate data storage locations
US20100031135A1 (en) Annotation management in enterprise applications
US20140208220A1 (en) System and Method for Contextual and Collaborative Knowledge Generation and Management Through an Integrated Online-Offline Workspace
US9207832B1 (en) Intelligent social collaboration watchlist that visually indicates an order of relevance
AU2017387669B2 (en) Presence, access, and seen state for local copies of shared content items
US11349848B2 (en) Experience for sharing computer resources and modifying access control rules using mentions
US20170090705A1 (en) Conversation and version control for objects in communications
EP3403188A1 (en) Sharing content between electronic documents
US20160173467A1 (en) Document collaboration through networking credentials
US10218709B2 (en) Share permissions and organization of content in an application with multiple levels of organizational hierarchy
US10853326B2 (en) Sharing collections with external teams
US10824973B2 (en) Expert response team assembler solution
US10320727B1 (en) Managing document feedback on a sharing service using a messaging client
US11514058B2 (en) Context rules for a graph
US20180268004A1 (en) Rule hierarchies for graph adaptation
US11822513B2 (en) Work spaces including links to content items in their native storage location
US11606321B1 (en) System for generating automated responses for issue tracking system and multi-platform event feeds
Xu et al. Implementing data provenance in health data analytics software
US9984057B2 (en) Creating notes related to communications
US20150302354A1 (en) Computer system and computer-implemented method for collaborative development of common business models

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