<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 3.2//EN">
<HTML>
<HEAD>
<META HTTP-EQUIV="Content-Type" CONTENT="text/html; charset=us-ascii">
<META NAME="Generator" CONTENT="MS Exchange Server version 6.5.7654.12">
<TITLE>Connect two FreeSWITCH Boxes</TITLE>
</HEAD>
<BODY>
<!-- Converted from text/rtf format -->

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Hello newbie here.&nbsp; I</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8217;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">m having difficulty routing calls between 2 FreeSWITCH servers.&nbsp; I</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8217;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">m follow</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">ing the instructions on the Wiki titled</FONT></SPAN><SPAN LANG="en-us"> <FONT FACE="Calibri">&#8220;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">Connect Two FreeSWITCH Boxes</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8221;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri"> and I</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8217;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">m taking the IP authentication approach.&nbsp; When I originate a call from ser</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">ver</FONT></SPAN><SPAN LANG="en-us"> <FONT FACE="Calibri">&#8220;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">B</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8221;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri"></FONT></SPAN><SPAN LANG="en-us"> <FONT FACE="Calibri">the Regex matches</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri"> and forwards the call onto</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri"> Server</FONT></SPAN><SPAN LANG="en-us"> <FONT FACE="Calibri">&#8220;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">A</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8221;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">.&nbsp; Server</FONT></SPAN><SPAN LANG="en-us"> <FONT FACE="Calibri">&#8220;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">A</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8221;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri"> isn</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8217;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">t matching in dialplan/default.xml</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri"> (Local_Call) for some reason.&nbsp; Public.xml</FONT></SPAN><SPAN LANG="en-us"> <FONT FACE="Calibri">successfully</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri"> transfers the call into the default context, but for some re</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">ason it skips over the Local_Call Regex.&nbsp; Anyone</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">&#8217;</FONT></SPAN><SPAN LANG="en-us"><FONT FACE="Calibri">s guidance would be greatly appreciated.</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Server &quot;B&quot; (call origination dialing 10001 from 20001)</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">10.3.3.10</FONT></SPAN><SPAN LANG="en-us"></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">dialplan/default.xml</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp; &lt;extension name=&quot;Dial to BoxA&quot;&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;condition field=&quot;destination_number&quot; expression=&quot;^(10\d\d\d)$&quot;&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;action application=&quot;bridge&quot; data=&quot;sofia/internal/$1@10.1.1.10&quot;/&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/condition&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp; &lt;/extension&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">outbound call trace from console</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;Local_Call] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [Local_Call] destination_number(10001) =~ /^(20\d\d\d)$/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;Dial to BoxA] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (PASS) [Dial to BoxA] destination_number(10001) =~ /^(10\d\d\d)$/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Action bridge(sofia/internal/10001@10.1.1.10)</FONT></SPAN></P>
<BR>
<BR>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">dialplan/public.xml</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&lt;extension name=&quot;Calls from BoxA&quot;&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;condition field=&quot;destination_number&quot; expression=^(10\d\d\d)$&quot;&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;action application=&quot;transfer&quot; data=&quot;$1 XML default&quot;/&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/condition&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp; &lt;/extension&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">**************************************************************************</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Server &quot;A&quot; (Call termination)</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">10.1.1.10</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">dialplan/default.xml</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&lt;extension name=&quot;Local_Call&quot;&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp; &lt;condition field=&quot;destination_number&quot; expression=&quot;^(10\d\d\d)$&quot;&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;action application=&quot;set&quot; data=&quot;dialed_extension=$1&quot;/&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;action application=&quot;bridge&quot; data=&quot;user/${dialed_extension}@${domain_name}&quot;/&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;action application=&quot;answer&quot;/&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;action application=&quot;hangup&quot;/&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp; &lt;/condition&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp; &lt;/extension&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">dialplan/public.xml</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp; &lt;extension name=&quot;Dial to BoxB&quot;&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;condition field=&quot;destination_number&quot; expression=&quot;^(20\d\d\d)$&quot;&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;action application=&quot;bridge&quot; data=&quot;sofia/internal/$1@10.3.3.10&quot;/&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; &lt;/condition&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&nbsp;&nbsp; &lt;/extension&gt;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">inbound call trace from console</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [public-&gt;Calls from BoxB] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (PASS) [Calls from BoxB] destination_number(10001) =~ // break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Action transfer($1 XML default)</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&quot;there are a bunch of state machine messages here&quot;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;Local_Call] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [Local_Call] destination_number($1) =~ /^(10\d\d\d)$/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;Dial to BoxB] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [Dial to BoxB] destination_number($1) =~ /^(20\d\d\d)$/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;outbound] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [outbound] destination_number($1) =~ /^(\d)(\d{6})$/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;pizza_demo] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [pizza_demo] destination_number($1) =~ /^(pizza|74992)$/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;local.example.com] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [local.example.com] ${toll_allow}() =~ /local/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;domestic.example.com] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [domestic.example.com] ${toll_allow}() =~ /domestic/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;international.example.com] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [international.example.com] ${toll_allow}() =~ /international/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 parsing [default-&gt;enum] continue=false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (PASS) [enum] ${module_exists(mod_enum)}(true) =~ /true/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Regex (PASS) [enum] destination_number($1) =~ /^(.*)$/ break=on-false</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Dialplan: sofia/internal/20001@10.3.3.10 Action transfer($1 enum)</FONT></SPAN></P>
<BR>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">I was expecting </FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">&quot;Dialplan: sofia/internal/20001@10.3.3.10 Regex (FAIL) [Local_Call] destination_number($1) =~ /^(10\d\d\d)$/ break=on-false&quot;</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">to match the dialed number for which it would route the call to 10001.&nbsp; By the way 10001, 10002 and 20001, 20002 have sucessfully registered with</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">their respective servers and can place calls internally to the switch.&nbsp; Also when I run tcpdump on Server &quot;B&quot; I'm getting 404 Not Found, which indicates</FONT></SPAN></P>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">either the endpoint is not registered or properly configured.&nbsp;</FONT></SPAN><SPAN LANG="en-us"> </SPAN></P>
<BR>
<BR>

<P DIR=LTR><SPAN LANG="en-us"><FONT FACE="Calibri">Mike</FONT></SPAN><SPAN LANG="en-us"></SPAN></P>

</BODY>
</HTML>