0

我使用星号创建了一个自定义 IVR。IVR 就是根据用户输入的人员 ID 从数据库中获取人员医疗信息并告知他们的病史。

我有 6 个客户喜欢(学校和大学)。我打算购买一条 24 通道的 PRI 线路,并为每个客户分配 4 个通道。4 个客户可以同时呼叫一个 DID 号码。如果第 5 位客户来电,它应该发出忙音。

每个客户都应该有一个唯一的号码,所以我打算从我的电信服务提供商那里购买 6 个 DID 号码。

如何使用星号 pbx 实现此目的或向我提供任何输入以继续此操作

谢谢马格什

4

2 回答 2

0

达到什么?

我建议您先阅读“Asterisk the future of telephony”之类的书。

之后阅读此 http://www.voip-info.org/wiki/view/chan_dahdi.conf 以获取可能的分组/频道选项和此: http ://www.voip-info.org/wiki/view/Asterisk+ 用于与第三方 crms/系统集成的AGI 。

于 2013-01-31T15:27:08.180 回答
0

通过 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})
于 2014-01-28T01:26:51.060 回答