IP Library Granted Patent US 9,338,299
Granted Patent B2
US 9,338,299 · App. 14/754,459 · Granted May 10, 2016

Distributed constraint-based omptimized routing of interactions

Inventors: Alan McCord (San Ramon, CA); Brian Galvin (Seabeck, WA)
Assignee: NEWVOICEMEDIA, LTD.
H04M3/5232G06Q30/01H04L45/44H04M3/5183H04M3/5238
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 9,338,299
App. No.
14/754,459
Granted
May 10, 2016
Kind
B2
Abstract

A system for optimized and distributed routing of interactions, comprising a plurality of media servers operating adapted to handle interactions of one or more specific media types, a statistics server, a routing database, and a routing server. Upon receiving or initiating an interaction of a specific media type, a first media server from the media servers sends a route request message comprising at least an interaction identifier and a collection of interaction-specific data to the routing server, the statistics server receives event notifications from the media servers and computes one or more statistics, and the routing server executes, using statistical data from the statistics server and data from the routing database, a routing script comprising a constraint-based optimization process in response to the route request message and sends a response to the first media server directing it to route the interaction to a specific target resource.

Claims (15)

1. A system for routing of interactions, the system comprising:

a plurality of media servers operating on network-attached computers, each adapted to handle interactions of one or more specific media types;

a routing server comprising a routing database and operating on a network-attached computer;

wherein upon receiving or initiating an interaction of a specific media type, a first media server from the plurality of media servers sends a route request message comprising at least an interaction identifier and a collection of interaction-specific data to the routing server;

wherein the routing server periodically executes, using data from the routing database, a routing script and sends routing instructions to the plurality of media servers; and

wherein the routing script comprises at least the setup and execution of a constraint-based optimization process that matches the plurality of interactions requiring routing to one or more of a plurality of resources that may handle interactions, the constraint-based optimization process comprising the steps of:

(1) initializing parameters including global constraints;

(2) for each time increment: (i) computing a time to wait for each resource; (ii) discarding resources whose time to wait exceeds a configured threshold; (iii) determines a wait time for each interaction; (iv) computes an indicia of cost for a plurality of resource-interaction pairs; (v) constructs a problem matrix; and optimizes interaction distribution subject to problem constraints; and (vi) sends the resulting distribution of interactions to resources to the routing server.

2. A method for constraint-based optimization of routing of interactions, the method comprising the steps of:

(a) receiving or initiating a plurality of interactions at a plurality of media servers stored and operating on a plurality of network-attached computers;

(b) sending a plurality of route requests from the plurality of media servers to a routing server stored and operating on a network-attached computer, the routing server comprising a routing database;

(c) periodically executing, at the routing server and using data from the routing database, a routing script, wherein the routing script comprises at least the setup and execution of a constraint-based optimization process that matches the plurality of interactions requiring routing to one or more of a plurality of resources that may handle interactions, the constraint-based optimization process comprising the steps of:

(1) initializing parameters including global constraints;

(2) for each time increment: (i) computing a time to wait for each resource; (ii) discarding resources whose time to wait exceeds a configured threshold; (iii) determines a wait time for each interaction; (iv) computes an indicia of cost for a plurality of resource-interaction pairs; (v) constructs a problem matrix; and optimizes interaction distribution subject to problem constraints; and (vi) sends the resulting distribution of interactions to resources to the routing server; and

(d) sending a plurality of routing instruction messages from the routing server to the plurality of media servers comprising at least an interaction identifier and a target resource.

Assignments (4)
CHANGE OF NAME Recorded Feb 3, 2022
From: NEWVOICEMEDIA LIMITED
To: VONAGE BUSINESS LIMITED
Reel/Frame 058879/0481 →
CORRECTIVE ASSIGNMENT TO CORRECT THE RECEIVING PARTY PREVIOUSLY RECORDED AT REEL: 038754 FRAME: 0042. ASSIGNOR(S) HEREBY CONFIRMS THE ASSIGNMENT. Recorded Jun 12, 2018
From: GALVIN, BRIAN; MCCORD, ALAN
To: NEWVOICEMEDIA LTD.
Reel/Frame 046364/0950 →
SECURITY INTEREST Recorded Dec 21, 2017
From: NEWVOICEMEDIA LIMITED
To: SILICON VALLEY BANK
Reel/Frame 044462/0691 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded May 31, 2016
From: GALVIN, BRIAN; MCCORD, ALAN
To: NEWVOICEMEDIA, LTD.
Reel/Frame 038754/0042 →
Continuity (7)
Continuation 13835933 · Mar 15, 2013
Continuation In Part 13602048 · Aug 31, 2012
Continuation In Part 13550587 · Jul 16, 2012
Continuation In Part 13357502 · Jan 24, 2012
Provisional Application 61672240 · Jul 16, 2012
Provisional Application 61607909 · Mar 7, 2012
Related Publication 20150304498A1 · Oct 22, 2015