IP Library Granted Patent US 11,206,231
Granted Patent B2
US 11,206,231 · App. 15/730,044 · Granted Dec 21, 2021

Group-based communication interface with subsidiary channel-based thread communications

Inventors: Paul Rosania (San Francisco, CA); Milo Watanabe (San Francisco, CA); Daniel Stewart Butterfield (Vancouver, CA); Neil Walker (San Francisco, CA); Patrick Kane (Vancouver, CA); Hubert Florin (Vancouver, CA); Wayne Fan (San Francisco, CA)
Assignee: Slack Technologies, Inc.
H04L51/16H04L67/22H04L67/306
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 11,206,231
App. No.
15/730,044
Granted
Dec 21, 2021
Kind
B2
Abstract

Provided is a group-based communication interface configured to allow members of the interface to communicate within group-based communication channels. The group-based communication interface is configured to relegate selected group-based messaging communications to a separate display pane, where additional messaging communications can be received, thereby maintaining a focused selected group-based communication channel. The selected group-based communication channel is updated to indicate that the selected group-based messaging communications was relegated to a separate display pane, informing the channel members while also allowing the channel members to access the separate display pane if desired. Accordingly, the selected group-based communication interface provides for efficient and focused group-based communications.

Claims (85)

1. An apparatus for generating a group-based communication interface within a defined display window of a user client device, the group-based communication interface defining a channel list pane comprising a plurality of group-based communication channels and a channel messaging pane, the apparatus comprising at least a processor, and a memory associated with the processor having computer coded instructions therein, with the computer coded instructions configured to, when executed by the processor, cause the apparatus to:

receive a first messaging communication associated with a selected group-based communication channel of the plurality of group-based communication channels, the selected group-based communication channel comprising a plurality of messaging communications;

cause the first messaging communication to be rendered within the channel messaging pane;

receive, from the user client device, a thread request to create a subsidiary channel-based thread communication, wherein the thread request is associated with the first messaging communication in the selected group-based communication channel;

in response to receiving the thread request, generate and transmit for display a thread summary indicator renderable within the channel messaging pane proximate the first messaging communication, wherein the thread summary indicator is configured to be selectable by any user of the selected group-based communication channel;

receive an indication of an input indicating a selection of the thread summary indicator; and

cause, based at least in part on receiving the indication of the input, rendering of the subsidiary channel-based thread communication to a thread communication pane within the group-based communication interface, wherein the thread communication pane is separate from the channel list pane and the channel messaging pane within the group-based communication interface, wherein the channel list pane, the channel messaging pane, and the thread communication pane are configured to be rendered within the defined display window as viewable simultaneously, and wherein content of the thread communication pane is particular to the first messaging communication.

2. The apparatus of claim 1 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

cause a thread actuator to be rendered within the channel messaging pane proximate the first messaging communication, wherein the thread request comprises user selection of the thread actuator; and receive, after receiving the user selection of the thread actuator, a thread communication message, wherein the thread communication message is rendered within the thread communication pane.

3. The apparatus of claim 2 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

in response to receiving the thread communication message, update the thread summary indicator within the channel messaging pane to indicate that the thread communication message was received.

4. The apparatus of claim 1 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

cause messaging communication information associated with the subsidiary channel-based thread communication to be rendered within the thread communication pane, wherein the messaging communication information is particular to the first messaging communication.

5. The apparatus of claim 1 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

receive a thread communication message, wherein the thread communication message is rendered within the thread communication pane and wherein the thread communication message is associated with a profile identifier, wherein the profile identifier is configured to associate the thread communication message with a user of the selected group-based communication channel; and

in response to receiving the thread communication message and the profile identifier, update a thread indication within the channel list pane, the thread indication indicating that the profile identifier was received in the thread communication message.

6. The apparatus of claim 1 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

receive a thread summary view request; and in response to receiving the thread summary view request, cause at least a portion of the subsidiary channel-based thread communication and at least a portion of one or more thread communication messages to be rendered within a thread summary communication pane.

7. The apparatus of claim 6 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

in response to receiving the thread summary view request, cause a notification to be rendered within the thread summary communication pane, wherein the notification indicates receipt of new thread communication messages that have not yet been rendered for viewing by a thread-associated user profile.

8. The apparatus of claim 1 , wherein the indication of the input indicating the selection of the thread summary indicator is a selected thread view request, and wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

in response to receiving the selected thread view request, cause the first messaging communication and one or more thread communication messages particular to the first messaging communication to be rendered within the thread communication pane.

9. The apparatus of claim 1 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

receive a follow request that is configured to activate notifications corresponding to the subsidiary channel-based thread communication; and

in response to receiving the follow request, update a thread indication within the channel list pane, the thread indication indicating that the follow request was received.

10. The apparatus of claim 1 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

receive a thread communication message in the thread communication pane, wherein the thread communication message is rendered within the thread communication pane;

receive a share request associated with the thread communication message in the thread communication pane; and

in response to receiving the share request, cause the thread communication message to be rendered within the channel messaging pane.

11. The apparatus of claim 10 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

receive a selected thread view request associated with the thread communication message rendered in the channel messaging pane; and

in response to receiving the selected thread view request associated with the thread communication message rendered in the channel messaging pane, cause the thread communication message to be rendered within the thread communication pane.

12. The apparatus of claim 1 , wherein the thread summary indicator indicates that the subsidiary channel-based thread communication is associated with the first messaging communication of the plurality of messaging communications, and further wherein the thread summary indicator comprises a thread count and a latency indicator.

13. The apparatus of claim 1 , wherein the computer coded instructions are further configured to, when executed by the processor, cause the apparatus to:

cause a first message input register to be rendered within the thread communication pane, the first message input register configured to receive a new thread communication message associated with the subsidiary channel-based thread communication, the first message input register being different than a second message input register rendered within the channel messaging pane.

14. The apparatus of claim 13 , wherein the first message input register within the thread communication pane and the second message input register within the channel messaging pane are configured to be rendered within the defined display window as viewable simultaneously.

15. A computer program product for generating a group-based communication interface within a defined display window of a user client device, the group-based communication interface defining a channel messaging pane and a channel list pane comprising a plurality of group-based communication channels, the computer program product comprising a non-transitory computer readable medium having computer program instructions stored therein, said computer program instructions when executed by a processor cause the computer program product to:

receive a first messaging communication associated with a selected group-based communication channel of the plurality of group-based communication channels, the selected group-based communication channel comprising a plurality of messaging communications;

cause the first messaging communication to be rendered within the channel messaging pane;

receive, from the user client device, a thread request to create a subsidiary channel-based thread communication, wherein the thread request is associated with the first messaging communication in the selected group-based communication channel;

in response to receiving the thread request, generate and transmit for display a thread summary indicator renderable within the channel messaging pane proximate the first messaging communication, wherein the thread summary indicator is configured to be selectable by any user of the selected group-based communication channel;

receive an indication of an input indicating a selection of the thread summary indicator; and

cause, based at least in part on receiving the indication of the input, rendering of the subsidiary channel-based thread communication to a thread communication pane within the group-based communication interface, wherein the thread communication pane is separate from the channel list pane and the channel messaging pane within the group-based communication interface, wherein the channel list pane, the channel messaging pane, and the thread communication pane are configured to be rendered within the defined display window as viewable simultaneously, and wherein content of the thread communication pane is particular to the first messaging communication.

16. The computer program product of claim 15 , wherein the thread summary indicator indicates that the subsidiary channel-based thread communication is associated with the first messaging communication of the plurality of messaging communications, and further wherein the thread summary indicator comprises a thread count and a latency indicator.

17. The computer program product of claim 15 , wherein the computer program instructions, when executed by a processor, further cause the computer program product to:

cause a thread actuator to be rendered within the channel messaging pane proximate the first messaging communication, wherein the thread request comprises user selection of the thread actuator; and

receive, after receiving the user selection of the thread actuator, a thread communication message, wherein the thread communication message is rendered within the thread communication pane.

18. The computer program product of claim 17 , wherein the computer program instructions, when executed by a processor, further cause the computer program product to:

in response to receiving the thread communication message, update the thread summary indicator within the channel messaging pane to indicate that the thread communication message was received.

19. The computer program product of claim 15 , wherein the computer program instructions, when executed by a processor, further cause the computer program product to:

cause a first message input register to be rendered within the thread communication pane, the first message input register configured to receive a new thread communication message associated with the subsidiary channel-based thread communication, the first message input register being different than a second message input register rendered within the channel messaging pane.

20. The computer program product of claim 19 , wherein the first message input register within the thread communication pane and the second message input register within the channel messaging pane are configured to be rendered within the defined display window as viewable simultaneously.

21. A computer-implemented method for generating a group-based communication interface within a defined display window of a user client device, the group-based communication interface defining a channel list pane comprising a plurality of group-based communication channels and a channel messaging pane, the computer-implemented method comprising:

receiving a first messaging communication associated with a selected group-based communication channel of the plurality of group-based communication channels, the selected group-based communication channel comprising a plurality of messaging communications;

causing the first messaging communication to be rendered within the channel messaging pane;

receiving, from the user client device, a thread request to create a subsidiary channel-based thread communication, wherein the thread request is associated with the first messaging communication in the selected group-based communication channel;

in response to receiving the thread request, generating and transmitting for display a thread summary indicator renderable within the channel messaging pane proximate the first messaging communication, wherein the thread summary indicator is configured to be selectable by any user of the selected group-based communication channel;

receiving an indication of an input indicating a selection of the thread summary indicator; and

causing, based at least in part on receiving the indication of the input, rendering of the subsidiary channel-based thread communication to a thread communication pane within the group-based communication interface, wherein the thread communication pane is separate from the channel list pane and the channel messaging pane within the group-based communication interface, wherein the channel list pane, the channel messaging pane, and the thread communication pane are configured to be rendered within the defined display window as viewable simultaneously, and wherein content of the thread communication pane is particular to the first messaging communication.

22. The computer-implemented method of claim 21 , further comprising:

causing a thread actuator to be rendered within the channel messaging pane proximate the first messaging communication, wherein the thread request comprises user selection of the thread actuator; and

receiving, after receiving the user selection of the thread actuator, a thread communication message, wherein the thread communication message is rendered within the thread communication pane.

23. The computer-implemented method of claim 22 , further comprising:

in response to receiving the thread communication message, updating the thread summary indicator within the channel messaging pane to indicate that the thread communication message was received.

24. The computer-implemented method of claim 21 , further comprising:

receiving a thread communication message, wherein the thread communication message is rendered within the thread communication pane and wherein the thread communication message is associated with a profile identifier, wherein the profile identifier is configured to associate the thread communication message with a user of the selected group-based communication channel; and

in response to receiving the thread communication message and the profile identifier, updating a thread indication within the channel list pane, the thread indication indicating that the profile identifier was received in the thread communication message.

25. The computer-implemented method of claim 21 , further comprising:

receiving a thread summary view request; and

in response to receiving the thread summary view request, cause at least a portion of the subsidiary channel-based thread communication and at least a portion of one or more thread communication messages to be rendered within a thread summary communication pane.

26. The computer-implemented method of claim 25 , further comprising:

in response to receiving the thread summary view request, cause a notification to be rendered within the thread summary communication pane, wherein the notification indicates receipt of new thread communication messages that have not yet been rendered for viewing by a thread-associated user profile.

27. The computer-implemented method of claim 21 , wherein the indication of the input indicating the selection of the thread summary indicator is a selected thread view request, the computer-implemented method further comprising:

in response to receiving the selected thread view request, cause the first messaging communication and one or more thread communication messages particular to the first messaging communication to be rendered within the thread communication pane.

28. The computer-implemented method of claim 21 , further comprising:

receiving a follow request that is configured to activate notifications corresponding to the subsidiary channel-based thread communication; and

in response to receiving the follow request, updating a thread indication within the channel list pane, the thread indication indicating that the follow request was received.

29. The computer-implemented method of claim 21 , further comprising:

receiving a thread communication message in the thread communication pane, wherein the thread communication message is rendered within the thread communication pane;

receiving a share request associated with the thread communication message in the thread communication pane; and

in response to receiving the share request, cause the thread communication message to be rendered within the channel messaging pane.

30. The computer-implemented method of claim 29 , further comprising:

receiving a selected thread view request associated with the thread communication message rendered in the channel messaging pane; and

in response to receiving the selected thread view request associated with the thread communication message rendered in the channel messaging pane, cause the thread communication message to be rendered within the thread communication pane.

31. The computer-implemented method of claim 21 , wherein the thread summary indicator indicates that the subsidiary channel-based thread communication is associated with the first messaging communication of the plurality of messaging communications, and further wherein the thread summary indicator comprises a thread count and a latency indicator.

Assignments (8)
CHANGE OF NAME Recorded Jan 11, 2023
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 062354/0100 →
MERGER Recorded Jan 11, 2023
From: SLACK TECHNOLOGIES, LLC
To: SALESFORCE.COM, INC.
Reel/Frame 062354/0073 →
MERGER AND CHANGE OF NAME Recorded Oct 1, 2021
From: SLACK TECHNOLOGIES, INC.; SLACK TECHNOLOGIES, LLC
To: SLACK TECHNOLOGIES, LLC
Reel/Frame 057683/0001 →
RELEASE OF SECURITY INTEREST IN PATENT COLLATERAL AT REEL/FRAME NO. 49332/0349 Recorded Jul 19, 2021
From: MORGAN STANLEY SENIOR FUNDING, INC.
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 057649/0882 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 11, 2019
From: BUTTERFIELD, DANIEL STEWART
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 049722/0187 →
PATENT SECURITY AGREEMENT Recorded May 30, 2019
From: SLACK TECHNOLOGIES, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 049332/0349 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2017
From: WALKER, NEIL
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 044388/0176 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 13, 2017
From: ROSANIA, PAUL; WATANABE, MILO; KANE, PATRICK; FLORIN, HUBERT; FAN, WAYNE
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 044386/0371 →
Continuity (2)
Provisional Application 62547605 · Aug 18, 2017
Related Publication 20190058680A1 · Feb 21, 2019
Cited By (2)
US 12,288,190 US 12,627,721