if (switch_channel_test_flag(channel, CF_PROXY_MODE)) {
status = SWITCH_STATUS_SUCCESS;
switch_core_session_receive_message(session, &msg);
-
- if (!(flags & SMF_IMMEDIATE)) {
+
+ if ((flags & SMF_IMMEDIATE)) {
+ switch_channel_wait_for_flag(channel, CF_REQ_MEDIA, SWITCH_FALSE, 250, NULL);
+ switch_yield(250000);
+ } else {
switch_channel_wait_for_flag(channel, CF_REQ_MEDIA, SWITCH_FALSE, 10000, NULL);
switch_core_session_read_frame(session, &read_frame, SWITCH_IO_FLAG_NONE, 0);
}
if (switch_channel_test_flag(channel, CF_PROXY_MODE)) {
const char *sbv = switch_channel_get_variable(channel, SWITCH_SIGNAL_BOND_VARIABLE);
- switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_CRIT, "Restore media to %s\n", switch_channel_get_name(channel));
+ switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "Restore media to %s\n", switch_channel_get_name(channel));
switch_ivr_media(switch_core_session_get_uuid(session), SMF_IMMEDIATE);
if (!switch_strlen_zero(sbv) && (sbsession = switch_core_session_locate(sbv))) {