# US 2014/0156330 A1 · Distributed agent reservation in sip cluster

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

- Number: US 2014/0156330 A1
- Document ID: US20140156330A1
- Status: Published application
- Kind: A1
- Application number: 13/844,190
- Filed: 2013-03-15
- Published: 2014-06-05
- Earliest claimed: 2012-12-04
- Assignees: Genesys Telecommunications Laboratories, Inc.
- Applicants: Genesys Telecommunications Laboratories, Inc.
- Inventors: Philippe Rais; Vyacheslav Sayko; Alexander Tikin; Grygoriy Budilovsky
- Web page: https://patentgrep.com/patent/US20140156330A1

## CPC

- G06Q 10/063114: {Status monitoring or status determination for a person or group}
- G06F 9/50: Allocation of resources, e.g. of the central processing unit [CPU]
- G06F 40/205: Parsing
- H04L 65/1045: Proxies, e.g. for session initiation protocol [SIP]
- H04L 65/1069: Session establishment or de-establishment
- H04L 65/1104: Session initiation protocol [SIP]
- H04L 65/401: wherein the services involve a main real-time session and one or more additional parallel real-time or time sensitive sessions, e.g. white board sharing or spawning of a subconference
- H04L 67/1001: for accessing one among a plurality of replicated servers
- H04M 3/42306: {Number translation services, e.g. premium-rate, freephone or vanity number services}
- H04M 3/5191: {interacting with the Internet}
- H04M 3/5232: {Call distribution algorithms}
- H04L 45/26: {Route discovery packet}
- H04L 61/106: across networks, e.g. mapping telephone numbers to data network addresses
- H04L 61/4541: Directories for service discovery
- H04L 61/4557: Directories for hybrid networks, e.g. including telephone numbers
- H04M 2203/402: Agent or workforce management
- 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
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)

## Abstract

A method for reserving agents for handling calls in a distributed contact center environment. A first module identifies, through interactions with other modules, an agent suitable for handling the call. A second module executes a hash function to identify a third module responsible for the agent, makes a request to the third module, to reserve the agent, and routes the call to the third module if the request is granted.

## Claims

### Claim 1

A method for reserving distributed contact center resources, comprising:
identifying, by a first module executing on a computing device, a resource identifier (ID) for a contact center resource;
identifying a second module responsible for the resource, wherein the identifying comprises:
providing the resource ID to a function; and
receiving as an output from the function a module identifier (ID) for the second module; and
sending a request for the resource to the second module based on the identified module ID.

### Claim 2 (depends on 1)

The method of claim 1, comprising:
receiving, by the second module, the request for the resource; and
determining, by the second module, whether to grant the request for the resource.

### Claim 3 (depends on 2)

The method of claim 2, wherein the determining of whether to grant the request for the resource comprises:
receiving a second request for the resource during a time interval;
assessing priority of the request relative to the second request; and
granting the request or the second request based on the assessed priority.

### Claim 4 (depends on 3)

The method of claim 3, wherein the assessing of the priority includes evaluating a plurality of criteria of the request relative to a plurality of criteria of the second request, the criteria being selected from a group consisting of: a characteristic of a caller, a suitability of the resource for a call, a suitability of other resources for the call, a hold time, and combinations thereof.

### Claim 5 (depends on 3)

The method of claim 3, wherein the request is a call routing request.

### Claim 6 (depends on 5)

The method of claim 5, comprising routing a call to the resource in response to granting of the request.

### Claim 7 (depends on 1)

The method of claim 1, wherein the resource is a contact center agent, and the request is a request to reserve the agent.

### Claim 8 (depends on 1)

The method of claim 1, wherein the second module is responsible for maintaining state information related to the resource.

### Claim 9 (depends on 1)

The method of claim 1, wherein the function is a hash function.

### Claim 10 (depends on 9)

The method of claim 9, wherein the hash function is a consistent hash function.

### Claim 11 (depends on 10)

The method of claim 10, wherein the hash function comprises:
a first basic hash function configured to map resource identifiers into a range; and
a second basic hash function configured to map module identifiers into the range.

### Claim 12 (depends on 11)

The method of claim 11, wherein the second basic hash function is further configured to map a replica of each module identifier into the range.

### Claim 13 (depends on 9)

The method of claim 9, wherein the hash function is configured to map resource identifiers corresponding to resources in a geographic region into module identifiers corresponding to modules executing on computing devices in the geographic region.
