我有一台 Trixbox 服务器(Asterisk 和 FreePBX),上面有多个租户。我需要这些租户的呼叫通过不同的出站路由发出,以便在 SIP 中继提供商端分摊账单。本质上,分机需要分组,每个组都需要有自己的出站 SIP 中继。
以前可以使用 FreePBX 中的自定义上下文来实现这一点,但该功能已不复存在。现在该如何实现?我很乐意更换为提供此功能的其他 VoIP 发行版,但我需要它基于 Asterisk 和 FreePBX,因为这是客户所知道的。
答案1
我们通常通过在 extensions_custom.conf 文件中添加上下文来实现这一点。这些自定义上下文包括默认上下文,但会监听您的出站呼叫(例如 NXXNXXXXXX、1NXXNXXXXXX),并在呼叫开头添加您的拨号代码(例如 7777)。然后,您只需设置出站路由,以便特定路由在将呼叫推送给运营商之前监听相关代码并将其剥离。
属于客户端 1 的电话将设置在“custom-client1”上下文中,而属于客户端 2 的电话将设置在“custom-client2”中。
[custom-client1]
exten => _NXXNXXXXXX,1,Dial(Local/888${EXTEN}@from-internal)
exten => _1NXXNXXXXXX,1,Dial(Local/888${EXTEN}@from-internal)
exten => _NXXXXXX,1,Dial(Local/888${EXTEN}@from-internal)
include => from-internal
[custom-client2]
exten => _NXXNXXXXXX,1,Dial(Local/889${EXTEN}@from-internal)
exten => _1NXXNXXXXXX,1,Dial(Local/889${EXTEN}@from-internal)
exten => _NXXXXXX,1,Dial(Local/889${EXTEN}@from-internal)
include => from-internal