Merge pull request #207 in FS/freeswitch from ~MBRANCA/freeswitch:bugfix/FS-6954-freeswitch-adds-additional-m-audio to master
* commit 'ca2dd2f3ba80924567472c0516ee8bac2af34d6a': FS-6954 Detect when we have T.38 in nomedia or proxy media mode and apply same fixups as in media mode.
This commit is contained in:
commit
36e1840d63
|
@ -696,6 +696,7 @@ switch_status_t sofia_glue_do_invite(switch_core_session_t *session)
|
|||
char *record_route = NULL;
|
||||
const char *recover_via = NULL;
|
||||
int require_timer = 1;
|
||||
uint8_t is_t38 = 0;
|
||||
|
||||
if (switch_channel_test_flag(tech_pvt->channel, CF_RECOVERING)) {
|
||||
const char *recover_contact = switch_channel_get_variable(tech_pvt->channel, "sip_recover_contact");
|
||||
|
@ -1235,9 +1236,12 @@ switch_status_t sofia_glue_do_invite(switch_core_session_t *session)
|
|||
|
||||
|
||||
|
||||
if (switch_channel_get_private(tech_pvt->channel, "t38_options")) {
|
||||
if ((switch_channel_get_private(tech_pvt->channel, "t38_options")) ||
|
||||
((sofia_test_flag(tech_pvt, TFLAG_INB_NOMEDIA) || sofia_test_flag(tech_pvt, TFLAG_PROXY_MEDIA))
|
||||
&& switch_stristr("m=image", tech_pvt->mparams.local_sdp_str))) {
|
||||
sofia_clear_flag(tech_pvt, TFLAG_ENABLE_SOA);
|
||||
}
|
||||
is_t38 = 1;
|
||||
}
|
||||
|
||||
if (sofia_use_soa(tech_pvt)) {
|
||||
nua_invite(tech_pvt->nh,
|
||||
|
@ -1272,7 +1276,7 @@ switch_status_t sofia_glue_do_invite(switch_core_session_t *session)
|
|||
TAG_IF(!zstr(tech_pvt->mparams.local_sdp_str), SOATAG_ADDRESS(tech_pvt->mparams.adv_sdp_audio_ip)),
|
||||
TAG_IF(!zstr(tech_pvt->mparams.local_sdp_str), SOATAG_USER_SDP_STR(tech_pvt->mparams.local_sdp_str)),
|
||||
TAG_IF(!zstr(tech_pvt->mparams.local_sdp_str), SOATAG_REUSE_REJECTED(1)),
|
||||
TAG_IF(switch_channel_get_private(tech_pvt->channel, "t38_options"), SOATAG_ORDERED_USER(1)),
|
||||
TAG_IF(is_t38, SOATAG_ORDERED_USER(1)),
|
||||
TAG_IF(!zstr(tech_pvt->mparams.local_sdp_str), SOATAG_RTP_SORT(SOA_RTP_SORT_REMOTE)),
|
||||
TAG_IF(!zstr(tech_pvt->mparams.local_sdp_str), SOATAG_RTP_SELECT(SOA_RTP_SELECT_ALL)),
|
||||
TAG_IF(rep, SIPTAG_REPLACES_STR(rep)),
|
||||
|
|
Loading…
Reference in New Issue