From: Jeff Peeler Date: Thu, 15 Oct 2009 15:57:14 +0000 (+0000) Subject: Readd removed ability to allow listening to one side of the call in app_chanspy X-Git-Tag: 11.0.0-beta1~4025 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=a39f3a7521bebed699c91346d4e72d26388042ab;p=thirdparty%2Fasterisk.git Readd removed ability to allow listening to one side of the call in app_chanspy (Option o) (closes issue #15675) Reported by: john8675309 Patches: issue15675patchtrunk.txt uploaded by dbrooks (license 790) Tested by: jgutierrez on users list: http://lists.digium.com/pipermail/asterisk-users/2009-October/239155.html git-svn-id: https://origsvn.digium.com/svn/asterisk/trunk@224178 65c4cc65-6c06-0410-ace0-fbb531ad65f3 --- diff --git a/apps/app_chanspy.c b/apps/app_chanspy.c index 553cfb4ff2..c781f37a62 100644 --- a/apps/app_chanspy.c +++ b/apps/app_chanspy.c @@ -435,7 +435,12 @@ static int spy_generate(struct ast_channel *chan, void *data, int len, int sampl return -1; } - f = ast_audiohook_read_frame(&csth->spy_audiohook, samples, AST_AUDIOHOOK_DIRECTION_BOTH, AST_FORMAT_SLINEAR); + if (ast_test_flag(chan, OPTION_READONLY)) { + /* Option 'o' was set, so don't mix channel audio */ + f = ast_audiohook_read_frame(&csth->spy_audiohook, samples, AST_AUDIOHOOK_DIRECTION_READ, AST_FORMAT_SLINEAR); + } else { + f = ast_audiohook_read_frame(&csth->spy_audiohook, samples, AST_AUDIOHOOK_DIRECTION_BOTH, AST_FORMAT_SLINEAR); + } ast_audiohook_unlock(&csth->spy_audiohook);