通过网络连接两台FreePBX/Asterisk 系统
如何对接两个FreePBX
用户可以通过IP对接两个不同地方的FreePBX,以下是两个地方对接的举例:
系统1: Los Angeles Extensions Numbered: 40 to 49 系统 2: New York Extensions Numbered: 50 to 59
简单4步实现PBX对接: 1. 在系统1中配置一个 IAX2 Trunk,这个IAX中继将和系统2 的对接. 2. 在系统1中配置一个呼出路由.这个路由将呼叫到系统2. 3. 在系统2中配置一个IAX 中继. 这个中继将对将系统1. 4. 在系统2中配置一个呼出路由. 这个路由将负责发送系统2的呼叫到系统1.
1. Configure an IAX2 Trunk on System 1 访问系统1中的中继模块. 点击添加 "Add Trunk" ,右边菜单将显示添加中继类型. 选择一个 IAX2 Trunk. 在中继设置中填写这些设置: Trunk Name: System2 Outbound Caller ID: CallerID Dialed Number Manipulation Rules: 通常为空。
Trunk Name: System2 PEER Details:
username=System1 secret=password host=system2ipaddress type=friend context=from-internal qualify=yes qualifyfreqok=25000 transfer=no trunk=yes forceencryption=yes encryption=yes auth=md5 Registration String: 为空. 注意: 1. 用户自己替换 System1, System2, CallerID 和密码设置。. 2. 注意大小写区分: System1 和 system1 或者 SYSTEM1不同。. 3. 如果呼叫有问题,可能是加密路由没有安装。删除两边系统的peer details设置的最后3行。. 4. 如果仅想呼叫远端系统,不允许对端系统直接呼叫本端,则修改 "context=from-internal"成 "context=from-trunk". 5. 如果其中一个系统的IP地址是动态IP地址,用户应该使用动态DNS服务注册或者使用域名来代替host 值中的IP地址。 2. 配置系统1中的呼出路由 访问系统1中的呼出路由模块. 点击 "Add Route" 链接,会出现中继模块设置选项. 在路由设置中设置这些参数: Route Name: InterOfficetoSystem2 Route CID: YOURNUMBER Route Type: CHECK Intra-Company. Dial Patterns that will use this Route: // 注意此处拨号匹配模式设置 Patterns: () + | 5X () + | *805X () + *81 | .
拨号匹配模式的作用:
如果用户拨打分机 50 到 59, 呼叫则被发送到系统2. 如果用户拨打 *80 (或者按电话机 intercom 按键) ,然后拨打分机 50 到 59, 呼叫被发送到系统2. 如果用户拨打 *81 ,然后拨打其他号码, *81 呼出前将被移除,系统将发送剩余的其他号码到系统2. Trunk Sequence: System2 注意: 1. 如果用户测试系统的分机不是我们实例中的分机,可以修改到用户自己的分机设置习惯。更多拨号模式匹配的问题参考 Dial Patterns tooltip. 2. 如果系统2的分机号码和系统1的分机号码一样的话,需要删除前两个拨号匹配模式。. 3. 如果不想让系统1的用户拨打 *81 ,必须删除系统2的第三个 Dial Pattern. 4. 如果系统2的用户的号码和系统1的号码一样,不想让系统1的用户拨打任何系统2,例如*81的功能热键,用户应该删除所有的 dial patterns ,替换成如下设置: () + *81 | 5X () + *81 | *805X 如果用户拨打 *81 ,然后拨打50 到 59之间的分机, *81 将被移除,其余号码将被发送到系统1 如果用户拨打了 *81 ,然后 *80 和分机50 到 59, *81 将被移除,其余号码被发送到系统1,则支持了intercom 呼叫。.
3. 配置系统2的 IAX2 中继 访问系统2的中继模块 点击添加 "Add Trunk" 菜单链接,右侧将出现中继模块设置. 选择创建一个 IAX2 Trunk. 在trunk 设置中填写以下信息: Trunk Name: System1 Outbound Caller ID: CallerID Dialed Number Manipulation Rules: Usually Blank
Trunk Name: System1 PEER Details:
username=System2 secret=password host=system1ipaddress type=friend context=from-internal qualify=yes qualifyfreqok=25000 transfer=no trunk=yes forceencryption=yes encryption=yes auth=md5 Registration String: Blank.
4. 在系统2中设置一个呼出路由
访问系统2中的呼出路由模块. 点击顶部的 "Add Route" 链接,右侧会出现中继模块菜单. 在路由设置中填写以下参数:
Route Name: InterOfficetoSystem1 Route CID: YOURNUMBER Route Type: CHECK Intra-Company. Dial Patterns that will use this Route: // 注意保护模式匹配设置,涉及了系统2用户如何拨打电话到系统1 Patterns: () + | 4X () + | *804X () + *81 | .
如何呼叫: 如果用户拨打分机 40 到49, 呼叫被发送到 System1. 如果用户拨打 *80 (按电话机按钮 intercom button) ,然后拨打分机 40 到 49, 呼叫被发送到系统1. 如果用户拨打了 *81 和其他号码, *81 前缀将被移除,其余号码被发送到系统1. Trunk Sequence: System1 Note: 1. 如果用户的系统分机不是40到49的范围,例如可能是4XX,请用户修改到相应的拨号模式匹配。 2. 如果系统1中的分机号码和系统2的分机号码一样,应该删除拨号模式中的前两个匹配模式。 3. 如果不想让系统2的用户拨打l *81 和其他的功能热键,请删除第三个拨号模式。. 4. 如果系统1的分机号码和系统2的分机号码一样,不想让系统2的分机拨打 *81 和系统1的功能热键号码,请删除所有的拨号模式,使用以下方式替换: () + *81 | 4X () + *81 | *804X 如果用户拨打 *81 ,然后拨打 40 - 49, *81 前缀将被移除,其余号码被发送到系统1 如果用户拨打 *81 和 *80 ,然后拨打40 到 49之间的号码, *81 将被移除,其余号码被发送到系统1 以上方式在 intercom 内部呼叫时使用。
是否需要设置端口转发? 无需设置端口转发设置 如果用户使用 IAX2 Trunks ,并且设置正确的话,所有IAX2端口将对地方开放。
如何对接两个以上的系统?
有两种方法可实现这个需求。
1. 用户可以独立设置每个对接的系统,例如:.
System 1 to System 2
System 1 to System 3
System 2 to System 1
System 2 to System 3
System 3 to System 1
System 3 to System 2
2. 用户也可以这样,也需要在系统2的拨号规则中做路由的逻辑判断: 1. 对接 System 1 到 System 2 2. 对接 System 2 到 System 3 3. 在系统1中配置呼出路由,发送呼叫到系统2,系统2转发呼叫到系统3.. 4. 在系统3中配置呼出路由,发送呼叫到系统2,然后系统2转发呼叫到系统1.
两种方式中,第一种方式相对可靠一些,可以保证每个系统的相对稳定。 为什么不使用SIP中继? 如果使用SIP中继进行两个系统的对接,用户至少保证其中一个系统必须设置外部端口转发。设置方法相对复杂,同时需要特别设置防火墙,保证无权限的用户不能访问此系统。SIP中继设置将在其他章节中进行讨论。.