# US 11,909,919 B2 · Communication routing based on user characteristics and behavior

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

- Number: US 11,909,919 B2
- Document ID: US11909919B2
- Status: Granted
- Kind: B2
- Application number: 17/981,478
- Filed: 2022-11-07
- Published: 2023-02-23
- Granted: 2024-02-20
- Earliest claimed: 2020-03-31
- Assignees: Zenpayroll, Inc.
- Applicants: ZenPayroll, Inc.
- Inventors: Brandon Anthony Scott; Aurobind Ravichandran; Matthew Surjana Oey; Gregory Shunsuke Wilson
- Web page: https://patentgrep.com/patent/US11909919B2

## CPC

- H04M 3/5235: {Dependent on call type or called number [DNIS]}
- G06N 20/00: Machine learning
- H04L 63/08: {for authentication of entities (cryptographic mechanisms or cryptographic arrangements for entity authentication H04L9/32)}
- H04L 67/306: User profiles
- H04L 67/535: {Tracking the activity of the user (network monitoring arrangements H04L43/00; recording of computer activity G06F11/34)}
- H04L 67/567: Integrating service provisioning from a plurality of service providers
- H04L 67/63: Routing a service request depending on the request content or context
- H04M 3/42059: {Making use of the calling party identifier}
- H04M 3/42068: {where the identifier is used to access a profile}
- H04W 12/06: Authentication
- H04M 2203/558: Databases
- H04M 2203/60: related to security aspects in telephonic communication systems
- H04M 2203/6045: Identity confirmation
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)
- G06N: COMPUTING ARRANGEMENTS BASED ON SPECIFIC COMPUTATIONAL MODELS
- H04L: TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION (arrangements common to telegraphic and telephonic communication H04M)
- H04W: WIRELESS COMMUNICATION NETWORKS (broadcast communication H04H; communication systems using wireless links for non-selective communication, e.g. wireless extensions H04M1/72)

## Abstract

An enhanced routing system determines a service provider best suited to fulfill a user's request to interact and establishes a communication session between the user's client device and a device of the service provider. The enhanced routing system may use user characteristics and behavior to select the service provider. For example, the enhanced routing system receives a request to connect to a customer service system from a user who has recently started a new job and has been accessing a banking application on his mobile phone. The enhanced routing system may determine that a payroll service provider is best suited to fulfill the user's request. For example, the enhanced routing system uses a machine learning model that has been trained on previously fulfilled requests. In this way, the enhanced routing system improves upon systems that continuously prompt the user for information by selecting a service provider without overburdening the user.

## Claims

### Claim 1

A method comprising:
receiving, from a client device of a user, a request to interact with a communications system;
selecting an entity within the communications system by applying a machine-learned model configured to a feature vector generated based on historic activity of the user, the machine-learned model configured to identify an entity of a plurality of entities of the communications system based at least in part on both a most recently viewed page associated with the communications system and a job title of the user; and
establishing a communication session between at least the client device and a device of the selected entity to fulfill the request to interact.

### Claim 2 (depends on 1)

The method of claim 1, further comprising receiving an identification number associated with the client device.

### Claim 3 (depends on 2)

The method of claim 2, wherein the identification number associated with the client device is at least one of a phone number, media access control (MAC) address, or internet protocol (IP) address.

### Claim 4 (depends on 2)

The method of claim 2, further comprising authenticating the client device comprises in response to determining that the identification number of the client device is a pre-approved number.

### Claim 5 (depends on 1)

The method of claim 1, wherein the historic activity of the user is associated with a user profile associated with the user, wherein the user profile is identified by:
accessing a personnel database comprising a plurality of user profiles; and
matching a phone number associated with the client device to a phone number associated with the user profile of the plurality of user profiles.

### Claim 6 (depends on 5)

The method of claim 5, wherein the user profile comprises at least one of a location of the user, information describing a relationship between the user and the communication system, the job title of the user, or satisfaction information authored by the user.

### Claim 7 (depends on 1)

The method of claim 1, wherein the historic activity of the user is determined by:
receiving activity history of the client device occurring within a time interval immediately preceding the request to interact with the communications system.

### Claim 8 (depends on 1)

The method of claim 1, wherein the historic activity of the user comprises at least one of applications executed by the client device, user actions occurring within an application executed by the client device, application or web pages viewed by the client device, and text entered into an input interface on the client device.

### Claim 9 (depends on 1)

The method of claim 1, wherein the request to interact with the communications system comprises a voice call from the client device.

### Claim 10 (depends on 1)

The method of claim 1, wherein the machine learning model is trained on data representative of previous interactions with the communications system by other users and user profiles and activity histories associated with the other users.

### Claim 11 (depends on 1)

The method of claim 1, wherein the entity is selected based at least in part on a dot product between the feature vector and a vector representative of characteristics of the entity.

### Claim 12 (depends on 1)

The method of claim 1, further comprising receiving a measure of satisfaction from the client device representative of the selected entity and re-training the machine learning model based at least in part on the received measure of satisfaction.

### Claim 13 (depends on 12)

The method of claim 12, wherein re-training the machine learning model comprises strengthening an association between the selected entity and characteristics of the user or historic activity of the user in response to the measure of satisfaction being a positive measure of satisfaction, and weakening the association between the selected entity and characteristics of the user or historic activity of the user in response to the measure of satisfaction being a negative measure of satisfaction.

### Claim 14 (depends on 12)

The method of claim 12, further comprising generating a data structure mapping the measure of satisfaction and information characterizing the communication session.

### Claim 15 (depends on 14)

The method of claim 14, wherein information characterizing the communication session comprises at least one of a list of participants in the communication session, a duration of the communication session, or a time at which the communication occurred.

### Claim 16 (depends on 14)

The method of claim 14, wherein re-training the machine learning model based at least in part on the received measure of satisfaction comprises re-training the machine learning model using the data structure.

### Claim 17 (depends on 13)

The method of claim 13, wherein the measure of satisfaction comprises a user selection of a different entity.

### Claim 18 (depends on 1)

The method of claim 1, wherein establishing the communication session between at least the client device and the device of the selected entity comprises initiating a phone or voice over IP call between the client device and the device of the selected entity.

### Claim 19

A routing system configured to perform steps comprising:
receiving, from a client device of a user, a request to interact with a communications system;
selecting an entity within the communications system by applying a machine-learned model configured to a feature vector generated based on historic activity of the user, the machine-learned model configured to identify an entity of a plurality of entities of the communications system based at least in part on both a most recently viewed page associated with the communications system and a job title of the user; and
establishing a communication session between at least the client device and a device of the selected entity to fulfill the request to interact.

### Claim 20

A non-transitory computer readable storage medium storing executable instructions that, when executed by one or more processors, cause the one or more processors to perform steps comprising:
receiving, from a client device of a user, a request to interact with a communications system;
selecting an entity within the communications system by applying a machine-learned model configured to a feature vector generated based on historic activity of the user, the machine-learned model configured to identify an entity of a plurality of entities of the communications system based at least in part on both a most recently viewed page associated with the communications system and a job title of the user; and
establishing a communication session between at least the client device and a device of the selected entity to fulfill the request to interact.
