You need to enable JavaScript to run this app.
最新活动
大模型
产品
解决方案
定价
生态与合作
支持与服务
开发者
了解我们

如何在FusionPBX中配置跨服务器VoIP呼叫路由?

没问题,我帮你一步步梳理在FusionPBX(服务器Y)上实现这个呼叫路由的具体操作——核心就是先打通Y到Z的SIP通道,再设置精准的路由规则,同时匹配好编码和拨号格式:

第一步:创建Y到Z的SIP网关(Trunk)

这一步是让Y能和Z建立SIP通信:

  • 登录FusionPBX的Web管理界面,进入 Accounts > Gateways(网关模块,用来配置和外部SIP服务器的连接)
  • 点击「Add Gateway」新建网关,填写核心参数:
    • Gateway Name:起个直观的名字,比如Z_Server_Gateway
    • Profile:选择external(外部网关模式,适合对接其他SIP服务器)
    • SIP Server:填入Z服务器的IP地址,比如192.168.1.200;如果Z用了非默认SIP端口(比如5061),要加上端口号:192.168.1.200:5061
    • From Domain:如果Z有域名就填域名,没有的话直接填Z的IP即可
    • Username/Password:如果Z需要SIP注册认证,就填Z给的账号密码;不需要的话留空(这种情况要确保Z允许Y的IP发起呼叫)
    • 切换到Advanced标签,找到Codecs配置项,把G.729移到最顶部(确保Y优先使用这个编码和Z通信),可以保留其他编码但G.729必须排在首位
  • 保存配置后,点击右上角的「Apply Config」让FusionPBX加载新设置
第二步:配置呼叫路由规则(把X的呼叫转去Z)

这一步是告诉Y:当收到来自X的特定呼叫时,转发到Z服务器:

  • 进入 Dialplan > Dialplans,选择当前使用的拨号计划(一般是default
  • 点击「Add Dialplan」新建路由规则:
    • Extension:填写X拨打Y的号码/前缀匹配规则。比如X总是拨打Y的6XXX段号码,就填6XXX;如果是所有打给Y的呼叫都要转,就填.*(不建议这么做,尽量精准匹配)
    • Destination:选择Gateway,然后选中刚才创建的Z_Server_Gateway
    • Dial String:按照Z要求的拨号格式填写。比如Z要求呼叫前缀是9,那如果X拨打的号码是1234,拨号串就设为9${destination_number};如果Z要求固定格式(比如100${destination_number}),就对应调整。这里的${destination_number}是FusionPBX的内置变量,会自动替换成X实际拨打的号码
    • (可选但推荐)添加IP限制:切换到Conditions标签,点击「Add Condition」,设置Fieldsource_ipTypeequalsValue填入服务器X的IP地址。这样只有来自X的呼叫才会触发这条路由,避免无关呼叫被转发
  • 保存配置后再次点击「Apply Config」生效
第三步:验证与排障
  • 先检查网关状态:回到Accounts > Gateways,查看刚才创建的网关状态——如果是需要注册的模式,状态应该是「Registered」;如果是无注册的对等模式,状态显示「Active」就说明连通正常
  • 发起测试呼叫:从服务器X拨打Y的对应号码,验证是否能成功转接到Z
  • 如果呼叫失败,去 Logs > Freeswitch Log 查看错误日志,常见问题包括:
    • 网络不通:检查Y和Z之间的防火墙是否开放了SIP端口(默认5060),以及双方IP是否能互相ping通
    • 编码不匹配:确认Z确实支持G.729编码,且Y的网关和拨号计划里都正确启用了G.729并置顶
    • 拨号格式错误:核对Z要求的前缀/拨号串格式,调整路由规则里的Dial String参数

内容的提问来源于stack exchange,提问作者Homme Sauvage

火山引擎 最新活动