[OpenSIPS-Users] Provisional response handling in case of forking

Ramachandran, Agalya (Contractor) Agalya_Ramachandran at comcast.com
Wed Jul 27 15:27:35 CEST 2016


Hi Bogdan,

Yes you are correct. Am trying to implement that logic. (keep and log the first 180, drop the others)
Am giving you snippet of onreply_route and relay2 attached here with this mail.

My intention is just to log the response sent by OpenSIPS. For other responses logic seems good and I could see that response sent out are logged.
Only for 180 resposne, am not meeting my condition.
Correct me if am wrong.

Regards,
Agalya
From: Bogdan-Andrei Iancu [mailto:bogdan at opensips.org]
Sent: Wednesday, July 27, 2016 3:22 AM
To: Ramachandran, Agalya (Contractor) <Agalya_Ramachandran at comcast.com>; OpenSIPS users mailling list <users at lists.opensips.org>
Subject: Re: [OpenSIPS-Users] Provisional response handling in case of forking

Hi Agalya,

First, take care that you can set and trigger only one reply route per transaction !

Now, looking at your logic in the script, it does not reflect your statement : keep and log the first 180, drop the others <- is this correct ?

Best regards,


Bogdan-Andrei Iancu

OpenSIPS Founder and Developer

http://www.opensips-solutions.com
On 26.07.2016 21:26, Ramachandran, Agalya (Contractor) wrote:
Hi Bogdan,

I have a question related to the below topic.
When am receiving more than  180 response from different destinations , am sending 1st 180 to the caller and dropping consecutive  180 's.
And this logic is working fine.

Now I have a scenario, where I need to log what are the responses sent out of Opensips.
My logic for this is, am checking the flag value. If flag is set, log the 1st 180 response, reset the flag and drop the remaining 180 response.

I could see FLAG_180 is set, and when I try to reset flag is not getting reset. Is it not possible to reset the flag values when relay is done?
I have added a route(relay2) in onreply_route  Below is the snippet of it.
Please guide me if am doing something wrong.

route[relay2] {
        if ($rs==100)
           drop();
        if ($rs==180) {
          if (isflagset(FLAG_180)){
                xlog("INFO:opensips: Flag is set \n"<INFO:opensips:Flagisset\n>);
                resetflag(FLAG_180);
          }
          else{
              drop();
         }
          #setflag(FLAG_180);
        }
        xlog("INFO:opensips: Sending $rs resposne out \n"<INFO:opensips:Sending$rsresposneout\n>);
}


Regards,
Agalya
From: Bogdan-Andrei Iancu [mailto:bogdan at opensips.org]
Sent: Monday, June 13, 2016 6:31 AM
To: OpenSIPS users mailling list <users at lists.opensips.org><mailto:users at lists.opensips.org>; Ramachandran, Agalya (Contractor) <Agalya_Ramachandran at comcast.com><mailto:Agalya_Ramachandran at comcast.com>
Subject: Re: [OpenSIPS-Users] Provisional response handling in case of forking

Hi Agalya,

Use the onreply route (be sure to onreply_avp_mode to be set to 1 - see http://www.opensips.org/html/docs/modules/2.2.x/tm.html#id294290) in combination with flags, to record when the an 180 reply was set.

Like:

if ($rs==180) {
    if (isflagset(FLAG_180))
        drop();
    setflag(FALG_180);
}

The onreply_avp_mode 1 will ensure that the onreply route will not overlap for 2 replies .

Regards,



Bogdan-Andrei Iancu

OpenSIPS Founder and Developer

http://www.opensips-solutions.com
On 10.06.2016 23:07, Ramachandran, Agalya (Contractor) wrote:
Hi team,

We are using opensips for our project and we are currently using opensips as proxy.
Am forking the incoming sip call, to two destinations. It Rings in both Dest A and Dest B, as a result I get two 180 Ringing response from A and B.
I want to filter only the first incoming 180 Ringing response and send to the actual caller. Is there a way to do this in opensips config file?

I have seen drop() function which drops the complete provisional response. But in my case I have to forward one 180 Ringing to the caller.
Can it be achieved by the changes in config file? Please guide me.

Regards,
Agalya






_______________________________________________

Users mailing list

Users at lists.opensips.org<mailto:Users at lists.opensips.org>

http://lists.opensips.org/cgi-bin/mailman/listinfo/users


-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20160727/e7b8bc55/attachment.htm>
-------------- next part --------------
An embedded and charset-unspecified text was scrubbed...
Name: route.txt
URL: <http://lists.opensips.org/pipermail/users/attachments/20160727/e7b8bc55/attachment.txt>


More information about the Users mailing list