From f3b413edf10c527cd275b4bdcb54b51fbfc06447 Mon Sep 17 00:00:00 2001 From: Anthony Minessale Date: Fri, 3 Oct 2008 18:14:11 +0000 Subject: [PATCH] write cng frames during sleep git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@9811 d0543943-73ff-0310-b7d9-9358b9ac24b2 --- scripts/trace/sipgrep | 4 ++-- src/switch_ivr.c | 11 ++++++++++- 2 files changed, 12 insertions(+), 3 deletions(-) diff --git a/scripts/trace/sipgrep b/scripts/trace/sipgrep index b1c54da7b9..064a6ebf5a 100755 --- a/scripts/trace/sipgrep +++ b/scripts/trace/sipgrep @@ -17,8 +17,8 @@ $COLORS{'totag'} = 'bold green'; $COLORS{'viabranch'} = 'bold cyan'; $limit=2000; -$ngrep="/usr/local/bin/ngrep"; #path to NGREP -$ngrep_flags="-l"; # Flag for Ngrep +$ngrep="/usr/bin/ngrep"; #path to NGREP +$ngrep_flags="-l -d eth1"; # Flag for Ngrep $colorsmethods="INVITE|REGISTER|BYE|ACK|CANCEL|OPTIONS|REFER|NOTIFY|MESSAGE|INFO|PRACK|UPDATE"; diff --git a/src/switch_ivr.c b/src/switch_ivr.c index 080b45aef4..1a904ecb97 100644 --- a/src/switch_ivr.c +++ b/src/switch_ivr.c @@ -43,8 +43,14 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_sleep(switch_core_session_t *session, switch_channel_t *channel = switch_core_session_get_channel(session); switch_status_t status = SWITCH_STATUS_SUCCESS; switch_time_t start = switch_timestamp_now(), now, done = switch_timestamp_now() + (ms * 1000); - switch_frame_t *read_frame; + switch_frame_t *read_frame, cng_frame = { 0 }; int32_t left, elapsed; + char data[2] = ""; + + cng_frame.data = data; + cng_frame.datalen = 2; + cng_frame.buflen = 2; + cng_frame.flags = SFF_CNG; for (;;) { now = switch_timestamp_now(); @@ -119,6 +125,9 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_sleep(switch_core_session_t *session, break; } } + + switch_core_session_write_frame(session, &cng_frame, SWITCH_IO_FLAG_NONE, 0); + } return status;