IP Library Granted Patent US 12699550
Granted Patent B2
US 12699550 · App. 18/083,718 · Granted Aug 4, 2026

Programmable cloud-based communication platform

Inventors: Daniel Cruse (San Francisco, CA); Charlie Helin (Murrieta, CA); Dipesh Chauhan (San Francisco, CA); Amool Gupta (Berkeley, CA); Aymen Naim (Walnut Creek, CA); Torsten Budesheim (Mill Valley, CA)
Assignee: Twilio Inc.
G06F8/33G06F8/22G06F9/451G06F9/54G06F9/541G06F9/542G06Q10/0633G06Q30/016
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 12699550
App. No.
18/083,718
Granted
Aug 4, 2026
Kind
B2
Abstract

A method of managing a set of interactions associated with one or more computerized systems is disclosed. An API for managing an interaction detail record associated with an interaction of the set of interactions is provided. Based on one or more parameters being received from one or more client systems of a plurality of client systems via one or more event handlers, updating of one or more values of one or more user-defined attributes stored in the interaction detail record is performed. Based on the performing of the updating of the one or more values of the one or more user-defined attributes, one or more event handlers for providing the one or more values of the one or more user-defined attributes to the one or more client systems are invoked.

Claims (32)

1 . A system comprising:

one or more computer processors;

one or more computer memories;

a set of instructions incorporated into the one or more computer memories, the set of instructions configuring the one or more computer processors to perform operations, the operations comprising:

providing an API for managing, in real-time during an active customer communication interaction, an interaction detail record associated with a customer communication interaction of a set of customer communication interactions, the interaction detail record comprising contextual data about the customer communication interaction and being stored in a persistent storage that is dynamically accessible and updateable across a plurality of client systems and a plurality of communication channels to enable orchestration of the customer communication interaction across the plurality of communications channels simultaneously, the API including one or more event handlers for updating one or more values of one or more user-defined contextual attributes associated with the customer communication interaction when one or more events pertaining to the customer communication interaction occur, the API further including one or more event handlers for providing the one or more values of the one or more user-defined contextual attributes to the plurality of client systems when the one or more values are updated;

based on one or more parameters received from one or more client systems of the plurality of client systems via the one or more event handlers for updating the one or more values, performing the updating of the one or more values of the one or more user-defined contextual attributes;

based on the performing of the updating of the one or more values of the one or more user-defined contextual attributes, invoking the one or more event handlers for providing the one or more values of the one or more user-defined contextual attributes to the plurality of client systems; and dynamically propagating, via the invoked event handlers, the updated one or more values to the plurality of client systems while the customer communication interaction remains active, wherein the plurality of client systems comprise client systems of one or more users actively participating in the customer communication interaction.

2 . The system of claim 1 , wherein a first communication channel of plurality of communication channels is a voice channel and a second communication channel of the plurality of communication channels is a messaging channel.

3 . The system of claim 1 , wherein the one or more user-defined attributes represent a context associated with a segment associated with the customer communication interaction.

4 . The system of claim 3 , wherein the segment corresponds to a portion of the interaction detail record that occurs between a plurality of state changes associated with the customer communication interaction.

5 . The system of claim 1 , wherein the API further includes one or more event handlers for updating one or more user routing attributes for one or more users associated with a customer communication interaction when one or more additional events occur.

6 . The system of claim 5 , wherein the one or more user routing attributes include data pertaining to how the one or more users are to be routed.

7 . The system of claim 6 , wherein the one or more user routing attributes include one or more skills of the one or more users.

8 . A method comprising:

providing an API for managing, in real-time during an active customer communication interaction, an interaction detail record associated with a customer communication interaction of a set of customer communication interactions, the interaction detail record comprising contextual data about the customer communication interaction and being stored in a persistent storage that is dynamically accessible and updateable across a plurality of client systems and a plurality of communication channels to enable orchestration of the customer communication interaction across the plurality of communications channels simultaneously, the API including one or more event handlers for updating one or more values of one or more user-defined contextual attributes associated with the customer communication interaction when one or more events pertaining to the customer communication interaction occur, the API further including one or more event handlers for providing the one or more values of the one or more user-defined contextual attributes to the plurality of client systems when the one or more values are updated;

based on one or more parameters received from one or more client systems of the plurality of client systems via the one or more event handlers for updating the one or more values, performing the updating of the one or more values of the one or more user-defined contextual attributes;

based on the performing of the updating of the one or more values of the one or more user-defined contextual attributes, invoking the one or more event handlers for providing the one or more values of the one or more user-defined contextual attributes to the plurality of client systems; and dynamically propagating, via the invoked event handlers, the updated one or more values to the plurality of client systems while the customer communication interaction remains active, wherein the plurality of client systems comprise client systems of one or more users actively participating in the customer communication interaction.

9 . The method of claim 8 , wherein a first communication channel of plurality of communication channels is a voice channel and a second communication channel of the plurality of communication channels is a messaging channel.

10 . The method of claim 8 , wherein the one or more user-defined contextual attributes represent a context associated with a segment associated with the interaction.

11 . The method of claim 10 , wherein the segment corresponds to a portion of the interaction detail record that occurs between a plurality of state changes associated with the customer communication interaction.

12 . The method of claim 8 , wherein the API further includes one or more event handlers for updating one or more user routing attributes for one or more users associated with a customer communication interaction when one or more additional events occur.

13 . The method of claim 12 , wherein the one or more user routing attributes include data pertaining to how the one or more users are to be routed.

14 . The method of claim 13 , wherein the one or more user routing attributes include one or more skills of the one or more users.

15 . A non-transitory computer-readable storage medium storing a set of instructions that, when executed by one or more computer processors, causes the one or more computer processors to perform operations, the operations comprising:

providing an API for managing, in real-time during an active customer communication interaction, an interaction detail record associated with a customer communication interaction of a set of customer communication interactions, the interaction detail record comprising contextual data about the customer communication interaction and being stored in a persistent storage that is dynamically accessible and updateable across a plurality of client systems and a plurality of communication channels to enable orchestration of the customer communication interaction across the plurality of communications channels simultaneously, the API including one or more event handlers for updating one or more values of one or more user-defined contextual attributes associated with the customer communication interaction when one or more events pertaining to the customer communication interaction occur, the API further including one or more event handlers for providing the one or more values of the one or more user-defined contextual attributes to the plurality of client systems when the one or more values are updated;

based on one or more parameters received from one or more client systems of the plurality of client systems via the one or more event handlers for updating the one or more values, performing the updating of the one or more values of the one or more user-defined contextual attributes;

based on the performing of the updating of the one or more values of the one or more user-defined contextual attributes, invoking the one or more event handlers for providing the one or more values of the one or more user-defined contextual attributes to the plurality of client systems; and dynamically propagating, via the invoked event handlers, the updated one or more values to the plurality of client systems while the customer communication interaction remains active, wherein the plurality of client systems comprise client systems of one or more users actively participating in the customer communication interaction.

16 . The non-transitory computer-readable storage medium of claim 15 , wherein a first communication channel of plurality of communication channels is a voice channel and a second communication channel of the plurality of communication channels is a messaging channel.

17 . The non-transitory computer-readable storage medium of claim 15 , wherein the one or more user-defined contextual attributes represent a context associated with a segment associated with the customer communication interaction.

18 . The non-transitory computer-readable storage medium of claim 17 , wherein the segment corresponds to a portion of the interaction detail record that occurs between a plurality of state changes associated with the customer communication interaction.

19 . The non-transitory computer-readable storage medium of claim 15 , wherein the API further includes one or more event handlers for updating one or more user routing attributes for one or more users associated with an interaction when one or more additional events occur.

20 . The non-transitory computer-readable storage medium of claim 19 , wherein the one or more user routing attributes include data pertaining to how the one or more users are to be routed.