mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-05-01 22:33:48 +00:00
FS-7929 #resolve [ignore_early_media=true behaviour]
This commit is contained in:
parent
56d83d1967
commit
a53659c086
@ -122,6 +122,7 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_events(switch_core_session_
|
|||||||
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_next_event(switch_core_session_t *session);
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_next_event(switch_core_session_t *session);
|
||||||
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_messages(switch_core_session_t *session);
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_messages(switch_core_session_t *session);
|
||||||
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_signal_data(switch_core_session_t *session);
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_signal_data(switch_core_session_t *session);
|
||||||
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_signal_data(switch_core_session_t *session, switch_bool_t all, switch_bool_t only_session_thread);
|
||||||
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_next_signal_data(switch_core_session_t *session);
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_next_signal_data(switch_core_session_t *session);
|
||||||
SWITCH_DECLARE(switch_status_t) switch_ivr_process_indications(switch_core_session_t *session, switch_core_session_message_t *message);
|
SWITCH_DECLARE(switch_status_t) switch_ivr_process_indications(switch_core_session_t *session, switch_core_session_message_t *message);
|
||||||
|
|
||||||
|
@ -3146,6 +3146,8 @@ static void *SWITCH_THREAD_FUNC camp_music_thread(switch_thread_t *thread, void
|
|||||||
}
|
}
|
||||||
|
|
||||||
while (stake->running && switch_channel_ready(channel)) {
|
while (stake->running && switch_channel_ready(channel)) {
|
||||||
|
switch_ivr_parse_signal_data(session, SWITCH_TRUE, SWITCH_FALSE);
|
||||||
|
|
||||||
if (status != SWITCH_STATUS_BREAK) {
|
if (status != SWITCH_STATUS_BREAK) {
|
||||||
if (!strcasecmp(moh, "silence")) {
|
if (!strcasecmp(moh, "silence")) {
|
||||||
status = switch_ivr_collect_digits_callback(session, &args, 0, 0);
|
status = switch_ivr_collect_digits_callback(session, &args, 0, 0);
|
||||||
|
@ -820,14 +820,14 @@ SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_messages(switch_core_sessio
|
|||||||
}
|
}
|
||||||
|
|
||||||
|
|
||||||
static switch_status_t switch_ivr_parse_signal_data(switch_core_session_t *session, switch_bool_t all)
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_signal_data(switch_core_session_t *session, switch_bool_t all, switch_bool_t only_session_thread)
|
||||||
{
|
{
|
||||||
void *data;
|
void *data;
|
||||||
switch_core_session_message_t msg = { 0 };
|
switch_core_session_message_t msg = { 0 };
|
||||||
int i = 0;
|
int i = 0;
|
||||||
switch_channel_t *channel = switch_core_session_get_channel(session);
|
switch_channel_t *channel = switch_core_session_get_channel(session);
|
||||||
|
|
||||||
if (!switch_core_session_in_thread(session)) {
|
if (only_session_thread && !switch_core_session_in_thread(session)) {
|
||||||
return SWITCH_STATUS_FALSE;
|
return SWITCH_STATUS_FALSE;
|
||||||
}
|
}
|
||||||
|
|
||||||
@ -857,11 +857,11 @@ static switch_status_t switch_ivr_parse_signal_data(switch_core_session_t *sessi
|
|||||||
}
|
}
|
||||||
|
|
||||||
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_signal_data(switch_core_session_t *session) {
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_signal_data(switch_core_session_t *session) {
|
||||||
return switch_ivr_parse_signal_data(session, SWITCH_TRUE);
|
return switch_ivr_parse_signal_data(session, SWITCH_TRUE, SWITCH_FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_next_signal_data(switch_core_session_t *session) {
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_next_signal_data(switch_core_session_t *session) {
|
||||||
return switch_ivr_parse_signal_data(session, SWITCH_FALSE);
|
return switch_ivr_parse_signal_data(session, SWITCH_FALSE, SWITCH_FALSE);
|
||||||
}
|
}
|
||||||
|
|
||||||
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_events(switch_core_session_t *session)
|
SWITCH_DECLARE(switch_status_t) switch_ivr_parse_all_events(switch_core_session_t *session)
|
||||||
|
Loading…
x
Reference in New Issue
Block a user