[Asterisk-Users] Answering Machine Detection

Eric Wieling eric at fnords.org
Tue Oct 28 19:12:17 MST 2003


Humans tend to say "Hello?" (short burst of audio followed by silence),
and answering machines tend to say "I'm sorry I'm not here right now,
please leave a message after the beep" (long burst of audio followed by
a beep and silence).  

So, basically you need to decide 1) what is audio and what is background
noise and 2) how long should there be audio followed by silence.

On Tue, 2003-10-28 at 19:25, Alastair Maw wrote:
> On 27/10/03 21:57, DUSTIN WILDES wrote:
> > Does anyone have any recommendations on implementing Answering
> > Machine detection for call generation programs?
> 
> There's obviously no nice way of doing this.
> If you're doing telemarketing, and you're playing pre-recorded audio, 
> which of course is a nasty thing to do, the algorithm is something like:
> 
> 1. Dial out.
> 2. Wait for answer.
> 3. Start playing audio.
> 4. If you hear something that sounds like a beep, either hang up
>     and try again later, or stop the audio, pause for two seconds
>     and start playing it again.
> 5. Hang up when finished playing audio.
> 
> Step 4 is accomplished by doing a FFT on the incoming audio into 
> frequency buckets and taking a rolling average of the mean and standard 
> deviation, such that you can detect when a fixed monotone beep occurs at 
> the other end.
> 
> 
> If you don't want to play audio files and wait for beeps, and want to 
> connect real humans to each other, then there's no decent way to do 
> this, as the only difference between humans and arbitrary answering 
> machines is that the answering machines give you a beep prompt to record 
> your message.
> 
> Regards,
-- 
Sample configs, scripts, more : http://www.fnords.org/~eric/asterisk/

BTEL Consulting 504-899-1387 or 850-484-4545 or 877-677-9643




More information about the asterisk-users mailing list