Hello, No, I did not have the pv module loaded! I loaded that module and all is well. I didn't know I needed it. I ran into a few other small errors that I was able to easily fix so I now have a good config file and am ready to start importing the old database in. Thanks for your help!!
Brian On Thu, Oct 06, 2016 at 11:11:02AM +0200, Daniel-Constantin Mierla wrote: > Hello, > > I just tested with: > > $avp(s:callfwd) = $ruri; > > using kamailio.cfg from master branch and all is ok. > > Have you loaded the pv module? > > Cheers, > Daniel > > On 06/10/16 00:56, Brian McCrary wrote: > > Hello, > > > > Thanks so much for the help in pointing me in the right direction. I > > finally had some time today to work with Kamailio a little. I should > > have pointed out I had commented the avp_write line out in the config > > file and had attempted to convert it to the new format as you had > > suggested. I had $avp(s:callfwd) = $ruri; instead of $avp(callfwd) = > > $ruri; but it seems both give the same error. > > > > With that being said, thanks for pointing out the sqlops module. It > > looks like I should be able to make it do everything I need, and then > > some. There are some things I have been wanting to improve upon and it > > looks like this will certainly help. There has been a lot of really > > nice things added to these new releases! I'm going to give that a go > > and see if I can fix the error by eliminating the problem altogether. :) > > > > Thanks, > > > > Brian > > > > On Mon, Oct 03, 2016 at 09:00:24PM +0200, Daniel-Constantin Mierla wrote: > >> Hello, > >> > >> hmm, the format $avp(s:callfwd) should still work fine. I will look > >> deeper at it when I get a chance after returning to the office in few > >> days. Anyhow, try to use $avp(callfwd), it is the same as $avp(callfwd) > >> if you haven't defined an overlapping avp-alias. > >> > >> On the other hand, I think avp_write(...) is no longer available. Now > >> you can use direct assignment, like: > >> > >> $avp(callfwd) = $ruri; > >> > >> One very useful additions (in newer versions than 1.0, otherwise being > >> quite old by now) is the sqlops module that allows to do all kind of sql > >> operations from configuration file, in many cases saving from the > >> complexity of using avpops db functions. See: > >> > >> https://www.kamailio.org/docs/modules/stable/modules/sqlops.html#idp44901364 > >> > >> So you can do INSERT/UPDATE/REPLACE/... as you need from config file, > >> building the sql query with the variables you want. > >> > >> Cheers, > >> Daniel > >> > >> On 30/09/16 18:29, Brian McCrary wrote: > >>> Hello group, > >>> > >>> I know this may be hard to believe but I'm in the process of upgrading > >>> an old, but stable, OpenSER 1.0 group of servers to Kamilio. I'm > >>> basically going to sort of start from scratch with the database and > >>> export my old MySQL database and write some scripts to reimport the data > >>> using kamctl scripts since the database structure has changed > >>> substantially since then it looks like. > >>> > >>> I've mostly migrated the config file over fairly easily, except for > >>> AVPops. I've got a section of config file that writes into the > >>> usr_preferences database for call forwarding, but I seem to get the same > >>> error anywhere I try to write to the database using AVPops. Here's the > >>> output I get when checking the config: > >>> > >>> 0(1378) DEBUG: <core> [pvapi.c:268]: pv_cache_add(): PV cache not > >>> initialized, doing it now > >>> 0(1378) ERROR: <core> [pvapi.c:828]: pv_parse_spec2(): error searching > >>> pvar "avp" > >>> 0(1378) ERROR: <core> [pvapi.c:1032]: pv_parse_spec2(): wrong char > >>> [s/115] in [$avp(s:callfwd)] at [5 (5)] > >>> 0(1378) : <core> [cfg.y:3368]: yyerror_at(): parse error in config file > >>> /usr/local/etc/kamailio/kamailio.cfg, line 145, column 4-18: Can't get > >>> from cache: $avp(s:callfwd) > >>> ERROR: bad config file (1 errors) > >>> > >>> Here's what I think are the revelant portions of the config file: > >>> > >>> modparam("avpops", "db_url", "mysql://user:pass@localhost/kamailio") > >>> modparam("avpops", "avp_table", "usr_preferences") > >>> modparam("avpops", "uuid_column", "uuid") > >>> modparam("avpops", "username_column", "username") > >>> modparam("avpops", "domain_column", "domain") > >>> modparam("avpops", "attribute_column", "attribute") > >>> modparam("avpops", "value_column", "value") > >>> modparam("avpops", "type_column", "type") > >>> <snip> > >>> if (avp_db_load("$from/username", > >>> "$avp(s:callfwd)")) > >>> { > >>> if(!avp_db_delete("$from/username", > >>> "$avp(s:callfwd)/usr_preferences")) > >>> { > >>> sl_send_reply("500", "Server DB > >>> error"); } > >>> } > >>> > >>> # avp_write("$ruri","$avp(s:callfwd)"); # Old > >>> OpenSER 1.0 syntax... > >>> $avp(s:callfwd) = $ruri; # New Kamailio syntax ?? > >>> > >>> avp_db_store("$from/username","$avp(s:callfwd)/usr_preferences"); > >>> t_relay(); > >>> return; > >>> > >>> Basically I just want to write the ruri into the usr_preferences > >>> database with an attribute of callfwd but not sure what I'm missing. I > >>> see the error "Can't get from cache" but not sure how that pertains to > >>> what I'm trying to do. Anyone have any ideas? > >>> > >>> Thanks, > >>> > >>> Brian > >>> > >>> _______________________________________________ > >>> SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list > >>> sr-users@lists.sip-router.org > >>> http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users > >> -- > >> Daniel-Constantin Mierla > >> http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda > >> Kamailio Advanced Training, Berlin, Oct 24-26, 2016 - http://www.asipto.com > > -- > Daniel-Constantin Mierla > http://twitter.com/#!/miconda - http://www.linkedin.com/in/miconda > Kamailio Advanced Training, Berlin, Oct 24-26, 2016 - http://www.asipto.com _______________________________________________ SIP Express Router (SER) and Kamailio (OpenSER) - sr-users mailing list sr-users@lists.sip-router.org http://lists.sip-router.org/cgi-bin/mailman/listinfo/sr-users