[OpenSIPS-Users] Regarding opensips-1.11 variable use .

Bogdan-Andrei Iancu bogdan at opensips.org
Wed Sep 14 16:23:04 CEST 2016


Hi,

Ideally you should init the vars before their usage, rather than trying 
to reset afterwards. It is much safer.

Regards,

Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com

On 14.09.2016 16:59, Benjamin Cropley wrote:
> the value of script variables persists over any given OpenSIPS 
> process. Therefore, to ensure the value is null on every entry to the 
> route (if a subsequent packet is recieved on the same process) you 
> must set the value back to Null before the route is exited.
>
> eg..
> route{
>     if (method=="INVITE") {
> if(is_present_hf("X-Info")){
>             # assign values to vars...
> $var(c)=$hdr(X-Info);
> $var(d)=$(var(c){s.select,2,;});
> $var(e)=$(var(c){s.select,3,;});
> $var(f)=$(var(c){s.select,4,;});
>         }
>
>         #Set the flag for counting the dialogs. We user flag=4 for 
> counting dialogs
>         setflag(2);
>         setflag(4);
>         xlog( "L_NOTICE", "CallCenter_Info & $ci,$var(c) \n" );
>         xlog( "L_NOTICE", "3CLogicCDR & $ci,$fU,$oU,$rd \n" );
>         xlog("L_NOTICE", " Source IP ($si) :  method ($rm) r-uri ($ru) 
> : callID $ci \n");
>         # set vars back to null..
>         $var(c)="";
>         $var(d)="";
>         $var(e)="";
>         $var(f)="";
>         exit;
>     }
> }
>
> I think this feature will have existed in both 1.6 and 1.11 (see 
> https://www.opensips.org/Documentation/Script-CoreVar-1-6#toc1 and 
> https://www.opensips.org/Documentation/Script-CoreVar-1-11#toc1). 
> Maybe something else is going on to make it 'work' in 1.6?
>
> On Wed, Sep 14, 2016 at 2:34 PM, Sasmita Panda <spanda at 3clogic.com 
> <mailto:spanda at 3clogic.com>> wrote:
>
>     Hi All ,
>
>      I am using opensips-1.11 .
>
>     My config file looks like bellow .
>
>     *  if (method=="INVITE") {*
>     *
>     *
>     *if(is_present_hf("X-Info"))
>     *
>     *                       {*
>     *$var(c)=$hdr(X-Info);*
>     *$var(d)=$(var(c){s.select,2,;});*
>     *$var(e)=$(var(c){s.select,3,;});*
>     *$var(f)=$(var(c){s.select,4,;});*
>     *                       }*
>     *
>     *
>     *
>     *
>     *       #Set the flag for counting the dialogs. We user flag=4 for
>     counting dialogs*
>     *   setflag(2);*
>     *   setflag(4);*
>     *                    xlog( "L_NOTICE", "CallCenter_Info &
>     $ci,$var(c) \n" );*
>     *                    xlog( "L_NOTICE", "3CLogicCDR &
>     $ci,$fU,$oU,$rd \n" );*
>     *xlog("L_NOTICE", " Source IP ($si) :  method ($rm) r-uri ($ru) :
>     callID $ci \n");*
>     *}*
>
>
>                What I am trying to do is , I am extracting "X-Info"
>     from INVITE message and printing it in logs in place of "$var(c)"
>     . When an INVITE message doesn't have "X-Info" header it prints
>     "<null>" in place of "$var(c)" in logs .
>
>
>     *This is working fine in opensips-1.6 . For each and every call
>     the $var(c) is getting updated . *
>
>     *I am facing some problem in opensips-1.11 . For example : When I
>     am doing a call which has "X-Info"  it prints the value
>     corresponding to that . In the next call , lets the INVITE message
>     don't have "X-Info" , for this rather than printing "<null>" in
>     place of "$var(c)" **its printing the previous value .*
>     *
>     *
>     *
>     *
>     *      I am not getting why this is happening . Please help me . I
>     think the variable is getting saved somewhere and getting printed
>     again and again . *
>
>           How can I solve this problem . Its very critical for me . It
>     will affect my CDR . Please help me .
>
>     */Thanks & Regards/*
>     /Sasmita Panda/
>     /Network Testing and Software Engineer/
>     /3CLogic , ph:07827611765/
>
>     _______________________________________________
>     Users mailing list
>     Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>     http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>     <http://lists.opensips.org/cgi-bin/mailman/listinfo/users>
>
>
>
>
> -- 
> All the best,
> Ben Cropley
> 07539 366 905
>
>
> _______________________________________________
> 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/20160914/8a514496/attachment-0001.htm>


More information about the Users mailing list