[SR-Users] Problem Storing USRLOC Additional Attributes

Luca Mularoni luca.mularoni at gmail.com
Thu Jul 2 12:45:36 CEST 2015


Hi All,
I'm using kamailio 4.2.5 (compiled from source and aligned up to commit 
[00a36ae07c587992d6486277ce2e9ae6c009685f]).
In order to enrich users data collected during registering phase, I 
would like to store them in USRLOC Additional Attributes
through the use of 'xavp_contact' structure, but I'm having problems 
storing them.
Below relevant chunks of config:

...
# ----- usrloc params -----
modparam("usrloc", "db_mode", 2)
modparam("usrloc", "use_domain", 0)
modparam("usrloc", "xavp_contact", "ulvals")
...

route[REGISTRAR] {
     ...
     # Just an example
     $xavp(ulvals=>A) = "A";
     $xavp(ulvals[0]=>B) = "B";
     $xavp(ulvals[0]=>C) = "C";
     $xavp(ulvals[0]=>D) = "D";
     ...
     if (!save("location"))
         sl_reply_error();
     exit;
}

route[LOCATION] {
     ...
     if(!lookup("location") {
         # Handle Failure
         ...
     }
     # Print USRLOC Additional Attributes
     # Just an Example
     $var(i) = 0;
     $var(N) = $branch(count);
     while($var(i)<=$var(N)) {
         xlog("LOC - [$var(i)] - A [$xavp(ulvals[$var(i)]=>A)]\n");
         xlog("LOC - [$var(i)] - B [$xavp(ulvals[$var(i)]=>B)]\n");
         xlog("LOC - [$var(i)] - C [$xavp(ulvals[$var(i)]=>C)]\n");
         xlog("LOC - [$var(i)] - D [$xavp(ulvals[$var(i)]=>D)]\n");
         $var(i) = $var(i) + 1;
     }
     ...
}

And this is the relevant chunk of syslog when a local subscriber is 
found in 'location' table:
...
LOC - [0] - A [A]
LOC - [0] - B [<null>]
LOC - [0] - C [<null>]
LOC - [0] - D [D]
...

Summing up, it seems that when xavp structure is stored in memory, just 
first and last elementsare inserted.
In real config I'm using more than 4 attributes and behaviour is the 
same: just first and last are stored.
I've tried also with modparam("usrloc", "db_mode", 0) but the problem 
remains.

Where I'm wrong in using this structure? Or it could be a bug?

Thank You in advance for your help

Luca Mularoni




More information about the sr-users mailing list