This fails miserably:
kamailio -f /etc/kamailio/kamailio.cfg -E \ -A "DBURL mysql://admin:mypass@db.mydomaincom/kamailio" \ -A "CBDBURL cb=>mysql://admin:mypass@db.mydomaincom/kamailio" \ -A "ASGDBURL asg=>mysql://admin:mypass@db.mydomaincom/kamailio" -DDDD
modparam("sqlops","sqlcon", CBDBURL)
As does this:
kamailio -f /etc/kamailio/kamailio.cfg -E \ -A "DBURL mysql://admin:mypass@db.mydomaincom/kamailio" \ -A "CBDBURL cb=>mysql://admin:mypass@db.mydomaincom/kamailio" \ -A "ASGDBURL asg=>mysql://admin:mypass@db.mydomaincom/kamailio" -DDDD
cfg
modparam("sqlops","sqlcon", "CBDBURL") ... $var(rows)=$sqlrows(cb);
When running:
0(27514) CRITICAL: <core> [core/cfg.y:3424]: yyerror_at(): parse error in config file /etc/kamailio/kamailio.cfg, line 1200, column 13-24: Can't get from cache: $sqlrows(cb)
while hardcoded does work...
Don't really know where to go from here... It seems sqlops just doesn't take a define as the dburl source
Regards,
David Villasmil email: david.villasmil.work@gmail.com phone: +34669448337
On Sun, May 12, 2019 at 8:38 AM Daniel-Constantin Mierla miconda@gmail.com wrote:
Try first something like:
modparam("sqlops","sqlcon","cb=>" DBURL )
If doesn't work, then:
modparam("sqlops","sqlcon", CBDBURL)
and have -A twice, one for DBURL and another one for CBDBURL.
The latest dev version (iirc) has the option to evaluate variables in the defines, so you can use there the environment pseudo-variables.
Cheers, Daniel On 11.05.19 11:56, David Villasmil wrote:
Thanks Daniel;
The thing is I’m trying to implement password-less starts (no hardcoded password)
So I’m querying the password on start from aws ssm and injecting it as a define, like.
Kamailio -f kamailio.cfg -A “DBURL `script-than-returns-MySQL-dburl-lambda.sh`“
Is it possible to do substrdef from the command line?
Better yet, do you have a different. Approach to doing this?
David
On Sat, 11 May 2019 at 07:12, Daniel-Constantin Mierla miconda@gmail.com wrote:
Hello,
use:
#!substdef "!DBURL!mysql://user:password@localhost/dbname!"
The define is replacing only standalone tokens, not inside string values, like you have for sqlcon.
More docs about should be in core cookbook from wiki.
Cheers, Daniel On 11.05.19 02:05, David Villasmil wrote:
yes that works.
My problem is not with sqlops.
My problem is with the DEFINE.
If I define:
#!define DBURL "mysql://user:password@localhost/dbname"
and later:
modparam("domain", "db_url", DBURL)
and then:
modparam("sqlops","sqlcon","cb=>mysql://user:password@localhost/dbname")
Everything works properly.
My problem is how to use that DEFINE on ALL instances where i need to use it. i.e.
#!define DBURL "mysql://user:password@localhost/dbname" modparam("domain", "db_url", DBURL) modparam("sqlops","sqlcon","cb=>mysql://user:password@localhost/dbname")
works, but;
#!define DBURL © modparam("domain", "db_url", DBURL) modparam("sqlops","sqlcon","cb=>DBURL")
does NOT, since DBURL translates "mysql://user:password@localhost/dbname" (quotes included)
so modparam("sqlops","sqlcon","cb=>DBURL") translates into modparam("sqlops","sqlcon","cb=>"mysql://user:password@localhost/dbname" ")
and that, of course, fails.
Regards,
David Villasmil email: david.villasmil.work@gmail.com phone: +34669448337
On Sat, May 11, 2019 at 12:59 AM Sergiu Pojoga pojogas@gmail.com wrote:
does is work like below? That's how mine is set, probably for the same reason.
modparam("sqlops","sqlcon","cb=>mysql://user:password@localhost/dbname")
On Fri, May 10, 2019 at 7:47 PM David Villasmil < david.villasmil.work@gmail.com> wrote:
No,
DBURL translates into
"mysql://user:admin@dbuser/dbname"
so in sqlops:
modparam("sqlops","sqlcon","cb=>DBURL")
translates into:
modparam("sqlops","sqlcon","cb=>"mysql://user:admin@dbuser/dbname"")
that works great on
modparam("domain", "db_url", DBURL)
because it translates into:
modparam("domain", "db_url", "mysql://user:admin@dbuser/dbname")
But not on the sqlops case
Regards,
David Villasmil email: david.villasmil.work@gmail.com phone: +34669448337
On Sat, May 11, 2019 at 12:32 AM Sergiu Pojoga pojogas@gmail.com wrote:
You've got a typo
modparam("sqlops","sqlcon","cb=>DBURL")
On Fri, May 10, 2019 at 7:02 PM David Villasmil < david.villasmil.work@gmail.com> wrote:
Hello guys,
So, i'm defining:
DBURL "mysql://user:password@dbhost/dbname"
and later on...
modparam("sqlops","sqlcon","cb=>"DBURL)
and this fails miserably..
What do do on this case?
Thanks all!
Regards,
David Villasmil email: david.villasmil.work@gmail.com phone: +34669448337 _______________________________________________ Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing List sr-users@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
Kamailio (SER) - Users Mailing Listsr-users@lists.kamailio.orghttps://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
-- Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda
--
Regards,
David Villasmil email: david.villasmil.work@gmail.com phone: +34669448337
-- Daniel-Constantin Mierla -- www.asipto.comwww.twitter.com/miconda -- www.linkedin.com/in/miconda