aboutsummaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authormattf <mattf@f38db490-d61c-443f-a65b-d21fe96a405b>2005-08-22 16:47:22 +0000
committermattf <mattf@f38db490-d61c-443f-a65b-d21fe96a405b>2005-08-22 16:47:22 +0000
commite572e99b48813821937a044e16da555260b8b9f5 (patch)
tree064cee63eb4c5ef5d590545ebf67a7449f47095e
parentc4dc10e395960c2f623694cdb8a589b70fdac6c0 (diff)
Commit backport of fix to DTMF detection during overlap mode
git-svn-id: http://svn.digium.com/svn/asterisk/branches/v1-0@6348 f38db490-d61c-443f-a65b-d21fe96a405b
-rwxr-xr-xchannels/chan_zap.c8
1 files changed, 7 insertions, 1 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index f7f2969a2..5e0cec8f5 100755
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -3092,7 +3092,13 @@ static struct ast_frame *zt_handle_event(struct ast_channel *ast)
p->pulsedial = 1;
else
p->pulsedial = 0;
- ast_log(LOG_DEBUG, "Pulse dial '%c'\n", res & 0xff);
+ ast_log(LOG_DEBUG, "Detected %sdigit '%c'\n", p->pulsedial ? "pulse " : "", res & 0xff);
+#ifdef ZAPATA_PRI
+ if ((p->proceeding < 2) && p->sig==SIG_PRI && p->pri && p->pri->overlapdial) {
+ p->subs[index].f.frametype = AST_FRAME_NULL;
+ p->subs[index].f.subclass = 0;
+ }
+#endif
p->subs[index].f.frametype = AST_FRAME_DTMF;
p->subs[index].f.subclass = res & 0xff;
/* Unmute conference, return the captured digit */