[OpenSIPS-Users] Sorting Lists of Data

Brett Nemeroff brett at nemeroff.com
Fri May 14 15:47:29 CEST 2010


Bogdan,
Thanks for this.. I'll give it a shot. This should be pretty fast, right?

I didn't understand in the set_select_weight function what sets the weight
of each element. ?

Thanks!
-Brett


On Fri, May 14, 2010 at 3:38 AM, Bogdan-Andrei Iancu <bogdan at voice-system.ro
> wrote:

> Hi Brett,
>
> There is no such builtin functionality - what we have is for weight-base
> selection (see
> http://www.opensips.org/html/docs/modules/s1.6.x/cfgutils.html#id228612<http://www.opensips.org/html/docs/modules/1.6.x/cfgutils.html#id228612>
> ).
>
> What I can suggest (as a fast solution) is to implement a bubble-sort
> algh in the script:
>
>    $var(changed) = 1;
>    while ( $var(changed)==1 ) {
>          $var(i) = 0;
>          $var(changed) = 0;
>          while ( $(avp(s:price)[$var(i)+1])!=NULL ) {
>                if ( $(avp(s:price)[$var(i)]) > $(avp(s:price)[$var(i)+1]) )
>                   $var(tmp) = $(avp(s:price)[$var(i)+1]);
>                   $(avp(s:price)[$var(i)+1]) = $(avp(s:price)[$var(i)]) ;
>                   $(avp(s:price)[$var(i)]) = $var(tmp);
>                   $var(changed) = 1;
>                 }
>                 $var(i) = $var(i) + 1;
>          }
>    }
>
> haven't tried that so far :P
>
> Regards,
> Bogdan
>
> Brett Nemeroff wrote:
> > Hello All,
> > I'm looking to numerically sort data.. Basically what I need is an
> > array with numerical data values to be sorted (yes, for pricing)
> >
> >
> > $avp(s:price)[0]=0.0125
> > $avp(s:price)[1]=0.0138
> > $avp(s:price)[2]=0.0128
> > $avp(s:price)[3]=0.0112
> > $avp(s:price)[4]=0.0005
> > $avp(s:price)[5]=0.0149
> >
> >
> > And I'd like to....
> >
> > <magic>
> > $avp(s:price_sorted) = avp_sort("$avp(s:price)");
> > </magic>
> >
> > Is that possible with.. anything? It doesn't need to be an AVP.. just
> > looking for any sortable data structure.
> >
> > Thanks,
> > Brett
> >
> >
> > ------------------------------------------------------------------------
> >
> > _______________________________________________
> > Users mailing list
> > Users at lists.opensips.org
> > http://lists.opensips.org/cgi-bin/mailman/listinfo/users
> >
>
>
> --
> Bogdan-Andrei Iancu
> www.voice-system.ro
>
>
> _______________________________________________
> Users mailing list
> 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/20100514/f0713265/attachment.htm 


More information about the Users mailing list