[go: up one dir, main page]

CN120380496A - Generating structured data containers for communication platforms - Google Patents

Generating structured data containers for communication platforms

Info

Publication number
CN120380496A
CN120380496A CN202380087235.6A CN202380087235A CN120380496A CN 120380496 A CN120380496 A CN 120380496A CN 202380087235 A CN202380087235 A CN 202380087235A CN 120380496 A CN120380496 A CN 120380496A
Authority
CN
China
Prior art keywords
user
structured data
fields
group
data container
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN202380087235.6A
Other languages
Chinese (zh)
Inventor
A·基尔霍夫
J·特普洛
K·迈耶
K·马歇尔
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Shuo Power Co
Original Assignee
Shuo Power Co
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Priority claimed from US18/151,131 external-priority patent/US12238060B2/en
Priority claimed from US18/151,057 external-priority patent/US12346880B2/en
Priority claimed from US18/151,023 external-priority patent/US12106043B2/en
Application filed by Shuo Power Co filed Critical Shuo Power Co
Publication of CN120380496A publication Critical patent/CN120380496A/en
Pending legal-status Critical Current

Links

Classifications

    • GPHYSICS
    • G06COMPUTING OR CALCULATING; COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • G06Q10/101Collaborative creation, e.g. joint development of products or services
    • G06Q10/40
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/21Monitoring or handling of messages
    • H04L51/216Handling conversation history, e.g. grouping of messages in sessions or threads
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L51/00User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail
    • H04L51/52User-to-user messaging in packet-switching networks, transmitted according to store-and-forward or real-time protocols, e.g. e-mail for supporting social networking services

Landscapes

  • Engineering & Computer Science (AREA)
  • Business, Economics & Management (AREA)
  • Human Resources & Organizations (AREA)
  • Entrepreneurship & Innovation (AREA)
  • Strategic Management (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Operations Research (AREA)
  • Data Mining & Analysis (AREA)
  • Economics (AREA)
  • Marketing (AREA)
  • Computing Systems (AREA)
  • Quality & Reliability (AREA)
  • Tourism & Hospitality (AREA)
  • Physics & Mathematics (AREA)
  • General Business, Economics & Management (AREA)
  • General Physics & Mathematics (AREA)
  • Theoretical Computer Science (AREA)
  • Information Transfer Between Computers (AREA)

Abstract

本文讨论了用于经由通信平台生成结构化数据容器以及与这些结构化数据容器相关联的消息传递线程的技术。例如,通信平台可以响应于从通信平台的用户接收到请求而生成表示与通信平台相关联的记录系统的结构化数据容器,结构化数据容器包含多个字段和与经由通信平台的交互相关联的信息。通信平台还可以经由消息传递线程生成并呈现包括多个字段的结构化数据容器。

This article discusses techniques for generating structured data containers and messaging threads associated with these structured data containers via a communication platform. For example, the communication platform can generate a structured data container representing a system of record associated with the communication platform in response to receiving a request from a user of the communication platform, the structured data container containing multiple fields and information associated with an interaction via the communication platform. The communication platform can also generate and present a structured data container including multiple fields via a messaging thread.

Description

Generating structured data containers for communication platforms
Cross Reference to Related Applications
This patent application claims priority from U.S. utility patent application Ser. No. 18/151,023, U.S. utility patent application Ser. No. 18/151,057, and U.S. utility patent application Ser. No. 18/151,131, all of which are filed on day 1, month 6 of 2023. Application Ser. Nos. 18/151,023, 18/151,057 and 18/151,131 are incorporated herein by reference in their entireties.
Technical Field
Communication platforms are becoming more popular with organizations that facilitate communication and collaboration between users. Users of such communication platforms may communicate with each other by sending data via channels, direct messages, and/or other virtual spaces. Due to the vast nature of data stored and stored on communication platforms, it is often difficult to easily find and track such data, even with existing search functions. Thus, data may be forgotten or lost, especially in communication platforms having asynchronous conversations. Furthermore, existing methods for tracking and recording data (such as spreadsheets) are cumbersome to use and are not designed for collaborative use.
Drawings
The specific embodiments are described with reference to the accompanying drawings. In the drawings, the leftmost digit(s) of a reference number identifies the figure in which the reference number first appears. The use of the same reference symbols in different drawings indicates similar or identical items or features. The figures are not drawn to scale.
FIG. 1 illustrates an exemplary system for performing the techniques described herein.
Fig. 2A illustrates a user interface for a particular example group-based communication system.
FIG. 2B illustrates a user interface for a multimedia collaboration session within a group-based communication system in a particular example.
FIG. 2C illustrates a user interface for inter-organizational collaboration within a group-based communication system in a particular example.
FIG. 2D illustrates a user interface for collaborative documents within a group-based communication system for a particular example.
Fig. 3A depicts a user interface for a workflow within a group-based communication system.
Fig. 3B depicts a block diagram for implementing certain examples as discussed herein.
FIG. 4A illustrates an exemplary interface for generating a structured data container via a list generation interface.
FIG. 4B illustrates an exemplary interface that may be used to generate a blank structured data container.
FIG. 5A illustrates an exemplary interface that may be used to generate a structured data container via a template in a channel.
FIG. 5B illustrates an exemplary interface that may be used to generate a structured data container via a template.
FIG. 6 illustrates an exemplary interface including an exemplary list including a plurality of structured data containers.
FIG. 7A illustrates an exemplary interface including a messaging thread associated with a structured data container.
FIG. 7B illustrates an exemplary interface that may be used to update fields associated with a structured data container via a virtual space.
FIG. 7C illustrates an exemplary interface that may be used to update a structured data container based on data received from a virtual space associated with the structured data container.
FIG. 7D illustrates an exemplary interface for modifying fields of a structured data container via a messaging thread.
FIG. 7E illustrates an exemplary interface including an instance of a structured data container, the instance including modifications to fields of the structured data container.
FIG. 8 illustrates a flow chart of an exemplary process for generating a messaging thread associated with a structured data container and sharing the structured data container to a virtual space.
FIG. 9 illustrates a flow chart of an exemplary process for generating a structured data container via a virtual space of a group-based communication platform.
Detailed Description
The ability to effectively and efficiently cooperate via a recording system on a communication platform faces a number of challenges. For example, many users communicate by sending data such as messages, documents, and other media files via a communication platform. These communications are particularly useful for groups of individuals (such as organizations and companies that are composed of a large number of workflows) that do project collaboration. In the case of larger-scale projects and workflows, large amounts of data are typically exchanged between many individuals in various positions and departments. To track such items and workflows, organizations typically rely on electronic applications or software (such as spreadsheets) to manage and store data and information. However, such techniques are limited in number and scope.
The massive nature of many items often requires managing large amounts of data and tracking many moving parts. However, due to the collaborative nature of such items, people often rely on other people (such as teammates and colleagues) to accomplish tasks, such as reviewing data, generating content, and the like. Typically, such tasks are lost within the vast amounts of data transmitted within an organization, particularly in communication platforms that include a large amount of synchronous and asynchronous communications. For example, messages may be scattered across multiple platforms and teams, making it difficult to track current status and tasks. This typically results in the individual losing a message or failing to see a notification. Thus, collaboration is often inhibited, resulting in loss of time and revenue.
Accordingly, the disclosure describes techniques for generating recording systems that incorporate data across a communication platform to provide a "background" of tasks and projects of an organization. For example, as described herein, the group-based communication platform may generate a "list" that includes one or more structured data containers representing the recording system. One or more structured data containers can contain one or more fields that can be associated with data related to a group-based communication platform. In other words, the group-based communication platform may allow a user to generate a list including one or more "tasks," where each task or structured data container may be associated with aspects of the communication platform (such as start dates, files and documents, and contributors to a task).
In some examples, the group-based communication platform may generate a messaging thread associated with one or more of the structured data containers, where the messaging thread not only acts as a single designated space for users to communicate and share data associated with the structured data containers, but also maintains a record of modifications made to the structured data containers. Thus, a user can easily access and focus on all relevant details, for example, related to a task or project. In addition, the structured data container can be shared to other virtual spaces of the communication platform, such as direct messages or channels, allowing users to seamlessly integrate other users into the structured data container. Furthermore, any changes made to any instance of the structured data container may be automatically updated across the communication platform to other instances of the structured data container such that the information is always accurate and up to date.
As these examples illustrate, the techniques described herein may improve the functionality, efficiency, and overall user experience of a communication platform by organizing and managing data by generating structured data containers and corresponding messaging threads. By allowing a user to generate a list containing one or more structured data containers that include fields associated with interactions via a group-based communication platform, the techniques described herein may improve the user experience via an improved communication platform Graphical User Interface (GUI) by allowing the user to efficiently customize and plan lists of tasks and items. These techniques not only enable users to systematically track information, but also keep users informed of modifications made to such information. Furthermore, the techniques discussed herein may address technical problems associated with maintaining communication data across a communication platform that are associated with the presence of large amounts of data. Thus, these techniques may reduce the amount of hardware and/or software required to complete the data transfer, thereby increasing available memory and/or available computational cycles and reducing power consumption. Thus, a system constructed in accordance with various examples of the disclosure provides a specific technical solution to the technical problem, details of which are described herein.
The following detailed description of the examples refers to the accompanying drawings which illustrate specific examples in which the technology may be practiced. These examples are intended to describe aspects of the systems and methods in sufficient detail to enable those skilled in the art to practice the techniques discussed herein. Other examples may be utilized, and changes may be made, without departing from the scope of the disclosure. The following detailed description is, therefore, not to be taken in a limiting sense. The scope of the disclosure is to be defined only by the appended claims, along with the full scope of equivalents to which such claims are entitled.
Group-based communication system
FIG. 1 illustrates an exemplary environment 100 for performing the techniques described herein. In at least one example, the exemplary environment 100 can be associated with a communication platform that can utilize a network-based computing system to enable users of the communication platform to exchange data. In at least one example, the communication platform may be "group-based" such that the platform and associated systems, communication channels, messages, collaboration documents, canvas, audio/video conversations, and/or other virtual spaces have security (which may be defined by permissions) to restrict access to defined groups of users. In some examples, such a group of users may be defined by a group identifier, which, as described above, may be associated with a public access credential, domain, or the like. In some examples, the communication platform may be a hub that provides a secure and private virtual space to enable users to chat, conference, call, cooperate, transfer files or other data between or among each other, or otherwise communicate. As described above, each group may be associated with a workspace, thereby enabling users associated with the group to chat, conference, call, collaboration, transfer files or other data between or among each other, or otherwise communicate in a secure and private virtual space. In some examples, members of a group, and thus workspaces, may be associated with the same organization. In some examples, members of a group, and thus workspaces, may be associated with different organizations (e.g., entities having different organization identifiers).
In at least one example, the exemplary environment 100 may include one or more server computing devices (or "servers") 102. In at least one example, the server 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 example of a server, the functional components and data may be implemented on a single server, a server cluster, 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.
In at least one example, the server 102 can communicate with the user computing device 104 via one or more networks 106. That is, the server 102 and the user computing device 104 can use the network 106 to transmit, receive, and/or store data (e.g., content, information, etc.), as described herein. The user computing device 104 may be any suitable type of computing device, for example, portable, semi-fixed, or fixed. Some examples of user computing device 104 may include a tablet computing device, a smart phone, a mobile communication device, a laptop computer, 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 sending communications and performing functions in accordance with the techniques described herein. Although a single user computing device 104 is shown, in practice, the exemplary environment 100 may include multiple (e.g., tens, hundreds, thousands, millions) user computing devices. In at least one example, a user computing device (such as user computing device 104) can be operated by a user to access communication services via a communication platform, among other aspects. The user may be an individual, a group of individuals, an employer, an enterprise, an organization, or the like.
Network 106 may include, but is not limited to, any type of network known in the art, such as a local or wide area network, the Internet, a wireless network, a cellular network, a local wireless network, wi-Fi, and/or close range wireless communication,Bluetooth Low Energy (BLE), near Field Communication (NFC), wired network, or any such network, or any combination thereof. The means for such communication may depend at least in part on the type of network, the selected environment, or both. Protocols for communicating over such networks 106 are well known and will not be discussed in detail herein.
In at least one example, the server 102 can include one or more processors 108, computer-readable media 110, one or more communication interfaces 112, and/or input/output devices 114.
In at least one example, each of the processors 108 may be a single processing unit or multiple processing units, and may include a single or multiple computing units or multiple processing cores. The processor 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 devices that manipulate signals based on operational instructions. For example, the processor 108 may be one or more hardware processors and/or any suitable type of logic circuitry specifically programmed or configured to perform the algorithms and processes described herein. The processor 108 may be configured to fetch and execute computer-readable instructions stored in a computer-readable medium that may program the processor to perform the functions described herein.
Computer-readable media 110 may include volatile and nonvolatile memory and/or removable and non-removable media implemented in any type of technology for storage of data such as computer-readable instructions, data structures, program modules or other data. Such computer-readable media 110 may include, but is not limited to RAM, ROM, EEPROM, flash memory or other memory technologies, optical storage, solid state storage, magnetic tape, magnetic disk storage, RAID storage systems, storage arrays, network attached storage, storage area networks, cloud storage, or any other medium that may be used to store the desired data and that may be accessed by a computing device. Depending on the configuration of the server 102, the computer-readable medium 110 may be one type of computer-readable storage medium and/or may be a tangible non-transitory medium to the extent that, when referred to, the non-transitory computer-readable medium excludes media such as energy, carrier signals, electromagnetic waves, and signals themselves.
The computer-readable medium 110 may be used to store any number of functional components capable of being executed by the processor 108. In many implementations, these functional components include instructions or programs that are executable by the processor 108 and, when executed, specifically configure the processor 108 to perform the actions attributed above to the server 102. Features stored in the computer-readable medium may optionally include a messaging component 116, an audio/video component 118, a list generation component 120, an operating system 122, and a data store 124.
In at least one example, messaging component 116 can process messages between users. That is, in at least one example, the messaging component 116 can receive outgoing messages from the user computing device 104 and can send the messages as incoming messages to the second user computing device 104. The message may 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 to one or more users associated with the communication channel via the communication channel. In addition, the message may be transmitted in association with a collaboration document, canvas, or other collaboration space. In at least one example, the canvas may include a flexible canvas for planning, organizing, and sharing information sets among users. In at least one example, the collaboration document may be associated with a document identifier (e.g., a virtual space identifier, a communication channel identifier, etc.) configured to implement messaging functionality within the collaboration document that is attributable to the virtual space (e.g., the communication channel). That is, the collaboration document may be considered a virtual space (such as a communication channel) and include functionality associated with the virtual space (such as a communication channel). The virtual space or communication channel may be a data route for exchanging data between and among systems and devices associated with the communication platform.
In at least one example, messaging component 116 can establish communication routes between and among various user computing devices, thereby allowing the user computing devices to communicate and share data between and among each other. In at least one example, messaging component 116 may manage such communications and/or data sharing. In some examples, data associated with a virtual space (such as a collaboration document) may be presented via a user interface. In addition, metadata associated with each message transmitted via the virtual space may be stored in association with the virtual space, such as a timestamp associated with the message, a sending user identifier, a recipient user identifier, a conversation identifier, and/or a root object identifier (e.g., a conversation associated with a thread and/or a root object), and so forth.
In various examples, the messaging component 116 can receive messages transmitted in association with a virtual space (e.g., direct message instance, communication channel, canvas, collaboration document, etc.). In various examples, the messaging component 116 can identify one or more users associated with the virtual space and can cause the message to be presented on the respective user computing device 104 in association with an instance of the virtual space. In various examples, messaging component 116 may identify the message as an update to the virtual space and, based on the identified update, may cause a notification associated with the update to be presented in association with a sidebar of a user interface associated with one or more of the users associated with the virtual space. For example, the messaging component 116 may receive a message from a first user account transmitted in association with the virtual space. In response to receiving the message (e.g., interaction data associated with the interaction of the first user with the virtual space), the messaging component 116 can identify a second user associated with the virtual space (e.g., another user that is a member of the virtual space). In some examples, messaging component 116 may cause notification of an update to the virtual space to be presented via a sidebar of a user interface associated with a second user account of the second user. In some examples, messaging component 116 may cause the notification to be presented in response to determining that a sidebar of a user interface associated with the second user account includes an affordance associated with the virtual space. In such examples, the notification may be presented in association with an affordance associated with the virtual space.
In various examples, messaging component 116 may be configured to identify references or tags associated with messages transmitted in association with the virtual space. In at least one example, the mention or marking can include a @ mention (or other special character) of a user identifier associated with the communication platform. The user identifier may include a user name, a real name, or other unique identifier associated with a particular user. In response to identifying the mention or marking of the user identifier, the messaging component 116 can cause a notification to be presented on a user interface associated with the user identifier, such as in a sidebar of the user interface associated with the particular user and/or in a virtual space associated with the mention and reaction in association with an affordance associated with the virtual space. That is, the messaging component 116 may be configured to alert particular users that they are mentioned in the virtual space.
In at least one example, the audio/video component 118 can be configured to manage audio and/or video communications between and among users. In some examples, the audio and/or video communications may be associated with an audio and/or video conversation. In at least one example, the audio and/or video dialog may include a discrete identifier configured to uniquely identify the audio and/or video dialog. In some examples, the audio and/or video component 118 may store a user identifier associated with a user account of a member of a particular audio and/or video conversation, such as to identify a user having appropriate permissions to access the particular audio and/or video conversation.
In some examples, communications associated with audio and/or video conversations ("conversations") may be synchronous and/or asynchronous. That is, the conversation may include a real-time audio and/or video conversation between the first user and the second user over a period of time, and after the first period of time, a third user associated with the conversation (e.g., as a member of the conversation) may contribute to the conversation. The audio/video component 118 can be configured to store audio and/or video data associated with the conversation, such as to enable users with appropriate permissions to listen to and/or view the audio and/or video data.
In some examples, the audio/video component 118 may be configured to generate a transcription of the conversation and may store the transcription in association with the audio and/or video data. The transcription may include a textual representation of the audio and/or video data. In at least one example, the audio/video component 118 can generate the transcription using known speech recognition techniques. In some examples, the audio/video component 118 can generate the transcription simultaneously or substantially simultaneously with the conversation. That is, in some examples, the audio/video component 118 may be configured to generate a textual representation of the conversation as the conversation proceeds. In some examples, audio/video component 118 may generate the transcription upon receiving an indication that the conversation has been completed. The indication that the conversation has been completed may include an indication that a moderator or administrator associated therewith has stopped the conversation, an indication that a threshold number of meeting attendees have closed an associated interface, and so forth. That is, the audio/video component 118 can identify completion of a conversation and can generate a transcription associated therewith based upon the completion.
In at least one example, the audio/video component 118 can be configured to cause a transcription to be presented in association with a virtual space associated with an audio and/or video conversation. For example, a first user may initiate an audio and/or video conversation in association with a communication channel. The audio/video component 118 can process audio and/or video data between attendees of the audio and/or video conversation and can generate a transcription of the audio and/or video data. In response to generating the transcription, the audio/video component 118 can cause the transcription to be published or otherwise presented via a communication channel. In at least one example, audio/video component 118 can render one or more segments of the transcription as selectable for commentary, such as to enable members of the communication channel to comment on or further contribute to the conversation. In some examples, audio/video component 118 may update the transcription based on the comment.
In at least one example, the audio/video component 118 can manage one or more audio and/or video conversations in association with a virtual space associated with a group (e.g., organization, team, etc.) administrator or command center. A group administrator or command center may be referred to herein as a virtual (and/or digital) headquarter associated with a group. In at least one example, the audio/video component 118 can be configured to coordinate with the messaging component 116 and/or other components of the server 102 to communicate in association with other virtual spaces associated with the virtual headquarters. That is, the messaging component 116 can transmit data (e.g., messages, images, drawings, files, etc.) associated with one or more communication channels associated with a virtual headquarters, direct messaging instances, collaboration documents, canvases, and the like. In some examples, a communication channel, direct messaging instance, collaborative document, canvas, etc. may have associated therewith one or more audio and/or video conversations managed by the audio/video component 118. That is, the audio and/or video conversations associated with the virtual headquarter may be further associated with or independent of one or more other virtual spaces of the virtual headquarter.
In at least one example, list generation component 120 can manage the generation, modification, updating, and/or sharing of structured data containers. As described above, the term "list" broadly encompasses one or more structured data containers generated via a group-based communication platform. The structured data container may represent a recording system with respect to a group-based communication platform. In other words, the list may include one or more structured data containers and provide a means to store, sort, manage, and alter data associated with the group-based communication platform. In some examples, the structured data container may include one or more fields. A field may be, for example, an element of a structured data container that may be configured to receive data. The data may correspond to a category of data associated with a group-based communication platform, such as a task title, description, status, question type, date submitted, date due, date released, date started, owner, creator, thread, audience, content item, or rating, to name a few non-limiting examples. Additionally or alternatively, the structured data container can contain information associated with interactions associated with the group-based communication platform. In other words, the one or more fields may include data associated with interactions via the group-based communication platform.
In some examples, list generation component 120 can facilitate generating one or more structured data containers. For example, the group-based communication platform may receive a request from a user associated with the communication platform to create a structured data container. The request may be received via any area of the group-based communication network, such as via a channel, a multimedia collaboration session (such as real-time voice discussion), a canvas, a template, a direct message, a list generation interface, a workflow, or a thread, to name a few non-limiting examples. Based at least in part on receiving a request to generate a structured data container, list generation component 120 can prompt a user to select one or more fields associated with the structured data container such that the user can determine data to be associated with the structured data container.
In some examples, the structured data container may be generated via a template and/or workflow. For example, based at least in part on receiving a request to create a structured data container, list generation component 120 can present one or more templates to a user from which the user can select to be a structured data container. In some examples, one or more templates may correspond to a universal workplace process. For example, the template may be associated with submitting a request for assistance to an Information Technology (IT) department. The template may include fields associated with at least one of a question, a technical field, a question screen shot, and/or a question date. Thus, users of the group-based communication platform that require IT assistance may include information associated with one or more interactions via the group-based communication platform in respective fields such that, once submitted, IT departments may receive information necessary to diagnose and remedy any problems.
In some examples, list generation component 120 may generate a messaging thread associated with at least one of a plurality of fields of a structured data container. The messaging threads may include different spaces of the group-based communication platform presented via the same feed of the different spaces of the group-based communication platform. The messaging thread is described in more detail below in fig. 2A and 2B. In some examples, the messaging thread associated with at least one of the plurality of fields may include information associated with at least one of the plurality of fields and/or information associated with interactions associated with the group-based communication platform. In some examples, a messaging thread associated with a list may update data associated with the messaging thread such that changes made to the structured data container are reflected in the messaging thread. For example, continuing with the example above, assume that the user of the group-based communication platform enters date 2023, 1 month 31 days via a request for IT assistance workflow. The list generation component 120 may update a "date" field of the corresponding structured data container to reflect a date 2023, 1, 31, wherein the date includes first information associated with a first interaction associated with the group-based communication platform. The user may then decide to update the date from 2023, 1, 31 to 2023, 1, 24, wherein the updated date includes second information associated with a second interaction associated with the group-based communication platform. Based at least in part on receiving the updated information, the list generation component 120 can cause presentation of first metadata associated with the first information and second metadata associated with the second information via the messaging thread such that the second metadata includes an indication of a change to the first information. In other words, list generation component 120 can cause a change in date to be presented via a messaging thread. In this way, the user of the structured data container can be easily made aware of any changes made to the structured data container.
While the current example describes updating a messaging thread associated with a structured data container based on changes to the structured data container, list generation component 120 may alter the structured data container based at least in part on changes made to data associated with a plurality of fields associated with the structured data container via other instances of the structured data container. In addition to or instead of messaging threads, instances of the structured data container may be accessed via and/or shared to other virtual spaces of the group-based communication platform, such as channels, canvas, direct messages, or real-time speech discussion, to name a few limiting examples. Similar to that described above with respect to the messaging thread, changes to one or more of the plurality of fields may be reflected in other instances of the structured data container. Generating, modifying, updating, and sharing structured data containers is described in more detail below in fig. 4A-9. Additional details of operations that may be performed by the list generation component, such as generating, modifying, updating, and/or sharing structured data containers, are described below.
In some examples, the communication platform may manage the communication channel. In some examples, the communication platform may be a channel-based messaging platform, which in some examples may be capable of being used by a group of users. Users of the communication platform may communicate with other users via a communication channel. The communication channels or virtual spaces may be data routes for exchanging data between and among systems and devices associated with the communication platform. In some examples, a channel may be a virtual space in which people may publish messages, documents, and/or files. In some examples, access to the channel may be controlled by permissions. In some examples, the channels may be limited to a single organization, shared between different organizations, may be public, private, or special channels (e.g., hosted channels with guest accounts where guests may issue but be prevented from performing certain actions, such as inviting other users to the channel). In some examples, some users may be invited to a channel via email, channel invitation, direct message, text message, or the like. Examples of channels and associated functionality are discussed throughout the disclosure.
In at least one example, the operating system 122 can manage the processor 108, computer-readable medium 110, hardware, software, etc., of the server 102.
In at least one example, the data store 124 can be configured to store data that is accessible, manageable, and updateable. In some examples, the data store 124 may be integrated with the server 102, as shown in fig. 1. In other examples, the data store 124 may be located remotely from the server 102 and may be accessible by the server 102 and/or user devices (such as the user device 104). The data store 124 may include a plurality of databases that may include user/organization data 126 and/or virtual space data 128. Additional or alternative data may be stored in the data store and/or one or more other data stores.
In at least one example, the user/organization data 126 can include data associated with a user of the communication platform. In at least one example, the user/organization data 126 may store data in a user profile (which may also be referred to as a "user account"), which may store data associated with a user, including, but not limited to, one or more user identifiers associated with a plurality of different organizations or entities with which the user is associated, one or more communication channel identifiers associated with communication channels to which the user has been authorized to access, one or more group identifiers of groups (or organizations, teams, entities, etc.) with which the user is associated, an indication of whether the user is an owner or manager of any communication channel, an indication of whether the user has any communication channel restrictions, a plurality of messages, a plurality of emoticons, a plurality of conversations, a plurality of conversation topics, an avatar, an email address, a real name (e.g., john Doe), a user name (e.g., j Doe), a password, a time zone, a status, a token, etc.
In at least one example, the user/organization data 126 may include license data associated with a license of an individual user of the communication platform. In some examples, permissions may be set automatically or by an administrator of the communication platform, employer, enterprise, organization, or other entity utilizing the communication platform, team leader, group leader, or other entity utilizing the communication platform to communicate with team members, group members, etc., individual users, etc. Permissions associated with individual users may be mapped to or otherwise associated with accounts or profiles within user/organization data 126. In some examples, permissions may indicate which users may communicate directly with other users, which channels the users are permitted to access, constraints on individual channels, which workspaces the users are permitted to access, constraints on individual workspaces, and so on. In at least one example, permissions may support a communication platform by maintaining security for restricting access to a defined group of users. In some examples, such users may be defined by public access credentials, group identifiers, and the like, as described above.
In at least one example, the user/organization data 126 may include data associated with one or more organizations of the communication platform. In at least one example, the user/organization data 126 may store data in an organization profile that may store data associated with an organization, including, but not limited to, one or more user identifiers associated with an organization, one or more virtual space identifiers associated with an organization (e.g., workspace identifiers, communication channel identifiers, direct message instance identifiers, collaboration document identifiers, canvas identifiers, audio/video conversation identifiers, etc.), an organization identifier associated with an organization, one or more organization identifiers associated with other organizations authorized to communicate with an organization, etc.
In at least one example, virtual space data 128 may include data associated with one or more virtual spaces associated with a communication platform. Virtual space data 128 may include text data, audio data, video data, images, files, and/or any other type of data configured to be transmitted in association with a virtual space. Non-limiting examples of virtual spaces include workspaces, communication channels, direct messaging instances, collaborative documents, canvases, and audio and/or video conversations. In at least one example, the virtual space data may store data associated with separate virtual spaces separately, such as based on discrete identifiers associated with each virtual space. In some examples, the first virtual space may be associated with the second virtual space. In such examples, first virtual space data associated with the first virtual space may be stored in association with the second virtual space. For example, data associated with a collaboration document generated in association with a communication channel may be stored in association with the communication channel. As another example, data associated with an audio and/or video conversation conducted in association with a communication channel may be stored in association with the communication channel.
As described above, each virtual space of the communication platform may be assigned a discrete identifier that uniquely identifies the virtual space. In some examples, the virtual space identifier associated with the virtual space may include a physical address in virtual space data 128 where data related to the virtual space is stored. The virtual space may be "public" which may allow any user within an organization (e.g., associated with an organization identifier) to join and participate in data sharing through the virtual space, or the virtual space may be "private" which may restrict data communications in the virtual space to a particular user or to a user with appropriate viewing permissions. In some examples, the virtual space may be "shared," which may allow users associated with different organizations (e.g., entities associated with different organization identifiers) to join and participate in data sharing through the virtual space. The shared virtual space (e.g., shared channel) may be public so that it can be accessed by any user of either organization, or the shared virtual space (e.g., shared channel) may be private so that it is constrained to be accessed by specific users of both organizations (e.g., users with appropriate permissions).
In some examples, the data store 124 may be partitioned into discrete data items (e.g., data shards) that may be individually accessed and managed. Data slicing may simplify many technical tasks such as data retention, expansion (e.g., detecting that message content includes links, crawling linked metadata, and determining a unified summary of metadata) and integration settings. In some examples, the data shards may be associated with an organization, a group (e.g., a workspace), a communication channel, a user, or the like.
In some examples, an individual organization may be associated with a database shard within data store 124 that stores data related to a particular organization identification. For example, a database shard may store electronic communication data associated with members of a particular organization, which enables members of the particular organization to communicate and exchange data with other members of the same organization in real-time or near real-time. In an example, the organization itself may be the owner of the database shards and have control over the location and manner in which the relevant data is stored. In some examples, a database shard may store data related to two or more organizations (e.g., as in a shared virtual space).
In some examples, an individual group may be associated with a database tile that stores data related to a particular group identification (e.g., workspace) within data store 124. For example, a database tile may store electronic communication data associated with members of a particular group, which enables members of the particular group to communicate and exchange data with other members of the same group in real-time or near real-time. In an example, the group itself may be the owner of the database shards and have control over where and how the relevant data is stored.
In some examples, the virtual space may be associated with a database shard within data store 124 that stores data related to a particular virtual space identification. For example, a database tile may store electronic communication data associated with a virtual space, which enables members of a particular virtual space to communicate and exchange data with other members of the same virtual space in real-time or near real-time. As described above, communication via the virtual space may be synchronous and/or asynchronous. In at least one example, the group or organization may be the owner of the database shards and may control the location and manner in which the relevant data is stored.
In some examples, individual users may be associated with database shards within data store 124 that store data related to a particular user account. For example, a database shard may store electronic communication data associated with individual users, which enables users to communicate and exchange data with other users of a communication platform in real-time or near real-time. In some examples, the user may be the owner of the database shards themselves and have control over the location and manner in which the relevant data is stored.
In some examples, such as when a channel is shared between two organizations, each organization may be associated with its own encryption key. When a user associated with one organization issues a message or file to a shared channel, the message or file may be encrypted in data store 124 with an organization-specific encryption key, and the other organization may decrypt the message or file prior to accessing the message or file. Further, in examples where an organization is located in a different geographic region, data associated with a particular organization may be stored in a location corresponding to the organization and temporarily cached at a location closer to the client (e.g., associated with another organization) when such messages or files are to be accessed. Data may be maintained, stored, and/or deleted in data store 124 according to data management policies associated with each particular organization.
Communication interface 112 may include one or more interfaces and hardware components for enabling communication with various other devices (e.g., user computing device 104), such as through network 106 or directly. In some examples, communication interface 112 may facilitate communication via WebSocket, an Application Programming Interface (API) (e.g., using API calls), hypertext transfer protocol (HTTP), or the like.
The server 102 can also be equipped with 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, joysticks, keyboards, mice, touch screens, etc.), audio speakers, connection ports, and the like.
In at least one example, the user computing device 104 may include one or more processors 130, a computer-readable medium 132, one or more communication interfaces 134, and an input/output device 136.
In at least one example, each of the processors 130 may be a single processing unit or multiple processing units, and may include a single or multiple computing units or multiple processing cores. Processor 130 may comprise any of the types of processors described above with reference to processor 108, and may be the same or different from processor 108.
Computer-readable media 132 may include any type of computer-readable media 132 described above with reference to computer-readable media 110 and may be the same or different than computer-readable media 110. The features stored in the computer readable medium may optionally include at least one application 138 and an operating system 140.
In at least one example, the application 138 may be a mobile application, a web application, or a desktop application, which may be provided by a communication platform or which may be another dedicated application. In some examples, a separate user computing device associated with environment 100 may have instances or versioned instances of application 138 that may be downloaded from an application store, accessible via the internet, or otherwise executable by processor 130 to perform operations as described herein. That is, the application 138 may be an access point that enables the user computing device 104 to interact with the server 102 to access and/or use communication services available via the communication platform. In at least one example, the application 138 may facilitate data exchange between and among various other user computing devices, e.g., via the server 102. In at least one example, the application 138 can present a user interface, as described herein. In at least one example, the user may interact with the user interface via touch input, keyboard input, mouse input, voice input, or any other type of input.
A non-limiting example of a user interface 142 is shown in fig. 1. As shown in fig. 1, the user interface 142 may present data associated with one or more virtual spaces (which may include one or more workspaces). That is, in some examples, the user interface 142 may integrate data from multiple workspaces into a single user interface such that a user (e.g., of the user computing device 104) may access and/or interact with and/or otherwise communicate with other users associated with the multiple workspaces with which it is associated. In some examples, the user interface 142 may include a first region 144 or pane that includes an indicator (e.g., a user interface element or object) associated with a workspace associated with a user (e.g., a user's account). In some examples, the user interface 142 may include a second region 146 or pane that includes indicators (e.g., user interface elements, affordances, objects, etc.) that represent data associated with a workspace associated with a user (e.g., a user's account). In at least one example, the second region 146 may represent a sidebar of the user interface 142.
In at least one example, the user interface 142 can include a third region 148 or pane that can be associated with a data feed (or "feed") that indicates messages posted to one or more communication channels and/or other virtual spaces for facilitating communications (e.g., virtual spaces associated with direct messaging, virtual spaces associated with events and/or actions, etc.) and/or actions taken with respect to one or more communication channels and/or other virtual spaces, as described herein. In at least one example, the data associated with the third region 148 can be associated with the same or different workspaces. That is, in some examples, the third region 148 may present data associated with the same or different workspaces via an integrated feed. In some examples, the data may be organized and/or ordered by workspace, time (e.g., time when associated data is published or associated operations are otherwise performed), type of action, communication channel, user, etc. In some examples, such data may be associated with an indication of which user (e.g., member of the communication channel) issued the message and/or performed the action. In examples where the third region 148 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. In some examples, the third region 148 may be resized or pop-up as a separate window.
In at least one example, the operating system 140 can manage the processor 130, computer-readable medium 132, hardware, software, etc., of the server 102.
The communication interface 134 may include one or more interfaces and hardware components for enabling communication with various other devices (e.g., the user computing device 104), such as through the network 106 or directly. In some examples, the communication interface 134 may facilitate communication via WebSocket, API (e.g., using API calls), HTTP, or the like.
The user computing device 104 may also be equipped with various input/output devices 136 (e.g., I/O devices). Such I/O devices 136 may include a display, various user interface controls (e.g., buttons, joysticks, keyboards, mice, touch screens, etc.), audio speakers, connection ports, and the like.
Although the techniques described herein are described as being performed by the messaging component 116, the audio/video component 118, the workspace management component 120, and the application 138, the techniques described herein may be performed by any other component or combination of components that may be associated with the server 102, the user computing device 104, or a combination thereof.
User interface for group-based communication system
Fig. 2A illustrates a user interface 200 of a group-based communication system that will be used to illustrate the operation of the various examples discussed herein. The group-based communication system may include communication data such as messages, queries, files, references, user or user profiles, interactions, worksheets, channels, applications integrated into one or more channels, conversations, workspaces, or other data generated by or shared between users of the group-based communication system. In some cases, the communication data may include data associated with the user, such as a user identifier, channels to which the user has been authorized to access, groups with which the user is associated, permissions, and other user-specific information.
User interface 200 includes a plurality of objects, such as panes, text input fields, buttons, messages, or other user interface components that can be viewed by a user of the group-based communication system. As shown, the user interface 200 includes a title bar 202, a workspace pane 204, a navigation pane 206, a channel 208, a document 210 (e.g., collaboration document), a direct message 212, an application 214, a synchronized multimedia collaboration session pane 216, and a channel pane 218.
By way of example and not limitation, when a user opens user interface 200, they may select a workspace via workspace pane 204. A particular workspace may be associated with data specific to the workspace and may be accessible via permissions associated with the workspace. Different segments of navigation pane 206 may present different data and/or options to the user. Different graphical indicators may be associated with a virtual space (e.g., a channel) to outline the properties of the channel (e.g., the channel is public, private, shared between organizations, locked, etc.). When a user selects a channel, a channel pane 218 may be presented. In some examples, the channel pane 218 may include a header, pinned items (e.g., documents or other virtual spaces), a "about" document that provides an overview of the channel, and so forth. In some cases, members of a channel may search within the channel, access content associated with the channel, add other members, publish content, and so forth. In some examples, users that are not members of the channel may have limited ability to interact with (or even view or otherwise access) the channel according to permissions associated with the channel. As the user navigates within the channel, they can view the message 222 and can react to the message (e.g., reaction 224), reply in a thread, start a thread, etc. In addition, channel pane 218 may include a compose pane 228 to compose messages and/or other data to be associated with a channel. In some examples, user interface 200 may include a thread pane 230 that provides additional levels of detail for message 222. In some examples, the different panes may be resized, the panes may be popped up to an independent window, and/or the independent window may be incorporated into multiple panes of the user interface 200. In some examples, a user may communicate with other users via a collaboration pane 216, which may provide synchronous or asynchronous voice and/or video capabilities for communication. These are, of course, illustrative examples, and additional examples of the foregoing features are provided throughout the disclosure.
In some examples, the title bar 202 includes a search bar 220. The search bar 220 may allow a user to search for content, such as files, messages, channels, members, commands, functions, etc., located in the current workspace of the group-based communication system. The user may refine his search through attributes such as content type, content author, and through the user associated with the content. The user may optionally search within a particular workspace, channel, direct message conversation, or document. In some examples, the title bar 202 includes navigation commands that allow the user to move back and forth between different panes and view a history of accessed content. In some examples, the title bar 202 may include additional resources, such as links to help documents and user configuration settings.
In some examples, a group-based communication system may include a plurality of different workspaces, where each workspace is associated with a different user group and channel group. Each workspace may be associated with a group identifier, and one or more user identifiers may be mapped to, or otherwise associated with, the group identifier. Users corresponding to such user identifiers may be referred to as members of a group. In some examples, the user interface 200 includes a workspace pane 204 for navigating, adding, or deleting various workspaces between various workspaces in the group-based communication system. For example, a user may be part of a workspace for Acme, where the user is an employee of or otherwise affiliated with Acme. The user may also be a member of a local volunteer organization that also uses the group-based communication system to cooperate. To navigate between the two groups, the user may use the workspace pane 204 to change from Acme workspace to volunteer organization workspace. The workspaces may include one or more channels specific to the workspaces and/or one or more channels shared between the one or more workspaces. For example, acme companies may have a workspace for Acme items (such as item Zen), a workspace for social discussions, and an additional workspace for common company transactions. In some examples, an organization (such as a particular company) may have multiple workspaces, and a user may be associated with one or more workspaces belonging to the organization. In other examples, a particular workspace may be associated with one or more organizations or other entities associated with a group-based communication system.
In some examples, navigation pane 206 allows a user to navigate between virtual spaces within a group-based communication system, such as pages, channels 208, collaboration documents 210 (such as those discussed at fig. 2D), applications 214, and direct messages 212. For example, navigation pane 206 may include an indicator representing a virtual space that may aggregate data associated with a plurality of virtual spaces of which the user is a member. In at least one example, each virtual space can be associated with an indicator in the navigation pane 206. In some examples, the indicator may be associated with an actuation mechanism (e.g., an affordance, also referred to as a graphical element) such that when actuated, it may cause the user interface 200 to present data associated with a corresponding virtual space. In at least one example, the 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, if a user requests access to a virtual space associated with "unread," all data that the user has not read (e.g., viewed) may be presented, e.g., in a feed. In such examples, different types of events and/or actions that may be associated with different virtual spaces may be presented via the same feed. In some examples, such data may be organized and/or ordered by associated virtual space (e.g., virtual space via which communications are transmitted), time, action type, user, and so forth. In some examples, such data may be associated with an indication of which user (e.g., member of the associated virtual space) issued the message and/or performed the action.
In some examples, the virtual space may be associated with the same type of event and/or action. For example, a "thread" may be associated with a message, file, etc. issued in a thread to a message issued in a virtual space, and a "mention and reaction" may be associated with a message or thread in which a user has been mentioned (e.g., via a flag) or another user has reacted (e.g., via an emoticon, reaction, etc.) to a message or thread issued by the user. That is, in some examples, the same type of event and/or action that may be associated with different virtual spaces may be presented via the same feed. As with "unread" virtual spaces, data associated with such virtual spaces may be organized and/or ordered by virtual space, time, action type, user, etc.
In some examples, the virtual space may be associated with facilitating communications between the user and other users of the communication platform. For example, a "contact" may be associated with an invitation that enables a user to generate communications with one or more other users. In at least one example, in response to receiving an indication of selection of the "contact" indicator, the communication platform may cause a connection interface to be presented.
In some examples, the virtual space may be associated with one or more boards or collaboration 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, one or more documents may be presented via user interface 200 if a user requests access to a virtual space associated with the one or more documents associated with the user. In at least one example, a document may be associated with an individual (e.g., a private document of a user), with a group of users (e.g., a collaborative document), and/or with one or more communication channels (e.g., members of a communication channel are given access permissions to a document), such as to enable a user of a communication platform to create data associated with such document, interact with such document, and/or view data associated with such document, as described herein. In some examples, the collaboration document may be a virtual space, a board, a canvas, a page, etc. for collaborative communications and/or data organization within the communication platform. In at least one example, the collaboration document may support editable text and/or objects that may be ordered, added, deleted, modified, etc. In some examples, the collaboration document may be associated with permissions defining which users of the communication platform may view and/or edit the document. In some examples, the collaboration document may be associated with a communication channel, and members of the communication channel may view and/or edit the document. In some examples, the collaboration document may be shareable such that data associated with the document is accessible and/or interactable with members of a plurality of communication channels, workspaces, organizations, and the like.
In some examples, the virtual space may be associated with a headquarter (e.g., an administrator or command center) of a group (e.g., an organization, team, etc.). In at least one example, the group headquarters may include virtual or digital headquarters for an administrator or command function associated with a group of users. For example, an "HQ" may be associated with an interface that includes a list of indicators associated with a virtual space configured to enable the associated members to communicate. In at least one example, a user may associate one or more virtual spaces with an "HQ" virtual space, such as via a drag-and-drop operation. That is, the user may determine a relevant virtual space to be associated with the virtual or digital headquarters, such as to associate virtual spaces that are important to the user therewith.
In some examples, the virtual space may be associated with one or more boards or collaboration 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, one or more documents may be presented via user interface 200 if a user requests access to a virtual space associated with the one or more documents associated with the user. In at least one example, a document may be associated with an individual (e.g., a private document of a user), with a group of users (e.g., a collaborative document), and/or with one or more communication channels (e.g., members of a communication channel are given access permissions to a document), such as to enable a user of a communication platform to create data associated with such document, interact with such document, and/or view data associated with such document, as described herein. In some examples, the collaboration document may be a virtual space, a board, a canvas, a page, etc. for collaborative communications and/or data organization within the communication platform. In at least one example, the collaboration document may support editable text and/or objects that may be ordered, added, deleted, modified, etc. In some examples, the collaboration document may be associated with permissions defining which users of the communication platform may view and/or edit the document. In some examples, the collaboration document may be associated with a communication channel, and members of the communication channel may view and/or edit the document. In some examples, the collaboration document may be shareable such that data associated with the document is accessible and/or interactable with members of a plurality of communication channels, workspaces, organizations, and the like.
Additionally or alternatively, in some examples, the virtual space may be associated with one or more canvas associated with the user. In at least one example, the canvas may include a flexible canvas for planning, organizing, and sharing information sets among users. That is, the canvas may be configured to be accessed and/or modified by two or more users with appropriate permissions. In at least one example, the canvas may be configured to enable sharing of text, images, video, GIFs, drawings (e.g., user-generated drawings via a canvas interface), game content (e.g., a user manipulating game controls synchronously or asynchronously), and the like. In at least one example, the modification to the canvas may include adding, deleting, and/or modifying previously shared (e.g., transmitted, presented) data. In some examples, the content associated with the canvas may be sharable via another virtual space such that data associated with the canvas is accessible by members of the virtual space and/or rendered to be interactable by members of the virtual space.
Navigation pane 206 may also include an indicator representing a communication channel (e.g., channel 208). In some examples, the communication channels may include public channels, private channels, shared channels (e.g., between groups or organizations), single workspace channels, cross workspace channels, combinations of the foregoing, and the like. In some examples, the represented communication channels may be associated with a single workspace. In some examples, the represented communication channels may be associated with different workspaces (e.g., intersecting workspaces). In at least one example, if the communication channels are intersecting workspaces (e.g., associated with different workspaces), the user may be associated with both workspaces, or may be associated with only one of the workspaces. In some examples, the represented communication channels may be associated with a combination of communication channels associated with a single workspace and communication channels associated with different workspaces.
In some examples, navigation pane 206 may depict some or all of the communication channels that the user has access to (e.g., as determined by the permission data). In such examples, the communication channels may be arranged alphabetically, based on recent interactions, based on frequency of interactions, based on communication channel type (e.g., public, private, shared, cross-workspace, etc.), based on workspace, in user-specified segments, and so forth. In some examples, navigation pane 206 may depict some or all of the communication channels of which the user is a member, and the user may interact with user interface 200 to browse or view other communication channels of which the user is not a member but is not currently displayed in navigation pane 206. In some examples, different types of communication channels (e.g., public, private, shared, cross workspace, etc.) may be in different segments of the navigation pane 206, or may have their own sub-regions or sub-panes in the user interface 200. In some examples, the communication channels associated with different workspaces may be in different segments of navigation pane 206, or may have their own regions or panes in user interface 200.
In some examples, the indicator may be associated with a graphical element that visually distinguishes the type of communication channel. For example, item_zen is associated with a lock graphical element. As a non-limiting example, and for purposes of this discussion, the lock graphical element may indicate that the associated communication channel (project_zen) is private and access thereto is limited, while the other communication channel (universal) is public and access thereto is available to any member of the organization with which the user is associated. In some examples, additional or alternative graphical elements may be used to distinguish between shared communication channels, communication channels associated with different workspaces, communication channels of which a user is or is not a current member, and the like.
In at least one example, the navigation pane 206 can include an indicator representing communication with an individual user or multiple designated users (e.g., rather than all members of an organization or a subset thereof). Such communication may be referred to as a "direct message". Navigation pane 206 may include an indicator representing a virtual space associated with private messages between one or more users.
The direct messages 212 may be communications between a first user and a second user, or they may be multi-person direct messages between a first user and two or more second users. Navigation pane 206 may be ordered and organized into constituent structures or segments according to user preferences. In some examples, all channels to which the user has been authorized to access may appear in navigation pane 206. In other examples, the user may choose to hide a particular channel or collapse a segment containing a particular channel. The items in the navigation pane 206 may indicate when a new message or update has been received or a new message or update is currently unread, such as by bolding text associated with the channel in which the unread message is located or adding an icon or badge to the channel name (e.g., with a count of unread messages). In some examples, the group-based communication system may additionally or alternatively store permission data associated with permissions of individual users of the group-based communication system, indicating which channels the users may view or join. Permissions may, for example, indicate which users may communicate directly with other users, which channels the users are permitted to access, constraints on individual channels, which workspaces the users are permitted to access, and constraints on individual workspaces.
Additionally or alternatively, the navigation pane 206 may include a sub-segment, which is a personalized sub-segment associated with a team of which the user is a member. That is, a "team" subsection may include affordances of one or more virtual spaces associated with a team, such as communication channels, collaboration documents, direct messaging instances, audio or video synchronous or asynchronous conferences, and the like. In at least one example, the user may associate the selected virtual space with the team-subsection, such as by dragging and dropping, setting a thumbtack, or otherwise associating the selected virtual space with the team-subsection.
Channels within a group-based communication system
In some examples, the group-based communication system is a channel-based messaging platform, as shown in fig. 2A. Within a group-based communication system, communications may be organized into channels, each channel dedicated to a particular topic and set of users. A channel is typically a virtual space associated with a particular topic, including messages and files published by members of the channel.
For purposes of this discussion, a "message" may refer to any electronically generated digital object provided by a user using user computing device 104 and configured for display within a communication channel as described herein and/or other virtual space for facilitating communication (e.g., a virtual space associated with direct messaging, etc.). The message may include any text, images, video, audio, or combination thereof provided by the user (using the user computing device). For example, a user may provide a message that includes text within the message as well as images and video as message content. In such examples, text, images, and video would include messages. Each message sent or published to the communication channel of the communication platform may include metadata including a sending user identifier, a message content, a group identifier, a communication 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, pointers, memory addresses, and the like.
The channel discussion may persist for days, months, or years and provide a historical log of user activity. Members of a particular channel may publish messages within the channel that are visible to other members of the channel along with other messages in the channel. The user may select a channel to view to see only those messages that are related to the topic of the channel, and not messages that are published in other channels that are related to different topics. For example, a software development company may have a different channel for each software product being developed, where a developer engaged in each particular project may have a conversation with a substantially single topic (e.g., project) without noise from unrelated topics. Because the channels are typically persistent and relate to a particular topic or group, the user can quickly and easily review previous communications for reference. In some examples, channel pane 218 may display information related to a channel that the user has selected in navigation pane 206. For example, the user may select the project Zen channel to discuss the ongoing software development work for the project Zen. In some examples, channel pane 218 may include a header that includes information about the channel, such as a channel name, a list of users in the channel, and other channel controls. The user may be able to pin the item to the header for later access and be able to add a bookmark to the header. In some examples, a link to the collaboration document may be included in the header. In other examples, each channel may have a corresponding virtual space that includes channel-related information, such as channel summaries, tasks, bookmarks, pinned documents, and other channel-related links that may be editable by members of the channel.
The communication channel or other virtual space may be associated with data and/or content other than or associated with the message. For example, non-limiting examples of additional data that may be presented via the channel pane 218 of the user interface 200 include collaborative documents (e.g., documents that may be collaboratively edited in real-time or near real-time, etc.), audio and/or video data associated with conversations, members added to and/or removed from a communication channel, files (e.g., file attachments uploaded and/or removed from a communication channel), applications added to and/or removed from a communication channel, publications added to and/or removed from a communication channel (data that may be collaboratively edited by one or more members of a communication channel, near real-time), added to a communication channel, descriptions of modifications and/or removal from a communication channel, modifications to properties of a communication channel, and the like.
Channel pane 218 may include messages, such as message 222, which is content published into the channel by the user. The user may post text, images, video, audio, or any other file as message 222. In some examples, the particular identifier may be represented (in the message or elsewhere) by prefixing the particular identifier with a predetermined character. For example, the channel may be prefixed with the "#" character (as in # entry_zen) and the user name may be prefixed with the "@" character (as in @ j_smith or @ user_a). A message, such as message 222, may include an indication of which user issued the message and the time at which the message was issued. In some examples, the user may react to the message by selecting the reaction button 224. The reaction button 224 allows the user to select an icon (sometimes referred to in the context as a reaction emoticon) to be associated with the message, such as praise. A user may respond to another user's message, such as message 222, with a new message. In some examples, such dialogs in a channel may be further broken down into threads. Threads may be used to aggregate messages related to a particular conversation to make it easier to follow and reply to the conversation without cluttering the primary channel with discussions. Under the message of the thread start, a thread reply preview 226 appears. Thread reply previews 226 may show information about the thread, such as the number of replies and members that have been replied to. The thread replies may appear in a thread pane 230 that may be separate from the channel pane 218 and may be viewed by other members of the channel by selecting the thread reply preview 226 in the channel pane 218.
In some examples, one or both of the channel pane 218 and the thread pane 230 may include a write pane 228. In some examples, the compose pane 228 allows a user to compose and transmit a message 222 to members of a channel or those members of a channel that are following a thread (when a message is sent in a thread). The composition pane 228 may have text editing functionality such as bold, strikethrough, and italics, and/or may allow users to format their messages or additional files such as collaboration documents, images, videos, or any other file to be shared with other members of the channel. In some examples, the composition pane 228 may implement additional formatting options, such as numbers or bulleted lists, via a user interface or API. The compose pane 228 may also be used as a workflow trigger to initiate a workflow related to a channel or message. In other examples, the links or documents sent via the composition pane 228 may include expansion instructions related to how the content should be displayed.
Synchronizing multimedia collaboration sessions
Fig. 2B illustrates a multimedia collaboration session (e.g., a synchronized multimedia collaboration session) that has been triggered from the channel, as shown in pane 216. The synchronized multimedia collaboration session may provide an environmental ad hoc multimedia collaboration in a group-based communication system. Users of the group-based communication system can quickly and easily join and leave these synchronized multimedia collaboration sessions at any time without causing other users to interrupt the synchronized multimedia collaboration sessions. In some examples, the synchronized multimedia collaboration session may be based on a particular topic, a particular channel, a particular direct message or a set of multiple direct messages, or a set of users, while in other examples, the synchronized multimedia collaboration session may exist without binding with any channel, topic, or set of users.
The synchronized multimedia collaboration session pane 216 may be associated with a session conducted for multiple users in a channel, multiple users in a direct message conversation, or users in a direct message conversation. Thus, a synchronized multimedia collaboration session for a particular channel or conversation may be initiated by the particular channel, a multi-person direct message conversation, or one or more members of the direct message conversation. The user may begin a synchronized multimedia collaboration session in the channel as a means of communicating with other members of the channel that are currently online. For example, a user may have an urgent decision and wish to get immediate verbal feedback from other members of the channel. As another example, a synchronized multimedia collaboration session with one or more other users of the group-based communication system may be initiated by direct messaging. In some examples, the audience for the synchronized multimedia collaboration session may be determined based on the context in which the synchronized multimedia collaboration session was initiated. For example, starting a synchronized multimedia collaboration session in a channel may automatically invite the entire channel to attend. As another example, starting a synchronized multimedia collaboration session allows a user to start an instant audio and/or video conversation with other members of a channel without having to schedule or initiate a communication session through a third party interface. In some examples, the user may be directly invited to attend the synchronized multimedia collaboration session via a message or notification.
The synchronized multimedia collaboration session may be a brief, ephemeral session, and does not persist any data therein. Alternatively, in some examples, the synchronized multimedia collaboration session may be recorded, transcribed, and/or summarized for later review. In other examples, the content of the synchronized multimedia collaboration session may be automatically persisted in a channel associated with the synchronized multimedia collaboration session. Members of a particular synchronized multimedia collaboration session may publish messages within a messaging thread associated with the synchronized multimedia collaboration session that are visible to other members of the synchronized multimedia collaboration session along with other messages in the thread.
The multimedia in the synchronized multimedia collaboration session may include collaboration tools such as any or all of audio, video, screen sharing, collaborative document editing, whiteboard, collaborative programming, or any other form of media. The synchronized multimedia collaboration session may also allow the user to share the user's screen with other members of the synchronized multimedia collaboration session. In some examples, members of the synchronized multimedia collaboration session may mark, comment, draw, or otherwise annotate the shared screen. In other examples, such annotations may be saved and persisted after the synchronized multimedia collaboration session has ended. The canvas may be created directly from the synchronized multimedia collaboration session to further enhance collaboration between users.
In some examples, the user may begin the synchronized multimedia collaboration session via a toggle key in the synchronized multimedia collaboration session pane 216 shown in fig. 2B. Once the synchronized multimedia collaboration session has started, the synchronized multimedia collaboration session pane 216 may be expanded to provide information about the synchronized multimedia collaboration session (such as how many members are present, which user is currently speaking, which user is sharing the user's screen) and/or a screen sharing preview 232. In some examples, the users in the synchronized multimedia collaboration session may be displayed with icons indicating that the users are participating in the synchronized multimedia collaboration session. In other examples, the expanded view of the participant may show which users are active in the synchronized multimedia collaboration session and which users are not active. The screen sharing preview 232 may depict a desktop view of the user sharing the user screen, or a particular application or presentation. Changes to the user's screen, such as the user advancing to the next slide in the presentation, will be automatically depicted in the screen sharing preview 232. In some examples, the screen sharing preview 232 may be actuated such that the screen sharing preview 232 is enlarged such that it is displayed as its own pane within the group-based communication system. In some examples, the screen sharing preview 232 may be actuated such that the screen sharing preview 232 pops up into a new window or application separate and distinct from the group-based communication system. In some examples, the synchronized multimedia collaboration session pane 216 may include tools for synchronizing the multimedia collaboration session that allow the user to mute the user's microphone or invite other users. In some examples, the synchronized multimedia collaboration session pane 216 may include a screen sharing button 234, which may allow the user to share the user screen with other members of the synchronized multimedia collaboration session pane 216. In some examples, screen sharing button 234 may provide additional controls to the user during screen sharing. For example, a user sharing a user screen may be provided with additional screen sharing controls to specify which screen to share, annotate a shared screen, or save a shared screen.
In some cases, the synchronized multimedia collaboration session pane 216 may persist in the navigation pane 206 regardless of the state of the group-based communication system. In some examples, the synchronized multimedia collaboration session pane 216 may be hidden or removed from presentation via the user interface 200 when there is no synchronized multimedia collaboration session active and/or depending on which item is selected from the navigation pane 206. In some cases, when pane 216 is active, pane 216 may be associated with a currently selected channel, direct message, or multi-person direct message such that a synchronized multimedia collaboration session may be initiated and associated with the currently selected channel, direct message, or multi-person direct message.
The list of synchronized multimedia collaboration sessions may include one or more active synchronized multimedia collaboration sessions selected for recommendation. For example, a synchronized multimedia collaboration session may be selected from a plurality of currently active synchronized multimedia collaboration sessions. Further, the synchronized multimedia collaboration session may be selected based in part on user interactions with the session or some association of the instant user with the session or users involved in the session. For example, the recommended synchronized multimedia collaboration session may be displayed based in part on the instant user having been invited to the corresponding synchronized multimedia collaboration session or having previously collaborated with the user in the recommended synchronized multimedia collaboration session. In some examples, the list of synchronized multimedia collaboration sessions further includes additional information for each respective synchronized multimedia collaboration session, such as an indication of the participating users or the number of participating users, the subject matter of the synchronized multimedia collaboration session, and/or an indication of an associated group-based communication channel, a multi-person direct message conversation, or a direct message conversation.
In some examples, the list of recommended active users may include a plurality of group-based communication system users recommended based on at least one of user activity, user interaction, or other user information. For example, a list of recommended active users may be selected based on the active status of the users within the group-based communication system, historical, recent, or frequent user interactions with the instant users (such as communicating within the group-based communication channel), or similarities between the recommended users and the instant users (such as determining common membership in the shared channel of the recommended users and the instant users). In some examples, machine learning techniques (such as cluster analysis) may be used to determine recommended users. The list of recommended active users may include status user information for each recommended user, such as whether the recommended user is active, in a meeting, idle, in a synchronized multimedia collaboration session, or offline. In some examples, the list of recommended active users further includes a plurality of actuatable buttons corresponding to some or all of the recommended users (e.g., those recommended users having a status indicating availability), which when selected may be configured to initiate at least one of a text-based communication session (such as a direct message conversation) or a synchronized multimedia collaboration session.
In some examples, one or more recommended asynchronous multimedia collaboration sessions or conferences may be displayed in the asynchronous conference segment. Asynchronous multimedia collaboration sessions allow each participant to collaborate at their convenient time, as compared to synchronous multimedia collaboration sessions (as described above). The collaborative participation is then recorded for later consumption by other participants who may generate additional multimedia replies. In some examples, replies are aggregated in a multimedia thread (e.g., video thread) corresponding to the asynchronous multimedia collaboration session. For example, an asynchronous multimedia collaboration session may be used for an asynchronous conference, where a topic is published in a message at the beginning of a conference thread, and participants to the conference may reply by publishing a message or video response. The resulting thread then includes any documents, videos, or other files related to the asynchronous conference. In some examples, previews of a subset of video replies may be shown in an asynchronous collaboration session or thread. This may allow, for example, the user to jump to the relevant segment of the asynchronous multimedia collaboration session or to restart from where they were previously interrupted.
Linking within a group-based communication system
Fig. 2C illustrates a user interface 200 displaying a contact pane 252. The contact pane 252 may provide the user with tools and resources to contact across different organizations, each of which may have its own (typically proprietary) instance of a group-based communication system, or may not yet belong to a group-based communication system. For example, a first software company may establish a joint venture with a second software company with whom they wish to cooperate in co-developing new software applications. The contact pane 252 may enable a user to determine which other users and organizations are already within the group-based communication system and invite those users and organizations that are currently outside the group-based communication system to join.
Contact pane 252 may include a contact search bar 254, a recent contact 256, a connection 258, a create channel button 260, and/or a begin direct message button 262. In some examples, contact search field 254 may allow a user to search for users within a group-based communication system. In some examples, only users from an organization that has contact with the user's organization will be shown in the search results. In other examples, users from any organization using a group-based communication system may be displayed. In other examples, users from an organization that has not used group-based communications may also be displayed, allowing searching users to invite them to join the group-based communication system. In some examples, users may be searched via their group-based communication system usernames or their email addresses. In some examples, email addresses may be suggested or automatically completed based on an external data source (such as an email directory or a search user's contact list).
In some examples, the external organization as well as individual users may be shown in response to a user search. External organizations may be matched based on organization names or internet domains because search results may include organizations that have not joined a group-based communication system (similar to searches and matches for particular users discussed above). The external organization may be ranked based in part on how many users from the organization of users have contact with the users of the external organization. In response to selecting an external organization in the search results, the search user may be able to invite the external organization to contact via the group-based communication system.
In some examples, the recent contacts 256 may display the user with whom the instant user recently interacted. The recent contacts 256 may display the user's name, company, and/or status indications. The recent contacts 256 may be ranked based on which contacts the instant user most frequently interacted with or based on which contacts the instant user most recently interacted with. In some examples, each of the recent contacts 256 may be an actuatable control that allows an instant user to quickly begin a direct message conversation with the recent contact, invite them to a channel, or take any other suitable user action with the recent contact.
In some examples, connection 258 may display a list of companies (e.g., organizations) with which the user has interacted. For each company, the company's name may be displayed along with an identification of the company and an indication of how many interactions (e.g., the number of conversations) the user has made with the company. In some examples, each of the connections 258 may be an actuatable control that allows an instant user to quickly invite an external organization to a shared channel, display a recent connection with an external organization, or take any other suitable organization action on the connection.
In some examples, create channel button 260 allows a user to create a new shared channel between two different organizations. Selecting create channel button 260 may also allow the user to name a new contact channel and enter a description for the contact channel. In some examples, the user may select one or more external organizations or one or more external users to add to the shared channel. In other examples, the user may add an external organization or external user to the shared channel after the shared channel is created. In some examples, the user may choose whether to make the contact channel private (i.e., only accessible through an invitation from the current member of the private channel).
In some examples, the start direct message button 262 allows the user to quickly start a direct message (or multi-person direct message) with an external user at an external organization. In some examples, the external user identifier at the external organization may be provided by the instant user as a group-based communication system username of the external user or as an email address of the external user. In some examples, analysis of an email domain of an email address of an external user may affect messages between the user and the external user. For example, the identifier of the external user may indicate (e.g., based on an email address field) that the user's organization and the external user's organization have contacted. In some such examples, the email address may be converted to a group-based communication system username. Alternatively, the identifier of the external user may indicate that the organization of the external user belongs to the group-based communication system, but is not in contact with the organization of the instant user. In some such examples, an invitation to contact an organization of the instant user may be generated in response. As another alternative, the external user may not be a member of the group-based communication system, and may generate an invitation to join the group-based communication system as a guest or member in response.
Collaborative document
FIG. 2D illustrates user interface 200 displaying collaborative document pane 264. The collaboration document may be any file type, such as PDF, video, audio, word processing document, etc., and is not limited to word processing documents or spreadsheets. The collaboration document may be modified and edited by two or more users. The collaboration document may also be associated with different user permissions such that the user may be selectively allowed to view, edit, or comment on the collaboration document (or a section of the collaboration document) based on the user's permissions to the document (or the section of the document, as described below). Thus, users within a set of users that may access a document may have varying permissions for viewing, editing, commenting on, or otherwise handing over the collaborative document. In some examples, permissions may be automatically determined and/or assigned based on the manner in which the document is created and/or shared. In some examples, the permissions may be determined manually. Collaborative documents may allow users to create and modify documents simultaneously or asynchronously. The collaboration document may be integrated with a group-based communication system and may both initiate a workflow and store results of the workflow, as will be discussed further below with respect to fig. 3A and 3B.
In some examples, user interface 200 may include one or more collaboration documents (or one or more links to such collaboration documents). Collaborative documents (also known as documents or canvas) may include flexible workspaces for planning, organizing, and sharing information sets among users. Such documents may be associated with a synchronous multimedia collaboration session, an asynchronous multimedia collaboration session, a channel, a multi-person direct message conversation, or/and a direct message conversation. The sharing canvas may be configured to be accessed and/or modified by two or more users with appropriate permissions. Alternatively or additionally, the user may have one or more private documents that are not associated with any other user.
Further, such documents may be referred to such that a particular document may be referenced within a channel (or other virtual space or document) and/or other users may be referred to within such a document. For example, mention of a user within a document may provide an indication to the user and/or may provide the user with access to the document. In some examples, tasks may be assigned to users via @ references, and such tasks may be populated in panes or sidebars associated with users.
In some examples, the channel and collaboration document 268 may be associated such that when comments are posted in the channel, the comments may be populated into document 268 and vice versa.
In some examples, when a first user interacts with a collaboration document, the communication platform may identify a second user account associated with the collaboration document and present an affordance (e.g., a graphical element) in a sidebar (e.g., navigation pane 206) indicating the interaction. Further, the second user may select affordances and/or notifications that are associated with or represent interactions that access the collaboration document to efficiently access the document and view updates thereto.
In some examples, when one or more users interact with the collaboration document, an indication (e.g., an icon or other user interface element) may be presented via a user interface with the collaboration document to represent such interactions. For example, if a first instance of a document is currently open on a first user computing device of a first user and a second instance of the document is currently open on a second user computing device of a second user, one or more presence indicators may be presented on the respective user interfaces to show various interactions with the document and the user that interacted with. In some examples, the presence indicator may have attributes (e.g., appearance attributes) that indicate information about the respective user, such as, but not limited to, permission level (e.g., edit permission, read-only access, etc.), virtual space membership (e.g., whether a member belongs to a virtual space associated with a document), and the manner in which the user interacts with the document (e.g., is currently editing, viewing, opening, but is not active, etc.).
In some examples, a preview of the collaboration document may be provided. In some examples, the previews may include an overview of the collaborative document and/or display various content (e.g., as changing text, images, etc.) to allow a user to quickly understand a dynamic preview of the context of the document. In some examples, the previews may be based on user profile data associated with the user viewing the previews (e.g., permissions associated with the user, content viewed, edited, created, etc. by the user), and the like.
In some examples, the collaboration document may be created independently of or in conjunction with the virtual space and/or channel. Collaborative documents may be published in and edited or interacted with a channel as described herein, with various affordances or notifications indicating the presence of users and/or various interactions associated with the documents.
In some examples, a machine learning model may be used to determine an overview of the content of the channel, and a collaboration document including the overview may be created for publication in the channel. In some examples, the communication platform may identify users within the virtual space, actions associated with the users, and other contributions to the conversation to generate the summary document. Thus, the communication platform may enable a user to create a document (e.g., a collaboration document) for summarizing content and events occurring within the virtual space.
In some examples, the document may be configured to enable sharing of content, including (but not limited to) text, images, video, GIF, drawings (e.g., user-generated drawings via a drawing interface), or game content. In some examples, a user accessing the canvas may add new content or delete (or modify) previously added content. In some examples, the user may need appropriate permissions to add content or delete or modify content added by a different user. Thus, for example, some users may only be able to access some or all of the document in a view-only mode, while other users may be able to access some or all of the document in an edit mode that allows those users to add or modify their content. In some examples, the document may be shared via a message, a multi-person direct message, or a direct message in the channel such that data associated with the document is accessible by and/or rendered to be interactable by a member of the channel or a recipient of the multi-person direct message or the direct message.
In some examples, the collaboration document pane 264 may include a collaboration document toolbar 266 and a collaboration document 268. In some examples, collaboration document toolbar 266 may provide the ability to edit or format publications, as discussed herein.
In some examples, the collaboration document may include free-form unstructured segments and workflow-related structured segments. In some examples, the unstructured segments may include regions of the document in which a user may freely modify the collaborative document without any restrictions. For example, a user may be free to type text for purposes of interpreting a document. In some examples, a user may add a workflow or structured workflow segment by typing in the name of the workflow (or otherwise referring to the workflow). In other examples, typing an "at" flag (@) or a previously selected symbol or a predetermined special character or symbol may provide the user with a list of workflows that the user may select to add to the document. For example, a user may indicate that a marketing team member needs to sign a proposal by typing "| marketing approval" to initiate a workflow that ends when the marketing team member approves the proposal. Placing an exclamation mark before the group name of "marketing approval" initiates a request for a canonical action, in this case a route proposal, for approval. In some examples, the structured segments may include text input, selection menus, tables, check boxes, tasks, calendar events, or any other document segments. In other examples, the structured segment may include a text input space as part of the workflow. For example, the user may enter text into the text entry space detailing the reason for seeking approval and then select a submit button that will advance the workflow to the next step of the workflow. In some examples, a user may be able to add, edit, or remove structured segments of a document that make up a workflow component.
In an example, the segments of the collaboration document may have separate permissions associated therewith. For example, a collaboration document having segments with separate permissions may provide a first user with permission to view, edit, or comment on a first segment, while a second user does not have permission to view, edit, or comment on the first segment. Alternatively, the first user may have permission to view the first section of the collaborative document, while the second user has permission to view and edit the first section of the collaborative document. Permissions associated with a particular segment of a document may be assigned by a first user via a variety of methods, including manually selecting a particular segment of a document by the first user or another user having the assigned permissions, typing or selecting an "assignment" indicator (such as an "@" symbol), or selecting a segment by its name. In other examples, permissions may be assigned via these methods for multiple collaborative documents at a single instance. For example, the plurality of collaboration documents each have a section entitled "group information," where a first user having a license to which the license is assigned expects the entire user group to have access to information in the "group information" section of the plurality of collaboration documents. In an example, a first user may select a plurality of collaboration documents and a "group information" section to enable permissions to access (or view, edit, etc.) the "group information" section of each of the plurality of collaboration documents for the entire user group.
Automation in group-based communication systems
Fig. 3A illustrates a user interface 300 for automation in a group-based communication system. Automation, also known as workflow, allows users to automate functionality within a group-based communication system. A workflow builder 302 is depicted that allows a user to create new workflows, modify existing workflows, and review workflow activities. Workflow builder 302 may include workflow tab 304, activity tab 306, and/or settings tab 308. In some examples, the workflow builder may include a publish button 314 that allows a user to publish new or modified workflows.
Workflow tab 304 may be selected to enable a user to create a new workflow or to modify an existing workflow. For example, a user may wish to create a workflow to automatically welcome a new user joining a channel. The workflow may include a workflow step 310. Workflow step 310 may include at least one trigger to initiate a workflow and at least one function to take action upon triggering the workflow. For example, when a user joins a channel, a workflow may be triggered and the function of the workflow may be to publish a welcome new user within the channel. In some examples, the workflow may be triggered from a user action (such as a user reacting to a message, joining a channel, or collaborating in a collaboration document), from a scheduled date and time, or from a web request from a third party application or service. In other examples, workflow functionality may include sending a message or form to a user, a channel, or any other virtual space, modifying a collaboration document, or interfacing with an application. Workflow functionality may include workflow variables 312. For example, the welcome message may include the name of the user via a variable to implement the custom message. The user may edit existing workflow steps or add new workflow steps depending on the desired workflow functionality. Once the workflow is complete, the user may publish the workflow using publish button 314. The published workflow will wait until it is triggered, at which point the function will be performed.
Activity tab 306 may display information related to the activity of the workflow. In some examples, activity tab 306 may show how many times the workflow has been performed. In other examples, activity tab 306 may include information related to each workflow execution, including status, last activity date, execution time, user initiating the workflow, and other related information. Activity tab 306 may allow a user to sort and filter workflow activities to find useful information.
The settings tab 308 may allow a user to modify settings of a workflow. In some examples, a user may change a title or icon associated with a workflow. The user may also manage collaborators associated with the workflow. For example, a user may add an additional user to the workflow as a collaborator such that the additional user may modify the workflow. In some examples, the settings tab 308 may also allow the user to delete the workflow.
Fig. 3B depicts elements related to a workflow in a group-based communication system and is generally referred to by reference numeral 316. In various examples, trigger 318 may be configured to invoke execution of function 336 in response to a user instruction. The triggers initiate functional execution and may take the form of one or more schedules 320, a network hook (webhook) 322, a shortcut 324, and/or a slash command 326. In some examples, schedule 320 operates like a timer such that a trigger may be scheduled to fire periodically or once a predetermined click in the future. In some examples, an end user of the event-based application sets an arbitrary schedule for trigger firing, such as once an hour or 9:15 a.m. each day.
In addition, trigger 318 may take the form of a network hook 322. The network hooks 322 may be software components that listen at the network hook URL and port. In some examples, the trigger fires when an appropriate HTTP request is received at the web hook URL and port. In some examples, the network hook 322 requires proper authentication, such as through a bearer token. In other examples, the trigger will depend on the payload content.
Another source of one of the triggers 318 is a shortcut in the shortcuts 324. In some examples, the shortcuts 324 may be global to the group-based communication system, rather than specific to the group-based communication system channel or workspace. The global shortcut may trigger a function that can be performed without a specific group-based communication system message or the context of a group-based communication channel. In contrast, a message or channel-based shortcut is group-based communication system message or channel-specific and operates in the context of a group-based communication system message or a group-based communication channel.
Another source of one of the triggers 318 may be provided by a slash command 326. In some examples, the slash command 326 may serve as an entry point for a group-based communication system function, integration with external services, or a group-based communication system message response. In some examples, a slash command 326 may be entered by a user of the group-based communication system to trigger execution of the application functionality. The slash command may be followed by a slash command line parameter that may be passed to any group-based communication system function that is invoked in conjunction with the triggering of the group-based communication system function, such as one of functions 336.
An additional way to invoke the functionality is when an event, such as one of events 328, matches one or more conditions predetermined in a subscription, such as subscription 334. The events 328 may be subscribed to by any number of subscriptions 334, and each subscription may specify different conditions and trigger different functions. In some examples, the event is implemented as a group-based communication system message received in one or more group-based communication system channels. For example, all events may be published as non-user visible messages in an associated channel monitored by subscription 334. Application event 330 may be group-based communication system messages with associated metadata created by an application in a group-based communication system channel. Event 328 may also be a direct message received by one or more group-based communication system users (which may be actual users or technical users, such as robots). Robots are technical users of group-based communication systems for automating tasks. The robot may be programmed to perform various functions. The robot may monitor and assist in handling group-based communication system channel activity and publish messages in the group-based communication system channel and react to intra-channel activity of the members. The robot may be able to publish messages and upload files, and be invited to or removed from public and private channels in the group-based communication system.
Event 328 may also be any event associated with a group-based communication system. Such group-based communication system (GBCS) events 332 include events related to creation, modification, or deletion of user accounts in the group-based communication system, or events related to messages in the group-based communication system channel, such as creating a message, editing or deleting a message, or reacting to a message. Event 328 may also relate to creation, modification, or deletion of a group-based communication system channel or membership of a channel. Event 328 may also relate to user profile modification or group creation, member maintenance, or group deletion.
As described above, subscription 334 indicates one or more conditions that trigger a function when matched by an event. In some examples, a set of event subscriptions is maintained in conjunction with a group-based communication system such that when an event occurs, information about the event is matched against the set of subscriptions to determine which function(s), if any, of functions 336 should be invoked. In some examples, events to which a particular application may subscribe are managed by an authorization framework. In some cases, event types matching subscriptions are managed by OAuth permissions scope, which may be maintained by an administrator of a particular group-based communication system.
In some examples, the function 336 may be triggered by the trigger 318 and event 328 to which the function is subscribed. Function 336 takes zero or more inputs, performs processing (potentially including accessing external resources), and returns zero or more results. The function 336 may be implemented in various forms. First, there is a group-based communication system built-in 338 that is associated with the core functionality of a particular group-based communication system. Some examples include creating group-based communication system users or channels. Second, there is a codeless builder function 340 that can be developed by a user of a group-based communication system user in conjunction with an automated user interface, such as a workflow builder user interface. Third, there is a managed code function 342 that is implemented by developing a group-based communication system application as software code in conjunction with a software development environment.
These various types of functions 336 may in turn be integrated with the API 344. In some examples, API 344 is associated with third party services that function 336 employs to provide custom integration between particular third party services and group-based communication systems. Examples of third party service integration include video conferencing, sales, marketing, customer service, project management, and engineering application integration. In such examples, one of triggers 318 would be a slash command 326 to trigger managed code function 342, which makes an API call to a third party video conference provider through one of APIs 344. As shown in fig. 3B, API 344 itself may be the source of any number of triggers 318 or events 328. Continuing with the above example, successful completion of the video conference will trigger one of the functions 336 that sends a message to the third party video conference provider initiating a further API call to download and archive the record of the video conference and store it in the group-based communication system channel.
In addition to being integrated with API 344, function 336 may persist and access data in table 346. In some examples, table 346 is implemented in connection with a database environment associated with a server-less execution environment in which a particular event-based application is executing. In some cases, table 346 may be provided in connection with a relational database environment. In other examples, table 346 is provided in connection with a database mechanism that does not employ relational database technology. As shown in fig. 3B, in some examples, reading or writing particular data to one or more tables 346 or matching data in a table to a predefined condition is itself the source of some number of triggers 318 or events 328. For example, if the table 346 is used to maintain billing data in an incident management system, a count of outstanding work orders exceeding a predetermined threshold may trigger the issuance of messages in an incident management channel in a group-based communication system.
Fig. 4A and 4B illustrate exemplary interfaces 400a and 400B, respectively, that may be used to generate one or more structured data containers via a list generation interface. FIG. 4A illustrates an exemplary interface 400a for generating a structured data container via a list generation interface. For example, based at least in part on receiving a selection of the "list" indicator 402, the group-based communication platform may cause a list interface 404 to be presented. In some examples, list interface 404 may include one or more options associated with generating a list (referred to herein as a "structured data container"). For example, a user of the group-based communication platform may request that a structured data container be created via the group-based communication platform. In some examples, the user may generate a blank list, such as by selecting control 406. The generation of the whitelist is described in more detail below in fig. 4B.
In other examples, a user may access one or more existing lists via list generation interface 404. For example, list generation interface 404 may include a search mechanism 408, which may be configured to receive input from a user corresponding to an existing structured data container. In some examples, list generation interface 404 may include one or more selectable controls associated with an existing list (such as list "list of j.smith" and "item H2 of Acme").
FIG. 4B illustrates an exemplary interface 400B that may be used to generate a blank structured data container. For example, the group-based communication platform may present the user interface 400b to the user based at least in part on receiving an indication from the user to generate a blank structured data container (such as by selecting control 406 in fig. 4A). In some examples, interface 400b may include one or more options associated with generating a structured data container. For example, interface 400b may include one or more options associated with adding one or more fields, such as by selecting control 410. A field may be, for example, an element of a structured data container that may be configured to receive data. For example, the fields may be similar to the fields of the columns in the table, with individual ones of the fields representing interactions with the group-based communication platform. For example, a user may determine that a field type is a check box, file, media, number, person, point of contact (POC), status, or text, to name a few non-limiting examples.
In some examples, interface 400b may additionally or alternatively include one or more options associated with viewing the structured data container, such as by selecting control 412. Options associated with viewing the structured data containers may include filtering one or more fields associated with one or more structured data containers. For example, the structured data container may be filtered such that fields associated with a particular user of the group-based communication platform are presented, or may be presented on top of fields and/or structured data containers assigned to other users, and/or unassigned fields and/or structured data containers.
Additionally or alternatively, the options associated with viewing the structured data container may include visual presentation of one or more fields associated with the structured data container. Although not shown in fig. 4B, this may include, for example, viewing the structured data container in a tile view (where one or more structured data containers are shown as separate "tiles"), a gallery view (where one or more fields of one or more structured data containers are shown as separate "cards"), and/or a calendar view (where one or more fields and/or one or more structured data containers are presented via a calendar corresponding to data associated with one or more fields and/or one or more structured data containers), to name a few non-limiting examples.
Fig. 5A and 5B illustrate exemplary interfaces 500a and 500B, respectively, that may be used to generate a structured data container via a virtual space. Although the virtual space shown in fig. 5A and 5B is a channel, the structured data container may be generated via any virtual space, including, but not limited to, direct messages, threads, real-time speech discussions, and/or canvas. FIG. 5A illustrates an exemplary interface 500a that may be used to generate a structured data container via a template in a channel. For example, a user may generate one or more structured data containers via a template by inputting data into the template. As an illustrative example, assume that a user is the project leader of a marketing project and is ready to submit the project for approval from legal departments associated with the user's company. As shown in FIG. 5A, the user has accessed a channel entitled "marketing: legal guidelines". Based at least in part on accessing the "marketing: legal guidelines" channel, the group-based communication platform may cause presentation of one or more options to the user to submit content for review, such as by selecting control 502.
FIG. 5B illustrates an exemplary interface 500B that may be used to generate a structured data container via a template. For example, based at least in part on receiving a user selection of control 502, the group-based communication platform can cause presentation of template 504 to the user. The templates 504 may be generated by the group-based communication platform and/or by users of the group-based communication platform, such as by members of the legal department. In some examples, the template 504 may include one or more fields, such as field 506. In some examples, the input may correspond to one or more fields of a structured data container. In some examples, the structured data container corresponding to template 504 may be an existing structured data container such that the group-based communication platform may update the information to one or more corresponding pre-existing fields based at least in part on receiving input to the template, such as at field 506. Additionally or alternatively, a structured data container corresponding to the template 504 can be generated based at least in part on receiving input to one or more fields associated with the template 504. For example, based at least in part on receiving input to one or more fields 506 of template 504 (such as by receiving an indication of a user selection of "submit" control 508 from a group-based communication platform), the group-based communication platform may generate a structured data container containing one or more fields, wherein the one or more fields of the structured data container correspond to the fields of template 504 and data associated with the one or more structured data containers is associated with user input to the one or more fields of template 504.
In other examples, the structured data container may be generated based at least in part on the generation of the template but prior to receiving input to the template. The generation of structured data containers via virtual space is described in more detail below in fig. 9.
FIG. 6 illustrates an interface 600 that includes an exemplary list 602 that includes a plurality of structured data containers. For example, the exemplary list shown in interface 600 may correspond to the templates shown in FIGS. 5A and 5B that are associated with "marketing: legal guidelines". As shown in interface 600, the list entitled "content legal review" contains three structured data containers, where each structured data container includes questions to be reviewed. Continuing with the illustrative example above, the project leader discussed in fig. 5A and 5B may submit a new employee welcome video (question 2) via template 504 to be reviewed by legal departments associated with the project leader's company. Based at least in part on receiving input of the templates and corresponding template fields, the group-based communication platform may generate a structured data container. In some examples, the input to the template may be populated such that the input to the fields of the template corresponds to the input on the fields of the structured data container. In the current illustration, project leader J.Smith enters into template 504 the question "New employee welcome video", expiration date 1/31/2023, audience "Press, external", and video content item titled "New employee".
In some examples, one or more fields of the structured data container may be editable such that edits made to a field of one instance of the structured data container may automatically update a corresponding field of another instance of the structured data container. Further, in some examples, selection of the structured data container may cause an expanded view of the structured data container to be presented, as shown and described below with respect to fig. 7E.
Fig. 7A-7E illustrate exemplary interfaces for modifying structured data containers in various virtual spaces. FIG. 7A illustrates an exemplary interface 700a that includes a messaging thread (such as messaging thread 702) associated with a structured data container. The messaging thread may include a space of the group-based communication platform presented via the same feed of a different space of the group-based communication platform. In some examples, a messaging thread (such as messaging thread 702) may include data associated with one or more fields of a structured data container. For example, the messaging thread 702 shown in interface 700a corresponds to a structured data container associated with the "new employee welcome video" depicted in FIG. 6. For example, the messaging thread may contain information such as the owner, status, expiration date, content links, and audience of the structured data container, for example.
In some examples, a messaging thread may be associated with a structured data container such that modifications to the structured data container may be reflected in the messaging thread, such as modifications to fields associated with the structured data container. Additionally or alternatively, the messaging thread may be configured to receive messages associated with the structured data container, such as virtual space (e.g., canvas, real-time voice discussion, channel, direct message, etc.) shared to via the structured data container. Modifications to the structured data container via the messaging threads and/or virtual spaces are described below with reference to fig. 7B-7E.
Additionally or alternatively, the messaging threads may be configured to receive messages shared by individuals, wherein the messages are shared directly among the messaging threads. For example, a messaging thread (such as messaging thread 702) may contain one or more messaging boxes (such as messaging box 704) so that a user may publish a message to the messaging thread. Continuing the above "marketing: legal guidelines" illustrative example, a user associated with a legal team may have a question about one or more fields of a structured data container associated with a new employee welcome video. Thus, a user (shown as "a. User" in the current embodiment) may post a message in a message thread associated with "new employee welcome video". As indicated by the user's message, the user may associate other users with the structured data container, such as by tagging other users in the message of the messaging thread. In this way, the messaging threads provide users of the group-based communication platform with the ability to easily and conveniently track updates and annotations associated with the structured data container.
FIG. 7B illustrates an exemplary interface 700B that may be used to update fields associated with a structured data container via a virtual space. For example, interface 700b illustrates a messaging thread 702 associated with a "new employee welcome video" structured data container in association with channel 706 titled "new employee committee". In some examples, as described above, data associated with the structured data container may be updated via any of the group-based communication platforms. Continuing with the above illustrative example, as shown in FIG. 7B, a user associated with a team of laws requests information associated with fields of a structured data container. The owners of the structured data containers then send messages in the channel "new staff committee" to the team responsible for structuring the data containers. In addition, team members (b.goodman) initiate a multimedia collaboration session (also referred to herein as a "real-time voice discussion"), such as indicated by interface 708. In some examples, data associated with a virtual space (such as channel 706 and/or real-time speech discussion interface 708) may be associated with a structured data container. For example, as shown in real-time speech discussion interface 708, members of channel 706 share document 710 to the virtual space during real-time speech discussion.
FIG. 7C illustrates an exemplary interface 700C that may be used to update a structured data container based on data received from a virtual space associated with the structured data container. In some examples, as shown in fig. 7B, data associated with the structured data container may be updated via any of the group-based communication platforms. Based at least in part on receiving the data associated with the virtual space, the group-based communication platform may send one or more updates associated with the data to a messaging thread associated with the structured data container. For example, as shown in FIG. 7B, the document 710 is shared in virtual space. Based at least in part on receiving the data, the group-based communication platform may determine that the data is associated with one or more of the plurality of fields of the structured data container. The group-based communication platform may then modify the structured data container to contain the data based at least in part on determining that the data is associated with one or more of the plurality of fields. In some examples, based at least in part on modifying the structured data container, the group-based communication platform can update a messaging thread, such as messaging thread 702, associated with the structured data container. For example, the group-based platform may update data associated with the structured data container, such as one or more fields of the structured data container, via a messaging thread. For example, based at least in part on receiving document 710, the group-based communication platform updates messaging thread 702 to indicate the addition of document 710, as indicated by the update link to content 712.
Additionally or alternatively, the group-based communication platform may send messages associated with the received data via a messaging thread. For example, based at least in part on receiving document 710, the group-based communication platform sends message 714 to the messaging thread, while indicating that document 710 is sent to the structured data container and attaching the instance of document 710 to the messaging thread. By automatically associating data with messaging threads associated with structured data containers, information and data are kept updated and updated in real-time.
In some examples, instances of the structured data container may be shared to a virtual space. For example, fig. 7C illustrates an example 716 of a new employee welcome video structured data container sharing a channel to a new employee committee. Similar to that discussed above, data associated with the instance 716 of the structured data container can be updated to accurately reflect the structured data container. In the current implementation, the instance 716 of the structured data container is depicted in a collapsed version such that the instance 716 of the structured data container displays a partial amount of data corresponding to the plurality of fields. Alternatively, an expanded version of an instance of the structured data container would display all of the data corresponding to the multiple fields.
FIG. 7D illustrates an exemplary interface 700D for modifying fields of a structured data container via a messaging thread. In some examples, one or more of the plurality of fields of the structured data container may be modified via a messaging thread associated with the structured data container. For example, as shown in interface 700d, one or more of the plurality of fields associated with the structured data container may be included in a messaging thread associated with the structured data container, such as expiration date 718 associated with the messaging thread. In some examples, the expiration date 718 may be selectable such that, based at least in part on receiving a user selection of the expiration date 718, the group-based communication platform may cause a calendar to be presented to the user. As shown in fig. 7D, the user has selected 2023, 1, 24 days as the modification date. It may be noted that although fig. 7D shows a modification date, any data associated with any field may be modified via a messaging thread.
FIG. 7E illustrates an example interface 700E that includes an instance of a structured data container that includes modifications to fields of the structured data container. For example, interface 700e may include interface 720, which may include data associated with one or more of a plurality of fields associated with a structured data container. In some examples, the data included in interface 720 may reflect one or more modifications to the data associated with one or more of the plurality of fields. For example, the messaging thread 702 associated with the structured data container includes a modification 722 that indicates a change to the expiration date.
FIG. 8 illustrates a flow chart of an exemplary process 800 for generating a messaging thread associated with a structured data container and sharing the structured data container to a virtual space.
For example, at operation 802, process 800 may include receiving a request from a user associated with a group-based communication platform to create a structured data container. The request may be received via any area of the group-based communication platform, such as via a channel, a real-time voice discussion, a canvas, a template, a direct message, a list generation interface, a workflow, or a thread, to name a few non-limiting examples. In some examples, the structured data container can represent a recording system associated with a group-based communication platform.
At operation 804, process 800 may include creating a structured data container, for example, in response to the request. In some examples, the structured data container can include at least one field of a plurality of fields. A field may be, for example, an element of a structured data container that may be configured to receive data. For example, the fields may be similar to the fields of the columns in the table, with individual ones of the fields representing interactions with the group-based communication platform. Additionally or alternatively, the structured data container can include information associated with interactions associated with the group-based communication platform.
At operation 806, process 800 may include determining that a messaging thread has been generated, wherein the messaging thread corresponds to a structured data container. The messaging threads may include different spaces of the group-based communication platform presented via the same feed of the different spaces of the group-based communication platform. For example, a messaging thread may be associated with a structured data container such that modifications to the structured data container may be reflected in the messaging thread, such as modifications to fields associated with the structured data container. Additionally or alternatively, the messaging thread may be configured to receive messages associated with the structured data container, such as virtual space (e.g., canvas, real-time voice discussion, channel, direct message, etc.) shared to via the structured data container. In other examples, the messaging threads may be configured to receive messages shared by individuals, where the messages are shared directly among the messaging threads. In this way, users of the group-based communication platform can easily and conveniently track updates and annotations associated with the structured data container.
Based at least in part on determining to refrain from generating the messaging thread (e.g., "no" at operation 806), process 800 may include presenting the structured data container to a user via a first graphical user interface of the group-based communication platform at operation 808. In some examples, the structured data container may contain a plurality of fields and information associated with interactions via a group-based communication platform, similar to user interface 600 shown in fig. 6.
Alternatively, based at least in part on determining that a messaging thread has been generated (e.g., "yes" at operation 806), process 800 may include presenting the structured data container and the messaging thread via a second graphical user interface at operation 810. In some examples, the structured data container may contain a plurality of fields and information associated with interactions via the group-based communication platform. The graphical user interface may be similar to the graphical user interfaces depicted in fig. 7A-7D.
At operation 812, process 800 may include determining that a group-based communication platform received a request to share a structured data container with a virtual space. A request to share a structured data container may be received from a user. Alternatively, the request to share the structured data container may be received from any user of the group-based platform that has the ability to share the structured data container based on privacy settings associated with the structured data container. In some examples, the virtual space may include any space of a group-based communication platform, such as a channel, canvas, real-time voice discussion, another list or structured data container, or direct message, to name a few non-limiting examples.
Based at least in part on determining that the group-based communication platform did not receive a request to share the structured data container with the virtual space, process 800 may return to operation 808, which includes presenting the structured data container via the first graphical user interface.
Alternatively, based at least in part on determining that the group-based communication platform receives a request to share a structured data container to the virtual space, process 800 may include, at operation 814, presenting the structured data container to the virtual space. According to aspects of the disclosure, a structured data container may contain a plurality of fields and information associated with interactions via a group-based communication platform. Additionally or alternatively, the group-based communication platform may cause the messaging thread to be presented to the virtual space.
At operation 816, the process 800 may include receiving input from a user via the virtual space for a field. For example, a structured data container presented via a virtual space may include one or more of a plurality of fields, wherein the fields may be modified by a user.
At operation 818, based at least in part on receiving input to a field of the plurality of fields via the virtual space, process 800 may include modifying a field of the structured data container. For example, modifying a field of the structured data container may include modifying a field of the structured data container associated with a field of the virtual space. In this way, multiple instances of the structured data container can be updated in real time, thereby ensuring that all instances of the virtual space are accurate and up to date.
FIG. 9 illustrates a flow chart of an exemplary process 900 for generating a structured data container via a virtual space of a group-based communication platform.
For example, at operation 902, process 900 may include receiving, via a graphical user interface, a request from a first user associated with a group-based communication platform to generate an object in a virtual space of the communication platform. In some examples, the object contains at least one field of a plurality of fields. In some examples, a request to generate an object may be received from at least one of a template and/or a workflow. The templates may include, for example, pre-generated data structures, which may include one or more fields and one or more settings that may be saved for future use. Alternatively, the workflow may include an automated multi-step process that may manage routines and/or repeat tasks. In some examples, templates and/or workflows may be generated by a communication platform.
At operation 904, based at least in part on receiving the request, process 900 may include generating an object. At operation 904, process 900 may include generating, in response to generating the object, a structured data container representing a recording system associated with the group-based communication platform. For example, the structured data container may include a plurality of fields such that data associated with the structured data container corresponds to data associated with objects in the virtual space. In other words, the plurality of fields associated with the object in the virtual space may be the same as the plurality of fields associated with the structured data container.
At operation 906, the process 900 may include receiving input for at least one field of the plurality of fields from a second user associated with the group-based communication platform. In other words, the first user may generate an object via a workflow and/or template that contains one or more fields in which the second user may enter data.
At operation 908, the process 900 may include associating an input to at least one of the plurality of fields with at least one of the plurality of fields of the structured data container. In other words, the data received from the second user may be associated with corresponding data fields in a structured data container generated by the first account.
At operation 910, the process 900 may include presenting input to the first user for at least one of the plurality of fields via the graphical interface, thereby associating the object with the corresponding workflow.
Exemplary clauses
A.A A method implemented at least in part by one or more computing devices of a group-based communication platform, the method including receiving, from a user associated with the group-based communication platform, a request to create a structured data container representing a recording system associated with the group-based communication platform, generating, in response to the request, a structured data container including a plurality of fields and information associated with interactions associated with the group-based communication platform, generating a messaging thread associated with at least one of the plurality of fields of the structured data container, and presenting, via a graphical user interface, the structured data container representing the recording system, the structured data container including the plurality of fields and the messaging thread associated with at least one of the plurality of fields of the structured data container.
The method of paragraph A, further comprising receiving first information associated with a first interaction associated with the group-based communication platform at a field of the plurality of fields, receiving second information associated with a second interaction associated with the group-based communication platform at a field of the plurality of fields, wherein the second interaction represents one or more changes to the first interaction, and causing presentation of first metadata associated with the first information and second metadata associated with the second information via a messaging thread associated with at least one field of the plurality of fields and based at least in part on receipt of the second information, wherein the second metadata includes an indication of the one or more changes to the first information.
The method of paragraph B further comprising receiving text input associated with at least one of the first metadata or the second metadata via a messaging thread associated with at least one of the plurality of fields, the text input including a user identifier and message data, and presenting text input including the user identifier and message data via a messaging thread associated with at least one of the plurality of fields.
The method of paragraph A, wherein the messaging thread associated with at least one of the plurality of fields is a first messaging thread associated with a first field, the method further comprising receiving information associated with interactions via the group-based communication platform at a second of the plurality of fields, and causing the information associated with interactions associated with the group-based communication platform to be presented via the second messaging thread associated with the second of the plurality of fields.
The method of paragraph A further comprising causing presentation of the plurality of structured data templates based at least in part on the request to create the structured data container, receiving a selection of an individual structured data template of the plurality of structured data templates, and generating structured data representing the recording system based at least in part on the receipt of the selection of the individual structured data template.
A method according to paragraph A, wherein the structured data container comprises one or more options associated with receiving a selection of a data category from a plurality of data categories, the data categories comprising at least one of a task title, a description, a status, a question type, a submission date, an expiration date, an owner, a creator, a thread, an audience, a content item, or a rating.
A method according to paragraph A, wherein the graphical user interface is a first graphical user interface, the method further comprising receiving a request to share the structured data container with a virtual space of the group-based communication platform, wherein the virtual space is a second graphical user interface, and causing one or more selectable objects associated with the structured data container to be presented in the virtual space.
The method of paragraph G further comprising receiving an indication of a selection of one or more selectable objects associated with the structured data container and causing an expanded view of the structured data container to be presented based at least in part on the selection of the one or more selectable objects and via the second graphical user interface.
The method of paragraph A, wherein the structured data container is associated with a set of permissions configured to limit visibility of at least one field of a plurality of fields associated with the group-based communication platform.
The method of paragraph A, further comprising receiving, via the graphical user interface, a selection of one or more options associated with filtering the plurality of fields, the one or more options including at least one of a date, a status, a user response, a user account, or a content type, and presenting a filtered view of the plurality of fields based at least in part on receiving the selection.
A system comprising one or more processors and one or more non-transitory computer-readable media comprising instructions that when executed by the one or more processors cause the system to perform operations comprising receiving a request from a user associated with a group-based communication platform to create a structured data container representing a recording system associated with the group-based communication platform, generating, in response to the request, a structured data container comprising a plurality of fields and information associated with interactions associated with the group-based communication platform, generating a messaging thread associated with at least one of the plurality of fields of the structured data container, and presenting, via a graphical user interface, the structured data container representing the recording system, the structured data container comprising the plurality of fields and the messaging thread associated with the at least one of the plurality of fields of the structured data container.
The system of paragraph K, the operations further comprising receiving first information associated with a first interaction associated with the group-based communication platform at a field of the plurality of fields, receiving second information associated with a second interaction associated with the group-based communication platform at a field of the plurality of fields, wherein the second interaction represents one or more changes to the first interaction, and causing presentation of the first metadata associated with the first information and the second metadata associated with the second information via a messaging thread associated with at least one field of the plurality of fields and based at least in part on receipt of the second information, wherein the second metadata includes an indication of the one or more changes to the first information.
M the system of paragraph L, the operations further comprising receiving text input associated with at least one of the first metadata or the second metadata via a messaging thread associated with at least one of the plurality of fields, the text input including a user identifier and message data, and presenting text input including the user identifier and message data via a messaging thread associated with at least one of the plurality of fields.
The system of paragraph K, wherein the messaging thread associated with at least one of the plurality of fields is a first messaging thread associated with a first field, the operations further comprising receiving information associated with interactions via the group-based communication platform at a second of the plurality of fields, and causing the information associated with interactions associated with the group-based communication platform to be presented via the second messaging thread associated with the second of the plurality of fields.
The system of paragraph K, the operations further comprising causing presentation of the plurality of structured data templates based at least in part on the request to create the structured data container, receiving a selection of an individual structured data template of the plurality of structured data templates, and generating structured data representing the recording system based at least in part on the receipt of the selection of the individual structured data template.
The system of paragraph K, wherein the structured data container comprises one or more options associated with receiving a selection of a data category from among a plurality of data categories, the data category comprising at least one of a task title, a description, a status, a question type, a submission date, an expiration date, an owner, a creator, a thread, an audience, a content item, or a rating.
One or more computer-readable media comprising instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising receiving, from a user associated with a group-based communication platform, a request to create a structured data container representing a recording system associated with the group-based communication platform, generating, in response to the request, the structured data container comprising a plurality of fields and information associated with interactions associated with the group-based communication platform, generating a messaging thread associated with at least one of the plurality of fields of the structured data container, and presenting, via a graphical user interface, the structured data container representing the recording system, the structured data container comprising the plurality of fields and the messaging thread associated with the at least one of the plurality of fields of the structured data container.
The one or more computer-readable media of paragraph Q, wherein the graphical user interface is a first graphical user interface, the operations further comprising receiving a request to share the structured data container with a virtual space of the group-based communication platform, wherein the virtual space is a second graphical user interface, and causing one or more selectable objects associated with the structured data container to be presented in the virtual space.
S the one or more computer-readable media according to paragraph R, the operations further comprising receiving an indication of a selection of one or more selectable objects associated with the structured data container, and causing an expanded view of the structured data container to be presented based at least in part on the selection of the one or more selectable objects and via the second graphical user interface.
T. one or more computer-readable media according to paragraph Q, wherein the structured data container is associated with a permissions set configured to limit visibility of at least one field of a plurality of fields associated with the group-based communication platform.
A method implemented at least in part by one or more computing devices of a group-based communication platform includes receiving a request from a user associated with the group-based communication platform to create a structured data container representing a record system associated with the group-based communication platform, generating, in response to the request, the structured data container including a plurality of fields and information associated with interactions associated with the group-based communication platform, presenting, via a first graphical user interface, the structured data container representing the record system including the plurality of fields, receiving, from the user, a request to share at least one of the plurality of fields to a virtual space of the group-based communication platform, wherein the virtual space is a second graphical user interface, presenting, via the virtual space of the group-based communication platform, at least one of the plurality of fields, receiving, from the user, via the virtual space of the group-based communication platform, an input to the at least one of the plurality of fields, wherein the input includes information associated with interactions associated with the group-based communication platform, and modifying, via the virtual space, the at least one of the plurality of fields, the structured data container received at least in part based on the at least one of the plurality of fields.
A method according to paragraph U further comprising generating a messaging thread associated with at least one of the plurality of fields of the structured data container and presenting the messaging thread associated with the at least one of the plurality of fields of the structured data container via a second graphical user interface.
A method according to paragraph U, wherein the virtual space comprises at least one of a channel, a canvas, a real-time speech discussion, or a direct message.
A method according to paragraph U, wherein the virtual space comprises one or more selectable objects associated with at least one of the plurality of fields, the method further comprising receiving an indication of a selection of the one or more selectable objects associated with the structured data container, and causing an expanded view of the structured data container to be presented based at least in part on the selection of the one or more selectable objects and via the virtual space.
A method according to paragraph U, wherein the input to at least one of the plurality of fields is a first input to a first of the plurality of fields, the method further comprising receiving second information associated with a second interaction associated with the group-based communication platform at the field of the plurality of fields via the virtual space, wherein the second interaction comprises one or more changes to the first interaction data, and modifying the field of the plurality of fields via the structured data container based at least in part on receiving the second interaction data.
The method of paragraph Y, further comprising presenting, via a messaging thread associated with at least one of the plurality of fields and based at least in part on receiving the second information, first metadata associated with the first information and second metadata associated with the second information, wherein the second metadata includes an indication of one or more changes to the first information.
A method according to paragraph U, wherein the virtual space is a first virtual space, the method further comprising receiving a request from a user to share at least one of the plurality of fields to a second virtual space of the group-based communication platform, wherein the second virtual space is a third graphical user interface, and presenting the at least one of the plurality of fields via the second virtual space of the group-based communication platform.
The method of paragraph AA, wherein the input is a first input and the interaction is a first interaction, the method further comprising receiving a second input to at least one of the plurality of fields from the user via a second virtual space of the group-based communication platform, wherein the second input comprises information associated with a second interaction associated with the group-based communication platform, and modifying at least one of the plurality of fields of the structured data container based at least in part on receiving the second input to the at least one of the plurality of fields via the second virtual space of the group-based communication platform.
An AC comprises one or more processors and one or more non-transitory computer-readable media comprising instructions that when executed by the one or more processors cause the system to perform operations comprising receiving a request from a user associated with a group-based communication platform to create a structured data container representing a recording system associated with the group-based communication platform, generating the structured data container in response to the request, the structured data container comprising a plurality of fields and information associated with an interaction of the group-based communication platform, presenting the structured data container comprising the structured data container of the recording system via a first graphical user interface, receiving a request from the user to share at least one of the plurality of fields to a virtual space of the group-based communication platform, wherein the virtual space is a second graphical user interface, presenting at least one of the plurality of fields via the virtual space of the group-based communication platform, receiving an input to at least one of the plurality of fields from the user via the virtual space of the group-based communication platform, wherein the input comprises an interaction of the plurality of fields with the group-based communication platform, modifying at least one of the plurality of fields via the associated group-based communication platform, and modifying at least one of the plurality of fields of the associated communication platform.
The AD is a system according to paragraph AC, the operations further comprising generating a messaging thread associated with at least one of the plurality of fields of the structured data container, and presenting the messaging thread associated with the at least one of the plurality of fields of the structured data container via a second graphical user interface.
AE is a system according to paragraph AC wherein the virtual space includes at least one of a channel, canvas, real-time speech discussion, or direct message.
The AF is a system according to paragraph AC, wherein the virtual space includes one or more selectable objects associated with at least one of the plurality of fields, the operations further comprising receiving an indication of a selection of the one or more selectable objects associated with the structured data container, and causing an expanded view of the structured data container to be presented based at least in part on the selection of the one or more selectable objects and via the virtual space.
The AG the system of paragraph AC, wherein the input to at least one of the plurality of fields is a first input to a first field of the plurality of fields, the operations further comprising receiving, at the field of the plurality of fields via the virtual space, second information associated with a second interaction associated with the group-based communication platform, wherein the second interaction comprises one or more changes to the first interaction data, and modifying the field of the plurality of fields via the structured data container based at least in part on receiving the second interaction data.
AH the system of paragraph AG, the operations further comprising presenting, via a messaging thread associated with at least one of the plurality of fields and based at least in part on receiving the second information, first metadata associated with the first information and second metadata associated with the second information, wherein the second metadata includes an indication of one or more changes to the first information.
The AI comprises one or more computer-readable media comprising instructions that, when executed by one or more processors, cause the one or more processors to perform operations comprising receiving, from a user associated with the group-based communication platform, a request to create a structured data container representing a recording system associated with the group-based communication platform, generating, in response to the request, the structured data container comprising a plurality of fields and information associated with interactions associated with the group-based communication platform, presenting, via a first graphical user interface, the structured data container comprising the plurality of fields, a request to share at least one of the plurality of fields to a virtual space of the group-based communication platform, wherein the virtual space is a second graphical user interface, presenting, via the virtual space of the group-based communication platform, at least one of the plurality of fields, receiving, from the user, via the virtual space of the group-based communication platform, an input to the at least one of the plurality of fields, wherein the input comprises information associated with interactions associated with the group-based communication platform, and modifying, via the at least one of the plurality of fields, the at least one of the group-based communication platform.
AJ one or more computer-readable media according to paragraph AI, wherein the virtual space is a first virtual space, the operations further comprising receiving a request from a user to share at least one of the plurality of fields to a second virtual space of the group-based communication platform, wherein the second virtual space is a third graphical user interface, and presenting the at least one of the plurality of fields via the second virtual space of the group-based communication platform.
The AK is one or more computer-readable media according to paragraph AJ, wherein the input is a first input and the interaction is a first interaction, the operations further comprising receiving a second input to at least one of the plurality of fields from the user via a second virtual space of the group-based communication platform, wherein the second input comprises information associated with a second interaction associated with the group-based communication platform, and modifying at least one of the plurality of fields of the structured data container based at least in part on receiving the second input to the at least one of the plurality of fields via the second virtual space of the group-based communication platform.
The AL, one or more computer-readable media according to paragraph AI, further comprising generating a messaging thread associated with at least one of the plurality of fields of the structured data container, and presenting the messaging thread associated with the at least one of the plurality of fields of the structured data container via a second graphical user interface.
AM: one or more computer-readable media according to paragraph AI, wherein the virtual space comprises at least one of a channel, canvas, real-time speech discussion, or direct message.
The AN comprises one or more computer-readable media according to paragraph AI, wherein the virtual space comprises one or more selectable objects associated with at least one of the plurality of fields, the operations further comprising receiving AN indication of a selection of the one or more selectable objects associated with the structured data container, and causing AN expanded view of the structured data container to be presented based at least in part on the selection of the one or more selectable objects and via the virtual space.
An AO, implemented at least in part by one or more computing devices of a group-based communication platform, the method comprising receiving a request from a first user associated with the group-based communication platform to generate an object in a virtual space of the group-based communication platform via a graphical user interface, wherein the request is received from at least one of a template or a workflow, and wherein the object contains at least one of a plurality of fields, generating the object in response to the request, generating a structured data container representing a recording system associated with the group-based communication platform in response to the generating the object, the structured data container comprising the plurality of fields, receiving input to the at least one of the plurality of fields from a second user associated with the group-based communication platform via the object, associating the input to the at least one of the plurality of fields with the at least one of the plurality of fields of the structured data container, and presenting the input to the first user via the graphical user interface.
The method according to paragraph AO, wherein the virtual space is a first virtual space, the method further comprising receiving a request from the first user to share objects with a second virtual space of the group-based communication platform, wherein the second virtual space is different from the first virtual space, and rendering the objects via the second virtual space of the group-based communication platform.
AQ the method according to paragraph AO further comprising receiving a request from a second user at the virtual space to initiate a multimedia collaboration session associated with the object, and initiating a multimedia collaboration session associated with the object, wherein the multimedia collaboration session enables two or more users associated with the group-based communication platform to access the object simultaneously.
The AR the method according to paragraph AQ further comprises receiving data associated with the object from at least one of two or more users associated with the group-based communication platform, associating the data associated with the object with at least one of a plurality of fields of the structured data container, and presenting the data associated with the object to the first user via the graphical user interface.
The method according to paragraph AO, wherein the template or workflow is generated by a group-based communication platform.
The AT is a method according to paragraph AO, wherein the input is a first input, the method further comprising receiving a second input to AT least one of the plurality of fields from a second user, associating the second input to the AT least one of the plurality of fields with the AT least one of the plurality of fields of the structured data container, and presenting the second input to the AT least one of the plurality of fields to the first user via a graphical user interface.
The method according to paragraph AO, wherein the graphical interface is a first graphical interface, the method further comprising generating a messaging thread associated with at least one of the plurality of fields of the structured data container, and rendering the messaging thread associated with the at least one of the plurality of fields of the structured data container via at least one of the first graphical interface or the second graphical interface.
AV the method according to paragraph AO, wherein the structured data container is associated with a set of permissions configured to limit visibility of at least one field of a plurality of fields associated with the group-based communication platform.
A system includes one or more processors and one or more non-transitory computer-readable media comprising instructions that when executed by the one or more processors cause the system to perform operations including receiving, via a graphical user interface, a request to generate an object in a virtual space of a group-based communication platform from a first user associated with the group-based communication platform, wherein the request is received from at least one of a template or a workflow and wherein the object contains at least one of a plurality of fields, generating, in response to the request, the object, generating, in response to the generating the object, a structured data container representing a record system associated with the group-based communication platform, the structured data container including the plurality of fields, receiving, via the object, input to the at least one of the plurality of fields from a second user associated with the group-based communication platform, associating the input to the at least one of the plurality of fields with the at least one of the plurality of fields of the structured data container, and presenting, via the graphical user interface, to the first user, the input to the at least one of the plurality of fields.
AX the system of paragraph AW wherein the virtual space is a first virtual space, the operations further comprising receiving a request from the first user to share objects with a second virtual space of the group-based communication platform, wherein the second virtual space is different from the first virtual space, and rendering the objects via the second virtual space of the group-based communication platform.
AY the system of paragraph AW, the operations further comprising receiving, at the virtual space, a request from the second user to initiate a multimedia collaboration session associated with the object, and initiating the multimedia collaboration session associated with the object, wherein the multimedia collaboration session enables two or more users associated with the group-based communication platform to access the object simultaneously.
AZ the system of paragraph AY, the operations further comprising receiving data associated with the object from at least one of two or more users associated with the group-based communication platform, associating the data associated with the object with at least one of a plurality of fields of the structured data container, and presenting the data associated with the object to the first user via the graphical user interface.
BA A system according to paragraph AW, wherein the template or workflow is generated by a group-based communication platform.
The system of paragraph AW, wherein the input is a first input, the method further comprising receiving a second input to at least one of the plurality of fields from a second user, associating the second input to the at least one of the plurality of fields with the at least one of the plurality of fields of the structured data container, and presenting the second input to the at least one of the plurality of fields to the first user via the graphical user interface.
The BC comprises instructions that when executed by one or more processors cause the one or more processors to perform operations comprising receiving, via a graphical user interface, a request to generate an object in a virtual space of a group-based communication platform from a first user associated with the group-based communication platform, wherein the request is received from at least one of a template or a workflow and wherein the object contains at least one of a plurality of fields, generating, in response to the request, the object, generating, in response to the generation of the object, a structured data container representing a record system associated with the group-based communication platform, the structured data container comprising the plurality of fields, receiving, via the object, input to the at least one of the plurality of fields from a second user associated with the group-based communication platform, associating the input to the at least one of the plurality of fields with the at least one of the plurality of fields of the structured data container, and presenting, via the graphical user interface, the input to the first user to the at least one of the plurality of fields.
The BD comprising one or more computer-readable media according to paragraph BC, wherein the graphical interface is a first graphical interface, the operations further comprising generating a messaging thread associated with at least one of the plurality of fields of the structured data container, and presenting the messaging thread associated with at least one of the plurality of fields of the structured data container via at least one of the first graphical interface or a second graphical interface.
BE one or more computer-readable media according to paragraph BC, wherein the structured data container is associated with a permissions set configured to limit visibility of at least one field of a plurality of fields associated with the group-based communication platform.
BF one or more computer-readable media according to paragraph BC, wherein the virtual space is a first virtual space, the operations further comprising receiving a request from the first user to share objects to a second virtual space of the group-based communication platform, wherein the second virtual space is different from the first virtual space, and rendering the objects via the second virtual space of the group-based communication platform.
The BG, one or more computer-readable media according to paragraph BC, further comprising receiving, at the virtual space, a request from a second user to initiate a multimedia collaboration session associated with the object, and initiating the multimedia collaboration session associated with the object, wherein the multimedia collaboration session enables two or more users associated with the group-based communication platform to access the object simultaneously.
BH: one or more computer-readable media according to paragraph BG, the operations further comprising receiving data associated with the object from at least one of two or more users associated with the group-based communication platform, associating the data associated with the object with at least one of a plurality of fields of the structured data container, and presenting the data associated with the object to the first user via the graphical user interface.
While the above-described exemplary clauses are described with respect to one particular implementation, it should be appreciated that in the context of this document, the contents of the exemplary clauses may also be implemented via a method, apparatus, system, computer-readable medium, and/or another implementation. In addition, any of examples a through BH may be implemented alone or in combination with any other one or more of examples a through BH.
Conclusion(s)
Although one or more examples of the technology described herein have been described, various alterations, additions, permutations, and equivalents thereof are included within the scope of the technology described herein.
In the description of the examples, reference is made to the accompanying drawings which form a part hereof, and in which is shown by way of illustration specific examples of the claimed subject matter. It is to be understood that other examples may be used and that changes or alterations may be made, such as structural changes. Such examples, changes, or alterations do not necessarily depart from the scope of the intended claimed subject matter. Although the steps herein may be presented in a particular order, in some cases the ordering may be changed such that particular inputs are provided at different times or in a different order without changing the functionality of the described systems and methods. The disclosed processes may also be performed in a different order. In addition, the various computations herein need not be performed in the order disclosed, and other examples of using alternative computing ordering may be readily implemented. In addition to being reordered, the computation may also be broken down into sub-computations that achieve the same result.

Claims (15)

1.一种至少部分地由基于组的通信平台的一个或多个计算设备实现的方法,所述方法包括:1. A method implemented at least in part by one or more computing devices of a group-based communication platform, the method comprising: 从与所述基于组的通信平台相关联的用户接收创建表示与所述基于组的通信平台相关联的记录系统的结构化数据容器的请求;receiving a request from a user associated with the group-based communications platform to create a structured data container representing a system of record associated with the group-based communications platform; 响应于所述请求,生成所述结构化数据容器,所述结构化数据容器包括:In response to the request, the structured data container is generated, the structured data container comprising: 多个字段;和multiple fields; and 与关联于所述基于组的通信平台的交互相关联的信息;information associated with interactions associated with the group-based communication platform; 生成与所述结构化数据容器的所述多个字段中的至少一个字段相关联的消息传递线程;以及generating a messaging thread associated with at least one of the plurality of fields of the structured data container; and 经由图形用户界面呈现表示所述记录系统的所述结构化数据容器,包括所述多个字段和与所述结构化数据容器的所述多个字段中的所述至少一个字段相关联的所述消息传递线程。The structured data container representing the system of record including the plurality of fields and the messaging thread associated with the at least one of the plurality of fields of the structured data container is presented via a graphical user interface. 2.根据权利要求1所述的方法,还包括:2. The method according to claim 1, further comprising: 在所述多个字段中的字段处,接收与关联于所述基于组的通信平台的第一交互相关联的第一信息;receiving, at a field in the plurality of fields, first information associated with a first interaction associated with the group-based communication platform; 在所述多个字段中的所述字段处,接收与关联于所述基于组的通信平台的第二交互相关联的第二信息,其中所述第二交互表示对所述第一交互的一个或多个改变;以及receiving, at the field of the plurality of fields, second information associated with a second interaction associated with the group-based communication platform, wherein the second interaction represents one or more changes to the first interaction; and 使得经由与所述多个字段中的所述至少一个字段相关联的所述消息传递线程以及至少部分地基于接收到所述第二信息,呈现与所述第一信息相关联的第一元数据和与所述第二信息相关联的第二元数据,其中所述第二元数据包括对所述第一信息的所述一个或多个改变的指示。Causes first metadata associated with the first information and second metadata associated with the second information to be presented via the messaging thread associated with at least one of the plurality of fields and based at least in part on receiving the second information, wherein the second metadata includes an indication of the one or more changes to the first information. 3.根据权利要求2所述的方法,还包括:3. The method according to claim 2, further comprising: 经由与所述多个字段中的所述至少一个字段相关联的所述消息传递线程,接收与所述第一元数据或所述第二元数据中的至少一项相关联的文本输入,所述文本输入包括用户标识符和消息数据;以及receiving, via the messaging thread associated with the at least one of the plurality of fields, a text input associated with at least one of the first metadata or the second metadata, the text input comprising a user identifier and message data; and 经由与所述多个字段中的所述至少一个字段相关联的所述消息传递线程,呈现包括所述用户标识符和所述消息数据的所述文本输入。The text input including the user identifier and the message data is presented via the messaging thread associated with the at least one field of the plurality of fields. 4.根据权利要求1至3中任一项所述的方法,其中与所述多个字段中的所述至少一个字段相关联的所述消息传递线程是与第一字段相关联的第一消息传递线程,所述方法还包括:4. The method according to any one of claims 1 to 3, wherein the messaging thread associated with the at least one field of the plurality of fields is a first messaging thread associated with a first field, the method further comprising: 在所述多个字段中的第二字段处,接收与经由所述基于组的通信平台的交互相关联的信息;以及receiving, at a second field of the plurality of fields, information associated with an interaction via the group-based communication platform; and 使得经由与所述多个字段中的所述第二字段相关联的第二消息传递线程呈现与关联于所述基于组的通信平台的所述交互相关联的所述信息。The information associated with the interaction associated with the group-based communication platform is caused to be presented via a second messaging thread associated with the second field of the plurality of fields. 5.根据权利要求1至4中任一项所述的方法,还包括:5. The method according to any one of claims 1 to 4, further comprising: 至少部分地基于创建所述结构化数据容器的所述请求,使得呈现多个结构化数据模板;causing presentation of a plurality of structured data templates based at least in part on said request to create said structured data container; 接收对所述多个结构化数据模板中的单独的结构化数据模板的选择;以及receiving a selection of an individual structured data template from the plurality of structured data templates; and 至少部分地基于接收到对所述单独的结构化数据模板的所述选择,生成表示所述记录系统的所述结构化数据。Based at least in part on receiving the selection of the separate structured data template, the structured data representing the system of record is generated. 6.根据权利要求1至5中任一项所述的方法,其中所述结构化数据容器包括与接收对来自多个数据类别中的数据类别的选择相关联的一个或多个选项,所述数据类别包括以下至少一项:6. The method of any one of claims 1 to 5, wherein the structured data container comprises one or more options associated with receiving a selection of a data category from a plurality of data categories, the data category comprising at least one of: 任务标题;Task title; 描述;describe; 状态;state; 问题类型;Type of question; 提交日期;Date of submission; 到期日期;Date of Expiry; 所有者;owner; 创建者;Creator; 线程;Threads; 受众;Audience; 内容项;或an item of content; or 评级。Rating. 7.根据权利要求1至6中任一项所述的方法,其中所述图形用户界面是第一图形用户界面,所述方法还包括:7. The method according to any one of claims 1 to 6, wherein the graphical user interface is a first graphical user interface, the method further comprising: 接收向所述基于组的通信平台的虚拟空间共享所述结构化数据容器的请求,其中所述虚拟空间是第二图形用户界面;以及receiving a request to share the structured data container to a virtual space of the group-based communication platform, wherein the virtual space is a second graphical user interface; and 使得在所述虚拟空间中呈现与所述结构化数据容器相关联的一个或多个可选择对象。One or more selectable objects associated with the structured data container are caused to be presented in the virtual space. 8.根据权利要求7所述的方法,还包括:8. The method according to claim 7, further comprising: 接收对与所述结构化数据容器相关联的所述一个或多个可选择对象的选择的指示;以及receiving an indication of a selection of the one or more selectable objects associated with the structured data container; and 至少部分地基于对所述一个或多个可选择对象的所述选择以及经由所述第二图形用户界面,使得呈现所述结构化数据容器的展开视图。Based at least in part on the selection of the one or more selectable objects and via the second graphical user interface, causing presentation of an expanded view of the structured data container. 9.根据权利要求1至8中任一项所述的方法,其中所述结构化数据容器与许可集合相关联,所述许可集合被配置为限制与所述基于组的通信平台相关联的所述多个字段中的所述至少一个字段的可见性。9. The method according to any one of claims 1 to 8, wherein the structured data container is associated with a permission set, and the permission set is configured to limit visibility of at least one of the multiple fields associated with the group-based communication platform. 10.根据权利要求1至9中任一项所述的方法,所述方法还包括:10. The method according to any one of claims 1 to 9, further comprising: 经由所述图形用户界面接收对与过滤所述多个字段相关联的一个或多个选项的选择,所述一个或多个选项包括以下至少一项:Receiving, via the graphical user interface, a selection of one or more options associated with filtering the plurality of fields, the one or more options comprising at least one of: 日期;date; 状态;state; 用户响应;User response; 用户账户;或User account; or 内容类型;以及Type of content; and 至少部分地基于接收到所述选择,呈现所述多个字段的过滤视图。Based at least in part on receiving the selection, a filtered view of the plurality of fields is presented. 11.一种包括编码指令的计算机程序产品,所述编码指令当在计算机上运行时实现根据权利要求1至10中任一项所述的方法。11. A computer program product comprising coded instructions for implementing the method according to any one of claims 1 to 10 when executed on a computer. 12.一种系统,包括:12. A system comprising: 一个或多个处理器;和one or more processors; and 一个或多个非暂态计算机可读介质,其包括指令,所述指令当由所述一个或多个处理器执行时使得所述系统执行操作,所述操作包括:One or more non-transitory computer-readable media comprising instructions that, when executed by the one or more processors, cause the system to perform operations comprising: 从与基于组的通信平台相关联的用户接收创建表示与所述基于组的通信平台相关联的记录系统的结构化数据容器的请求;receiving a request from a user associated with a group-based communications platform to create a structured data container representing a system of record associated with the group-based communications platform; 响应于所述请求,生成所述结构化数据容器,所述结构化数据容器包括:In response to the request, the structured data container is generated, the structured data container comprising: 多个字段;和multiple fields; and 与关联于所述基于组的通信平台的交互相关联的信息;information associated with interactions associated with the group-based communication platform; 生成与所述结构化数据容器的所述多个字段中的至少一个字段相关联的消息传递线程;以及generating a messaging thread associated with at least one of the plurality of fields of the structured data container; and 经由图形用户界面呈现表示所述记录系统的所述结构化数据容器,所述结构化数据容器包括所述多个字段和与所述结构化数据容器的所述多个字段中的所述至少一个字段相关联的所述消息传递线程。The structured data container representing the system of record is presented via a graphical user interface, the structured data container including the plurality of fields and the messaging thread associated with the at least one of the plurality of fields of the structured data container. 13.根据权利要求12所述的系统,所述操作还包括:13. The system of claim 12, the operations further comprising: 在所述多个字段中的字段处,接收与关联于所述基于组的通信平台的第一交互相关联的第一信息;receiving, at a field in the plurality of fields, first information associated with a first interaction associated with the group-based communication platform; 在所述多个字段中的所述字段处,接收与关联于所述基于组的通信平台的第二交互相关联的第二信息,其中所述第二交互表示对所述第一交互的一个或多个改变;以及receiving, at the field of the plurality of fields, second information associated with a second interaction associated with the group-based communication platform, wherein the second interaction represents one or more changes to the first interaction; and 使得经由与所述多个字段中的所述至少一个字段相关联的所述消息传递线程以及至少部分地基于接收到所述第二信息,呈现与所述第一信息相关联的第一元数据和与所述第二信息相关联的第二元数据,其中所述第二元数据包括对所述第一信息的所述一个或多个改变的指示。Causes first metadata associated with the first information and second metadata associated with the second information to be presented via the messaging thread associated with at least one of the plurality of fields and based at least in part on receiving the second information, wherein the second metadata includes an indication of the one or more changes to the first information. 14.根据权利要求13所述的系统,所述操作还包括:14. The system of claim 13, wherein the operations further comprise: 经由与所述多个字段中的所述至少一个字段相关联的所述消息传递线程,接收与所述第一元数据或所述第二元数据中的至少一项相关联的文本输入,所述文本输入包括用户标识符和消息数据;以及receiving, via the messaging thread associated with the at least one of the plurality of fields, a text input associated with at least one of the first metadata or the second metadata, the text input comprising a user identifier and message data; and 经由与所述多个字段中的所述至少一个字段相关联的所述消息传递线程,呈现包括所述用户标识符和所述消息数据的所述文本输入。The text input including the user identifier and the message data is presented via the messaging thread associated with the at least one field of the plurality of fields. 15.根据权利要求12至14中任一项所述的系统,其中与所述多个字段中的所述至少一个字段相关联的所述消息传递线程是与第一字段相关联的第一消息传递线程,所述操作还包括:15. The system of any one of claims 12 to 14, wherein the messaging thread associated with the at least one of the plurality of fields is a first messaging thread associated with a first field, the operations further comprising: 在所述多个字段中的第二字段处,接收与经由所述基于组的通信平台的交互相关联的信息;以及receiving, at a second field of the plurality of fields, information associated with an interaction via the group-based communication platform; and 使得经由与所述多个字段中的所述第二字段相关联的第二消息传递线程呈现与关联于所述基于组的通信平台的所述交互相关联的所述信息。The information associated with the interaction associated with the group-based communication platform is caused to be presented via a second messaging thread associated with the second field of the plurality of fields.
CN202380087235.6A 2023-01-06 2023-12-15 Generating structured data containers for communication platforms Pending CN120380496A (en)

Applications Claiming Priority (7)

Application Number Priority Date Filing Date Title
US18/151,057 2023-01-06
US18/151,023 2023-01-06
US18/151,131 US12238060B2 (en) 2023-01-06 2023-01-06 Integrating structured data containers via templates for communication platform
US18/151,131 2023-01-06
US18/151,057 US12346880B2 (en) 2023-01-06 2023-01-06 Integrating structured data containers into virtual spaces for communication platform
US18/151,023 US12106043B2 (en) 2023-01-06 2023-01-06 Generating structured data containers for communication platform
PCT/US2023/084337 WO2024147906A1 (en) 2023-01-06 2023-12-15 Generating structured data containers for communication platform

Publications (1)

Publication Number Publication Date
CN120380496A true CN120380496A (en) 2025-07-25

Family

ID=89768279

Family Applications (1)

Application Number Title Priority Date Filing Date
CN202380087235.6A Pending CN120380496A (en) 2023-01-06 2023-12-15 Generating structured data containers for communication platforms

Country Status (3)

Country Link
EP (1) EP4646678A1 (en)
CN (1) CN120380496A (en)
WO (1) WO2024147906A1 (en)

Family Cites Families (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20210255744A1 (en) * 2020-02-17 2021-08-19 Slack Technologies, Inc. Methods, Apparatuses And Computer Program Product For Updating Group-Based Communication Interface
US11501255B2 (en) * 2020-05-01 2022-11-15 Monday.com Ltd. Digital processing systems and methods for virtual file-based electronic white board in collaborative work systems
US11522825B2 (en) * 2021-03-12 2022-12-06 Slack Technologies, Llc Object interface for quick access to objects of a communication platform
JP2024511961A (en) * 2021-03-12 2024-03-18 スラック テクノロジーズ, エルエルシー Object interface for quick access to communication platform objects
US11722446B2 (en) * 2021-05-17 2023-08-08 Salesforce, Inc. Message moderation in a communication platform

Also Published As

Publication number Publication date
EP4646678A1 (en) 2025-11-12
WO2024147906A1 (en) 2024-07-11

Similar Documents

Publication Publication Date Title
US12373756B2 (en) Contextual workflow buttons
US20240179193A1 (en) Channel recommendations using machine learning
US12530112B2 (en) Generating virtual space headers utilizing machine-learned models
US20250315628A1 (en) Topic Identification Based on Virtual Space Machine Learning Models
US12099770B1 (en) Displaying predicted tasks based on changing devices
US20250193141A1 (en) Integrating structured data containers via templates for communication platform
US20250086546A1 (en) Generating workflows using modular functions
US12106043B2 (en) Generating structured data containers for communication platform
US20250217774A1 (en) Increasing meeting productivity utilizing role-based event generation
US12348475B2 (en) Smart events framework
US12346880B2 (en) Integrating structured data containers into virtual spaces for communication platform
US12452198B2 (en) Displaying a summary based on exchanging messages
US12417063B2 (en) Displaying a communication platform summary
CN120380496A (en) Generating structured data containers for communication platforms
US12126582B1 (en) Sharing information via group-based communication systems using searchable messages
US11916862B1 (en) Mentions processor configured to process mention identifiers
US20250217775A1 (en) Generating events based on historical data
US20250356290A1 (en) Generating tasks from a virtual space
US20250150422A1 (en) Updating communications with machine learning and platform context
US20250358360A1 (en) List management on a mobile device
JP2026504017A (en) Generating structured data containers for communication platforms

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination