Hello. We are facing the following problem with our FS setup:
1. provider sends us INVITE with "a=sendonly" in SDP
2. FS picks up the call, playing ivr and replying with 200 and "a=recvonly" in SDP
3. provider sends Re-INVITE without SDP
4. FS replying 200 with already negotiated SDP (single codec and "a=recvonly")
Provider
wants renegotiation of sdp on step 4, or a least "a=sendrecv"
parameter. Is there a way to achieve this without source modification?
We tried setting following profile parameters:
renegotiate-codec-on-hold=true
renegotiate-codec-on-reinvite=true
enable-3pcc=true
but no luck. The only solution we found was modifing sofia.c like this:
line 7374 - replace switch_core_media_gen_local_sdp(session, SDP_TYPE_RESPONSE, NULL, 0, NULL, 0); with switch_core_media_gen_local_sdp(session, SDP_TYPE_RESPONSE, NULL, 0, "sendrecv", 0);
line
7376 - replace nua_respond(tech_pvt->nh, SIP_200_OK, TAG_END());
with nua_respond(tech_pvt->nh, SIP_200_OK,
SOATAG_USER_SDP_STR(tech_pvt->mparams.local_sdp_str), TAG_END());
Thanks.