diff options
author | mmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-08-27 21:08:48 +0000 |
---|---|---|
committer | mmichelson <mmichelson@f38db490-d61c-443f-a65b-d21fe96a405b> | 2007-08-27 21:08:48 +0000 |
commit | 10ac8e4ff707e274aba71b22a0c3bd85a597df1c (patch) | |
tree | 82b6dcd79506903dad4d9e3f26ace621158d2b4a /channels | |
parent | 3ef8e8dbd45dd780ac6a3dd4c8a0a8b6412c1a75 (diff) |
DTMF begin frames should be ignored so that when an agent acks a call with the '#' key,
he doesn't cause a queue's announce file to be interrupted. Also went ahead and did the
same for the '*' key and for ending a call.
(closes issue #10528, reported by deskhack, patched by me)
git-svn-id: http://svn.digium.com/svn/asterisk/branches/1.4@81120 f38db490-d61c-443f-a65b-d21fe96a405b
Diffstat (limited to 'channels')
-rw-r--r-- | channels/chan_agent.c | 6 |
1 files changed, 6 insertions, 0 deletions
diff --git a/channels/chan_agent.c b/channels/chan_agent.c index 7f1d1cb7c..79c3d230b 100644 --- a/channels/chan_agent.c +++ b/channels/chan_agent.c @@ -494,6 +494,12 @@ static struct ast_frame *agent_read(struct ast_channel *ast) } break; case AST_FRAME_DTMF_BEGIN: + /*ignore DTMF begin's as it can cause issues with queue announce files*/ + if((!p->acknowledged && f->subclass == '#') || (f->subclass == '*' && endcall)){ + ast_frfree(f); + f = &ast_null_frame; + } + break; case AST_FRAME_DTMF_END: if (!p->acknowledged && (f->subclass == '#')) { if (option_verbose > 2) |