freeswitch拨号转接加前缀案例

可以使用以下拨号计划来实现:

<include>
  <context name="public">
    <extension name="forward_call">
      <condition field="caller_id_number" expression="^053158263720$"/>
      <condition field="destination_number" expression="^(\d{11})$">
        <action application="set" data="destination_number=88${destination_number}"/>
        <action application="bridge" data="sofia/gateway/gw4/${destination_number}"/>
        <action application="hangup"/>
      </condition>
    </extension>
  </context>
</include>

在此拨号计划中,我们创建了一个 <extension>,称为 forward_call,其用于将号码为053158263720的主叫转向为加上前缀88的被叫,并使用网关gw4进行呼叫。

我们首先使用 <condition> 指定匹配该拨号计划的条件。第一个 <condition> 指定匹配的主叫号码为053158263720。第二个 <condition> 指定匹配的被叫号码为一个11位数字,即手机号码。

当匹配成功后,我们使用 <action> 语句中的 set 应用程序,将被叫号码进行前缀添加,指定要使用的转向目标号码为 88${destination_number}${destination_number} 是一个特殊的变量,它会被匹配成功的被叫号码所替代,即去掉前缀后的11位手机号码。

最后我们使用 bridge 应用程序,将其转移到网关为 gw4,以实现转向功能,并使用hangup应用程序结束呼叫。将该拨号计划保存为xml文件并放置在/usr/local/freeswitch/conf/dialplan/public/目录下(假设你的FreeSWITCH安装在/usr/local/freeswitch/目录下),然后重启FreeSWITCH服务即可生效。

posted @   孙同海  阅读(347)  评论(0编辑  收藏  举报
相关博文:
阅读排行:
· 单线程的Redis速度为什么快?
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 展开说说关于C#中ORM框架的用法!
· SQL Server 2025 AI相关能力初探
· Pantheons:用 TypeScript 打造主流大模型对话的一站式集成库
点击右上角即可分享
微信分享提示