IP Library Granted Patent US 10,122,853
Granted Patent B2
US 10,122,853 · App. 15/086,708 · Granted Nov 6, 2018

Intelligent time slot recommendation for interactive voice response (IVR) systems

Inventor: Tyler Horton (Tewksbury, MA)
Assignee: TimeTrade Systems, Inc.
H04M3/493G06F3/0482G06F17/3053G06Q10/1095H04M3/4217
View Patent ↗
Loading inventors, assignments & file history…
Monitor This Case
Get email alerts when status or documents change.
Order Certified Copies
Most orders are placed with the USPTO same day — all within 24 business hours.
Order via The Patent Place →
Pre-filled with this patent's details
Quick Facts
Patent No.
US 10,122,853
App. No.
15/086,708
Granted
Nov 6, 2018
Kind
B2
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 (39)

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.

2. 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.

3. 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.

4. 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.

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

6. 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.

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.

8. 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.

9. 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.

10. 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.

11. 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.

12. 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.

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.

14. 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.

15. 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.

16. 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.

17. 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.

Assignments (2)
PATENT SECURITY AGREEMENT Recorded Dec 31, 2020
From: TIMETRADE SYSTEMS, INC.
To: WELLS FARGO BANK, NATIONAL ASSOCIATION, AS AGENT
Reel/Frame 054883/0502 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Mar 31, 2016
From: HORTON, TYLER
To: TIMETRADE SYSTEMS, INC.
Reel/Frame 038160/0217 →
Continuity (2)
Provisional Application 62143291 · Apr 6, 2015
Related Publication 20160295015A1 · Oct 6, 2016