Redundant CTI Driver System with Automatic Failover

Resolve Bottlenecks,
Find Innovative Solutions
Generate Solutions

Solution Overview

Problem

Current computer telephony interface (CTI) drivers lack automatic failover capabilities, leading to reduced uptime and manual intervention requirements in case of failures, which degrades customer service and increases downtime in call center operations.

Innovation Solution

Implementing a redundant CTI driver system with primary and secondary drivers and monitors that automatically switch in case of failures, using HTTP monitoring to ensure continuous communication services between applications and CTI servers, even if one driver fails.

Engineering Contradictions & Design Principles

VSEngineering Contradiction Analysis

1Reliability

If a single CTI driver is used to interface the CTI server with the application, then the device complexity is low, but the reliability deteriorates due to lack of failover capabilities

Engineering Contradiction:
Improvedriver availabilityVSAvoiddriver system complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

The system is segmented into multiple independent CTI driver instances (primary and secondary drivers) that can operate autonomously. Each driver is a separate process that can be monitored and controlled independently, allowing failover without requiring the entire system to be redesigned as a complex monolithic structure.

Inventive Principle:
Principle #1Segmentation

Solution Approach 2:

A secondary CTI driver is pre-configured and kept in standby mode before any failure occurs. The monitor process continuously checks the primary driver's status and is ready to activate the secondary driver immediately upon detecting a failure, eliminating the need for complex real-time decision-making during critical failure moments.

Inventive Principle:
Principle #10Preliminary action

2Loss of time

If manual intervention is implemented for driver failures, then the device complexity is low, but the loss of time increases due to manual switching requirements

Engineering Contradiction:
ImprovedowntimeVSAvoidfailure response automation
Core Design Contradiction:
Loss of timeVSExtent of automation

Solution Approach 1:

The monitor process continuously monitors the primary CTI driver's operation status and provides feedback about its health. This automated feedback mechanism detects failures immediately and triggers the failover process without human intervention, significantly reducing downtime compared to manual monitoring and switching.

Inventive Principle:
Principle #23Feedback

Solution Approach 2:

The system performs self-diagnosis and self-recovery through automated monitoring and failover. When the monitor detects a primary driver failure, it automatically activates the secondary driver without requiring human operators to diagnose or switch drivers, enabling the system to service itself during failure events.

Inventive Principle:
Principle #25Self-service

3Reliability

If redundant CTI drivers with automatic failover are implemented, then the reliability is improved, but the device complexity increases due to multiple drivers and monitors

Engineering Contradiction:
Improvesystem availabilityVSAvoiddriver architecture complexity
Core Design Contradiction:
ReliabilityVSDevice complexity

Solution Approach 1:

Instead of creating a complex single system with built-in redundancy, the solution uses a simple copy of the primary driver (secondary driver) that mirrors its functionality. This copying approach provides failover capability without requiring complex architecture, as the secondary driver is essentially a duplicate that can take over if the primary fails.

Inventive Principle:
Principle #26Copying

Solution Approach 2:

A monitor process acts as an intermediary between the primary/secondary drivers and the application. This intermediary handles the complexity of monitoring, failure detection, and driver switching, allowing the drivers themselves to remain relatively simple while the monitor manages the overall system reliability.

Inventive Principle:
Principle #24Intermediary (Mediator)

4Productivity

If primary CTI driver failures occur without automatic switching, then the ease of operation is maintained with simple driver configuration, but the productivity deteriorates due to service interruptions

Engineering Contradiction:
Improvecustomer service continuityVSAvoiddriver management simplicity
Core Design Contradiction:
ProductivityVSEase of operation

Solution Approach 1:

The secondary driver is pre-configured and ready before any failure occurs, with all necessary connections and settings prepared in advance. This preliminary setup ensures that when failover is needed, the secondary driver can immediately take over without requiring complex reconfiguration or manual intervention, maintaining productivity while keeping operations simple.

Inventive Principle:
Principle #10Preliminary action

Solution Approach 2:

The system automatically manages driver failures through self-service mechanisms including automated monitoring, failure detection, and failover execution. This eliminates the need for human operators to manually manage driver switches, maintaining ease of operation while ensuring continuous customer service through automatic productivity preservation.

Inventive Principle:
Principle #25Self-service

Data Source

PatentUS8644455B2High availability architecture for computer telephony interface driver
Publication Date: 2014.02.04 AT&T INTELLECTUAL PROPERTY I L P
  • US8644455B2 patent drawing
  • US8644455B2 patent drawing
  • US8644455B2 patent drawing

AI summary

Systems, method, and media for providing communication services between an application and a computer telephony interface server are provided. One of a plurality of computer telephony interface drivers is launched as a primary computer telephony interface driver to interface the application with the computer telephony interface server. The computer telephony interface drivers are monitored with a plurality of monitors. Each of the monitors is associated with one of the computer telephony interface drivers and monitors a status of another of the computer telephony interface drivers. A failure of the primary computer telephony interface driver is detected with a secondary monitor. The secondary monitor monitors the primary computer telephony interface driver and is associated with a secondary computer telephony interface driver. The secondary computer telephony interface driver is launched with the secondary monitor in response to the secondary monitor detecting the failure of the primary computer telephony interface driver.