US 11,659,021 B2
Asynchronous distributed modular function calling
Michael Brevoort, Littleton, CO (US); Stephen Wood, Mill Valley, CA (US); Allen James Ferrick, San Francisco, CA (US); Brad Harris, Castle Rock, CO (US); Leslie Newell, Aurora, CO (US); and Melissa Khuat, San Francisco, CA (US)
Assigned to SlackTechnologies, LLC, San Francisco, CA (US)
Filed by Slack Technologies, LLC, San Francisco, CA (US)
Filed on Jan. 24, 2022, as Appl. No. 17/582,486.
Application 17/582,486 is a continuation of application No. 17/152,464, filed on Jan. 19, 2021, granted, now 11,245,744.
Prior Publication US 2022/0232061 A1, Jul. 21, 2022
Int. Cl. H04L 67/02 (2022.01); H04L 41/22 (2022.01); H04L 67/306 (2022.01); H04L 67/60 (2022.01); H04L 67/133 (2022.01); H04L 67/104 (2022.01)
CPC H04L 67/02 (2013.01) [H04L 41/22 (2013.01); H04L 67/1044 (2013.01); H04L 67/133 (2022.05); H04L 67/306 (2013.01); H04L 67/60 (2022.05)] 20 Claims
OG exemplary drawing
 
1. One or more non-transitory computer-readable media storing that store computer-executable instructions that, when executed by a processor, perform a method for providing reusable functions within a group-based communication system, the method comprising:
receiving, from a first user of a first organization, a first function definition for a first function, the first function definition comprising one or more trigger conditions for the first function;
receiving, from a second user of a second organization distinct from the first organization, a second function definition for a second function, the second function definition comprising one or more trigger conditions for the second function;
invoking the first function within an external application responsive to an API call from a group-based communication system application;
receiving a callback including one or more return values for the first function after execution of the first function based on an asynchronous request; and
responsive to receiving the one or more return values, invoking the second function with function parameters associated with the one or more return values.