Collaborative document access records and management

By recording and managing user access data in a cloud-based environment and providing an integrated view to display user access history, it solves the problem that reviewer access cannot be effectively managed in collaborative documents, and improves the processing performance and user experience of collaborative document systems.

CN118227576BActive Publication Date: 2025-08-15GOOGLE LLC
View PDF 2 Cites 0 Cited by

Patent Information

Application Number
CN202410336972.1
Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Priority Date
2017-10-11
Filing Date
2018-07-25
Publication Date
2025-08-15
Estimated Expiration
2038-07-25

AI Technical Summary

Technical Problem

During the collaboration of electronic documents, the prior art is unable to effectively record and manage access to multiple reviewers, resulting in inefficient collaboration and inability to contact accessed or unvisited reviewers in a timely manner.

Method used

By recording user access data in a cloud-based environment, providing an integrated view to display accessed and unreached users, and allowing operations such as sending messages or requesting reviews, the integrated view is overlaid in the user interface of collaborative documents, reducing UI switching and improving user experience.

Benefits of technology

It improves the processing performance and user experience of the collaborative document system, reduces network traffic, and enhances the convenience and collaboration efficiency of user interaction.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN118227576B_ABST
    Figure CN118227576B_ABST
Patent Text Reader

Abstract

The present disclosure relates to collaborative document access records and management. A method for providing a user access history to a collaborative document includes: receiving, by a server, a request for a collaborative document from a user device of a user among a plurality of users having permission to access the collaborative document; providing, by the server, the collaborative document to the user device for presentation to the user in a user interface on the user device; receiving, from the user device, a request for a user access history of the collaborative document presented in the user interface on the user device; creating, by the server, a user access history of the collaborative document based on accesses to the collaborative document by one or more of the plurality of users; and providing, by the server, the user access history of the collaborative document to the user device for presentation in the user interface presenting the collaborative document.
Need to check novelty before this filing date? Find Prior Art

Description

[0001] Description of the case

[0002] This application is a divisional application of the patent application with application number 201880066578.3 (PCT / US2018 / 043766) filed with the China Patent Office on April 10, 2020, with an international application date of July 25, 2018, and the invention name being “Collaborative Document Access Records and Management”. Technical Field

[0003] Aspects and implementations of the present disclosure relate to electronic documents, and more particularly, to collaborative document access logging and management. Background Art

[0004] During the development of an electronic document, it is often desirable to have multiple reviewers read, comment on, and / or edit a draft of the electronic document. For example, an author may create a first draft of an electronic document and then send copies of the electronic document to multiple reviewers. In some cases, the author and / or reviewers may not know which reviewers have already accessed the electronic document. Thus, a first reviewer may wait for a second reviewer to access the electronic document when the second reviewer has already accessed the document. Furthermore, without such access information, there may be no direct and / or efficient way to contact reviewers who have or have not yet accessed the electronic document. Summary of the Invention

[0005] Aspects and implementations of the present disclosure improve collaborative document access logging and management technology by recording access data including when a user has accessed a collaborative document and the time of such access. Access data can be obtained without using third-party trackers and stored in a cloud-based environment that provides collaborative documents. The technology can provide an integrated view to identify users who have accessed and have not accessed a collaborative document. Similarly, the integrated view can display available actions corresponding to the user. Available actions can include, for example, sending a message to a user who has accessed or has not accessed a collaborative document, requesting a review from a user who has accessed or has not accessed a collaborative document, etc. In one implementation, the integrated view can be presented in a user interface (UI) that also displays the collaborative document. In this way, the performance of the UI can be improved because there may be no transition between different UIs. In addition, the user experience can be enhanced through a more user-friendly UI.

[0006] In a first aspect of the present disclosure, a method for providing a user access history to a collaborative document is provided. The method includes: receiving, by a server, a request for a collaborative document from a user device of a user among a plurality of users having permission to access the collaborative document; providing, by the server, the collaborative document to the user device for presentation to the user in a user interface on the user device; receiving, from the user device, a request for a user access history of the collaborative document presented in the user interface on the user device; creating, by the server, a user access history of the collaborative document based on accesses to the collaborative document by one or more of the plurality of users; and providing, by the server, the user access history of the collaborative document to the user device for presentation in the user interface presenting the collaborative document.

[0007] The method may further include: receiving a message request from a user device, the message request including a message to be sent to one or more of a plurality of users identified in a user access history in the user interface; and transmitting the message to one or more user devices associated with one or more of the plurality of users.

[0008] The message request may be selected via an indicator on a view including a user access history in a user interface presenting a collaborative document.

[0009] The user access history may identify a plurality of users having permission to access the collaborative document and a timestamp of when each of the plurality of users last viewed the collaborative document.

[0010] The user access history to the collaborative document may be provided in response to determining that viewing of access history to the collaborative document is enabled for one or more of the plurality of users.

[0011] The user access history to the collaborative document may be provided in response to determining that global access history viewing to the collaborative document including the collaborative document is enabled for one or more users of the plurality of users.

[0012] The method may further include receiving a request from a user device to disable showing a user access history to a collaborative document associated with a user of the user device, receiving a subsequent request for a user access history to a collaborative document presented in a user interface on the user device from a second user device of a second user among the multiple users, creating, by the server, a user access history to the collaborative document based on access to the collaborative document by one or more users other than the user among the multiple users, and providing, by the server, the user access history to the collaborative document to the second user device for display in the user interface presenting the collaborative document.

[0013] The method may further include including in the user access history group metadata associating one or more users of the plurality of users with a group.

[0014] The method may further include receiving one or more access requests to the collaborative document at the server, and storing access data for each of the one or more access requests, the access data for each of the one or more access requests including an identity of one of a plurality of users associated with the corresponding access request and a time when the corresponding access request was received.

[0015] Providing the user access history to the collaborative document to the user device for display in a user interface presenting the collaborative document may include causing the user access history to be displayed in an integrated view overlaid on a portion of the collaborative document presented in the user interface.

[0016] The method may further include, in response to receiving a request for a user access history of the collaborative document, determining whether a user associated with a user device providing the request for the user access history has editing permissions, and in response to the user having editing permissions, providing the user access history.

[0017] In a second aspect of the present disclosure, a method for presenting a user access history to a collaborative document is provided. The method includes: presenting, by a user device, a user interface displaying the collaborative document, the user interface including a visual indicator representing the user access history; detecting, by the user device, a selection of the visual indicator representing the user access history; requesting, by the user device, the user access history to the collaborative document from a server; and, in response to receiving the user access history from the server, presenting an updated user interface displaying the user access history and the collaborative document.

[0018] The method may further include presenting in the consolidated view a user access history, the user access history identifying one or more users who have access to the collaborative document and including an indication of when the one or more users most recently accessed the collaborative document.

[0019] The method may further include presenting within the integrated view one or more selectable options for performing an action for each of the one or more users.

[0020] The method may further include performing an action after selecting one or more selectable options, wherein the action includes at least one of sending a message to one or more users, requesting feedback from one or more users, or alerting one or more users of an update to the collaborative document.

[0021] The method may further include overlaying the integrated view over a portion of the collaborative document presented in the user interface.

[0022] The method may further include displaying an indication of when a group including one or more of the plurality of users accessed the collaborative document based on group metadata included in the user access history, the indication corresponding to an access by one of the plurality of users having a latest timestamp of the collaborative document.

[0023] The indication may include a generalized time frame for when one or more users most recently accessed the collaborative document.

[0024] The method may further include receiving a selection for viewing user access history settings, presenting a user access privacy settings view including at least one of selectable options for enabling or disabling viewing of user access history of collaborative documents associated with the user, receiving a selection for disabling viewing of user access history of collaborative documents associated with the user, and providing an indication of the selection for disabling viewing of user access history of collaborative documents associated with the user to the server; and receiving from the server a user access history excluding the user access history of collaborative documents associated with the user.

[0025] The method may further include: receiving a selection for viewing user access history settings; presenting a user access history settings view including at least one selectable option for enabling or disabling viewing of a user access history associated with the user for each document to which the user has access, receiving a selection for disabling viewing of a user access history associated with the user for each document to which the user has access, and providing an indication to the server of the selection for disabling viewing of a user access history associated with the user for each document to which the user has access, and receiving from the server a user access history that excludes at least a user access history associated with the user for collaborative documents.

[0026] The method may further include presenting, by the user device, an information view that provides an indication to a user of the user device to enable user access history and provides selectable options for adjusting settings related to the user access history.

[0027] In a third aspect of the present disclosure, a system is provided. The system includes a memory device storing instructions and a processing device coupled to the memory device, wherein the processing device executes the instructions to receive a request for a collaborative document from a user device of a user among a plurality of users having permission to access the collaborative document, provide the collaborative document to the user device for presentation to the user in a user interface on the user device, receive a request for a user access history of the collaborative document presented in the user interface on the user device, create a user access history of the collaborative document based on accesses to the collaborative document by one or more of the plurality of users, and provide the user access history of the collaborative document to the user device for presentation in the user interface presenting the collaborative document.

[0028] Providing a user access history to the collaborative document to a user device for display in a user interface presenting the collaborative document may include the processing device further causing the user access history to be displayed in an integrated view overlaid on a portion of the collaborative document presented in the user interface.

[0029] In a fourth aspect of the present disclosure, one or more tangible, non-transitory computer-readable media are provided that store instructions that, when executed by one or more processing devices, cause the one or more processing devices to present a user interface displaying a collaborative document, the user interface including a visual indicator representing a user access history, detect selection of the visual indicator representing the user access history, request the user access history to the collaborative document from a server, and, in response to receiving the user access history from the server, present an updated user interface displaying the user access history and the collaborative document.

[0030] The one or more processing devices may also be caused to present a user access history in the consolidated view that identifies one or more users who have access to the collaborative document and includes an indication of when the one or more users most recently accessed the collaborative document. BRIEF DESCRIPTION OF THE DRAWINGS

[0031] The aspects and implementations of the present disclosure will be more fully understood from the detailed description given below and from the accompanying drawings of various aspects and implementations of the present disclosure, which, however, should not be construed as limiting the present disclosure to specific aspects or implementations, but are for explanation and understanding only.

[0032] Figure 1 An example of a system architecture for implementation of the present disclosure is shown.

[0033] Figure 2 An example user interface presenting a collaborative document according to one implementation of the present disclosure is shown.

[0034] Figure 3 A flow chart depicting aspects of a method for storing access data in a cloud-based environment according to one implementation of the present disclosure is depicted.

[0035] Figure 4 An example of an information view displayed when an editor accesses a collaborative document according to one implementation of the present disclosure is shown.

[0036] Figure 5 Another example of an information view displayed when a non-editor accesses a collaborative document according to one implementation of the present disclosure is shown.

[0037] Figure 6 An example of user access history displayed in a user interface presenting a collaborative document according to one implementation of the present disclosure is shown.

[0038] Figures 7A-7D An example of using a visual indicator representing a user's access history on a user interface according to one implementation of the present disclosure is shown.

[0039] Figure 8 A flowchart depicts aspects of a method for a server to provide a user access history to a collaborative document for display in a user interface presenting the collaborative document, according to one implementation of the present disclosure.

[0040] Figure 9 A flowchart depicting aspects of a method for a user device to present user access history and collaborative documents according to one implementation of the present disclosure is provided.

[0041] Figures 10A-10B An example of executing an action corresponding to a user in a user access history according to an implementation of the present disclosure is shown.

[0042] Figure 11 A flowchart depicts aspects of a method for a server to receive a message request from a user device displaying a collaborative document and execute the message request according to one implementation of the present disclosure.

[0043] Figure 12 Depicted is a flow chart illustrating aspects of a method for a user device to perform an action based on selectable options presented in a consolidated view including a user's access history, according to one implementation of the present disclosure.

[0044] Figures 13A-13B An example of using user groups in user access history according to one implementation of the present disclosure is shown.

[0045] Figure 14 An example of displaying groups to which a user has no access rights in a user access history according to one implementation of the present disclosure is shown.

[0046] Figure 15 Another example of displaying groups to which a user has no access rights in a user access history according to one implementation of the present disclosure is shown.

[0047] Figures 16A-16D An example of using a user access privacy settings view to control settings associated with a user access history according to one implementation of the present disclosure is shown.

[0048] Figures 17A-17E An example of using a general settings view to control settings associated with a user access history according to one implementation of the present disclosure is shown.

[0049] Figure 18A flow chart depicting aspects of a method for a server to filter out users from user access histories based on privacy settings according to one implementation of the present disclosure is depicted.

[0050] Figure 19 A flow chart depicting aspects of a method for a user device to allow a user to disable viewing of user access history for a collaborative document according to one implementation of the present disclosure is provided.

[0051] Figure 20 Depicted is a flow chart of aspects of a method for a user device to allow a user to disable viewing of a user access history for any collaborative document associated with the user, according to one implementation of the present disclosure.

[0052] Figure 21 An example of a view indicating that non-editors cannot view user access history to a collaborative document according to one implementation of the present disclosure is shown.

[0053] Figure 22 A flowchart depicting aspects of a method for a server to determine whether to provide a user access history to a user according to one implementation of the present disclosure is depicted.

[0054] Figure 23 Depicted is a block diagram of an example computing system operating in accordance with one or more aspects of the present disclosure. DETAILED DESCRIPTION

[0055] A collaborative document system can allow electronic document owners to invite other users to join as collaborators on electronic documents stored in a cloud-based environment. Electronic documents refer to media content used in electronic form. Media content can include text, tables, videos, images, graphics, slides, charts, software programming code, designs, lists, plans, blueprints, maps, etc. Electronic documents that are granted concurrent access and / or editing permissions to users may be referred to herein as collaborative documents. Collaborative documents can be provided to collaborators' user devices by one or more servers in the cloud-based environment. Each collaborator can be associated with a user type (e.g., editor, reviewer, viewer, etc.). Collaborators can be provided with different views and functionality based on their user type, allowing them to edit, comment, review, or simply view collaborative documents. Once granted access to a collaborative document, a collaborator can access the collaborative document to perform the actions permitted by their user type.

[0056] Traditionally, user access history for collaborative documents is not recorded and displayed. In addition, some systems may use separate user interfaces (UIs) to display electronic documents and certain recorded data, which may reduce system performance by switching between UIs. Systems may also use third-party trackers (e.g., files placed on a user's computer (in a browser) by the system's server when a user accesses the system, and which have a domain of a third party that records the use of the system) to record the required data, thereby adding a separate connection point in the network to retrieve data and reducing system performance.

[0057] Various aspects and implementations of the present disclosure are directed to a collaborative document system that addresses at least these deficiencies, among others, by recording and managing user access histories of collaborative documents. That is, the system improves the human-computer interaction process by recording data related to the dynamic state of collaborative documents and providing the data to users interacting with the collaborative documents (e.g., users who are editing the collaborative documents). The user access history of a collaborative document, which changes dynamically each time the collaborative document is accessed, can provide various insights to the author and / or collaborators of the collaborative document by viewing when others accessed the collaborative document. For example, a senior employee in an organization may be waiting for a junior employee to access a collaborative document before accessing the document, and vice versa. Displaying user access histories to employees can help reduce the number of desired changes that are undone and / or conflicting changes between versions of a collaborative document. Additionally, providing user access histories can provide a more streamlined process for collaborators to develop, edit, review, and / or view collaborative documents.

[0058] In one implementation, a collaborative document can be shared with one or more users (e.g., collaborators). As described above, users can have various user types, such as editors, reviewers, or viewers. Editors can access collaborative documents to make changes to them, reviewers can access documents to suggest changes or make comments on them, and viewers can access documents to view them. A server can collect these accesses in a cloud-based environment that provides collaborative documents and record them as user access data without using a third-party tracker. The user access data can include the users who accessed (e.g., viewed) the collaborative document and the time at which the users accessed the collaborative document.

[0059] A user access history can be created based on the user access data, and the user access history can be provided for display in a user interface that can also present the collaborative document on the user device. The user access history can be displayed in an integrated view that shows users who have access to the collaborative document and an indication of whether the user has accessed the collaborative document and the number of times the user has accessed the document. Furthermore, the integrated view can include available actions corresponding to users in the user access history (e.g., send a message, request a review, alert an update).

[0060] In one implementation, users with certain user types (e.g., editors) can be allowed to view the user access history of users who have permission to access collaborative documents, while users without these certain user types cannot view the user access history. In another implementation, users who have permission to access collaborative documents or use the collaborative document system can manage their privacy settings by prohibiting user access history from being recorded at the level of individual collaborative documents and / or the level of global collaborative documents. In addition, users in the user access history can be grouped based on group metadata to organize the information presented in the integrated view. For example, users of certain teams or departments in an organization can be divided into different groups.

[0061] In one implementation, the integrated view can be displayed as an overlay on a portion of the collaborative document that is also presented in the UI. Displaying the user access history in the same UI as the collaborative document can improve the processing of the collaborative document system because there are fewer transitions between a UI that only displays collaborative documents and a UI that only displays user access history. In addition, network traffic can be reduced because repeated requests and / or responses for transitioning between UIs that separately display collaborative documents and user access history can be eliminated. The integrated view of the user access history can also enhance the UI by conveniently providing useful information and actionable options in the UI without transitioning to a separate UI. As a result, the user experience of the UI can be improved.

[0062] Figure 1 An example of a system architecture 100 for an implementation of the present disclosure is shown. The system architecture 100 includes a cloud-based environment 110 connected to user devices 120A-120Z via a network 130. The cloud-based environment 110 refers to a collection of physical machines that host applications that provide one or more services (e.g., collaborative document access) to multiple user devices 120 via the network 130. The network 130 can be a public network (e.g., the Internet), a private network (e.g., a local area network (LAN) or a wide area network (WAN)), or a combination thereof. The network 130 can include a wireless infrastructure, which can be provided by one or more wireless communication systems (e.g., wireless fidelity (WiFi) hotspots connected to the network 130 and / or wireless carrier systems that can be implemented using various data processing equipment, communication towers, etc.). Additionally or alternatively, the network 130 can include a wired infrastructure (e.g., Ethernet).

[0063] The cloud-based environment 110 may include one or more servers 112A-112Z and a data store 114. The data store 114 may be separate from and communicatively coupled to the servers 112A-112Z, or the data store 114 may be part of one or more of the servers 112A-112Z. The data store 114 may store collaborative documents 116. The collaborative documents 116 may be spreadsheet documents, slide documents, word processing documents, or any suitable electronic documents (e.g., electronic documents including text, tables, videos, images, graphics, slides, charts, software programming code, designs, lists, plans, blueprints, maps, etc.) that can be shared with users.

[0064] A collaborative document 116 can be created by an author, and the author can share the collaborative document 116 with other users (e.g., collaborators). Sharing a collaborative document 116 can grant other users permission to access the collaborative document 116. Sharing a collaborative document 116 can include notifying the other users of the collaborative document 116 via a message (e.g., an email) that includes a link to the collaborative document 116. The level of permission granted to each user can be based on the user type of each particular user. For example, a user with an editor user type may be able to open a collaborative document 116 and make changes directly to the collaborative document 116. A user with a reviewer user type can leave comments to suggest changes in the collaborative document 116.

[0065] The servers 112A-112Z can be physical machines (e.g., server machines, desktop computers, etc.) each including one or more processing devices communicatively coupled to memory devices and input / output (I / O) devices. One or more of the servers 112A-112Z can provide a collaborative document environment 122A-122Z to the user devices 120A-120Z. The server 112A-112Z selected to provide the collaborative document environment 122A-122Z can be based on certain load balancing techniques, service level agreements, performance metrics, etc. The collaborative document environment 122A-122Z can enable users using different user devices 120A-120Z to simultaneously access a collaborative document 116 to review, edit, view, and / or propose changes to the collaborative document 116 in corresponding user interfaces 124A-124Z presenting the collaborative document 116. In an implementation, the user interfaces 124A-124Z can be web pages presented by a web browser and displayed in a web browser window on the user devices 120A-120Z. In another implementation, the user interfaces 124A-124Z may be included in a standalone application that is downloaded to the user devices 120A-120Z.

[0066] User devices 120A-120Z may include one or more processing devices communicatively coupled to a memory device and an I / O device. User devices 120A-120Z may be desktop computers, laptop computers, tablet computers, mobile phones (e.g., smartphones), or any other suitable computing device. A user who is invited and becomes a collaborator on collaborative document 116 may request access to collaborative document 116. Thus, user device 120A associated with the user may request collaborative document 116 from cloud-based environment 110. In one implementation, the request may include user access data 117, such as the user who accessed collaborative document 116 and the time of access. User access data 117 may be stored in data store 114. One of servers 112A-112Z may provide collaborative document 116 to requesting user device 112A for display in user interface 122A. In one implementation, when user device 120A accesses collaborative document 116 (e.g., by viewing it), user device 120A may send a file read receipt to cloud-based environment 110. The file read receipt may include user access data 117 , and the user access data 117 may be stored in the data store 114 .

[0067] In addition, the collaborative document environments 122A-122Z can provide users with certain privacy settings for controlling whether their access history to the collaborative document 116 and / or other collaborative documents can be viewed. For example, a user can explicitly deny the display of their access history to the collaborative document 116 and / or any collaborative document. The user device 120A can send one or more settings 119 (e.g., global access history settings, document-level access history settings) to the cloud-based environment 110 for storage in the data store 114.

[0068] Each of the servers 112A-112Z can host a user access history module (118A-118Z). The user access history modules 118A-118Z can be implemented as computer instructions that can be executed by one or more processing devices on each of the servers 112A-112Z. The user access history modules 118A-118Z can receive a request for a user access history of a collaborative document 116. The user access history modules 116A-116Z can use the user access data 117 to create a user access history by identifying users with permission to access the collaborative document 116 and determining the number of times the user accessed the collaborative document 116. The user access history modules 116A-116Z can exclude the user access data 117 of users who have not consented to have their access history displayed based on the settings 119.

[0069] The user access history can be provided to the requesting user device 120A for display in the user interface 124A presenting the collaborative document 116. In one implementation, the user access history can be displayed on a portion of the collaborative document 116 in the user interface 124A. The user access history can be displayed in an integrated view that specifies the users who have access to the collaborative document 116, an indication of when the user accessed the collaborative document 116 or an indication of whether the user has not yet accessed the collaborative document 116, and one or more actions corresponding to the user. For example, an action can include sending a message to the user, and the viewer can initiate the action from the integrated view in the user interface 124A. In addition, as described below, users can be grouped into groups in the integrated view based on group metadata included in the user access history.

[0070] The user access history may be provided to users of certain user types (e.g., editors), and may be blocked from being presented to users of other user types (e.g., non-editors). Furthermore, based on the type of account associated with the collaborative document environment 122A, users may be eligible to view the user access history. For example, one type of account may include a premium account that is eligible to view the user access history. Other types of accounts may include basic accounts and consumer accounts that are not eligible to view the user access history.

[0071] Figure 2 An example user interface presenting a collaborative document 116 according to one implementation of the present disclosure is shown. Although the collaborative document 116 includes a slide presentation document as an example, it should be understood that the user access history technology of the present disclosure can be applied to spreadsheet documents, word processing documents, or any suitable collaborative document. The collaborative document 116 is displayed in the user interface 124A of the collaborative document environment 122A on the user device 120A. The collaborative document 116 may have been created by an author / owner who shared the collaborative document 116 with other users. Alternatively, the author may share the collaborative document 116 with a domain or a group of users and may grant permission to any user in the domain or group to access the collaborative document 116. Users who are granted permission to access the collaborative document 116 can each request and access the collaborative document 116 on the corresponding user devices 120A-120Z. For example, the user "Ted House" may have accepted an invitation to join as a collaborator on the collaborative document 116. The user can then request access to the collaborative document 200 via an input selection in the collaborative document environment 122A. This will be about Figure 3 Describe further.

[0072] Figure 3A flowchart depicts aspects of a method 300 for storing user access data 117 in a cloud-based environment 110 according to one implementation of the present disclosure. The method 300 and its individual functions, routines, subroutines, or operations may be performed by one or more processing devices of a computer device executing the method. In some implementations, the method 300 may be performed by a single processing thread. Alternatively, the method 300 may be performed by two or more processing threads, each thread performing one or more individual functions, routines, subroutines, or operations of the method. In an illustrative example, the processing threads implementing the method 300 may be synchronized (e.g., using semaphores, critical sections, and / or other thread synchronization mechanisms). Alternatively, the processes implementing the method 300 may be performed asynchronously relative to each other.

[0073] For simplicity of explanation, the method of the present disclosure is depicted and described as a series of actions. However, the actions according to the present disclosure may occur in various orders and / or simultaneously, and have other actions not presented and described herein. In addition, it may not be necessary for all the actions shown to implement the method according to the disclosed subject matter. In addition, those skilled in the art will understand and appreciate that the method can be represented as a series of interrelated states via a state diagram or event. In addition, it should be understood that the method disclosed in this specification can be stored on an article of manufacture so that such a method can be transmitted and transferred to a computing device. The term "article of manufacture" used herein is intended to cover computer programs accessible from any computer-readable device or storage medium. In one implementation, method 300 can be performed by one or more user access history modules 118A-118Z executed by one or more processing devices of servers 112A-112Z in a cloud-based environment 110.

[0074] Method 300 may begin at block 302. At block 302, a processing device may receive one or more access requests for a collaborative document 116. The access requests may be received from one or more user devices 120A-120Z, and each access request may include certain access data 117, such as the identity of a user associated with the corresponding access request and a timestamp (date / time) at which the corresponding access request was made. In an implementation, a user device 120A-120Z that accesses (e.g., opens the collaborative document 116 for viewing) the collaborative document 116 may send a file read receipt to a cloud-based environment, and the file read receipt may include the access data 117.

[0075] At block 304, the processing device may store access data 117 for each of the one or more access requests or for the file read receipt in the data store 114. Additionally, the processing device may provide the collaborative document 116 to be presented in one or more user interfaces 124A-124Z of the requesting user devices 120A-120Z.

[0076] Figure 4 An example of an information view 400 displayed when an editor accesses a collaborative document 116 according to one implementation of the present disclosure is shown. The information view 400 may include a promotional message 402 that appears in the user interface 124A along with the collaborative document 116 when the editor first accesses the collaborative document 116. Because editors may be allowed to view a history of user accesses to the collaborative document 116, the promotional message 402 may inform the editor that they can see which collaborators have accessed their collaborative document 116 and which collaborators have not yet accessed the collaborative document 116. In addition, the promotional message 402 may inform the editor that they can hide their access history if they wish. In the example, the following information about Figure 17A-20 4. If the user wishes to close the information view 400, the user may select an "OK" button 404, and the user interface 124A may remove the information view 400 and display only the collaborative document 116. If the user wishes to view a history of user access to the collaborative document 116, the user may select an "OPEN" button 406, and the user interface 124A may display the user access history, as described herein. In implementations, the "OPEN" button 406 may be referred to as a visual indicator.

[0077] Figure 5 Another example of an information view 500 displayed when a non-editor (e.g., viewer, reviewer) accesses a collaborative document 116 according to one implementation of the present disclosure is shown. The information view 500 may include a promotional message 502 that appears when a non-editor first accesses a collaborative document 116. Because non-editors are not allowed to view user access histories to collaborative documents 116, the promotional message 502 may inform the non-editor that certain users may see the user access histories of collaborators to the collaborative document 116. Additionally, the promotional message 502 may inform editors that they may hide their access histories if they wish. In the example, the following information may be provided regarding Figure 17A-20 If the user desires to close information view 500 , the user may select “OK” button 504 , and user interface 124A may remove information view 500 and display only collaborative document 116 .

[0078] Figure 6 An example of a user access history 600 displayed in a user interface 124A presenting a collaborative document 116, according to one implementation of the present disclosure, is shown. As shown, the user access history 600 can be displayed in an integrated view 602 in the user interface 124A. In one example, the integrated view 602 can be overlaid on a portion of the user interface 124A displaying the collaborative document 116. The user interface 124A can utilize certain techniques that can be applied to the underlying collaborative document 116, such as blurring or masking, to draw attention to the integrated view 602. It should be noted that the collaborative document environment 122A does not need to transition to a different UI to display the user access history 600, which can enhance the performance of the collaborative document environment 122A and the network 130. Furthermore, displaying the user access history 600 in the integrated view 602 along with the collaborative document 116 in the same user interface 124A can enhance the user experience of the collaborative document environment 122A by conveniently placing required information and providing a more seamless experience.

[0079] The consolidated view 602 may include the titles (604) of the collaborators who were granted access to the collaborative document 116 when the collaborative document 116 was last viewed (606), and the corresponding actions (e.g., sending a message) (608) of the user. The user can sort the user access history by any title (ascending / descending). For example, the user access history 600 is sorted in descending order by the title associated with the time when the collaborative document 116 was last viewed (606).

[0080] Additionally, there may be different domains, each of which includes users or user groups that have access to the collaborative document 116. Thus, the user can select the domain for which the user access history 600 is displayed. In the depicted example, the user access history 600 is displayed for collaborators in "domain1.com." In another example, the user access history 600 can be displayed for any user within or outside the domain that has access to the collaborative document 116.

[0081] The user access history 600 may display the access history of users who have not been explicitly denied permission to have their access history to the collaborative document 116 or any collaborative document displayed. If a user chooses to hide their user access history at the document level for the collaborative document 116 or at the global document level for any collaborative document, the user access history 600 may exclude the user access history to the collaborative document 116 associated with that user.

[0082] Each row item in the user access history 600 may include a user icon 610 selected by a particular user or a default icon, the user's identity 612 (e.g., name), an identifier 614 of whether the name (e.g., "You") is associated with the user viewing the user access history 600, an indication 616 of when the user accessed the collaborative document 116, and selectable options 618 that enable the corresponding user to perform an action. The selectable options 618 may be any suitable UI element capable of making a selection (e.g., a check box, a radio button, a slider, a drop-down list, etc.).

[0083] In one implementation, the indication 616 may indicate the time when the user most recently accessed the collaborative document 116. In one implementation, the indication 616 may include a generalized time period during which the user accessed the collaborative document 116. The generalized time period may provide comfort to some users who do not like the idea of having the exact time when they accessed the collaborative document 116 visible to other collaborators. For example, the indication 616 with the generalized time period depicted in the user access history 600 includes "Within the hour," "This morning," "Monday," and "Nov. 3." Similarly, the indication 616 may indicate whether the user has not yet accessed the collaborative document 116 ("Never").

[0084] In some cases, the user access history 600 can provide insights to the user to determine who viewed the collaborative document 116 and when, and who did not view the collaborative document 116. The user can use the optional option 618 to take action by sending a message to, for example, a user (e.g., "Bill Webber") who has not viewed the collaborative document 116 (described below with respect to Figure 11-1 3). Other actions performed using the integrated view 602 may include, for example, requesting feedback, alerting selected users of changes to the collaborative document 116, etc. A user may update their privacy settings by clicking a “PRIVACY SETTINGS” button 620 provided in the integrated view 602.

[0085] Figures 7A-7DAn example of using a visual indicator 700 representing a user's access history on the user interface 124A according to one implementation of the present disclosure is shown. The visual indicator 700 can be a graphic (e.g., a graphic representation of an eye), text (e.g., "Your access history is shown" or "Your access history is not shown"), an image, etc. The visual indicator 700 can be located anywhere on the canvas of the user interface 124A and is not limited to the specific location depicted. In other implementations, a drop-down menu can provide a link to display the user's access history 600 or privacy settings associated with the user's access history 600.

[0086] Figure 7A The visual indicator 700 is illustrated as a graphical representation of an eye, which can indicate that access history is enabled for a user or any collaborative document associated with the collaborative document 116. Thus, other collaborators may be able to see when a user accesses a collaborative document 116. In one implementation, selecting the visual indicator 700 can open a consolidated view 602 including the user access history 600 in the user interface 124A displaying the collaborative document 116.

[0087] In another implementation, selecting or hovering over the visual indicator 700 may cause a menu to appear that provides a link 702 to the user's access history 600, such as Figure 7B As shown. A menu can be displayed in the user interface 124A presenting the collaborative document 116. If the user selects the link, the user access history 600 can be displayed. In an implementation, if the user selects or hovers over the visual indicator 700, a menu can appear that provides a link 702 for the user to access privacy settings. If the user selects the link 702, a view including the privacy settings can be displayed within the user interface 124A presenting the collaborative document 116.

[0088] In yet another implementation, Figure 7C 7. Depicted in FIG. 7 is that selecting or hovering over the visual indicator 700 may cause a menu to appear that provides a selectable option 704 to change settings 119 associated with the access history to the collaborative document 116 or any collaborative document. When the user changes the selectable option 704 to disable displaying the user's access history to the collaborative document, as shown in FIG. Figure 7D As shown in , the visual indicator 700 may change (eg, an eye with a line through it) to indicate that access history viewing is disabled.

[0089] Figure 8A flowchart depicts aspects of a method 800 for a server to provide a user access history 600 of a collaborative document 116 for display in a user interface 124A presenting the collaborative document 116, according to one implementation of the present disclosure. Although the method 800 is discussed using the user interface 124A, it should be understood that any other user interfaces 124B-124Z may be used instead of or in addition to the user interface 124A to display the user access history 600 and the collaborative document 116. For example, multiple user interfaces 124A-124Z may simultaneously display the user access history 600 and the collaborative document 116. The method 800 may be performed in the same or similar manner as the method 300 described above. The method 800 may be performed by a processing device of one or more of the servers 112A-112Z executing the user access history modules 118A-118Z in the cloud-based environment 110.

[0090] Method 800 may begin at block 802. At block 802, a processing device may receive a request for a collaborative document 116. The request may be received from a user device 120A executing a collaborative document environment 122A. Upon receiving the request, the collaborative document 116 may be opened in one or more collaborative document environments 122B-122Z on other user devices 120B-120Z. In one implementation, user access data 117 included in the access request may be stored by the processing device in the data store 114.

[0091] At block 804, the processing device may provide the collaborative document 116 for presentation to the user in the user interface 124A. For example, the processing device may retrieve the collaborative document 116 from the data store 114 and transmit the collaborative document 116 to the collaborative document environment 122A executing on the user device 120A. The collaborative document environment 122A may present the collaborative document 116 in the user interface 124A. In an implementation, when the user accesses the collaborative document 116, the user device 120A may send a file read receipt to the cloud-based environment 110, which may store user access data 117 in the data store 114.

[0092] At block 806, the processing device may receive a request for the user access history 600 of the collaborative document 116 presented in the user interface 124A. The user may select a visual indicator of the user access history (e.g., visual indicator 700) on the canvas of the user interface 124A from the information view 400 (e.g., an "OPEN" button 406) or from a drop-down menu (e.g., a link).

[0093] At block 808, the processing device may create a user access history 600 for the collaborative document 116 based on the user access data 117, which includes accesses to the collaborative document 116 by one or more users. The processing device may retrieve the user access data 117 from the data store 114 and identify the user accesses to the collaborative document 116. Furthermore, the processing device may retrieve the settings 119 and determine which users have explicitly declined to have their user access histories displayed. The processing device may exclude from the user access history 600 the user access data 117 associated with users who have explicitly declined. The created user access history 600 may include the identities of users who have access to the collaborative document 116 and indicators of when the users have accessed the collaborative document 116 or whether the users have not yet accessed the collaborative document 116. In one implementation, the user access history 600 may also include group metadata specifying the identities of the groups that include the users who have access to the collaborative document 116.

[0094] At block 810, the processing device may provide the user access history 600 to the collaborative document 116 for display in the user interface 124A presenting the collaborative document 116. The user access history 600 may be displayed in the integrated view 602, as in Figure 6 In the user access history 600, there may be selectable options to perform one or more actions corresponding to each user. For example, if a user has not accessed the collaborative document 116 since the major change was made, the user may send a message to that user to encourage them to access (e.g., review, edit, view) the collaborative document 116.

[0095] Figure 9 A flowchart depicts aspects of a method 900 for a user device 120A to update a user interface 124A to present a user access history 600 along with a collaborative document 116, according to one implementation of the present disclosure. Although the method 900 is discussed using the user interface 124A, it should be understood that any other user interfaces 124B-124Z may be used instead of or in addition to the user interface 124A to display the user access history 600 and the collaborative document 116. For example, multiple user interfaces 124A-124Z may simultaneously display the user access history 600 and the collaborative document 116. The method 900 may be performed in the same or similar manner as described above with respect to the method 300. Furthermore, the method 900 may be performed by a processing device of one or more of the user devices 120A-120Z executing the collaborative document environments 122A-122Z. For clarity, reference is made to the user device 120A throughout the discussion of the method 900.

[0096] Method 900 may begin at block 902. At block 902, the processing device may present a user interface 124A displaying a collaborative document 116. The user interface 124A may include a visual indicator representing the user access history 600. In some examples, the visual indicator may be a graphic (e.g., the visual indicator 700 may be a graphic). Figures 7A-7D 700), images, text, buttons (e.g., Figure 4 400 or any other button in the user interface 124A), a link (e.g., in a drop-down menu or on the canvas of the user interface 124A), or any other suitable visual indicator representing the user access history 600.

[0097] At box 904, the processing device may detect a selection of a visual indicator representing the user access history 600. In one implementation, the user may select the visual indicator using a cursor, or the user may tap the visual indicator on a touch screen when the user device 120A implements a touch screen. At box 906, the processing device may request the user access history 600 for the collaborative document 116 from the server 112A. For example, in response to the selection of the visual indicator, the processing device may send a request for the user access history 600 to the server 112A (e.g., any one of the servers 112A-112Z in the cloud-based environment 110). At box 908, the processing device may update the user interface 124A to present the user access history 600 with the collaborative document 116 in response to receiving the user access history 600 from the server, as shown in FIG. Figure 6 shown.

[0098] As shown in the integrated view 602, the user can perform one or more actions corresponding to the user in the user access history 600. Figures 10A-10B 6 shows an example of executing an action corresponding to a user in the user access history 600 according to one implementation of the present disclosure. Figures 10A-10B An example of the action of sending a message is depicted, but it should be understood that other actions can be performed similarly to those shown. In particular, Figure 10A The user is depicted selecting several selectable options 618 in the consolidated view 602 displaying the user access history 600. The user access history 600 remains displayed in the user interface 124A along with the collaboration view 116. The user selects selectable options 618 for "Joe Smith," "Jane Doe," and "Bill Webber."

[0099] Selecting one or more selectable options causes a bar 1000 to appear in the header of the integrated view 602. The bar may provide an indication 1002 of how many items (users) have been selected via the selectable options 618, a "CANCEL" button 1004 to cancel the selected action, and a "SEND MESSAGE" button 1006. When the user is ready to send a message to the desired user, the user may select (e.g., select circle 1008) the "SEND MESSAGE" button 1006. The selection may be made via any suitable input device (e.g., a mouse, a touch screen, a voice command via a microphone).

[0100] Selecting the "SEND MESSAGE" button 1006 causes the message view 1010 to appear, as shown. Figure 10B . Although message view 1010 is shown for explanation purposes, it should be understood that any suitable action configuration view may be shown in user interface 124A along with collaboration document 116. Message view 1010 may be displayed in user interface 124A along with collaboration document 116. The selected users ("Joe Smith," "Jane Doe," and "Bill Webber") are displayed in recipient section 1012. In an implementation, the user may add additional recipients to the message as desired. Subject section 1014 may include the subject of the message and may be modified by the user. In an implementation, the subject may default to the title of collaboration document 116. Message section 1016 may enable the user to enter the text of the message they wish to send to the selected users. In an implementation, the user may be able to upload attachments to the message, set deadlines (e.g., a date by which feedback is expected, a date by which access is expected, etc.), and the like. When the user is satisfied with the message, the user may click a "SEND MESSAGE" button 1018, which may cause the message to be sent to one or more servers 112A-112Z of the cloud-based environment 110, as described below.

[0101] Figure 11 A flowchart depicts aspects of a method 1100 for a server 112A (e.g., any of the servers 112A-112Z in the cloud-based environment 110) to receive a message request from a user device 120A to display a collaborative document 116 and send a message, according to one implementation of the present disclosure. The method 1100 may be performed in the same or similar manner as described above with respect to the method 300. Furthermore, the method 1100 may be performed by a processing device of one or more servers 112A-112Z executing the user access history modules 118A-118Z in the cloud-based environment 110.

[0102] Method 1100 may begin at block 1102. At block 1102, a processing device may receive a message request that includes a message to be sent to one or more users displayed in user access history 600 in user interface 124A. As described above, a user viewing user access history 600 may select one or more selectable options 618 corresponding to the users to whom the user wishes to send a message. The user may complete the message to the selected users in message view 1010 and may send the message request from user device 120A by clicking a "SEND MESSAGE" button 108. At block 1104, the processing device may transmit the message to one or more user devices (e.g., 120B-120Z) associated with the one or more users designated as recipients in the message.

[0103] Figure 12 A flowchart depicts aspects of a method 1200 for a user device 120A to perform an action based on a selectable option 618 presented in a consolidated view 602 including a user access history 600, according to one implementation of the present disclosure. Although the method 1200 is discussed using the user interface 124A, it should be understood that any other user interfaces 124B-124Z may be used instead of or in addition to the user interface 124A to display the user access history 600 and the collaborative documents 116. For example, multiple user interfaces 124A-124Z may simultaneously display the user access history 600 and the collaborative documents 116. The method 900 may be performed in the same or similar manner as described above with respect to the method 300. The method 1200 may be performed by one or more processing devices of the user devices 120A-120Z executing the collaborative document environments 122A-122Z. For clarity, reference is made to the user device 120A throughout the discussion of the method 1200.

[0104] The method 1200 may begin at block 1202. At block 1202, the processing device may present the user access history 600 in the consolidated view 602. The user access history 600 may specify one or more users that may access the collaborative document 116, as well as an indication of when the one or more users most recently accessed the collaborative document 116. Furthermore, as described above, the indication may be a generalized time period.

[0105] At block 1204 , the processing device may present one or more selectable options 618 within the consolidated view 602 to perform an action for each of the one or more users.

[0106] At block 1206, the processing device may receive a selection of one or more selectable options 618 associated with one or more users. For example, a user may select one or more selectable options 618 in the integrated view 602, and the bar 1000 may appear in the integrated view 602. The user may select a perform action button (e.g., a "SEND MESSAGE" button 1006).

[0107] At block 1208, in response to the user selecting a perform action button (e.g., the "SEND MESSAGE" button 1006), the processing device may display an action configuration view (e.g., the message view 1010) with the collaboration document 116 in the user interface 124A. In some implementations, selecting the perform action button (e.g., the "SEND MESSAGE" button 1006) may cause the action to be performed without displaying the action configuration view. The user may customize the action (e.g., the message) in the action configuration view while it is displayed. The user may select a perform action button (e.g., the "SEND MESSAGE" button 1018) from the action configuration view.

[0108] At block 1210, the processing device may perform an action in response to the user selecting a perform action button in the integrated view 602 or the action configuration view. In some examples, the action may include sending a message, requesting feedback, setting a deadline, uploading an attachment to facilitate review of the collaborative document 116, alerting about changes in the collaborative document 116, and the like.

[0109] Figures 13A-13B An example of using user groups in a user access history 600 according to one implementation of the present disclosure is shown. In an implementation, a user can organize users with access rights to a collaborative document 116 into groups. Additionally or alternatively, an administrator can organize users into groups (e.g., based on departments or teams within an organization). These groups can be stored in a data store 114 in a cloud-based environment 110. Group metadata can include membership information for users who are part of a group. Group metadata can be included in the user access history 600 so that group information can be displayed.

[0110] Figure 13AOne such group 1300 is shown in user access history 600. As depicted, group 1300 includes an identity for "sales-group," and it is intended that only the identity of group 1300 be displayed, not the individual members of group 1300. When the list of information in user access history 600 is sorted by indications 616 of when the users last viewed collaborative documents 116, indications 616 for group 1300 are represented by the most recent access by the users within that group. For example, indication 616 for that group is depicted as "This morning." Because "This morning" is later than "Within the hour" and "Monday," the group is placed between the users associated with those indications 616 ("Ted House" and "John Doe").

[0111] When the user selects to expand group 1300, user device 120A may retrieve individual user members from one or more servers 112A-112Z of cloud-based environment 110. In some cases, there may be rules that specify a threshold number of users that may be displayed for group 1300. If the number of users returned from the server exceeds the threshold, a message may be displayed below the identity of group 1300 in user access history 600, indicating that there are too many members to display for the group. Additionally, if, for example, the request fails, a general error message may be displayed below the identity of group 1300 in user access history 600, indicating that no group members may be displayed at this time. It should be noted that these messages may be displayed in any suitable location in user interface 124A.

[0112] If a user of group 1300 is successfully loaded into user access history 600, the user may be displayed in a location indicating that the user is part of group 1300. For example, Figure 13B , the users ("Brad Smithy" and "Sam Tarley") are displayed below the group 1300 and are indented to indicate that the users are part of the group 1300. As previously described, the list in the user access history 600 is sorted by the indication 616 of when the user most recently accessed the collaborative document 116. Thus, the user ("Brad Smithy") who accessed the collaborative document 116 "This morning" is displayed above the user ("Sam Tarley") who accessed the collaborative document 116 "Yesterday." Additionally, Figure 13A , since the access indication 616 of “Brad Smithy” is the latest, the indication 616 of the group (“This morning”) corresponds to the indication 616 of “Brad Smithy”.

[0113] In some implementations, external group members may not be shown in the expanded view of group 1300. As shown, a message 1304 may be shown for the group indicating that group members outside the displayed domain (e.g., "domain1.com") are not shown. Additionally, each user in group 1300 may also include a selectable option 618 to perform an action corresponding to the user in group 1300.

[0114] In one implementation, a user viewing the user access history 600 may not have permission to view the membership details of the group 1300. For example, Figure 14 It is shown that the user access history 600 includes the group 1300 ("sales-group"), but the user viewing the user access history 600 does not have permission to view the membership details related to the group 1300. As such, there is no indication 616 of when the group 1300 last viewed the collaborative document 116, and the group 1300 is at the bottom of the list in the user access history 600. When the user chooses to expand the group 1300, a message 1500 is displayed indicating that the user does not have permission to access the membership details of the group 1300, as shown in FIG. Figure 15 shown.

[0115] Figures 16A-16D An example of using a user access privacy settings view 1600 to control settings associated with a user access history 600 according to one implementation of the present disclosure is shown. The user access privacy settings view 1600 can be displayed in the user interface 124A along with the collaborative document 116. To open the user access privacy settings view 1600, the user can select a visual indicator (e.g., a link, button, graphic, image, etc.) representing the user access privacy settings view 1600 from any suitable location in the user interface 124A displaying the collaborative document 116 (e.g., any view described herein, a drop-down menu, on the canvas of the user interface 124A, etc.).

[0116] Figure 16AAn example of a user access privacy settings view 1600 is shown displayed with a collaborative document 116. This particular example of the user access privacy settings view 1600 may be displayed to users with certain user types (e.g., editors) who are permitted to view the collaborative document 116. The user access privacy settings view 1600 may include two selectable options: a first selectable option 1602 for global account settings and a second selectable option 1604 for document settings. The first selectable option 1602 for global account settings may control whether the user's access history is displayed for any document the user has access to (a global access history setting). The second selectable option 1604 for document settings may control the user's access history for the specific collaborative document 116 currently being accessed (a document-level access history setting). The global access history settings and the document-level access history settings may be considered settings 119 and may be referred to herein as privacy settings. If the user modifies the first selectable option 1602 and / or the second selectable option 1604, the user may click a "DONE" button 1605 to send the settings 119 to the cloud-based environment 110 for storage in the data store 114.

[0117] As depicted, the user has enabled the first selectable option 1602 and the second selectable option 1604, and thus, the user allows viewing of their user access history for the specific document and any documents to which the user has access rights. If the user disables the first selectable option 1602 to explicitly deny viewing of their user access history for any collaborative documents, the second selectable option 1604 may also be automatically disabled for the collaborative document 116. In some cases, the second selectable option 1604 may be hidden from view when the first selectable option 1602 is disabled.

[0118] Figure 16B Another example of a user access privacy settings view 1600 is shown displayed in conjunction with a collaborative document 116. This particular example of the user access privacy settings view 1600 may be displayed to users who have certain user types (e.g., non-editors) blocked from viewing the user access history 600. For example, a message 1606 may be displayed in the user access privacy settings view 1600 indicating that editors or owners of the collaborative document 116 can see who has accessed their collaborative document, and that the user may use a first selectable option 1602 and a second selectable option 1604 to manage how their access history is shown to those users.

[0119] Figure 16CAnother example of a user access privacy settings view 1600 is shown, where the administrator has disabled the collection of user access data 117 for collaborative documents 116, thereby preventing the user from modifying their settings 119. In this case, the user access privacy settings view 1600 may display a message 1608 indicating that the administrator currently does not allow their access history to be displayed. In this state, in this implementation, the user may not be able to edit their user access privacy settings. For example, the first selectable option 1602 and the second selectable option 1604 may be hidden so that the user cannot modify their settings.

[0120] Figure 16D Another example of a user access privacy settings view 1600 is shown, in which an administrator has disabled the collection of user access data 117 for collaborative documents 116, but still allows users to modify their settings 119. In this case, the user access privacy settings view 1600 may display a message 1610 indicating that the administrator currently does not allow their access history to be shown, and if the administrator changes the settings to collect user access data 117 again, another message 1612 may be displayed indicating that the user can manage how their access history should be shown. As shown, the first selectable option 1602 and the second selectable option 1604 remain visible in the user access privacy settings view 1600, so the user can modify their settings 119.

[0121] Figures 17A-17E An example of using a general settings view 1700 to control settings associated with a user's access history 600 according to one implementation of the present disclosure is shown. The general settings view 1700 can be displayed in the user interface 124A along with a home page 1702 that displays collaborative documents to which the user has access. To open the general settings view 1700, the user can select a visual indicator (e.g., a link, button, graphic, image, etc.) representing the general settings view from any suitable location on the user interface 124A displaying the home page 1702 (e.g., any view described herein, a drop-down menu, on the canvas of the user interface 124A, etc.).

[0122] Figure 17AA general settings view 1700 is shown that includes a selectable option 1704 for global account settings (e.g., settings 119). The selectable option 1704 for global account settings can control whether a user access history (global access history) is displayed for any document to which the user has access. In an implementation, the general settings view 1700 can include a message 1705 indicating that the user can hide their user access history for a particular document by accessing the user access privacy settings view 1600. If the user modifies the selectable option 1704, the user can click a "DONE" button 1706 to send the global account settings to the cloud-based environment 110 for storage in the database 114.

[0123] Figures 17B to 17C Various examples are shown for modifying selectable options 1704 in the general settings view 1700. It should be understood that the following examples for Figures 17B-17C The described techniques are applicable to any similar optional options described herein.

[0124] In one example, the user may disable user access history using selectable option 1704 by swiping selectable option 1704 from right to left. Figure 17B The selectable option 1704 is shown in an intermediate toggle state until the setting 119 is updated. The selectable option 1704 can remain in this intermediate toggle state until the setting 119 is accepted by one or more servers 112A-112Z in the cloud-based environment 110 and stored in the database 114. The intermediate toggle state can provide an indication to the user that the setting 119 is in the process of being updated. When the selectable option 1704 is in the intermediate toggle state, a message 1708 indicating that the global access history setting is being updated can be displayed.

[0125] Figure 17C An example of a general settings view 1700 is shown when the global access history setting is successfully updated. As shown, selectable option 1704 is disabled and a message 1710 indicating that the global access history setting has been updated is displayed. Once the global access history setting is updated, other collaborators will not be able to view the user's access history for any collaborative documents associated with the user.

[0126] Figure 17D An example of a general settings view 1700 is shown when the global access history setting cannot be updated. As shown, the selectable option 1704 returns to enabled, and a message 1712 is displayed indicating that the global access history setting cannot be updated. While the global access history setting is enabled, certain users who are allowed to view the user access history 600 can view the user access history of any collaborative documents associated with the user that the user has access to.

[0127] Figure 17EAn example of a general settings view 1700 is shown when an administrator has disabled the collection of user access data 117. In this case, a message 1714 may be displayed in the general settings view 1700 indicating that the administrator currently does not allow their access history to be shown. The selectable options 1704 may be hidden so that the user cannot modify their global access settings. In another implementation, the general settings view 1700 may allow the user to update the global access settings by modifying the visible selectable options 1704, and a message may be displayed indicating that the user can set the global access settings to how they want their access history to be shown when the administrator changes the settings.

[0128] Figure 18 A flow chart depicts aspects of a method 1800 for a server (e.g., one or more servers 112A-112Z of a cloud-based environment 110) to filter a user from a user access history 600 based on a privacy setting 119, according to one implementation of the present disclosure. The method 1800 may be performed in the same or similar manner as described above with respect to the method 300. Furthermore, the method 1800 may be performed by a processing device of one or more servers 112A-112Z executing a user access history module 118A-118Z in the cloud-based environment 110.

[0129] Method 1800 may begin at block 1802. At block 1802, a processing device may receive a request to disable showing of a user access history to a collaborative document 116 associated with a first user (e.g., user A) of a user device 120A. The request may include a document-level access history setting (setting 119) indicating that user A explicitly denies allowing showing of their user access to the collaborative document 116. The server (112A-112Z) may store the setting 119 in the data store 114.

[0130] At block 1804, the processing device may receive a request from a second user (e.g., user B) of the user device 120B for the user access history 600 for the collaborative document 116 presented in the user interface 124B. At block 1806, the processing device may create the user access history 600 for the collaborative document 116 based on the user access data 117 and the document-level access history setting 119. For example, the processing device may exclude the user access history of user A using the document-level access history setting 119 indicating that user A explicitly declined to allow his or her user access history for the collaborative document 116 to be shown. The processing device may exclude any other user access data 117 from the user access history 600 of other users who explicitly declined to allow their user access history for the collaborative document 116 to be shown based on the document-level access history setting 119. The processing device may (based on the document-level access history setting 119) only include the user access history 600 of users who have permitted their user access history 600 for the collaborative document 116 to be shown.

[0131] In one implementation, when creating the user access history 600, the processing device may use the global access history setting 119 instead of or in addition to the document-level access history setting 119. For example, if a user has set the global access history setting 119 to be disabled, the processing device may exclude the user from the user access history for the collaborative document 116. Additionally, if a user access history 600 for any other collaborative documents is requested, the user who has set the global access history setting 119 to be disabled may also be excluded from the user access history 600 for those collaborative documents.

[0132] At block 1808, the processing device may provide the user access history 600 to the collaborative document 116 for display in the user interface 124B presenting the collaborative document 116. It should be noted that the user access history 600 does not include an access history for any user who has the document-level access history setting 119 set to disabled or the global access history setting 119 set to disabled.

[0133] Figure 19 A flowchart depicts aspects of a method 1900 for a user device 120A to allow a user to disable user access history for viewing a collaborative document 116, according to one implementation of the present disclosure. The method 1900 can be performed in the same or similar manner as described above with respect to the method 300. Furthermore, the method 1900 can be performed by a processing device of one or more user devices 120A-120Z executing a collaborative document environment 122A-122Z. For clarity, reference is made to the user device 120A throughout the discussion of the method 1900.

[0134] The method 1900 may begin at block 1902. At block 1902, the processing device may receive a selection to view a user's access history settings. The selection may be received via a visual indicator (e.g., a button, a link, a graphic, an image, etc.) located in any suitable location of the UI 124A presenting the collaborative document 116 (e.g., on the canvas of the UI 124A, in a drop-down menu of the UI 124A, in any view presented in the UI 124A, etc.).

[0135] At block 1904, the processing device may present the user access privacy settings view 1600, which includes at least one selectable option (e.g., second selectable option 1604) for enabling or disabling viewing of the user's access history for collaborative documents 116 (document-level access history setting 119) associated with the user. At block 1906, the processing device may receive a selection via second selectable option 1604 to disable viewing of the user's access history for collaborative documents 116 associated with the user. The user device 120A may send a request to the server (one or more of servers 112A-112Z) to set the document-level access history setting 119 to disabled. If the server accepts the change to the document-level access history setting 119, the document-level access history setting 119 may be saved in the database 114. As a result, the server may exclude the user's access history for collaborative documents 116 based on the document-level access history setting 119.

[0136] At block 1908 , the processing device may display the updated user interface 124A to present the user access history 600 along with the collaborative document 116 in response to receiving the user access history 600 from the server excluding the user access history associated with the user to the collaborative document 116 .

[0137] Figure 20 A flowchart depicts aspects of a method 2000 for allowing a user device 120A to disable viewing of a user access history associated with any collaborative document in accordance with one implementation of the present disclosure. The method 2000 may be performed in the same or similar manner as described above with respect to the method 300. Furthermore, the method 2000 may be performed by a processing device of one or more user devices 120A-120Z executing a collaborative document environment 122A-122Z. For clarity, reference is made to the user device 120A throughout the discussion of the method 2000.

[0138] The method 2000 may begin at block 2002. At block 2002, the processing device may receive a selection to view user access history settings. The selection may be received via a visual indicator (e.g., a button, a link, a graphic, an image, etc.) located in any suitable location of the UI 124A presenting the collaborative document 116 (e.g., on the canvas of the UI 124A, in a drop-down menu of the UI 124A, in any view presented in the UI 124A, etc.).

[0139] At block 2004, the processing device may present a user access privacy settings view 1600 that includes at least one selectable option (e.g., first selectable option 1602) for enabling or disabling user access history for any collaborative documents to which the user has access rights (global access history setting). At block 2006, the processing device may receive, via first selectable option 1602, a selection to disable viewing of the user access history associated with the user for each collaborative document to which the user has access rights. User device 120A may send a request to a server (one or more of servers 112A-112Z) to set global access history setting 119 to disabled. If the server accepts the change to global access history setting 119, it may save global access history setting 119 in database 114. As a result, the server may exclude the user's access history for collaborative document 116 based on global access history setting 119. Similarly, if a user access history for any other collaborative documents to which the user has access rights is requested, the server may also exclude the user's access history from those documents based on the disabled global access history setting 119.

[0140] At block 2008 , the processing device may display the updated user interface 124A to present the user access history 600 along with the collaborative document 116 in response to receiving the user access history 600 from the server excluding at least the user access history associated with the user to the collaborative document 116 .

[0141] Figure 21 An example of a view 2100 indicating that non-editors cannot view the user access history 600 of a collaborative document 116 according to one implementation of the present disclosure is shown. The view 2100 can be displayed in a UI 124A presenting a collaborative document 116. The view 2100 can include a message 2102 indicating that the user cannot view the user access history 600 unless the user has a user type of editor. The view 2100 can be displayed as a result of the user selecting the visual indicator representing the user access history 600 in the UI 124A. In one implementation, the view 2100 can also include a link 2104 that enables the user to request that a certain user type (e.g., editor) be able to view the user access history 600.

[0142] Figure 22 A flowchart depicts aspects of a method 2200 for a server to determine whether to provide a user access history 600 to a user, according to one implementation of the present disclosure. The method 2200 may be performed in the same or similar manner as described above with respect to the method 300. Furthermore, the method 2200 may be performed by a processing device of one or more servers 112A-112Z executing the user access history modules 118A-118Z in the cloud-based environment 110.

[0143] Method 2200 may begin at block 2202. At block 2202, a processing device may receive a request for user access history 600. The request may be received from user device 120A. At block 2204, the processing device may determine whether the user has a certain user type (e.g., an editor with editing permissions). If the user has the certain user type, the processing device may provide (block 2206) the user access history 600. If the user does not have the certain user type (e.g., is a non-editor), the processing device may prevent the user access history 600 from being sent (block 2208).

[0144] For simplicity of explanation, the method of the present disclosure is depicted and described as a series of actions. However, the actions according to the present disclosure may occur in various orders and / or simultaneously, and have other actions not presented and described herein. In addition, it may not be necessary for all the actions shown to implement the method according to the disclosed subject matter. In addition, it will be understood and appreciated by those skilled in the art that the method can be alternatively represented as a series of interrelated states via a state diagram or an event. In addition, it should be understood that the method disclosed in this specification can be stored on an article of manufacture, so that such a method can be transmitted and transferred to a computing device. The term "article of manufacture" as used herein is intended to encompass a computer program accessible from any computer-readable device or storage medium.

[0145] Figure 23 A block diagram of an example computing system operating in accordance with one or more aspects of the present disclosure is depicted. In various illustrative examples, computer system 2300 may correspond to Figure 1 The computer system 2300 may be any computing device within the system architecture 100. In one implementation, the computer system 2300 may be each of the servers 112A-112Z. In another implementation, the computer system 2300 may be each of the user devices 120A-120Z.

[0146] In some implementations, the computer system 2300 can be connected to other computer systems (e.g., via a network such as a local area network (LAN), an intranet, an extranet, or the Internet). The computer system 2300 can operate in the capacity of a server or client computer in a client-server environment, or as a peer computer in a peer-to-peer or distributed network environment. The computer system 2300 can be provided by a personal computer (PC), a tablet PC, a set-top box (STB), a personal digital assistant (PDA), a cellular phone, a web appliance, a server, a network router, a switch or a bridge, or a device capable of executing a set of instructions (sequential instructions or other instructions) that specify the operations to be performed by the device. In addition, the term "computer" shall include any collection of computers that individually or collectively execute a set (or multiple sets) of instructions to perform any one or more of the methods described herein.

[0147] On the other hand, the computer system 2300 may include a processing device 2302, a volatile memory 2304 (e.g., random access memory (RAM)), a non-volatile memory 2306 (e.g., read-only memory (ROM) memory or electrically erasable programmable ROM (EEPROM)), and a data storage device 2316, which may communicate with each other via a bus 2308.

[0148] The processing device 2302 may be provided by one or more of the following processors (e.g., a general-purpose processor (e.g., a complex instruction set computing (CISC) microprocessor, a reduced instruction set computing (RISC) microprocessor), a very long instruction word (VLIW) microprocessor, a microprocessor that implements other types of instruction sets, or a microprocessor that implements a combination of various types of instruction sets) or a special-purpose processor (e.g., an application-specific integrated circuit (ASIC), a field-programmable gate array (FPGA), a digital signal processor (DSP), or a network processor).

[0149] The computer system 2300 may also include a network interface device 2322. The computer system 2300 may also include a video display unit 2310 (eg, LCD), an alphanumeric input device 2312 (eg, keyboard), a cursor control device 2314 (eg, mouse), and a signal generating device 2320.

[0150] The data storage device 2316 may include a non-transitory computer-readable storage medium 2324 on which may be stored instructions 2326 encoding any one or more of the methods or functions described herein, including implementing Figure 1 Instructions of the user access history module 118 (118A-118Z) to implement methods 300, 800, 1100, 1400, 1800 and 2200 or including implementing Figure 1Instructions of the collaborative document environment 122 (122A-122Z) to implement methods 900, 1200, 1500, 1900 and 2000.

[0151] The instructions 2326 may also reside, in whole or in part, within the volatile memory 2304 and / or within the processing device 2302 during execution of the instructions 2326 by the computer system 2300; thus, the volatile memory 2304 and the processing device 2302 may also constitute machine-readable storage media.

[0152] Although computer-readable storage medium 2324 is shown as a single medium in the illustrative examples, the term "computer-readable storage medium" shall include a single medium or multiple media (e.g., a centralized or distributed database, and / or associated caches and servers) to store one or more sets of executable instructions. The term "computer-readable storage medium" shall also include tangible media that can store or encode a set of instructions for execution by a computer, which can be executed by a computer to cause the computer to perform any one or more of the methods described herein. The term "computer-readable storage medium" shall include, but is not limited to, solid-state memories, optical media, and magnetic media.

[0153] In the foregoing description, many details are set forth. However, it will be apparent to one of ordinary skill in the art having the benefit of this disclosure that the present disclosure may be practiced without these specific details. In some instances, well-known structures and devices are shown in block diagram form rather than in detail to avoid obscuring the present disclosure.

[0154] Some portions of the detailed description have been presented in terms of algorithms and symbolic representations of operations on data bits within a computer memory. These algorithmic descriptions and representations are the means used by those skilled in the data processing arts to most effectively convey the substance of their work to others skilled in the art. An algorithm is here, and generally, conceived to be a self-consistent sequence of steps leading to a desired result. These steps are those requiring physical manipulations of physical quantities. Usually, though not necessarily, these quantities take the form of electrical or magnetic signals capable of being stored, transferred, combined, compared, and otherwise manipulated. It proves convenient at times, for general purposes, to refer to these signals as bits, values, elements, symbols, characters, terms, numbers, or the like.

[0155] It should be borne in mind, however, that all of these and similar terms are to be associated with the appropriate physical quantities and are merely convenient labels applied to these quantities. Unless otherwise clearly indicated from the following discussion, it should be understood that throughout this description, discussions utilizing terms such as "receive," "display," "move," "adjust," "replace," "determine," "play," and the like refer to operations and processes of a computer system or similar electronic computing device that convert data represented as physical (e.g., electronic) quantities in the computer system's registers and memories into other similarly represented physical quantities in the computer system's memories or registers or other such information storage, transmission, or display devices.

[0156] For simplicity of explanation, the method is depicted and described herein as a series of actions. However, actions according to the present disclosure may occur in various orders and / or simultaneously, and have other actions not presented and described herein. In addition, the method for implementing the disclosed subject matter does not require all the actions shown. In addition, it will be understood and appreciated by those skilled in the art that the method can be alternatively represented as a series of interrelated states via a state diagram or events. In addition, it should be understood that the method disclosed in this specification can be stored on an article of manufacture, so that such a method can be transmitted and transferred to a computing device. The term "article of manufacture" as used herein is intended to encompass a computer program accessible from any computer-readable device or storage medium.

[0157] Certain implementations of the present disclosure also relate to apparatus for performing the operations herein. The apparatus may be constructed for the intended purpose, or may comprise a general-purpose computer selectively activated or reconfigured by a computer program stored in the computer. Such a computer program may be stored in a computer-readable storage medium, such as, but not limited to, any type of disk, including a floppy disk, an optical disk, a CD-ROM and a magneto-optical disk, a read-only memory (ROM), a random access memory (RAM), an EPROM, an EEPROM, a magnetic card or an optical card, or any type of medium suitable for storing electronic instructions.

[0158] References throughout this specification to "one implementation" or "an implementation" mean that a particular feature, structure, or characteristic described in connection with that implementation is included in at least one implementation. Thus, the phrases "in one implementation" or "in an implementation" that appear in various places throughout this specification are not necessarily all referring to the same implementation. Additionally, the term "or" is intended to mean an inclusive "or" rather than an exclusive "or." Furthermore, the words "example" or "exemplary" are used herein to mean serving as an example, instance, or illustration. Any aspect or design described herein as "exemplary" is not necessarily to be construed as preferred or advantageous over other aspects or designs. Rather, the use of the words "example" or "exemplary" is intended to present concepts in a concrete manner.

[0159] It should be understood that the above description is intended to illustrate rather than to limit. After reading and understanding the above description, many other implementations will be apparent to those skilled in the art. Therefore, the scope of this disclosure should be determined with reference to the appended claims and the full scope of equivalents given by these claims.

[0160] In addition to the above, controls may be provided to the user that allow the user to choose whether and when the systems, programs, or features described herein enable the collection of user information (e.g., information about the user's social network, social activities or activities, occupation, preferences, or current location) and whether content or communications from a server are sent to the user. Furthermore, certain data may be processed in one or more ways before being stored or used to remove personally identifiable information. For example, the user's identity may be processed so that no personally identifiable information can be determined for the user, or, if location information is available, the user's geographic location may be generalized (e.g., to the city, zip code, or state level) so that the user's specific location cannot be determined. Thus, the user can control what information is collected about the user, how that information is used, and what information is provided to the user.

Claims

1. A method for providing a user access history to a collaborative document, the method comprising: receiving, by a server, a first request for a collaborative document concurrently editable by two or more collaborative users among a plurality of collaborative users having permission to access the collaborative document, the first request being received from a first client device of a first collaborative user among the plurality of collaborative users; providing, by the server, to the first client device, the collaborative document concurrently editable by the two or more collaborating users for presentation to the first collaborating user in a first user interface on the first client device; determining whether the collaborator type of the first collaborative user matches a predefined collaborator type; In response to determining that the collaborator type of the first collaborative user matches the predefined collaborator type: identifying, by the server, first user access history information to the collaborative document concurrently editable by the two or more collaborative users based on access to the collaborative document by one or more collaborative users among the plurality of collaborative users, the first user access history information specifying the plurality of collaborative users having permission to access the collaborative document concurrently editable by the two or more collaborative users, the specified plurality of collaborative users including one or more collaborative users who have not yet accessed the collaborative document concurrently editable by the two or more collaborative users; providing, by the server, first user access history information to the collaborative document to the first client device for display within a first integrated view of the first user interface presenting the collaborative document concurrently editable by the two or more collaborative users, wherein the first integrated view includes a list of the plurality of collaborative users having permission to access the collaborative document and, for each of the plurality of collaborative users in the list, an indication of whether the corresponding collaborative user has accessed the collaborative document; receiving, by the server, a second request for the collaborative document from a second client device of a second collaborative user among the plurality of collaborative users who has permission to access the collaborative document; as well as In response to determining that the collaborator type of the second collaborative user does not match the predefined collaborator type: Second user access history information to the collaborative document is provided by the server to the second client device for display within a second integrated view of a second user interface presenting the collaborative document, wherein the second user access history information to the collaborative document is different from the first user access history information to the collaborative document, and wherein at least one of the first user access history information or the second user access history information is provided in response to determining that access history viewing to the collaborative document is enabled for at least a corresponding one of the first collaborative user or the second collaborative user.

2. The method according to claim 1, wherein Determining that the collaborator type of the first collaborative user matches the predefined collaborator type includes: determining that the first collaborative user has editing authority over the collaborative document.

3. The method according to claim 1, wherein Determining that the collaborator type of the second collaborative user does not match the predefined collaborator type includes determining that the second collaborative user lacks editing authority for the collaborative document.

4. The method according to claim 1, further comprising: receiving a message request from the first client device, the message request including a message to be sent to one or more of the plurality of collaborative users identified in the first user access history information in the first user interface; and The message is transmitted to one or more client devices associated with one or more of the plurality of collaborating users.

5. The method according to claim 4, wherein The message request is selected via an indicator on a view including the first user access history information in the first user interface presenting the collaborative document.

6. The method according to claim 1, wherein The first user access history information includes a timestamp of a most recent viewing of the collaborative document by each of the plurality of collaborative users accessing the collaborative document.

7. The method according to claim 1, wherein The first user access history information to the collaborative document is provided in response to determining that global access history viewing to collaborative documents including the collaborative document is enabled for one or more collaborative users of the plurality of collaborative users.

8. The method according to claim 1, further comprising: The group of the first user access history information includes group metadata associated with one or more collaborative users among the plurality of collaborative users.

9. The method according to claim 1, further comprising: receiving, at the server, one or more access requests for the collaborative document; as well as Access data for each of the one or more access requests is stored, the access data for each of the one or more access requests comprising: an identity of one of the plurality of collaborating users associated with the corresponding access request and a time when the corresponding access request was received.

10. The method according to claim 1, wherein Providing the first user access history information of the collaborative document to the first client device for display within the first integrated view of the first user interface presenting the collaborative document comprises: The first user access history information is caused to be displayed in the first integrated view overlaid on a portion of the collaborative document presented in the first user interface.

11. A system comprising: Memory devices; as well as a processing device coupled to the memory device, configured to: receiving a first request for a collaborative document concurrently editable by two or more collaborative users among a plurality of collaborative users having permission to access the collaborative document, the first request being received from a first client device of a first collaborative user among the plurality of collaborative users; providing the collaborative document concurrently editable by the two or more collaborating users to the first client device for presentation to the first collaborating user in a first user interface on the first client device; determining whether the collaborator type of the first collaborative user matches a predefined collaborator type; In response to determining that the collaborator type of the first collaborative user matches the predefined collaborator type: identifying first user access history information to the collaborative document concurrently editable by the two or more collaborative users based on access to the collaborative document by one or more collaborative users among the plurality of collaborative users, the first user access history information specifying the plurality of collaborative users having permission to access the collaborative document concurrently editable by the two or more collaborative users, the specified plurality of collaborative users including one or more collaborative users who have not accessed the collaborative document concurrently editable by the two or more collaborative users; providing first user access history information to the collaborative document to the first client device for display within a first integrated view of the first user interface presenting the collaborative document concurrently editable by the two or more collaborative users, wherein the first integrated view includes a list of the plurality of collaborative users having permission to access the collaborative document and, for each of the plurality of collaborative users in the list, an indication of whether the corresponding collaborative user has accessed the collaborative document; receiving a second request for the collaborative document from a second client device of a second collaborative user among the plurality of collaborative users having permission to access the collaborative document; and In response to determining that the collaborator type of the second collaborative user does not match the predefined collaborator type: Providing second user access history information to the collaborative document to the second client device for display within a second integrated view of a second user interface presenting the collaborative document, wherein the second user access history information to the collaborative document is different from the first user access history information to the collaborative document, and wherein at least one of the first user access history information or the second user access history information is provided in response to determining that access history viewing to the collaborative document is enabled for at least a corresponding one of the first collaborative user or the second collaborative user.

12. The system according to claim 11, wherein In order to determine that the collaborator type of the first collaborative user matches the predefined collaborator type, the processing device further determines whether the first collaborative user has editing rights on the collaborative document.

13. The system according to claim 11, wherein: In order to determine that the collaborator type of the second collaborative user does not match the predefined collaborator type, the processing device further determines that the second collaborative user lacks editing authority for the collaborative document.

14. The system according to claim 11, wherein: The processing equipment is also used for: receiving a message request from the first client device, the message request including a message to be sent to one or more of the plurality of collaborative users identified in the first user access history information in the first user interface; and The message is transmitted to one or more client devices associated with one or more of the plurality of collaborating users.

15. One or more tangible, non-transitory computer-readable media storing instructions that, when executed by one or more processing devices, cause the one or more processing devices to: receiving a first request for a collaborative document concurrently editable by two or more collaborative users among a plurality of collaborative users having permission to access the collaborative document, the first request being received from a first client device of a first collaborative user among the plurality of collaborative users; providing the collaborative document concurrently editable by the two or more collaborating users to the first client device for presentation to the first collaborating user in a first user interface on the first client device; determining whether the collaborator type of the first collaborative user matches a predefined collaborator type; In response to determining that the collaborator type of the first collaborative user matches the predefined collaborator type: identifying first user access history information to the collaborative document concurrently editable by the two or more collaborative users based on access to the collaborative document by one or more collaborative users among the plurality of collaborative users, the first user access history information specifying the plurality of collaborative users having permission to access the collaborative document concurrently editable by the two or more collaborative users, the specified plurality of collaborative users including one or more collaborative users who have not accessed the collaborative document concurrently editable by the two or more collaborative users; providing first user access history information to the collaborative document to the first client device for display within a first integrated view of the first user interface presenting the collaborative document concurrently editable by the two or more collaborative users, wherein the first integrated view includes a list of the plurality of collaborative users having permission to access the collaborative document and, for each of the plurality of collaborative users in the list, an indication of whether the corresponding collaborative user has accessed the collaborative document; receiving a second request for the collaborative document from a second client device of a second collaborative user among the plurality of collaborative users having permission to access the collaborative document; and In response to determining that the collaborator type of the second collaborative user does not match the predefined collaborator type: Providing second user access history information to the collaborative document to the second client device for display within a second integrated view of a second user interface presenting the collaborative document, wherein the second user access history information to the collaborative document is different from the first user access history information to the collaborative document, and wherein at least one of the first user access history information or the second user access history information is provided in response to determining that access history viewing to the collaborative document is enabled for at least a corresponding one of the first collaborative user or the second collaborative user.

16. The non-transitory computer-readable medium of claim 15, wherein: The one or more processing devices are further configured to present the first user access history information in the first integrated view, the first user access history information identifying one or more collaborative users having permission to access the collaborative document and including an indication of when the one or more collaborative users most recently accessed the collaborative document.

17. The non-transitory computer-readable medium of claim 15, wherein: In order to determine that the collaborator type of the first collaborative user matches the predefined collaborator type, the one or more processing devices also determine that the first collaborative user has editing permissions for the collaborative document, and in order to determine that the collaborator type of the second collaborative user does not match the predefined collaborator type, the one or more processing devices also determine that the second collaborative user lacks editing permissions for the collaborative document.

Citation Information

Patent Citations

  • Document collaboration

    CN103907110A

  • Presentation of Information Describing User Activities with Regard to Resources

    US20110276925A1