Hey Avi,
Using your regex: ^(?:1|\+1|001)?([2-9]\d\d[2-9]\d{6})$
Doesn’t $1 match the stuff in the first set of () and $2 match my needed 10 digits?
Thanks,
Sean
From: freeswitch-users-bounces@lists.freeswitch.org [mailto:freeswitch-users-bounces@lists.freeswitch.org] On Behalf Of Avi Marcus
Sent: Wednesday, January 09, 2013 3:02 PM
To: FreeSWITCH Users Help
Subject: Re: [Freeswitch-users] xml dialplan - regurlar expression question / Sanity Check!
Ha, that was a tricky one!
Here's the issue - he dialed: 1-800-336-940 -- that's too few digits!
So your optional one made it match anyway.
Your matching is too allowing - here's the regex I use:
^(?:1|\+1|001)?([2-9]\d\d[2-9]\d{6})$
That matches [nothing, 1, +1 or 001] prefix for USA. Then, bridge like now to "1$1".
btw, if you want a separate match for USA toll-free it's: ^(?:1|\+1|001)?(8(00|55|66|77|88)[2-9]\d{6})$
There's also some good example on this page, the link goes directly to USA: http://wiki.freeswitch.org/wiki/Regular_Expression#NANPA_.2B1NxxNxxXXXX_E.164_Dialstring
-Avi Marcus
BestFone
On Wed, Jan 9, 2013 at 9:48 PM, Sean Devoy <sdevoy@bizfocused.com> wrote:
HI,
I really hope this question is not as dumb as some of my recent questions (Anybody else wiped out you O/S lately?)!
Anyway, I have an xml dial plan:
<extension name="ten_or eleven_digiti_dial" >
<condition field="destination_number" expression="^1?(\d{10})$">
<action application="set" data="ringback=${us-ring}"/>
<action application="set" data="effective_caller_id_number=${outbound_caller_id_number}"/>
<action application="set" data="ani=${outbound_caller_id_number}"/>
<action application="set" data="effective_caller_id_name=${outbound_caller_id_name}"/>
<action application="set" data="hangup_after_bridge=true"/>
<action application="bridge" data="sofia/gateway/vitelity-inbound/1$1"/>
</condition>
</extension>
I thought that would accept either 10 or 11 digit numbers starting with 1 and bridge to the gateway always using 1 plus the 10 digits.
In fact in my log I can see:
Dialplan: sofia/external/220@fs_bfis.bizfocused.com Regex (PASS) [ten_or eleven_digiti_dial] destination_number(14104207777) =~ /^1?(\d{10})$/ break=on-false
Dialplan: sofia/external/220@fs_bfis.bizfocused.com Action set(ringback=${us-ring})
Dialplan: sofia/external/220@fs_bfis.bizfocused.com Action set(effective_caller_id_number=${outbound_caller_id_number})
Dialplan: sofia/external/220@fs_bfis.bizfocused.com Action set(ani=${outbound_caller_id_number})
Dialplan: sofia/external/220@fs_bfis.bizfocused.com Action set(effective_caller_id_name=${outbound_caller_id_name})
Dialplan: sofia/external/220@fs_bfis.bizfocused.com Action set(hangup_after_bridge=true)
Dialplan: sofia/external/220@fs_bfis.bizfocused.com Action bridge(sofia/gateway/vitelity-inbound/14104207777)
BUT
It does not work for my customer :
Dialplan: sofia/external/101@fs_alst.bizfocused.com Regex (PASS) [ten_or_eleven_digiti_dial] destination_number(1800336940) =~ /^1?(\d{10})$/ break=on-false
Dialplan: sofia/external/101@fs_alst.bizfocused.com Action set(ringback=${us-ring})
Dialplan: sofia/external/101@fs_alst.bizfocused.com Action set(effective_caller_id_number=${outbound_caller_id_number})
Dialplan: sofia/external/101@fs_alst.bizfocused.com Action set(ani=${outbound_caller_id_number})
Dialplan: sofia/external/101@fs_alst.bizfocused.com Action set(effective_caller_id_name=${outbound_caller_id_name})
Dialplan: sofia/external/220@fs_bfis.bizfocused.com Action set(hangup_after_bridge=true)
Dialplan: sofia/external/101@fs_alst.bizfocused.com Action bridge(sofia/gateway/vitelity-inbound/11800336940) NOTE THE EXTRA LEADING 1
So, what am I missing?
Thanks,
Sean
_________________________________________________________________________
Professional FreeSWITCH Consulting Services:
consulting@freeswitch.org
http://www.freeswitchsolutions.com
FreeSWITCH-powered IP PBX: The CudaTel Communication Server
http://www.cudatel.com
Official FreeSWITCH Sites
http://www.freeswitch.org
http://wiki.freeswitch.org
http://www.cluecon.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