Generating collaborative documents for virtual meetings in a communication platform
Techniques for providing a collaborative document in association with a virtual meeting on a communication platform are discussed herein. Users may communicate within the communication platform via text-based messages, which may include links, documents, videos, etc. Users may request a virtual meeting with audio and/or video capabilities. Responsive to a request, users within the communication channel may be invited to the virtual meeting and the collaborative document. The collaborative document can enable messaging and sharing functionalities attributable to a virtual space. The collaborative document may be populated with communications previously exchanged within the communication channel, such that links, documents, videos, content, etc. that occurred or were shared within the communication channel may be indicated within the collaborative document to provide context to the virtual meeting. Users may engage, within the collaborative document, in audio and/or video communications, as well as share links, documents, screens (i.e., screen-sharing), and the like.
1 . A method, implemented at least in part by one or more computing devices of a communication system, the method comprising:
receiving a request to create a virtual meeting around a communication shared within a first message thread of a virtual space, wherein the communication is a root object of the first message thread;
determining, by the communication system, contextual data associated with the communication, the contextual data indicating at least a topic to be discussed during the virtual meeting, wherein determining the contextual data comprises analyzing the first message thread to identify thread-specific data associated with the root object;
identifying, by the communication system and based at least in part on the contextual data, one or more objects previously shared in the virtual space, wherein the one or more objects are associated with one or more users of the virtual space, wherein the one or more objects are specifically related to the root object as determined from the contextual data;
generating a document based at least in part on the request to create the virtual meeting, wherein the document is associated with a second message thread that is prepopulated with the root object and the one or more objects previously shared in the virtual space, wherein the document is a collaborative document that is accessible to members of the virtual space from within the virtual space, and wherein the second message thread is a distinct data structure from the first message thread;
automatically populating the document with data that is specifically related to the virtual meeting and that was previously included within the virtual space, wherein the data includes communications previously exchanged within the virtual space and objects related to the virtual meeting, wherein functionalities of the virtual space are imbued in the document such that the document facilitates interactions between participants of the virtual meeting during the virtual meeting, wherein the functionalities imbued in the document include at least messaging functionality, file sharing functionality, and presence-indication functionality that collectively enable the document to operate as a different virtual space;
receiving an indication to initiate the virtual meeting;
in response to receiving the indication to initiate the virtual meeting, causing display of the document in a user interface of the communication system, the document comprising the root object, the one or more objects previously shared in the virtual space, and the data;
receiving, during the virtual meeting and within the second message thread, a plurality of communications, wherein a portion of the plurality of communications comprise one or more replies to the root object;
identifying metadata associated with the portion of the plurality of communications, wherein the metadata includes at least a sending user identifier, a message identifier, and a timestamp associated with the portion of the plurality of communications; and
embedding, after the virtual meeting has been terminated, the metadata associated with the portion of the plurality of communications with the root object such that the one or more replies to the root object received during the virtual meeting persist within the first message thread, thereby updating the first message thread in the virtual space to reflect the plurality of communications that occurred within the second message thread of the document during the virtual meeting without requiring separate user action to transfer the plurality of communications.
2 . The method of claim 1 , wherein causing display of the document comprises:
causing display of a first indication of the root object; and
causing display of a second indication of a second object of the one or more objects.
3 . The method of claim 1 , wherein causing display of the document comprises:
causing display of one or more icons within a first area of the document, individual icons of the one or more icons being associated with individual objects of the one or more objects; and
causing display of content associated with the one or more objects within a second area of the document.
4 . The method of claim 1 , wherein the document is associated with a first user account of a first user, the method further comprising:
receiving a second request to associate the document with a second user account of a second user that is different than 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, causing display of an identifier associated with the virtual meeting in a second user interface associated with the second user account.
5 . The method of claim 1 , further comprising determining one or more permissions associated with the document, the one or more permissions including at least one of editing abilities of the document or a publicity of the document.
6 . The method of claim 1 , wherein receiving the request to create the virtual meeting around the communication comprises receiving a second indication of a selection of an affordance associated with the communication.
7 . The method of claim 1 , wherein the virtual meeting is a first virtual meeting, the method further comprising:
receiving a second request to terminate the first virtual meeting;
in response to receiving the second request to terminate the first virtual meeting, storing the document in association with the communication shared within the virtual space;
receiving a second indication to create a second virtual meeting around the communication shared within the first message thread of the virtual space;
determining that the second virtual meeting is associated with the first virtual meeting based at least in part on the contextual data; and
in response to determining the second virtual meeting is associated with the first virtual meeting, causing display of the document in association with the second virtual meeting.
8 . The method of claim 1 , the method further comprising:
receiving a second request to terminate the virtual meeting;
generating, based at least in part on receiving the second request to terminate the virtual meeting, an affordance associated with the document, wherein selection of the affordance causes the document to be presented via the user interface; and
embedding the affordance associated with the document with the root object such that the affordance is presented in association with the communication.
9 . The method of claim 1 , wherein generating the document comprises generating a document identifier associated with the document, the document identifier configured to enable a messaging functionality and a sharing functionality within the document.
10 . The method of claim 1 , wherein the document enables multiple users to present content simultaneously within the document and during the virtual meeting, the method further comprising:
receiving, from a first user, a first request to present first content in a first area of the document;
causing the first content to be displayed in the first area of the document;
receiving, from a second user, a second request to present second content via a second area of the document; and
causing the second content to be displayed via the second area of the document in addition to the first content.
11 . The method of claim 1 , wherein the virtual space is a first virtual space and generating the document comprises:
determining first permission data associated with the first virtual space; and
generating second permission data associated with the document, the second permission data enabling the document to be shared to a second virtual space after the virtual meeting is terminated.
12 . The method of claim 1 , wherein automatically populating the document comprises:
generating a document identifier associated with the document that enables the communication system to treat the document as the different virtual space distinct from the virtual space of the first message thread;
associating the document identifier with the one or more objects identified based at least in part on the contextual data; and
transmitting the one or more objects to the document in response to generating the document identifier, thereby reducing a number of separately-running application instances on a user computing device to access the one or more objects during the virtual meeting.
13 . A system, implemented at least in part by one or more computing devices of a 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 perform operations comprising:
receiving a request to create a virtual meeting around a communication shared within a first message thread of a virtual space, wherein the communication is a root object of the first message thread;
determining contextual data associated with the communication, the contextual data indicating at least a topic to be discussed during the virtual meeting, wherein determining the contextual data comprises analyzing the first message thread to identify thread-specific data associated with the root object;
identifying, by the one or more computing devices of the communication platform and based at least in part on the contextual data, one or more objects previously shared in the virtual space, wherein the one or more objects are associated with one or more users of the virtual space, wherein the one or more objects are specifically related to the root object as determined from the contextual data;
generating a document based at least in part on the request to create the virtual meeting, wherein the document is associated with a second message thread that is prepopulated with the root object and the one or more objects previously shared in the virtual space, wherein the document is a collaborative document that is accessible to members of the virtual space from within the virtual space, and wherein the second message thread is a distinct data structure from the first message thread;
automatically populating the document with data that is specifically related to the virtual meeting and that was previously included within the virtual space, wherein the data includes communications previously exchanged within the virtual space and objects related to the virtual meeting, wherein functionalities of the virtual space are imbued in the document such that the document facilitates interactions between participants of the virtual meeting during the virtual meeting, wherein the functionalities imbued in the document include at least messaging functionality, file sharing functionality, and presence-indication functionality that collectively enable the document to operate as a different virtual space;
receiving an indication to initiate the virtual meeting;
in response to receiving the indication to initiate the virtual meeting, causing display of the document in a user interface of the communication platform, the document comprising the root object, the one or more objects previously shared in the virtual space, and the data;
receiving, during the virtual meeting and within the second message thread, a plurality of communications, wherein a portion of the plurality of communications comprise one or more replies to the root object;
identifying metadata associated with the portion of the plurality of communications, wherein the metadata includes at least a sending user identifier, a message identifier, and a timestamp associated with the portion of the plurality of communications; and
embedding, after the virtual meeting has been terminated, the metadata associated with the portion of the plurality of communications with the root object such that the one or more replies to the root object received during the virtual meeting persist within the first message thread, thereby updating the first message thread in the virtual space to reflect the plurality of communications that occurred within the second message thread of the document during the virtual meeting without requiring separate user action to transfer the plurality of communications.
14 . The system of claim 13 , wherein causing display of the document comprises:
causing display of a first indication of the root object; and
causing display of a second indication of a second object of the one or more objects.
15 . The system of claim 13 , wherein causing display of the document comprises:
causing display of one or more icons within a first area of the document, individual icons of the one or more icons being associated with individual objects of the one or more objects; and
causing display of content associated with the one or more objects within a second area of the document.
16 . The system of claim 13 , wherein the document is associated with a first user account of a first user, the operations further comprising:
receiving a second request to associate the document with a second user account of a second user that is different than 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, causing display of an identifier associated with the virtual meeting in a second user interface associated with the second user account.
17 . The system of claim 13 , the operations further comprising:
receiving an interaction associated with a first user in the virtual space; and
presenting, based at least in part on the interaction, an affordance, wherein a selection of the affordance is associated with receiving the request to create the virtual meeting.
18 . The system of claim 13 , the operations further comprising determining one or more permissions associated with the document, the one or more permissions including at least one of editing abilities of the document or a publicity of the document.
19 . One or more non-transitory computer-readable media storing instructions that, when executed, cause one or more processors to perform operations comprising:
receiving a request to create a virtual meeting around a communication shared within a first message thread of a virtual space, wherein the communication is a root object of the first message thread;
determining, by a communication system, contextual data associated with the communication, the contextual data indicating at least a topic to be discussed during the virtual meeting, wherein determining the contextual data comprises analyzing the first message thread to identify thread-specific data associated with the root object;
identifying, by the communication system and based at least in part on the contextual data, one or more objects previously shared in the virtual space, wherein the one or more objects are associated with one or more users of the virtual space, wherein the one or more objects are specifically related to the root object as determined from the contextual data;
generating a document based at least in part on the request to create the virtual meeting, wherein the document is associated with a second message thread that is prepopulated with the root object and the one or more objects previously shared in the virtual space, wherein the document is a collaborative document that is accessible to members of the virtual space from within the virtual space, and wherein the second message thread is a distinct data structure from the first message thread;
automatically populating the document with data that is specifically related to the virtual meeting and that was previously included within the virtual space, wherein the data includes communications previously exchanged within the virtual space and objects related to the virtual meeting, wherein functionalities of the virtual space are imbued in the document such that the document facilitates interactions between participants of the virtual meeting during the virtual meeting, wherein the functionalities imbued in the document include at least messaging functionality, file sharing functionality, and presence-indication functionality that collectively enable the document to operate as a different virtual space;
receiving an indication to initiate the virtual meeting;
in response to receiving the indication to initiate the virtual meeting, causing display of the document in a user interface of the communication system, the document comprising the one or more objects previously shared in the virtual space and the data;
receiving, during the virtual meeting and within the second message thread, a plurality of communications, wherein a portion of the plurality of communications comprise one or more replies to the root object;
identifying metadata associated with the portion of the plurality of communications, wherein the metadata includes at least a sending user identifier, a message identifier, and a timestamp associated with the portion of the plurality of communications; and
embedding, after the virtual meeting has been terminated, the metadata associated with the portion of the plurality of communications with the root object such that the one or more replies to the root object received during the virtual meeting persist within the first message thread, thereby updating the first message thread in the virtual space to reflect the plurality of communications that occurred within the second message thread of the document during the virtual meeting without requiring separate user action to transfer the plurality of communications.
20 . The one or more non-transitory computer-readable media of claim 19 , wherein the document is associated with a first user account of a first user, the operations further comprising:
receiving a second request to associate the document with a second user account of a second user that is different than 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, causing display of an identifier associated with the virtual meeting in a second user interface associated with the second user account.