[Freeswitch-users] xml dialplan - regurlar expression question / Sanity Check!

Ken Rice krice at freeswitch.org
Thu Jan 10 01:00:00 MSK 2013


We can agree to disagree on that... I would argue if that's happening they
need to update their handset... Its not 1985 any more


On 1/9/13 3:44 PM, "Sergey Okhapkin" <sos at sokhapkin.dyndns.org> wrote:

> It's better to remove trailing "$", there could be more digits on handset's
> redial after entering DTMF codes on previous call.
> 
> On Wednesday 09 January 2013 15:33:57 Ken Rice wrote:
>> If you are trying to filter NANPA numbers why not use a tighter REGEX like
>> ^(?:+1|1)?([2-9]\d{2}[2-9]\d{6})$
>> 
>> This would leave the base 10 digit number in $1
>> 
>> On 1/9/13 2:00 PM, "DJB International" <djbinter at gmail.com> wrote:
>>> 1800336940 is 10-digits; therefore, it will match (\d{10}), which will be
>>> $1. 
>>> 
>>> $1 = 1800336940
>>> 
>>> Then, in your bridge you add 1 in front, so it is correct.
>>> 
>>> What behaviors are you looking for in this case?
>>> 
>>> -djbinter
>>> 
>>> On Wed, Jan 9, 2013 at 11:48 AM, Sean Devoy <sdevoy at 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 at fs_bfis.bizfocused.com Regex (PASS) [ten_or
>>>> eleven_digiti_dial] destination_number(14104207777 <tel:%2814104207777> )
>>>> =~ /^1?(\d{10})$/ break=on-false
>>>> Dialplan: sofia/external/220 at fs_bfis.bizfocused.com Action
>>>> set(ringback=${us-ring})
>>>> Dialplan: sofia/external/220 at fs_bfis.bizfocused.com Action
>>>> set(effective_caller_id_number=${outbound_caller_id_number})
>>>> Dialplan: sofia/external/220 at fs_bfis.bizfocused.com Action
>>>> set(ani=${outbound_caller_id_number})
>>>> Dialplan: sofia/external/220 at fs_bfis.bizfocused.com Action
>>>> set(effective_caller_id_name=${outbound_caller_id_name})
>>>> Dialplan: sofia/external/220 at fs_bfis.bizfocused.com Action
>>>> set(hangup_after_bridge=true)
>>>> Dialplan: sofia/external/220 at fs_bfis.bizfocused.com Action
>>>> bridge(sofia/gateway/vitelity-inbound/14104207777 <tel:14104207777> )
>>>>  
>>>> BUT
>>>> It does not work for my customer :
>>>> Dialplan: sofia/external/101 at fs_alst.bizfocused.com Regex (PASS)
>>>> [ten_or_eleven_digiti_dial] destination_number(1800336940) =~
>>>> /^1?(\d{10})$/ break=on-false
>>>> Dialplan: sofia/external/101 at fs_alst.bizfocused.com Action
>>>> set(ringback=${us-ring})
>>>> Dialplan: sofia/external/101 at fs_alst.bizfocused.com Action
>>>> set(effective_caller_id_number=${outbound_caller_id_number})
>>>> Dialplan: sofia/external/101 at fs_alst.bizfocused.com Action
>>>> set(ani=${outbound_caller_id_number})
>>>> Dialplan: sofia/external/101 at fs_alst.bizfocused.com Action
>>>> set(effective_caller_id_name=${outbound_caller_id_name})
>>>> Dialplan: sofia/external/220 at fs_bfis.bizfocused.com Action
>>>> set(hangup_after_bridge=true)
>>>> Dialplan: sofia/external/101 at 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 at freeswitch.org
>>>> http://www.freeswitchsolutions.com
>>>> 
>>>> 
>>>> 
>>>> 
>>>> Official FreeSWITCH Sites
>>>> http://www.freeswitch.org
>>>> http://wiki.freeswitch.org
>>>> http://www.cluecon.com
>>>> 
>>>> FreeSWITCH-users mailing list
>>>> FreeSWITCH-users at lists.freeswitch.org
>>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>>> http://www.freeswitch.org
>>> 
>>> _________________________________________________________________________
>>> Professional FreeSWITCH Consulting Services:
>>> consulting at freeswitch.org
>>> http://www.freeswitchsolutions.com
>>> 
>>> 
>>> 
>>> 
>>> Official FreeSWITCH Sites
>>> http://www.freeswitch.org
>>> http://wiki.freeswitch.org
>>> http://www.cluecon.com
>>> 
>>> FreeSWITCH-users mailing list
>>> FreeSWITCH-users at lists.freeswitch.org
>>> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
>>> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
>>> http://www.freeswitch.org
> 
> _________________________________________________________________________
> Professional FreeSWITCH Consulting Services:
> consulting at freeswitch.org
> http://www.freeswitchsolutions.com
> 
> 
> 
> 
> Official FreeSWITCH Sites
> http://www.freeswitch.org
> http://wiki.freeswitch.org
> http://www.cluecon.com
> 
> FreeSWITCH-users mailing list
> FreeSWITCH-users at lists.freeswitch.org
> http://lists.freeswitch.org/mailman/listinfo/freeswitch-users
> UNSUBSCRIBE:http://lists.freeswitch.org/mailman/options/freeswitch-users
> http://www.freeswitch.org

-- 
Ken
http://www.FreeSWITCH.org
http://www.ClueCon.com
http://www.OSTAG.org
irc.freenode.net #freeswitch





Join us at ClueCon 2011 Aug 9-11, 2011
More information about the FreeSWITCH-users mailing list