[SR-Users] UAC module

Ron Hopson ronh at netweave.com
Tue Aug 14 01:11:33 CEST 2012


Hello,

I cannot create a configuration consistent with uac_reg_lookup. Does 
someone have a configuration with a simple example of uac_reg_lookup 
that works with db_text file uacreg?

I have kamailio 3.3 running on linux.  Based on suggestions in
http://kamailio.org/docs/modules/3.3.x/modules_k/uac.html
and
http://by-miconda.blogspot.com/2010/10/best-of-new-in-kamailio-310-10.html
I created this record in db_text file uacreg:
2:12345678:daniel:mysipserver.com:daniel123:sipprovider.com:sipprovider.com:daniel123:xxxxx:"sip:sipprovider.com"

I assume that function uac_reg_lookup retrieves registration information 
from this record after it is loaded into a memory table.
One version of the configuration file is attached.  Here are three 
examples of failures to create a configuration.

     $rU = 12345678;

     if(uac_reg_lookup("$rU", "$ru")){            #line 73

  0(13856) DEBUG: <core> [rvalue.c:2857]: RV fixing type 1
  0(13856) DEBUG: <core> [rvalue.c:2861]: RV is int: 12345678
  0(13856) DEBUG: <core> [rvalue.c:2857]: RV fixing type 4
  0(13856) DEBUG: <core> [route.c:929]: fixing uac_reg_lookup()
  0(13856) ERROR: <core> [route.c:1216]: fixing failed (code=-1) at 
cfg:/usr/local/etc/kamailio/kamailio.cfg:73
---------
     $rU = "12345678";

     if(uac_reg_lookup("$rU", "$ru")){            #line 73

  0(13973) DEBUG: <core> [rvalue.c:2857]: RV fixing type 2
  0(13973) DEBUG: <core> [rvalue.c:2865]: RV is str: "12345678"
  0(13973) DEBUG: <core> [rvalue.c:2857]: RV fixing type 4
  0(13973) DEBUG: <core> [route.c:929]: fixing uac_reg_lookup()
  0(13973) ERROR: <core> [route.c:1216]: fixing failed (code=-1) at 
cfg:/usr/local/etc/kamailio/kamailio.cfg:73
--------
     $rU = "12345678";
     $ru = "sip:mysipserver.com";

     if(uac_reg_lookup("$rU", "$ru")){            #line 74


  0(13976) DEBUG: <core> [rvalue.c:2857]: RV fixing type 2
  0(13976) DEBUG: <core> [rvalue.c:2865]: RV is str: "12345678"
  0(13976) DEBUG: <core> [rvalue.c:2857]: RV fixing type 2
  0(13976) DEBUG: <core> [rvalue.c:2865]: RV is str: "sip:mysipserver.com"
  0(13976) DEBUG: <core> [rvalue.c:2857]: RV fixing type 4
  0(13976) DEBUG: <core> [route.c:929]: fixing uac_reg_lookup()
  0(13976) ERROR: <core> [route.c:1216]: fixing failed (code=-1) at 
cfg:/usr/local/etc/kamailio/kamailio.cfg:74

---------------------
regards,
Ron Hopson

-------------- next part --------------
#
# $Id$
#
# simple quick-start config script with dbtext
#

# ----------- global configuration parameters ------------------------

debug=9         # debug level (cmd line: -dddddddddd)
#fork=yes
log_stderror=yes
log_facility=LOG_LOCAL2

check_via=no    # (cmd. line: -v)
dns=no          # (cmd. line: -r)
rev_dns=no      # (cmd. line: -R)
children=4
disable_tcp=yes

listen=173.63.113.62
port=5060

#!define DBURL "text:///home/agiletel/kamailio/dbtext"

# ------------------ module loading ----------------------------------
mpath="/usr/local/lib/kamailio/"

# use dbtext database
loadmodule "modules_k/db_text.so"

loadmodule "modules/debugger.so"
loadmodule "modules_k/mi_fifo.so"
loadmodule "modules/tm.so"
loadmodule "modules/sl.so"
loadmodule "modules_k/rr.so"
loadmodule "modules_k/maxfwd.so"
loadmodule "modules_k/usrloc.so"
loadmodule "modules_k/registrar.so"
loadmodule "modules_k/textops.so"

loadmodule "modules_k/uac.so"
loadmodule "modules_k/xlog.so"


# ----------------- setting module-specific parameters ---------------

# -- mi_fifo params --

modparam("mi_fifo", "fifo_name", "/tmp/kamailio_fifo")

# -- usrloc params --

# use dbtext database for persistent storage
modparam("usrloc", "db_mode", 2)
modparam("usrloc", "db_url", DBURL)

# -- rr params --
# add value to ;lr param to make some broken UAs happy
modparam("rr", "enable_full_lr", 1)

# -- uacreg params --
modparam("uac","restore_mode","auto")


# -------------------------  request routing logic -------------------

# main routing logic

route{

	$rU = "12345678";
	$ru = "sip:mysipserver.com";

	if(uac_reg_lookup("$rU", "$ru")){
		xlog("uac_reg_lookup found remote user [$rU] on [$rd] via [$du]\n");
	    lookup("location");
	}

}


More information about the sr-users mailing list