← Back to Patent Explorer
US6434230B1 Expired / Lapsed US ⏱️ 0.0 years remaining

Rules-based queuing of calls to call-handling resources

Assignee: Virexx Medical Corp
•
Filing: 1999-02-02
•
Granted: 2002-08-13
•
Expires: 2019-02-02
📄 Original PDF 🌐 Google Patents 🔄 Sync Now

Abstract

Abstract Resolution of contention over resources (102-105) in an automatic call distribution (ACD) system (101). Call (201) attributes (202) and resource (221) attributes (222) are defined (140,130). Rules (211) match calls' attributes with resources' attributes, Rules have priorities (212) comprising an initial value (213) and a function (214) that changes the value over time. Rules preferably define call coverage paths (215). Each resource has its own call queue (121-129). Rules are matched (230) to arriving call's attributes, to determine (240) resources that can handle the call. A token (250) for every matching rule is placed in the queues of all resources that can handle the call, at a position determined by the rule's priority. The priority and queue position changes over time according to the rule's time function. When a resource dequeues the call's token to process the call, tokens for the call are removed from all queues.

Inventors

  • 👤 Camille Gabriel

Bibliographic Details

Application Number —
Jurisdiction US
Data Source google_patents
Last Synchronized 2026-11-05 12:07
CPC Classifications
H; H04; H04M; H04M3/00; H04M3/42; H04M3/50; H04M3/51; H04M3/523; H04M3/5232

Claims Analysis

Total Claims: 32
Claim 1
Independent Claim 282 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to the determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attributes; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: each rule definition further defines a priority of the corresponding rule, and at least one rule definition further defines a function for changing the priority of the corresponding rule over time; and enqueuing comprises enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource, over time changing the priority of the request in the request queue of each one of the resources found by the at least one rule according to the function of the rule definition of the at least one rule, and requeuing the request in the request queue of each one of the resources found by the at least one rule according to the changed priority of the request in that request queue.
Claim 2
Independent Claim 282 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to the determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attributes; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: each rule definition further defines a priority of the corresponding rule, and at least one rule definition further defines a function for changing the priority of the corresponding rule over time; and enqueuing comprises enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource, over time changing the priority of the request in the request queue of each one of the resources found by the at least one rule according to the function of the rule definition of the at least one rule, and requeuing the request in the request queue of each one of the resources found by the at least one rule according to the changed priority of the request in that request queue.
Claim 3
Dependent Claim 117 words
The method of claim 1 wherein: finding comprises finding at least one resource attribute that corresponds to the determined request attributes by searching the plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource attribute that is needed for processing a request having the at least one request attribute; and in response to finding at least one resource attribute, finding at least one resource among the plurality of the resources that has the found at least one resource attribute, by searching a plurality of resource definitions each defining a correspondence between one of a plurality of resources and at least one resource attribute possessed by the one resource.
Claim 4
Independent Claim 26 words
The method of claim further comprising: in response to one of the found resources processing the request, removing the request from all of the request queues.
Claim 5
Dependent Claim 11 words
The method of claim 1 wherein the request comprises a call.
Claim 6
Dependent Claim 34 words
The method of claim 1 wherein: the plurality of resources each comprise one of (a) a different single one agent, (b) a different single one service circuit, and (c) a different single one function.
Claim 7
Independent Claim 284 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to the determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: each rule definition further defines a priority of the corresponding rule, and the rule definition that led to the finding of the found resources further defines a preemption threshold; enqueuing comprises enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource; and the method further comprises one of the found resources removing the request from its request queue and processing the request, and in response to another request being enqueued in the request queue of the one of the found resources at a priority that exceeds by the preemption threshold the priority at which the request that is being processed was enqueued, preempting the processing of the request that is being processed by processing of the other request.
Claim 8
Independent Claim 284 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to the determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: each rule definition further defines a priority of the corresponding rule, and the rule definition that led to the finding of the found resources further defines a preemption threshold; enqueuing comprises enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource; and the method further comprises one of the found resources removing the request from its request queue and processing the request, and in response to another request being enqueued in the request queue of the one of the found resources at a priority that exceeds by the preemption threshold the priority at which the request that is being processed was enqueued, preempting the processing of the request that is being processed by processing of the other request.
Claim 9
Independent Claim 257 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to me determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: the rule definition of at least one of the rules further defines a coverage path of the one rule; and enqueuing comprises estimating a minimum in-queue waiting time for the request in the request queues of the resources found by the one rule, in response to an estimated minimum in-queue waiting time not exceeding a threshold, enqueuing the request in the request queues of the resources found by the one rule, and in response to the estimated minimum in-queue waiting time exceeding the threshold, enqueuing the request in the request queues of at least one resource, other than the found resources, identified by the coverage path of the one rule.
Claim 10
Independent Claim 257 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to me determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: the rule definition of at least one of the rules further defines a coverage path of the one rule; and enqueuing comprises estimating a minimum in-queue waiting time for the request in the request queues of the resources found by the one rule, in response to an estimated minimum in-queue waiting time not exceeding a threshold, enqueuing the request in the request queues of the resources found by the one rule, and in response to the estimated minimum in-queue waiting time exceeding the threshold, enqueuing the request in the request queues of at least one resource, other than the found resources, identified by the coverage path of the one rule.
Claim 11
Dependent Claim 49 words
The method of claim 7 wherein: each rule definition further defines a priority of the corresponding rules; and enqueuing comprises enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource.
Claim 12
Independent Claim 409 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to the determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource attribute that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource attribute that is needed for processing a request having the at least one request attribute; in response to finding at least one resource attribute, finding at least one resource among the plurality of the resources that has the found at least one resource attribute, by searching a plurality of resource definitions each defining a correspondence between one of a plurality of resources and at least one resource attribute possessed by the one resource; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: each rule definition further defines an initial priority of the corresponding rule, a function for changing the priority of the corresponding rule over time, and a coverage path of the corresponding rule; and enqueuing comprises estimating a minimum in-queue waiting time for the request in the request queues of the resources found by a rule, in response to the estimated minimum in-queue waiting time not exceeding a threshold, enqueuing the request in the request queue of a resource found by the rule at the initial priority of the rule, in response to the estimated minimum in-queue waiting time exceeding the threshold, enqueuing the request in the request queue of a resource identified by the coverage path of the rule, over time changing the priority of the request in the request queue in which it is enqueued according to the function of the rule definition of the rule, and re-queuing the request in the request queue in which it is enqueued according to the changed priority of the request in the request queue in which it is enqueued; and the method further comprising in response to one of the found resources processing the request, removing the request from all of the request queues.
Claim 13
Independent Claim 409 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to the determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource attribute that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource attribute that is needed for processing a request having the at least one request attribute; in response to finding at least one resource attribute, finding at least one resource among the plurality of the resources that has the found at least one resource attribute, by searching a plurality of resource definitions each defining a correspondence between one of a plurality of resources and at least one resource attribute possessed by the one resource; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: each rule definition further defines an initial priority of the corresponding rule, a function for changing the priority of the corresponding rule over time, and a coverage path of the corresponding rule; and enqueuing comprises estimating a minimum in-queue waiting time for the request in the request queues of the resources found by a rule, in response to the estimated minimum in-queue waiting time not exceeding a threshold, enqueuing the request in the request queue of a resource found by the rule at the initial priority of the rule, in response to the estimated minimum in-queue waiting time exceeding the threshold, enqueuing the request in the request queue of a resource identified by the coverage path of the rule, over time changing the priority of the request in the request queue in which it is enqueued according to the function of the rule definition of the rule, and re-queuing the request in the request queue in which it is enqueued according to the changed priority of the request in the request queue in which it is enqueued; and the method further comprising in response to one of the found resources processing the request, removing the request from all of the request queues.
Claim 14
Independent Claim 491 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to the determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource attribute that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource attribute that is needed for processing a request having the at least one request attribute; in response to finding at least one resource attribute, finding at least one resource among the plurality of the resources that has the found at least one resource attribute, by searching a plurality of resource is definitions each defining a correspondence between one of a plurality of resources and at least one resource attribute possessed by the one resource; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: each rule definition further defines an initial priority of the corresponding rule, a function for changing the priority of the corresponding rule over time, and a coverage path of the corresponding rule, and the rule definition that led to the finding of the found resources further defines a preemption threshold; enqueuing comprises estimating a minimum in-queue waiting time for the request in the request queues of the resources found by a rule, in response to the estimated minimum in-queue waiting time not exceeding a threshold, enqueuing the request in the request queue of a resource found by the rule at the initial priority of the rule, in response to the estimated minimum in-queue waiting time exceeding the threshold, enqueuing the request in the request queue of a resource identified by the coverage path of the rule, over time changing the priority of the request in the request queue in which it is enqueued according to the function of the rule definition of the rule, and re-queuing the request in the request queue in which it is enqueued according to the changed priority of the request in the request queue in which it is enqueued; and the method further comprising in response to one of the found resources processing the request, removing the request from all of the request queues, and in response to another request being enqueued in the request queue of the one of the found resources at a priority that exceeds by the preemption threshold the priority at which the request that is being processed was enqueued when it was removed from the request queues, preempting the processing of the request that is being processed by processing of the other request.
Claim 15
Independent Claim 491 words
A method of distributing requests among resources for processing the requests, comprising: in response to a request to be processed, determining request attributes of the request; in response to the determining, finding among a plurality of resources each comprising a different one and only one entity capable of processing a request at least one resource attribute that corresponds to the determined request attributes, by searching a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource attribute that is needed for processing a request having the at least one request attribute; in response to finding at least one resource attribute, finding at least one resource among the plurality of the resources that has the found at least one resource attribute, by searching a plurality of resource is definitions each defining a correspondence between one of a plurality of resources and at least one resource attribute possessed by the one resource; and in response to the finding of at least one resource, enqueuing the request in a request queue of each one of the found resources, each one of the plurality of resources having its own request queue, and for processing only requests enqueued in its own request queue, wherein: each rule definition further defines an initial priority of the corresponding rule, a function for changing the priority of the corresponding rule over time, and a coverage path of the corresponding rule, and the rule definition that led to the finding of the found resources further defines a preemption threshold; enqueuing comprises estimating a minimum in-queue waiting time for the request in the request queues of the resources found by a rule, in response to the estimated minimum in-queue waiting time not exceeding a threshold, enqueuing the request in the request queue of a resource found by the rule at the initial priority of the rule, in response to the estimated minimum in-queue waiting time exceeding the threshold, enqueuing the request in the request queue of a resource identified by the coverage path of the rule, over time changing the priority of the request in the request queue in which it is enqueued according to the function of the rule definition of the rule, and re-queuing the request in the request queue in which it is enqueued according to the changed priority of the request in the request queue in which it is enqueued; and the method further comprising in response to one of the found resources processing the request, removing the request from all of the request queues, and in response to another request being enqueued in the request queue of the one of the found resources at a priority that exceeds by the preemption threshold the priority at which the request that is being processed was enqueued when it was removed from the request queues, preempting the processing of the request that is being processed by processing of the other request.
Claim 16
Independent Claim 28 words
An apparatus that performs the method of claims 2 or 3 or 8 or 1 or 6 or 7 or 9 or 10 or 4 or 5 .
Claim 17
Dependent Claim 41 words
A computer readable medium containing software which, when executed in a computer, causes the computer to perform the method of claim 2 or 3 or 8 or 1 or 6 or 7 or 9 or 10 or 4 or 5 .
Claim 18
Independent Claim 319 words
An apparatus for distributing requests among resources for processing the requests, comprising: means for determining attributes of an individual request; means for defining a plurality of request queues each corresponding to a different one of a plurality of resources each comprising a different one and only one entity capable of processing a request, for enqueuing requests, each one of the plurality of resources having its own request queue for processing only requests enqueued by its own request queue; means for storing a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; means responsive to the individual request having at least one determined request attribute, for finding from the rules definitions at least one resource that corresponds to the at least one determined request attribute; and means responsive to the finding of the at least one resource, for enqueuing the individual request in the request queue of each of the found resources, wherein: each rule definition further defines a priority of the corresponding rule, and at last one rule definition further defines a function for changing the priority of the corresponding rule over time; and the enqueuing means comprise means for enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource, means for changing over time the priority of the request in the request queue of each one of the resources found by the at least one rule according to the function of the rule definition of the at least one rule, and means for requeuing the request in the request queue of each one of the resources found by the at least one rule according to the changed priority of the request in that request queue.
Claim 19
Independent Claim 319 words
An apparatus for distributing requests among resources for processing the requests, comprising: means for determining attributes of an individual request; means for defining a plurality of request queues each corresponding to a different one of a plurality of resources each comprising a different one and only one entity capable of processing a request, for enqueuing requests, each one of the plurality of resources having its own request queue for processing only requests enqueued by its own request queue; means for storing a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; means responsive to the individual request having at least one determined request attribute, for finding from the rules definitions at least one resource that corresponds to the at least one determined request attribute; and means responsive to the finding of the at least one resource, for enqueuing the individual request in the request queue of each of the found resources, wherein: each rule definition further defines a priority of the corresponding rule, and at last one rule definition further defines a function for changing the priority of the corresponding rule over time; and the enqueuing means comprise means for enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource, means for changing over time the priority of the request in the request queue of each one of the resources found by the at least one rule according to the function of the rule definition of the at least one rule, and means for requeuing the request in the request queue of each one of the resources found by the at least one rule according to the changed priority of the request in that request queue.
Claim 20
Independent Claim 318 words
An apparatus for distributing requests among resources for processing the requests, comprising: means for determining attributes of an individual request; means for defining a plurality of request queues each corresponding to a different one of a plurality of resources each comprising a different one and only one entity capable of processing a request, for enqueuing requests, each one of the plurality of resources having its own request queue for processing only requests enqueued by its own request queue; means for storing a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; means responsive to the individual request having at least one determined request attribute, for finding from the rules definitions at least one resource that corresponds to the at least one determined request attribute; and means responsive to the finding of the at least one resource, for enqueuing the individual request in the request queue of each of the found resources, wherein: each rule definition further defines a priority of the corresponding rule, and the rule definition that led to the finding of the found resources further defines a preemption threshold; the enqueuing means comprise means for enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource; and the apparatus further comprises means responsive to another request being enqueued, in the request queue of one of the found resources that has removed the individual request from its request queue and is processing the individual request, at a priority that exceeds by the preemption threshold the priority at which the individual request that is being processed was enqueued, for preempting the processing of the individual request that is being processed by processing of the other request.
Claim 21
Independent Claim 318 words
An apparatus for distributing requests among resources for processing the requests, comprising: means for determining attributes of an individual request; means for defining a plurality of request queues each corresponding to a different one of a plurality of resources each comprising a different one and only one entity capable of processing a request, for enqueuing requests, each one of the plurality of resources having its own request queue for processing only requests enqueued by its own request queue; means for storing a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; means responsive to the individual request having at least one determined request attribute, for finding from the rules definitions at least one resource that corresponds to the at least one determined request attribute; and means responsive to the finding of the at least one resource, for enqueuing the individual request in the request queue of each of the found resources, wherein: each rule definition further defines a priority of the corresponding rule, and the rule definition that led to the finding of the found resources further defines a preemption threshold; the enqueuing means comprise means for enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource; and the apparatus further comprises means responsive to another request being enqueued, in the request queue of one of the found resources that has removed the individual request from its request queue and is processing the individual request, at a priority that exceeds by the preemption threshold the priority at which the individual request that is being processed was enqueued, for preempting the processing of the individual request that is being processed by processing of the other request.
Claim 22
Dependent Claim 28 words
The apparatus of claim 14 further comprising: means responsive to one of the found resources processing the request, for removing the request from all of the request queues.
Claim 23
Dependent Claim 32 words
The apparatus of claim 15 further comprising: means for receiving the requests for processing; the plurality of resources for processing the requests; and means for connecting the received requests to the resources.
Claim 24
Dependent Claim 10 words
The apparatus of claim 16 wherein the requests comprise calls.
Claim 25
Independent Claim 293 words
An apparatus for distributing requests among resources for processing the requests, comprising: means for determining attributes of an individual request; means for defining a plurality of request queues each corresponding to a different one of a plurality of resources each comprising a different one and only one entity capable of processing a request, for enqueuing requests, each one of the plurality of resources having its own request queue for processing only requests enqueued by its own request queue; means for storing a plurality of rule definitions each defining a correspondence between at least one request an attribute and at least one resource that is needed for processing a request having the at least one request attribute; means responsive to the individual request having at least one determined request attribute, for finding from the rules definitions at least one resource that corresponds to the at least one determined request attribute; and means responsive to the finding of the at least one resource, for enqueuing the individual request in the request queue of each of the found resources, wherein: the rule definition of at least one of the rules further defines a coverage path of the one rule; and the enqueuing means comprise means for estimating a minimum in-queue waiting time for the request in the request queues of the resources found by the one rule, and means responsive to an estimated minimum in-queue waiting time not exceeding a threshold, for enqueuing the request in the request queues of the resources found by the one rule, and responsive to the estimated minimum in-queue waiting time exceeding the threshold, for enqueuing the request in the request queues of at least one resource, other than the found resources, identified by the coverage path of the one rule.
Claim 26
Independent Claim 293 words
An apparatus for distributing requests among resources for processing the requests, comprising: means for determining attributes of an individual request; means for defining a plurality of request queues each corresponding to a different one of a plurality of resources each comprising a different one and only one entity capable of processing a request, for enqueuing requests, each one of the plurality of resources having its own request queue for processing only requests enqueued by its own request queue; means for storing a plurality of rule definitions each defining a correspondence between at least one request an attribute and at least one resource that is needed for processing a request having the at least one request attribute; means responsive to the individual request having at least one determined request attribute, for finding from the rules definitions at least one resource that corresponds to the at least one determined request attribute; and means responsive to the finding of the at least one resource, for enqueuing the individual request in the request queue of each of the found resources, wherein: the rule definition of at least one of the rules further defines a coverage path of the one rule; and the enqueuing means comprise means for estimating a minimum in-queue waiting time for the request in the request queues of the resources found by the one rule, and means responsive to an estimated minimum in-queue waiting time not exceeding a threshold, for enqueuing the request in the request queues of the resources found by the one rule, and responsive to the estimated minimum in-queue waiting time exceeding the threshold, for enqueuing the request in the request queues of at least one resource, other than the found resources, identified by the coverage path of the one rule.
Claim 27
Dependent Claim 99 words
The apparatus of claim 18 wherein the means for finding comprise: means for storing a plurality of resources definitions each defining attributes of a corresponding one of a plurality of request processing resources; means responsive to a request having at least one determined request attribute, for finding from the rules definitions at least one resource attribute that corresponds to the at least one determined request attribute; and means responsive to finding at least one resource attribute, for finding from the resources definitions at least one resource among the plurality of the resources that corresponds to the found resource attribute.
Claim 28
Dependent Claim 34 words
The apparatus of claim 18 wherein; the plurality of resources each comprise one of (a) a different single one agent, (b) a different single one service circuit, and (c) a different single one function.
Claim 29
Dependent Claim 53 words
The apparatus of claim 18 wherein: each rule definition further defines a priority of the corresponding rule; and the enqueuing means comprise means for enqueuing the request in the request queue of each one of the found resources at the priority of the rule that led to the finding of the one resource.
Claim 30
Independent Claim 443 words
An apparatus for distributing requests among resources for processing the requests, comprising: means for determining attributes of an individual request; means for defining a plurality of request queues each corresponding to a different one of a plurality of resources each comprising a different one and only one entity capable of processing a request, for enqueuing requests, each one of the plurality of resources having its own request queue for processing only requests enqueued by its own request queue; means for storing a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; means for storing a plurality of resources definitions each defining attributes of a corresponding one of a plurality of request processing resources; means responsive to the individual request having at least one determined request attribute, for finding from the rules definitions at least one resource attribute that corresponds to the at least one determined request attribute; means responsive to finding at least one resource attribute, for finding from the resources definitions at least one resource among the plurality of the resources that corresponds to the found resource attribute; and means responsive to the finding of the at least one resource, for enqueuing the individual request in the request queue of each of the found resources, wherein: each rule definition further defines an initial priority of the corresponding rule, a function for changing the priority of the corresponding rule overtime, and a coverage path of the corresponding rule; and the enqueuing means comprise means for estimating a minimum in-queue waiting time for the request in the request queues of the resources found by a rule, means responsive to the estimated minimum in-queue waiting time not exceeding a threshold, for enqueuing the request in the request queue of a resource found by the rule at the initial priority of the rule, and responsive to the estimated minimum in-queue waiting time exceeding the threshold, for enqueuing the request in the request queue of a resource identified by the coverage path of the rule, and means for changing over time the priority of the request in the request queue in which it is enqueued according to the function of the rule definition of the rule, and for re-queuing the request in the request queue in which it is enqueued according to the changed priority of the request in the request queue in which it is enqueued; and the apparatus further comprising means responsive to one of the found resources processing the request, for removing the request from all of the request queues.
Claim 31
Independent Claim 443 words
An apparatus for distributing requests among resources for processing the requests, comprising: means for determining attributes of an individual request; means for defining a plurality of request queues each corresponding to a different one of a plurality of resources each comprising a different one and only one entity capable of processing a request, for enqueuing requests, each one of the plurality of resources having its own request queue for processing only requests enqueued by its own request queue; means for storing a plurality of rule definitions each defining a correspondence between at least one request attribute and at least one resource that is needed for processing a request having the at least one request attribute; means for storing a plurality of resources definitions each defining attributes of a corresponding one of a plurality of request processing resources; means responsive to the individual request having at least one determined request attribute, for finding from the rules definitions at least one resource attribute that corresponds to the at least one determined request attribute; means responsive to finding at least one resource attribute, for finding from the resources definitions at least one resource among the plurality of the resources that corresponds to the found resource attribute; and means responsive to the finding of the at least one resource, for enqueuing the individual request in the request queue of each of the found resources, wherein: each rule definition further defines an initial priority of the corresponding rule, a function for changing the priority of the corresponding rule overtime, and a coverage path of the corresponding rule; and the enqueuing means comprise means for estimating a minimum in-queue waiting time for the request in the request queues of the resources found by a rule, means responsive to the estimated minimum in-queue waiting time not exceeding a threshold, for enqueuing the request in the request queue of a resource found by the rule at the initial priority of the rule, and responsive to the estimated minimum in-queue waiting time exceeding the threshold, for enqueuing the request in the request queue of a resource identified by the coverage path of the rule, and means for changing over time the priority of the request in the request queue in which it is enqueued according to the function of the rule definition of the rule, and for re-queuing the request in the request queue in which it is enqueued according to the changed priority of the request in the request queue in which it is enqueued; and the apparatus further comprising means responsive to one of the found resources processing the request, for removing the request from all of the request queues.
Claim 32
Dependent Claim 92 words
The apparatus of claim 22 wherein: the rule definition that led to the finding of the found resources further defines a preemption threshold; and the apparatus further comprising means responsive to another request being enqueued in the request queue of the one of the found resources at a priority that exceeds by the preemption threshold the priority at which the request that is being processed was enqueued when it was removed from the request queues, for preempting the processing of the request that is being processed by processing of the other request.

USPTO Annuity & Maintenance Windows

Annuity Stage Window Opens Payment Deadline Surcharge Period Until Estimated Fee Status
3.5 Years (Year 4) 2005-08-12 2006-02-11 2006-08-13 $2000.00 Window Closed / Lapsed
7.5 Years (Year 8) 2009-08-12 2010-02-11 2010-08-13 $3760.00 Window Closed / Lapsed
11.5 Years (Year 12) 2013-08-12 2014-02-11 2014-08-13 $7700.00 Window Closed / Lapsed

Assigned Categories & Tags

No categories assigned to this patent yet.

Assign Category Tag