Generation of a collaborative document for virtual meetings in a communication platform

The introduction of collaborative document features in communication platforms addresses the limitations of existing technologies by enabling efficient and immersive collaboration during virtual meetings, enhancing user experience and reducing resource usage.

JP2025518790AActive Publication Date: 2025-06-19SALESFORCE INC
View PDF 3 Cites 0 Cited by

Patent Information

Application Number
JP2024570953
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-06-03
Filing Date
2023-05-17
Publication Date
2025-06-19
Estimated Expiration
2043-05-17

AI Technical Summary

Technical Problem

Existing communication platforms face challenges with disorderly and limited functionality in sharing information during virtual meetings, leading to information loss and the need for users to adopt multiple means for chatting, managing tasks, and collaborating.

Method used

The development of a collaborative document feature within a communication platform that allows users to generate co-authored documents during virtual meetings, incorporating messaging and sharing functionality, and populating communications from a communication channel to provide context.

Benefits of technology

This solution enhances user experience by providing an immersive and efficient collaborative environment, reducing the need to toggle between interfaces and minimizing information loss, while also reducing the number of applications and computing resources required for collaboration.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025518790000001_ABST
    Figure 2025518790000001_ABST
Patent Text Reader

Abstract

Techniques for providing collaborative documents in relation to virtual meetings on a communication platform are described herein. Users can communicate within the communication platform via text-based messages that may include links, documents, videos, etc. Users can request virtual meetings with audio and / or video capabilities. In response to the request, users within the communication channel can be invited to the virtual meeting and the collaborative document. The collaborative document can enable messaging and sharing functionality resulting from the virtual space. To provide context for the virtual meeting, the collaborative document can incorporate communications previously exchanged within the communication channel so that links, documents, videos, content, etc. that occurred or were shared within the communication channel can be shown within the virtual meeting. Users can engage in audio and / or video communication within the collaborative document and can also share links, documents, screens (i.e., screen sharing), etc.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] Cross-reference to Related Applications This PCT international application claims priority to U.S. Patent Application No. 17 / 831,748, entitled "GENERATING COLLABORATIVE DOCUMENTS FOR VIRTUAL MEETINGS IN A COMMUNICATION PLATFORM", filed on June 3, 2022, the entire content of which is incorporated herein by reference.

[0002] Technical Field Communication platforms are becoming increasingly common to facilitate work-related communication, such as collaborative work on projects within a single organization and across two or more organizations. For example, meetings may be scheduled to discuss a particular project or part thereof. A meeting can include means for transmitting written communication (such as communication channels, direct message instances, etc.) and / or oral communication (such as voice calls, video calls, etc.). Often during a meeting, users frequently share information, or more generally content, via documents, links, screen sharing, etc. However, existing technologies for sharing information are often disorderly, have limited functionality, and can lead to information loss. In addition, existing technologies are often generalized, and users need to upload content individually. Due to these limitations, users may need to adopt various means to chat, manage tasks, and collaborate in other ways. Therefore, additional functionality may be useful for collaboration among users.

Brief Description of the Drawings

[0003] The detailed description is set forth with reference to the accompanying drawings. In the drawings, the leftmost digit of a reference number identifies the drawing in which the reference number first appears. The use of the same reference number in different drawings indicates similar or identical components or features. The figures are not drawn to scale.

[0004]

Figure 1

[0005]

Figure 2

[0006]

Figure 3

[0007]

Figure 4

[0008]

Figure 5

[0009]

Figure 6

[0010]

Figure 7

[0011]

Figure 8

[0012]

Figure 9

[0013]

Figure 10

[0014]

Figure 11

[0015]

Figure 12

[0016]

Figure 13

DETAILED DESCRIPTION OF THE INVENTION

[0017] This application is at least in part directed to providing co - documents in connection with virtual meetings scheduled on a communication platform. The communication platform can, in some examples, be a group - based communication platform, a channel - based communication platform, a permission - based communication platform, a channel - based messaging platform, and / or any other platform for facilitating communication between users, enabling users to exchange messages and / or other data via the communication platform. First, within the communication platform, users can communicate with each other via a communication channel by exchanging text - based messages. In some examples, these text - based messages can include links, documents (e.g., images, files, PDFs), videos, etc. However, sometimes users may desire a more immersive experience and / or different forms of communication. For example, instead of sending and receiving text - based messages, users may schedule a virtual meeting with audio and / or video capabilities. In response to this requirement, users within the communication channel can be invited to a virtual meeting and co - document for collaborative work with each other. In some examples, the co - document enables messaging and sharing functionality resulting from the virtual space. For example, the co - document may populate or otherwise show the communications previously exchanged within the communication channel. For example, links, documents, videos, content, etc. that occurred or were shared within the communication channel can be shown within the co - document as a way to provide context to the virtual meeting. By doing so, within the co - document, users can engage in audio and / or video communication and share links, documents, screens (i.e., screen sharing), etc. This increase in the form of communication has the potential to improve the user experience and lead to effective and efficient collaborative work.

[0018] Generally, a collaborative document can be associated with a document identifier (such as a virtual space identifier, a communication channel identifier, etc.) configured to enable messaging and sharing functionality resulting from a virtual space (e.g., a communication channel) within the collaborative document. That is, the collaborative document can be treated as a virtual space such as a communication channel and can include functionality associated with that virtual space. Thus, within the collaborative document, a user can communicate, exchange messages, share content, etc. In some examples, as described herein, the collaborative document may be created in relation to a virtual meeting where users communicate via audio and / or video. The collaborative document can be launched for a real-time conversation that enables users to share and / or create lively files and screens with cursor tracking, drawing, and presence.

[0019] In some examples, a user may request a virtual meeting with audio and / or video. In some examples, a user may request a virtual meeting within a communication channel. For example, a first user may interact within a communication channel via a first user interface. The first user may request a virtual meeting and one or more additional users invited to collaborate within the virtual meeting. In some examples, a communication platform can identify a second user account associated with the virtual meeting (e.g., the second user associated with the second user account is a member of the virtual space). In an example where the request is submitted via a communication channel, the communication platform can identify one or more members of the communication channel as users to be associated with the virtual meeting. That is, the user identifier associated with the communication channel may be additionally associated with the virtual meeting such that any of the members of the communication channel are added to the virtual meeting.

[0020] In addition, in some examples, a virtual meeting may be created independently of the communication channel, and the communication platform may identify the requesting user (e.g., the first user) as the user to be associated with the virtual meeting. That is, the first user can submit a request to create a virtual meeting independently of the communication channel (e.g., in relation to the first user's user account). In some examples, the identifier can be stored as metadata and can include a unique code (e.g., numbers, letters, symbols, and / or combinations thereof) that can be used to identify the virtual meeting. In other examples, user identifiers associated with a particular communication (e.g., a message) within the communication channel may be associated with the virtual meeting such that users who respond to the particular communication, users who react to the particular communication (e.g., like, dislike, emoji, etc.), etc. are associated with the virtual meeting.

[0021] Furthermore, in some examples, a virtual meeting may be requested from a sidebar of the user interface and / or from a dashboard of the communication platform. The sidebar may, in some examples, include a list of communication channels associated with a particular user account and may be part of the user interface. For example, the sidebar can include a list of workspaces, communication channels, direct message instances, etc. associated with the user account. In the case of the sidebar, the user may request a virtual meeting and invite one or more other users to the virtual meeting.

[0022] In some examples, a first user can generate an asynchronous meeting, and as soon as the asynchronous meeting is generated, a virtual meeting can be an ad-hoc generated asynchronous meeting such that messages associated with the asynchronous meeting can be posted to a communication channel. Such an asynchronous meeting can be a "one-time-only" meeting or can be the first meeting of a series of regular meetings. In some examples, an asynchronous meeting can be scheduled so that a first user can generate the asynchronous meeting.

[0023] In some examples, as described above, a virtual meeting may be requested from or in relation to a message posted within a communication channel. These messages can include, but are not limited to, text (e.g., which can be editable), files (e.g., text, audio, video, applications, etc.), tasks to be completed, tickets to be resolved, events (e.g., scheduled events, calendar invitations, calendar instances, etc.), messages previously sent via a communication platform, images, graphics, links to local objects, links to remote objects (e.g., third-party objects), etc. In some examples, the communication platform can identify an object based on user input from a creating user (e.g., the first user). For example, the first user may request a virtual meeting created in relation to a specific document shared within the communication channel. Here, based on the user input, the communication platform may cause a virtual meeting to be created centered around the document. Thereby, in some examples, it becomes possible for users to collaborate centered around a document.

[0024] Regardless of the specific implementation, in response to receiving a request, the communication platform can identify one or more users to be associated with a virtual meeting, such as a first user and a second user. As part of creating a virtual meeting, the communication platform may generate a collaborative document. The collaborative document may be attached to the virtual meeting or otherwise associated. As an example, as part of the request, the communication platform can identify one or more objects to be associated with the virtual meeting and the collaborative document.

[0025] As part of generating the collaborative document, the communication platform can cause affordances associated with the virtual meeting and / or the collaborative document to be presented via the user interfaces associated with each member of the virtual meeting. In some examples, the communication platform can modify the user interfaces associated with one or more users associated with the virtual meeting to include the affordances. For example, based on the identification of a second user account, the communication platform can associate a notification associated with the request with an affordance (e.g., an identifier, an indicator, a selectable control, a user interface element, a graphical element, an icon, text, an image, etc.) associated with the virtual meeting and present it on the second user interface associated with the second user. In various examples, the affordance may include a selectable icon that, when selected by each user, causes the virtual meeting and the collaborative document to be presented via the user interface associated with the user. For example, the second user can select the affordance and / or the notification to access the collaborative document and participate in the virtual meeting. Here, the second user (as well as the first user) may indicate whether their audio and / or video is active.

[0026] Additionally or alternatively, the affordances of the virtual meeting may be presented respectively in the sidebar of the user interface. Further, in some examples, the affordances associated with the virtual meeting may be presented in relation to the communication channel in which the virtual meeting was created (e.g., as a message within the communication channel).

[0027] In at least one example, the affordances presented to the invited user may indicate the topic of the discussion taking place in the virtual meeting. For example, if a first user submits a request for a virtual meeting centered around an object (e.g., a document), the affordances presented to a second user may indicate that the first user wishes to discuss the object. Additionally, the communication platform may utilize the object as a way to import the communication into a shared document. For example, if a shared document is created in relation to the object, the communication platform may input the communication regarding the object into the shared document. This can be achieved by using identifiers and threads within the communication channel.

[0028] In some examples, in response to receiving an indication of a selection of an affordance associated with the virtual meeting, the communication platform can display a shared document on each user's user interface. In some examples, the shared document includes communications exchanged within the communication channel, document affordances, links, etc. For example, continuing with the above example, if the virtual meeting was created in relation to an object, the object itself may be displayed as an affordance within the shared document. Additional documents, files, links, etc. presented or posted within the communication channel may be incorporated into the shared document. As described above, in some examples, the requesting user (e.g., the first user) may determine the documents, files, links, etc. to be incorporated into the shared document based on which object the shared document is created around.

[0029] Within the shared document, the user may enable audio and / or video communication via their respective user interfaces. For example, the first user and / or the second user may enable audio and / or video communication via their respective user interfaces. In some examples, the first user and / or the second user may interact with one or more affordances to enable audio and / or video. In response to input, the user interface may display the videos of the first and second users respectively and / or output the audio of the first user and / or the second user. For example, the second user (as well as other users) may indicate whether they want to enable their audio and / or video.

[0030] As introduced above, the collaborative document can support messaging functionality (e.g., chat channels), message timing documentation (e.g., timestamps), file uploads, notifications (e.g., newly posted messages, mentions or tags, etc.), mention or tagging functionality, event transmission, workflow management and tracking, access permissions, and / or other functionality within a virtual meeting. In other words, the communication platform can treat the collaborative document as a communication channel so that the functionality of the communication channel can be incorporated into the collaborative document. Additionally, the collaborative document may include the ability for users to share screens and present documents, links, files, etc. The collaborative document may further include a message thread that enables users to communicate with each other within the collaborative document and be separated from the communication channel. For example, a user may post messages, links, documents, etc. within the message thread of the collaborative document. These messages may be tracked, recorded, and incorporated within the communication channel in relation to the virtual meeting following the conclusion or closure of the collaborative document. The message thread can be a message associated with another message that is not posted to a communication channel, a direct message, or other virtual space, but instead is maintained within an object associated with the original message. Thus, messages or communications that occur during a virtual meeting can be tracked and recorded within the collaborative document for later access.

[0031] The collaborative document may include affordances for users who are within or invited to the collaborative document. For example, in relation to the collaborative document, a first affordance of a first user may be presented and / or a second affordance of a second user may be presented. Of course, the collaborative document may include more than two users, and in such an example, two or more affordances of the users may be presented respectively. Generally, these affordances may provide instructions for the users within the collaborative document. Additionally, other users may be invited even after the collaborative document has been generated.

[0032] In some examples, a shared document, or the user interface of a user within the shared document, may indicate each content being viewed by the user. For example, affordances indicating which content the user is observing respectively, and / or which content the user has viewed respectively, may be displayed. This may indicate the user's interaction and / or engagement to others within the shared document. Additionally or alternatively, the shared document may indicate the position of each user's cursor. For example, when a first user is presenting content, the shared document may indicate the cursor position associated with a second user in relation to the content presented by the first user. In some examples, this enables the first user to understand the portion of the content currently being viewed by the second user. However, the second user may be engaged in other content (e.g., a document, an application, etc.) separate from the content being presented or discussed by the first user. In such examples, the shared document may present the affordances of the content currently being presented by the first user, as well as the affordances of the content currently being viewed by the second user (e.g., based on the position of the second user's cursor). Of course, the user may first opt-in or grant permission to share their screen and / or cursor tracking.

[0033] In some examples, the collaborative document may be associated with permissions that define which users of the communication platform can share the content within the collaborative document, post messages to the collaborative document, etc. In various examples, the permissions may be defined based on the parameters under which the collaborative document was created or specified in some other way. Additionally, the permissions may include which users can invite other users to the collaborative document and / or which users cannot invite users to the collaborative document. For example, a user associated with the creation of a collaborative document may include the permission to invite additional users, while a user who received an invitation to participate in the virtual space may not include the permission to invite additional users. However, in some examples, all members of the collaborative document and / or the object within which the collaborative document is created can invite additional users, upload documents, etc.

[0034] Following the conclusion of the collaborative document, the communications that occurred within the collaborative document may be re - incorporated within the communication channel. For example, messages posted to a message thread may be displayed within the communication channel. Further, the affordances of the collaborative document may be presented within the communication channel. For example, an affordance indicating the occurrence of the collaborative document may be presented within the communication channel. In some examples, the communication channel may indicate the time when the collaborative document was created, the users of the collaborative document, etc. In some examples, the affordance is presented as the most recent message within the communication channel to indicate that the collaborative document was created and a virtual meeting was held within the communication channel. Further, by posting messages within the message thread to the communication channel, a history of the messages is recorded and can be accessed by users later. However, in some examples, the communication channel may be updated in real - time or near real - time such that information communicated within the virtual space is incorporated within the communication channel. This can, in some examples, eliminate potential confusion regarding the current communications within the communication channel.

[0035] The collaborative document is stored and archived for later use and / or reference after the virtual meeting ends. For example, when the virtual meeting ends, the collaborative document still exists, so the user does not lose the discussions, files, or links shared in the virtual meeting. Further, at a later time, another virtual meeting regarding the same object may be held, and in such a case, the collaborative document is accessed. The additional communications that occur are tracked and recorded, and the collaborative document is updated.

[0036] The virtual meeting and the collaborative document are described as being executed by or on a communication platform, but the techniques described herein may occur within a third-party application. For example, the collaborative document may be generated in relation to a virtual meeting schedule on a third-party application separate from the communication platform. In such a case, the collaborative document can be embedded in the virtual meeting so that, for example, users participating in the virtual meeting can send messages and / or exchange data via the collaborative document and within the third-party video conferencing application.

[0037] Furthermore, the techniques herein are described in relation to generating a collaborative document in relation to a virtual meeting, but the collaborative document may pre-exist before the virtual meeting. Thus, the collaborative document may exist before or after a real-time conversation (such as a virtual meeting). In some examples, virtual meetings may be scheduled at different times around the same collaborative document. For example, at a first time, after collaborating within a virtual meeting, another virtual meeting may be held at a second time. In this example, for instance, if users want to meet virtually and discuss the collaborative document, the collaborative document can be associated with each of the virtual meetings.

[0038] The technology described in this specification significantly improves the usefulness and functionality within a communication platform. As described above, conventional technologies are unable to incorporate previously generated files, documents, links, etc. within a communication channel into a collaborative document. In such instances, the users of the collaborative document are left with little context and / or history regarding previous communications within the communication channel. This can result in a decrease in the number of instances and applications operating when collaborating on a project. For example, when communications within a communication channel are incorporated into a collaborative document, users may not need to toggle between panes, user interfaces, etc. to access previous communications and / or shared content. In other words, when a user switches back and forth, the user loses the context associated with the collaborative document. As a result, in existing technologies, conversations are fragmented and the user experience degrades.

[0039] Furthermore, when a user switches back and forth, the user is required to switch between multiple display windows (e.g., a third-party application and an application and / or web browser providing communication platform functionality) or interact with multiple display windows. Here, existing technologies consume computing resources by presenting multiple windows on the user's computing device. Additionally, existing technologies provide a suboptimal user experience because the user needs to switch between computing resources. Further, the sharing functionality within a collaborative document can provide a way to enhance the user experience and enable users to understand what other users are currently viewing. In some examples, due to the extended functionality provided by the collaborative document, the technology described in this specification can reduce the number of applications executed on the user's computing device to monitor and / or manage a project. Thus, the technology described in this specification can reduce the amount of computing resources utilized in collaboration.

[0040] This disclosure provides an overall understanding of the principles of the structures, functions, devices, and systems disclosed herein. One or more embodiments of the disclosure are illustrated in the accompanying drawings. Those skilled in the art will understand that the devices and / or systems specifically described herein and shown in the accompanying drawings are non-limiting embodiments. Features illustrated or described in connection with one embodiment may be combined with features of other embodiments. Such modifications and variations are intended to be included within the scope of the appended claims.

[0041] FIG. 1 illustrates an exemplary environment 100 for implementing the techniques described herein. In at least one example, the exemplary environment 100 can be associated with a communication platform that utilizes a network-based computing system to enable users of the communication platform to exchange data. In at least one example, the communication platform can be “group-based” such that the platform and associated systems, communication channels, messages, co-authored documents, canvases, audio / video conversations, and / or virtual spaces have security (which can be defined by permissions) to restrict access to defined groups of users. In some examples, such groups of users can be defined by group identifiers, which can be associated with common access credentials, domains, etc. In some examples, the communication platform can be a hub that provides a secure and private virtual space for users to chat, meet, call, collaborate, transfer files or other data, or otherwise communicate with each other. In some examples, each group can be associated with a workspace, and users associated with the group can chat, meet, call, collaborate, transfer files or other data, or otherwise communicate with each other in the secure and private virtual space. In some examples, members of a group, and thus members of a workspace, can be associated with the same organization. In some examples, members of a group, and thus members of a workspace, can be associated with different organizations (e.g., entities having different organization identifiers).

[0042] In at least one example, environment 100 can include one or more server computing devices (or "servers") 102. In at least one example, server 102 can include one or more servers, or other types of computing devices that can be embodied in any number of ways. For example, in the case of a server, functional components and data can be implemented in a single server, a cluster of servers, a server farm or data center, a cloud-hosted computing service, a cloud-hosted storage service, etc., but other computer architectures can also be used additionally or alternatively.

[0043] In at least one example, server 102 can communicate with user computing device 104 via one or more networks 106. That is, server 102 and user computing device 104 can use network 106 to send, receive, and / or store data (such as content, information, etc.) as described herein. User computing device 104 can be any suitable type of computing device, such as portable, semi-portable, semi-stationary, or stationary. Some examples of user computing device 104 can include tablet computing devices, smartphones, mobile communication devices, laptops, netbooks, desktop computing devices, terminal computing devices, wearable computing devices, augmented reality devices, Internet of Things (IoT) devices, or any other computing device capable of transmitting communications and performing functions according to the techniques described herein. Although a single user computing device 104 is shown, in practice, environment 100 can include a large number (e.g., dozens, hundreds, thousands, millions) of user computing devices. In at least one example, a user computing device such as user computing device 104 can be made operable by a user, among other things, to access communication services via a communication platform. The user can be an individual, a group of individuals, an employer, a company, an organization, etc.

[0044] Network 106 can include, but is not limited to, a local area network (LAN) or wide area network (WAN), the Internet, a wireless network, a cellular network, a local wireless network, Wi-Fi and / or near field communication, Bluetooth®, Bluetooth Low Energy (BLE), near field communication (NFC), a wired network, or any other such network, or any combination thereof, of any type known in the art. The components used for such communication can depend at least in part on the type of network, the selected environment, or both. Protocols for communicating via Network 106 are well known and will not be described in detail herein.

[0045] In at least one example, server 102 can include one or more processors 108, a computer-readable medium 110, one or more communication interfaces 112, and input / output devices 114.

[0046] In at least one example, each processor of processors 108 can be a single processing unit or multiple processing units, and can include single or multiple computing units or multiple processing cores. Processors 108 can be implemented as one or more microprocessors, microcomputers, microcontrollers, digital signal processors, central processing units (CPUs), graphics processing units (GPUs), state machines, logic circuits, and / or any device that operates on signals based on operational instructions. For example, processors 108 can be one or more hardware processors and / or logic circuits of any suitable type that are specially programmed or configured to execute the algorithms and processes described herein. Processors 108 can be configured to fetch and execute computer-readable instructions stored on a computer-readable medium, and the computer-readable medium can program the processors to execute the functions described herein.

[0047] Computer-readable medium 110 can include volatile and non-volatile memory and / or removable and non-removable media implemented in any type of technology for the storage of data such as computer-readable instructions, data structures, program modules, or other data. Computer-readable medium 110 can include, but is not limited to, RAM, ROM, EEPROM, flash memory or other memory technology, optical storage, solid state storage, magnetic tape, magnetic disk storage, RAID storage systems, storage arrays, network-attached storage, storage area networks, cloud storage, or any other medium that can be used to store desired data and that can be accessed by a computing device. Depending on the configuration of server 102, computer-readable medium 110 can be a type of computer-readable storage medium, and / or, when referred to, a non-transitory computer-readable medium can be a tangible non-transitory medium to the extent that it excludes media such as energy, carrier signals, electromagnetic waves, and signals themselves.

[0048] Computer-readable medium 110 can be used to store any number of functional components executable by processor 108. In many implementations, these functional components include instructions or programs that are executable by processor 108 and that, when executed, specifically configure processor 112 to perform the operations described above for server 102. The functional components stored on the computer-readable medium can optionally include messaging component 116, audio / video component 118, co-document component 120, operating system 122, and data store 124.

[0049] In at least one example, the messaging component 116 can process messages between users. That is, in at least one example, the messaging component 116 can receive an outgoing message from the user computing device 104 and can send that message as an incoming message to a second user computing device 104. Messages can include direct messages sent from an originating user to one or more designated users, and / or channel messages sent from an originating user to one or more users associated with a communication channel via the communication channel. Additionally, messages can be sent in association with a shared document, canvas, or other shared space, such as a virtual meeting as described herein. In at least one example, a virtual meeting can include a flexible canvas for curating, organizing, and sharing a collection of information among users. In at least one example, a shared document can be associated with a document identifier (e.g., a virtual space identifier, a communication channel identifier, etc.) configured to enable messaging functionality resulting from a virtual space (e.g., a communication channel) within the shared document. That is, the shared document can be treated as a virtual space, such as a communication channel, and can include functionality associated with the virtual space. The virtual space, i.e., the communication channel, can be a data path used to exchange data between systems and devices associated with a communication platform.

[0050] In at least one example, the messaging component 116 can establish communication paths between various user computing devices, enabling the user computing devices to communicate with each other and share data. In at least one example, the messaging component 116 can manage such communication and / or data sharing. In some examples, data associated with a virtual space, such as a collaborative document, can be presented via a user interface. Additionally, metadata associated with each message transmitted via the virtual space, such as a timestamp associated with the message, an identifier of the sending user, an identifier of the receiving user, a conversation identifier, and / or a root object identifier (e.g., a conversation associated with a thread and / or a root object), can be stored in association with the virtual space.

[0051] In various examples, the messaging component 116 can receive messages (such as direct message instances, communication channels, canvases, co - documents, etc.) sent in relation to a virtual space. In various examples, the messaging component 116 can identify one or more users associated with the virtual space and cause the messages to be rendered associated with an instance of the virtual space on each user computing device 104. In various examples, the messaging component 116 can identify a message as an update to a co - document and, based on the identified update, cause a notification associated with the update to be presented in relation to a sidebar of a user interface associated with one or more of the users associated with the co - document. For example, the messaging component 116 can receive a message sent in relation to a co - document from a first user account. In response to receiving a message (such as dialog data associated with a dialog between the first user and the virtual space), the messaging component 116 can identify a second user (such as another user who is a member of the virtual space) associated with the co - document. In some examples, the messaging component 116 can cause a notification of an update to the co - document to be presented via a sidebar of a user interface associated with the second user's second user account. In some examples, the messaging component 116 can cause a notification to be presented in response to a determination that the sidebar of the user interface associated with the second user account includes affordances associated with the co - document. In such examples, the notification can be presented in relation to the affordances associated with the co - document.

[0052] In various examples, the messaging component 116 can be configured to identify mentions or tags associated with messages sent in relation to a shared document. In at least one example, a mention or tag can include an @mention (or other special character) of a user identifier associated with a communication platform. The user identifier can include a username, a real name, or other unique identifier associated with a particular user. In response to identifying a mention or tag of a user identifier, the messaging component 116 can cause a notification to be presented on a user interface associated with the user identifier, such as within a sidebar of a user interface associated with a particular user and / or within a shared document associated with mentions and reactions, by associating it with an affordance associated with the shared document. That is, the messaging component 116 can be configured to alert a particular user that they have been mentioned within a shared document.

[0053] In at least one example, the audio / video component 118 can be configured to manage audio and / or video communication between users during a virtual meeting. In some examples, the audio and / or video communication can be associated with a virtual meeting. In at least one example, a virtual meeting can include an individual identifier configured to uniquely identify the virtual meeting. In some examples, the audio / video component 118 can store user identifiers associated with user accounts of members of a particular virtual meeting, such as for identifying users having appropriate permissions to access a particular virtual meeting.

[0054] In some examples, the communications associated with a virtual meeting can be synchronous and / or asynchronous. That is, a virtual meeting can include a real-time audio and / or video conversation between a first user and a second user for a period of time, and after the first period, a third user (e.g., a member of the conversation) associated with the conversation can contribute to the virtual meeting. The audio / video component 118 can be configured to store audio and / or video data associated with the virtual meeting, such as enabling a user having appropriate permissions to listen to and / or view the audio and / or video data.

[0055] In some examples, the audio / video component 118 can be configured to generate a transcript of the virtual meeting and store the transcript in association with the audio and / or video data. The transcript can include a text representation of the audio and / or video data. In at least one example, the audio / video component 118 can generate the transcript using known speech recognition techniques. In some examples, the audio / video component 118 can generate the transcript simultaneously or substantially simultaneously with the virtual meeting. That is, in some examples, the audio / video component 118 can be configured to generate a text representation of the conversation while the conversation is occurring. In some examples, the audio / video component 118 can generate the transcript after receiving an indication that the virtual meeting has ended. The indication that the virtual meeting has ended can include an indication that the associated host or administrator has stopped the virtual meeting, an indication that a threshold number of meeting attendees have closed the associated interface, and / or a similar indication. That is, the audio / video component 118 can identify the completion of the virtual meeting and, based on that completion, generate a transcript associated therewith.

[0056] In at least one example, the audio / video component 118 can be configured to present a transcript in relation to a shared document with which the virtual meeting is associated. For example, a first user can initiate a virtual meeting in relation to a communication channel. The audio / video component 118 can process audio and / or video data among the attendees of the virtual meeting and generate a transcript of the audio and / or video data. In response to the generation of the transcript, the audio / video component 118 can cause the transcript to be published or otherwise presented via the communication channel. In at least one example, the audio / video component 118 can render one or more sections of the transcript selectable for commenting so as to enable members of the communication channel to comment on or otherwise contribute to the virtual meeting. In some examples, the audio / video component 118 can update the transcript based on the comments.

[0057] In at least one example, the audio / video component 118 can manage one or more virtual meetings in relation to a shared document associated with a management center or command center of a group (e.g., an organization, a team, etc.). The group management center or command center may be referred to herein as a virtual (and / or digital) headquarters associated with the group. In at least one example, the audio / video component 118 can be configured to communicate in conjunction with the messaging component 116 and / or other components of the server 102 in relation to other shared documents associated with the virtual headquarters. That is, the messaging component 116 can transmit data (e.g., messages, images, drawings, files, etc.) associated with one or more communication channels, direct message instances, shared documents, canvases, etc. associated with the virtual headquarters. In some examples, the communication channels, direct message instances, shared documents, canvases, etc. are associated with one or more virtual meetings managed by the audio / video component 118. That is, the virtual meetings associated with the virtual headquarters can be further associated with, or made independent of, one or more other shared documents of the virtual headquarters.

[0058] In at least one example, the collaborative document component 120 can manage a collaborative document associated with an audio / video communication. For example, in at least one example, a user of a communication platform may request an audio / video communication as part of the virtual meeting described above. In some examples, the virtual meeting may be associated with a communication channel, objects shared within the communication channel, or may be generated outside of a particular communication channel. In response to receiving a request for a virtual meeting, the collaborative document component 120 may generate a collaborative document. The collaborative document described above may include a flexible canvas for curating, organizing, and sharing a collection of information among users. In at least one example, the collaborative document is configured to enable messaging functionality resulting from a virtual space and can include functionality associated with the virtual space. The collaborative document is attached to or created in relation to a virtual meeting to enable sharing of information among the users of the virtual meeting.

[0059] In some examples, the collaborative document component 120 can manage a collaborative document created in relation to a virtual meeting involving an audio / video communication. That is, the collaborative document component 120 can receive a request to associate a user with a virtual meeting, and the collaborative document component 120 can associate the user account associated with such a user with a group identifier associated with the collaborative document. For example, in response to receiving a request to create a virtual meeting involving an audio / video communication, the collaborative document component 120 can associate the user's user account with the group identifier of the collaborative document. The collaborative document component 120 can also disassociate the association between the user account and the group identifier, for example, when a user is removed from the collaborative document.

[0060] In at least one example, the collaborative document component 120 can receive requests or other instructions for creating a collaborative document for collaborative work among users, as described herein. In such an example, the user interface is generated via the user computing device of the user associated with the collaborative document. Further, the collaborative document component 120 can integrate communications, documents, files, etc. that occur within a communication channel into the collaborative document. For example, the collaborative document may incorporate information shared among users within the communication channel in an organized manner. The collaborative document component 120 can also facilitate communication within the collaborative document, such as content sharing (e.g., screen sharing), file upload, link sharing, etc.

[0061] In at least one example, the operating system 122 can manage the processor 108, computer-readable medium 110, hardware, software, etc. of the server 102.

[0062] Also, the collaborative document component 120 may determine a user interaction indicative of one or more interactions between one or more users and the collaborative document. For example, the collaborative document component 120 can determine such interactions from the user computing device, such as whether a user account is viewing the collaborative document, presenting content, screen sharing, typing a message within a thread, etc.

[0063] In at least one example, the data store 124 can be configured to store data that is accessible, manageable, and updatable. In some examples, as shown in FIG. 1, the data store 124 can be integrated with the server 102. In other examples, the data store 124 can be located remotely from the server 102 and can be accessible to user computing devices such as the server 102 and / or the user computing device 104. The data store 124 can comprise a plurality of databases, which can include user / organization data 126 and / or co-document data 128. Additional or alternative data can be stored within the data store and / or within one or more other data stores.

[0064] In at least one example, the user / organization data 126 can include data associated with users of the communication platform. In at least one example, the user / organization data 126 can store data within a user profile (also referred to as a "user account") that can store data associated with the user, which can include one or more user identifiers associated with a plurality of different organizations or entities with which the user is associated, one or more communication channel identifiers associated with communication channels to which the user has access permission, one or more group identifiers of groups (or organizations, teams, entities, etc.) with which the user is associated, an indication of whether the user is an owner or administrator of any communication channel, an indication of whether the user has any communication channel restrictions, a plurality of messages, a plurality of emojis, a plurality of conversations, a plurality of conversation topics, an avatar, an email address, a real name (e.g., John Doe), a username (e.g., jdoe), a password, a time zone, a status, a token, etc., but is not limited thereto.

[0065] In at least one example, the user / organization data 126 can include permission data associated with the permissions of individual users of the communication platform. In some examples, the permissions can be set automatically or by an administrator of the communication platform, an employer using the communication platform, a company, an organization or other entity, a team leader, a group leader, or other entities using the communication platform to communicate with team members or group members, individual users, etc. The permissions associated with an individual user can be mapped to an account or profile within the user / organization data 126 or otherwise associated. In some examples, the permissions can indicate which users can communicate directly with other users, which channels the user is permitted access to, restrictions on individual channels, which workspaces the user is permitted access to, restrictions on individual workspaces, etc. In at least one example, the permissions can support the communication platform by maintaining security to limit access to defined groups of users. In some examples, such users can be defined by common access credentials, group identifiers, etc., as described above.

[0066] In at least one example, the user / organization data 126 can include data associated with one or more organizations of the communication platform. In at least one example, the user / organization data 126 can store data associated with an organization, store data within an organization profile, which can include, but is not limited to, one or more user identifiers associated with the organization, one or more virtual space identifiers associated with the organization (such as workspace identifiers, communication channel identifiers, direct message instance identifiers, co-document identifiers, canvas identifiers, audio / video conversation identifiers, etc.), an organization identifier associated with the organization, one or more organization identifiers associated with other organizations authorized to communicate with the organization, etc.

[0067] In some examples, the user / organization data 126 may include the permission of the user of the communication platform. In some examples, the permission can be set automatically or by the administrator of the communication platform, the employer using the communication platform, the enterprise, the organization or other entity, the team leader, the group leader, or other entities using the communication platform to communicate with team members or group members, individual users, etc. In some examples, the permissions associated with an individual user can be mapped to the profile and / or account associated with the user / organization data 126, or otherwise associated. In some examples, the permissions can indicate which users can communicate directly with other users, which channels the user is permitted access to, restrictions on individual channels, which workspaces the user is permitted access to, restrictions on individual workspaces, etc. In at least one example, the permissions can support the communication platform by maintaining security to restrict access to a defined group of users. In some examples, such users can be defined by common access credentials, group identifiers, etc., as described above.

[0068] In some examples, the user / organization data 126 can store data related to permissions of groups associated with the communication platform. In some examples, the permissions can be set automatically or by the administrator of the communication platform, an employer using the communication platform, a company, an organization, or other entity, a team leader, a group leader, or other entity using the communication platform to communicate with team members or group members, individual users, etc. In some examples, the permissions associated with a group can be mapped to or otherwise associated with the data associated with that group. In some examples, the permissions can indicate restrictions on individual groups, restrictions on channels associated with individual groups, restrictions on users associated with individual groups, etc. In at least one example, the permissions can support the communication platform by maintaining security to restrict access to a defined group of users. In some examples, such groups can be defined by common access certificates, group identifiers, etc., as described above.

[0069] In some examples, the user / organization data 126 can store data related to permissions of individual communication channels. In some examples, the permissions can be set automatically or by the administrator of the communication platform, an employer using the communication platform, a company, an organization or other entity, a team leader, a group leader, or other entity using the communication platform to communicate with team members or group members, individual users, etc. In some examples, the permissions associated with a channel can be mapped to or otherwise associated with the data associated with that communication channel. In some examples, the permissions can indicate restrictions on individual channels, restrictions on users associated with individual channels, etc.

[0070] In at least one example, individual users can be associated with specific permissions, users having specific user types and / or roles (e.g., administrator users, reviewers, moderators, etc.) can be associated with specific permissions, objects (e.g., messages, etc.) can be associated with specific permissions, virtual spaces can be associated with specific permissions, etc. That is, user / organization data 126 can store various permissions for various components of environment 100. Also, permissions such as which users can edit, view, etc. a collaborative document, share the content within the collaborative document, post messages within the collaborative document, etc. can be associated with the collaborative document. In at least one example, collaborative document component 120 can update an instance of the collaborative document presented to a user of the collaborative document so that the data associated therewith is updated in real time or near real time.

[0071] In at least one example, the collaborative document data 128 can include data associated with one or more collaborative documents associated with a communication platform. The collaborative document data 128 can include text data, audio data, video data, images, files, and / or any other type of data configured to be transmitted in relation to the collaborative document, or virtual meetings related to the collaborative document. Non-limiting examples of collaborative documents include workspaces, communication channels, direct message instances, canvases, and audio and / or video conversations. In at least one example, the collaborative document data 128 can store separately the data associated with individual collaborative documents, such as based on individual identifiers associated with each collaborative document. In some examples, a first collaborative document can be associated with a second collaborative document. In such examples, the first collaborative document data associated with the first collaborative document can be stored in association with the second collaborative document. For example, data associated with a collaborative document generated in relation to a communication channel can be stored in relation to the communication channel. As another example, data associated with an audio and / or video conversation conducted in relation to a communication channel can be stored in relation to the communication channel.

[0072] As described above, each collaborative document of the communication platform can be assigned an individual identifier name that uniquely identifies the virtual space. In some examples, the collaborative document identifier associated with a virtual meeting can include a physical address within the collaborative document data 128 where the data associated with that collaborative document is stored. The collaborative document can be "public" to allow any user within the organization (e.g., associated with an organization identifier) to participate in data sharing via the collaborative document, or the collaborative document can be "private" to restrict data communication within the collaborative document to specific users or users with appropriate viewing permissions.

[0073] In some examples, the data store 124 can be partitioned into individual items of data (e.g., data shards) that can be accessed and managed individually. Data shards can simplify many technical tasks such as data retention, unfurling (e.g., detecting that message content includes links, crawling link metadata, determining a unified summary of the metadata), and integration settings. In some examples, data shards can be associated with an organization, a group (e.g., a workspace), a communication channel, a user, etc.

[0074] In some examples, an individual organization can be associated with a database shard within the data store 124 that stores data related to a particular organizational identity. For example, the database shard may store electronic communication data associated with members of a particular organization, thereby enabling members of that particular organization to communicate and exchange data with other members of the same organization in real time or near real time. In this example, the organization itself can be the owner of the database shard and have control over where and how the related data is stored. In some examples, the database shard can store data related to two or more organizations (e.g., within a shared virtual space).

[0075] In some examples, an individual group can be associated with a database shard within the data store 124 that stores data related to a particular group identity (e.g., a workspace). For example, the database shard may store electronic communication data associated with members of a particular group, which enables members of that particular group to communicate and exchange data with other members of the same group in real time or near real time. In this example, the group itself can be the owner of the database shard and can have control over where and how the related data is stored.

[0076] In some examples, a virtual space can be associated with a database shard within a data store 124 that stores data related to a particular virtual space identifier. For example, the database shard may store electronic communication data associated with the virtual space, which enables members of that particular virtual section to communicate and exchange data with other members of the same virtual space in real-time or near real-time. As described above, communication via the virtual space can be synchronous and / or asynchronous. In at least one example, a group or organization can be the owner of the database shard and have control over where and how the associated data is stored.

[0077] In some examples, an individual user can be associated with a database shard within a data store 124 that stores data related to a particular user account. For example, the database shard may store electronic communication data associated with the individual user, which enables members to communicate and exchange data with other members of the communication platform in real-time or near real-time. In some examples, the user themselves can be the owner of the database shard and have control over where and how the associated data is stored.

[0078] The communication interface 112 can include one or more interfaces and hardware components to enable communication with various other devices (such as the user computing device 104), for example, via the network 106 or directly. In some examples, the communication interface 112 can facilitate communication via WebSocket, an application programming interface (API) (such as using API calls), the Hypertext Transfer Protocol Secure (HTTPs), and the like.

[0079] Server 102 may further include various input / output devices 114 (e.g., I / O devices). Such I / O devices 114 may further include a display, various user interface controls (e.g., buttons, joysticks, keyboards, mice, touchscreens, etc.), audio speakers, connection ports, and the like.

[0080] In at least one example, user computing device 104 may include one or more processors 130, a computer-readable medium 132, one or more communication interfaces 134, and an input / output device 136.

[0081] In at least one example, each processor of processors 130 can be a single processing unit or multiple processing units, and can include single or multiple computing units or multiple processing cores. Processors 130 can include any of the types of processors described above with respect to processor 108, and can be the same as or different from processor 108.

[0082] Computer-readable medium 132 can include any of the types of computer-readable media 132 described above with respect to computer-readable medium 110, and can be the same as or different from computer-readable medium 110. The functional components stored on the computer-readable medium can optionally include one or more applications 138 and an operating system 140.

[0083] In at least one example, application 138 can be a mobile application, a web application, and / or a desktop application, which can be provided by a communication platform or can be other dedicated applications. In some examples, the individual user computing devices associated with environment 100 can have an instance of application 138 or a versioned instance, which can be downloaded from an application store, accessible via the Internet, or otherwise executable by processor 130 to perform the operations as described herein. That is, application 138 can be an access point that enables user computing device 104 to interact with server 102 to access and / or use communication services available via the communication platform. In at least one example, application 138 can facilitate data exchange between various other user computing devices, for example, via server 102. In at least one example, application 138 can present a user interface as described herein. In at least one example, a user can interact with the user interface via touch input, keyboard input, mouse input, voice input, or any other type of input.

[0084] A non-limiting example of the user interface 142 is shown in FIG. 1. As illustrated in FIG. 1, the user interface 142 can present data associated with one or more communication channels, which may include one or more workspaces. That is, in some examples, the user interface 142 can integrate data from multiple workspaces into a single user interface, such that a user (e.g., of the user computing device 104) can access and / or interact with data associated with multiple workspaces with which the user is associated and / or communicate with other users associated with the multiple workspaces. In some examples, the user interface 142 can include a first region 144 that includes an indicator (e.g., a user interface element or object) associated with a workspace with which a user (e.g., the user's account) is associated and / or an indicator (e.g., a user interface element, affordance, object, etc.) representing data associated with a workspace with which a user (e.g., the user's account) is associated, or can include a pane. In at least one example, the first region 144 can represent a sidebar of the user interface 142.

[0085] In at least one example, user interface 142 can be associated with a second region 146, or can include a pane, that shows a data feed (or “feed”) of messages posted and / or actions taken with respect to one or more communication channels to facilitate communication, as described herein. In at least one example, the data associated with the second region 146 can be associated with the same or a different workspace. That is, in some examples, the second region 146 can present data associated with the same or different workspaces via an integrated feed. In some examples, the data can be organized and / or sortable by workspace, time (e.g., when the associated data was posted or when the associated action was otherwise performed), type of action, communication channel, user, etc. In some examples, such data can be associated with an indication of which user (e.g., a member of the communication channel) posted the message and / or performed the action. In an example where the second region 146 presents data associated with multiple workspaces, at least some of the data can be associated with an indication of which workspace the data is associated with. Further details regarding the user interface 142 and the second region 146 are described below with reference to FIG. 2.

[0086] The user interface 142 displays affordances 148 for generating or otherwise creating virtual meetings and co - authored documents associated with the communication channel (e.g., Channel A) being accessed by the user. In some examples, the affordances 148 are displayed following the user's (e.g., input / output device 136) cursor hovering over a particular area of a message (or other object) within the communication channel or over the message itself. The affordances 148 enable the user to create or request the creation of co - authored documents in relation to the virtual meeting. For example, as shown in FIG. 1, users of a communication channel (e.g., Channel A) may communicate via text - based messages through the user interface 142. However, in some examples, the user may desire to interact via audio and / or video. Here, to create a virtual meeting with audio and / or video capabilities, one of the users may request a virtual meeting by selecting the affordance 148. As described herein, the virtual meeting may be requested from different messages, links, and other objects posted within the communication channel. The objects can include text documents, images, videos, or any other file or data item. Additionally, as described herein, in response to a request for a virtual meeting, a co - authored document is generated and a co - working space is provided where the user can engage in audio and / or video communication in addition to, or as an alternative to, text - based communication. Additionally, within the virtual meeting, the user may share documents, content, links, etc.

[0087] In at least one example, the operating system 140 can manage the processor 130 of the server 102, the computer - readable medium 132, the hardware, the software, and the like.

[0088] The communication interface 134 can include one or more interfaces and hardware components to enable communication with various other devices (such as the user computing device 104), for example, via the network 106 or directly. In some examples, the communication interface 134 can facilitate communication via Websockets, APIs (such as using API calls), HTTPs, etc.

[0089] The user computing device 104 can further include various input / output devices 136 (such as I / O devices). Such I / O devices 136 can include a display, various user interface controls (such as buttons, joysticks, keyboards, mice, touchscreens, etc.), audio speakers, connection ports, etc.

[0090] The techniques described herein are described as being executed by the messaging component 116, the audio / video component 118, the co-document component 120, and the application 138, but the techniques described herein can be executed by any other component or combination of components that can be associated with the server 102, the user computing device 104, or a combination thereof.

[0091] FIG. 2 shows additional details related to the user interface 142 that presents data associated with a communication channel, virtual space, or co-document, as described above with reference to FIG. 1.

[0092] As described above, in at least one example, the user interface 142 can include a first region 144 or pane that includes an indicator (e.g., a user interface element or object) of a workspace associated with a user (e.g., the user's account), and / or an indicator (e.g., a user interface element or object) representing a virtual space associated with a workspace associated with a user (e.g., the user's account). In at least one example, the first region 144 can represent a sidebar of the user interface 142.

[0093] In at least one example, the first region 144 can include one or more subsections, and the one or more subsections can represent different virtual spaces. For example, the first subsection 200 can include an indicator that represents a virtual space that can aggregate data associated with a plurality of virtual spaces of which the user is a member. In at least one example, each virtual space can be associated with an indicator within the first subsection 200. In some examples, the indicator can be associated with an activation mechanism (e.g., an affordance) such that when activated, it can cause the application 138 to present, via the second region 146, data associated with the corresponding virtual space. In at least one example, a virtual space can be associated with all unread data associated with each of the workspaces with which the user is associated. That is, in some examples, if the user requests access to a virtual space associated with "unread", all data not read (e.g., not viewed) by the user can be presented within the second region 146, e.g., within a feed. In such examples, different types of events and / or actions that can be associated with different virtual spaces can be presented via the same feed. In some examples, such data can be organized and / or sortable by the associated virtual space (e.g., the virtual space in which the communication was transmitted), time, type of action, user, etc. In some examples, such data can be associated with an indication of which user (e.g., a member of the associated virtual space) posted the message and / or performed the action.

[0094] In some examples, virtual spaces can be associated with the same type of events and / or actions. For example, a "thread" can be associated with messages posted within the thread, files, etc., in relation to a message posted within a virtual space, and "mentions and reactions" (e.g., "M&R") can be associated with messages or threads where a user (e.g., user F) has been mentioned (e.g., via a tag) or another user has reacted (e.g., via an emoji, reaction, etc.) to a message or thread posted by that user. That is, in some examples, the same type of events and / or actions that can be associated with different virtual spaces can be presented via the same feed. Similar to the "unread" virtual space, data associated with such virtual spaces can be curated by virtual space, time, type of action, user, etc., and / or be sortable.

[0095] In some examples, a virtual space can be associated with facilitating communication between users of a communication platform and other users. For example, "connect" can be associated with enabling a user to generate an invitation to communicate with one or more other users. In at least one example, in response to receiving an indication to select a "connect" indicator, the communication platform can cause a connection interface to be presented in a second region 146.

[0096] In some examples, the virtual space can be associated with the headquarters (e.g., management center or command center) of a group (e.g., an organization, a team, etc.). In at least one example, the group headquarters can include a virtual headquarters or digital headquarters for management or command functions associated with a group of users. For example, "HQ" can be associated with an interface that includes a list of indicators related to a virtual space configured such that related members can communicate. In at least one example, a user can associate one or more virtual spaces with the "HQ" virtual space by a drag-and-drop operation or the like. That is, the user can determine related virtual spaces to associate with a virtual headquarters or digital headquarters, such as associating virtual spaces important to the user.

[0097] Although not shown, in some examples, the virtual space can be associated with one or more boards or documents with which a user is associated. In at least one example, when a user requests access to a virtual space associated with one or more documents with which the user is associated, the one or more documents can be presented via the user interface 142 (e.g., within the second region 146). In at least one example, as described herein, a document can be associated with an individual (e.g., private for a user), a group of users (e.g., a co-document), and / or one or more communication channels (e.g., members of a communication channel given access to the document) to enable a user of the communication platform to create, interact with, and / or view data associated with such a document.

[0098] Further, although not shown, in some examples, the virtual space can be associated with one or more canvases associated with a user. In at least one example, the canvas can include a flexible canvas for curating, organizing, and sharing collections of information among users. That is, the canvas can be configured to be accessed and / or modified by two or more users with appropriate permissions. In at least one example, the canvas can be configured to enable sharing of text, images, videos, GIFs, drawings (e.g., drawings generated by a user via a canvas interface), game content (e.g., users operating game controls synchronously or asynchronously), and the like. In at least one example, modifications to the canvas can include adding, deleting, and / or modifying previously shared (e.g., sent, presented) data. In some examples, the content associated with the canvas can be shareable via another virtual space such that the data associated with the canvas is accessible to and / or interactive with members of the virtual space.

[0099] In some examples, if the first sub-section 200 includes user interface elements representing a virtual space associated with audio and / or video communications (e.g., conversations, multimedia clips (e.g., videos, audio files, stories, etc.)) initiated by a user, the audio and / or video data associated with the user, which can be associated with different audio and / or video conversations, multimedia clips, stories, etc., can be presented via the second region 146. In some examples, such audio and / or video data can be presented via a feed. For the purposes of this description, the audio and / or video data can correspond to audio and / or video content provided by a user associated with a communication platform.

[0100] The first region 144 of the user interface 142 can also include a second sub - section 202 or a sub - pane, which is a personalized sub - section associated with personal documents associated with the user account. In at least one example, the user can select personal documents to be associated with the second sub - section 202 by dragging and dropping, pinning, or otherwise associating a selected personal document to the second sub - section 202. As described above, personal documents can include co - authored documents where the user is the only member. For example, personal documents can include a todo list, a document with saved items, etc.

[0101] In at least one example, the first region 144 of the user interface 142 can include a third sub - section 204 or a sub - pane that includes an indicator representing a communication channel. In some examples, the communication channels can include public channels, private channels, shared channels (e.g., between groups or organizations), a single workspace channel, a cross - workspace channel, combinations of the foregoing, etc. In some examples, the represented communication channel can be associated with a single workspace. In some examples, the represented communication channel can be associated with different workspaces (e.g., cross - workspace). In at least one example, if the communication channel is cross - workspace (e.g., associated with different workspaces), the user may be associated with both workspaces or only one of the workspaces. In some examples, the represented communication channel can be associated with a combination of a communication channel associated with a single workspace and a communication channel associated with a different workspace.

[0102] In some examples, the third sub-section 204 can represent all communication channels or a subset of all communication channels that a user has permission to access (such as as determined by permission data). In such examples, the communication channels can be arranged alphabetically based on the most recent conversation, based on the frequency of the conversation, based on the type of communication channel (e.g., public, private, shared, cross-workspace, etc.), based on the workspace, within a user-specified section, etc. In some examples, the third sub-section 204 can represent all communication channels or a subset of all communication channels that the user is a member of, and the user can interact with the user interface 142 to browse or view other communication channels that the user is not a member of but are not currently displayed in the third sub-section 204. In some examples, different types of communication channels (e.g., public, private, shared, cross-workspace, etc.) can be in different sections of the third sub-section 204, or can have their own sub-regions or sub-panes within the user interface 142. In some examples, communication channels associated with different workspaces can be in different sections of the third sub-section 204, or can have their own regions or panes within the user interface 142.

[0103] In at least one example, the second region 146 can include a fourth sub-section 206 or sub-pane that can include indicators representing communication with individual users or a plurality of designated users (such as instead of all or a subset of the members of an organization). Such communication can be referred to as a "direct message". That is, the fourth sub-section 206 or sub-pane can include indicators representing a virtual space associated with private messages between one or more users.

[0104] In at least one example, the second region 146 can include a fifth sub-section 208 or a sub-pane that can include an indicator representing the start of a virtual meeting having audio and / or video capabilities. For example, the fifth sub-section 208 can include an affordance 210 that a user can toggle to request a virtual meeting. In response, the user interface 142 can cause a co-document to be presented within the second region 146, and the user can communicate with audio and / or video. Further, as described herein, as part of requesting a co-document, one or more users associated with the co-document may be identified. Further, as described above, a co-document can also be requested via an affordance 148 presented within the second region 146. In some examples, as described herein, the affordance 148 may be selected to create a virtual meeting centered around a particular message within a communication channel, while the affordance 210 may be selected to create a virtual meeting independent of the communication channel.

[0105] That is, selecting the affordance 210 can request a co-document independently of an existing communication channel within the communication platform. In such an example, the request can be received in relation to the requesting user's user account, and the requesting user may be the sole member of the co-document until the co-document is shared with one or more additional users or until other users are invited to the co-document. In some examples, the request can be received in relation to a virtual meeting that includes audio and / or video communication.

[0106] As described above, in at least one example, the user interface 142 can include a second region 146 or pane associated with a feed that shows messages posted in a virtual space (e.g., a virtual space related to direct message communication, a virtual space related to communication channel communication, a virtual space related to co - document communication (e.g., via a messaging or chat interface within a co - document), a virtual space related to audio and / or video communication, etc.) to facilitate communication and / or actions taken thereon. In FIG. 2, a user (e.g., user F) can interact with the user interface 142 to view data related to the virtual space and / or request a co - document via the affordance 148.

[0107] In some examples, a co - document can be requested from or related to a message (or other object) posted within a communication channel. These messages can include, but are not limited to, text (e.g., which can be editable), files (e.g., text, audio, video, applications, etc.), tasks to be completed, tickets to be resolved, events (e.g., scheduled events, calendar invitations, calendar instances, etc.), messages previously sent via a communication platform, images, graphics, links to local objects, links to remote objects (e.g., third - party objects), etc. For example, as part of the request, the communication platform can identify one or more objects to be associated with a virtual meeting. In some examples, the communication platform can identify an object based on user input from a creating user (e.g., a first user). For example, the first user can request a virtual meeting to be created in relation to a specific document shared within a communication channel. Here, based on the user input, the communication platform can create the virtual meeting and co - document centered around that document. Thus, in some examples, a user can form a meeting centered around a document.

[0108] More specifically, in FIG. 2, the message indicator 212 is shown as being presented within the second region 146. This indicator 212 may be generated by a user (e.g., user F) in response to other communications within a communication channel (e.g., channel A). As shown, other users may respond to this message represented by an indicator 214 (e.g., a user interface element, an object, etc.) associated with the communication channel (e.g., #ChannelA). Other users may additionally or alternatively respond to the message by means of emojis or the like. Further, the user may be uploading a document represented by the affordance 216. For the purposes of this description, a “message” can refer to any electronically generated digital object provided by a user using the user computing device 104 and configured to be displayed within a communication channel and / or other virtual space (e.g., a virtual space associated with direct message communication, etc.) as described herein. A message can include any text, image, video, audio, or combination thereof provided by a user (using the user computing device). For example, a user can provide a message containing text as well as images and videos as message content within the message. In such an example, the text, images, and videos can be included in the message. Each message transmitted or posted to a communication channel of the communication platform can include metadata including a sending user ID, a message ID, message content, a group ID, a communication channel ID, etc. In at least one example, each of the aforementioned identifiers may include ASCII (American Standard Code for Information Interchange) text, a pointer, a memory address, etc.

[0109] In some examples, a user can comment on a message within a "thread". A thread can be a message associated with another message that is maintained within an object associated with the original message but not posted to a communication channel. Messages and / or threads can be associated with files, emojis, apps, etc. For example, regarding the message indicator 214, there are three responses to the message of user F, and these responses are a "thread" for the message of the user (e.g., user F).

[0110] A communication channel or other virtual space can be associated with data and / or content other than messages, or data and / or content associated with a message. Non-limiting examples of additional data that can be presented via the second region 146 of the user interface 142 include co-authored documents (e.g., documents that can be co-edited in real-time or near real-time), audio and / or video data related to a conversation, members added to and / or removed from a communication channel, files (e.g., attached files) uploaded to and / or removed from a communication channel, applications added to and / or removed from a communication channel, posts (data that can be co-edited by one or members of a communication channel in near real-time), descriptions added to, changed, and / or removed from a communication channel, changes to the characteristics of a communication channel, etc.

[0111] In some examples, the second region 146 can include feeds associated with a single virtual meeting and / or a single collaborative document. In such examples, data associated with the collaborative document can be presented via the feed. In at least one example, data associated with the collaborative document can be viewable by at least some of the users of a group of users associated with the same group identifier, such as a user having appropriate permissions to access the collaborative document. In some examples, the content of the collaborative document (e.g., messaging communication) can be displayed to each member of the collaborative document. For example, a common set of group-based messaging communication can be displayed to each member of the collaborative document such that the content of the collaborative document (e.g., messaging communication) does not vary for each member of the collaborative document. In some examples, data associated with the collaborative document appears differently for different users (e.g., based on personal configuration, group membership, etc.).

[0112] In at least one example, the format of the collaborative document may appear differently for different users. In some examples, the format of the collaborative document may appear differently based on the workspace the user is currently interacting with or most recently interacted with. In some examples, the format of an individual virtual space may appear differently for different users (e.g., based on personal configuration, group membership, etc.).

[0113] As described herein, in response to requiring a virtual meeting and generating a collaborative document, an invitation may be sent to other users. In some examples, the invitation can indicate the object (e.g., message) for which the virtual meeting is created, provide the context of the virtual meeting, and indicate to other users the reason the virtual meeting is scheduled.

[0114] In at least one example, the user interface 142 can include a search mechanism 218 through which a user can enter search terms and the server 102 can perform a search associated with the communication platform. In some examples, the user can perform a search across each workspace associated with the user, or, based on user specifications, limit the search to a specific workspace.

[0115] The user interface 142 is a non-limiting example of a user interface that can be presented via the user computing device 104 (e.g., by the application 138). In some examples, the application 138 can receive data from the messaging component 116, the audio / video component 118, and / or the co-document component 120, and the application 138 can generate and present the user interface 142 based on that data. In other examples, the application 138 can receive data from the messaging component 116 and / or the audio / video component 118, and can receive instructions for generating the user interface 142 from the messaging component 116, the audio / video component 118, and / or the co-document component 120. In such examples, the application 138 can present the user interface 142 based on the instructions. Additional or alternative data can be presented via the user interface, and additional or alternative configurations can be envisioned.

[0116] FIG. 3 shows an exemplary user interface 142 for inviting a user to a virtual meeting. For example, the user interface 142 is shown to display a window 300. In some examples, the window 300 may be displayed following a user's selection of affordance 148 or affordance 210. For example, in response to a request for a virtual meeting, the user interface 142 may display the window 300.

[0117] Window 300 includes a field 302 that enables a user to enter the name of a user to invite to a virtual meeting or search for a user to invite to the virtual meeting. In some examples, window 300 can present a list of users who are members of a communication channel (e.g., Channel A) to facilitate inviting a user to the virtual meeting. The user can select the affordances of the users to invite each user to the virtual meeting respectively.

[0118] As further shown in FIG. 3, the affordance 210 may be activated (e.g., toggled on) to indicate that the user is requesting a virtual meeting. In response, the fifth subsection 208 may indicate the users within (or invited to) the virtual meeting. Additionally or alternatively, the fifth subsection 208 may include affordances to enable audio, content sharing, messaging, etc.

[0119] FIG. 4 shows an exemplary user interface 142 that shows a co - document 400 generated in response to a scheduled virtual meeting. The co - document 400 is presented via the user interface 142 as described above and includes functionality associated with a virtual space, such as a communication channel where users can collaborate. In some examples, the co - document 400 can be a virtual space, board, canvas, page, etc. for co - communication and / or data compilation within a communication platform. In at least one example, the co - document 400 can support editable text and / or objects that can be ordered, added, deleted, modified, etc. In some examples, the co - document 400 can be associated with permissions that define which users of the communication platform can view and / or edit the document.

[0120] The collaborative document 400 includes a first instruction 402 of the user and a second instruction 404 of the file. The user may be a user invited to collaborate within the collaborative document 400, and the file may be a file shared within the communication channel. For example, the collaborative document 400 may be created from a communication channel or a specific communication (such as a message) within the communication channel. A file shared (such as uploaded, posted, etc.) to the communication channel may be incorporated into the collaborative document 400. This enables users within the collaborative document 400 to easily access previously shared files within the communication channel and may avoid users toggling between windows to access the files.

[0121] In some examples, the collaborative document 400 can include a first area 406 and a second area 408. The first area 406 may be disposed vertically above the second area 408. The user may share the content within the collaborative document 400 by selecting a presentation affordance 410. In some examples, the presentation affordance 410 enables the user to share their respective screens (such as screen sharing). In some examples, when the presentation affordance 410 is selected, the content may be presented within the second area 408. Then, the icons 412 of the user (and other users within the collaborative document 400) may be presented vertically above, vertically below, horizontally, etc. of the second area 408.

[0122] The second area 408, i.e., a part of the collaborative document 400, may represent an area where files are presented, screens are shared, video streams are presented, etc. For example, in FIG. 3, an icon 412 associated with a user (e.g., user F) is displayed within the second area 408. In some examples, the icon 412 is displayed following the selection of the first instruction 402. For example, a user may select the first instruction 402 to view the users collaborating within the collaborative document 400. Here, the user (e.g., user F) is shown as the only user within the collaborative document 400, but when other users join, the collaborative document 400 (and the icon) may be updated.

[0123] The collaborative document 400 may also include one or more affordances for interacting within the collaborative document 400. For example, the audio affordance 414 enables a user to mute or unmute themselves. The video affordance 416 enables a user to turn on and off their camera. For example, when a user turns on their camera, the second area 408 may present a live stream (e.g., feed) of the user's image / video data. The meeting affordance 418, which may be similar to the affordance 210, enables a user to end (e.g., leave) the collaborative document 400. For example, in FIG. 4, the meeting affordance 418 is shown as toggled on, whereby the user is engaged within the collaborative document 400. If a user wishes to leave the collaborative document 400, the user may select (e.g., click) the meeting affordance 418 to toggle it off. In response, the user may be instructed to return to the communication channel, as shown, for example, in FIG. 2. Other affordances may enable a user to invite others to the collaborative document 400 or react to the content shared within the collaborative document 400 (e.g., emojis, likes, etc.).

[0124] The shared document 400 further includes a thread 420 through which users within the shared document 400 communicate. Messages are posted within the thread 420. In some examples, a user may type, upload / share a document, respond to other messages, etc. within the thread 420. For example, the thread 420 may include a messaging box 422 that enables users within the shared document 400 to communicate. In a non-limiting example, a user may type, upload an image, a document, etc., and respond to posts within the messaging box 422. In response to a message, the messaging component 116 may cause the shared document 400 to update and display the message. In some examples, the messaging component 116 can be configured to identify mentions or tags. In at least one example, a mention or tag can include an @mention (or other special character) of a user identifier associated with the communication platform. The user identifier can include a username, a real name, or other unique identifier associated with a particular user. In response to identifying a mention or tag of a user identifier, the messaging component 116 can cause a notification to be presented on a user interface associated with the user identifier.

[0125] In some examples, thread 420 pre-loads or otherwise incorporates messages that occur within the communication channel. In this sense, co-document 400 may include canvases generated using or related to communications, files, etc. shared within the communication channel. For example, thread 420 is shown as displaying three messages, where two of those messages include files. These messages and files may be posted within the communication channel centered around the object for which co-document 400 was created. In this sense, co-document 400 need not include all communications that occur within the communication channel, and may include only communications centered around the object for which co-document 400 was created. By incorporating communications made within the communication channel into co-document 400, users of co-document 400 can quickly and easily determine context and previous communications that have occurred. Thus, messages and / or data exchanged via the communication channel prior to a scheduled virtual meeting may be accessible to the user.

[0126] Returning briefly to FIG. 2, for example, a user (e.g., user F) posts a message and three responses are shown (e.g., via indicator 214). Thread 420 of FIG. 4 includes the message posted by the user, as well as responses from other users (e.g., three responses). Scroll 424 is provided to allow the user to view these responses along with the message. Additionally, document affordance 216 included in the message by the user is further displayed within the thread. This document may additionally or alternatively be accessed via a second indicator 404 associated with the file. In some examples, selecting document affordance 216, or the affordance of another document within the thread, can open a new window, application, pop-up, etc. for viewing the document.

[0127] When the meeting is about a specific object, the shared document 400 enables users to use links, files, slides, documents, screen sharing, audio, video, etc. as ways to record communications, content, etc. In some examples, the shared document 400 provides an archive that is referenced, edited, added to, etc. after the virtual meeting is held. Thus, the shared document 400 is intended to be a shared space for sharing and discussing content in real time, and then the shared document 400 may be reopened and edited again by everyone who has access. In some examples, the shared document 400 may be used within synchronous or asynchronous work. For example, the shared document 400 may be generated independently of the virtual meeting.

[0128] FIG. 5 shows an exemplary user interface 142 showing a shared document 500 generated in response to a scheduled virtual meeting. The shared document 500 in FIG. 5 may be the same as the shared document 400 described above with respect to FIG. 4. However, in FIG. 5, for example, a shared document 500 including a different style of canvas is shown.

[0129] For example, the shared document 500 is shown to include a first area 502 including user icons within the shared document 500. Each user may include an icon (such as a picture, image, emoji, etc.) to indicate the presence of the user within the shared document 500. For example, the first icon 504 may be associated with the first user, the second icon 506 may be associated with the second user, and the third icon 508 may be associated with the third user. The fourth icon 510 enables a user to invite other users to the shared document 500.

[0130] In some examples, the collaborative document 500 includes a second area 512 that is vertically below the first area 502. The second area 512 may include affordances associated with adding a file to the collaborative document 500, sharing a screen within the collaborative document 500, and / or pasting a link to the collaborative document 500 (e.g., a URL). For example, a first affordance 514 may be associated with adding a file to the collaborative document 500. In response to the selection of the first affordance 514, the collaborative document 500 may include a pop-up window that enables the user to add a file to the collaborative document 500. In some examples, the pop-up window may display files that the user has most recently shared within the communication platform (either inside or outside of a communication channel).

[0131] A second affordance 516 enables the user to share a screen and present content. In such an example, the shared content may be displayed within the second area 512 of the collaborative document 500. On the other hand, a third affordance 518 enables the user to paste a link to the collaborative document 500. For example, the user may provide a link to a third-party document, a website (e.g., a URL), etc. The collaborative document 500 is further shown to include a thread 520, which may be similar to the thread 420 as described above.

[0132] In some examples, the second area 512 may represent the stage of the collaborative document 500 where content is shared and presented. For example, when a link is added, the affordance of that link may be presented in the second area 512. Also, as another example, if a file is attached, the affordance of that file may be presented in the second area 512.

[0133] As described above, when a virtual meeting is initiated, a shared document 500, such as thread 520, captures communications that occur within the communication channel. In some examples, messages are at least partially based on an object (e.g., a message) for which the shared document 500 was created. The shared document 500 may represent a virtual canvas that is pre-seeded with content for the virtual meeting, and during the virtual meeting, the content is stored to gather, curate, and discuss work in a more focused, asynchronous manner than the communication channel. That is, the virtual meeting or shared document 500 is created around a particular object centered on things important to the virtual meeting (e.g., files, videos, websites, etc.). These exchanges are shared in relation to the shared document 500 that is saved, recorded, and accessed at a later stage.

[0134] FIG. 6 shows an exemplary user interface showing a shared document 600 generated in response to a scheduled virtual meeting. The shared document 600 of FIG. 6 may be similar to the shared document 400 described above with respect to FIG. 4 and / or the shared document 500 described above with respect to FIG. 5. However, in FIG. 6, a shared document 600 is shown that includes, for example, a different style of canvas.

[0135] For example, the first area 602 of the collaborative document 600 may include a first instruction 604 for a file added to the communication channel, or a first instruction 604 related to an object for which the collaborative document 600 was created. As shown, the first instruction 604 may include four files added (e.g., uploaded) to the communication channel. These files may have been added by any user within the communication channel, and the first instruction 604 may be displayed such that a user of the collaborative document 600 can quickly access and view the files (as compared to closing the collaborative document and viewing the files). A user within the collaborative document 600 is permitted to open the files, and in response, affordances of the files may be displayed within a second area 606 of the collaborative document 600. The first instruction 604 is shown as including four files that may be selected by the user, but more than four files may be presented, and the user may be permitted to scroll through the files within the first instruction 604 or toggle between files.

[0136] The second instruction 608 is associated with the sharing screen. For example, the second instruction 608 may be selected to view content being shared (or presented) via one of the users. In some examples, selecting the second instruction 608 updates the second area 606 to display the sharing screen. The second instruction 608 may include a preview of content being shared by a user (e.g., user F). On the other hand, the third instruction 610 may be associated with a file posted, uploaded, or included in the communication channel. For example, the link may be to a third-party website, a third-party document, etc. In some examples, the user is permitted to add additional files and links other than those included in (or gathered from) the communication channel. For example, as described above with respect to FIG. 5, the user can add files and / or post links. In such examples, the first instruction 604 and the third instruction 610 may each be updated to indicate a file and a link, respectively. Further, in some examples, files and / or links may be added via a thread 612.

[0137] The second area 606 is shown to display the icons of the users associated with the collaborative document 600. In some examples, the icons may represent the live video streams of the users as captured from their respective cameras and / or the photos of the users (e.g., profile photos). The user may have the ability to customize or individually select what is displayed in the second area 606. For example, if the user selects to view one of the files within the second instruction 608, the second area 606 may be updated to display the file. In this example, the user's icon may also be displayed in the first area 602. However, the second area 606 may display not only the file but also the user's icon. In such an example, a separate window, screen, etc. may be displayed in the second area 606, and the user may have the option to select what is displayed in the second area 606.

[0138] The links, files, and other content (e.g., shared screens) presented within the collaborative document 600 are archived for later use. For example, within a virtual meeting, the users may share their respective screens, upload links, or otherwise share content. This content is stored within the collaborative document 600 for use and / or viewing at a later time. In other words, the communications and content presented within the collaborative document 600 are recorded, and the collaborative document 600 can be accessed later. When accessed at a later time, the collaborative document 600 provides a quick and convenient reference regarding the communications that occurred previously. In other words, by archiving the collaborative document 600, the content of the virtual meeting is saved for use at a later time.

[0139] FIG. 7 shows an exemplary user interface showing a collaborative document 700 generated in response to a scheduled virtual meeting. In some examples, FIG. 7 shows the collaborative document 500 of FIG. 5 where the content is presented in the second area 512. For example, from the collaborative document 500 shown in FIG. 5, one of the users can share that screen. In response, the second area 512 is updated to display a first window 702 and a second window 704. In some examples, the first window 702 and the second window 704 may be presented from a single user or may be presented among different users. In the latter example, the user can toggle views between the first window 702 and the second window 704 regardless of what content the presenter is currently sharing. The first area 502 is further shown to include icons representing users within the collaborative document 700. In some examples, the second area 512 represents a part of the collaborative document 700 that includes a cluster of applications where users can interact and collaborate.

[0140] As further shown, the thread 520 enables users to post messages. For example, users (such as user A and user B) may post messages such as a first message 706 and a second message 708 within the thread 520. The first message 706 and the second message 708 may be incorporated within the collaborative document 700 and may be recorded to create records of the first message 706 and the second message 708. For example, when exiting the collaborative document 700, the first message 706 and the second message 708 may be incorporated into a communication channel in relation to the object for which the collaborative document 700 was created.

[0141] In some examples, the collaborative document 700 can be associated with permissions that define that users of the communication platform can view and / or edit the collaborative document 700. In some examples, the collaborative document 700 can be associated with a communication channel, and at least some members of the communication channel can view and / or edit the collaborative document 700. In some examples, the collaborative document 700 can be shareable such that data associated with the collaborative document 700 is accessible to users of multiple communication channels, workspaces, organizations, etc., and / or those users can interact with each other.

[0142] FIG. 8 shows an exemplary user interface 142 showing a collaborative document 800 generated in response to a scheduled virtual meeting. In some examples, FIG. 8 shows the collaborative document 500 of FIG. 5 where the content is presented in the second area 512. For example, from the collaborative document 500 shown in FIG. 5, one of the users can share that screen. In response, the second area 512 is updated and the second area 512 is displayed.

[0143] In some examples, the second area 512 is associated with a shared screen or content presented by a first user such as user F. The collaborative document 800 may indicate the position of the first cursor of the first user via a first indication 802. The first indication 802 is displayed along with the position of the first cursor within the content as shown in the illustration. The second area 512 further includes a second indication 804 associated with the position of the second cursor of the second user, and a third indication 806 associated with the position of the third cursor of the third user. The second indication 804 and the third indication 806 are displayed in relation to the positions of the first cursor and the second cursor within the content as shown in the illustration.

[0144] In some examples, by displaying the first indication 802, the second indication 804, and / or the third indication 806, the users of the collaborative document 800 are enabled to understand the specific portions of the content that are being referred to or discussed with each other. For example, if a first user is referring to a specific section or portion of the content, a second user and a third user can find the first indication 802 in order to understand the portion of the content that the first user is referring to. The same can be said for the second user and the third user in that the first user can understand which portions of the content the second user and the third user are referring to.

[0145] The second area 512 is shown to display a single window, but other windows, files, links, etc. may be displayed in the second area 512, and the first indication 802, the second indication 804, and / or the third indication 806 may be displayed across various windows, files, links, etc. For example, the first user may be presenting content within the second area 512, and the first indication 802 may refer to the position of the cursor within the second area 512, while the second user may be observing a file. Here, the file may be presented within the second area 512 (e.g., a portion thereof), and the second indication 804 may indicate the position of the cursor within the file. In some examples, the user may first have to opt-in or give permission for their cursor to be tracked respectively.

[0146] In some examples, the collaborative document 800 may be generated for a real-time virtual meeting that enables users to share lively files and screens with cursor tracking, drawing, and presence. The collaborative document 800 may further enable users to turn the video on / off when desired (or when useful). When the virtual meeting ends, the collaborative document 800 persists so that users do not lose the shared discussions, files, or links. However, although synchronous meetings are described herein, the techniques herein may be extended to asynchronous meetings that are held over a defined period and where users do not necessarily communicate in real time.

[0147] FIG. 9 shows an exemplary user interface 142 that depicts a collaborative document 900 generated in response to a scheduled virtual meeting. In some examples, FIG. 9 depicts the collaborative document of FIG. 5 where the content is presented in the second area 512.

[0148] The second area 512 is shown to include different content such as first content 902, second content 904, and third content 906. In some examples, each of the first content 902, second content 904, and third content 906 is presented in a separate window within the second area 512. Further, in some examples, each of the first content 902, second content 904, and third content 906 may be associated with different documents, files, and links included in the collaborative document 900. In other examples, the first content 902, second content 904, and third content 906 may be associated with documents, files, links, etc. being viewed by the user. In this sense, these documents, files, links, etc. currently being viewed by the user may be incorporated within the second area 512. When the user switches to view other content, the second area 512 may be updated to indicate that. In other examples, the content may be presented from a single user and other users may have the opportunity to move between the content and view different content.

[0149] The first content 902 is shown as being displayed together with the first indicator 908. In some examples, the first indicator 908 may highlight, outline, or otherwise indicate the first content 902 within another window. The first indicator 908 may function to indicate content presented by a user (e.g., user A) such as the first content 902. As further illustrated, in the first area 502, the user's (e.g., user A's) icon 910 may include a second indicator 912 that matches or is otherwise associated with the first indicator 908. In this sense, the first indicator 908 and the second indicator 912 may be the same. For example, if the first indicator 908 includes a highlighted border in blue around the first content 902, the second indicator 912 can include a highlighted border in blue around the icon 910. As described above, the user's icon 910 may include an image or video stream of the user. By associating the first indicator 908 and the second indicator 912, other users within the collaborative document 900 can visually identify the content presented, shared, or referenced by the user. The first indicator 908 and the second indicator 912 may be customizable by the user. Further, in examples where multiple users are presenting content, different pairs of indicators can be used to indicate the content presented by each user. For example, if another user is additionally presenting content, another set of indicators (e.g., a dashed pink outline) may be shown around the content within the second area 512.

[0150] In some examples, an indication of which content a user is viewing can also be shown. For example, a first indication 914 of a second user is shown to be presented along with second content 904. The first indication 914 includes the expression of the second user and can show other users, along with the collaborative document 900, that the second user is observing the second content 904. Further, a second indication 916 is shown to be presented in relation to third content 906 so as to show other users, along with the collaborative document 900, that a third user is observing the third content 906. Of course, in examples where the collaborative document 900 includes additional users, additional indications may be presented. In some examples, the first indication 914 and / or the second indication 916 may each include face piles of the user.

[0151] In some examples, the content within the second area 512 can each be reordered by the user and / or rearranged in other ways. In such examples, the second area 512, or the content displayed in the second area 512, may be modified so that the user can customize and / or personalize the collaborative document 900 to meet individual needs. The collaborative document 900 is shown to include specific content, but the collaborative document 900 can support the integration of other forms of collaboration, including other applications (via APIs), drawing, cursor tracking, a Guam board (e.g., a digital whiteboard), etc.

[0152] FIG. 10 shows an exemplary user interface 142 that shows a collaborative document 1000 generated in response to a scheduled virtual meeting. In some examples, the collaborative document 1000 of FIG. 10 may be similar to the collaborative document 600 of FIG. 6.

[0153] The first area 602 is shown to include first content 1002 presented by a first user (e.g., user A) and second content 1004 presented by a second user (e.g., user B). The first content 1002 and the second content 1004 may each include a first indicator 1006 and a second indicator 1008 for associating the first content 1002 and the second content 1004 with the first user and the second user, respectively. For example, within the first area 602, the first content 1002 includes a first indicator 1006 similar to a third indicator 1010 around a first icon 1012 of the first user within the second area 606. Similarly, within the first area 602, the second content 1004 includes a second indicator 1008 similar to a fourth indicator 1014 around a second icon 1016 of the second user within the second area 606.

[0154] From the view shown in FIG. 10, the user can select which content to view or which to present within the second area 606 of the collaborative document 1000. For example, if a third user (e.g., user F) wants to view the first content 1002, the third user can select the first content 1002 (or its affordance) within the first area 602. In response, the second area 606 of the collaborative document 1000 can be updated to display the second content 1004 to the third user.

[0155] The multi - sharing screen shown in the collaborative document 1000 provides an archive of links and conversations that are tracked and recorded. For example, within a virtual meeting, users can share their respective screens, upload links, or otherwise share content. This content is stored within the collaborative document 1000 for later use and / or viewing. In other words, the communications and content presented within the collaborative document 1000 are recorded and the collaborative document can be accessed later.

[0156] FIG. 11 shows an exemplary user interface 142 following the conclusion or closing of a collaborative document. As shown, a communication channel is depicted. However, the communication channel may be updated based on communications made within the collaborative document. For example, instruction 214 is shown to include five responses as compared to the previous three responses (shown in FIG. 2). That is, for example, if a user simply returns to the collaborative document of FIG. 7 where the user posted a message to the thread of the collaborative document, these messages may be shown within the communication channel in relation to the object for which the collaborative document was created. In other words, since the collaborative document was created around messages, communications within the thread (or more generally the collaborative document) may be embedded within the communication channel and associated with the messages. Thereby, communications with the collaborative document are archived. By grouping responses, the virtual meeting and / or discussion associated with the collaborative document can be maintained in relation to an object (such as a message within the communication channel), so that a user can easily follow the discussion associated with the virtual meeting and access the content for understanding the discussion associated with the virtual meeting (without being distracted by other events within the communication channel for example).

[0157] Furthermore, in some examples, to indicate that a virtual meeting has taken place, an indication of the virtual meeting and / or collaborative document can be presented within the communication channel. In some examples, a user can select on instruction 214 to open the thread and / or view the collaborative document. For example, in at least one example, a message representing the virtual meeting can be posted to the communication channel.

[0158] As further shown, affordance 148 is not displayed with the message. However, affordance 148 may be displayed when the user's cursor hovers over a specific area (e.g., the upper right corner) of the message. Further, the affordance 210 within the fifth sub-section 208 is shown as being toggled off to indicate that no virtual meeting is taking place. Further, when the user hovers over the instruction 214, a virtual meeting popup is displayed, enabling the user to open a collaborative document.

[0159] Figures 12 and 13 illustrate a process for generating a collaborative document in relation to a virtual meeting. The processes described herein are illustrated as a collection of blocks in a logical flow diagram, which represents a series of operations, some or all of which may be implemented in hardware, software, or a combination thereof. In a software context, the blocks may represent computer-executable instructions stored on one or more computer-readable media that program a processor to perform the recited operations when executed by one or more processors. Generally, computer-executable instructions include routines, programs, objects, components, data structures, etc. that perform particular functions or implement particular data types. The order in which the blocks are described should not be construed as limiting, unless otherwise noted. Any number of the recited blocks may be combined in any order and / or in parallel to implement the process or an alternative process, and it is not necessary to execute all of the blocks. For purposes of discussion, the process is described in relation to the environments, architectures, and systems described in the examples herein, such as those described in relation to FIGS. 1-11, but the process may be implemented in a wide variety of other environments, architectures, and systems.

[0160] At 1202, process 1200 may include receiving a request to generate a virtual meeting associated with an object. In one example, the object may include a text document, an image, a video, a message, or any other file or data item. For example, a first user may request a virtual meeting in relation to a message within a communication channel in which the first user is communicating with one or more additional users. In some examples, the request may be received independently of the communication channel and independently of the object. However, in this example, the first user may request a virtual meeting with one or more additional users to discuss the object or to collaborate in other ways around the object.

[0161] At 1204, process 1200 may include determining data associated with the object. For example, within a communication channel, a user may post a link regarding the object, upload a document, or convey a message. The data is used to determine or understand the context of the virtual meeting and to generate a collaborative document related to the virtual meeting. For example, the data may be presented within the collaborative document to enable users to engage with files, links, documents, etc.

[0162] In 1206, process 1200 may include generating a collaborative document related to a virtual meeting that includes data. For example, the collaborative document enables messaging and sharing functions resulting from the virtual space. In some examples, the collaborative document can be a virtual space, board, canvas, page, etc. for collaborative communication and / or data compilation within a communication platform. That is, the collaborative document can be treated as a virtual space such as a communication channel and can include the functionality associated with that virtual space. Thus, within the collaborative document, users may communicate, exchange messages, share content, etc. Using the data, the collaborative document may incorporate or otherwise indicate communications previously exchanged and associated with objects within the communication channel. For example, links, documents, videos, content, etc. that occurred within the communication channel in relation to an object may be shown within the collaborative document as a way to provide context to the virtual meeting. By doing so, within the collaborative document, users may engage in audio and / or video communication and share links, documents, screens (i.e., screen sharing), etc.

[0163] In at least one example, the collaborative document can support editable text and / or objects that can be ordered, added, deleted, modified, etc. The collaborative document may support various elements such as, but not limited to, text, symbols, emojis, images, videos, audio, charts, tables, lists, calendar items, spreadsheets, drawings, etc.

[0164] At 1208, process 1200 may include displaying a collaborative document in relation to a virtual meeting. For example, a collaborative document may be displayed on a user interface such that a user can engage in audio and / or video communication and share links, documents, chats, shared screens (i.e., screen sharing), etc. In some examples, the collaborative document may include threads that enable users to post messages to each other, upload links, share files, share screens, etc. Additionally, as described above, the collaborative document may incorporate or otherwise indicate files, documents, links, etc. associated with an object. The user may also have the ability to disable audio and / or video according to personal preferences.

[0165] At 1210, process 1200 may include determining one or more users associated with a virtual meeting and / or a collaborative document. In some examples, the one or more users may be determined based at least in part on the context in which the collaborative document was created, such as users who were members of a communication channel. In other examples, a user requesting a virtual meeting may manually enter the usernames (or other identifiers) of the users to be invited to the virtual meeting.

[0166] At 1212, process 1200 may include sending invitations to one or more users associated with a virtual meeting. For example, based on identifying the one or more users, a communication platform may send invitations to these users. In some examples, the invitation may include data associated with the collaborative document to indicate the context of the virtual meeting to the user. As an example, if the virtual meeting was created in relation to an object, the invitation may indicate that the virtual meeting is scheduled to discuss the object.

[0167] At 1214, process 1200 may include receiving an input via a shared document. The input may generally represent actions within the shared document, such as messages communicated within the shared document, links posted to the shared document, applications accessed, who is presenting / sharing the content, etc., when the content is being shared. In other words, a shared document created in relation to a virtual meeting can track and record what is happening within the virtual meeting. Thereby, a record of the virtual meeting can be created and archived for later use and access. Thus, when a user engages in audio and / or video communication and shares links, documents, screens, etc. (i.e., screen sharing), such inputs can be received and recorded.

[0168] Further, when a user is interacting with a shared document, the user can benefit from updates indicating whether other users are also interacting with the shared document simultaneously. For example, in the context of a collaborative task, a user may sometimes desire to quickly determine which other users are currently interacting with the shared document. Additionally, a user may sometimes want to know the content, files, links, etc. of the shared document with which others are interacting. The shared document can include a presence indicator that shows the user when another user is interacting with the shared document.

[0169] At 1216, process 1200 may include updating the shared document based at least in part on the input. For example, links, files, and other content (such as shared screens) presented within the shared document are archived for later use. Thus, even after the virtual meeting ends, the shared document persists so that the user does not lose the discussions, files, or links shared during the virtual meeting.

[0170] In 1218, process 1200 may include causing an affordance of a co - document related to an object to be displayed. In this way, after the virtual meeting ends, the co - document is stored and archived for later use and / or reference. When using the affordance, the co - document is intended to become a shared space for real - time content sharing and discussion, and then the co - document may be reopened and edited again by all those who have access. In some examples, the co - document may be used within synchronous or asynchronous work. For example, the co - document may be generated independently of the virtual meeting.

[0171] The co - document is configured to be accessed and / or edited by two or more users having appropriate permissions (such as view permission, edit permission, etc.). In some examples, the co - document can be associated with a permission that defines which users of the communication platform can view and / or edit the co - document. In some examples, the co - document can be associated with a communication channel, and the permission may be based on channel membership such that members of the communication channel can view and / or edit the document. In some examples, the co - document can be made shareable (e.g., via a link or other address indication) such that data associated with the document is accessible to and / or interactive for members of multiple communication channels, workspaces, organizations, etc. For example, the co - document can be associated with a user, channel, or other virtual space and shared with users who are not members by sharing a link to the document.

[0172] In at least one example, in response to receiving an indication of a selection of an affordance, the communication platform may cause the co - document to be presented via (or within) the user interface.

[0173] As introduced above, a collaborative document may be created in relation to a specific permission. For example, a user of a collaborative document may be granted access rights to the collaborative document, at least in part, based on the preferences of the user or organization associated with the creator of the collaborative document. In such an example, the permission settings associated with the collaborative document may be stored in association with the user account of the user or member of the collaborative document. In at least one example, the permission settings may include full editing permissions associated with the collaborative document. In such an example, a user of the collaborative document may be granted permission to contribute to, and / or edit, or otherwise modify the collaborative document. In other examples, the permission settings may include limited editing permission settings such as permission to add content but not delete content, permission to comment but not modify text within the collaborative document, read-only permissions, etc.

[0174] Additionally or alternatively, in some examples, the permission settings may include settings related to sharing data within the collaborative document. In some examples, the data may include content that is posted or otherwise made available via another virtual space not associated with the collaborative document. That is, a user may be permitted or restricted to share data (e.g., messages, files, etc.) that is posted or otherwise made available via an unrelated virtual space within the collaborative document, based on the sharing permissions. In some examples, the data may be presented within the collaborative document as an object that includes an indicator of the virtual space, an identifier associated with the sending user, and other data. In various examples, the data may be presented as a read-only object so that the data is not manipulated within the collaborative document. In some examples, the data as an object may be configured to function as the root of a message thread, similar to other objects presented in relation to the collaborative document. In such an example, a member of the collaborative document may not have permission to modify the data, but the member may discuss and otherwise comment on the data within the associated messaging thread.

[0175] Furthermore, in various examples, the permission settings may include permission to share the collaborative document and / or a portion thereof with one or more additional users. In various examples, the permission settings may include full sharing permission (e.g., a collaborative document or a portion thereof with read and write capabilities), restricted sharing permission (e.g., sharing a read-only copy of the collaborative document or a portion thereof), or no sharing permission (e.g., a user is not permitted to share the collaborative document with non-members). In at least one example, the permission settings associated with sharing a collaborative document can specify whether a particular user can add another user as a member of the collaborative document. In some examples, the permission settings associated with sharing a collaborative document can be based on the organizational affiliation of the requesting user and the additional users. For example, the permission settings may allow members to share the collaborative document with other users in a first organization but not with users associated with another organization. In another example, the permission settings may allow members to share a collaborative document with full editing permission with members of a first organization and share a read-only copy of the collaborative document with members of a second organization. Thus, the communication platform can allow sharing of the data presented in the collaborative document but prevent it from being modified by members of the second organization, for example, to maintain data integrity. In some examples, the permission to share a collaborative document and / or the permission to add additional users thereto can be specified by the creating user as explicit user preferences and / or organizational preferences associated with the creating user's organization, or as default settings associated with the communication platform.

[0176] FIG. 13 shows an exemplary process 1300 for retrieving a previously generated co - document. At 1302, process 1300 may include receiving a first request to participate in a first virtual meeting. For example, a user may request a virtual meeting to collaborate around an object and virtually meet with other users within a communication channel (or on a communication platform). In some examples, the virtual meeting may include text - based, audio - based, and / or video - based communication.

[0177] At 1304, process 1300 may include generating a first co - document associated with the first virtual meeting. In some examples, the first co - document is generated based on links, uploaded documents, or communicated messages regarding objects within the communication channel. As described herein, co - documents enable messaging and sharing of functionality resulting from virtual spaces, boards, canvases, pages, etc. for co - communication and / or data compilation within a communication platform. The co - document may incorporate or otherwise represent communications associated with objects previously exchanged within the communication channel. For example, links, documents, videos, content, etc. that occurred within the communication channel in relation to an object may be shown within the co - document as a way to provide context to the virtual meeting.

[0178] At 1306, process 1300 may include receiving a second request to leave the first virtual meeting. For example, the user may close the co - document. At 1308, process 1300 may include displaying affordances of the associated co - document. In this example, after the virtual meeting ends, the co - document is stored and archived for later use and / or reference. Using the affordances, the co - document is intended to become a co - space for sharing and discussing content in real - time, and then the co - document may be reopened and edited by all those who have access.

[0179] At 1310, process 1300 may include receiving a third request to participate in a second virtual meeting. For example, a user may request a virtual meeting to collaborate around an object and virtually meet with other users within a communication channel (or on a communication platform). In some examples, the virtual meeting may include text-based, audio-based, and / or video-based communication.

[0180] At 1312, process 1300 may include determining whether the second virtual meeting is associated with the first virtual meeting. For example, whether the first virtual meeting and the second virtual meeting are associated may be based on the users planning to discuss the same object, the users invited to the first virtual meeting and the second virtual meeting being the same, the third request including an identifier (e.g., multiple identifiers) indicating that the first virtual meeting and the second virtual meeting are similar, etc. In other examples, the third request may be received in relation to the affordance of a shared document. That is, by selecting the affordance of the shared document, the second virtual meeting may be a continuation of or associated with the first virtual meeting.

[0181] At 1312, if process 1300 determines that the first virtual meeting and the second virtual meeting are associated, process 1300 may proceed to 1314 following the "YES" route. At 1314, process 1300 may include retrieving the first shared document and displaying the first shared document. In this way, process 1300 shows a scenario where the shared document is stored and archived for later use and / or reference after the virtual meeting ends. That is, when the virtual meeting ends, the shared document persists so that the user does not lose the discussions, files, or links shared in the virtual meeting. At a later stage, another virtual meeting may be held around the same object, and in such a case, access the shared document.

[0182]

[0182] If, at 1312, process 1300 determines that the first virtual meeting and the second virtual meeting are not associated, the process may proceed to 1316 following the "NO" route and generate a second co - document in relation to the second virtual meeting.

[0183] Exemplary terms A: A method at least partially implemented by one or more computing devices of a group - based communication platform, the method comprising: receiving a first request to create a virtual meeting, the virtual meeting being associated with a virtual space of a communication system and a first user account of a first user, the virtual meeting having at least one of audio or video capabilities; receiving a second request to create a document associated with the virtual meeting; identifying one or more objects within the virtual space, the one or more objects being associated with one or more users of the virtual space; generating a document based at least in part on the second request and the one or more objects; displaying the document within a user interface of the communication system; detecting a selection of a particular one of the one or more objects within the user interface; and in response to detecting the selection of the object, displaying the object within the document.

[0184] B: The method of paragraph A, wherein the step of displaying the document comprises displaying a first indication of the object and displaying a second indication of a second object of the one or more objects.

[0185] C: The step of displaying a document is a step of displaying one or more icons within a first area of the document, where each individual icon of the one or more icons is associated with an individual object of one or more objects, and the step of displaying content associated with one or more objects within a second area of the document, and the method of paragraph A or B.

[0186] D: The document further includes a message thread, and in the message thread, communications within the virtual space of the communication system are captured, and the method of any one of paragraphs A to C.

[0187] E: The step of receiving a second request to associate the document with a second user account of a second user different from the first user, the step of associating the document with the second user account in response to receiving the second request, and the step of displaying an identifier associated with a virtual meeting within a second user interface associated with the second user account in response to associating the document with the second user account, and the method of any one of paragraphs A to D.

[0188] F: The virtual space includes a communication channel, and the method of any one of paragraphs A to E.

[0189] G: The step of receiving an interaction associated with a first user within the virtual space, and the step of presenting an affordance based on the interaction, where the selection of the affordance is associated with receiving a first request to create a virtual meeting, and the method of any one of paragraphs A to F.

[0190] H. The method further includes the step of determining one or more permissions associated with the document, where the one or more permissions include at least one of the ability to edit the document or the publication of the document, and the method of any one of paragraphs A to G.

[0191] I. The object includes at least one of a task, a ticket, a document, a calendar event, or a message shared in relation to a document and transmitted via a communication system, in any of the methods of paragraphs A - H.

[0192] J: A system at least partially implemented by one or more computing devices of a group - based communication platform, the system comprising: one or more processors; and one or more non - transitory computer - readable media storing instructions that, when executed, cause the system to: receive a first request to create a virtual meeting, the virtual meeting being associated with a virtual space of a communication system and a first user account of a first user, the virtual meeting having at least one of audio or video capabilities; receive a second request to create a document associated with the virtual meeting; identify one or more objects within the virtual space, the one or more objects being associated with one or more users of the virtual space; generate a document based at least in part on the second request and the one or more objects; display the document within a user interface of the communication system; detect a selection of an object among the one or more objects within the user interface; and in response to detecting the selection of the object, display the object within the document.

[0193] K: The system of paragraph J, wherein displaying the document includes displaying a first indication of an object and displaying a second indication of a second object among the one or more objects.

[0194] L: The system of paragraph J or K, wherein displaying the document includes displaying one or more icons within a first area of the document, each individual icon of the one or more icons being associated with an individual object of the one or more objects, and displaying content associated with the one or more objects within a second area of the document.

[0195] M: The document further includes a message thread, and the message thread incorporates communications within the virtual space of the communication system, for any of the systems in paragraphs J - L.

[0196] N: The operation further includes receiving a second request to associate the document with a second user account of a second user different from the first user, associating the document with the second user account in response to receiving the second request, and displaying an identifier associated with the virtual meeting within the second user interface associated with the second user account in response to associating the document with the second user account, for any of the systems in paragraphs J - M.

[0197] P: The operation further includes receiving an interaction associated with a first user within the virtual space and presenting an affordance based on the interaction, where the selection of the affordance is associated with receiving a first request to create a virtual meeting, for any of the methods in paragraphs J - N.

[0198] Q: The operation further includes determining one or more permissions associated with the document, where the one or more permissions include at least one of the ability to edit the document or the publication of the document, for any of the methods in paragraphs J - P.

[0199] R: When executed, cause one or more processors to receive a first request to create a virtual meeting, the virtual meeting being associated with a virtual space of a communication system and a first user account of a first user, the virtual meeting having at least one of audio or video capabilities, receive a second request to create a document associated with the virtual meeting, identify one or more objects within the virtual space, the one or more objects being associated with one or more users of the virtual space, generate a document based at least in part on the second request and the one or more objects, display the document within a user interface of the communication system, detect a selection of an object among the one or more objects within the user interface, and in response to detecting the selection of the object, display the object within the document. One or more non-transitory computer-readable media storing instructions that cause the above-described operations to be performed.

[0200] S: The document further includes a message thread, and the message thread captures communications within the virtual space of the communication system. One or more non-transitory computer-readable media of paragraph R.

[0201] T: The operations further include receiving a second request to associate the document with a second user account of a second user different from the first user, in response to receiving the second request, associating the document with the second user account, and in response to associating the document with the second user account, displaying an identifier associated with the virtual meeting within a second user interface associated with the second user account. One or more non-transitory computer-readable media of paragraph R or S.

[0202] The above exemplary sections are described with respect to one particular implementation, but in the context of this document, it should be understood that the content of the exemplary sections can be implemented via a method, device, system, computer-readable medium, and / or another implementation. Additionally, any of Examples A - T may be implemented alone or in combination with one or more of the others of Examples A - T.

[0203] Conclusion Although one or more examples of the techniques described herein have been described, various modifications, additions, substitutions, and equivalents are included within the scope of the techniques described herein.

[0204] In the description of the embodiments, reference is made to the accompanying drawings that form a part hereof. The accompanying drawings show, for purposes of illustration, specific embodiments of the subject matter of the claims. It will be understood that other examples may be used and changes or modifications such as structural changes may be made. Such examples, changes, or modifications do not necessarily depart from the scope of the subject matter of the intended claims. The steps herein may be presented in a certain order, but in some cases, the order can be changed so that an input is provided at a different time or in a different order without changing the functionality of the described system and method. The disclosed procedures may also be executed in a different order. Additionally, the various calculations described herein need not be executed in the disclosed order, and other examples using alternative orders of calculation can be readily implemented. In addition to being reordered, calculations may also be broken down into sub - calculations having the same result.

Claims

1. A method at least partially implemented by one or more computing devices of a group-based communication platform, comprising: receiving a first request to create a virtual meeting, wherein the virtual meeting is associated with a virtual space of a communication system and a first user account of a first user, and the virtual meeting has at least one of audio or video capabilities; receiving a second request to create a document associated with the virtual meeting; identifying one or more objects within the virtual space, wherein the one or more objects are associated with one or more users of the virtual space; generating the document based at least in part on the second request and the one or more objects; displaying the document within a user interface of the communication system; detecting a selection of an object of the one or more objects within the user interface; in response to detecting the selection of the object, displaying an object within the document; A method comprising the above steps.

2. The step of displaying the document comprises: displaying a first indication of the object; displaying a second indication of a second object of the one or more objects; The method according to claim 1, comprising the above steps.

3. The step of displaying the document comprises: displaying one or more icons within a first area of the document, wherein each individual icon of the one or more icons is associated with an individual object of the one or more objects; Displaying content associated with the one or more objects within the second area of the document; The method according to claim 1, comprising: **Claim 4** The document further includes a message thread that captures communications within the virtual space of the communication system; The method according to claim 1. **Claim 5** Receiving a second request to associate the document with a second user account of a second user different from the first user; In response to receiving the second request, associating the document with the second user account; In response to associating the document with the second user account, displaying an identifier associated with the virtual meeting within a second user interface associated with the second user account; The method according to claim 1, further comprising: **Claim 6** The virtual space includes a communication channel; The method according to claim 1. **Claim 7** Receiving an interaction associated with the first user within the virtual space; Presenting an affordance based on the interaction, wherein selection of the affordance is associated with receiving the first request to create the virtual meeting; The method according to claim 1, further comprising: **Claim 8** Further comprising determining one or more permissions associated with the document; The one or more permissions include at least one of an ability to edit the document or publication of the document; The method according to claim 1. **Claim 9** The object is A task Ticket, document, calendar event, or a message transmitted via the communication system and shared in relation to the document, and The method according to claim 1, comprising at least one of the above.

10. A computer program product including encoded instructions that, when executed on a computer, implement the method according to any one of claims 1 to 9.

11. A system at least partially implemented by one or more computing devices of a group-based communication platform, one or more processors, and when executed, cause the system to receive a first request to create a virtual meeting, wherein the virtual meeting is associated with a virtual space of a communication system and a first user account of a first user, and the virtual meeting has at least one of audio or video capabilities; receive a second request to create a document associated with the virtual meeting; identify one or more objects within the virtual space, wherein the one or more objects are associated with one or more users of the virtual space; generate the document based at least in part on the second request and the one or more objects; display the document within a user interface of the communication system; detect a selection of one of the one or more objects within the user interface; in response to detecting the selection of the object, display an object within the document; one or more non-transitory computer-readable media storing instructions that cause the above operations to be performed; A system comprising the above.

12. displaying the document comprises displaying a first indication of the object, and displaying a second indication of a second object among the one or more objects, and The system according to claim 11, comprising:

13. displaying the document comprises displaying one or more icons within a first area of the document, wherein each individual icon of the one or more icons is associated with an individual object of the one or more objects, and displaying content associated with the one or more objects within a second area of the document, and The system according to claim 11, comprising:

14. The document further includes a message thread that captures communications within the virtual space of the communication system. The system according to claim 11.

15. The operation comprises receiving a second request to associate the document with a second user account of a second user different from the first user, in response to receiving the second request, associating the document with the second user account, in response to associating the document with the second user account, displaying an identifier associated with the virtual meeting within a second user interface associated with the second user account, and The system according to claim 11, further comprising:

Citation Information

Patent Citations

  • Network conference system, conference minutes generating method, conference managing server, and conference minutes generating method

    JP2001331614A

  • A system, method, and computer program for providing a conference user interface.

    JP2013533526A

  • Program, information processing method, information processing device, and communication system

    JP2021072536A