Communication Platform Interactivity Transcript

The interactive conference transcript system within communication platforms addresses the challenges of note-taking and record review by enabling real-time commentary and voting, enhancing collaboration and efficiency in conferencing.

JP2025508671APending Publication Date: 2025-04-10SALESFORCE INC
View PDF 0 Cites 0 Cited by

Patent Information

Application Number
JP2024545156
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Priority Date
2022-01-31
Filing Date
2023-01-23
Publication Date
2025-04-10

AI Technical Summary

Technical Problem

Existing communication platforms face challenges in efficiently capturing and collaborating on information during audio or video conferencing, as attendees often struggle to take complete notes and review meeting records, which can be time-consuming and limit collaboration.

Method used

The implementation of an interactive conference transcript system within a communication platform, allowing users to select sections of the transcript for comment input, and enabling voting interfaces associated with the transcript, thereby enhancing collaboration and information access.

Benefits of technology

This solution improves the efficiency of reviewing conference content and increases collaboration by allowing real-time commentary and voting on meeting topics, reducing the need for follow-up meetings and conserving computing resources.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025508671000001_ABST
    Figure 2025508671000001_ABST
Patent Text Reader

Abstract

Techniques are described herein for providing an interactive conference transcript associated with a conference via a virtual space of a communication platform. In at least one example, a user requests to conduct an audio or video conference associated with a virtual space of a communication platform. The communication platform receives data representing the conference, generates a conference transcript associated with the conference based on the data, and causes the conference transcript to be presented via the virtual space. In at least one example, the communication platform receives an indication from a user of the virtual space of a selection of a section of the conference transcript, and causes an input interface to be presented, enabling the user of the virtual space to comment on the section of the conference transcript. In response to receiving the comment, the communication platform updates a file associated with the conference to include the comment.
Need to check novelty before this filing date? Find Prior Art

Description

[Technical field]

[0001] [CROSS-REFERENCE TO RELATED APPLICATIONS] This patent application claims priority to U.S. Utility Patent Application Serial No. 17 / 588,683, filed January 31, 2022. Application Serial No. 17 / 588,683 is incorporated by reference herein in its entirety. [Background technology]

[0002] Communications platforms are becoming increasingly popular to facilitate work-related communications, for example, for project collaboration within a single organization and across two or more organizations. To facilitate project collaboration, users often conduct meetings, such as audio or video conferences, to synchronize, divide up work, provide status updates, and the like. Often, meeting attendees can take notes of information disseminated during the meeting, for example, to follow up on action items, add tasks to a to-do list, and / or the like. However, notes are often incomplete because meeting attendees struggle to type or write as fast as another person speaks. Additionally, while concentrating on typing or writing notes, meeting attendees may miss information presented during the meeting. In some instances, meeting attendees may record the meeting and later listen to or watch the recording and review the meeting details. However, this process can be time-consuming and inefficient to identify information relevant to a particular attendee. Additionally, for the recording to be presented to other users who were not able to attend the original meeting, the other users may need to listen to the entire recording to identify the relevant sections of the meeting that apply to them. Finally, while recordings can be useful for communicating information to other users who were unable to attend, the communication is one-way, thereby limiting the amount of collaboration possible in a conference. [Brief description of the drawings]

[0003] The detailed description will be set forth with reference to the accompanying drawings, in which: Figure 1 is a block diagram of a method for manufacturing a semiconductor device according to the present invention; Figure 2 is a block diagram of a semiconductor device according to the present invention; Figure 3 is a block diagram of a semiconductor device according to the present invention; [Figure 1] 1 illustrates an example system for performing the techniques described herein. [Diagram 2] 1 illustrates an exemplary user interface for enabling user input associated with a conference transcript as described herein. [Figure 3A] 1 illustrates an exemplary user interface for selecting a section of a transcript and providing user input associated therewith, as described herein. [Figure 3B] 1 illustrates an exemplary user interface for selecting a section of a transcript and providing user input associated therewith, as described herein. [Figure 4A] As described herein, an exemplary process for receiving data representing a conference and causing a transcript of the conference to be presented via a virtual space. [Figure 4B] 1 is an exemplary process for receiving user input associated with a transcript of a conference and modifying a file associated with the conference based on the user input as described herein. [Diagram 5] 1 illustrates an example user interface for managing conference details associated with a conference conducted in association with a communications platform as described herein. [Figure 6A] 1 illustrates an exemplary user interface for making portions of a conference transcript selectable for commenting and presenting a failure notification in response to receiving a selection of a portion that is not selectable for commenting, as described herein. [Figure 6B]1 illustrates an exemplary user interface for making portions of a conference transcript selectable for commenting and presenting a failure notification in response to receiving a selection of a portion that is not selectable for commenting, as described herein. [Figure 6C] 1 illustrates an exemplary user interface for making portions of a conference transcript selectable for commenting and presenting a failure notification in response to receiving a selection of a portion that is not selectable for commenting, as described herein. [Figure 7] 1 illustrates an example user interface for presenting polls associated with a conference in association with a conference transcript as described herein. [Figure 8] 1 is an exemplary process for modifying a file associated with a conference based on user input received via a conference transcript, as described herein. [Figure 9] As described herein, an exemplary process for receiving a request to access a file associated with a conference and causing at least one of the file or a modified file to be presented, where the modified file includes a comment associated with a section of the conference. [Figure 10] 1 is an exemplary process for generating a transcript associated with a conference and displaying the transcript via a virtual space associated with the conference as described herein. [Figure 11] 1 is an exemplary process for providing a voting interface associated with a conference through a virtual space based on content contained in the conference, as described herein. DETAILED DESCRIPTION OF THE PREFERRED EMBODIMENTS

[0004] Techniques are described herein for providing an interactable conference transcript associated with an audio or video conference via a virtual space of a communication platform. The communication platform can be a group-based communication platform, a channel-based messaging platform, and / or any other platform for facilitating communication between users. In one example, one or more users (collectively conference attendees) can conduct a conference (e.g., audio conference, video conference, etc.) via the communication platform. The communication platform can receive data representing the conference from user account(s) associated with the conference attendee(s). The communication platform can publish a transcript of the conference via the virtual space (e.g., communication channel, direct messaging instance, collaborative document, etc.). In at least one example, the communication platform can make one or more sections of the transcript selectable for comment input. In response to receiving a selection of a first section of the one or more sections by a user associated with the virtual space, the communication platform can cause an input interface to be presented, e.g., enabling the user to comment on the first section of the transcript in a thread associated with the first section.

[0005] As mentioned above, audio and video conferencing has become a popular method for collaboration and information dissemination among colleagues, teammates, service providers (e.g., salespeople), and customers, to name a few. During a meeting, individual attendees may take notes, for example, to help recall the details of the meeting later. However, notes are often insufficient to capture everything that was discussed during the meeting. Additionally, while writing or typing notes, a meeting attendee may miss some of the information shared during the meeting. To prevent this problem, a meeting attendee (e.g., the host or other attendees) may record the meeting. Additionally, recording allows other users who could not attend the meeting to hear the content therein. Although recordings can be useful for conveying information to others, for an initial view, or to review the content therein, reviewing a recording can be time-consuming and static. That is, a user reviewing the recording can hear the meeting but cannot participate in the meeting or provide input associated with the topic of the meeting. Thus, the effectiveness of a meeting as a means for collaboration can be limited based on the number of attendees who can attend and the ideas those meeting attendees can spark during the meeting.

[0006] Techniques described herein are directed, among other things, to providing an interactable conference transcript to enhance the scope of collaboration associated with a conference. In at least one example, a first user may submit a request to generate a conference instance (e.g., an instance of a conference) with at least one other user. The request may include a request to generate an audio conference instance (e.g., Voice over Internet Protocol (VoIP)) or a video conference instance. In some examples, the first user may submit the request in association with a virtual space (e.g., a workspace, a communication channel, a direct message instance, a collaborative document, etc.). That is, the first user may request to generate a conference instance within the virtual space so that one or more other joinable members of the virtual space can attend. In some examples, the first user may select desired attendees, for example, from a list of members of the virtual space. In some examples, the provided list may include members of the virtual space who are currently online and / or active in the communication platform and therefore available to participate in the conference. In some examples, the first user may request to generate a conference independent of the virtual space. In such an example, a first user may select one or more other users of the communications platform to invite to the conference.

[0007] In response to the request to generate the conference, the communications platform can generate an audio or video conference and can provide a conference interface via individual clients (e.g., instances of a communications application, computing devices, etc.) associated with the conference attendees. In at least one example, the communications platform can receive data representing the conference from the clients. That is, the communications platform can receive first data from a first client associated with a first user, second data from a second client associated with a second user, and so on. In at least one example, the communications platform can store the data representing the conference in a database, such as an audio conference file or a video conference file.

[0008] In at least one example, the communication platform may be configured to generate a transcript associated with the data. The transcript may include a textual representation of the data. In at least one example, the communication platform may generate the transcript using known speech recognition techniques. In some examples, the communication platform may generate the transcript contemporaneously or substantially contemporaneously with the conference. That is, the communication platform may be configured to generate a textual representation of the conference while the conference is taking place. In some examples, the communication platform may generate the transcript after receiving an indication that the conference is completed. The indication that the conference is completed may include an indication that a conference host or administrator has stopped the conference, an indication that a threshold number of conference attendees have closed an associated conference interface, and / or the like. That is, the communication platform may identify the completion of the conference and, based on the completion, generate a transcript associated therewith.

[0009] In at least one example, the transcript may include a timestamp associated with each user input (e.g., first data, second data, etc.) provided during the conference. For example, the first data may include a first utterance by the first user at the first timestamp (e.g., beginning of a statement), the second data may include a second utterance by the second user at the second timestamp, and so on. In some examples, the timestamp may be associated with an interruption in the conversation. That is, the communication platform may be configured to identify a period during which no input is received (e.g., no comments from attendees) and may associate the timestamp with the next user input (e.g., next comment). For example, the first data may include a first utterance by the first user at the first timestamp. The communication platform may then determine that the first user pauses for a threshold amount of time (e.g., 0.7 seconds, 1 second, 2 seconds, etc.). The communication platform may then receive second data from the first user and associate the second timestamp with the second data.

[0010] In various examples, the communications platform may be configured to generate new timestamps based on explicit user input from a user, e.g., in response to receiving input including a keyword or other trigger. That is, a conference attendee may provide instructions to the communications platform to associate another timestamp with a subsequent input, e.g., to make a previous user input separately selectable in the transcript. For example, a user may say "break," "next section," "new idea," etc. to cause the communications platform to associate a timestamp with the subsequent input. In at least one example, the communications platform may generate a transcript in chronological order based on the timestamps, such that the transcript represents statements made in an ordered presentation.

[0011] In some examples, the communications platform may be configured to identify individual sections associated with the transcript. In at least one example, the sections may be associated with a timestamp. That is, the sections may be defined by individual input from conference attendees, interruptions in the conversation, explicit input of keywords or other triggers, and / or the like, as described above with respect to timestamps. In some examples, the sections may be associated with predefined intervals (e.g., 15 seconds, 30 seconds, 1 minute, etc.). In at least one example, the communications platform may generate a transcript having section indicators associated with each section, for example, to provide an indication of section distinction.

[0012] In some examples, the communication platform may cause a notification to be presented to an administrator or host of the conference that the transcript is available for publication. In some examples, the notification may be presented in association with an indicator or label associated with the conference presented via a user interface associated with the administrator or host. In some examples, the notification may be a pop-up or overlay notification. In some examples, the notification may be provided in an automated message, such as presented via a direct messaging instance, via a virtual space associated with the conference, and / or the like. In examples where the conference is associated with a virtual space, an automated message may be presented via the associated virtual space. In some examples, the notification may include a selectable option to share the transcript with one or more other users, for example, via the associated virtual space and / or another virtual space of the communication platform.

[0013] In at least one example, based on a determination that the meeting is associated with a virtual space (e.g., a meeting created via a virtual space) and / or in response to a selection of a selectable option to share the transcript, the communication platform may publish a transcript of the meeting via the virtual space (e.g., an associated virtual space, a virtual space associated with the sharing, etc.). That is, the communication platform may cause the transcript to be presented via the virtual space. In at least one example, the transcript may be presented as an automated message generated by the communication platform. In some examples, the transcript may be presented as a message from a user account associated with an administrator or host of the meeting.

[0014] In at least one example, the communications platform can make one or more sections of a transcript presented as a message selectable, such that each section can represent a root message for thread generation. That is, a viewing user can select a section of the transcript and generate a messaging thread associated with it, for example, to provide input or comments on that section. In some examples, the communications platform can identify one or more sections of a transcript to be selectable based on default settings associated with a conference conducted through the communications platform. In some examples, the default settings can be associated with a user account associated with an administrator or host of the conference, with organizational preferences associated with the organization hosting the conference, and / or with the communications platform itself. For example, the default settings can include settings that make all sections of a published transcript selectable for comment entry. As another example, default settings based on user or organizational preferences, etc., can include settings that make sections associated with the host and / or other identified personnel selectable for comment entry.

[0015] In some examples, the communications platform may be configured to identify one or more sections to be made selectable based on user input, such as from an administrator or host of the meeting. In some examples, the user input may be provided in association with a transcript of the meeting. That is, the user input may include individual selections to make sections selectable or non-selectable for comment input. In some examples, the user input may be provided independent of the transcript, for example, via a manage meeting details interface. In some examples, the administrator or host may provide data associated with portions of the meeting to be made selectable. For example, the meeting may include an introduction and breakout sessions. The user input may include instructions to make the breakout sessions selectable for comment input but not the introduction. In some examples, the administrator or host may provide user identifiers (e.g., usernames, real names, etc.) associated with the meeting attendees and / or individual meeting attendee selections to make sections associated with comments or input therefrom selectable.

[0016] In some examples, the communication platform may make one or more sections selectable for commenting for a period of time. In some examples, the period of time, such as a predetermined period for commenting (e.g., one week, one month, etc.), may be determined by the communication platform. In some examples, the period of time may be determined based on user input from an administrator or host of a conference or organization, for example, based on user or organization preferences. In some examples, the user input may be associated with a particular conference. In such examples, the user input may specify a particular period of time for user input into one or more sections of a particular conference. In response to receiving user input specifying the period of time, the communication platform may make the section(s) of the transcript (published via the virtual space) selectable for the period of time. After the period of time, the communication platform may make the section(s) of the transcript published via the virtual space unavailable for commenting (e.g., unavailable for selection).

[0017] In various examples, a user viewing a published transcript via the virtual space may select a section of the transcript. In response to the selection, the communication platform may identify whether the section is made selectable for commenting. Based on a determination that the section is not made selectable for commenting, the communication platform may cause a notice associated with the selected section that commenting is unavailable. Based on a determination that the section is made selectable for commenting, the communication platform may cause an input interface to be presented in association with the transcript. In at least one example, the input interface may include a threaded messaging interface configured to receive user input as a message published via a thread associated with the selected section. The user input may be provided in text, audio, and / or video. That is, a message associated with a messaging thread may include an audio message, a video message, or a message in text format.

[0018] In some examples, users viewing the transcript and / or messaging thread can view or hear messages (e.g., user input) and can publish additional messages (e.g., user input, comments, etc.) associated with the sections and / or messages. For example, a first user can select a first section of the transcript presented in association with the virtual space and can publish a first message in a messaging thread associated with the first section at a first time. A second user can select the first message to access the messaging thread at a second time after the first time, view the first message, and react to the first message and / or publish a second message in the messaging thread, e.g., comment on the first message and / or the first section. Subsequent users viewing the messaging thread can view, comment on, or react to the first message and the second message.

[0019] In various examples, the communications platform can store the user input in association with the conference file. In at least one example, the communications platform can modify the conference file to include the user input (e.g., a message provided in a messaging thread) in association with a selected section. That is, the communications platform can modify the conference file to include the selected section and one or more comments for that section provided via the messaging thread. In at least one example, the communications platform can modify the format of the messages to match the original conference file. For example, if the original conference file includes an audio conference file and the messages in the messaging thread include text, the communications platform can convert the text messages to an audio format for inclusion in the modified audio conference file. In examples where the original conference file includes a video conference file and the messages provided in the messaging thread include text or audio, the communications platform can cause an avatar or other image of the user associated with the message (e.g., the user who provided the user input) to be presented.

[0020] In at least one example, the communication platform can modify the conference file to associate messages provided via the messaging thread with the selected sections. That is, the communication platform can modify the conference file to include a first section, followed by the content of the message, followed by a second section (e.g., a section of the transcript that directly follows the first section, a consecutive section of the conference). In an example where the messaging thread includes two or more messages, the communication platform can include two or more messages associated with the first section in the modified audio file in chronological order based on the associated timestamps before the second (next) section. As such, the communication platform can be configured to modify the conference file to include user inputs received after the conference with the respective sections such that the user inputs included in the modified conference file are contextually relevant and provided in the order in which they were received (e.g., the respective users submitted messages in the thread).

[0021] In various examples, the communications platform can make the modified conference file accessible to users of the communications platform. In some examples, the communications platform can restrict access to the modified conference file based on user permissions. In some examples, the communications platform can associate user permissions to view the modified conference file with a conference administrator or host, conference attendees, and / or members of a virtual space associated with the conference or with which a transcript is shared. In some examples, the conference administrator or host can associate user permissions to view the modified conference file with selected users. That is, the administrator or host can designate selected users as eligible to view and / or view the modified conference file.

[0022] Additionally, the communication platform may be configured to increase the likelihood of collaboration associated with the conference by providing a voting interface for polls (e.g., surveys, etc.) in association with the conference transcript. In some examples, a conference administrator or host may associate a poll with the transcript, for example, to elicit additional feedback from viewers. For example, the administrator or host may send instructions to the communication platform to generate a poll for association with the published transcript via the virtual space. In such examples, the instructions may include voting characteristics such as the question(s) to be included in the poll, the topic(s) to be associated with an input box in which other users may submit their input, a period of time during which the poll is available for input, and / or the like. In some examples, the voting characteristics may include input anonymity, for example, providing an option to allow a viewing user to select to make some or all of the feedback submitted via the poll anonymous or to make one or more portions of the submitted input anonymous.

[0023] In some examples, the communication platform may be configured to generate votes based on the content of the conference. That is, the communication platform may utilize, for example, natural language processing techniques, machine learning techniques, and / or the like, to analyze the content of the conference (e.g., data representative thereof) to identify potential votes (e.g., voting characteristics of the votes). In some examples, in response to identifying the potential votes, the communication platform may generate a voting interface associated with the vote and associate it with the transcript. In at least one example, the communication platform may cause presentation of affordances associated with the voting interface to be presented via the virtual space in association with the transcript.

[0024] In some examples, in response to identifying a potential vote, the communications platform may send a confirmation request to an administrator or host of the conference, for example, to receive an explicit confirmation to associate a voting interface with the transcript. In some examples, the confirmation request may include an interface that allows the administrator or host to modify properties associated with the platform-generated voting interface. In response to receiving the confirmation and / or modified properties, the communications platform may associate with the conference transcript and cause an affordance associated with the voting interface to be presented via the virtual space.

[0025] In various examples, the communication platform may be configured to receive user input via an instance of a voting interface and store the results of the voting in association with the conference file. In some examples, the communication platform may be configured to transmit the user input and / or the results of the voting to an administrator or host of the conference. In some examples, the communication platform may provide the administrator or host with a link to access the results, e.g., in an automated message directed to the administrator or host. In some examples, the communication platform may be configured to publish the results of the voting (e.g., the tally) via the virtual space, e.g., in association with a transcript. In some examples, the communication platform may include a link to the results (the tally and / or the individually submitted inputs) in association with the transcript.

[0026] From a user experience perspective, the techniques described herein significantly improve a user's ability to review meeting content and the potential for collaboration associated with a meeting. As discussed above, conventional techniques for reviewing information discussed and / or disseminated during a meeting include reviewing notes taken during the meeting and / or listening to the recording. However, any of the currently available options for reviewing meeting content are inadequate from a user's perspective, as notes are often incomplete and recordings may require a significant amount of time to review. Unlike these conventional methods, the techniques described herein provide users with an automatically generated transcript of the meeting that is published through a virtual space associated with the meeting. That is, meeting attendees or other users who were unable to attend can efficiently access the content of the meeting and quickly review the information discussed and / or disseminated. Furthermore, the techniques described herein make sections of the published transcript commentable. That is, the communication platform can make sections selectable so that viewing users can comment on issues discussed during the meeting, submit ideas, and further collaborate. This not only allows meeting attendees to provide additional feedback associated with the meeting, but also allows other users who were unable to attend the meeting to participate, thereby greatly increasing the collaborative potential associated with the meeting.

[0027] Additionally, the techniques described herein can improve the capabilities of user computing devices. As mentioned above, previously, a user could play a recording of a meeting to review the meeting content. At times, the user may need to stop the recording, rewind, and play a section of the meeting to properly process the information contained in the recording. Depending on the topic and complexity of the conversation, the reviewing user may need to play a section multiple times before fully grasping the content therein. In contrast, the techniques described herein provide a transcribed transcript of the meeting content, thereby allowing the reviewing user to pause on a section, read, and re-read as necessary. This review of the transcript requires fewer computing resources than conventional techniques that may include playing a section of the meeting multiple times. As such, the techniques described herein can improve the capabilities of user computing devices by making additional computing resources available for other functions.

[0028] Furthermore, utilizing conventional techniques, users may often be required to schedule follow-on meetings to discuss certain topics raised in the initial meeting. Often, these follow-up meetings are conducted via video or audio (VoIP) calls and may utilize significant computing resources and network bandwidth. In contrast, the techniques described herein provide an interactable transcript associated with a meeting that is configured to enable users to continue discussing topics introduced during the meeting. This eliminates the need for follow-up meetings and conserves processing power on user computing devices. Additionally, by avoiding additional follow-up meetings, the techniques described herein may increase the amount of network bandwidth available for other functions and / or computing devices. Additional details and examples are described below with reference to FIGS. 1-11.

[0029] FIG. 1 illustrates an example system 100 for performing the techniques described herein. In at least one example, the example system 100 may be associated with a communications platform that can leverage a network-based computing system to enable users of the communications platform to exchange data. In at least one example, the communications platform may be “group-based” such that the platform, as well as associated systems, communication channels, messages, and / or virtual spaces, have security (definable by permissions) to limit access to a defined group of users. In some examples, such groups of users may be defined by a group identifier that may be associated with common access credentials, domains, and the like. In some examples, the communications platform may be a hub that provides a secure, private virtual space for users to chat, conference, call, collaborate, transfer files or other data, or otherwise communicate with one another. In various examples, each group may be associated with a workspace, enabling users associated with the group to chat, conference, call, collaborate, transfer files or other data, or otherwise communicate with one another in the secure, private virtual space. In some examples, members of the group, and thus the workspace, may be associated with the same organization. In some examples, members of a group, and therefore a workspace, may be associated with different organizations (eg, entities having different organization identifiers).

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

[0031] In at least one example, the server(s) 102 can communicate with the user computing device 104 and / or one or more other computing devices (e.g., a third-party computing device associated with a third-party resource) via one or more network(s) 106. That is, the server(s) 102, the user computing device 104, and the other party computing device(s) can transmit, receive, and / or store data (e.g., content, information, etc.) using the network(s) 106 as described herein. The user computing device 104 can be any suitable type of computing device, e.g., portable, semi-portable, semi-stationary, or stationary. Some examples of the user computing device 104 can include a tablet computing device, a smartphone, a mobile communication device, a laptop, a netbook, a desktop computing device, a terminal computing device, a wearable computing device, an augmented reality device, an Internet of Things (IOT) device, or any other computing device capable of transmitting communications and performing functions in accordance with the techniques described herein. Although a single user computing device 104 is shown, in practice the exemplary system 100 may include a plurality (e.g., tens, hundreds, thousands, millions) of user computing devices. In at least one example, a user computing device such as user computing device 104 is operable by a user to, among other things, access communication services via a communications platform. A user may be an individual, a group of individuals, an employer, a business, an organization, etc.

[0032] The network(s) 106 may include any type of network known in the art, such as, but not limited to, a local or wide area network, the Internet, a wireless network, a cellular network, a local wireless network, Wi-Fi and / or short-range wireless communication, Bluetooth, Bluetooth Low Energy (BLE), Near Field Communication (NFC), a wired network, or any other such network, or any combination thereof. The components used for such communication may depend at least in part on the type of network, the selected environment, or both. Protocols for communicating over such network(s) 106 are well known and will not be described in detail herein.

[0033] In at least one example, the server(s) 102 may include one or more processors 108, a computer-readable medium 110, one or more communication interfaces 112, and input / output devices 114. In at least one example, each processor of the processor(s) 108 may be a single processing unit or multiple processing units and may include single or multiple computing units or multiple processing cores. The processor(s) 108 may 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 manipulates signals based on operational instructions. For example, the processor(s) 108 may be one or more hardware processors and / or logic circuits of any suitable type that are specifically programmed or configured to execute the algorithms and processes described herein. The processor(s) 108 may be configured to fetch and execute computer-readable instructions stored on a computer-readable medium that may program the processor(s) to perform the functions described herein.

[0034] The 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 storing data such as computer-readable instructions, data structures, program modules, or other data. Such 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 storage tape, magnetic storage disks, 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 the server(s) 102, the computer-readable medium 110 can be a type of computer-readable storage medium and / or can be a tangible non-transitory medium, insofar as non-transitory computer-readable media, when referred to, excludes media such as energy, carrier signals, electromagnetic waves, and signals themselves.

[0035] The computer-readable medium 110 can be used to store any number of functional components executable by the processor(s) 108. In many implementations, these functional components comprise instructions or programs executable by the processor(s) 108 that, when executed, specifically configure the processor(s) 108 to perform actions attributed to the server(s) 102. The functional components stored on the computer-readable medium can optionally include a messaging component 116, a conference management component 118, an operating system 120, and a data store 122.

[0036] 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 a user computing device 104 and can transmit the message as an incoming message to a second user computing device 104. The message can include a direct message sent from the originating user to one or more designated users and / or a communication channel message sent from the originating user via a communication channel to one or more users associated with the communication channel. Additionally, the message can be transmitted in association with a collaborative document, such as in a chat interface associated therewith. In at least one example, the messaging component 116 can receive a message associated with a messaging thread from a user account (e.g., an associated user computing device).

[0037] In at least one example, the messaging component 116 can store the message in association with a root message of a messaging thread. That is, the messaging component 116 can associate the message with another message that was originally sent through the virtual space. In some examples, the messaging component 116 can identify a section of a conference transcript as a route for the message entry through the messaging thread. In such examples, the messaging component 116 can store data associated with the message in association with the conference transcript and / or the section thereof. In some examples, the conference component 116 can provide data associated with the message to the conference management component 118, for example, for future processing.

[0038] In some examples, the conference management component 118 may be configured to generate audio and / or video conference instances (e.g., conferences) via the communication platform and manage data associated therewith. In at least one example, the conference management component 118 generates the conference in response to receiving a request to initiate a conference from a user of the communication platform. In some examples, the user may submit the request in association with a virtual space (e.g., a workspace, a communication channel, a direct message instance, a collaborative document, etc.). In such examples, in response to receiving the request, the conference management component may generate a conference instance in association with the virtual space such that one or more other joinable members of the virtual space may attend. In some examples, the user may select desired attendees, for example, from a list of members of the virtual space. In some examples, the conference management component 118 may provide a list of members that includes members of the virtual space who are currently online and / or active in the communication platform and therefore available to participate in the conference. In some examples, the user may request to generate a conference independent of the virtual space. In such an example, the conference management component 118 can receive a request from a user's user account, the request including an indication of one or more other users of the communications platform to invite to the conference.

[0039] In response to a request to generate a conference, the conference management component 118 can generate an audio or video conference and can provide a conference interface via individual user computing devices 104 associated with the conference attendees. In at least one example, the conference management component 118 can receive data representing the conference (e.g., audio data, video data, text data, etc.) from the user computing devices 104. That is, the conference management component 118 can receive first data from a first user computing device 104 associated with a first user, second data from a second user computing device 104 associated with a second user, and so on. In at least one example, the conference management component 118 can store the data representing the conference in a data store 122, such as an audio conference file or a video conference file stored in conference data 124.

[0040] In at least one example, the conference management component 118 may be configured to generate a transcript associated with the data. The transcript may include a textual representation of the data, copies or links to documents or files referenced in the conference, and the like. In at least one example, the conference management component 118 may generate the transcript using speech recognition techniques. In some examples, the conference management component 118 may include a speech-to-text program incorporating artificial intelligence and / or machine learning techniques to identify the content of the conference (e.g., words spoken in the conference). In at least one example, the conference management component 118 may be configured to identify a user identifier of a user associated with a portion of the content (e.g., user input, utterances, information, and the like) and include the user identifier in a transcript associated with the portion of the content. That is, the conference management component 118 may be configured to generate a transcript that includes an identifier associated with the user who provided the respective portion of the content.

[0041] In some examples, the conference management component 118 can generate a transcript contemporaneously or substantially contemporaneously with the conference. That is, the conference management component 118 can be configured to generate a textual representation of the conference while the conference is taking place. In some examples, the conference management component 118 can generate a transcript in response to receiving an indication that the conference is completed. Non-limiting examples of an indication that the conference is completed can include an indication that a conference host or administrator has stopped the conference, an indication that a threshold number of conference attendees have closed an associated conference interface, an indication that data associated with the conference is not received for a threshold time (e.g., 3 minutes, 5 minutes, etc.), and / or the like. That is, the conference management component 118 can identify the completion of the conference and, based on the completion, generate a transcript associated therewith.

[0042] In at least one example, the transcript can include a timestamp associated with each user input (e.g., a portion of content, etc.) provided during the conference. For example, the first data can include a first utterance by the first user at a first timestamp (e.g., a beginning of the utterance), the second data can include a second utterance by the second user at a second timestamp, and so on. In some examples, the timestamp can be associated with a break in the conversation. That is, the conference management component 118 can be configured to identify a period during which no input is received (e.g., no comments from attendees) and associate the timestamp with the next user input (e.g., the next comment or portion of content received). For example, the first data can include a first utterance by the first user at the first timestamp. The conference management component 118 can then determine that the first user pauses for a threshold amount of time (e.g., 0.7 seconds, 1 second, 2 seconds, etc.), after which the conference management component 118 receives second data from the first user and associates the second timestamp with the second data.

[0043] In various examples, the conference management component 118 can be configured to generate new timestamps based on explicit user input from a user, for example, in response to receiving input including a keyword or other trigger. That is, a conference attendee can provide instructions to the conference management component 118 to associate another timestamp, for example, to make a previous user input separately selectable in the transcript. For example, a user can say "break," "next section," "new idea," etc. to cause the conference management component 118 to associate a timestamp with a subsequent input. In at least one example, the conference management component 118 can generate a transcript in chronological order based on the timestamps such that the transcript represents statements made in an ordered presentation.

[0044] In some examples, the conference management component 118 may be configured to identify individual sections associated with the transcript. In at least one example, the sections may be associated with a timestamp. That is, the sections may be defined by individual input from conference attendees, interruptions in the conversation, explicit input of keywords or other triggers, and / or the like, as described above with respect to timestamps. Continuing with the above example, a first data associated with a first timestamp may represent a first section, and a second data associated with a second timestamp may represent a second section. In some examples, the sections may be associated with predefined intervals (e.g., 15 seconds, 30 seconds, 1 minute, etc.). For example, a first section of the transcript may include a first time interval from 0 seconds to 25 seconds, and a second section of the transcript may include a second time interval from 26 seconds to 50 seconds.

[0045] In at least one example, the conference management component 118 can generate a transcript having section indicators associated with each section, for example, to provide an indication of the different sections. In some examples, the section indicators can include an indication of the respective section numbers, as presented in chronological order. For example, a first section of the transcript can include a "1" as a section indicator indicating that it is the first section of the transcript, a second section can include a "2", and so on. In some examples, the section indicators can include an indication of a timestamp associated with each section. In such examples, the conference management component 118 can be configured to identify a timestamp associated with each section, such as a start timestamp and / or a stop timestamp associated with each section. In at least one example, the section indicator can include a start timestamp of the associated section. In some examples, the section indicator can include a range of time (e.g., a start timestamp and an end timestamp) for the associated section. For example, the section indicator can include a range of 00:25 to 00:33.

[0046] In some examples, in response to generating a transcript associated with the conference, the conference management component 118 can cause a notification to be presented to an administrator or host of the conference that the transcript is available for publication. In some examples, the notification can be presented in association with an indicator or label associated with the conference presented via a user interface associated with the administrator or host. In some examples, the notification can be a pop-up or overlay notification. In some examples, the notification can be provided in an automated message, such as presented via a direct messaging instance, an administrative communication channel, a virtual space associated with the conference, and / or the like. In some examples, the notification can include a selectable option to share the transcript with one or more other users, for example, via the associated virtual space and / or another virtual space of the communication platform.

[0047] In at least one example, based on a determination that the conference is associated with a virtual space (e.g., a conference created via a virtual space) and / or in response to a selection of a selectable option to share the transcript, the conference management component 118 can publish a transcript of the conference via the virtual space (e.g., an associated virtual space, a virtual space associated with sharing, etc.). That is, the conference management component 118 can cause the transcript to be presented via the virtual space. In at least one example, the transcript can be presented as an automated message generated by the conference management component 118. In some examples, the transcript can be presented as a message from a user account associated with an administrator or host of the conference.

[0048] In at least one example, the conference management component 118 can make one or more sections of a transcript presented as a message selectable such that each section can represent a root message for thread generation. That is, a viewing user can select a section of a transcript and generate a messaging thread associated with it, for example, to provide input or comments on that section. In some examples, the conference management component 118 can identify one or more sections of a transcript to be selectable based on default settings associated with a conference conducted through the communication platform. In some examples, the default settings can be associated with a user account associated with an administrator or host of the conference, organizational preferences associated with the organization hosting the conference, and / or the communication platform itself. For example, the default settings can include settings that make all sections of a published transcript selectable for comment entry. As another example, default settings based on user or organizational preferences, etc., can include settings that make sections associated with the host and / or other identified personnel selectable for comment entry.

[0049] In some examples, the conference management component 118 may be configured to identify one or more sections to be made selectable based on user input, such as from an administrator or host of the conference. In some examples, the user input may be provided in association with a transcript of the conference. That is, the user input may include individual selections to make sections selectable or non-selectable for comment input. In some examples, the user input may be provided independent of the transcript, for example, via a conference detail management interface. In some examples, the administrator or host may provide data associated with portions of the conference to be made selectable. For example, the conference may include an introduction and breakout sessions. The user input may include instructions to make the breakout sessions selectable for comment input but not the introduction. In some examples, the administrator or host may provide user identifiers (e.g., usernames, real names, etc.) associated with the conference attendees and / or individual conference attendee selections to make sections associated with comments or input therefrom selectable.

[0050] In some examples, the conference management component 118 can identify a time period (e.g., an indefinite period, one day, one week, two weeks, etc.) associated with commenting on the transcript or a section thereof. In such examples, the conference management component 118 can make one or more sections selectable for commenting for that period. In some examples, a period, such as a predetermined period for commenting (e.g., one week, one month, etc.), can be determined by the conference management component 118. In some examples, the period can be determined based on user input from a conference administrator or host (e.g., user preferences, etc.), an organization administrator (e.g., organization preferences). In some examples, the user input can be associated with a particular conference. In such examples, the user input can specify a particular period for user input into one or more sections of the transcript associated with the particular conference. In response to receiving user input specifying the period, the conference management component 118 can make the section(s) of the transcript (published via the virtual space) selectable for that period. After that period of time, the conference management component 118 can disable commenting (eg, make it unselectable) on the section(s) of the transcript that was published via the virtual space.

[0051] As described above, in at least one example, the conference management component 118 can make at least one section of a conference transcript published via the virtual space selectable for commenting. That is, a user viewing the transcript via the virtual space can select a section of the transcript, and in response to the selection, the conference management component 118 can identify whether the section is selectable for commenting. Based on a determination that the section is not selectable for commenting, the conference management component 118 can cause a notice of non-commenting associated with the selected section. Based on a determination that the section is selectable for commenting, the conference management component 118 can cause an input interface to be presented in association with the transcript. In at least one example, the input interface can include a threaded messaging interface configured to receive user input as a message published via a thread associated with the selected section. The user input can be provided in text, audio, and / or video. That is, a message associated with the messaging thread can include an audio message, a video message, or a message in text format.

[0052] In some examples, users viewing the transcript and / or messaging thread can view, hear, or see messages (e.g., user input) and can publish additional messages (e.g., user input, comments, etc.) associated with the sections and / or messages. For example, a first user can select a first section of the transcript presented in association with the virtual space and send a first message in a messaging thread associated with the first section at a first time. A second user can select the first message to access the messaging thread at a second time after the first time, view the first message, and react to the first message and / or publish a second message in the messaging thread, e.g., comment on the first message and / or the first section. Subsequent users viewing the messaging thread can view, comment on, or react to the first message and the second message.

[0053] In various examples, the conference management component 118 can store the user input in association with a conference file, e.g., in association with the conference data 124 in the data store 122. In at least one example, the conference management component 118 can modify the conference file to include the user input (e.g., a message provided in a messaging thread) in association with a selected section. That is, the conference management component 118 can modify the conference file to include the selected section and one or more comments for that section provided via the messaging thread. In at least one example, the conference management component 118 can modify the format of the messages to match the original conference file. For example, if the original conference file includes an audio conference file and the messages in the messaging thread include text, the communications platform can convert the text messages to an audio format for inclusion in the modified audio conference file. In examples where the original conference file includes a video conference file and the messages provided in the messaging thread include text or audio, the communications platform can cause an avatar or other image of the user associated with the message (e.g., the user who provided the user input) to be presented.

[0054] In at least one example, the conference management component 118 can modify the conference file to associate messages provided via the messaging thread with the selected sections. That is, the conference management component 118 can modify the conference file to include a first section, followed by the content of the message, followed by a second section (e.g., a section of the transcript that directly follows the first section, a consecutive section of the conference). In an example where the messaging thread includes two or more messages, the conference management component 118 can include two or more messages associated with the first section in the modified audio file in chronological order based on the associated timestamps before the second (next) section. As such, the conference management component 118 can be configured to modify the conference file to include user inputs received after the conference with the respective sections such that the user inputs included in the modified conference file are contextually relevant and provided in the order in which they were received (e.g., the respective users submitted messages in the thread).

[0055] In various examples, the conference management component 118 can make the modified conference file accessible to users of the communication platform. In some examples, the conference management component 118 can restrict access to the modified conference file based on user permissions. In some examples, the conference management component 118 can associate user permissions to view the modified conference file with a conference administrator or host, conference attendees, and / or members of a virtual space associated with the conference or whose transcript is shared. In some examples, the conference administrator or host can associate user permissions to view the modified conference file with selected users. That is, the administrator or host can designate selected users as eligible to view, hear, and / or see the modified conference file.

[0056] Additionally, in some examples, the conference management component 118 can further increase the likelihood of collaboration associated with a conference by providing a voting interface for voting (e.g., a survey, etc.) in association with a conference transcript, such as one published via the virtual space. In some examples, a conference administrator or host can, for example, associate a vote with the transcript to elicit additional feedback from viewers. For example, the administrator or host can send instructions to the conference management component 118 to generate a vote for association with the transcript published via the virtual space. In such examples, the instructions can include voting characteristics, such as the question(s) to be included in the vote, the topic(s) to be associated with an input box in which other users can submit their input, a period of time during which the vote is available for input, and / or the like. In some examples, the voting characteristics can include input anonymity, for example, providing an option to allow a viewing user to select to make some or all of the feedback submitted via the vote anonymous or to make one or more portions of the submitted input anonymous.

[0057] In some examples, the conference management component 118 may be configured to generate votes based on the content of the conference. That is, the conference management component 118 may be configured to analyze the content of the conference (e.g., data representative thereof) to identify potential votes, e.g., utilizing natural language processing techniques, machine learning techniques, and / or the like. In some examples, in response to identifying a potential vote, the conference management component 118 may generate a voting interface associated with the vote and associate it with the transcript. In at least one example, the conference management component 118 may cause presentation of an affordance associated with the voting interface to be presented via the virtual space in association with the transcript.

[0058] In some examples, in response to identifying a potential vote based on the content of the conference, the conference management component 118 can send a confirmation request to an administrator or host of the conference, for example, to receive an explicit confirmation to associate a voting interface with the transcript. In some examples, the confirmation request can include an interface that allows the administrator or host to modify properties associated with the platform-generated voting interface. In response to receiving the confirmation and / or modified properties, the conference management component 118 can associate with the conference transcript and cause an affordance associated with the voting interface to be presented via the virtual space.

[0059] In various examples, the conference management component 118 may be configured to receive user input via an instance of a voting interface and store the results of the vote (e.g., voting results) in the data store 122. In at least one example, the conference management component 118 may store the voting results in association with the conference file, for example, in the conference data 124. In some examples, the conference management component 118 may be configured to tally the voting results. In some examples, the conference management component 118 may store the user input as an tally and / or as individual user inputs (e.g., individual responses to a vote).

[0060] In some examples, the conference management component 118 may be configured to send user inputs and / or tally results to an administrator or host of the conference. In some examples, the conference management component 118 may provide a link to the administrator or host to access the results, for example, in an automated message directed to the administrator or host. In some examples, the conference management component 118 may be configured to publish the results of the votes (e.g., tally results) via the virtual space, for example, in association with a transcript. In some examples, the conference management component 118 may include a link to the results (tally results and / or individually submitted inputs) in association with the transcript.

[0061] In at least one example, the conference management component 118 can determine whether all or a portion of the individual responses to votes (e.g., individual user inputs) were submitted anonymously. In response to determining that all or a portion of the individual responses were submitted anonymously, the conference management component 118 can withhold data associated with the submitting user's identity from all or a portion of the user inputs. In some examples, the conference management component 118 can store a user identifier associated with the voting results, such as in the data store 122, as metadata associated with the votes and / or the voting results.

[0062] In at least one example, data store 122 may be configured to store accessible, downloadable, manageable, and updateable data. In some examples, data store 122 may be integrated with server(s) 102, as shown in FIG. 1. In other examples, data store 122 may be located remotely from server(s) 102 and accessible to server(s) 102 and / or user computing device(s), such as user computing device 104. Additional or alternative data may be stored in data store 122 and / or one or more other data stores.

[0063] In some examples, the data store 122 may be divided into separate 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, deployment (e.g., detecting that message content contains links, crawling metadata for links, and determining a uniform summary of the metadata), and integration setup. In some examples, data shards may be associated with organizations, groups (e.g., workspaces), communication channels, users, etc.

[0064] In some examples, the organizational data stored in the data store 122 may include separate shards for each individual organization that contain data associated with a particular organizational identity. For example, a database shard may store electronic communication data associated with members of a particular organization, which allows 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 may be the host of the database shards, controlling where and how the associated data is stored. In some examples, a database shard may store data related to two or more organizations (e.g., as in a shared channel). In at least one example, at least a portion of a shared collaborative document (e.g., a document that includes users from different organizations as members) may be stored in association with a shard corresponding to each organization associated with the shared collaborative document.

[0065] In some examples, an individual user may be associated with a database shard within data store 122 that stores data related to a particular user account. For example, user data 126 associated with a particular user account may be stored in a particular database shard. In some examples, an individual conference may be associated with a database shared within data store 122 that stores data related to a particular conference. For example, conference data 124 (e.g., conference files, updated conference files, etc.) associated with a particular conference may be stored in a particular database shard.

[0066] In at least one example, the operating system 120 may manage the processor(s) 108, computer-readable medium 110, and / or hardware, software, etc. of the server(s) 102.

[0067] The communication interface(s) 112 may include one or more interfaces and hardware components to enable communication with various other devices (e.g., user computing device 104, etc.), for example, over the network(s) 106 or directly. In some examples, the communication interface(s) 112 may facilitate communication via web sockets, application programming interfaces (APIs) (e.g., using API calls), hypertext transfer protocol (HTTP), etc.

[0068] The server(s) 102 may further comprise various input / output devices 114 (e.g., I / O devices). Such I / O devices 114 may include a display, various user interface controls (e.g., buttons, joystick, keyboard, mouse, touch screen, etc.), audio speakers, connection ports, etc.

[0069] In at least one example, the user computing device 104 may include one or more processors 128 , computer-readable media 130 , one or more communication interfaces 132 , and input / output devices 134 .

[0070] In at least one example, each processor of processor(s) 128 may be a single processing unit or multiple processing units and may include single or multiple computing units or multiple processing cores. Processor(s) 128 may include any of the types of processors described above with reference to processor(s) 108 and may be the same as or different from processor(s) 108.

[0071] Computer-readable medium 130 may include any of the types of computer-readable medium 130 described above with reference to computer-readable medium 110, and may be the same as or different from computer-readable medium 110. Functional components stored on the computer-readable medium may optionally include one or more application(s) 136 and an operating system 138.

[0072] The application(s) 136 may include mobile applications, web applications, and / or desktop applications. In at least one example, the at least one application 136 may be provided by a communications platform or may otherwise be a dedicated application. In some examples, individual user computing devices associated with the system 100 may have an instance or versioned instance of the application(s) 136 that may be downloaded from an application store, accessible via the Internet, or otherwise executable by the processor(s) 128 to perform the operations described herein. That is, the application(s) 136 may be an access point that allows the user computing device 104 to interact with the server(s) 102 to access and / or use communication services available via the communications platform. In at least one example, the application(s) 136 may facilitate the exchange of data between various other user computing devices, e.g., via the server(s) 102. In at least one example, the application(s) 136 may 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. In some examples, the user interface and / or other operations as described herein may be performed via a web browser or other access mechanism.

[0073] A non-limiting example of a user interface 140 is shown in FIG. 1. As shown in FIG. 1, the user interface 140 can present data associated with a communication platform, such as via a communication platform application 136. As shown in FIG. 1, the user interface 140 can present data associated with one or more channels, one or more conferences (e.g., audio or video conferences), one or more threads associated with a channel and / or section(s) of a transcript, and in some examples, one or more DM messages. Although not shown, the user interface 140 can additionally be configured to present data associated with one or more groups, workspaces, collaborative documents, and the like. In some examples, the user interface 140 can include a first section 142 or pane that includes indicator(s) (e.g., user interface element(s) or object(s)) that represent data associated with a channel(s), conference(s), DM message(s), and the like, with which the user (e.g., the user's account) is associated. Additional details related to the first section 142 and indicator(s) are described below with reference to FIG. 2.

[0074] In at least one example, the user interface 140 may include a second section 144 or pane that may be associated with a data feed (or "feed") indicative of messages posted and / or actions taken on one or more channels and / or other virtual spaces for facilitating communication as described herein (e.g., virtual spaces associated with direct message communication(s), virtual spaces associated with event(s) and / or action(s), etc.). In at least one example, the data associated with the second section 144 may be associated with the same or different workspaces. That is, in some examples, the second section 144 may present data associated with the same or different workspaces via a unified feed. In some examples, the data may be organized and / or sortable by workspace, time (e.g., when the associated data is posted or when the associated action is otherwise performed), type (e.g., of action), channel, DM communication, user, etc. In some examples, such data may be associated with an indication of which users (e.g., members of a channel) posted messages and / or performed actions. In examples where second section 144 presents data associated with multiple workspaces, at least some of the data may be associated with an indication of which workspace the data is associated with. Additional details related to user interface 140 and second section 144 are described below with reference to FIG.

[0075] 1, the second section 144 is associated with a message feed associated with the communication channel (e.g., #Channel A). In some examples, the message feed can show messages posted to and / or actions taken on the channel as described herein. In at least one example, the message feed can include an automated message 146 that includes a transcript 148 associated with the conference. That is, the conference management component 118 and / or the messaging component 116 can cause the conference transcript 148 to be presented via the associated virtual space.

[0076] In an illustrative example, the message feed is presented via the first messaging subsection 150. In at least one example, one or more sections of the transcript of the user interface 140 may be selectable such that, when selected or otherwise actuated, the application 136 presents a thread 152 associated with the selected section. In an illustrative example, the thread 152 is presented via the second messaging subsection 154 of the second section 144. In other examples, in response to receiving an indication of selection of the selected section, the thread 152 may be presented in the second section 144 in lieu of a communication channel (e.g., encompassing most or all of the second section 144), or the like.

[0077] In at least one example, the operating system 138 may manage the processor(s) 128, computer-readable medium 130, hardware, software, etc. of the user computing device 104.

[0078] The communication interface(s) 132 may include one or more interfaces and hardware components to enable communication with various other devices (e.g., user computing device 104), for example, over the network(s) 106 or directly. In some examples, the communication interface(s) 132 may facilitate communication via web sockets, an API (e.g., using API calls), HTTP, etc.

[0079] The user computing device 104 may further comprise various input / output devices 134 (e.g., I / O devices). Such I / O devices 134 may include a display, various user interface controls (e.g., buttons, joystick, keyboard, mouse, touch screen, etc.), audio speakers, connection ports, etc.

[0080] Although the techniques described herein are described as being performed by the application(s) 136, the techniques described herein may be performed by any other component or combination of components that may be associated with the server(s) 102, the user computing device 104, or a combination thereof.

[0081] FIG. 2 illustrates additional details associated with the user interface 140 configured to receive user input associated with the conference transcript 148. As described above, the user interface 140 can include a first section 142 including user interface element(s) representing virtual space(s) associated with the workspace(s) with which the user 200 (e.g., the user's user account) is associated. In at least one example, the first section 142 can include one or more subsections that can represent different virtual spaces. For example, the first subsection 202 can include user interface elements that represent virtual spaces that can aggregate data associated with multiple channels and / or workspaces. In at least one example, each virtual space can be associated with a user interface element in the first subsection 202. In some examples, the user interface elements can be associated with an actuation mechanism that, when actuated, can cause an application, such as the application 136, to present data associated with the corresponding virtual space via the second section 144 of the user interface 140.

[0082] In at least one example, a virtual space may be associated with all unread data associated with each of the workspaces with which the user is associated. That is, in some examples, when a user requests to access a virtual space associated with "unreads," all data that has not been read (e.g., not viewed) by the user may be presented in the second section 144, e.g., in a feed. In such examples, different types of events and / or actions that may be associated with different communication channels and / or virtual spaces may be presented via the same feed. In some examples, such data may be organized and / or sortable by workspace, time, type of action, communication channel, user, etc. In some examples, such data may be associated with an indication of which users (e.g., members of a communication channel) posted messages and / or performed actions.

[0083] In some examples, virtual spaces may be associated with the same type of events and / or actions. For example, "threads" may be associated with messages, files, etc. posted to a thread in response to a message posted to a communication channel, and "mentions and reactions" (e.g., "M&R") may be associated with messages or threads in which a user (e.g., User F) was mentioned (e.g., via a tag) or another user reacted (e.g., via an emoji, reaction, etc.) to a message or thread posted by the user. That is, in some examples, events and / or actions of the same type that may be associated with different communication channels and / or virtual spaces may be presented via the same feed. As with the "unreads" virtual space, data associated with such virtual spaces may be organized and / or sortable by workspace, time, type of action, communication channel, user, etc.

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

[0085] In some examples, the virtual space may be associated with one or more boards or collaborative documents with which the user is associated. In at least one example, the document may include a collaborative document configured to be accessed and / or edited by two or more users with appropriate permissions (e.g., view permissions, edit permissions, etc.). In at least one example, when a user requests to access a virtual space associated with one or more documents with which the user is associated, the one or more documents may be presented via the user interface 140 (e.g., in the second area 144). In at least one example, the document may be associated with an individual (e.g., a private document for the user), a group of users (e.g., a collaborative document), and / or one or more communication channels (e.g., members of a communication channel who have been granted access permissions to the document), as described herein, for example, allowing users of the communication platform to create, interact with, and / or view data associated with such documents.

[0086] In some examples, a collaborative document can be a virtual space, board, canvas, page, etc. for collaborative communication and / or data organization within a communication platform. In at least one example, a collaborative document can support editable text and / or objects that can be ordered, added, deleted, modified, and / or the like. In some examples, a collaborative document can be associated with permissions that define which users of a communication platform can view and / or edit the document. In some examples, a collaborative document can be associated with a communication channel, where members of the communication channel can view and / or edit the document. In some examples, a collaborative document can be shareable such that data associated with the document is accessible and / or interactable by members of multiple communication channels, workspaces, organizations, and / or the like.

[0087] In some examples, the first subsection 202 may include user interface elements representing a virtual space associated with one or more conferences. In some examples, the user interface elements may be selectable for a user to access one or more conference instances (synchronous or asynchronous) with which the user is associated. The conferences may include audio and / or video content provided by one or more users of the communication platform. Additionally or alternatively, the first subsection 202 may include user interface elements representing a virtual space associated with multimedia clips (e.g., videos, audio files, stories, etc.) activated by the user, and the multimedia clips associated with the user, which may be associated with different channels and / or virtual spaces, may be presented via the third section 144. In some examples, such multimedia clips may be presented via a feed. For purposes of this description, the multimedia clips may correspond to audio and / or video content provided by users associated with the communication platform.

[0088] In at least one example, the first section 142 of the user interface 140 may include a second subsection 204 or subpane that includes an indicator representing a communication channel. In some examples, the communication channel may include a public channel, a private channel, a shared channel (e.g., between groups or organizations), a single workspace channel, a cross workspace channel, a combination of the above, and the like. In some examples, the represented communication channel may be associated with a single workspace. In some examples, the represented communication channel may be associated with different workspaces (e.g., cross workspace). In at least one example, when a 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 may be associated with a combination of a communication channel associated with a single workspace and a communication channel associated with different workspaces.

[0089] In some examples, second subsection 204 may show all communication channels for which the user has access permissions (e.g., based on permission data associated with the user account stored in user data 126), or a subset of all communication channels. In such examples, communication channels may be arranged alphabetically, based on most recent interaction, based on frequency of interaction, based on communication channel type (e.g., public, private, shared, cross workspace, etc.), based on workspace, in a user-specified section, etc. In some examples, second subsection 204 may show all communication channels for which the user is a member, or a subset of all communication channels, and the user may interact with user interface 140 to browse or view other communication channels for which the user is not a member but which are not currently displayed in second subsection 204. In some examples, different types of communication channels (e.g., public, private, shared, cross workspace, etc.) may be in different sections of second subsection 204 or may have their own subsections or subpanes in user interface 140. In some examples, communication channels associated with different workspaces may be in different sections of the second subsection 204 or may have their own sections or panes in the user interface 140.

[0090] In some examples, the indicator may have associated therewith one or more objects associated with the corresponding communication channel. The objects may include collaboration documents, tasks to be performed (e.g., tasks associated with a project or workflow associated with the communication channel), tickets to be resolved, calendar invitations, calendar instances (e.g., scheduled meetings, appointments, etc.), files (e.g., text, audio, video, etc.), links to local objects, links to remote objects (e.g., third-party objects), and / or the like. In an illustrative example, a first communication channel (e.g., “Channel A”) has associated therewith affordances for accessing data associated with a conference (e.g., “Meeting A”). The affordances may be configured to launch or start the conference, access conference files (e.g., audio or video files), access updated conference files, access transcripts associated with the conference files and / or updated conference files, and / or the like.

[0091] In addition to the second subsection 204, the first section 142 may include a third subsection 206 or subpane that may include an indicator representing communication with an individual user or multiple designated users (e.g., rather than all or a subset of the members of an organization). Such communication may be referred to as a "direct message." That is, the third subsection 206 or subpane may include an indicator representing a virtual space associated with private messages between one or more users.

[0092] In some examples, the first section 142 can include a fourth subsection 208 or subpane that can include an indicator representing a collaborative document with which the user account of the user 200 is associated. That is, the first section 142 can include a “documents” subsection that includes affordances associated with one or more collaborative documents of which the user 200 is a member. In various examples, the communication platform can identify one or more collaborative documents to be associated with the documents subsection (e.g., the fourth subsection 208) based on one or more ranking criteria. That is, the communication platform can cause the documents subsection to present affordances associated with the highest ranking collaborative document of which the user 200 is a member. In some examples, the user 200 can pin or otherwise associate one or more collaborative documents with the documents subsection.

[0093] In at least one example, a label or other indicator associated with fourth subsection 208 may include an affordance that, when selected by user 200, causes second section 144 of user interface 140 to present a document interface. In some examples, the document interface includes one or more lists of collaborative document(s) with which the user account of user 200 is associated. For example, the document interface may include a first list of personal collaborative documents associated with the user account and a second list of collaborative documents that include two or more members.

[0094] As discussed above, in at least one example, the user interface 140 may include a second section 144 or pane associated with a feed showing messages posted and / or actions taken on a channel and / or other virtual space for facilitating communication (e.g., a virtual space associated with direct message communication(s), a virtual space associated with an event(s) and / or action(s), etc.). As discussed above, in at least one example, the data associated with the second section 144 is shown as a feed associated with a channel (e.g., Channel A). In some examples, the data in the feed may be organized and / or sortable by date, time, type of action, user, etc. In some examples, such data may be associated with an indication of which user posted the message and / or performed the action.

[0095] In at least one example, the data in the feed may include data associated with a single virtual space (e.g., Channel A). In some examples, the data in the feed may include data associated with two or more virtual spaces. In at least one example, the data associated with the virtual space may be viewable by at least one of the users of a group of users associated with the same group identifier. In some examples, the members of the virtual space, the content of the virtual space (e.g., messages, messaging communications, etc.) may be displayed to each member of the virtual space.

[0096] In at least one example, the format of an individual virtual space may appear differently to a user. In at least one example, a common set of group-based messaging communications (e.g., messages) may be displayed to each member of the virtual space such that the content of the virtual space does not change for each member of the virtual space. In some examples, data associated with a virtual space may appear differently to a user (e.g., based on personal configuration, group membership, etc.). In some examples, the format of an individual virtual space may appear differently based on which workspace the user is currently interacting with or has recently interacted with. In some examples, the format of an individual virtual space, e.g., how messages and / or other data associated therewith (e.g., attachments, emojis, reaction symbols, etc.) are presented, may appear differently to a user (e.g., based on personal configuration, group membership, etc.).

[0097] For purposes of this description, a "message" may refer to any electronically generated digital object configured to be displayed within a virtual space to facilitate communication as described herein. A message may include any text, image, video, audio, or combination thereof provided by a user (using a user computing device). For example, a user may provide a message in a message that includes not only text but also images and video as message content. In such an example, the text, image, and video constitute the message. Each message sent or posted to a channel of a communication platform may include metadata including a sending user identifier, a message identifier, a message content, a group identifier, a channel identifier, and the like. In at least one example, each of the aforementioned identifiers may include American Standard Code for Information Interchange (ASCII) text, a pointer, a memory address, and the like.

[0098] In some examples, messages 212 posted or published through the virtual space may be provided by a member of the virtual space (e.g., User Z). That is, a member may post a message to share information with other members of the virtual space (e.g., a reminder for an upcoming synchronous meeting). In at least one example, messages posted through channels may include automated messages 146 generated by a communication platform. The communication platform may be configured to generate the automated messages based on one or more triggering events. In an example, the automated messages may be configured to send data to a particular user or group of users through a virtual space connection (e.g., Channel A). In at least one example, the automated messages may include a meeting transcript associated with a meeting conducted in association with or shared through the virtual space. In such an example, the triggering event may include an indication that the meeting transcript 148 has been completed, a request to share the meeting transcript 148 through the virtual space, and / or the like.

[0099] In at least one example, a user associated with the virtual space can comment on a section of the conference transcript 148 in a “thread,” such as thread 152. In some examples, a user, such as user 200, can generate a thread by selecting section 210 of transcript 148. In response to selecting section 210, the communication platform (e.g., conference management component 118) can determine whether section 210 is made selectable for commenting. Based on a determination that section 210 is not selectable for commenting, the communication platform can provide an indication thereof to user 200 (e.g., no action is taken, thread 152 is not presented, a notice that the section is not selectable is presented, etc.). Based on a determination that section 210 is selectable for commenting, the communication platform can cause a messaging feed associated with the virtual space (e.g., transcript 148, messages 212, and / or other messages associated with the virtual space) to be presented in first messaging subsection 150 and cause thread 152 to be presented in second messaging subsection 154. In other examples, in response to determining that section 210 is selectable for comment entry, the communications platform may cause thread 152 to be presented in second section 144, for example, instead of a messaging feed associated with the virtual space.

[0100] In at least one example, after the thread 152 is generated, one or more users who are members of the virtual space can view and / or post messages to the thread 152, for example, by selecting a thread affordance 214 associated with the section 210 of the transcript 148. For example, a member of the channel may access data associated with the thread 152 by selecting the thread affordance 214. In some examples, any user of the communication platform who has access to the channel can comment on the section 210 of the transcript 148 without becoming a member of the channel. In some examples, the thread affordance 214 may be hidden within a submenu associated with the section 210 of the transcript 148. Members of the channel can view and / or post messages via the thread 152. The messages and / or threads may be associated with file(s), emoji(s), reactoji(s), app(s), and / or the like. As described above, a member of the channel who views and / or posts messages via a thread may be considered a member of the thread. As an illustrative example, at least users F and B may be identified as members of thread 152 .

[0101] In at least one example, the user interface 140 can include a search mechanism 216, where a user can enter a search term and the server(s) 102 can execute a search associated with the communication platform. In some examples, the search can be performed across each workspace with which the user is associated, or the search can be limited to a particular workspace based on a user specification.

[0102] The user interface 140 is a non-limiting example of a user interface that may be presented (e.g., by the application 136) via the user computing device 104. In some examples, the application 136 may receive data from the messaging component 116 and / or the conference management component 118, and the application 136 may generate and present the user interface 140 based on the data. In other examples, the application 136 may receive data from the conference management component 118 and receive instructions from the conference management component 118 to generate the user interface 140. In such examples, the application 136 may present the user interface 140 based on the instructions. Additional or alternative data may be presented via the user interface, and additional or alternative configurations may be envisioned.

[0103] Additional functionality associated with conferences, conference transcripts, and their associated threads (eg, threads 152) are described in more detail below with respect to FIGS.

[0104] 3A and 3B show example user interfaces for selecting a section of a transcript and providing user input associated therewith, as described herein. FIG. 3A shows an example user interface 300a in which a user 302 selects a section 304 of a transcript 306 published via a virtual space 308, such as transcript 148. Although shown as a communication channel (e.g., Channel A), this is not intended to be so limited, and virtual space 308 may include another type of virtual space, such as a direct messaging instance, a collaborative document, and / or the like. That is, virtual space 308 may include any virtual space selected by a conference administrator or conference host to associate with the conference and / or share the conference transcript therein.

[0105] In at least one example, in response to receiving an indication of a selection of section 304, the communication platform can determine whether section 304 is to be made selectable for comment entry. In some examples, based on a determination that section 304 is to be made selectable for comment entry, the communication platform can cause a section options menu 310 to be presented in association with section 304. In an illustrative example, section options menu 310 includes a first option to reply on or start a thread associated with the section, a second option to send a direct message to a user associated with the section (e.g., User B), a third option to save section 304 to a collaborative document or other file, and a fourth option to mark the section as resolved or completed. However, these options are provided merely for illustrative purposes and are not intended to be so limited. Other options are contemplated herein, such as options to tag another user, generate a task associated with section 304, generate a vote associated with section 304, and / or the like.

[0106] In some examples, based on a determination that section 304 is to be made selectable for commenting, the communications platform may cause a first option (e.g., an option to reply in or start a thread associated with section 304) to be presented in the section options menu 310. Although shown as a "reply in thread" option, this is not intended to be so limiting and the option to reply in section 304 in a thread may include other descriptions such as commenting in a thread, starting a thread, providing feedback, etc.

[0107] In at least one example, in response to receiving an indication of a selection of the first option, the communication platform may cause a presentation of the thread associated with section 304 via user interface 300a. In some examples, the thread may be presented in place of virtual space 308 and / or messages published therein (e.g., transcript 306). In some examples, the thread may be presented simultaneously with virtual space 308, such as in a branching screen showing virtual space 308 and the thread associated with section 304 of transcript 306.

[0108] 3B illustrates an example user interface 300b in which threads 312 are presented simultaneously with virtual space 308. That is, data associated with virtual space 308 is presented in a first messaging subsection 314, and data associated with threads 312 is presented in a second messaging subsection 316. In other examples, threads 312 may be presented in place of data associated with virtual space 308.

[0109] In at least one example, the thread 312 may include a section indicator associated with a selected section 304. In an illustrative example, the section indicator 318 includes a numerical indicator of the section 304 (e.g., "Section 2") and a time range associated therewith. However, this is not intended to be so limited and the section indicator 318 may include more or less information. For example, the section indicator 318 may include a start time associated with the section, an indication of a speaker or presenter (e.g., User B) associated with the section 304, and / or the like.

[0110] In at least one example, the communication platform can cause a comment input box 320 to be presented in association with the thread 312, allowing a viewing user (e.g., user 302) to publish a message 322 in association with the thread 312. For example, user 302 can compose a message 322 in the comment input box 320 and cause the message 322 to be published in association with the thread 312. Other members of the virtual space 308 viewing the thread 312 can then view the message 322 posted by user 302 and / or publish additional messages via the thread 312. The messages in the thread 312 can be presented in chronological order, for example, based on the time (e.g., timestamp) at which each individual message was published in association with the thread 312. In some examples, if there are corresponding posted comments in the related thread 312, a thread affordance can appear in section 304 such that clicking a third affordance can cause the thread 312 to be displayed. In some embodiments, the thread affordance can indicate the number of messages posted in the thread.

[0111] As described above, the communications platform may be configured to receive the message 322 and modify a conference file (e.g., an audio conference file, a video conference file, etc.) associated with the transcript to include the message 322. In at least one example, the communications platform may include the message 322 in the modified conference file in association with the section 304. That is, the communications platform may include data associated with the message 322 presented in the modified conference file after the section 304 and before the next (subsequent) section.

[0112] In some examples, the communications platform may be configured to modify the format of the message 322 from a text format to an audio format for incorporation into the conference file. In examples where the conference is stored as a video conference file, the communications platform may be configured to cause an image or group of images associated with the user 302 corresponding to the message 322 to be presented. That is, the message 322 submitted by the user 302 may be converted to an audio format in which an image or group of images associated with the user 302 is presented, such as to notify another user viewing the modified conference file that the user 302 is associated with the message 322.

[0113] In some examples, the communications platform can store metadata with the modified conference file, so that it includes pointers indicating when to pause the conference file, jump to playing comments, and then return to the original conference. In at least one example, the pointers associated with the stored metadata can enable the communications platform to efficiently identify additional data to associate with the conference file and play back (e.g., at a particular location) without modifying the conference file and / or performing encoding thereon. As such, the pointers associated with the stored metadata can improve the functionality of the computing device(s) associated with the communications platform by enabling access to the modified conference file without actually modifying the entire file. Additionally, the pointers associated with the stored metadata can reduce the overall file size associated with the conference file, thereby further improving the functionality of the associated computing device by reducing the amount of memory used to perform the functions described herein.

[0114] As described above, additional users may view and / or submit additional comments in the thread 312. In such examples, the additional comments may be presented in the modified meeting file in chronological order, e.g., in the order in which the messages were posted to the thread 312. In at least one example, the messages of a thread may be presented simultaneously in the modified meeting file such that data associated with the thread is presented together between the associated section 304 and a subsequent section of the transcript.

[0115] FIG. 4A is an example process 400a for receiving data representing a conference and causing a transcript of the conference to be presented via a virtual space of a communications platform, as described herein.

[0116] At operation 402, the communications platform receives a request from a first user account of a first user 404 to create a conference 406 with a second user 408, the conference 406 being associated with a virtual space 410 of the communications platform, such as virtual space 308. In some examples, the request to create the conference 406 may include a selection by the first user 404 of a conference affordance 412 associated with starting the conference, presented via a user interface 414 of the communications platform, such as user interface 300a, user interface 300b, and / or the like. In an illustrative example, the conference affordance 412 is presented in association with the virtual space 410.

[0117] In at least one example, in response to receiving a selection of the conference affordance 412, the communications platform may cause a conference details input box 416 to be presented via the user interface 414. In an illustrative example, the conference details input box 416 may enable the first user 404 to select an affordance associated with an audio conference or a video conference. That is, the conference details input box 416 may provide a means by which the first user 404 may specify the type of conference to be initiated. In some examples, the communications platform may select the type of conference based on, for example, a default setting. In such examples, the conference details input box 416 may include a means by which the first user 404 may select an alternative type of conference. For example, the default setting may include an audio conference, and the conference details input box 416 may include an option to select to have a video conference, or vice versa.

[0118] In some examples, in response to receiving an indication of a selection of the conference affordance 412, the communications platform may identify one or more members of the virtual space 410 who are online and available to conference, and may cause the indication to occur via the conference details input box 416. For example, in response to a selection of the conference affordance 412, the communications platform may identify that the second user 408 is available to join the conference 406, and cause an identifier associated with the second user 408 to be presented in the conference details input box 416. Additionally, in some examples, the conference details input box 416 may include means by which the first user 404 may select another user, such as the second user 408, to associate with the conference 406.

[0119] In at least one example, the communication platform can receive user input via the conference details input box 416 and, based on the user input, can generate a conference instance associated with the conference 406. That is, the communication platform can generate and initiate a conference instance between the first user 404 and at least one other user (e.g., the second user 408). In some examples, the communication platform can cause a conference indicator 418 to be presented in association with the virtual space 410 to indicate, for example, that a conference is in progress. In at least one example, the conference indicator 418 can be presented to users participating in the conference 406.

[0120] In some examples, the conference indicator 418 may be presented to other users (e.g., members of the virtual space 410) who are eligible to participate in the conference, for example, to indicate that the conference 406 is currently in progress. In some examples, the conference indicator 418 may include an affordance that, when selected, allows another user who has not previously participated in the conference 406 to begin participating in the conference. In some examples, in response to receiving an indication of a selection of an affordance associated with the conference indicator 418, the communications platform may automatically add the other user to a conference instance associated with the conference 406. In some examples, the communications platform may cause a notification to be presented to an administrator or host of the conference (e.g., the first user 404) to allow (or deny) the other user access to the conference 406.

[0121] At operation 420, the communications platform receives data representing the conference from the first user account and a second user account associated with the second user 408. That is, the communications platform may receive first data 422 from the first user account and second data 424 from the second user account. Although illustrated as first data and second data received from the first user account and the second user account, this is not intended to be so limiting, and the communications platform may receive multiple pieces of data from one or more participants of the conference 406 (e.g., users accessing the conference instance).

[0122] In operation 426, the communications platform stores the data (e.g., the first data 422, the second data 424) as a conference file. The conference file may include, for example, an audio conference file or a video conference file based on the type of conference taking place.

[0123] At operation 428, the communications platform determines whether an indication of completion of the conference 406 has been received. In some examples, the indication of completion may include an indication from an administrator or host that the conference is completed. In some examples, the indication of completion may include an indication that a threshold number or percentage of the conference participants have closed a conference interface (e.g., associated with the conference indicator 418) or have left the conference. For example, the communications platform may identify an indication of completion of the conference 406 based on a determination that the second user 408 has left the conference 406 and only the first user 404 remains in the conference 406. In another example, the communications platform may identify an indication of completion after both the first user 404 and the second user 408 have left the conference.

[0124] Based on a determination that an indication of completion of the conference 406 has not been received ("No" at operation 428), the communications platform may continue to store the data in association with the conference file. Based on a determination that an indication of completion of the conference 406 has been received ("Yes" at operation 428), the communications platform may cause a transcript 432 associated with the conference 406, such as transcript 148, transcript 306, etc., to be displayed via the virtual space 410 at operation 430. As described above, the transcript 432 may include one or more sections 434 of data representing the conference. For example, the illustrated section 434 may represent the first data 422 received from the first user 404 during the conference. In at least one example, the sections 434 of the transcript 432 may be selectable, for example, to allow a viewing user to generate a thread in association with a selected section 434.

[0125] FIG. 4B is an example process 400b for receiving user input associated with a conference transcript and modifying a file associated with the conference based on the user input, as described herein.

[0126] At operation 436, the communications platform receives from the first user account of the first user 404 a selection of a transcript 432 associated with the conference 406 that took place in association with the virtual space 410. Although shown as being from the first user account, the transcript 432 may be viewable and / or selectable by another user of the virtual space 410, such as the second user 408 and / or another user not attending the conference. As such, the published transcript 432 may enable continued collaboration after the conference 406 has taken place by attendees and other users who were unable to attend the conference 406.

[0127] At operation 438, the communications platform identifies a section 434 of the transcript 432 associated with the selection. As described above, the communications platform may determine different sections of the conference 406 and / or transcript 432 based on the user (e.g., speaker, presenter, etc.) corresponding to the associated data, a predefined section interval (e.g., 30 second interval, 1 minute interval, etc.), a break in the conversation over a threshold period (e.g., user stops talking for 3 seconds, a new section begins), an explicit command or keyword to start a new section (e.g., “break”, “new section”, etc.), and / or the like.

[0128] In at least one example, the sections 434 may be presented with a corresponding section indicator 440, which provides an indication of the individual section. In an illustrative example, the section indicator 440 includes a start time associated with the section 434. For example, the first user 404 began speaking 15 seconds after starting the conference 406. In some examples, the section indicator 440 may include a range of time, such as a start time and an end time, associated with the section. In some examples, the section indicator 440 may additionally include a numerical sequence or an indication of the respective section. For example, the illustrated section 434 is the first section associated with the transcript 432, and therefore the section indicator 440 may include "Section 1," "Section A," and / or the like.

[0129] At operation 442, the communications platform causes an input interface 444 associated with the section 434 to be presented in association with the virtual space 410. In at least one example, the input interface 444 may include a messaging thread interface, for example, to enable one or more users associated with the virtual space to submit comments on the associated section 434. In various examples, the input interface 444 may include an input box 446 configured to enable the first user 404 to submit user input associated with the selected section 434 (e.g., comment, reply, etc.). In some examples, the input box 446 may be configured to receive text input, for example, to enable the first user 404 to type user input.

[0130] In some examples, the input box 446 may include an audio option 448 and / or a video option 450, such as to allow the first user 404 to submit audio and / or video comments via the input interface 444. In an illustrative example, the first user 404 submits the audio option 448 to submit an audio comment in association with the selected section 434. In response to receiving an indication of a selection of the audio option 448, the communications platform may cause a record control 452 to be presented in association with the input interface 444. As shown, the record control 452 may include controls to allow the first user 404 to start and stop the audio recording, start over (e.g., delete previous user input), and / or publish the audio recording via the input interface (e.g., "Submit"). However, this is not intended to be limiting, and other controls, such as an option to listen to the recording, are contemplated herein. Additionally, although shown as a record control 452 associated with providing audio input, the same or similar record controls 452 can be associated with the video options 450 to enable the first user 404 to associate with the input interface 444 to start, stop, restart, and submit a video recording.

[0131] At operation 454, the communications platform receives, via input interface 444, a user input 456 associated with a section 434 (e.g., selected section 434). As described above, the user input 456 may include audio input, video input, text input, or a combination thereof. In some examples, the communications platform may store the user input 456 in association with the conference file in a submitted format. In some examples, the communications platform may store the user input 456 in a submitted format based on a determination that the format (e.g., text, audio, video) of the user input 456 matches the format of the conference file.

[0132] In some examples, in response to determining that the format of the user input 456 differs from the format of the conference file, the communications platform may modify the format of the user input 456 based on the format of the conference file. For example, in response to determining that the user input 456 includes a text input and that the conference file includes an audio file, the communications platform may modify the format of the user input 456 to an audio file format. In another example, in response to determining that the user input 456 includes an audio input and that the conference file includes a video file, the communications platform may associate one or more images with the user input 456 to provide a visualization associated with the user input 456. In some examples, the image(s) may include an image associated with the user associated with the user input 456 (e.g., the first user 404), such as an avatar, one or more images stored in association with the first user account, and / or the like.

[0133] At operation 458, the communications platform stores the user input 456 in association with a file 460 (e.g., an audio conference file, a video conference file, etc.) associated with the conference. In some examples, the communications platform may store the user input 456 as metadata associated with the file 460. In some examples, the communications platform may store the user input 456 along with a pointer corresponding to the selected section 434 of the transcript 434. In such examples, the pointer may cause the communications platform to present the user input 456 between the selected section 434 (e.g., a first section) and a next section (e.g., a second section) of the file 460 in response to a request to access a modified conference file 462 (e.g., the original file 460 with comments submitted via one or more threads). In some examples, by storing the user input 456 in association with the file 460 along with a pointer to the associated section (e.g., the selected section 434), the techniques described herein may improve the functionality of a computing device associated with the communications platform by saving processing power associated with modifying the file 460, re-encoding the file 460, compressing the file 460, and re-uploading the file 460. Additionally or alternatively, the communications platform may store the user input 456 as metadata in a separate file in a data store, such as the data store 122. In some examples, the separate file may include an association with the file 460, the transcript 432, and / or the conference in general.

[0134] At operation 464, the communications platform may optionally modify a file associated with the conference (e.g., the conference file) based at least in part on the user input 456. In at least one example, the communications platform may add the user input 456 to the conference file after the selected section 434 (e.g., the first section) and before the next section (e.g., the second section) of the transcript 432. That is, the communications platform may modify the conference file to include the user input 456 in association with the selected section 434. For example, as shown, the original conference file 460 includes a first section, a second section, and a third section, and the modified conference file 462 includes the first section, followed by the user input, followed by the second section, and a third section (not shown).

[0135] In at least one example, the communications platform may receive a request to access the conference file from a user associated with the conference 406 and / or the virtual space 410. In examples in which the request is received after the modifications described with respect to operation 458, the communications platform may cause the modified conference file to be presented, including the user input 456.

[0136] 5 illustrates an example user interface 500 for managing conference details associated with a conference conducted in association with a communications platform as described herein. In at least one example, the communications platform may be configured to cause affordances 502 associated with a conference, such as conference 406, with which a user 504 is associated to be displayed in a sidebar 506 of the user interface 500. As used herein, sidebar 506 may include all or a portion of a first section of the user interface 500, such as first section 142 of FIG. 1.

[0137] In some examples, the communications platform may cause affordance 502 to be displayed in sidebar 506 based on a determination that user 504 is an administrator or host of an associated conference. In some examples, the communications platform may cause affordance 502 to be displayed in sidebar 506 based on a determination that user 504 is a member of the conference (e.g., a previous attendee, an invitee, etc.) and / or a member of a virtual space associated with the conference (e.g., Channel A).

[0138] In an illustrative example, in response to receiving an indication of a selection of the affordance 502, the communications platform causes a meeting control box 508 to be presented in association with the affordance 502. In some examples, the meeting control box 508 may include one or more options for controlling one or more aspects of the associated meeting. Non-limiting examples of the option(s) include managing meeting details, starting a meeting now, canceling a meeting, deleting a meeting instance, scheduling a meeting at a future time, and sending a reminder for an upcoming meeting, to name a few options. In at least one example, one or more of the options included in the meeting control box 508 may be included based on a determination that the user 504 is an administrator or host of the meeting. For example, manage meeting details may be included in the meeting control box 508 associated with an administrator or host of the meeting. That is, an administrator or host account may include permissions to manage details related to the meeting.

[0139] In an illustrative example, in response to receiving an indication of a selection of the managing details option, the communication platform may cause a meeting details input box 510 to be presented via the interface 500. In some examples, the meeting details input box 510 may provide a means by which the user 504 may name or rename the associated meeting. In some examples, the meeting details input box 510 may additionally provide the user 504 with an option to enable (or disable) commenting associated with the transcript of the meeting, as described herein. In an illustrative example, the user 504 may select to enable commenting on the entire associated transcript. In other examples, the user 504 may select an option to specify select sections of the transcript for which commenting is enabled (or disabled). That is, the communication platform may provide the user 504 with an option to make one or more sections of the transcript selectable (or non-selectable) for commenting prior to publishing via the virtual space.

[0140] In some examples, the conference details input box 510 may include an option to set a time period for comment entry. The time period may include a period of time (e.g., one week, one month, etc.) or a date for comment entry to end (e.g., disable the ability to enter comments associated with the transcript). For example, the user 504 may enter a specific date for which comment entry associated with the transcript will be disabled.

[0141] In some examples, the meeting details input box 510 may include a voting option to enable the user 504 to associate a vote (e.g., a voting interface) with the transcript. In some examples, in response to receiving an indication of a selection of a voting option, the communication platform may request additional details from the user 504 associated with the vote. The additional details may include a question to ask in the vote, a period of time for which the vote is active, where to publish the results (e.g., to an associated virtual space, sent to the user 504, etc.), whether all or a portion of the vote should be anonymous, and / or the like. In some examples, in response to receiving an indication of a selection of a voting option, the communication platform may be configured to analyze the content of the meeting to identify one or more questions or options associated with the vote. That is, the communication platform may be configured to utilize natural language processing techniques, machine learning techniques, and / or related techniques to analyze the content of the meeting to identify details associated with the vote. As described in more detail with respect to FIG. 7, the communication platform may cause the vote to be presented in association with the published transcript via the virtual space.

[0142] In various examples, the meeting details input box 510 can additionally include an option to establish permissions associated with viewing a transcript of the meeting. In some examples, the communication platform can enable the user 504 to limit access to the transcript to the meeting attendees or to share it with members of an associated virtual space regardless of attendance at the meeting. In examples where the user 504 selects to limit access to the transcript to the meeting attendees, the communication platform can cause an automated message including the transcript to be presented in association with the user account of the meeting attendees. The automated message can be presented via the virtual space or via a direct messaging instance between the meeting attendees.

[0143] In at least one example, in response to receiving an indication of a save option 512 associated with the meeting details input box 510, the communications platform may store the meeting details in association with the meeting.

[0144] 6A-6C illustrate example user interfaces for making portions of a conference transcript selectable for comment entry and presenting a failure notification in response to receiving a selection of a portion not selectable for comment entry, as described herein. FIG. 6A illustrates an example user interface 600a in which a conference details input box 602, such as conference details input box 510, is presented in association with a conference 604. In at least one example, the communications platform may cause the conference details input box 602 to be displayed in response to receiving an indication of a selection of a manage conference details option 606 that corresponds to an affordance 608 associated with the conference 604. As discussed above with respect to FIG. 5, the manage conference details option 606 may be included as an option within a conference control box 508, such as conference control box 610, that is presented in response to selection of affordance 608.

[0145] Additionally, as discussed above, in some examples, the conference details input box 602 may provide an option for a user 612, such as user 504, to enable (or disable) commenting associated with a transcript of the conference 604, as described herein. In an illustrative example, the user 612 selects to enable commenting to selected sections of the transcript, for example, by specifying sections in the transcript where commenting is enabled (or disabled). In response to receiving a selection of a save option 614, such as save option 512, the communications platform may store instructions that request the user 612 to select one or more sections of the transcript after the transcript is generated. In at least one example, the communications platform may request input from the user 612 regarding the specified sections before making the transcript available for viewing by other users.

[0146] Although not shown, in some examples, the meeting details input box 602 can provide the user 612 with an option to enable commenting associated with the transcript for a selected individual. That is, the communications platform can associate one or more sections of the transcript with a user interface associated with the selected individual to enable commenting and associate the section(s) with a user interface(s) associated with other individuals (e.g., other members of the virtual space not selected for commenting) to disable commenting. For example, the meeting details input box 602 can include an option to enable commenting for meeting attendees. In response to receiving an indication of a selection of an option to limit commenting to meeting attendees, the communications platform can make an instance of the transcript selectable for meeting attendees (e.g., a user identifier associated with attendance of the meeting 604). In another example, the meeting input box can include an option to enter a selected user identifier for enabling commenting. In response to receiving one or more user identifiers as selected to enable commenting, the communications platform can make an instance of the meeting transcript presented in association with the user account(s) associated with the user identifier(s) to be selected for commenting.

[0147] FIG. 6B illustrates an exemplary user interface 600b in which a transcript 616 associated with a conference 604 is presented to a user 612 to make one or more sections selectable for commenting. In at least one example, the communication platform can provide a notification or message to the user 612 to inform the user that the transcript 616 has been generated and is available to make a section(s) available for commenting. For example, the communication platform can cause an affordance 608 to be presented in bold text to provide an indication that a transcript is available. In such an example, the user 612 can select the affordance 608 to access the transcript 616. In another example, the communication platform can cause an automated message to be presented in association with the user account of the user 612, e.g., via a virtual space, in a direct messaging instance viewable to the user 612, and / or in a similar manner. In such an example, the automated message can include an interface element that, when selected by the user 612, causes the transcript 616 to be presented via the user interface 600b.

[0148] In at least one example, in response to receiving an indication of a selection of an affordance 608 or other interface element associated with the conference, the communications platform may cause the user 612 to present a newly generated transcript 616. In the illustrative example, the transcript 616 includes a first section 618 (having a first start time of 00:15), a second section 620 (having a second start time of 00:25), and a third section 622 (having a third start time of 01:05), although this is not intended to be limiting and the transcript 616 may include a greater or lesser number of sections.

[0149] In some examples, the user 612 can select each section individually to determine whether to enable the selected section for comment entry. For example, the user 612 can select a first section (e.g., section (1)) to make it unavailable for comment entry, select a second section (e.g., section (2)) to make it available for comment entry, and so on. In at least one example, the communication platform can make the first section 618, the second section 620, and / or the third section 622 available for comment entry, such as in a default action. In such an example, the user 612 can select the specified section(s) and disable comment entry associated therewith. For example, the user 612 can select the first section (e.g., section (1)) to disable comment entry. Alternatively, the communication platform can make the first section 618, the second section 620, and / or the third section 622 unavailable for comment entry, such as in a default action. In such an example, the user 612 can select a designated section or sections to enable commenting associated with the transcript. For example, the user 612 can select a second section (e.g., section (2)) to enable commenting.

[0150] In various examples, in response to receiving an indication that the user 612 has completed designating a section of the transcript 616 for commenting, the communications platform may cause the transcript 616 to be displayed via an associated virtual space (e.g., Channel A).

[0151] 6C illustrates an example user interface 600c in which the transcript 616 is published in association with a user account of another user 626 (e.g., a member of the virtual space 624) via an associated virtual space 624. In an example example, the transcript 616 is published in the virtual space 624 as an automated message 628, such as automated message 146. In another example, the communications platform can publish the transcript 616 in a message from a user account associated with an administrator or host of the conference 604 (e.g., User Z).

[0152] In an illustrative example, the communication platform receives an indication of a selection of the first section 618 of the transcript 616 from another user 626. Based on a determination that the first section 618 has been disabled for comment entry by a user 612 (e.g., an administrator, a host, etc.), the communication platform causes a notification 630 to be displayed in association with the transcript 616. The notification may include a pop-up, an overlay, or other type of notification. In some examples, the notification may provide an indication that the selected section (e.g., the first section 618) is not selectable for comment entry. In some examples, the notification may additionally include an indication of one or more other sections that are selectable for comment entry. For example, the notification 630 includes an indication that the second section 620 is selectable for comment entry. Alternatively, in some examples, the notification 630 may provide an indication that an administrator or host has disabled comment entry to the transcript. In such examples, the transcript 616 may be provided in a read-only format.

[0153] 7 illustrates an example user interface 700 for presenting a poll 702 associated with a conference 704 in association with a transcript 706 of the conference 704 that is published via a virtual space 708, as described herein. As described above, the communications platform may be configured to generate the poll 702 for the votes associated with the conference 704, receive additional feedback, and / or the like.

[0154] In some examples, the communications platform may generate the vote 702 in response to receiving a request (or instruction) to generate the vote 702, such as from an administrator, host, or other user associated with the conference 704 (e.g., conference attendee, conference viewer, etc.). In such examples, the communications platform may generate the vote 702 based on vote characteristics included in the request (or instruction). Non-limiting examples of vote characteristics include the question(s) or options included in the vote, the topic(s) associated with an input box in which other users may submit their input, a period of time during which the vote is available for input, and / or the like.

[0155] In some examples, the voting characteristics may include input anonymity, for example, to provide an option that a viewing user may select to make some or all of the feedback submitted via the vote anonymous or to make one or more portions of the submitted input anonymous. In some examples, the portion(s) may be automatically made anonymous based on the selection to make the results anonymous. In some examples, the communications platform may enable an anonymous option 710 for a viewing user 712 to select all or a portion of the user input associated with the vote 702 anonymously. In an illustrative example, the anonymous option 710 includes an option to submit additional inputs anonymously. This is not intended to be so limiting, and in other examples, the anonymous option 710 may provide a means by which the user 712 may submit all or different portions of the vote anonymously.

[0156] In various examples, in response to receiving the voting characteristics associated with the vote 702, the communications platform can generate a voting interface 714 that is presented in association with the published transcript 706 via the virtual space 708. In at least one example, the communications platform can cause a presentation of an affordance 716 associated with the vote 702 to be presented in association with the transcript 706 via the virtual space 708. In response to receiving an indication of a selection of the affordance 716, the communications platform can cause the voting interface 714 to be presented in association with the virtual space 708.

[0157] In some examples, the communications platform may be configured to determine voting characteristics associated with the vote 702 based on, for example, content included in the conference 704 (e.g., statements made, conversations exchanged, etc.) and automatically generate the voting interface 714. That is, the communications platform may be configured to analyze the content of the data representing the conference 704 to identify potential votes, for example, utilizing natural language processing techniques, machine learning techniques, and / or the like. In some examples, in response to identifying the potential votes, the communications platform may generate the voting interface 714 associated with the vote 702 and associate it with the transcript 706.

[0158] In some examples, in response to identifying a potential vote, the communications platform may send a confirmation request to an administrator or host of the conference, for example, to receive explicit confirmation to associate the voting interface 714 with the transcript 706. In some examples, the confirmation request may include an interface that allows the administrator or host to modify voting characteristics associated with the platform-generated voting interface. In response to receiving the confirmation and / or modified voting characteristics, the communications platform may cause an affordance 716 associated with the voting interface 714 to be presented via the virtual space 708 in association with the transcript 706 of the conference 704.

[0159] In various examples, the communication platform may be configured to receive user input via an instance of the voting interface 714 and store the results of the votes 702 in association with the conference file of the conference 704. In some examples, the communication platform may be configured to transmit the user input and / or the tally of the votes 702 to an administrator or host of the conference 704. In some examples, the communication platform may provide the administrator or host with a link to access the results, for example, in an automated message directed to the administrator or host. In some examples, the communication platform may be configured to publish the results of the votes (e.g., the tally) through the virtual space, for example, in association with the transcript. In some examples, the communication platform may include a link to the results (the tally and / or the individually submitted inputs) in association with the transcript 706.

[0160] In at least one example, the communications platform may determine whether all or a portion of the individual responses to a vote (e.g., individual user inputs) were submitted anonymously. In response to determining that all or a portion of the individual responses were submitted anonymously, the communications platform may withhold data associated with the submitting user's identity from all or a portion of the user inputs. In some examples, the communications platform may store a user identifier associated with the vote outcome in a data store, such as data store 122, as metadata associated with the vote and / or the vote outcome.

[0161] 8-11 are flow charts illustrating example processes involving the techniques described herein. The processes illustrated in FIGS. 8-11 are described for convenience and ease of understanding with reference to the components described above with reference to system 100 shown in FIG. 1. However, the processes illustrated in FIGS. 8-11 are not limited to being performed using the components described above with reference to system 100. Furthermore, the components described above with reference to system 100 are not limited to performing the processes illustrated in FIGS. 8-11.

[0162] FIG. 8 shows an example process 800 for modifying a file associated with a conference based on user input received via a conference transcript, as described herein.

[0163] At operation 802, the server 102 receives, from a user account of a user, a selection of a conference transcript published through a virtual space of a communications platform. In at least one example, the server 102 can receive an indication of the selection from a client (e.g., a user computing device 104, an instance of a communications platform application 136, etc.) associated with the user account. As described above, the conference transcript can be generated by the communications platform (e.g., the server 102) in response to receiving data representing a conference. In at least one example, the server 102 can generate the conference transcript in response to receiving an indication that an associated conference has been completed. In various examples, the server 102 can store the conference transcript in association with a conference file for the conference, such as in the data store 122.

[0164] In at least one example, the server 102 can identify a virtual space associated with a conference (e.g., a conference held in association with the virtual space, receiving a request to share a conference transcript via the virtual space, etc.). In such an example, the server 102 can cause the conference transcript to be published via the virtual space. In some examples, the conference transcript can be published as an automated message generated by the communications platform. In some examples, the conference transcript can be published in association with a user account of a user, such as an administrator or host of the conference.

[0165] As described above, the server 102 can make one or more sections of the conference transcript selectable for commenting. That is, the conference transcript can be configured to allow a viewing user to select the section, generate a thread associated with the selected section, and submit a comment associated with the section. In some examples, the server 102 can be configured to make each section of the conference transcript selectable for commenting. In some examples, the server 102 can receive user input, for example from a conference administrator or host, indicating one or more sections to be selectable for commenting and / or one or more other sections to be disabled (e.g., made unselectable) for commenting.

[0166] At operation 804, the server 102 identifies a section of the conference transcript associated with the selection. In at least one example, the section may be identified based on a cursor position, touch input, and / or the like associated with the selection.

[0167] At operation 806, the server 102 determines whether the section is designated as selectable for commenting. As described above, the server 102 can make a first group of sections of the conference transcript selectable for commenting and / or make a second group of sections of the conference transcript unavailable for commenting. In various examples, the server 102 can determine whether the selected section is selectable for commenting or unavailable for commenting based on a cursor position, touch input, or other indicator associated with the selection.

[0168] Based on a determination that the section is not designated as selectable for comment entry ("No" at operation 806), the server 102 may, at operation 808, optionally cause a notice that comment entry is not available. The notice may include an indication that comment entry associated with the selected section and / or transcript is not available. In some examples, the notice may additionally include an indication that one or more other sections are selectable for comment entry.

[0169] Based on a determination that the section is designated as selectable for comment entry ("Yes" at operation 806), the server 102, at operation 810, determines whether the current time is associated with a comment entry period. As described above, the transcript may be made selectable for comment entry for a specified period of time and / or from the publication time to a specified time and / or date. The server 102 may determine whether the current time associated with the selection is associated with a comment entry period (e.g., during an active comment entry period) or whether the comment entry period has expired.

[0170] Based on a determination that the comment entry period has expired ("No" at operation 810), the server 102 may optionally cause a notice that comment entry is no longer available to be displayed, as described at operation 808.

[0171] Based on a determination that the comment entry period is active (“Yes” at operation 810), the server 102 causes an input interface associated with the section to be presented via the virtual space at operation 812. In at least one example, the input interface may include a messaging thread interface configured to receive input associated with a thread of messages or messaging threads associated with the selected section.

[0172] At operation 814, the server 102 receives user input associated with a section of the conference transcript via the input interface. In at least one example, the user input may include a message or comment from the user associated with the selected section. In some examples, the message or comment may be submitted in a text format, an audio format, or a video format. That is, the user may enter a text, audio, or video message or comment via the input interface.

[0173] At operation 816, the server 102 stores the user input as metadata associated with an audio or video conference file associated with the conference. In at least one example, the server 102 stores the user input in association with a section. In some examples, the metadata may include a pointer associated with the section to indicate where within the second section the user input should be associated. For example, the server 102 may determine that the user input should be associated with an end of a section (e.g., a first section) and before another section (e.g., a second section). As another example, the server 102 may utilize natural language processing or similar techniques to identify content associated with the user input. The server 102 may compare the content to content associated with the section to identify a portion of the section with which the user input is associated. In response to identifying the portion, the server 102 may associate a pointer to the portion of the section that is associated with the comment. Thus, the server 102 may associate the user input with the relevant portion of the section.

[0174] Additionally or alternatively, the server 102 may be configured to modify the audio or video conference file to include the user input. In at least one example, the server 102 may modify the conference file to include the user input in association with the selected section. For example, the server 102 may identify that the selection is associated with a first section of the conference transcript and may receive the user input associated with the first section. The server 102 may then modify the conference file to include the user input after the first section and before the second section.

[0175] As discussed above, in various examples, the server 102 may be configured to modify the format of the user input to correspond to the format of the conference file. For example, if the user input is received in a text format, the server 102 may generate an audio file of the user input and incorporate the audio file into the conference file. In another example, the conference file may be in a video format and the user input may be audio input. The server 102 may splice the video conference file between the first and second sections to incorporate the audio file, for example, to cause the video conference file to present an image or group of images associated with the user to provide the viewing user with an indication of the user who submitted the audio input.

[0176] FIG. 9 illustrates an example process 900 for receiving a request to access a file associated with a conference and causing at least one of the file or a modified file to be presented, where the modified file includes comments associated with a section of the conference, as described herein.

[0177] At operation 902, the server 102 receives a request from a user's user account to access a conference file associated with a previously held conference. In at least one example, the request can include a selection of an affordance associated with the conference, such as provided in a sidebar or associated with a virtual space. For example, a user may wish to view a previously held conference, such as to view a presentation or demonstration associated therewith that may not be included in a transcript.

[0178] At operation 904, the server 102 determines whether an update to the conference file has been received. In at least one example, the update to the conference file may include user input or comments submitted via one or more threads associated with one or more sections of the conference transcript, as described herein. That is, the server 102 may receive user input via a thread associated with a section of the conference transcript and may update the conference file based on the user input, at least as described with respect to operation 816 of FIG.

[0179] Based on a determination that no updates to the conference file have been received (“No” at operation 904), the server 102 may cause the conference file to be displayed in association with the user account at operation 906. That is, the server 102 may cause the original conference file associated with the conference, such as an audio or video recording of the conference, to be presented.

[0180] Based on a determination that an update to the conference file has been received ("Yes" at operation 904), the server 102 determines whether a request to view the updated conference file has been received at operation 908. In some examples, the server 102 may provide the user with an option to view the original conference file or the updated conference file. In such examples, the server 102 may allow the viewing user to select one or the other for viewing.

[0181] Based on a determination that the request includes a request to view the original conference file (“No” at operation 908 ), the server causes the conference file to be displayed in association with the user account, as described with respect to operation 906 .

[0182] Based on a determination that a request to view the updated conference file has been received (“Yes” at operation 908), the server 102 causes the modified conference file to be associated with the user account and displayed at operation 910. The modified conference file may include data representing the conference and one or more comments submitted via one or more thread instances associated with a transcript of the conference, as described herein.

[0183] FIG. 10 illustrates an example process 1000 for generating a transcript associated with a conference and displaying the transcript via a virtual space associated with the conference, as described herein.

[0184] At operation 1002, the server 102 receives a request from a first user account of a first user to create a conference with a second user, the conference associated with a communications platform. In at least one example, the request to create the conference can include a selection of an affordance associated with creating a conference instance. In some examples, in response to the request, the server 102 can cause a conference details input box, such as the conference details input box 416, to be presented via a user interface. In at least one example, the conference details input box can enable the first user to select a type of conference to be initiated (e.g., audio, video, etc.).

[0185] In some examples, the conference details input box may additionally provide a means by which the first user may select one or more other users (e.g., second users) to be invited or participate in the conference. In at least one example, the server 102 may provide an indication of one or more user identifiers associated with the user(s) who are online and available to conduct the conference. In some examples, the user(s) may be identified based on their relationship to the first user (e.g., supervisor, subordinate, friend, family, etc.). In some examples, the user(s) may be identified based on their interaction with the first user via the communication platform (e.g., frequency of communication, recency of communication, etc.).

[0186] In examples where a conference is created or otherwise associated with a virtual space, the server 102 can identify the user(s) based on membership in the virtual space. That is, the server 102 can provide user identifier(s) associated with one or more members of the virtual space who are online and / or active on the communication platform. In at least one example, in response to receiving an indication of a selection of a second user and / or an identifier associated therewith from a first user account, the server 102 can generate a conference instance between the first user and the second user. Although described as being between a first user and a second user, this is not intended to be so limited, and the conference instance can include more participants. Additionally, in at least one example, the first user can generate a conference instance in which the first user is the only member, and can provide a presentation to other users for viewing and / or review of a transcript at a time separate from the presentation (e.g., asynchronously). As such, conferences including a single user are further contemplated herein.

[0187] At operation 1004, the server 102 receives data representing the conference from the first user account and the second user account of the second user. The data may include audio data, video data, and / or text data associated with user input provided during the conference.

[0188] At operation 1006, the server 102 generates a conference transcript based on the data. In some examples, the server 102 may generate the conference transcript substantially contemporaneously with the conference. That is, in response to receiving the first data from the first user, the server 102 may include the first data in the conference transcript, and so on. In some examples, the server 102 converts the first data into a text format, such as by utilizing speech-to-text techniques. In some examples, the server 102 processes the data representing the conference and generates the conference transcript in response to receiving an indication that the conference is complete. In such examples, the indication that the conference is complete may include an administrator or host ending the conference, a threshold number or percentage of users leaving the conference instance, and so on.

[0189] At operation 1008, the server 102 determines whether the meeting is associated with the virtual space. In some examples, the first user can generate a meeting in association with the virtual space. For example, the first user can select an affordance associated with the generation of the meeting that is presented via a user interface associated with the virtual space. Based on a selection of the affordance presented in association with the virtual space, the server 102 can generate a meeting instance in association with the virtual space such that data associated with the meeting can be stored in association with the virtual space.

[0190] In some examples, a first user can generate a conference independent of the virtual space and can be configured to later share its content via the virtual space. For example, a first user and a second user can conference via a private direct messaging instance. After the conference, the first user can request to share the conference (e.g., conference files, conference transcripts) via the virtual space. In response to the request, the server 102 can associate the conference with the virtual space.

[0191] Based on a determination that the meeting is not associated with a virtual space ("No" at operation 1008), the server 102 stores the meeting transcript in association with the instance of the meeting at operation 1010. In some examples, the server 102 can make the meeting file and / or the meeting transcript accessible to the first user and / or the second user, for example, to review the content at another time. In some examples, the instance of the meeting can be associated with a private space associated with a user account of a meeting attendee. In some examples, the private space can include one or more virtual spaces privately accessible to the meeting attendee. In some examples, the instance of the meeting can be stored in association with a private space corresponding to an administrator or host of the meeting. That is, the instance of the meeting and data associated therewith (e.g., the meeting file, the transcript, etc.) can be stored in association with a private space associated with a user account of the administrator or host of the meeting.

[0192] In some examples, the server 102 can receive a request to create a virtual space (e.g., a channel, etc.) associated with a conference via a conference interface associated with the conference. In such examples, the server 102 can create the virtual space associated with the conference and can store a conference transcript in association with the virtual space created during the conference.

[0193] Based on a determination that the conference is associated with the virtual space ("Yes" at operation 1008), the server 102 causes the conference transcript to be displayed in association with the virtual space at operation 1012. In at least one example, the conference transcript may be published in a message sent through the virtual space for members of the virtual space to view. In some examples, the message may include an automated message generated by the communication platform.

[0194] FIG. 11 illustrates an example process 1100 for providing a voting interface associated with a conference through a virtual space based on content included in the conference, as described herein.

[0195] At operation 1102, the server 102 receives data from a first user account of a first user and at least a second user account of a second user representing a conference between the first user and at least a second user, the conference being associated with a virtual space of a communications platform. The data can include audio data, video data, and / or text data associated with user input provided during the conference.

[0196] At operation 1104, the server 102 determines whether the data includes content associated with a voting option. In at least one example, the server 102 may be configured to analyze the data representing the conference (e.g., words exchanged in a conversation) to identify votes associated with the conference. In some examples, the server 102 may be configured to identify keywords associated with potential votes, such as "poll," "vote," "feedback," and the like. In such examples, in response to identifying the keywords, the server 102 may identify votes associated with the conference. In some examples, based on the analysis of the data, the server 102 may identify voting characteristics associated with the votes. Non-limiting examples of voting characteristics include the question(s) or options included in the vote, the topic(s) associated with an input box in which other users may submit their input, the time period for which votes are available for input, input anonymity, and / or the like.

[0197] In some examples, the server 102 determines that the data includes content associated with a voting option based on instructions from an administrator or host or another conference attendee to generate a voting interface. In some examples, the instructions can include voting characteristics, as described herein.

[0198] Based on a determination that the data does not include content associated with a voting option ("No" at operation 1104), the server 102 continues to receive data representing the conference. In at least one example, the server 102 may store the data representing the conference in a conference file. In some examples, the server 102 stores the data in the conference file until it receives an indication that the conference is complete. In some examples, the indication that the conference is complete may include an indication that an administrator or host has stopped the conference, an indication that a threshold number or percentage of conference attendees have left the conference, an indication that no data has been received for a threshold period of time (e.g., 3 minutes, 5 minutes, etc.), and / or the like.

[0199] Based on a determination that the data includes content associated with a voting option ("Yes" at operation 1104), the server 102 generates a voting interface associated with the voting option at operation 1106. In at least one example, the server 102 can generate the voting interface based on the voting characteristics. In some examples, the server 102 can make one or more sections of the voting interface anonymous based on input anonymity, etc. In some examples, the server 102 can provide an option via the voting interface for viewing users to anonymously submit responses to the poll. In such examples, the server 102 generates the voting interface with the options.

[0200] At operation 1108, the server 102 causes a voting interface to be displayed in association with the virtual space. In at least one example, the server 102 causes an affordance to be displayed through the virtual space that, when selected by a viewing user, causes a voting interface to be presented in association with the virtual space. The server 102 can receive user input through the voting interface and generate results for the vote. In some examples, the results can include individual results and / or aggregate results from multiple users. In some examples, the server 102 can make the results available for viewing by members of the virtual space. In some examples, the server 102 can provide the results to an administrator or host of the meeting and / or to a user who requested that a vote be associated with the meeting.

[0201] As such, the techniques described herein provide specific technical solutions to the technical problems faced by the existing systems, the details of which are described above. Example clause

[0202] A: A method implemented at least in part by one or more computing devices of a communications platform, the method including: receiving a first selection of a published conference transcript via a virtual space from a first user account of a first user, the conference transcript including a transcript of an audio conference file or a video conference file, the audio conference file or the video conference file being associated with a conference previously conducted in association with the communications platform; in response to identifying a first section of the conference transcript associated with the first selection, causing an input interface associated with the first section via the virtual space, the input interface being configured to receive a first user input associated with the conference transcript; receiving the first user input associated with the first section of the conference transcript via the input interface; and storing the first user input as metadata associated with the audio conference file or the video conference file, the first user input being stored in association with the first section.

[0203] B: The method of paragraph A, further comprising the step of modifying the audio or video conference file to include the first user input.

[0204] C: The method of paragraph B, further comprising: receiving a request to access a modified audio conference file or a modified video conference file, the modified audio conference file or the modified video conference file including at least a first section, a first user input, and a second section of the conference transcript that differs from the first section; and in response to receiving the request, displaying the first section, followed by the first user input, followed by the second section.

[0205] D: The method of any one of paragraphs A-C, further comprising: displaying the first section and the first user input associated with the first section in association with a second user account of a second user; receiving a second user input from the second user account including a reply to the first user input; and modifying metadata associated with the audio conference file or video conference file to include the second user input between the first user input and the second section of the conference transcript.

[0206] E: The method of any one of paragraphs A-D, further comprising the steps of: receiving a request from a first user account of the first user to generate a conference with a second user, the conference being associated with the virtual space, prior to receiving the first selection of the conference transcript; receiving data representing the conference from the first user account and a second user account associated with the second user; storing the data as an audio conference file or a video conference file; in response to receiving an indication that the conference is completed, generating a conference transcript associated with the audio conference file or the video conference file; and displaying the conference transcript in association with the virtual space.

[0207] F: The method of paragraph E, wherein the data representing the conference includes a first comment by a first user and a second comment by a second user, the method further includes identifying a first timestamp associated with the first comment and a second timestamp associated with the second comment, and identifying an order of presentation of the first comment and the second comment based at least in part on the first timestamp and the second timestamp, and displaying the conference transcript includes displaying the first comment having the first timestamp and the second comment having the second timestamp in order of presentation.

[0208] G: The method of any one of paragraphs A-F, further comprising the steps of: receiving data representing the conference from a second user account associated with the second user and a third user account associated with the third user prior to receiving a first selection of the conference transcript, the conference being between at least the second user and the third user independent of the virtual space; generating a conference transcript associated with the conference based at least in part on the data; receiving a request from at least one of the second user account or the third user account to associate the conference with the virtual space; and, in response to receiving the request, causing the conference transcript to be displayed in association with the virtual space, wherein publishing the conference transcript via the virtual space enables at least the first user to modify the audio conference file or the video conference file.

[0209] H: The method of any one of paragraphs A-G, further comprising the steps of receiving audio or video data representing the conference, analyzing the audio or video data to identify voting options associated with the conference, generating a voting interface associated with the voting options, and presenting the voting interface in association with the virtual space.

[0210] 11. A system comprising one or more processors and one or more non-transitory computer-readable media storing instructions that, when executed by the one or more processors, cause the system to perform operations including: receiving, from a first user account of a first user, a first selection of a conference transcript published via a virtual space, the conference transcript including a transcript of an audio conference file or a video conference file, the audio conference file or the video conference file being associated with a conference previously conducted in association with a communications platform; and, in response to identifying a first section of the conference transcript associated with the first selection, displaying, via the virtual space, an input interface associated with the first section, the input interface configured to receive a first user input associated with the conference transcript; receiving, via the input interface, a first user input associated with the first section of the conference transcript; and storing, as metadata associated with the audio conference file or the video conference file, the first user input being stored in association with the first section.

[0211] J: The system of paragraph I, wherein the operation further includes modifying the audio or video conference file to include the first user input.

[0212] K: The system of paragraph J, wherein the operations further include receiving a request to access a modified audio conference file or a modified video conference file, the modified audio conference file or the modified video conference file including at least a first section, a first user input, and a second section of the conference transcript that differs from the first section, and in response to receiving the request, displaying the first section, followed by displaying the first user input, followed by displaying the second section.

[0213] L: The system of any one of paragraphs I to K, wherein the operations further include: associating with a second user account of a second user to display the first section and the first user input associated with the first section; receiving a second user input from the second user account including a reply to the first user input; and modifying metadata associated with the audio or video conference file to include the second user input between the first user input and the second section of the conference transcript.

[0214] M: The system of any one of paragraphs I-L, wherein the operations further include receiving, prior to receiving the first selection of the conference transcript, a request from a first user account of the first user to generate a conference with a second user, the conference being associated with a virtual space; receiving data representing the conference from the first user account and a second user account associated with the second user; storing the data as an audio conference file or a video conference file; and, in response to receiving an indication that the conference is completed, generating a conference transcript associated with the audio conference file or the video conference file; and displaying the conference transcript in association with the virtual space.

[0215] N: The system described in paragraph M, wherein the data representing the conference includes a first comment by a first user and a second comment by a second user, and the operations further include identifying a first timestamp associated with the first comment and a second timestamp associated with the second comment, and identifying an order of presentation of the first comment and the second comment based at least in part on the first timestamp and the second timestamp, and displaying the conference transcript includes displaying the first comment having the first timestamp and the second comment having the second timestamp in order of presentation.

[0216] and generating a conference transcript associated with the conference based at least in part on the data. The system of any one of paragraphs I-N, further comprising: receiving data representing the conference from a second user account associated with the second user and a third user account associated with the third user prior to receiving the first selection of the conference transcript, the conference taking place between at least the second user and the third user independent of the virtual space; generating a conference transcript associated with the conference based at least in part on the data; receiving a request from at least one of the second user account or the third user account to associate the conference with the virtual space; and displaying the conference transcript in association with the virtual space in response to receiving the request, wherein publishing the conference transcript via the virtual space enables at least the first user to modify an audio conference file or a video conference file.

[0217] P: The system of any one of paragraphs I-O, wherein the operations further include receiving audio or video data representing the conference, analyzing the audio or video data to identify voting options associated with the conference, generating a voting interface associated with the voting options, and presenting the voting interface in association with the virtual space.

[0218] Q: One or more non-transitory computer-readable media storing instructions that, when executed by one or more processors, cause the one or more processors to perform operations including receiving, from a first user account of a first user, a first selection of a conference transcript published via a virtual space, where the conference transcript includes a transcript of an audio conference file or a video conference file, the audio conference file or the video conference file is associated with a conference that previously occurred in association with the communications platform; and in response to identifying a first section of the conference transcript associated with the first selection, displaying, via the virtual space, an input interface associated with the first section, where the input interface is configured to receive a first user input associated with the conference transcript; receiving, via the input interface, a first user input associated with the first section of the conference transcript; and storing, as metadata associated with the audio conference file or the video conference file, the first user input being stored in association with the first section.

[0219] R: The one or more non-transitory computer-readable media of paragraph Q, wherein the operations further include modifying the audio conference file or the video conference file to include the first user input.

[0220] S: The one or more non-transitory computer-readable media of paragraph R, the operations further including receiving a request to access a modified audio conference file or a modified video conference file, the modified audio conference file or the modified video conference file including at least a first section, a first user input, and a second section of the conference transcript that differs from the first section, and in response to receiving the request, causing the first section to be displayed, followed by the first user input, followed by the second section.

[0221] T: The one or more non-transitory computer-readable media of any one of paragraphs Q-S, wherein the operations further include: associating with a second user account of a second user to display the first section and the first user input associated with the first section; receiving from the second user account a second user input including a reply to the first user input; and modifying metadata associated with the audio conference file or video conference file to include the second user input between the first user input and the second section of the conference transcript.

[0222] Although the example clauses described above are described with respect to one particular implementation, it should be understood in the context of this document that the contents of the example clauses may also be implemented via a method, device, system, computer readable medium, and / or another implementation. Additionally, any of the examples A-T may be implemented alone or in combination with any other one or more of the examples A-T. conclusion

[0223] One or more examples of the techniques described herein have been described, and various modifications, additions, permutations and equivalents thereof are within the scope of the techniques described herein.

[0224] In describing the examples, reference is made to the accompanying drawings, which form a part hereof, and which show, by way of illustration, specific examples of the claimed subject matter. It is to be understood that other examples may be used and that modifications or alterations, such as structural changes, may be made. Such examples, modifications or alterations do not necessarily depart from the intended scope of the claimed subject matter. Although the steps herein may be presented in a particular order, in some cases the ordering may be changed such that certain inputs are provided at different times or in a different order without changing the functionality of the systems and methods described. The disclosed procedures may also be performed in different orders. Additionally, the various calculations described herein need not be performed in the order disclosed, and other examples using alternative orders of calculations may be readily implemented. In addition to being reordered, calculations may also be decomposed into sub-calculations having the same results.

Claims

1. 1. A method implemented at least in part by one or more computing devices of a communications platform, comprising: receiving a first selection of published conference transcripts via a virtual space from a first user account of a first user, the conference transcripts including a transcript of an audio conference file or a video conference file, the audio conference file or the video conference file being associated with a conference previously conducted in association with the communications platform; in response to identifying a first section of the conference transcript associated with the first selection, causing an input interface associated with the first section through the virtual space, the input interface configured to receive a first user input associated with the conference transcript; receiving, via the input interface, the first user input associated with the first section of the conference transcript; storing the first user input as metadata associated with the audio-conference file or the video-conference file, the first user input being stored in association with the first section; The method includes:

2. The method of claim 1 , further comprising the step of modifying the audio-conference file or the video-conference file to include the first user input.

3. receiving a request to access a modified audio-conference file or a modified video-conference file, the modified audio-conference file or the modified video-conference file including at least the first section, the first user input, and a second section of the conference transcript that differs from the first section; in response to receiving the request, displaying the first section, followed by displaying the first user input, followed by displaying a second section; The method of claim 2 , further comprising:

4. displaying the first section and the first user input associated with the first section in association with a second user account of a second user; receiving a second user input from the second user account comprising a reply to the first user input; modifying the metadata associated with the audio-conference file or the video-conference file to include the second user input between the first user input and a second section of the conference transcript; The method of claim 1 further comprising:

5. prior to receiving the first selection of the conference transcript; receiving a request from the first user account of the first user to create the conference with a second user, the conference being associated with the virtual space; receiving data representing the conference from the first user account and a second user account associated with a second user; storing said data as said audio-conference file or said video-conference file; in response to receiving an indication that the conference is completed, generating the conference transcript associated with the audio conference file or the video conference file; displaying the conference transcript in association with the virtual space; The method of claim 1 further comprising:

6. The data representing the conference includes a first comment by the first user and a second comment by the second user, and the method further comprises: identifying a first timestamp associated with the first comment and a second timestamp associated with the second comment; identifying an order of presentation of the first comment and the second comment based at least in part on the first timestamp and the second timestamp; Further comprising: displaying the conference transcript includes displaying the first comment having the first timestamp and the second comment having the second timestamp in presentation order. The method according to claim 5.

7. prior to receiving the first selection of the conference transcript; receiving data representing the conference from a second user account associated with a second user and a third user account associated with a third user, the conference being conducted between at least the second user and the third user independent of the virtual space; generating the conference transcript associated with the conference based at least in part on the data; receiving a request from at least one of the second user account or the third user account to associate the conference with the virtual space; In response to receiving the request, displaying the conference transcript in association with the virtual space, wherein publishing the conference transcript via the virtual space enables at least the first user to modify the audio conference file or the video conference file. The method of claim 1 further comprising:

8. receiving audio or video data representative of the conference; analyzing the audio or video data to identify voting options associated with the conference; generating a voting interface associated with the voting options; presenting the voting interface in association with the virtual space; The method of claim 1 further comprising:

9. A computer program product comprising coded instructions which, when executed on a computer, performs the method of any one of claims 1 to 8.

10. 1. A system comprising: one or more processors; one or more non-transitory computer-readable media storing instructions; the instructions, when executed by the one or more processors, cause the system to: receiving, from a first user account of a first user, a first selection of conference transcripts published via a virtual space, the conference transcripts including a transcript of an audio conference file or a video conference file, the audio conference file or the video conference file being associated with a conference previously conducted in association with a communications platform; in response to identifying a first section of the conference transcript associated with the first selection, displaying, via the virtual space, an input interface associated with the first section, the input interface configured to receive a first user input associated with the conference transcript; receiving, via the input interface, the first user input associated with the first section of the conference transcript; storing the first user input as metadata associated with the audio-conference file or the video-conference file, the first user input being stored in association with the first section; and A system that causes a system to perform an operation including:

11. The system of claim 10 , wherein the actions further include modifying the audio-conference file or the video-conference file to include the first user input.

12. The operation includes: receiving a request to access a modified audio-conference file or a modified video-conference file, the modified audio-conference file or the modified video-conference file including at least the first section, the first user input, and a second section of the conference transcript that is different from the first section; in response to receiving the request, displaying the first section, followed by displaying the first user input, followed by displaying a second section. The system of claim 11 further comprising:

13. The operation includes: displaying the first section and the first user input associated with the first section in association with a second user account of a second user; receiving a second user input from the second user account comprising a reply to the first user input; modifying the metadata associated with the audio-conference file or the video-conference file to include the second user input between the first user input and a second section of the conference transcript; The system of claim 10 further comprising:

14. The operation includes: prior to receiving the first selection of the conference transcript; receiving, from the first user account of the first user, a request to create the conference with a second user, the conference being associated with the virtual space; receiving data representing the conference from the first user account and a second user account associated with a second user; storing said data as said audio-conference file or said video-conference file; in response to receiving an indication that the conference is completed, generating the conference transcript associated with the audio conference file or the video conference file; displaying the conference transcript in association with the virtual space; The system of claim 10 further comprising:

15. The data representing the conference includes a first comment by the first user and a second comment by the second user, and the action includes: identifying a first timestamp associated with the first comment and a second timestamp associated with the second comment; identifying an order of presentation of the first comment and the second comment based at least in part on the first timestamp and the second timestamp; Further comprising: displaying the conference transcript includes displaying the first comment having the first timestamp and the second comment having the second timestamp in presentation order. The system of claim 14.