[OpenSIPS-Users] dispatcher not doing fail over itself
Bogdan-Andrei Iancu
bogdan at opensips.org
Tue Sep 16 18:23:39 CEST 2014
Hi,
Use debug=4 when doing the ds_next_dst() - see the setdebug() function :
http://www.opensips.org/Documentation/Script-CoreFunctions-1-11#toc47
Also try an avp_print() after ds_select_dst() to see what data is kept
into transaction.
Regards,
Bogdan-Andrei Iancu
OpenSIPS Founder and Developer
http://www.opensips-solutions.com
On 16.09.2014 18:18, Satish Patel wrote:
> Thanks for point out but still its not working, does my flags looks
> good? "F" or do i need something else? If i manually shutdown FS1
> then it is going inside failure route and saying "No more gateways in
> route set" but i have FS2 active state and if i call again next call
> works.. do i need to set some like ( !ds_select_dst("1", "4", "F"))
> in failure_route ?
>
> route[to_dispatcher] {
> # Dispatch to FS
> if ( !ds_select_dst("1", "4", "F")) {
> send_reply("500","Unable to dispatch call to Freeswitch");
> exit;
> ...
> ...
>
>
> failure_route[dispatcher_rollover] {
> xlog("Inside dispatcher failure route\n");
> if (t_was_cancelled()) {
> exit;
> }
>
> ds_mark_dst("p");
> if(!ds_next_dst()) {
> xlog("L_ERR", "R-DISPATCHER-ROLLOVER:$ci No more
> gateways in route set\n");
> t_reply("503", "Out of gateways");
> exit;
> }
>
> xlog("L_INFO", "R-DISPATCHER-ROLLOVER:$ci Attempting relay to
> new gateway: $rd:$rp\n");
> t_on_failure("dispatcher_rollover");
> t_relay();
>
>
> On Tue, Sep 16, 2014 at 3:16 AM, Bogdan-Andrei Iancu
> <bogdan at opensips.org <mailto:bogdan at opensips.org>> wrote:
>
> Hi,
>
> your logic in failure route is broken - do the "ds_mark_dst"
> before selecting a new destination via "ds_next_dst". Firs mark
> the used one as probing and then use the next one.
>
> Regards,
>
> Bogdan-Andrei Iancu
> OpenSIPS Founder and Developer
> http://www.opensips-solutions.com
>
> On 16.09.2014 07:59, Satish Patel wrote:
>> following is my config, I have two Freeswitch, if i stop one of
>> freeswitch and call it won't failover itself. but if again i call
>> if send call to other FS and if again i call it send to failed
>> one but not auto failover..
>>
>> But after my prob detect it is dead then it change status from
>> Active to Probing but that detection time is (10 to 30 second
>> around), mean time it should failover call to other freeswitch
>> right? we have 1000 call per second and 10/30 second if big :(
>>
>> #### Dispatcher
>> loadmodule "dispatcher.so"
>> modparam("dispatcher", "dst_avp", "$avp(i:271)")
>> modparam("dispatcher", "attrs_avp", "$avp(i:272)")
>> modparam("dispatcher", "grp_avp", "$avp(i:273)")
>> modparam("dispatcher", "cnt_avp", "$avp(i:274)")
>> modparam("dispatcher", "ds_ping_interval", 5)
>> modparam("dispatcher", "ds_probing_threshhold", 10)
>> modparam("dispatcher", "ds_probing_mode", 1)
>> modparam("dispatcher", "options_reply_codes", "501, 403, 200")
>> modparam("dispatcher", "db_url",
>> "mysql://opensips:opensipsrw@localhost/opensips")
>>
>>
>> route[to_dispatcher] {
>> # Dispatch to FS
>> if ( !ds_select_dst("1", "4", "F")) {
>> send_reply("500","Unable to dispatch call to
>> Freeswitch");
>> exit;
>> } else {
>> xlog("L_WARN", "dispatcher: Attempting to dispatch call
>> to $du\n");
>> }
>> t_on_failure("dispatcher_rollover");
>> route(relay);
>> }
>>
>> failure_route[dispatcher_rollover] {
>> xlog("Inside dispatcher failure route\n");
>> if (t_was_cancelled()) {
>> exit;
>> }
>>
>> if(!ds_next_dst()) {
>> xlog("L_ERR", "R-DISPATCHER-ROLLOVER:$ci No more
>> gateways in route set\n");
>> t_reply("503", "Out of gateways");
>> exit;
>> }
>> ds_mark_dst("p");
>> xlog("L_INFO", "R-DISPATCHER-ROLLOVER:$ci Attempting
>> relay to new gateway: $rd:$rp\n");
>> t_on_failure("dispatcher_rollover");
>> route(relay);
>> }
>>
>>
>>
>> _______________________________________________
>> Users mailing list
>> Users at lists.opensips.org <mailto:Users at lists.opensips.org>
>> http://lists.opensips.org/cgi-bin/mailman/listinfo/users
>
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://lists.opensips.org/pipermail/users/attachments/20140916/451cffa2/attachment.htm>
More information about the Users
mailing list