0

アスタリスクを使用してカスタムIVRを作成しました。IVRは、個人IDのユーザー入力に基づいて、DBから個人の医療情報を取得し、その病歴を通知することを目的としています。

私は(学校と大学)のような6人のcustomersを持っています。24チャネルのPRI回線を購入し、顧客ごとに4チャネルを配布することを計画しています。4人の顧客が1つのDID番号に同時に電話をかけることができます。5番目の顧客から電話があった場合は、話中音が鳴るはずです。

顧客ごとに一意の番号が必要なので、通信サービスプロバイダーから6つのDID番号を購入する予定です。

アスタリスクpbxを使用してこれを達成する方法、またはこれを続行するための入力を提供する方法

ありがとうMagesh

4

2 に答える 2

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 に答える
0

何を達成しますか?

最初に「アスタリスク テレフォニーの未来」のような本を読むことをお勧めします。

その後、この 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 に答える