So to answer my own question, yes it does seem to be broken, the
following patch fixes it but I'm not sure if this is the right thing to do:
diff --git a/src/mod/endpoints/mod_sofia/sofia.c
b/src/mod/endpoints/mod_sofia/sofia.c
index b76a804..29f233d 100644
--- a/src/mod/endpoints/mod_sofia/sofia.c
+++ b/src/mod/endpoints/mod_sofia/sofia.c
@@ -6532,15 +6532,20 @@ static void
sofia_handle_sip_r_invite(switch_core_session_t *session, int status
switch_channel_clear_flag(channel, CF_REQ_MEDIA);
if (status < 200) {
- if (switch_core_session_get_partner(session,
&other_session) == SWITCH_STATUS_SUCCESS) {
- if(switch_core_session_compare(session, other_session)) {
- private_object_t *other_tech_pvt
= switch_core_session_get_private(other_session);
- if
(sofia_test_flag(other_tech_pvt, TFLAG_3PCC)) {
- sofia_set_flag_locked(tech_pvt, TFLAG_SKIP_EARLY);
- }
- }
- switch_core_session_rwunlock(other_session);
- }
+//
+// **AlanE**
+// The following code sets TFLAG_SKIP_EARLY for the b-leg of a call
with a 3PCC on the a-leg
+// this then later on causes the call to fail with no write codec error
+// Just commenting the code out seems to fix the issue
+// if (switch_core_session_get_partner(session,
&other_session) == SWITCH_STATUS_SUCCESS) {
+// if(switch_core_session_compare(session, other_session)) {
+// private_object_t *other_tech_pvt
= switch_core_session_get_private(other_session);
+// if
(sofia_test_flag(other_tech_pvt, TFLAG_3PCC)) {
+// sofia_set_flag_locked(tech_pvt, TFLAG_SKIP_EARLY);
+// }
+// }
+// switch_core_session_rwunlock(other_session);
+// }
if (sofia_test_flag(tech_pvt, TFLAG_SKIP_EARLY)) {
return;
_________________________________________________________________________
The FreeSWITCH project is sponsored by SignalWire https://signalwire.com
Enhance your FreeSWITCH install with disruptive priced SMS and PSTN services.
Build your next product on our scalable cloud platform.
Join our online community to chat in real time https://signalwire.community
Professional FreeSWITCH Services
sales@freeswitch.com
https://freeswitch.com
Official FreeSWITCH Sites
https://freeswitch.com/oss
https://freeswitch.org/confluence
https://cluecon.com
FreeSWITCH-dev mailing list
FreeSWITCH-dev@lists.freeswitch.org
http://lists.freeswitch.org/mailman/listinfo/freeswitch-dev
UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-dev
https://freeswitch.com
Brian West | Co-founder and Developer
Need Commercial support? email sales@freeswitch.com
FreeSWITCH Solutions | 17345 Civic Drive #2531 Brookfield, WI 53045
Email: brian@freeswitch.com
Mobile: 918-424-9378
Website: https://www.FreeSWITCH.com