Distributed Contact Center State Maintenance via Publish-Subscribe Bus
Find Innovative SolutionsGenerate Solutions
Solution Overview
Problem
Contact center monitoring systems face performance bottlenecks as they scale, making it difficult to handle large numbers of calls and agents without significant degradation in performance, as centralized database approaches become overwhelmed.
Innovation Solution
A distributed system architecture where device controllers and call controllers monitor contact center objects and relay state updates to data aggregation nodes, which aggregate and share data to form full state information, using a publish-subscribe bus for efficient data distribution and merging partial state information into full state information.
Engineering Contradictions & Design Principles
Engineering Contradiction Analysis
1Ease of manufacture
If a centralized database approach is used to maintain contact center state information, then the system is simple to implement for small installations, but performance bottlenecks occur as the contact center scales to larger sizes
Solution Approach 1:
The patent divides the centralized database system into multiple distributed database nodes, each handling a subset of contact center state information. Controllers are also segmented into multiple instances distributed across the network. This segmentation eliminates the single-point bottleneck while maintaining system simplicity through modular architecture.
Solution Approach 2:
The patent transitions from a single-dimensional centralized architecture to a multi-dimensional distributed architecture by introducing spatial distribution of database nodes and controllers across multiple servers and network locations. This dimensional change allows parallel processing and eliminates performance bottlenecks while preserving ease of implementation through standardized node interfaces.
2Quantity of substance
If the contact center size increases, then more calls and agents can be handled, but the load on the single server increases rapidly causing performance degradation
Solution Approach 1:
The patent segments the database into multiple distributed nodes, each handling a portion of the contact center state information. As the number of calls and agents increases, new database nodes can be added to distribute the load, preventing performance degradation while accommodating growth in system capacity.
Solution Approach 2:
The patent combines multiple database nodes and controller instances into a unified distributed system that functions as a single logical entity. This merging allows the system to handle increased quantities of calls and agents while maintaining performance through coordinated operation of distributed components.
3Productivity
If a distributed architecture is used to avoid performance bottlenecks, then the system becomes scalable to larger installations, but the system complexity increases
Solution Approach 1:
The patent implements universal interfaces and standardized protocols that allow distributed database nodes and controllers to function interchangeably. Each node can perform multiple functions (storing state information, processing queries, coordinating with other nodes), which simplifies the overall system architecture despite the distributed nature, reducing complexity while maintaining scalability.
Solution Approach 2:
The patent introduces intermediary components such as standardized communication protocols and coordination mechanisms that mediate between distributed database nodes and controllers. These intermediaries abstract the complexity of distributed coordination, presenting a simplified interface to users and applications while enabling scalable distributed operation.
Data Source
AI summary
A system and/or a method of distributed maintenance of contact center state including the state of contact center objects which may include directory numbers and agents. Device controllers and call controllers are used to monitor device and call information. Data aggregation nodes are connected to the device controllers and call controllers. The data aggregation nodes share directory number state information and agent state information via a publish-subscribe bus, and aggregate state information to form full state information.


