Method and system for hierarchy based contact routing
First Claim
Patent Images
1. A method for allocating resources in a contact center comprising:
- a) maintaining a network of nodes, wherein said network of nodes is a hierarchical network, said network of nodes comprising;
a plurality of service nodes, wherein each service node from said plurality of service nodes has no more than one parent node and wherein each service node from said plurality of service nodes has one or more child nodes, wherein each of said child nodes is either a service node or a resource node; and
a plurality of resource nodes;
b) enqueuing a first contact at a first service node from the plurality of service nodes based on a routing recommendation for said first contact, wherein said routing recommendation is based at least in part on a set of real time resource availability data stored in a computer readable medium;
c) dequeuing said first contact from said first service node to a first resource node from said plurality of resource nodes based at least in part on a path between said first service node and said first resource node;
d) updating said set of real time resource availability data stored in said computer readable medium to reflect that said first contact has been dequeued to said first resource node;
e) servicing said first contact using a resource corresponding to said first resource node;
f) after the first contact has been serviced, updating said set of real time resource availability data stored in said computer readable medium to reflect that the resource corresponding to the first resource node is no longer servicing said first contact;
g) enqueuing a second contact at the first service node from said plurality of service nodes;
h) determining whether to dequeue said second contact from said first service node based on a first dequeuing strategy;
i) if said second contact is dequeued from said first service node, determining whether to requeue said second contact at;
i) the first resource node;
orii) a second service node;
based on;
i) a conflict resolution strategy; and
ii) the set of real time resource availability data andj) requeuing said second contact at said second service node, wherein said second service node is a parent node of said first service node.
9 Assignments
0 Petitions
Accused Products
Abstract
Resource allocation in a contact center can be performed using a network of nodes. Such a network of nodes can be organized according into resource nodes, domain nodes, and service nodes, with paths from the domain nodes, through the service nodes, to the resource nodes being used in the allocation.
27 Citations
18 Claims
-
1. A method for allocating resources in a contact center comprising:
-
a) maintaining a network of nodes, wherein said network of nodes is a hierarchical network, said network of nodes comprising; a plurality of service nodes, wherein each service node from said plurality of service nodes has no more than one parent node and wherein each service node from said plurality of service nodes has one or more child nodes, wherein each of said child nodes is either a service node or a resource node; and a plurality of resource nodes; b) enqueuing a first contact at a first service node from the plurality of service nodes based on a routing recommendation for said first contact, wherein said routing recommendation is based at least in part on a set of real time resource availability data stored in a computer readable medium; c) dequeuing said first contact from said first service node to a first resource node from said plurality of resource nodes based at least in part on a path between said first service node and said first resource node; d) updating said set of real time resource availability data stored in said computer readable medium to reflect that said first contact has been dequeued to said first resource node; e) servicing said first contact using a resource corresponding to said first resource node; f) after the first contact has been serviced, updating said set of real time resource availability data stored in said computer readable medium to reflect that the resource corresponding to the first resource node is no longer servicing said first contact; g) enqueuing a second contact at the first service node from said plurality of service nodes; h) determining whether to dequeue said second contact from said first service node based on a first dequeuing strategy; i) if said second contact is dequeued from said first service node, determining whether to requeue said second contact at; i) the first resource node;
orii) a second service node; based on; i) a conflict resolution strategy; and ii) the set of real time resource availability data and j) requeuing said second contact at said second service node, wherein said second service node is a parent node of said first service node. - View Dependent Claims (2, 3, 4, 5, 6, 7)
-
-
8. A non-transitory computer readable medium having a set of computer executable instructions stored thereon, said set of computer executable instructions operable to configure a computer to perform a set of acts comprising:
-
a) maintaining a network of nodes, wherein said network of nodes is a hierarchical network, said network of nodes comprising; a plurality of service nodes, wherein each service node from said plurality of service nodes has no more than one parent node and wherein each service node from said plurality of service nodes has one or more child nodes, wherein each of said child nodes is either a service node or a resource node; and a plurality of resource nodes; b) enqueuing a first contact at a first service node from the plurality of service nodes based on a routing recommendation for said first contact; c) dequeuing said first contact from said first service node to a first resource node from said plurality of resource nodes based at least in part on a path between said first service node and said first resource node; d) enqueuing a second contact at the first service node from said plurality of service nodes; e) determining whether to dequeue said second contact from said first service node based on a first dequeuing strategy; f) if said second contact is dequeued from said first service node, determining whether to requeue said second contact at; i) the first resource node;
orii) a second service node; based on; i) a conflict resolution strategy; and ii) an availability for said first resource node; and g) requeuing said second contact at said second service node, wherein said second service node is a parent node of said first service node. - View Dependent Claims (9, 10, 11, 12, 13, 14)
-
-
15. A machine comprising:
-
a) a decision engine; b) a contact flow manager; and c) a queue manager; wherein; a) said contact flow manager is configured to, upon receipt of a contact, provide a set of context data regarding said contact to said decision engine, and to receive, from said decision engine, an initial routing recommendation for said contact; b) said decision engine is configured to determine an initial routing recommendation for said contact based at least in part on said set of context data provided by said contact flow manager; c) said queue manager is configured to; i) receive said initial routing recommendation for said contact; ii) maintain a hierarchical network of nodes, wherein said hierarchical network of nodes comprises a plurality of service nodes and a plurality of resource nodes; iii) enqueue said contact at a first service node from the plurality of services nodes based on said initial routing recommendation; iv) dequeue said contact from said first service node based at least in part on a dequeueing strategy for said first service node; v) if a resource node below said first service node in said hierarchical network of nodes is available, enqueue said contact at said resource node, otherwise, enqueue said contact at a second service node, said second service node above the first service node in the hierarchical network of nodes; vi) when said contact has been dequeued to node from the plurality of resource nodes, said an indication of the node to which the contact was dequeued to the contact flow manager; and d) said contact flow manager is configured to receive the indication of the node to which the contact was dequeued from the contact flow manager, and to cause the contact to be allocated to a resource corresponding to the node to which the contact was dequeued. - View Dependent Claims (16, 17, 18)
-
Specification