[Kamailio-Users] [Solved] How to configure alias_db_lookup in config script
Alex Balashov
abalashov at evaristesys.com
Wed Nov 18 23:31:22 CET 2009
Aha. Makes sense.
JR Richardson wrote:
> Good question. This configuration is to route certain DID's over to
> specific application servers and the rest of the calls process through
> to the load balancer for general traffic.
>
> For instance, I want fax DID's to route over to a specific fax server,
> so I have to distinguish which DID's are for fax calls. I load the fax
> DID's into the database and point them over the fax server.
>
> JR
>
> On Wed, Nov 18, 2009 at 4:21 PM, Alex Balashov
> <abalashov at evaristesys.com <mailto:abalashov at evaristesys.com>> wrote:
>
> This is curious logic. This code causes the call to roll to another
> branch (via dispatcher) if the user part of the RURI cannot be found
> in the 'dbaliases' table -- are you sure this is what you want? One
> would think if the number is not in the aliases table, it cannot be
> to any server? Or am I misunderstanding?
>
> JR Richardson wrote:
>
> Thanks for your quick replys.
> Here is the syntax that is working for me:
> route{
> # initial sanity checks -- messages with
> # max_forwards==0, or excessively long requests
> if (!mf_process_maxfwd_header("10")) {
> sl_send_reply("483","Too Many Hops");
> exit;
> };
> if (msg:len >= 2048 ) {
> sl_send_reply("513", "Message too big");
> exit;
> };
>
> if(alias_db_lookup("dbaliases")) {
> t_relay();
> }else{
> ds_select_dst("1", "4");
> t_on_failure("1");
> t_relay();
> }
> }
>
> failure_route[1] {
> ds_next_dst();
> forward();
> }
>
> On Wed, Nov 18, 2009 at 3:45 PM, Alex Balashov
> <abalashov at evaristesys.com <mailto:abalashov at evaristesys.com>
> <mailto:abalashov at evaristesys.com
> <mailto:abalashov at evaristesys.com>>> wrote:
>
> JR,
>
> Like many lookup functions, the alias_db_lookup() function has a
> return value. You should check it for a negative result before
> proceeding further in the script:
>
> Example:
>
> if(!alias_db_lookup("dbaliases")) {
> sl_send_reply("404", "Not Found");
> exit;
> }
>
> Error handling in general is a must.
>
> -- Alex
>
> JR Richardson wrote:
>
> Hi All,
> I have a real simple load balancer proxy setup using the
> dispatcher module, works great. I want to do an alias lookup
> before I send the calls through to the dispatcher, but I
> can't
> seem to find a good example of how that should be setup
> in the
> config script. I've tried different things, the
> aliase_db_lookup is working but if a user is not in the
> database, the call loops and does not continue on to the
> dispatcher. Here is my current route script (this does
> not work):
> route{
> # initial sanity checks -- messages with
> # max_forwards==0, or excessively long requests
> if (!mf_process_maxfwd_header("10")) {
> sl_send_reply("483","Too Many Hops");
> exit;
> };
> if (msg:len >= 2048 ) {
> sl_send_reply("513", "Message too big");
> exit;
> };
>
> alias_db_lookup("dbaliases");
> t_on_failure("1");
> t_relay();
> ds_select_dst("1", "4");
> t_on_failure("1");
> t_relay();
> }
>
> failure_route[1] {
> ds_next_dst();
> forward();
> }
> I think there should be an 'if' 'then' or 'if' 'else'
> separating
> the alias_db_lookup and the ds_select functions, but I'm not
> sure of the syntax and where the curly brackets need to be.
> Thanks.
> JR
> -- JR Richardson
> Engineering for the Masses
>
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Kamailio (OpenSER) - Users mailing list
> Users at lists.kamailio.org
> <mailto:Users at lists.kamailio.org>
> <mailto:Users at lists.kamailio.org <mailto:Users at lists.kamailio.org>>
>
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
>
> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>
>
>
> -- Alex Balashov - Principal
> Evariste Systems
> Web : http://www.evaristesys.com/
> Tel : (+1) (678) 954-0670
> Direct : (+1) (678) 954-0671
>
>
> --
> JR Richardson
> Engineering for the Masses
>
>
> ------------------------------------------------------------------------
>
> _______________________________________________
> Kamailio (OpenSER) - Users mailing list
> Users at lists.kamailio.org <mailto:Users at lists.kamailio.org>
> http://lists.kamailio.org/cgi-bin/mailman/listinfo/users
> http://lists.openser-project.org/cgi-bin/mailman/listinfo/users
>
>
>
> --
> Alex Balashov - Principal
> Evariste Systems
> Web : http://www.evaristesys.com/
> Tel : (+1) (678) 954-0670
> Direct : (+1) (678) 954-0671
>
>
>
>
> --
> JR Richardson
> Engineering for the Masses
--
Alex Balashov - Principal
Evariste Systems
Web : http://www.evaristesys.com/
Tel : (+1) (678) 954-0670
Direct : (+1) (678) 954-0671
More information about the Users
mailing list