From 169f2f91ca2d19c6ac2f23f6af52f1df0889d3c8 Mon Sep 17 00:00:00 2001 From: Antonio Silva Date: Thu, 6 May 2021 19:24:26 +0200 Subject: [PATCH] [mod_sofia] add sip_reply_contact variable --- src/mod/endpoints/mod_sofia/mod_sofia.c | 5 +++++ 1 file changed, 5 insertions(+) diff --git a/src/mod/endpoints/mod_sofia/mod_sofia.c b/src/mod/endpoints/mod_sofia/mod_sofia.c index ce9d520ba8..80910bbd1f 100644 --- a/src/mod/endpoints/mod_sofia/mod_sofia.c +++ b/src/mod/endpoints/mod_sofia/mod_sofia.c @@ -1333,6 +1333,7 @@ static switch_status_t sofia_receive_message(switch_core_session_t *session, swi switch_channel_t *channel = switch_core_session_get_channel(session); private_object_t *tech_pvt = switch_core_session_get_private(session); switch_status_t status = SWITCH_STATUS_SUCCESS; + const char *sip_reply_contact; switch_assert(tech_pvt != NULL); @@ -1356,6 +1357,10 @@ static switch_status_t sofia_receive_message(switch_core_session_t *session, swi goto end; } + if ((sip_reply_contact = switch_channel_get_variable(channel, "sip_reply_contact"))) { + tech_pvt->reply_contact = switch_core_session_sprintf(session, sip_reply_contact); + } + if (switch_channel_test_flag(channel, CF_CONFERENCE) && !zstr(tech_pvt->reply_contact) && !switch_stristr(";isfocus", tech_pvt->reply_contact)) { tech_pvt->reply_contact = switch_core_session_sprintf(session, "%s;isfocus", tech_pvt->reply_contact); }