Hi,
Have you tried using sqlops?
Something like...
...
modparam("sqlops","sqlcon","ca=>dbdriver://username:password@dbhost/dbname")
...
sql_query("ca", "select dst_grp from lookup_table where
from_domain=$(fd{s.escape.common})”, "ra");
if($dbr(ra=>rows)>0) {
ds_select_dst("$dbr(ra=>[0,0])", "4");
}
sql_result_free("ra");
......
Alternatively, you could set up some naptr/srv records for all the from domains and simply
relay to those, using dns instead of dispatcher, if you’re not already using them.
Blessings,
—
Daniel Donoghue
On 27 Dec 2020, at 13:18, Mihai Cezar
<mihai(a)mokalife.ro> wrote:
Hello,
I am redirecting the agents/reps to their asterisk server based on the hostname which
they connect, and, i wonder if it's possible to read from db instead of the file cause
it's getting big ;)
# Dispatch requests
route[DISPATCH] {
switch ($fd){
case "oro.streamlinepbx.nl
<http://oro.streamlinepbx.nl/>":
if (!ds_select_dst("1", "4")) {
send_reply(503, "Service Unavailable
$fd");
exit;
}
break;
case "oro3.streamlinepbx.nl
<http://oro3.streamlinepbx.nl/>":
if (!ds_select_dst("2", "4")) {
send_reply(503, "Service Unavailable
$fd");
exit;
}
break;
............
default:
log("unknow destination?");
send_reply(503, "No service defined");
xlog("--- SCRIPT: going to <$ru> via <$du>
...Exiting");
exit;
}
xlog("--- SCRIPT: going to <$ru> via <$du> (attrs:
$xavp(_dsdst_=>attrs))\n");
t_on_failure("RTF_DISPATCH");
route(RELAY);
exit;
}
Thanks,
_______________________________________________
Kamailio (SER) - Users Mailing List
sr-users(a)lists.kamailio.org
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users