Hello,
following situation.
I have a Kamailio (5.4) using rtpengine to loadbalance calls.
If a call from Alice comes in, Kamailio decides to send the call to Carrier
B from Bob.
Bobs Phone is ringing and the carrier B send a 183 Session Progress with
SDP and To-tag=abcd. The SDP has G722 as codec and port 1234.
A few moments later carrier B send a second 183 Session Progress with SDP
and TO-tag=fghi. The SDP has G711 as codec and port 5678. This is done, to
play some funky music as ringtone -.-
If Bob answers the call, carrier B sends a 200 OK WITHOUT SDP and
TO-tag=abcd. So this should instruct our Kamailio to switch to the first
G722 and port 1234.
But sadly, this is just not working as expected.
We tried to set the flags media-handover and port-latching for the
rtpengine options and additionally set a to-tag when using rtpenging_manage.
But this doesn't solve the codec change, so we have only audio when Bob
answers the call, but no ringtone-music. If we allow G711 only in the
outgoing INVITE to Bob, we have also tha ringtone-muisic, because there is
no codec-change.
Carrier B tells us, they are using a fork-mechanism.
Is there something we can do, to support the codec change in 183? Or
enforce carrier B to send SDP in 200 OK? Or anything else?
Carrier B can not change anything in the ringtone-music-backend. They are
stuck on G711.
Thanks!