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 <[email protected]> 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
> [email protected]
> https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users
_______________________________________________
Kamailio (SER) - Users Mailing List
[email protected]
https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users