only track calls once they have been answered
This commit is contained in:
parent
adce3f9c7c
commit
f1e16ccbfa
|
@ -3395,6 +3395,8 @@ SWITCH_DECLARE(switch_status_t) switch_channel_perform_mark_answered(switch_chan
|
|||
|
||||
switch_channel_audio_sync(channel);
|
||||
|
||||
switch_core_recovery_track(channel->session);
|
||||
|
||||
return SWITCH_STATUS_SUCCESS;
|
||||
}
|
||||
|
||||
|
|
|
@ -2722,6 +2722,10 @@ SWITCH_DECLARE(void) switch_core_recovery_untrack(switch_core_session_t *session
|
|||
char *sql = NULL;
|
||||
switch_channel_t *channel = switch_core_session_get_channel(session);
|
||||
|
||||
if (!switch_channel_test_flag(channel, CF_ANSWERED) || switch_channel_get_state(channel) < CS_SOFT_EXECUTE) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (!switch_channel_test_flag(channel, CF_TRACKABLE)) {
|
||||
return;
|
||||
}
|
||||
|
@ -2756,6 +2760,11 @@ SWITCH_DECLARE(void) switch_core_recovery_track(switch_core_session_t *session)
|
|||
const char *profile_name;
|
||||
const char *technology;
|
||||
|
||||
|
||||
if (!switch_channel_test_flag(channel, CF_ANSWERED) || switch_channel_get_state(channel) < CS_SOFT_EXECUTE) {
|
||||
return;
|
||||
}
|
||||
|
||||
if (switch_channel_test_flag(channel, CF_RECOVERING) || !switch_channel_test_flag(channel, CF_TRACKABLE)) {
|
||||
return;
|
||||
}
|
||||
|
|
Loading…
Reference in New Issue