My company is trying to interoperate with the asterisk. We have a back-to-back SIP user agent (B2BUA) that communicates with the asterisk (*):
gateway <–> Our B2BUA <–> * <–> phone
During a call the initial negotiated codec is G.729 with RTP directly between the gateway and the phone (i.e. * is not in the media path, nor is our B2BUA). Our B2BUA sends a (re)INVITE to renegotiate the codec to G.711. The * responds with 200 OK, with an SDP allowing G.711 and the RTP target still pointed to the phone, then sends a (re)INVITE to the phone with an SDP indicating G.729 and RTP target of the gateway. Obviously, this results in the two enpoints talking a different language, thus no intelligible audio is transferred.
We have tried several versions: 1.2.0, 1.2.24, 1.4.0, 1.4.13. Each had a different behavior, but the result was the same: no audio after the (re)INVITEs. The above scenario occurred with version 1.4.13.
Is this a known issue? Is there a fix for this?