提交 bf0056f3 authored 作者: Anthony Minessale's avatar Anthony Minessale

FS-4729 try this

上级 759d26db
...@@ -1171,6 +1171,7 @@ typedef enum { ...@@ -1171,6 +1171,7 @@ typedef enum {
CF_OUTBOUND, CF_OUTBOUND,
CF_EARLY_MEDIA, CF_EARLY_MEDIA,
CF_BRIDGE_ORIGINATOR, CF_BRIDGE_ORIGINATOR,
CF_UUID_BRIDGE_ORIGINATOR,
CF_TRANSFER, CF_TRANSFER,
CF_ACCEPT_CNG, CF_ACCEPT_CNG,
CF_REDIRECT, CF_REDIRECT,
......
...@@ -745,7 +745,7 @@ static switch_status_t uuid_bridge_on_reset(switch_core_session_t *session) ...@@ -745,7 +745,7 @@ static switch_status_t uuid_bridge_on_reset(switch_core_session_t *session)
cleanup_proxy_mode_b(session); cleanup_proxy_mode_b(session);
if (switch_channel_test_flag(channel, CF_BRIDGE_ORIGINATOR)) { if (switch_channel_test_flag(channel, CF_UUID_BRIDGE_ORIGINATOR)) {
switch_channel_set_state(channel, CS_SOFT_EXECUTE); switch_channel_set_state(channel, CS_SOFT_EXECUTE);
} }
...@@ -767,7 +767,7 @@ static switch_status_t uuid_bridge_on_soft_execute(switch_core_session_t *sessio ...@@ -767,7 +767,7 @@ static switch_status_t uuid_bridge_on_soft_execute(switch_core_session_t *sessio
switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_DEBUG, "%s CUSTOM SOFT_EXECUTE\n", switch_channel_get_name(channel)); switch_log_printf(SWITCH_CHANNEL_SESSION_LOG(session), SWITCH_LOG_DEBUG, "%s CUSTOM SOFT_EXECUTE\n", switch_channel_get_name(channel));
switch_channel_clear_state_handler(channel, &uuid_bridge_state_handlers); switch_channel_clear_state_handler(channel, &uuid_bridge_state_handlers);
if (!switch_channel_test_flag(channel, CF_BRIDGE_ORIGINATOR)) { if (!switch_channel_test_flag(channel, CF_UUID_BRIDGE_ORIGINATOR)) {
return SWITCH_STATUS_SUCCESS; return SWITCH_STATUS_SUCCESS;
} }
...@@ -801,7 +801,7 @@ static switch_status_t uuid_bridge_on_soft_execute(switch_core_session_t *sessio ...@@ -801,7 +801,7 @@ static switch_status_t uuid_bridge_on_soft_execute(switch_core_session_t *sessio
if (running_state == CS_SOFT_EXECUTE) { if (running_state == CS_SOFT_EXECUTE) {
if (switch_channel_test_flag(other_channel, CF_BRIDGE_ORIGINATOR)) { if (switch_channel_test_flag(other_channel, CF_UUID_BRIDGE_ORIGINATOR)) {
goto done; goto done;
} else { } else {
break; break;
...@@ -878,7 +878,7 @@ static switch_status_t uuid_bridge_on_soft_execute(switch_core_session_t *sessio ...@@ -878,7 +878,7 @@ static switch_status_t uuid_bridge_on_soft_execute(switch_core_session_t *sessio
other_session = NULL; other_session = NULL;
} }
switch_channel_clear_flag_recursive(channel, CF_BRIDGE_ORIGINATOR); switch_channel_clear_flag(channel, CF_UUID_BRIDGE_ORIGINATOR);
return SWITCH_STATUS_FALSE; return SWITCH_STATUS_FALSE;
} }
...@@ -1663,10 +1663,11 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_uuid_bridge(const char *originator_uu ...@@ -1663,10 +1663,11 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_uuid_bridge(const char *originator_uu
//switch_channel_set_variable(originatee_channel, SWITCH_PARK_AFTER_BRIDGE_VARIABLE, NULL); //switch_channel_set_variable(originatee_channel, SWITCH_PARK_AFTER_BRIDGE_VARIABLE, NULL);
switch_channel_clear_state_handler(originator_channel, NULL); switch_channel_clear_state_handler(originator_channel, NULL);
switch_channel_clear_state_handler(originatee_channel, NULL); switch_channel_clear_state_handler(originatee_channel, NULL);
switch_channel_clear_flag_recursive(originator_channel, CF_BRIDGE_ORIGINATOR);
switch_channel_clear_flag_recursive(originatee_channel, CF_BRIDGE_ORIGINATOR); switch_channel_clear_state_flag(originator_channel, CF_BRIDGE_ORIGINATOR);
switch_channel_set_state_flag(originator_channel, CF_BRIDGE_ORIGINATOR);
switch_channel_clear_state_flag(originatee_channel, CF_BRIDGE_ORIGINATOR); switch_channel_clear_state_flag(originatee_channel, CF_BRIDGE_ORIGINATOR);
switch_channel_set_state_flag(originator_channel, CF_UUID_BRIDGE_ORIGINATOR);
switch_channel_add_state_handler(originator_channel, &uuid_bridge_state_handlers); switch_channel_add_state_handler(originator_channel, &uuid_bridge_state_handlers);
switch_channel_add_state_handler(originatee_channel, &uuid_bridge_state_handlers); switch_channel_add_state_handler(originatee_channel, &uuid_bridge_state_handlers);
......
Markdown 格式
0%
您添加了 0 到此讨论。请谨慎行事。
请先完成此评论的编辑!
注册 或者 后发表评论