[Serusers] SER + mediaproxy + fork + 183 Session Porgress

Andrea Bondavalli a.bondavalli at inet.it
Tue Sep 14 19:09:17 CEST 2004


Hi all,

I am experiencing some problems while configuring SER in order to
fork between different contacts (a SIP UA and a SIP Gateway)  and passing
through a mediaproxy:

The scenario is the following:

UA1 -> SER : INVITE sip:bonda at inet.it
SER forks:
SER -> UA2 : INVITE sip:bonda@[local-ip]     {SDP is changed by mediaproxy module}
SER -> GW: INVITE sip:PSTN-NUMBER@[gateway-ip]   {SDP is changed by mediaproxy module}
GW  -> SER: 183 Session Progress 
SER  -> UA1: 183 Session Progress {SDP is changed by mediaproxy module}   
Audio session with the mediaproxy is Active
UA2 -> SER: 180 Ringing
SER -> UA1:  180 Ringing
UA2 -> SER: 200 OK 
SER -> UA1: 200 OK {SDP is changed by mediaproxy module}
Audio session with the mediaproxy is Active, but is not updated !
SER -> GW: CANCEL 
....

The call gets connected, but the problem is that the audio session is mute:  
the audio session parameters are not updated by the mediaproxy module.

My reply route is:

onreply_route[1] {

    if (status=~"(183)|2[0-9][0-9]") {
        if (client_nat_test("1")) {
            fix_contact();
        };
        use_media_proxy();
    };

    if (status=~"[3-6]0[0-9]") {
        end_media_session();
        break;
    };
}

so, during my session I call twice the use_media_proxy() function (with the some Call-Id), but the 
audio sessions parameters (IP addr, port) are those specified by the
'183 Session Progress' sent by the GW and not those specified by the 
'200 OK' sent by UA2.

Can you help me on this ?

Thank you a lot in advance,
Andrea Bondavalli




More information about the sr-users mailing list