summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorMark Michelson <mmichelson@digium.com>2007-08-27 21:09:37 +0000
committerMark Michelson <mmichelson@digium.com>2007-08-27 21:09:37 +0000
commit8b0c744786940ef5fa07ef5055506bdd27ba4c27 (patch)
tree8681bf3566144a7f48f9ab868c053a5ebdcca443 /channels
parent8ba30bb7bd921d4286e4008bc339b519f7d5a186 (diff)
Merged revisions 81120 via svnmerge from
https://origsvn.digium.com/svn/asterisk/branches/1.4 ........ r81120 | mmichelson | 2007-08-27 16:08:48 -0500 (Mon, 27 Aug 2007) | 7 lines 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: https://origsvn.digium.com/svn/asterisk/trunk@81121 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rw-r--r--channels/chan_agent.c6
1 files changed, 6 insertions, 0 deletions
diff --git a/channels/chan_agent.c b/channels/chan_agent.c
index fbdc756e1..3ff994473 100644
--- a/channels/chan_agent.c
+++ b/channels/chan_agent.c
@@ -472,6 +472,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 == '#')) {
ast_verb(3, "%s acknowledged\n", p->chan->name);