From 415d197da18b6cecc1a2b26474054606a512833a Mon Sep 17 00:00:00 2001 From: Ben Kramer Date: Wed, 6 Oct 2004 10:54:58 +0000 Subject: [PATCH] changed it to not play a received DTMF frame if native bridged! git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@3921 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- channels/chan_vpb.c | 18 +++++++++--------- 1 file changed, 9 insertions(+), 9 deletions(-) diff --git a/channels/chan_vpb.c b/channels/chan_vpb.c index 84f4f651af..be9623abb3 100755 --- a/channels/chan_vpb.c +++ b/channels/chan_vpb.c @@ -550,14 +550,8 @@ static inline int monitor_handle_owned(struct vpb_pvt *p, VPB_EVENT *e) case VPB_DTMF: if (p->owner->_state == AST_STATE_UP) { - if ((strcmp(p->owner->type,"vpb"))||(e->data == '#')||(e->data == '*')){ f.frametype = AST_FRAME_DTMF; f.subclass = e->data; - } - else { - if (option_verbose > 3) - ast_verbose(VERBOSE_PREFIX_4 "%s: handle_owned: Not transmiting DTMF frame on native bridge\n", p->dev); - } } else f.frametype = -1; break; @@ -1835,9 +1829,15 @@ static void *do_chanreads(void *pvt) // This DTMF is played by asterisk and leads to an annoying trailing beep on CISCO phones if( !ignore_dtmf) vpb_set_event_mask(p->handle, VPB_EVENTS_NODTMF ); - vpb_dial_sync(p->handle,p->play_dtmf); - if(option_verbose>1) - ast_verbose( VERBOSE_PREFIX_2 "%s: Played DTMF %s\n",p->dev,p->play_dtmf); + if (strcmp(p->owner->type,"vpb")){ + vpb_dial_sync(p->handle,p->play_dtmf); + if(option_verbose>1) + ast_verbose( VERBOSE_PREFIX_2 "%s: chanreads: Played DTMF %s\n",p->dev,p->play_dtmf); + } + else { + if (option_verbose > 1) + ast_verbose(VERBOSE_PREFIX_2 "%s: chanreads: Not playing DTMF frame on native bridge\n", p->dev); + } p->play_dtmf[0] = '\0'; ast_mutex_unlock(&p->play_dtmf_lock); vpb_sleep(700); // Long enough to miss echo and DTMF event