# US 10,122,853 B2 · Intelligent time slot recommendation for interactive voice response (IVR) systems

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

- Number: US 10,122,853 B2
- Document ID: US10122853B2
- Status: Granted
- Kind: B2
- Application number: 15/086,708
- Filed: 2016-03-31
- Published: 2016-10-06
- Granted: 2018-11-06
- Earliest claimed: 2015-04-06
- Assignees: TimeTrade Systems, Inc.
- Applicants: TimeTrade Systems, Inc.
- Inventors: Tyler Horton
- Web page: https://patentgrep.com/patent/US10122853B2

## CPC

- H04M 3/493: Interactive information services, e.g. directory enquiries {; Arrangements therefor, e.g. interactive voice response [IVR] systems or voice portals}
- G06F 3/0482: Interaction with lists of selectable items, e.g. menus
- G06F 16/24578: {using ranking}
- G06Q 10/1093: Calendar-based scheduling for persons or groups
- H04M 3/4217: {Managing service interactions}
- H04M: TELEPHONIC COMMUNICATION (circuits for controlling other apparatus via a telephone cable and not involving telephone switching apparatus G08)
- G06F: ELECTRIC DIGITAL DATA PROCESSING (computer systems based on specific computational models G06N)
- 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

## Abstract

A call may be received from a caller at an interactive voice response server with information indicating a caller preferred choice including a date and a time for an appointment. The caller preferred choice for the appointment may be determined as not available. A set of heuristic evaluations may be used to evaluate each of a plurality of available time slots individually to generate a plurality of intermediate results for each available time slot. Each intermediate result may have a weight associated with a corresponding heuristic evaluation. For each available time slot, the plurality of intermediate results may be aggregated using multiplicative weightings based on respective weights to produce aggregated results. A ranked list of candidate time slots to be used for the appointment may be generated based on the aggregated results and the caller may be prompted for a selection from the ranked list of candidate time slots.

## Claims

### Claim 1

A computer-implemented method for providing an interactive voice response service, the method comprising:
at an interactive voice response server, receiving a call from a caller;
receiving from the caller information indicating a caller preferred choice for an appointment, the caller preferred choice including a date and a time for the appointment;
determining that the caller preferred choice for the appointment is not available;
evaluating, using a set of heuristic evaluations, each of a plurality of available time slots individually to generate a plurality of intermediate results for each of the plurality of available time slots to be used for the appointment, each intermediate result having a weight associated with a corresponding heuristic evaluation, wherein at least one of the weights associated with a corresponding heuristic evaluation is an assigned initial weight that is adjustable based on information received from the caller;
for each of the plurality of available time slots, aggregating the plurality of intermediate results using multiplicative weightings based on respective weights associated with the corresponding heuristic evaluations to produce aggregated results;
generating a ranked list of candidate time slots to be used for the appointment based on the aggregated results; and
prompting the caller for a selection from the ranked list of candidate time slots.

### Claim 2 (depends on 1)

The method of claim 1, wherein the set of heuristic evaluations is based on one or more of: date preference, time of day preference, day of week preference, current time, current date, current time of day, and current day of week, and each such heuristic evaluation results in a higher score for a time and/or date closer to the date and time of the caller preferred choice.

### Claim 3 (depends on 1)

The method of claim 1, wherein the set of heuristic evaluations is based on one or more of: historical preferences, historical selections, popular preferences, popular selections, and each such heuristic evaluation results in a higher score for a time and/or date closer to the historical preferences or historical selections and/or closer to the popular preferences or popular selections.

### Claim 4 (depends on 1)

The method of claim 1, wherein the set of heuristic evaluations is based on at least one customer heuristic defined in an evaluable expression for a computable quantity or retrievable data using a general-purpose programming language.

### Claim 5 (depends on 1)

The method of claim 1, further comprising adjusting a value of the assigned initial weight based on the information received from the caller.

### Claim 6 (depends on 1)

The method of claim 1, further comprising adjusting a value of the assigned initial weight based on machine learning that includes increasing the value of the assigned initial weight if a selected heuristic evaluation generates a high score for the selection from the ranked list of candidate time slots and decreasing the value of the assigned initial weight if the selected heuristic evaluation fails to predict the selection from the ranked list of candidate time slots.

### Claim 7

A system configured to provide an interactive voice response, the system comprising:
a telephone interface configured to receive a call from a caller; and
one or more processors configured to execute computer program instructions to:
receive from the caller a caller preferred choice for an appointment, the caller preferred choice including a date and a time for the appointment;
determine that the caller preferred choice for the appointment is not available;
evaluate, using a set of heuristic evaluations, each of a plurality of available time slots individually to generate a plurality of intermediate results for each of the plurality of available time slots to be used for the appointment, each intermediate result having a weight associated with a corresponding heuristic evaluation, wherein at least one of the weights associated with a corresponding heuristic evaluation is an assigned initial weight that is adjustable based on information received from the caller;
for each of the plurality of available time slots, aggregate the plurality of intermediate results using multiplicative weightings based on respective weights associated with the corresponding heuristic evaluations to produce aggregated results;
generate a ranked list of candidate time slots for the appointment based on the aggregated results; and
prompt the caller for a selection from the ranked list of candidate time slots.

### Claim 8 (depends on 7)

The system of claim 7, wherein the set of heuristic evaluations is based on one or more of date preference, time of day preference, day of week preference, current time, current date, current time of day, and current day of week, and each such heuristic evaluation gives a higher score for a time and/or date closer to the date and time of the caller preferred choice.

### Claim 9 (depends on 7)

The system of claim 7, wherein the set of heuristic evaluations is based on one or more of historical preferences, historical selections, popular preferences, popular selections, and each such heuristic evaluation results in a higher score for a time and/or date closer to the historical preferences or historical selections and/or closer to the popular preferences or popular selections.

### Claim 10 (depends on 7)

The system of claim 7, wherein the set of heuristic evaluations is based on at least one customer heuristic defined in an evaluable expression for a computable quantity or retrievable data using a general-purpose programming language.

### Claim 11 (depends on 7)

The system of claim 7, wherein the one or more processors are further configured to adjust a value of the assigned initial weight based on the information received from the caller.

### Claim 12 (depends on 7)

The system of claim 7, wherein the one or more processors are further configured to adjust a value of the assigned initial weight based on machine learning that includes increasing the value of the assigned initial weight if a selected heuristic evaluation generates a high score for the selection from the ranked list of candidate time slots and decreasing the value of the assigned initial weight if the selected heuristic evaluation fails to predict the selection from the ranked list of candidate time slots.

### Claim 13

A non-transitory computer readable storage media encoded with software comprising computer executable instructions and when the software is executed operable to:
receive a call from a caller at an interactive voice response server;
receive from the caller information indicating a caller preferred choice for an appointment, the caller preferred choice including a date and a time for the appointment;
determine that the caller preferred choice for the appointment is not available;
evaluate, using a set of heuristic evaluations, each of a plurality of available time slots individually to generate a plurality of intermediate results for each of the plurality of available time slots to be used for the appointment, each intermediate result having a weight associated with a corresponding heuristic evaluation, wherein at least one of the weights associated with a corresponding heuristic evaluation is an assigned initial weight that is adjustable based on information received from the caller;
for each of the plurality of available time slots, aggregate the plurality of intermediate results using multiplicative weightings based on respective weights associated with the corresponding heuristic evaluations to produce aggregated results;
generate a ranked list of candidate time slots to be used for the appointment based on the aggregated results; and
prompt the caller for a selection from the ranked list of candidate time slots.

### Claim 14 (depends on 13)

The non-transitory computer readable storage media of claim 13, wherein the set of heuristic evaluations is based on one or more of date preference, time of day preference, day of week preference, current time, current date, current time of day, and current day of week, and each such heuristic evaluation results in a higher score for a time and/or date closer to the date and time of the caller preferred choice.

### Claim 15 (depends on 13)

The non-transitory computer readable storage media of claim 13, wherein the set of heuristic evaluations is based on one or more of historical preferences, historical selections, popular preferences, popular selections, and each such heuristic evaluation results in a higher score for a time and/or date closer to the historical preferences or historical selections and/or closer to the popular preferences or popular selections.

### Claim 16 (depends on 13)

The non-transitory computer readable storage media of claim 13, wherein the set of heuristic evaluations is based on at least one customer heuristic defined in an evaluable expression for a computable quantity or retrievable data using a general-purpose programming language.

### Claim 17 (depends on 13)

The non-transitory computer readable storage media of claim 13, further operable to adjust a value of the assigned initial weight based on the information received from the caller and/or based on machine learning that includes increasing the value of the assigned initial weight if a selected heuristic evaluation generates a high score for the selection from the ranked list of candidate time slots and decreasing the value of the assigned initial weight if the selected heuristic evaluation fails to predict the selection from the ranked list of candidate time slots.
