diff options
author | alecdavis <alecdavis@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-12-15 03:08:54 +0000 |
---|---|---|
committer | alecdavis <alecdavis@f38db490-d61c-443f-a65b-d21fe96a405b> | 2009-12-15 03:08:54 +0000 |
commit | 7a5f6acd07f749ee3d898a9020726aa7884458bf (patch) | |
tree | 1df117730096e8b0b880a0713449535472cedbb2 /main/dsp.c | |
parent | 27a594703450095d6627c62321f4c3f1055d14e8 (diff) |
restarts busydetector (if enabled) when DTMF is received.
(closes issue #16389)
Reported by: alecdavis
Tested by: alecdavis
Patch
dtmf_busydetector.diff.txt uploaded by alecdavis (license 585)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.6.2@234898 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'main/dsp.c')
-rw-r--r-- | main/dsp.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/main/dsp.c b/main/dsp.c index 8c4a61d21..97b5ba097 100644 --- a/main/dsp.c +++ b/main/dsp.c @@ -1410,6 +1410,12 @@ struct ast_frame *ast_dsp_process(struct ast_channel *chan, struct ast_dsp *dsp, memmove(dsp->digit_state.digits, dsp->digit_state.digits + 1, dsp->digit_state.current_digits); dsp->digit_state.current_digits--; dsp->dtmf_began = 0; + + if (dsp->features & DSP_FEATURE_BUSY_DETECT) { + /* Reset Busy Detector as we have some confirmed activity */ + memset(dsp->historicsilence, 0, sizeof(dsp->historicsilence)); + memset(dsp->historicnoise, 0, sizeof(dsp->historicnoise)); + } } if (event) { |