IP Library Granted Patent US 11,025,743
Granted Patent B2
US 11,025,743 · App. 16/399,784 · Granted Jun 1, 2021

Systems and methods for initiating processing actions utilizing automatically generated data of a group-based communication system

Inventors: Diogenes Brito (San Francisco, CA); Salman Suhail (San Francisco, CA); Bruce Sullivan (San Francisco, CA); Patricia Ang (Oakland, CA); Hye Jung Choi (San Mateo, CA); Prajna Shetty (San Francisco, CA); Andrew Fong (Menlo Park, CA); Michael Deng (San Francisco, CA); Stephen Sowole (San Francisco, CA); Tolga Akin (San Francisco, CA); Pranay Agarwal (San Francisco, CA)
Assignee: Slack Technologies, Inc.
H04L67/32G06F3/0482H04L12/1813H04L63/0807H04L63/104H04L65/1069H04L65/403H04L67/025H04L67/141H04L67/146H04L67/2842H04L67/306H04L67/42
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,025,743
App. No.
16/399,784
Granted
Jun 1, 2021
Kind
B2
Abstract

A group-based communication platform is configured to initialize processing actions executable via validated external resources. Moreover, the group-based communication platform may recommend specific processing actions to a user based at least in part on the user's activity in interacting with the group-based communication platform (e.g., via a client device), wherein such activity may be represented as environmental contextual data. Moreover, once the user selects a particular processing action for execution, the group-based communication retrieves at least a portion of the generated environmental contextual data to be passed to the validated external resource for use in executing the selected processing action.

Claims (74)

1. A system comprising:

one or more non-transitory memory storage repositories; and

one or more processors, wherein the one or more processors are collectively configured to:

receive environmental contextual data generated for a client device, wherein the environmental contextual data comprises one or more of: a current session identifier, an active group identifier, or an active channel identifier, and is generated based at least in part on interactions of the client device with a group-based communication platform during a current connection session;

generate relevance scores for each processing action of a plurality of processing actions identified within a stored processing action table based at least in part on the environmental contextual data generated for the client device, wherein the stored processing action table comprises the plurality of processing actions that are available to the client device via the group-based communication platform;

based at least in part on the relevance scores, generate a contextual processing action list of one or more of the plurality of processing actions; and

transmit the contextual processing action list of the one or more of the plurality of processing actions to the client device for presentation via a group-based communication interface.

2. The system of claim 1 , wherein the one or more processors are further configured to:

receive a selection of a processing action for initialization from the client device, wherein the processing action is selected from the contextual processing action list;

generate a container comprising routing data and payload data, wherein the routing data identifies the processing action selected from the stored processing action table to be performed by a validated external resource and the payload data comprises at least a portion of the environmental contextual data; and

provide the container to the validated external resource to initialize the identified processing action based at least in part on the payload data.

3. The system of claim 1 , wherein the one or more processors are further configured to receive the environmental contextual data generated at the client device.

4. The system of claim 1 , wherein the one or more processors are further configured to:

generate the environmental contextual data to represent user interactions with the group-based communication interface transmitted to the client device during the current connection session; and

store the environmental contextual data within a cache memory portion of the one or more non-transitory memory storage repositories; and

wherein the environmental contextual data provided within payload data is retrieved from the cache memory portion of the one or more non-transitory memory storage repositories.

5. The system of claim 1 , wherein the processing actions included within the contextual processing action list are provided for display in ranked order based at least in part on the determined relevance scores.

6. The system of claim 1 , wherein the one or more processors are further configured to receive data from the client device identifying one of a plurality of available processing action types; and

wherein generating relevance scores comprises generating relevance scores for a plurality of processing actions of the identified processing action type.

7. The system of claim 1 , wherein the processing actions included within the contextual processing action list comprise at least a first processing action executable by a first validated external resource and a second processing action executable by a second validated external resource.

8. The system of claim 1 , wherein transmitting the contextual processing action list to the client device comprises causing the client device to generate an interface component to display the contextual processing action within the group-based communication interface.

9. The system of claim 1 , wherein at least one of the plurality of processing actions is automatically generated based at least in part on historical data.

10. A computer program product comprising at least one non-transitory computer-readable storage medium having computer-readable program code portions stored therein, the computer-readable program code portions comprising an executable portion configured to:

receive environmental contextual data generated for a client device, wherein the environmental contextual data comprises one or more of: a current session identifier, an active group identifier, or an active channel identifier, and is generated based at least in part on interactions of the client device with a group-based communication platform during a current connection session;

generate relevance scores for each processing action of a plurality of processing actions identified within a processing action table stored in association with the computer-program product, wherein the relevance scores are generated based at least in part on the environmental contextual data generated for the client device;

based at least in part on the relevance scores, generate a contextual processing action list of one or more of the plurality of processing actions; and

transmit the contextual processing action list of the one or more of the plurality of processing actions to the client device for presentation via a group-based communication interface.

11. The computer program product of claim 10 , wherein the computer-readable program code portions further comprise an executable portion to:

receive a selection of a processing action for initialization from the client device, wherein the processing action is selected from the contextual processing action list;

generate a container comprising routing data and payload data, wherein the routing data identifies the processing action selected from the processing action table to be performed by a validated external resource and the payload data comprises at least a portion of the environmental contextual data; and

provide the container to the validated external resource to initialize the identified processing action based at least in part on the payload data.

12. The computer program product of claim 10 , wherein the computer-readable program code portions further comprise an executable portion to receive the environmental contextual data generated at the client device.

13. The computer program product of claim 10 , wherein the computer-readable program code portions further comprise an executable portion to:

generate the environmental contextual data to represent user interactions with the group-based communication interface transmitted to the client device during the current connection session; and

store the environmental contextual data within a cache memory portion of one or more non-transitory memory storage repositories; and

wherein the environmental contextual data provided within payload data is retrieved from the cache memory portion of the one or more non-transitory memory storage repositories.

14. The computer program product of claim 10 , wherein the processing actions included within the contextual processing action list are provided for display in ranked order based at least in part on the determined relevance scores.

15. The computer program product of claim 10 , wherein the computer-readable program code portions further comprise an executable portion to receive data from the client device identifying one of a plurality of available processing action types; and

wherein generating relevance scores comprises generating relevance scores for a plurality of processing actions of the identified processing action type.

16. The computer program product of claim 10 , wherein the processing actions included within the contextual processing action list comprise at least a first processing action executable by a first validated external resource and a second processing action executable by a second validated external resource.

17. The computer program product of claim 10 , wherein transmitting the contextual processing action list to the client device comprises causing the client device to generate an interface component to display the contextual processing action within the group-based communication interface.

18. The computer program product of claim 10 , wherein at least one of the plurality of processing actions is automatically generated based at least in part on historical data.

19. A computer-implemented method comprising:

receiving, via one or more processors, environmental contextual data generated for a client device, wherein the environmental contextual data comprises one or more of: a current session identifier, an active group identifier, or an active channel identifier, and is generated based at least in part on interactions of the client device with a group-based communication platform during a current connection session;

generating, via the one or more processors, relevance scores for each processing action of a plurality of processing actions identified within a stored processing action table based at least in part on the environmental contextual data generated for the client device;

based at least in part on the relevance scores, generating, via the one or more processors, a contextual processing action list of one or more of the plurality of processing actions; and

transmitting, via the one or more processors, the contextual processing action list of the one or more of the plurality of processing actions to the client device for presentation via a group-based communication interface.

20. The computer-implemented method of claim 19 , further comprising:

receiving a selection of a processing action for initialization from the client device, wherein the processing action is selected from the contextual processing action list;

generating a container comprising routing data and payload data, wherein the routing data identifies the processing action selected from the stored processing action table to be performed by a validated external resource and the payload data comprises at least a portion of the environmental contextual data; and

transmitting the container to the validated external resource to initialize the identified processing action based at least in part on the payload data.

21. The computer-implemented method of claim 19 , further comprising: receiving the environmental contextual data generated at the client device.

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

generating the environmental contextual data to represent user interactions with the group-based communication interface transmitted to the client device during the current connection session; and

storing the environmental contextual data within a cache memory portion of one or more non-transitory memory storage repositories; and

wherein the environmental contextual data provided within payload data is retrieved from the cache memory portion of the one or more non-transitory memory storage repositories.

23. The computer-implemented method of claim 19 , wherein the processing actions included within the contextual processing action list are provided for display in ranked order based at least in part on the determined relevance scores.

24. The computer-implemented method of claim 19 , further comprising receiving data from the client device identifying one of a plurality of available processing action types; and

wherein generating relevance scores comprises generating relevance scores for a plurality of processing actions of the identified processing action type.

25. The computer-implemented method of claim 19 , wherein the processing actions included within the contextual processing action list comprise at least a first processing action executable by a first validated external resource and a second processing action executable by a second validated external resource.

26. The computer-implemented method of claim 19 , wherein transmitting the contextual processing action list to the client device comprises causing the client device to generate an interface component to display the contextual processing action within the group-based communication interface.

27. The computer-implemented method of claim 19 , wherein at least one of the plurality of processing actions is automatically generated based at least in part on historical data.

28. The system of claim 1 , wherein the one or more processors are further configured to:

store the environmental contextual data within a cache memory;

determine a trigger event associated with a storage of the environmental contextual data; and

based at least in part on the trigger event, remove the environmental contextual data from the cache memory.

29. The computer program product of claim 10 , wherein the computer-readable program code portions further comprise an executable portion to:

store the environmental contextual data within a cache memory;

determine a trigger event associated with a storage of the environmental contextual data; and

based at least in part on the trigger event, remove the environmental contextual data from the cache memory.

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

storing the environmental contextual data within a cache memory;

determining a trigger event associated with a storage of the environmental contextual data; and

based at least in part on the trigger event, removing the environmental contextual data from the cache memory.

Assignments (6)
MERGER Recorded Jan 11, 2023
From: SLACK TECHNOLOGIES, LLC
To: SALESFORCE.COM, INC.
Reel/Frame 062354/0073 →
CHANGE OF NAME Recorded Jan 11, 2023
From: SALESFORCE.COM, INC.
To: SALESFORCE, INC.
Reel/Frame 062354/0100 →
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 Mar 20, 2020
From: BRITO, DIOGENES; SUHAIL, SALMAN; SULLIVAN, BRUCE; ANG, PATRICIA; CHOI, HYE JUNG; SHETTY, PRAJNA; FONG, ANDREW; DENG, MICHAEL; SOWOLE, STEPHEN; AKIN, TOLGA; AGARWAL, PRANAY
To: SLACK TECHNOLOGIES, INC.
Reel/Frame 052177/0634 →
PATENT SECURITY AGREEMENT Recorded May 30, 2019
From: SLACK TECHNOLOGIES, INC.
To: MORGAN STANLEY SENIOR FUNDING, INC., AS COLLATERAL AGENT
Reel/Frame 049332/0349 →
Continuity (2)
Continuation 16399730 · Apr 30, 2019
Related Publication 20200348802A1 · Nov 5, 2020