Dialplan handling on call fails
Hi, I'm trying to setup a dialplan such that if one particular route fails it will try another. However, I do not want it to try another route once it had recieved a 180/183 in response from a gateway. I have not been able to determine how to accomplish this. For Example: <condition field="destination_number" expression="^(1000123.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier1/$1"/> </condition> <condition field="destination_number" expression="^(1000.*)$" break="never"> <action application="set" data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier2/$1"/> </condition> <condition field="destination_number" expression="^(1.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier3/$1"/> </condition> So when 10001234567 is dialled i will match all 3. I'd like to be able to try 1, if failed, try 2, if failed try 3. All calls go out via an outbound proxy. Using the above examples if the gateway does not respond in time, the proxy generates a 408 REQUEST TIMEOUT error message. It will then fail out and try the next route. However, when the gateway responds with a 180/183 but there is no answer after 2 minutes the proxy, will generate a 480 NO ANSWER (also tried a 408 REQUEST TIMEOUT ). When Freeswitch receives this message it fails, and then attempts the third failure route. How do i prevent the dialplan from continuing once it has received a 180/183 when no one answers the phone? Thanks,
If you use continue_on_fail, I don't think you need to set break="never". David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34 Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur. Le 26/06/2010 à 16:53, Roger Salloum a écrit :
Hi,
I'm trying to setup a dialplan such that if one particular route fails it will try another. However, I do not want it to try another route once it had recieved a 180/183 in response from a gateway. I have not been able to determine how to accomplish this.
For Example:
<condition field="destination_number" expression="^(1000123.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier1/$1"/> </condition>
<condition field="destination_number" expression="^(1000.*)$" break="never"> <action application="set" data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier2/$1"/> </condition>
<condition field="destination_number" expression="^(1.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier3/$1"/> </condition>
So when 10001234567 is dialled i will match all 3. I'd like to be able to try 1, if failed, try 2, if failed try 3. All calls go out via an outbound proxy.
Using the above examples if the gateway does not respond in time, the proxy generates a 408 REQUEST TIMEOUT error message. It will then fail out and try the next route. However, when the gateway responds with a 180/183 but there is no answer after 2 minutes the proxy, will generate a 480 NO ANSWER (also tried a 408 REQUEST TIMEOUT ). When Freeswitch receives this message it fails, and then attempts the third failure route. How do i prevent the dialplan from continuing once it has received a 180/183 when no one answers the phone?
Thanks,
_______________________________________________ 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
From my understanding the break is used to handle what happens on the evaluation of the condition. I have break=never as I want it to try all rules for the extension even if the one above returns true or false.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 6:36 am Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
If you use continue_on_fail, I don't think you need to set break="never".
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 26/06/2010 à 16:53, Roger Salloum a écrit :
Hi,
I'm trying to setup a dialplan such that if one particular route fails it will try another. However, I do not want it to try another route once it had recieved a 180/183 in response from a gateway. I have not been able to determine how to accomplish this.
For Example:
<condition field="destination_number" expression="^(1000123.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier1/$1"/> </condition>
<condition field="destination_number" expression="^(1000.*)$" break="never"> <action application="set" data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier2/$1"/> </condition>
<condition field="destination_number" expression="^(1.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier3/$1"/>> </condition>
So when 10001234567 is dialled i will match all 3. I'd like to be able to try 1, if failed, try 2, if failed try 3. All calls go out via an outbound proxy.
Using the above examples if the gateway does not respond in time, the proxy generates a 408 REQUEST TIMEOUT error message. It will then fail out and try the next route. However, when the gateway responds with a 180/183 but there is no answer after 2 minutes the proxy, will generate a 480 NO ANSWER (also tried a 408 REQUEST TIMEOUT ). When Freeswitch receives this message it fails, and then attempts the third failure route. How do i prevent the dialplan from continuing once it has received a 180/183 when no one answers the phone?
Thanks,
_______________________________________________ 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
Roger, you're right, but I think there is a mix up here. In your dialplan, all your bridge actions will be executed because of the conditions they are included in, not because you use continue_on_fail. The common use of continue_on_fail looks like: <condition .....> <action set continue_on_fail=true> <action bridge1> <action bridge2> <action bridge3> </condition> David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34 Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur. David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34 Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur. Le 28/06/2010 à 21:06, Roger Salloum a écrit :
From my understanding the break is used to handle what happens on the evaluation of the condition. I have break=never as I want it to try all rules for the extension even if the one above returns true or false.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 6:36 am Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
If you use continue_on_fail, I don't think you need to set break="never".
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 26/06/2010 à 16:53, Roger Salloum a écrit :
Hi,
I'm trying to setup a dialplan such that if one particular route fails it will try another. However, I do not want it to try another route once it had recieved a 180/183 in response from a gateway. I have not been able to determine how to accomplish this.
For Example:
<condition field="destination_number" expression="^(1000123.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier1/$1"/> </condition>
<condition field="destination_number" expression="^(1000.*)$" break="never"> <action application="set" data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier2/$1"/> </condition>
<condition field="destination_number" expression="^(1.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier3/$1"/>> </condition>
So when 10001234567 is dialled i will match all 3. I'd like to be able to try 1, if failed, try 2, if failed try 3. All calls go out via an outbound proxy.
Using the above examples if the gateway does not respond in time, the proxy generates a 408 REQUEST TIMEOUT error message. It will then fail out and try the next route. However, when the gateway responds with a 180/183 but there is no answer after 2 minutes the proxy, will generate a 480 NO ANSWER (also tried a 408 REQUEST TIMEOUT ). When Freeswitch receives this message it fails, and then attempts the third failure route. How do i prevent the dialplan from continuing once it has received a 180/183 when no one answers the phone?
Thanks,
_______________________________________________ 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
_______________________________________________ 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
Hi David, Thanks for clearing that up. I tried when the call establishes and it would hang up, which is controlled by hangup_after_bridge. Do you have any suggestions for how i would get the failover without requiring all the bridges to be within the same condition? So that i can get failover to a less best match? ----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 12:36 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Roger,
you're right, but I think there is a mix up here. In your dialplan, all your bridge actions will be executed because of the conditions they are included in, not because you use continue_on_fail.
The common use of continue_on_fail looks like: <condition .....> <action set continue_on_fail=true> <action bridge1> <action bridge2> <action bridge3> </condition>
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 28/06/2010 à 21:06, Roger Salloum a écrit :
From my understanding the break is used to handle what happens on the evaluation of the condition. I have break=never as I want it to try all rules for the extension even if the one above returns true or false.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 6:36 am Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
If you use continue_on_fail, I don't think you need to set break="never".
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 26/06/2010 à 16:53, Roger Salloum a écrit :
Hi,
I'm trying to setup a dialplan such that if one particular route fails it will try another. However, I do not want it to try another route once it had recieved a 180/183 in response from a gateway. I have not been able to determine how to accomplish this.
For Example:
<condition field="destination_number" expression="^(1000123.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier1/$1"/> </condition>
<condition field="destination_number" expression="^(1000.*)$" break="never"> <action application="set" data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier2/$1"/> </condition>
<condition field="destination_number" expression="^(1.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier3/$1"/>> </condition>
So when 10001234567 is dialled i will match all 3. I'd like to be able to try 1, if failed, try 2, if failed try 3. All calls go out via an outbound proxy.
Using the above examples if the gateway does not respond in time, the proxy generates a 408 REQUEST TIMEOUT error message. It will then fail out and try the next route. However, when the gateway responds with a 180/183 but there is no answer after 2 minutes the proxy, will generate a 480 NO ANSWER (also tried a 408 REQUEST TIMEOUT ). When Freeswitch receives this message it fails, and then attempts the third failure route. How do i prevent the dialplan from continuing once it has received a 180/183 when no one answers the phone?
Thanks,
_______________________________________________ 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
_______________________________________________ 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
Perhaps by using continue_on_fail and putting a transfer just after the bridge, so you can jump to another extension/dialplan ? David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34 Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur. Le 28/06/2010 à 23:44, Roger Salloum a écrit :
Hi David,
Thanks for clearing that up. I tried when the call establishes and it would hang up, which is controlled by hangup_after_bridge. Do you have any suggestions for how i would get the failover without requiring all the bridges to be within the same condition? So that i can get failover to a less best match?
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 12:36 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Roger,
you're right, but I think there is a mix up here. In your dialplan, all your bridge actions will be executed because of the conditions they are included in, not because you use continue_on_fail.
The common use of continue_on_fail looks like: <condition .....> <action set continue_on_fail=true> <action bridge1> <action bridge2> <action bridge3> </condition>
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 28/06/2010 à 21:06, Roger Salloum a écrit :
From my understanding the break is used to handle what happens on the evaluation of the condition. I have break=never as I want it to try all rules for the extension even if the one above returns true or false.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 6:36 am Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
If you use continue_on_fail, I don't think you need to set break="never".
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 26/06/2010 à 16:53, Roger Salloum a écrit :
Hi,
I'm trying to setup a dialplan such that if one particular route fails it will try another. However, I do not want it to try another route once it had recieved a 180/183 in response from a gateway. I have not been able to determine how to accomplish this.
For Example:
<condition field="destination_number" expression="^(1000123.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier1/$1"/> </condition>
<condition field="destination_number" expression="^(1000.*)$" break="never"> <action application="set" data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier2/$1"/> </condition>
<condition field="destination_number" expression="^(1.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier3/$1"/>> </condition>
So when 10001234567 is dialled i will match all 3. I'd like to be able to try 1, if failed, try 2, if failed try 3. All calls go out via an outbound proxy.
Using the above examples if the gateway does not respond in time, the proxy generates a 408 REQUEST TIMEOUT error message. It will then fail out and try the next route. However, when the gateway responds with a 180/183 but there is no answer after 2 minutes the proxy, will generate a 480 NO ANSWER (also tried a 408 REQUEST TIMEOUT ). When Freeswitch receives this message it fails, and then attempts the third failure route. How do i prevent the dialplan from continuing once it has received a 180/183 when no one answers the phone?
Thanks,
_______________________________________________ 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
_______________________________________________ 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
_______________________________________________ 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
Hi David, I tried and it is function the same, it will still do the transfer/next bridge when a 480 occurs after ringing for 2 minutes. I set continue_on_fail=102. ----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 3:44 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Perhaps by using continue_on_fail and putting a transfer just after the bridge, so you can jump to another extension/dialplan ?
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 28/06/2010 à 23:44, Roger Salloum a écrit :
Hi David,
Thanks for clearing that up. I tried when the call establishes and it would hang up, which is controlled by hangup_after_bridge. Do you have any suggestions for how i would get the failover without requiring all the bridges to be within the same condition? So that i can get failover to a less best match?
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 12:36 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Roger,
you're right, but I think there is a mix up here. In your dialplan, all your bridge actions will be executed because of the conditions they are included in, not because you use continue_on_fail.
The common use of continue_on_fail looks like: <condition .....> <action set continue_on_fail=true> <action bridge1> <action bridge2> <action bridge3> </condition>
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 28/06/2010 à 21:06, Roger Salloum a écrit :
From my understanding the break is used to handle what happens on the evaluation of the condition. I have break=never as I want it to try all rules for the extension even if the one above returns true or false.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 6:36 am Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
If you use continue_on_fail, I don't think you need to set break="never".
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation> > > > ou diffusion non autorisée est interdite. Tout message électronique> > > > est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 26/06/2010 à 16:53, Roger Salloum a écrit :
Hi,
I'm trying to setup a dialplan such that if one particular route fails it will try another. However, I do not want it to try another route once it had recieved a 180/183 in response from a gateway. I have not been able to determine how to accomplish this.
For Example:
<condition field="destination_number" expression="^(1000123.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier1/$1"/> </condition>
<condition field="destination_number" expression="^(1000.*)$" break="never"> <action application="set" data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier2/$1"/> </condition>
<condition field="destination_number" expression="^(1.*)$" break="never"> <action application="set" data="hangup_after_bridge=true"/> <action application="set" data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> <action application="bridge" data="sofia/gateway/carrier3/$1"/>> </condition>> > > > > So when 10001234567 is dialled i will match all 3. I'd like to be able to try 1, if failed, try 2, if failed try 3. All calls go out via an outbound proxy.
Using the above examples if the gateway does not respond in time, the proxy generates a 408 REQUEST TIMEOUT error message. It will then fail out and try the next route. However, when the gateway responds with a 180/183 but there is no answer after 2 minutes> > > > the proxy, will generate a 480 NO ANSWER (also tried a 408 REQUEST TIMEOUT ). When Freeswitch receives this message it fails, and then attempts the third failure route. How do i prevent the dialplan from continuing once it has received a 180/183 when no one answers> > > > the phone?
Thanks,
_______________________________________________ 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
_______________________________________________ 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
_______________________________________________ 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
Hm then I am out of my league :) Perhaps you could send your current dialplan so anyone more knowledgable than I am could help ? David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34 Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur. Le 29/06/2010 à 19:05, Roger Salloum a écrit :
Hi David,
I tried and it is function the same, it will still do the transfer/ next bridge when a 480 occurs after ringing for 2 minutes. I set continue_on_fail=102.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 3:44 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Perhaps by using continue_on_fail and putting a transfer just after the bridge, so you can jump to another extension/dialplan ?
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 28/06/2010 à 23:44, Roger Salloum a écrit :
Hi David,
Thanks for clearing that up. I tried when the call establishes and it would hang up, which is controlled by hangup_after_bridge. Do you have any suggestions for how i would get the failover without requiring all the bridges to be within the same condition? So that i can get failover to a less best match?
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 12:36 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Roger,
you're right, but I think there is a mix up here. In your dialplan, all your bridge actions will be executed because of the conditions they are included in, not because you use continue_on_fail.
The common use of continue_on_fail looks like: <condition .....> <action set continue_on_fail=true> <action bridge1> <action bridge2> <action bridge3> </condition>
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 28/06/2010 à 21:06, Roger Salloum a écrit :
From my understanding the break is used to handle what happens on the evaluation of the condition. I have break=never as I want it to try all rules for the extension even if the one above returns true or false.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 6:36 am Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
If you use continue_on_fail, I don't think you need to set break="never".
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation> > > > ou diffusion non autorisée est interdite. Tout message électronique> > > > est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 26/06/2010 à 16:53, Roger Salloum a écrit :
> Hi, > > I'm trying to setup a dialplan such that if one particular route > fails it will try another. However, I do not want it to try another > route once it had recieved a 180/183 in response from a gateway. I > have not been able to determine how to accomplish this. > > For Example: > > <condition field="destination_number" expression="^(1000123.*)$" > break="never"> > <action application="set" data="hangup_after_bridge=true"/> > <action application="set" > data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> > <action application="bridge" data="sofia/gateway/carrier1/$1"/> > </condition> > > <condition field="destination_number" expression="^(1000.*)$" > break="never"> > <action application="set" > data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> > <action application="bridge" data="sofia/gateway/carrier2/$1"/> > </condition> > > <condition field="destination_number" expression="^(1.*)$" > break="never"> > <action application="set" data="hangup_after_bridge=true"/> > <action application="set" > data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> > <action application="bridge" data="sofia/gateway/carrier3/$1"/>> </condition>> > > > > > So when 10001234567 is dialled i will match all 3. I'd like to be > able to try 1, if failed, try 2, if failed try 3. All calls go out > via an outbound proxy. > > Using the above examples if the gateway does not respond in time, > the proxy generates a 408 REQUEST TIMEOUT error message. It will > then fail out and try the next route. However, when the gateway > responds with a 180/183 but there is no answer after 2 minutes> > > > the > proxy, will generate a 480 NO ANSWER (also tried a 408 REQUEST > TIMEOUT ). When Freeswitch receives this message it fails, and then > attempts the third failure route. How do i prevent the dialplan from > continuing once it has received a 180/183 when no one answers> > > > the > phone? > > Thanks, > > _______________________________________________ > 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
_______________________________________________ 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
_______________________________________________ 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
_______________________________________________ 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
Well thanks for the help regardless David, it cleared up a few things and gave me a couple new ideas. My current dialplan is pretty much the one i sent. Its mostly a test case, where 1st call to gateway fails with no response, and the second one succeeds. I just wanted to handle the case where a no answer occurs so that it does not attempt to ring the next gateway in the list, which is currently occurring. Freeswitch even shows a response of no_user_answer, and not recover_on_timer_expiry in the logs and i had only set continue on fail to recover_on_timer_expiry, so i'm a bit stumped as to why its is continuing. ----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Tuesday, June 29, 2010 12:43 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Hm then I am out of my league :)
Perhaps you could send your current dialplan so anyone more knowledgable than I am could help ?
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 29/06/2010 à 19:05, Roger Salloum a écrit :
Hi David,
I tried and it is function the same, it will still do the transfer/ next bridge when a 480 occurs after ringing for 2 minutes. I set continue_on_fail=102.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 3:44 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Perhaps by using continue_on_fail and putting a transfer just after the bridge, so you can jump to another extension/dialplan ?
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation ou diffusion non autorisée est interdite. Tout message électronique est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 28/06/2010 à 23:44, Roger Salloum a écrit :
Hi David,
Thanks for clearing that up. I tried when the call establishes and it would hang up, which is controlled by hangup_after_bridge. Do you have any suggestions for how i would get the failover without requiring all the bridges to be within the same condition? So that i can get failover to a less best match?
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 12:36 pm Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
Roger,
you're right, but I think there is a mix up here. In your dialplan, all your bridge actions will be executed because of the conditions they are included in, not because you use continue_on_fail.
The common use of continue_on_fail looks like: <condition .....> <action set continue_on_fail=true> <action bridge1> <action bridge2> <action bridge3> </condition>
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation> > > > ou diffusion non autorisée est interdite. Tout message électronique> > > > est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
David Ponzone Direction Technique email: david.ponzone@ipeva.fr tel: 01 74 03 18 97 gsm: 06 66 98 76 34
Service Client IPeva tel: 0811 46 26 26 www.ipeva.fr - www.ipeva-studio.com
Ce message et toutes les pièces jointes sont confidentiels et établis à l'intention exclusive de ses destinataires. Toute utilisation> > > > ou diffusion non autorisée est interdite. Tout message électronique> > > > est susceptible d'altération. IPeva décline toute responsabilité au titre de ce message s'il a été altéré, déformé ou falsifié. Si vous n'êtes pas destinataire de ce message, merci de le détruire immédiatement et d'avertir l'expéditeur.
Le 28/06/2010 à 21:06, Roger Salloum a écrit :
>From my understanding the break is used to handle what happens on the evaluation of the condition. I have break=never as I want it to try all rules for the extension even if the one above returns> > > > true or false.
----- Original Message ----- From: David Ponzone <david.ponzone@gmail.com> Date: Monday, June 28, 2010 6:36 am Subject: Re: [Freeswitch-users] Dialplan handling on call fails To: freeswitch-users@lists.freeswitch.org
> If you use continue_on_fail, I don't think you need to set > break="never". > > David Ponzone Direction Technique > email: david.ponzone@ipeva.fr > tel: 01 74 03 18 97 > gsm: 06 66 98 76 34 > > Service Client IPeva > tel: 0811 46 26 26 > www.ipeva.fr - www.ipeva-studio.com > > Ce message et toutes les pièces jointes sont confidentiels et > établis > à l'intention exclusive de ses destinataires. Toute utilisation> > > > ou > diffusion non autorisée est interdite. Tout message électronique> > > > est > susceptible d'altération. IPeva décline toute responsabilité> > > > > > au > titre de ce message s'il a été altéré, déformé ou falsifié.> > > > > > Si > vous n'êtes pas destinataire de ce message, merci de le > détruire > immédiatement et d'avertir l'expéditeur. > > > > > Le 26/06/2010 à 16:53, Roger Salloum a écrit : > > > Hi, > > > > I'm trying to setup a dialplan such that if one particular> > > > > > route > > fails it will try another. However, I do not want it to > try another > > route once it had recieved a 180/183 in response from a > gateway. I > > have not been able to determine how to accomplish this. > > > > For Example: > > > > <condition field="destination_number" > expression="^(1000123.*)$" > > break="never"> > > <action > application="set" data="hangup_after_bridge=true"/> > > <action application="set" > > data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> > > <action > application="bridge" data="sofia/gateway/carrier1/$1"/> > > </condition> > > > > <condition field="destination_number" > expression="^(1000.*)$" > > break="never"> > > <action > application="set" > > data="hangup_after_bridge=RECOVER_ON_TIMER_EXPIRE"/> > > <action > application="bridge" data="sofia/gateway/carrier2/$1"/> > > </condition> > > > > <condition field="destination_number" > expression="^(1.*)$" > > break="never"> > > <action > application="set" data="hangup_after_bridge=true"/> > > <action application="set" > > data="continue_on_fail=RECOVER_ON_TIMER_EXPIRE"/> > > <action application="bridge" > data="sofia/gateway/carrier3/$1"/>> </condition>> > > > > > > So when 10001234567 is dialled i will match all 3. I'd like to > be > > able to try 1, if failed, try 2, if failed try 3. All calls go > out > > via an outbound proxy. > > > > Using the above examples if the gateway does not respond in > time, > > the proxy generates a 408 REQUEST TIMEOUT error message. It > will > > then fail out and try the next route. However, when the > gateway > > responds with a 180/183 but there is no answer after 2 minutes> > > > the > > proxy, will generate a 480 NO ANSWER (also tried a 408 > REQUEST > > TIMEOUT ). When Freeswitch receives this message it fails, and > then > > attempts the third failure route. How do i prevent the > dialplan from > > continuing once it has received a 180/183 when no one answers> > > > the > > phone? > > > > Thanks, > > > > _______________________________________________ > > 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 > > _______________________________________________ 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
_______________________________________________ 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
_______________________________________________ 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
participants (2)
-
David Ponzone
-
Roger Salloum