diff --git a/src/mod/endpoints/mod_portaudio/mod_portaudio.c b/src/mod/endpoints/mod_portaudio/mod_portaudio.c index 4b4449acf9..1c463952d7 100644 --- a/src/mod/endpoints/mod_portaudio/mod_portaudio.c +++ b/src/mod/endpoints/mod_portaudio/mod_portaudio.c @@ -147,9 +147,6 @@ static switch_status_t channel_on_init(switch_core_session_t *session) last = switch_time_now() - waitsec; if (switch_test_flag(tech_pvt, TFLAG_OUTBOUND)) { - /* Turn on the device */ - engage_device(tech_pvt); - switch_log_printf(SWITCH_CHANNEL_LOG, SWITCH_LOG_DEBUG, "%s CHANNEL INIT %d %d\n", switch_channel_get_name(channel), switch_channel_get_state(channel), switch_test_flag(tech_pvt, TFLAG_ANSWER)); @@ -173,6 +170,11 @@ static switch_status_t channel_on_init(switch_core_session_t *session) } switch_yield(50000); } + + if (switch_channel_ready(channel)) { + /* Turn on the device */ + engage_device(tech_pvt); + } }