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@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@lists.kamailio.org https://lists.kamailio.org/cgi-bin/mailman/listinfo/sr-users