summaryrefslogtreecommitdiff
path: root/channels
diff options
context:
space:
mode:
authorMark Spencer <markster@digium.com>2004-06-13 07:25:27 +0000
committerMark Spencer <markster@digium.com>2004-06-13 07:25:27 +0000
commitfd70e7920e9d7d00d91c8c0f392db1a4799dc677 (patch)
treeb0942b5da1bfeff04180789fb8ceb0f05fd3c8df /channels
parentd030752f72a46b11092be4617aeec566963be2a9 (diff)
Provide dialtone when doing overlap dial (bug #1832)
git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3199 65c4cc65-6c06-0410-ace0-fbb531ad65f3
Diffstat (limited to 'channels')
-rwxr-xr-xchannels/chan_zap.c5
1 files changed, 5 insertions, 0 deletions
diff --git a/channels/chan_zap.c b/channels/chan_zap.c
index 595ed9e51..434a2af2b 100755
--- a/channels/chan_zap.c
+++ b/channels/chan_zap.c
@@ -4408,6 +4408,10 @@ static void *ss_thread(void *data)
len = strlen(exten);
res = 0;
while((len < AST_MAX_EXTENSION-1) && ast_matchmore_extension(chan, chan->context, exten, 1, p->callerid)) {
+ if (len && !ast_ignore_pattern(chan->context, exten))
+ tone_zone_play_tone(p->subs[index].zfd, -1);
+ else
+ tone_zone_play_tone(p->subs[index].zfd, ZT_TONE_DIALTONE);
if (ast_exists_extension(chan, chan->context, exten, 1, p->callerid))
timeout = matchdigittimeout;
else
@@ -4422,6 +4426,7 @@ static void *ss_thread(void *data)
} else
break;
}
+ tone_zone_play_tone(p->subs[index].zfd, -1);
if (ast_exists_extension(chan, chan->context, exten, 1, p->callerid)) {
/* Start the real PBX */
strncpy(chan->exten, exten, sizeof(chan->exten));