]> git.ipfire.org Git - thirdparty/freeswitch.git/commitdiff
stuff for localized dialplans (need to add other areas)
authorRaymond Chandler <intralanman@freeswitch.org>
Fri, 9 Nov 2007 18:46:29 +0000 (18:46 +0000)
committerRaymond Chandler <intralanman@freeswitch.org>
Fri, 9 Nov 2007 18:46:29 +0000 (18:46 +0000)
git-svn-id: http://svn.freeswitch.org/svn/freeswitch/trunk@6204 d0543943-73ff-0310-b7d9-9358b9ac24b2

conf/dialplan/US.conf.xml [new file with mode: 0644]
conf/dialplan/default.xml
conf/directory/default.xml

diff --git a/conf/dialplan/US.conf.xml b/conf/dialplan/US.conf.xml
new file mode 100644 (file)
index 0000000..8cb5a68
--- /dev/null
@@ -0,0 +1,59 @@
+<context name="US-Numbering-Plan">
+
+ <!--
+ If the destination starts with 011, then check enum and route the call accordingly
+ -->
+ <extension name="US_International">
+   <condition field="destination_number" expression="^011(\d*)$">
+     <action application="set" data="continue_on_fail=true"/>
+     <action application="set" data="hangup_after_bridge=true"/>
+     <action application="enum" data="1$1"/>
+     <action application="bridge" data="${enum_auto_route}"/>
+     <action application="bridge" data="sofia/gateway/$${default_gateway}/011$1"/>
+   </condition>
+ </extension>
+
+ <!--
+ If the destination is a 10 or 11 digit US-Style number, then check enum and route accordingly
+ -->
+ <extension name="US_LD">
+   <condition field="destination_number" expression="^1?([2-9]\d{2}[2-9]\d{6})$">
+     <action application="set" data="continue_on_fail=true"/>
+     <action application="set" data="hangup_after_bridge=true"/>
+     <action application="enum" data="1$1"/>
+     <action application="bridge" data="${enum_auto_route}"/>
+     <action application="bridge" data="sofia/gateway/$${default_gateway}/1$1"/>
+   </condition>
+ </extension>
+
+ <!--
+ Check for the existence of a default area code.... If found and the destination was dialed
+ as 7 digits prefix a 1 and the default area code to the dialstring, then check enum,
+ then (you guessed it) route accordingly
+ -->
+ <extension name="US_Local">
+   <condition field="${default_area_code}" expression="\d{3}" continue="on-true">
+     <anti-action application="say" data="you must dial the area code to call this destination"/>
+   </condition>
+   <condition field="destination_number" expression="^([2-9]\d{6})$">
+     <action application="set" data="continue_on_fail=true"/>
+     <action application="set" data="hangup_after_bridge=true"/>
+     <action application="enum" data="1$1"/>
+     <action application="bridge" data="${enum_auto_route}"/>
+     <action application="bridge" data="sofia/gateway/$${default_gateway}/1${default_area_code}$1"/>
+   </condition>
+ </extension>
+
+ <!--
+ If the number dialed was
+ 411 (Directory Services),
+ 611 (Pretty Standard for Provider Customer Service),
+ 811 (call before you dig i think?),
+ or 911 (Emergency Services) then send directly out the default profile
+ -->
+ <extension name="FCC_Services">
+   <condition field="^([4689]11)$">
+     <action application="bridge" data="sofia/gateway/$${default_gateway}/$1"/>
+   </condition>
+ </extension>
+</context>
index 188da8e1f2ca881035a507bb77b9275e0112f1ca..48f8db40de0458f5d4fa94dbd82ff63a8f15bfcc 100644 (file)
     </condition>
   </extension> 
  
+  <extension name="Localized_Dialplan">
+    <condition field="${numbering_plan}" expression="^[[:alnum:]]+$"/>
+    <condition field="destination_number" expression="^([[:alnum:]]+)$">
+      <action application="transfer" data="$1 XML ${numbering_plan}-Numbering-Plan"/>
+    </condition>
+  </extension>
+
+                      
+
   <!-- 
   this is a "catchall" extension that will match anything that's 
   unmatched thus far.... uncomment and reloadxml to activate it
index c350bc249ce668fe8e202fc90531c4aed061d4e5..e49321584eb2bc1ed06a1bfe0ed00e1f4105cdd4 100644 (file)
       <!--<param name="vm-mailto" value="me@mydomain.com"/>-->
       <!--<param name="vm-email-all-messages" value="true"/>-->
     </params>
+    <variables>
+      <variable name="numbering_plan" value="US"/>
+      <variable name="default_area_code" value="434"/>
+      <variable name="max_calls" value="2"/>
+      <variable name="presence_id" value="1001@$${domain}"/>
+    </variables>
   </user>
 
   <!-- authless users and mailboxes -->