IP Library Granted Patent US 12,348,674
Granted Patent B2
US 12,348,674 · App. 18/142,756 · Granted Jul 1, 2025

Systems and methods for the asynchronous detection of on hold time in multi-channel calls

Inventors: Ronen Reouveni (San Diego, CA); Jonathan Wiggs (Seattle, WA); Robert Piro (Seattle, WA)
Assignee: Outbound AI Inc.
H04M3/493H04M3/4283H04M3/4286H04M2201/40
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 12,348,674
App. No.
18/142,756
Granted
Jul 1, 2025
Kind
B2
Abstract

Systems, devices, and methods for more effectively and accurately determining when a participant in a call or similar form of communications session that has placed their channel into an on-hold state ends the on-hold state, and the call or communication session returns to an active mode. In some embodiments, an on-hold state may be indicated by the playing of music and/or a message on the channel placed into that state.

Claims (66)

1. A method of operating a call center, comprising:

for each of a plurality of calls received at a call center, performing the operations of receiving the call at the call center on a communication channel;

determining that the communication channel has been placed into an on-hold state;

operating a processor to

determine a timestamp for the first detected word spoken in the communication channel;

setting the determined timestamp as the initial value of a time interval;

setting a length of the time interval;

based on the length of the time interval, set a final value of the time interval;

for each word in the time interval, determine a number of syllables spoken over the communication channel;

compare the determined number of syllables spoken over the communication selected-channel during the time interval to a threshold value;

if the determined number of syllables spoken during the time interval exceeds the threshold value, then determining that the on-hold state has ended;

in response to determining that the on-hold state has ended, storing a record of the time the call was received at the call center and the length of the on-hold state of the call;

assembling a dataset including the time each of the plurality of calls was received at the call center and the length of the on-hold state associated with each of the plurality of calls; and

processing the dataset to determine a desirable level of staffing at the call center to reduce the length of on-hold states for received calls, or a preferred time to place or receive a call at the call center to reduce the length of an on-hold state for the placed or received call.

2. The method of claim 1 , wherein one or more of the length of the time interval or the threshold value are determined by one or more of historical data regarding the channel, a rule, a heuristic, or a trained model.

3. The method of claim 1 , wherein one or more of the length of the time interval or the threshold value are determined by a type of interactive voice response (IVR) system that a user is interacting with.

4. The method of claim 1 , wherein the process interrupted by placement of the communication channel into the on-hold state is one or more of a conference call, a lecture, or the navigation and response processing of an IVR system.

5. The method of claim 1 , further comprising processing the audio in the communication channel using an automatic speech recognition process prior to counting the number of syllables in each word spoken over the selected channel during the time interval.

6. The method of claim 5 , further comprising removing one or more single syllable words prior to counting the number of syllables in each word spoken over the communication selected-channel during the time interval.

7. The method of claim 1 , wherein if the number of syllables spoken during the time interval does not exceed the threshold value, then the method comprises:

determining a timestamp for the first detected word spoken in the communication channel after the time interval;

repeating the steps of the method until the number of syllables spoken during a subsequent time interval exceeds the threshold value; and

after determining that the on-hold state has ended, returning to a process interrupted by placement of the communication channel into the on-hold state.

8. The method of claim 1 , further comprising:

based on the length of the on-hold time state for each of the plurality of received calls, determining a distribution of the length of the on-hold time period;

based on the distribution of the length of the on-hold time period, determining a range of on-hold time periods expected to contain non-human speech; and

routing a received call in an on-hold state to an appropriate call center representative or process after expiration of a time period equal to the range of on-hold time periods expected to contain non-human speech.

9. A system, comprising:

one or more electronic processors configured to execute a set of computer-executable instructions; and

the set of computer-executable instructions, wherein when executed, the instructions cause the one or more electronic processors to, for each of a plurality of calls received at a call center

receive the call at the call center on a communication channel;

determine that the communication channel has been placed into an on-hold state;

determine a timestamp for the first detected word spoken in the communication channel;

set the timestamp as the initial value of a time interval;

set a length of the time interval;

based on the length, set a final value of the time interval;

for each word in the time interval, count a number of syllables spoken over the communication channel;

compare the number of syllables spoken over the communication channel during the time interval to a threshold value;

if the number of syllables spoken during the time interval exceeds the threshold value, then determine that an on-hold state has ended;

in response to determining that the on-hold state has ended, store a record of the time the call was received at the call center and the length of the on-hold state of the call;

assemble a dataset including the time each of the plurality of calls was received at the call center and the length of the on-hold state associated with each of the plurality of calls; and

process the dataset to determine a desirable level of staffing at the call center to reduce the length of on-hold states for received calls, or a preferred time to place or receive a call at the call center to reduce the length of an on-hold state for the placed or received call.

10. The system of claim 9 , wherein one or more of the length of the time interval or the threshold value are determined by one or more of historical data regarding the channel, a rule, a heuristic, or a trained model.

11. The system of claim 9 , wherein one or more of the length of the time interval or the threshold value are determined by a type of interactive voice response (IVR) system that a user is interacting with.

12. The system of claim 9 , wherein the process interrupted by placement of the channel into the on-hold state is one or more of a conference call, a lecture, or the navigation and response processing of an IVR system.

13. The system of claim 9 , wherein the instructions further cause the one or more electronic processors to process the audio in the communication channel using an automatic speech recognition process prior to counting the number of syllables in each word spoken over the selected channel during the time interval.

14. The system of claim 13 , wherein the instructions further cause the one or more electronic processors to remove one or more single syllable words prior to counting the number of syllables in each word spoken over the communication channel during the time interval.

15. One or more non-transitory computer-readable media including a set of computer-executable instructions that when executed by one or more electronic processors, cause the electronic processors to, for each of a plurality of calls received at a call center:

receive the call at the call center on a communication channel;

determine that the communication channel has been placed into an on-hold

state;

determine a timestamp for the first detected word spoken in the communication channel;

set the timestamp as the initial value of a time interval;

set a length of the time interval;

based on the length, set a final value of the time interval;

for each word in the time interval, count a number of syllables spoken over the communication channel;

compare the number of syllables spoken over the communication channel during the time interval to a threshold value;

if the number of syllables spoken during the time interval exceeds the threshold value, then determine that an on-hold state has ended;

in response to determining that the on-hold state has ended, store a record of the time the call was received at the call center and the length of the on-hold state of the call;

assemble a dataset including the time each of the plurality of calls was received at the call center and the length of the on-hold state associated with each of the plurality of calls; and

process the dataset to determine a desirable level of staffing at the call center to reduce the length of on-hold states for received calls, or a preferred time to place or receive a call at the call center to reduce the length of an on-hold state for the placed or received call.

16. The one or more non-transitory computer-readable media of claim 15 , wherein one or more of the length of the time interval or the threshold value are determined by one or more of historical data regarding the channel, a rule, a heuristic, or a trained model.

17. The one or more non-transitory computer-readable media of claim 15 , wherein one or more of the length of the time interval or the threshold value are determined by a type of interactive voice response (IVR) system that a user is interacting with.

18. The one or more non-transitory computer-readable media of claim 13 , wherein the process interrupted by placement of the channel into the on-hold state is one or more of a conference call, a lecture, or the navigation and response processing of an IVR system.

19. The one or more non-transitory computer-readable media of claim 15 , wherein the instructions further cause the one or more electronic processors to process the audio in the communication channel using an automatic speech recognition process prior to counting the number of syllables in each word spoken over the selected-channel during the time interval.

20. The one or more non-transitory computer-readable media of claim 19 , wherein the instructions further cause the one or more electronic processors to remove one or more single syllable words prior to counting the number of syllables in each word spoken over the communication channel during the time interval.

Assignments (2)
SECURITY INTEREST Recorded Dec 31, 2025
From: OUTBOUND AI, INC.
To: FIRST-CITIZENS BANK & TRUST COMPANY
Reel/Frame 073346/0933 →
ASSIGNMENT OF ASSIGNOR'S INTEREST Recorded Jul 17, 2023
From: REOUVENI, RONEN; WIGGS, JONATHAN; PIRO, ROBERT
To: OUTBOUND AI INC.
Reel/Frame 064282/0596 →
Continuity (2)
Provisional Application 63340103 · May 10, 2022
Related Publication 20230370546A1 · Nov 16, 2023
References Cited (16)
US 7120244B2 · Joseph · 2006 [cited by examiner]
US 7684556B1 · Jaiswal · 2010 [cited by examiner]
US 8879703B1 · Lavian · 2014 [cited by examiner]
US 9350866B1 · Mekonnen · 2016 [cited by examiner]
US 10129396B1 · Desai · 2018 [cited by examiner]
US 11005988B1 · Patakokila · 2021 [cited by examiner]
US 11889025B1 · Berger · 2024 [cited by examiner]
US 20030083080A1 · Fournier · 2003 [cited by examiner]
US 20050041796A1 · Joseph · 2005 [cited by examiner]
US 20100054450A1 · Southwick · 2010 [cited by examiner]
US 20100169156A1 · Gustafson · 2010 [cited by examiner]
US 20180261238A1 · Togawa · 2018 [cited by examiner]
US 20210133780A1 · Adibi · 2021 [cited by examiner]
US 20220270020A1 · Matula · 2022 [cited by examiner]
WO WO2016128790A1 · 2016 [cited by examiner]
WO WO2020005260A1 · 2020 [cited by examiner]
Cited By (1)
US 12,579,986