第五个镜头已经接触了简单的拨号内容的修改——新增了一个SIP用户。
拨号计划
简单来说其实就是一个路由表,决定通话寻址流程。观看这一镜头前,最好对前面镜头描述的内容比较清楚
初识
FreeSWITCH的拨号计划定义在conf/dialplan目录中,目录中有几个xml文件,打开default.xml,可以看到如下结构内容,每个文件中都有一个分组
<context></context>
<context name="default">
<extension name="unloop">
<condition field="${unroll_loops}" expression="^true$"/>
<condition field="${sip_looped_call}" expression="^true$">
<action application="deflect" data="${destination_number}"/>
</condition>
</extension>
...省略...
<extension name="Local_Extension">
<condition field="destination_number" expression="^(10[01][0-9])$">
...省略...
</condition>
</extension>
</context>
同目录下的xml都是这样的结构,最外围是
<context></context>
标签,内部包含多个<extension></extension>
标签,不同文件中的配置在逻辑上是隔离的
相知
每对
<extension></extension>
相当于一个路由表项,其中的<condition />
是判定条件,满足<condition />
中描述的判定条件则执行其中的动作即<action />
。我们分析默认配置default.xml中的<extension name="Local_Extension">
这个路由项
<!--
dial the extension (1000-1019) for 30 seconds and go to voicemail if the call fails (continue_on_fail=