diff --git a/src/mod/endpoints/mod_sofia/sofia_glue.c b/src/mod/endpoints/mod_sofia/sofia_glue.c index 8138665f2d..4fb1a0f2ae 100644 --- a/src/mod/endpoints/mod_sofia/sofia_glue.c +++ b/src/mod/endpoints/mod_sofia/sofia_glue.c @@ -930,6 +930,7 @@ switch_status_t sofia_glue_do_invite(switch_core_session_t *session) const char *val; const char *rep; char *sticky = NULL; + const char *call_id = NULL; rep = switch_channel_get_variable(channel, SOFIA_REPLACES_HEADER); @@ -1156,6 +1157,8 @@ switch_status_t sofia_glue_do_invite(switch_core_session_t *session) sofia_glue_tech_patch_sdp(tech_pvt); } + call_id = switch_channel_get_variable(channel, "sip_outgoing_call_id"); + nua_invite(tech_pvt->nh, NUTAG_AUTOANSWER(0), NUTAG_SESSION_TIMER(session_timeout), @@ -1164,6 +1167,7 @@ switch_status_t sofia_glue_do_invite(switch_core_session_t *session) TAG_IF(!switch_strlen_zero(extra_headers), SIPTAG_HEADER_STR(extra_headers)), TAG_IF(!switch_strlen_zero(max_forwards), SIPTAG_MAX_FORWARDS_STR(max_forwards)), TAG_IF(sticky, NUTAG_PROXY(tech_pvt->record_route)), + TAG_IF(call_id, SIPTAG_CALL_ID_STR(call_id)), SOATAG_USER_SDP_STR(tech_pvt->local_sdp_str), SOATAG_REUSE_REJECTED(1), SOATAG_ORDERED_USER(1),