我已经使用星号创建了一个自定义IVR。IVR的主要功能是根据用户输入的个人id从数据库中获取个人医疗信息,并告知他们的病史。
我有6个客户,比如(学校和大学)。我计划购买一条PRI线路,有24个通道,每个客户分流4个通道。4个客户可以同时呼叫一个DID号码。如果第5位客户呼叫,则应发出忙音。
每个客户都应该有一个唯一的号码,所以我计划从我的电信服务提供商购买6个DID号码。
如何使用asterisk pbx来实现这一点,或者向我提供任何输入来继续这项工作
感谢Magesh
发布于 2013-01-31 23:27:08
实现什么?
我建议你先读一读“电话的未来”之类的书。
之后,阅读此http://www.voip-info.org/wiki/view/chan_dahdi.conf以获取可能的分组/通道选项,并阅读此:http://www.voip-info.org/wiki/view/Asterisk+AGI以获取与第三方crms/系统集成的信息。
发布于 2014-01-28 09:26:51
通过dnis使用Group命令对呼叫进行分组
计算具有该dnis的呼叫数
应用你的限制
就像这样..。
; this is your dialplan
[yourdialplan]
exten => 7314451234,n,Macro(limit-by-did,${EXTEN})
exten => 7314451235,n,Macro(limit-by-did,${EXTEN})
exten => 7314451236,n,Macro(limit-by-did,${EXTEN})
exten => 7314451237,n,Macro(limit-by-did,${EXTEN})
exten => 7314451238,n,Macro(limit-by-did,${EXTEN})
; this does the check
[macro-limit-by-did]
exten => s,1,Verbose(2,"checking limits")
; group by dnis
exten => s,n,Set(GROUP(CLIENT)=${ARG1})
; count number of calls in this dnis that are active
exten => s,n,Set(CLIENT_COUNT=${GROUP_COUNT(${ARG1}@CLIENT)})
; apply the limits jumping to block or pass
exten => s,n,GotoIf($[${CLIENT_COUNT} > 4]?block:pass)
; sorry you were 5th caller
exten => s,n(block),Verbose(2,too many callers to ${ARG1})
exten => s,n,Hangup()
; you were less than 5th caller continue on
exten => s,n(pass),Verbose(2,less than 4 callers on ${ARG1})https://stackoverflow.com/questions/14619743
复制相似问题