Douglas Garstang wrote:
Is there any useful information ANYWHERE about avp's? I mean, don't
take this the wrong way, but I've never had so much trouble
interpreting/finding documentation on a subject. I can't even find
out how to print the value of an avp with xlog. Is this ACTUALLY
DOCUMENTED anywhere? I finally found an example somewhere from a
newsgroup posting and used:

xlog ("L_INFO","$avp($foo)");

but openser complains with:

Dec 15 13:21:01 bil-pdev-3 openser[24718]: ERROR:xl_parse_name:
unknow avp alias"foo" Dec 15 13:21:01 bil-pdev-3 openser[24718]:
XLOG:xdbg_fixup: ERROR: wrong format[$avp($foo)]!

Looks like the AVP alias is unknown. There are two kinds of AVP: integer based and string based.
http://www.voice-system.ro/docs/avpops/ar01s03.html

e.g.
xlog ("L_INFO","$avp(s:foo)");
will print the AVP with the string name "foo".

xlog ("L_INFO","$avp(i:102)");
will print the AVP 102.

xlog ("L_INFO","$avp($foo)");
will print the AVP with the alias foo

To use alias, you have to configure them:
http://www.voice-system.ro/docs/avpops/ar01s05.html
modparam("avpops","avp_aliases","uuid=I:660;foo=i:102")

Thus, if configured foo=i:102, the following 2 statements are the same:
xlog ("L_INFO","$avp(i:102)");
xlog ("L_INFO","$avp($foo)");

As interger type AVPs are faster I prefer them. In my config I have:

# AVP configuration
# integer aliases (faster than strings)
#   i:101 = cbcprefix
#     call by call provider prefix
#   i:103 = fr_inv_timer
#     timer for INVITE transactions
#   i:104 = cansipuri
#     canonical SIP URI, e.g [EMAIL PROTECTED]
#
# pre defined AVPs:
#   s:rpid = Remote-Party-Id
#   i:42   = received_avp, used by nathelper and registrar
#
modparam("avpops","avp_aliases","cbcprefix=I:101;fr_inv_timer=i:103;cansipuri=i:104")
# -- tm params --
modparam("tm", "fr_inv_timer_avp", "i:103")


Then, in the routing part I only use the aliases, e.g:
  # trigger failure in 28 seconds
  avp_write("i:28","$fr_inv_timer");

  lookup("aliases");
  avp_write("$ruri","$cansipuri");        #store canonical SIP URI


You also should read the examples at the wiki:
http://openser.org/dokuwiki/doku.php?id=avp_examples&DokuWiki=70b22ac08edca3b1e30989e57209c81e

regards
Klaus


_______________________________________________
Users mailing list
[email protected]
http://openser.org/cgi-bin/mailman/listinfo/users

Reply via email to