No, that is wrong.

"If no index is given, the first value will be returned.” [1]

 [1] http://www.opensips.org/Documentation/Script-CoreVar-1-11#toc2

Ben Newlin

From: <Podrigal>, Aron
Reply-To: OpenSIPS users mailling list
Date: Wednesday, July 1, 2015 at 1:29 PM
To: OpenSIPS users mailling list
Subject: Re: [OpenSIPS-Users] Route_to_gw not pushing gw_id to the first index 
of avp

When accessing an avp without explicit index isn't it returning the last index?

# first time svp_gw_id is set
is_from_gw(, i);   #  avp now has (1)

route_to_gw("gw2,gw3,gw4");
# avp now has (gw1, gw2);

if we now access the avp, we can either get explicitly the specific index, or 
we get the last index which is `gw2`.
So if I'm not mistaken, then I don't understand what the problem is here?


Correct me if this is wrong.

On Wed, Jul 1, 2015 at 11:46 AM, Newlin, Ben 
<[email protected]<mailto:[email protected]>> wrote:
I found similar behavior in my implementation, except that I use dr_routing() 
instead of route_to_gw(). When the AVP is already populated, these functions 
simply push on the end. This may be an implementation decision, but it is 
certainly not intuitive or what I expected.

I am currently using the same workaround of clearing out the AVPs prior to each 
DROUTING module call that populates them.

Ben Newlin

From: Patrick Wakano
Reply-To: OpenSIPS users mailling list
Date: Wednesday, July 1, 2015 at 11:41 AM
To: OpenSIPS users mailling list
Subject: Re: [OpenSIPS-Users] Route_to_gw not pushing gw_id to the first index 
of avp

Hello Aron,
After calling is_from_gw("-1","i") I don't need to use the index, because it is 
the only value hold by the avp, but later in my script, if I call route_to_gw() 
and use $avp(dr_gw_id), it still has the value previously pushed by 
is_from_gw(). Then to get the gw id pushed by route_to_gw() I have either to 
use the avp index (e.g. $avp(dr_gw_id)[1]) or I set $avp(dr_gw_id) to null 
before calling route_to_gw() (which is what I am doing now).


On Wed, Jul 1, 2015 at 9:50 AM, Podrigal, Aron 
<[email protected]<mailto:[email protected]>> wrote:

I guess  pushing to the last index of the avp is what's expected.

But how did you retrieve the gw_id from is_from_gw, did you use an explicit 
index?

On Jul 1, 2015 8:16 AM, "Patrick Wakano" 
<[email protected]<mailto:[email protected]>> wrote:
Hello Opensips list,

When using the route_to_gw() function, I noticed that the gw_id that is pushed 
back to the avp wasn't matching the address actually selected by the drouting 
engine.
After some investigation I noticed that earlier in my script I was calling the 
is_from_gw() function with the 'i' flag which also pushes the gw_id to the avp 
and this was the value I was seeing in my avp after calling the route_to_gw().
By debuging with the avp_print() function I could see that the route_to_gw() 
does not pushes the gw_id to first index of the avp, but to the end of it. Any 
reason for that or is it a bug?

Regards,

Patrick

_______________________________________________
Users mailing list
[email protected]<mailto:[email protected]>
http://lists.opensips.org/cgi-bin/mailman/listinfo/users


_______________________________________________
Users mailing list
[email protected]<mailto:[email protected]>
http://lists.opensips.org/cgi-bin/mailman/listinfo/users



_______________________________________________
Users mailing list
[email protected]<mailto:[email protected]>
http://lists.opensips.org/cgi-bin/mailman/listinfo/users




--
Aron Podrigal
-
//Be happy :-)
_______________________________________________
Users mailing list
[email protected]
http://lists.opensips.org/cgi-bin/mailman/listinfo/users

Reply via email to