mirror of
https://github.com/signalwire/freeswitch.git
synced 2025-04-29 05:30:14 +00:00
finishing touches on last commit
This commit is contained in:
parent
13dc6058bc
commit
4d12f0ce16
@ -4161,15 +4161,20 @@ static void sofia_handle_sip_r_invite(switch_core_session_t *session, int status
|
|||||||
switch_channel_set_variable(channel, "sip_user_agent", sip->sip_server->g_string);
|
switch_channel_set_variable(channel, "sip_user_agent", sip->sip_server->g_string);
|
||||||
}
|
}
|
||||||
|
|
||||||
|
if (status == 200) {
|
||||||
|
sofia_glue_set_extra_headers(channel, sip, SOFIA_SIP_RESPONSE_HEADER_PREFIX);
|
||||||
|
} else {
|
||||||
sofia_glue_set_extra_headers(channel, sip, SOFIA_SIP_PROGRESS_HEADER_PREFIX);
|
sofia_glue_set_extra_headers(channel, sip, SOFIA_SIP_PROGRESS_HEADER_PREFIX);
|
||||||
|
}
|
||||||
|
|
||||||
if (!(vval = switch_channel_get_variable(channel, "sip_copy_custom_headers")) || switch_true(vval)) {
|
if (!(vval = switch_channel_get_variable(channel, "sip_copy_custom_headers")) || switch_true(vval)) {
|
||||||
switch_core_session_t *other_session;
|
switch_core_session_t *other_session;
|
||||||
|
|
||||||
if (switch_core_session_get_partner(session, &other_session) == SWITCH_STATUS_SUCCESS) {
|
if (switch_core_session_get_partner(session, &other_session) == SWITCH_STATUS_SUCCESS) {
|
||||||
switch_ivr_transfer_variable(session, other_session, SOFIA_SIP_PROGRESS_HEADER_PREFIX_T);
|
|
||||||
if (status == 200) {
|
if (status == 200) {
|
||||||
switch_ivr_transfer_variable(session, other_session, SOFIA_SIP_RESPONSE_HEADER_PREFIX_T);
|
switch_ivr_transfer_variable(session, other_session, SOFIA_SIP_RESPONSE_HEADER_PREFIX_T);
|
||||||
|
} else {
|
||||||
|
switch_ivr_transfer_variable(session, other_session, SOFIA_SIP_PROGRESS_HEADER_PREFIX_T);
|
||||||
}
|
}
|
||||||
switch_core_session_rwunlock(other_session);
|
switch_core_session_rwunlock(other_session);
|
||||||
}
|
}
|
||||||
|
Loading…
x
Reference in New Issue
Block a user