在 Asterisk 中限制每个用户的同时通话

在 Asterisk 中限制每个用户的同时通话

出于安全原因,我想限制 Asterisk 中每个分机同时拨打的电话数。例如,当用户正在通话时,其他人将无法通过该分机拨打电话。

我怎样才能实现这个目标?

答案1

这个问题没有简单的答案,但许多人提出了解决方案。基本上,您需要自己计算出站渠道,如下所述:

http://www.remiphilippe.fr/2010/05/29/simultaneous-call-limitation-on-asterisk/

将组作为宏启用后,脚本如下所示:

[globals]
MAXCALLS=2

[macro-voipcall]
; Limit the number of outgoing calls
; Set Group
exten => s,1,Set(GROUP()=OUTBOUND_GROUP)
; Are we exceeding the limit?
exten => s,2,GotoIf($[${GROUP_COUNT()} > ${MAXCALLS}]?999)
; No? Then dial
exten => s,3,Dial(${ARG1})
; Yes? Then deny
exten => s,999,Set(DIALSTATUS=CHANUNAVAIL)
  • 这是从上面的网站获取的;我不能承担这份荣誉,也没有测试过脚本,但它看起来不错!

相关内容