# US 2021/0241198 A1 · Techniques for assigning tasks in a task assignment system with an external pairing system

> Agents: this data is available as JSON from the patentgrep API and MCP server — see https://patentgrep.com/llms.txt

- Number: US 2021/0241198 A1
- Document ID: US20210241198A1
- Status: Published application
- Kind: A1
- Application number: 17/169,059
- Filed: 2021-02-05
- Published: 2021-08-05
- Earliest claimed: 2020-02-05
- Assignees: Afiniti, Ltd.
- Applicants: Afiniti, Ltd.
- Inventors: Ain CHISHTY; Hassan AFZAL; Zia CHISHTI
- Web page: https://patentgrep.com/patent/US20210241198A1

## CPC

- G06Q 10/06316: {Sequencing of tasks or work}
- G06Q 10/063112: {Skill-based matching of a person or a group to a task}
- G06Q 10/06395: {Quality analysis or management}
- H04M 3/5232: {Call distribution algorithms}
- G06Q: INFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)

## Abstract

Techniques for assigning tasks in a task assignment system with an external pairing system are disclosed. In one particular embodiment, the techniques may be realized as a method for assigning tasks in a task assignment system with an external pairing system comprising transmitting, by the task assignment system, to the external pairing system, a plurality of task pairing requests and an agent pairing request, wherein each task pairing request in the plurality of task pairing requests indicates a task that is received for pairing and each task pairing request in the plurality of task pairing requests indicates an agent that is available for pairing. The method may further comprise receiving, at the task assignment system, from the external pairing system, a pairing recommendation, the pairing recommendation being based at least in part on the plurality of task pairing requests and the agent pairing request.

## Claims

### Claim 1

A method for determining a pairing in a task assignment system, comprising:
determining, by at least one computer processor communicatively coupled to and configured to operate in the task assignment system, that a set of one or more tasks is available for pairing with a set of one or more available agents;
generating, by the at least one computer processor, a pairing request based on the determining;
transmitting, by the at least one computer processor, over an application programming interface, the pairing request to an external pairing system;
receiving, by the at least one computer processor, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connecting, by the at least one computer processor, a set of pairings among the set of tasks and the set of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the set of agents.

### Claim 2 (depends on 1)

The method of claim 1, wherein the pairing request includes information that determines a time-based ordering of the tasks.

### Claim 3 (depends on 1)

The method of claim 1, wherein the task assignment system is a contact center system.

### Claim 4 (depends on 1)

The method of claim 1, wherein the pairing request identifies the set of one or more tasks and the set of one or more available agents.

### Claim 5 (depends on 1)

The method of claim 1, wherein the pairing request is a non-looping request.

### Claim 6

A system for determining a pairing in a task assignment system, comprising:
at least one computer processor communicatively coupled to and configured to operate in the task assignment system, wherein the at least one computer processor is further configured to:
determine that a set of one or more tasks is available for pairing with a set of one or more available agents;
generate a pairing request based on the determining;
transmit, over an application programming interface, the pairing request to an external pairing system;
receive, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connect a set of pairings among the set of tasks and the set of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the set of agents.

### Claim 7 (depends on 6)

The system of claim 6, wherein the pairing request includes information that determines a time-based ordering of the tasks.

### Claim 8 (depends on 6)

The system of claim 6, wherein the task assignment system is a contact center system.

### Claim 9 (depends on 6)

The system of claim 6, wherein the pairing request identifies the set of one or more tasks and the set of one or more available agents.

### Claim 10 (depends on 6)

The system of claim 6, wherein the pairing request is a non-looping request.

### Claim 11

An article of manufacture for determining a pairing in a task assignment system, comprising:
a non-transitory processor readable medium; and
instructions stored on the medium;
wherein the instructions are configured to be readable from the medium by at least one computer processor communicatively coupled to and configured to operate in the task assignment system and thereby cause the at least one computer processor to operate so as to:
determine that a set of one or more tasks is available for pairing with a set of one or more available agents;
generate a pairing request based on the determining;
transmit, over an application programming interface, the pairing request to an external pairing system;
receive, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connect a set of pairings among the set of tasks and the set of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the set of agents.

### Claim 12 (depends on 11)

The article of manufacture of claim 11, wherein the pairing request includes information that determines a time-based ordering of the tasks.

### Claim 13 (depends on 11)

The article of manufacture of claim 11, wherein the task assignment system is a contact center system.

### Claim 14 (depends on 11)

The article of manufacture of claim 11, wherein the pairing request identifies the set of one or more tasks and the set of one or more available agents.

### Claim 15 (depends on 11)

The article of manufacture of claim 11, wherein the pairing request is a non-looping request.

### Claim 16

A method for determining a pairing in a task assignment system, comprising:
determining, by at least one computer processor communicatively coupled to and configured to operate in the task assignment system, that a set of one or more tasks is available for pairing with a set of one or more available agents;
generating, by the at least one computer processor, a pairing request based on the determining;
transmitting, by the at least one computer processor, over an application programming interface, the pairing request to an external pairing system;
receiving, by the at least one computer processor, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connecting, by the at least one computer processor, a set of pairings among the set of tasks and the set of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the set of tasks.

### Claim 17 (depends on 16)

The method of claim 16, wherein the pairing request includes information that determines a time-based ordering of the agents.

### Claim 18 (depends on 16)

The method of claim 16, wherein the task assignment system is a contact center system.

### Claim 19 (depends on 16)

The method of claim 16, wherein the pairing request identifies the set of one or more tasks and the set of one or more available agents.

### Claim 20 (depends on 16)

The method of claim 16, wherein the pairing request is a non-looping request.

### Claim 21

A system for determining a pairing in a task assignment system, comprising:
at least one computer processor communicatively coupled to and configured to operate in the task assignment system, wherein the at least one computer processor is further configured to:
determine that a set of one or more tasks is available for pairing with a set of one or more available agents;
generate a pairing request based on the determining;
transmit, over an application programming interface, the pairing request to an external pairing system;
receive, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connect a set of pairings among the set of tasks and the set of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the set of tasks.

### Claim 22 (depends on 21)

The system of claim 21, wherein the pairing request includes information that determines a time-based ordering of the agents.

### Claim 23 (depends on 21)

The system of claim 21, wherein the task assignment system is a contact center system.

### Claim 24 (depends on 21)

The system of claim 21, wherein the pairing request identifies the set of one or more tasks and the set of one or more available agents.

### Claim 25 (depends on 21)

The system of claim 21, wherein the pairing request is a non-looping request.

### Claim 26

An article of manufacture for determining a pairing in a task assignment system, comprising:
a non-transitory processor readable medium; and
instructions stored on the medium;
wherein the instructions are configured to be readable from the medium by at least one computer processor communicatively coupled to and configured to operate in the task assignment system and thereby cause the at least one computer processor to operate so as to:
determine that a set of one or more tasks is available for pairing with a set of one or more available agents;
generate a pairing request based on the determining;
transmit, over an application programming interface, the pairing request to an external pairing system;
receive, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connect a set of pairings among the set of tasks and the set of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the set of tasks.

### Claim 27 (depends on 26)

The article of manufacture of claim 26, wherein the pairing request includes information that determines a time-based ordering of the agents.

### Claim 28 (depends on 26)

The article of manufacture of claim 26, wherein the task assignment system is a contact center system.

### Claim 29 (depends on 26)

The article of manufacture of claim 26, wherein the pairing request identifies the set of one or more tasks and the set of one or more available agents.

### Claim 30 (depends on 26)

The article of manufacture of claim 26, wherein the pairing request is a non-looping request.

### Claim 31

A method for determining a pairing in a task assignment system, comprising:
determining, by at least one computer processor communicatively coupled to and configured to operate in the task assignment system, that a task is available for pairing with a plurality of available agents;
generating, by the at least one computer processor, a pairing request based on the determining;
transmitting, by the at least one computer processor, over an application programming interface, the pairing request to an external pairing system;
receiving, by the at least one computer processor, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connecting, by the at least one computer processor, the task to an agent of the plurality of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the plurality of agents.

### Claim 32 (depends on 31)

The method of claim 31, wherein the external pairing system maintains a mirror image of a state of the task assignment system.

### Claim 33 (depends on 31)

The method of claim 31, wherein the task assignment system is a contact center system.

### Claim 34 (depends on 31)

The method of claim 31, wherein the pairing request identifies the task and the plurality of available agents.

### Claim 35 (depends on 31)

The method of claim 31, wherein the pairing request is a non-looping request.

### Claim 36

A system for determining a pairing in a task assignment system, comprising:
at least one computer processor communicatively coupled to and configured to operate in the task assignment system, wherein the at least one computer processor is further configured to:
determine that a task is available for pairing with a plurality of available agents;
generate a pairing request based on the determining;
transmit, over an application programming interface, the pairing request to an external pairing system;
receive, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connect the task to an agent of the plurality of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the plurality of agents.

### Claim 37 (depends on 36)

The system of claim 36, wherein the external pairing system maintains a mirror image of a state of the task assignment system.

### Claim 38 (depends on 36)

The system of claim 36, wherein the task assignment system is a contact center system.

### Claim 39 (depends on 36)

The system of claim 36, wherein the pairing request identifies the task and the plurality of available agents.

### Claim 40 (depends on 36)

The system of claim 36, wherein the pairing request is a non-looping request.

### Claim 41

An article of manufacture for determining a pairing in a task assignment system, comprising:
a non-transitory processor readable medium; and
instructions stored on the medium;
wherein the instructions are configured to be readable from the medium by at least one computer processor communicatively coupled to and configured to operate in the task assignment system and thereby cause the at least one computer processor to operate so as to:
determine that a task is available for pairing with a plurality of available agents;
generate a pairing request based on the determining;
transmit, over an application programming interface, the pairing request to an external pairing system;
receive, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connect the task to an agent of the plurality of agents based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the plurality of agents.

### Claim 42 (depends on 41)

The article of manufacture of claim 41, wherein the external pairing system maintains a mirror image of a state of the task assignment system.

### Claim 43 (depends on 41)

The article of manufacture of claim 41, wherein the task assignment system is a contact center system.

### Claim 44 (depends on 41)

The article of manufacture of claim 41, wherein the pairing request identifies the task and the plurality of available agents.

### Claim 45 (depends on 41)

The article of manufacture of claim 41, wherein the pairing request is a non-looping request.

### Claim 46

A method for determining a pairing in a task assignment system, comprising:
determining, by at least one computer processor communicatively coupled to and configured to operate in the task assignment system, that a plurality of tasks is available for pairing with an available agent;
generating, by the at least one computer processor, a pairing request based on the determining;
transmitting, by the at least one computer processor, over an application programming interface, the pairing request to an external pairing system;
receiving, by the at least one computer processor, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connecting, by the at least one computer processor, the available agent to a task of the plurality of tasks based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the plurality of tasks.

### Claim 47 (depends on 46)

The method of claim 46, wherein the external pairing system maintains a mirror image of a state of the task assignment system.

### Claim 48 (depends on 46)

The method of claim 46, wherein the task assignment system is a contact center system.

### Claim 49 (depends on 46)

The method of claim 46, wherein the pairing request identifies the task and the plurality of available agents.

### Claim 50 (depends on 46)

The method of claim 46, wherein the pairing request is a non-looping request.

### Claim 51

A system for determining a pairing in a task assignment system, comprising:
at least one computer processor communicatively coupled to and configured to operate in the task assignment system, wherein the at least one computer processor is further configured to:
determine that a plurality of tasks is available for pairing with an available agent;
generate a pairing request based on the determining;
transmit, over an application programming interface, the pairing request to an external pairing system;
receive, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connect the available agent to a task of the plurality of tasks based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the plurality of tasks.

### Claim 52 (depends on 51)

The system of claim 51, wherein the external pairing system maintains a mirror image of a state of the task assignment system.

### Claim 53 (depends on 51)

The system of claim 51, wherein the task assignment system is a contact center system.

### Claim 54 (depends on 51)

The system of claim 51, wherein the pairing request identifies the task and the plurality of available agents.

### Claim 55 (depends on 51)

The system of claim 51, wherein the pairing request is a non-looping request.

### Claim 56

An article of manufacture for determining a pairing in a task assignment system, comprising:
a non-transitory processor readable medium; and
instructions stored on the medium;
wherein the instructions are configured to be readable from the medium by at least one computer processor communicatively coupled to and configured to operate in the task assignment system and thereby cause the at least one computer processor to operate so as to:
determine that a plurality of tasks is available for pairing with an available agent;
generate a pairing request based on the determining;
transmit, over an application programming interface, the pairing request to an external pairing system;
receive, over the application programming interface, a pairing response from the external pairing system based on the pairing request; and
connect the available agent to a task of the plurality of tasks based on the pairing response,
wherein the pairing request includes information that determines a time-based ordering of the plurality of tasks.

### Claim 57 (depends on 56)

The article of manufacture of claim 56, wherein the external pairing system maintains a mirror image of a state of the task assignment system.

### Claim 58 (depends on 56)

The article of manufacture of claim 56, wherein the task assignment system is a contact center system.

### Claim 59 (depends on 56)

The article of manufacture of claim 56, wherein the pairing request identifies the task and the plurality of available agents.

### Claim 60 (depends on 56)

The article of manufacture of claim 56, wherein the pairing request is a non-looping request.
