Hi, Can someone tell me when I should be using fail_on_single_reject over continue_on_fail? Let's say I have 2 bridges and if the call is busy I just want to hang up the code below should be correct? <action application="set" data="continue_on_fail=NORMAL_TEMPORARY_FAILURE"/> <action application="bridge" data="sofia/test-int/3910@10.3.3.104"/> <action application="bridge" data="sofia/test-int/3920@10.3.3.104"/> Now let's say the code looks like this Would I use <action application="set" data="continue_on_fail=NORMAL_TEMPORARY_FAILURE"/> or <action application="set" data="fail_on_single_reject=USER_BUSY"/> <action application="bridge" data="{fail_on_single_reject=USER_BUSY}sofia/test-int/3920@10.3.3.104| sofia/test-int/3920@10.3.3.104"/> Or <action application="bridge" data="{ continue_on_fail=NORMAL_TEMPORARY_FAILURE }sofia/test-int/3920@10.3.3.104| sofia/test-int/3920@10.3.3.104"/> Understanding that NORMAL_TEMPORARY_FAILURE it not totally like USER_Busy but just trying to understand when to use what. Thanks Andre
My take - you should be using both: Example - <!-- this controls failure action on the dial-plan level --> <action application="set" data="continue_on_fail=ALLOTTED_TIMEOUT"/> <!--the fail_on_single_reject is key here - it is at the call leg level and fails such that a second call is not pushed through to the fail-over carrier--> <action application="bridge" data="{leg_timeout=10,fail_on_single_reject=ALLOTTED_TIMEOUT}user/1001|user2/1001"/> <action application="bridge" data="{leg_timeout=30,fail_on_single_reject=ALLOTTED_TIMEOUT}user/1002|user2/1002"/> So in this scenario - you have "continue_on_fail" to ensure that 1002 WILL BE called if 1001 times out, and fail_on_single_reject to ensure that 1001 will not be called a second time through the failover carrier. Phil
Agreed, I'd often go with both fail_on_single_reject - checked between | destinations to see whether to try the next continue_on_fail - checked when bridge is about to return to the dialplan (*not* between | destinations) On 1 October 2014 21:55, Phillip Jones <pjintheusa@gmail.com> wrote:
My take - you should be using both:
Example -
<!-- this controls failure action on the dial-plan level --> <action application="set" data="continue_on_fail=ALLOTTED_TIMEOUT"/>
<!--the fail_on_single_reject is key here - it is at the call leg level and fails such that a second call is not pushed through to the fail-over carrier--> <action application="bridge" data="{leg_timeout=10,fail_on_single_reject=ALLOTTED_TIMEOUT}user/1001|user2/1001"/> <action application="bridge" data="{leg_timeout=30,fail_on_single_reject=ALLOTTED_TIMEOUT}user/1002|user2/1002"/>
So in this scenario - you have "continue_on_fail" to ensure that 1002 WILL BE called if 1001 times out, and fail_on_single_reject to ensure that 1001 will not be called a second time through the failover carrier.
Phil
_________________________________________________________________________ Professional FreeSWITCH Consulting Services: consulting@freeswitch.org http://www.freeswitchsolutions.com
Official FreeSWITCH Sites http://www.freeswitch.org http://confluence.freeswitch.org http://www.cluecon.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server http://www.cudatel.com
FreeSWITCH-users mailing list FreeSWITCH-users@lists.freeswitch.org http://lists.freeswitch.org/mailman/listinfo/freeswitch-users UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users http://www.freeswitch.org
participants (3)
-
Andre
-
Phillip Jones
-
Steven Ayre