- android - 多次调用 OnPrimaryClipChangedListener
- android - 无法更新 RecyclerView 中的 TextView 字段
- android.database.CursorIndexOutOfBoundsException : Index 0 requested, 光标大小为 0
- android - 使用 AppCompat 时,我们是否需要明确指定其 UI 组件(Spinner、EditText)颜色
我正在尝试配置 freepbx 通过特定中继路由某些分机。我已经看到了一些方法来做到这一点,目前正在尝试使用自定义上下文来做到这一点。
基本上,我在同一个 PBX 上使用两家公司,来自公司 1 上下文的分机的调用需要通过公司 1 中继,而来自公司 2 上下文的分机的调用需要通过公司 2 中继。
这是我到目前为止所拥有的:
[from-internal]
exten => h,1,Hangup()
[company1]
exten => 1234512345,1,Set(__FROM_DID=${EXTEN})
exten => 1234512345,n,Gosub(app-blacklist-check,s,1)
exten => 1234512345,n,ExecIf($[ "${CALLERID(name)}" = "" ] ?Set(CALLERID(name)=${CALLERID(num)}))
exten => 1234512345,n,Set(__CALLINGPRES_SV=${CALLERPRES()})
exten => 9498851902,n,Set(CALLERPRES()=allowed_not_screened)
exten => s,1,Dial(SIP/1500)
[company2]
exten => 1234567890,1,Set(__FROM_DID=${EXTEN})
exten => 1234567890,n,Gosub(app-blacklist-check,s,1)
exten => 1234567890,n,ExecIf($[ "${CALLERID(name)}" = "" ] ?Set(CALLERID(name)=${CALLERID(num)}))
exten => 1234567890,n,Set(__CALLINGPRES_SV=${CALLERPRES()})
exten => 1234567890,n,Set(CALLERPRES()=allowed_not_screened)
exten => s,1,Dial(SIP/1701)
这取自讨论 Multi-Tenancy 的网站。我需要修改它,以便任何分机都转到我指定的中继。我确信我可以计算出任何分机的模式匹配,但是我怎么能说转到这个中继呢?我似乎无法找到任何相关信息。
最佳答案
在阅读了我能得到的所有文档后,最终找到了解决方案。
我在extensions_custom.conf中使用了以下代码:
[company1]
include => from-internal
exten => _X.,1,Set(_COMPANY=company1)
include => macro-dialout-trunk-predial-hook
[company2]
include => from-internal
exten => _X.,1,Set(_COMPANY=company2)
include => macro-dialout-trunk-predial-hook
我在extensions.conf中使用了以下代码
[macro-dialout-trunk-predial-hook]
exten => s,1,Set(PREDIAL_HOOK_RET=)
exten => s,n,Set(DIAL_TRUNK=${IF($[ ${COMPANY} = company2]?2:${IF($[ ${COMPANY} = company1]?1:99)})})
exten => s,n,Set(OUTBOUND_GROUP=${IF($[ ${COMPANY} = company2]?2:${IF($[ ${COMPANY} = company1]?1:99)})})
exten => s,n,ExecIf($[${ISNULL(${COMPANY})}]?Hangup())
exten => s,n,MacroExit()
我确信这可以得到整理和改进,但现在,我已经有了我需要的解决方案。希望这对其他人有帮助。
关于linux - Freepbx自定义上下文出站路由,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27706392/
前不久,哔哩哔哩(一般常称为 B 站)发布了一篇文章《2021.07.13 我们是这样崩的》,详细回顾了他们在 2021.07.13 晚上全站崩溃约 3 小时的至暗时刻,以及万分紧张的故障定位与恢复过
想象一下这种情况,周围有一些智能手机和计算机,它们的 WiFi 适配器(无线适配器)打开,但没有必要连接到网络。 有没有办法通过 Linux 机器查看 MAC 地址? 任何见解表示赞赏。 最佳答案 断
我无法创建新的 Window Station 来运行我的应用程序 int _tmain(int argc, TCHAR* argv[], TCHAR* envp[]) { wprintf(L"
在 Conda 环境中安装包后,我想对该包中的代码进行一些更改。 在哪里可以找到包含已安装包的 site-packages 目录? 我有 Anaconda Python 2.7 base 发行版,但找
今天去改了matplotlib的配置。搜索 matplotlibrc 发现我有两个: 查看site-packages 文件夹,我发现很多包的名称中都有波浪号: ~klearn 是 sklearn ,但
我是一名优秀的程序员,十分优秀!