IP Library Granted Patent US 12,417,219
Granted Patent B2
US 12,417,219 · App. 18/505,900 · Granted Sep 16, 2025

Technologies for filtering and querying Trie data structures for generating real-time bot flow visualizations and analytics

Inventor: Ankit Pat (Menlo Park, CA)
Assignee: Genesys Cloud Services, Inc.
G06F16/2246G06F16/23G06F16/24573
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 12,417,219
App. No.
18/505,900
Granted
Sep 16, 2025
Kind
B2
Abstract

A method for filtering a Trie data structure for real-time bot flow visualization according to an embodiment includes receiving data associated with the Trie data structure, wherein the Trie data structure includes data for a plurality of contact center bot flows of an organization, and wherein each bot flow of the plurality of contact center bot flows includes at least one event, receiving a user selection associated with filtering the Trie data structure for modified visualization of the Trie data structure, performing a search of the Trie data structure to identify events of the Trie data structure to be deleted, deleting the identified events to generate an updated Trie data structure, updating event attributes of remaining events of the updated Trie data structure in response to deleting the identified events, and providing the updated Trie data structure for real-time bot flow visualization.

Claims (35)

1. A method for filtering a Trie data structure for real-time bot flow visualization, the method comprising:

receiving, by a computing system, data associated with the Trie data structure, wherein the Trie data structure includes data for a plurality of contact center bot flows of an organization, and wherein each bot flow of the plurality of contact center bot flows includes at least one event;

receiving, by the computing system, a user selection associated with filtering the Trie data structure for modified visualization of the Trie data structure, wherein receiving the user selection associated with filtering the Trie data structure comprises receiving a user request to filter the Trie data structure to include only events that include a selected event attribute value;

performing, by the computing system, a search of the Trie data structure to identify events of the Trie data structure to be deleted, wherein performing the search of the Trie data structure to identify events of the Trie data structure to be deleted comprises identifying events of the Trie data structure that do not include the selected event attribute value;

deleting, by the computing system, the identified events to generate an updated Trie data structure, wherein deleting the identified events to generate the updated Trie data structure comprises updating parent-child relationships of events impacted by deletion of the identified events;

updating, by the computing system, event attributes of remaining events of the updated Trie data structure in response to deleting the identified events; and

providing, by the computing system, the updated Trie data structure for real-time bot flow visualization.

2. The method of claim 1 , wherein receiving the user selection associated with filtering the Trie data structure comprises receiving a user request to filter the Trie data structure by a selected bot flow.

3. The method of claim 2 , wherein performing the search of the Trie data structure to identify events of the Trie data structure to be deleted comprises identifying events of the Trie data structure that are not associated with the selected bot flow.

4. The method of claim 1 , further comprising identifying, by the computing system and subsequent to deleting the identified events, one or more sub-Trie data structures of an intermediate Trie data structure, wherein each sub-Trie data structure of the one or more sub-Trie data structures is a parent event having an updated parent-child relationship.

5. The method of claim 4 , further comprising merging, by the computing system, each of the one or more sub-Tries to generate the updated Trie data structure.

6. The method of claim 1 , wherein performing the search of the Trie data structure comprises performing a depth first search of the Trie data structure.

7. A system for filtering a Trie data structure for real-time bot flow visualization, the system comprising:

at least one processor; and

at least one memory comprising a plurality of instructions stored thereon that, in response to execution by the at least one processor, causes the system to:

receive data associated with the Trie data structure, wherein the Trie data structure includes data for a plurality of contact center bot flows of an organization, and wherein each bot flow of the plurality of contact center bot flows includes at least one event;

receive a user selection associated with filtering the Trie data structure for modified visualization of the Trie data structure, wherein to receive the user selection associated with filtering the Trie data structure comprises to receive a user request to filter the Trie data structure to include only events that include a selected event attribute value;

perform a search of the Trie data structure to identify events of the Trie data structure to be deleted, wherein to perform the search of the Trie data structure to identify events of the Trie data structure to be deleted comprises to identify events of the Trie data structure that do not include the selected event attribute value;

delete the identified events to generate an updated Trie data structure, wherein to delete the identified events to generate the updated Trie data structure comprises to update parent-child relationships of events impacted by deletion of the identified events;

update event attributes of remaining events of the updated Trie data structure in response to deleting the identified events; and

provide the updated Trie data structure for real-time bot flow visualization.

8. The system of claim 7 , wherein to receive the user selection associated with filtering the Trie data structure comprises to receive a user request to filter the Trie data structure by a selected bot flow.

9. The system of claim 8 , wherein to perform the search of the Trie data structure to identify events of the Trie data structure to be deleted comprises to identify events of the Trie data structure that are not associated with the selected bot flow.

10. The system of claim 7 , wherein the plurality of instructions further causes the system to identify, subsequent to deletion of the identified events, one or more sub-Trie data structures of an intermediate Trie data structure, wherein each sub- Trie data structure of the one or more sub-Trie data structures is a parent event having an updated parent-child relationship.

11. The system of claim 10 , wherein the plurality of instructions further causes the system to merge each of the one or more sub-Tries to generate the updated Trie data structure.

12. The system of claim 7 , wherein to perform the search of the Trie data structure comprises to perform a depth first search of the Trie data structure.

13. One or more non-transitory machine-readable storage media comprising a plurality of instructions stored thereon that, in response to execution by a computing system, causes the computing system to:

receive data associated with a Trie data structure, wherein the Trie data structure includes data for a plurality of contact center bot flows of an organization, and wherein each bot flow of the plurality of contact center bot flows includes at least one event;

receive a user selection associated with filtering the Trie data structure for modified visualization of the Trie data structure, wherein the user selection requests that the Trie data structure be filtered to include only journeys that have a selected event attribute value;

perform a search of the Trie data structure to identify events of the Trie data structure to be deleted, wherein to perform the search of the Trie data structure to identify events of the Trie data structure to be deleted comprises to identify events of the Trie data structure that do not include the selected event attribute value;

delete the identified events to generate an updated Trie data structure, wherein to delete the identified events to generate the updated Trie data structure comprises to update parent-child relationships of events impacted by deletion of the identified events; and

provide the updated Trie data structure for real-time bot flow visualization.

14. The one or more non-transitory machine-readable storage media of claim 13 , wherein to perform the search of the Trie data structure comprises to perform a depth first search of the Trie data structure.

15. The one or more non-transitory machine-readable storage media of claim 13 , wherein the plurality of instructions further causes the computing system to identify, subsequent to deletion of the identified events, one or more sub-Trie data structures of an intermediate Trie data structure, wherein each sub-Trie data structure of the one or more sub-Trie data structures is a parent event having an updated parent-child relationship.

16. The one or more non-transitory machine-readable storage media of claim 15 , wherein the plurality of instructions further causes the computing system to merge each of the one or more sub-Tries to generate the updated Trie data structure.

Assignments (3)
NOTICE OF SUCCESSION OF SECURITY INTERESTS AT REEL/FRAME 067718/0823 Recorded Feb 4, 2025
From: BANK OF AMERICA, N.A., AS RESIGNING AGENT
To: GOLDMAN SACHS BANK USA, AS SUCCESSOR AGENT
Reel/Frame 070098/0300 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Dec 11, 2024
From: PAT, ANKIT
To: GENESYS CLOUD SERVICES, INC.
Reel/Frame 069547/0978 →
SECURITY AGREEMENT Recorded Jun 11, 2024
From: GENESYS CLOUD SERVICES, INC.
To: BANK OF AMERICA, N.A., AS COLLATERAL AGENT
Reel/Frame 067718/0823 →
Continuity (1)
Related Publication 20250156389A1 · May 15, 2025
References Cited (8)
US 11252113B1 · Orkin · 2022 [cited by examiner]
US 12153556B1 · Anand · 2024 [cited by examiner]
US 20140032555A1 · Kiff · 2014 [cited by examiner]
US 20170109426A1 · Arora · 2017 [cited by examiner]
US 20210279225A1 · Jeon · 2021 [cited by examiner]
US 20240202096A1 · Pat · 2024 [cited by examiner]
CN 113779176A · 2021 [cited by applicant]
International Search Report and Written Opinion regarding the co-pending PCT application, having application No. PCT/US2024/055032, mailed on Jan. 27, 2025. [cited by applicant]