Hello,

 

can you share the error you have got? If you just want to get the substring of the +34xxxxx@domain URI, have a look to the string transformations on the same link.

 

Cheers,

 

Henning

 

--

Henning Westerholt – https://skalatan.de/blog/

Kamailio services – https://gilawa.com

 

From: sai sudheer <sudheer628@yahoo.com>
Sent: Tuesday, October 13, 2020 5:04 PM
To: Henning Westerholt <hw@skalatan.de>; Henning Westerholt <hw@skalatan.de>; Kamailio (SER) - Users Mailing List <sr-users@lists.kamailio.org>
Subject: RE: [SR-Users] how to get a value from SIP INVITE Header

 

Hi.

Thanks for your response. I went through the uri transformation page, tried it but no luck.

 

Is there any other method to slice the string from +34xxxxxxxxx@sub.domain.com to +34??

 

Regards

 

On Tue, Oct 13, 2020 at 17:30, Henning Westerholt

<hw@skalatan.de> wrote:

Hello,

 

have a look to the transformations for URIs: https://www.kamailio.org/wiki/cookbooks/devel/transformations#uri_transformations

There is one to get parameters as well.

 

$shm variables are shared in shared memory, so you can share them in other calls. The $avp/$xavp are shared between processes, but belongs to the SIP transaction.

 

About routing calls by prefix – have a look to the lcr, carrierroute or drouting modules, for example.

 

Cheers,

 

Henning

 

--

Henning Westerholt – https://skalatan.de/blog/

Kamailio services – https://gilawa.com

 

From: sr-users <sr-users-bounces@lists.kamailio.org> On Behalf Of sai sudheer
Sent: Tuesday, October 13, 2020 12:44 PM
To: sr-users@lists.kamailio.org; sr-dev@lists.kamailio.org
Subject: [SR-Users] how to get a value from SIP INVITE Header

 

Hii

 

Please help me to get the a value from SIP INVITE header reached to kamailio like INVITE sip:+341930203454@sub.domain.com;myid=+34@sub.domain.com SIP/2.0 and i want to save the myid value +34 into a variable, without the domain name.

 

 

     $var(uri) = $sel(ruri);

     xavp_params_explode("$(var(uri){s.unbracket})", "uri");

     xlog("L_INFO", "$var(uri) Received converted to $xavp(uri=>myid[0])\n");

 

I tried above and it prints +34@sub.domain.com But i want to just save +34 into a variable to further check the prefix based routing from the database.

 

1) Could you please help how to get it or If there is any alternate/single line approach to get this value?

2) $var & $xavp are process-local variables, and they cant be shared with other calls? Right

3) What is the best module to route calls based their prefix ? pstn_route or dynamic routing or any suggestions?

 

Please help, thanks in advance.