From 41000cfbba64fca365572c7c1e1a4b1d1afddd76 Mon Sep 17 00:00:00 2001 From: joshebosh Date: Wed, 23 Oct 2019 16:00:28 -0400 Subject: [PATCH] [mod_loopback] add channel var loopback_no_pre_answer --- src/mod/endpoints/mod_loopback/mod_loopback.c | 8 ++++++-- 1 file changed, 6 insertions(+), 2 deletions(-) diff --git a/src/mod/endpoints/mod_loopback/mod_loopback.c b/src/mod/endpoints/mod_loopback/mod_loopback.c index 6d77eb946b..9025af31c9 100644 --- a/src/mod/endpoints/mod_loopback/mod_loopback.c +++ b/src/mod/endpoints/mod_loopback/mod_loopback.c @@ -1149,7 +1149,9 @@ static switch_call_cause_t channel_outgoing_channel(switch_core_session_t *sessi ochannel = switch_core_session_get_channel(session); switch_channel_clear_flag(ochannel, CF_PROXY_MEDIA); switch_channel_clear_flag(ochannel, CF_PROXY_MODE); - switch_channel_pre_answer(ochannel); + if (!switch_channel_var_true(ochannel, "loopback_no_pre_answer")) { + switch_channel_pre_answer(ochannel); + } } if ((*new_session = switch_core_session_request(loopback_endpoint_interface, SWITCH_CALL_DIRECTION_OUTBOUND, flags, pool)) != 0) { @@ -1593,7 +1595,9 @@ static switch_call_cause_t null_channel_outgoing_channel(switch_core_session_t * ochannel = switch_core_session_get_channel(session); switch_channel_clear_flag(ochannel, CF_PROXY_MEDIA); switch_channel_clear_flag(ochannel, CF_PROXY_MODE); - switch_channel_pre_answer(ochannel); + if (!switch_channel_var_true(ochannel, "loopback_no_pre_answer")) { + switch_channel_pre_answer(ochannel); + } } if ((*new_session = switch_core_session_request(null_endpoint_interface, SWITCH_CALL_DIRECTION_OUTBOUND, flags, pool)) != 0) {