0

インターフェイスを local@{cellphone_num}@queue-agents-dial として使用して、携帯電話番号を自分のキューにログインします。マネージャーの QueueAdd コマンドを使用してそれらをキューに追加しています。 queue-agents-dial コンテキストから携帯電話番号を取得すると、問題が 1 つだけあります。メンバーが話しているときにキューが認識されず、メンバーがすでに顧客と一緒にいるときにさらに電話をかけます。キュー アプリケーションを読みましたringinuse=no は SIP デバイスでのみサポートされています。インターフェイスを SIP/{trunk}/{cellphone_num} に設定してこれを克服しようとしましたが、メンバーのステータスが無効で、キューからの通話をまったく受信していません。私は過去にアスタリスク11.3を使用していますが、アスタリスク1.4を使用していましたが、もう存在しないagentCallbackLoginアプリケーションを介してこれを達成できました。

誰にもこれに対する解決策がありますか?ありがとう。ラミ。

4

2 に答える 2

1

エージェントに電話をかけるときにエージェントを一時停止し、通話が終了したら一時停止を解除することで、これを解決することができました。

[アドバイスライン]

exten => s,1,noop(新しいアドバイス行呼び出し)

拡張 => s,n,Answer()

exten => s,n,Set(CHANNEL(言語)=彼)

exten => s,n,Agi(ivr_start.php,${FROM_DID},${UNIQUEID},${CALLERID(番号)})

exten => s,n(ハングアップ),ハングアップ

exten => h,1,noop(電話を切る)

exten => h,n,gotoif($["${CDR(dstchannel)}" = ""]?skip_unpause)

exten => h,n,Set(AGENT_INTERFACE=${CUT(CDR(dstchannel),,1)})

exten => h,n,noop (通話に応答した後にエージェントを一時停止解除 - ${AGENT_INTERFACE})

exten => h,n,UnpauseQueueMember(,${AGENT_INTERFACE})

exten => h,n(skip_unpause),noop()

exten => h,n,Agi(call_finish.php,${FROM_DID},${UNIQUEID},${CALLERID(番号)},${EPOCH},${DIALSTATUS},${ANSWEREDTIME})

[advice_line_agent_call]

exten => _X.,1,noop(ダイヤル エージェント: ${EXTEN})

exten => _X.,n,Set(AGENT_INTERFACE=Local/${EXTEN}@advice_line_agent_call)

exten => _X.,n,PauseQueueMember(,${AGENT_INTERFACE})

exten => _X.,n,Dial(SIP/sip-trunk-out/${EXTEN},15,eg)

exten => h,1,noop(エージェントの通話が終了、通話に応答がない場合はエージェントの一時停止を解除、ダイヤル ステータス: ${DIALSTATUS})

exten => h,n,gotoif($["${DIALSTATUS}"="CANCEL"]?unpause:finish)

exten => h,n,noop (コールに応答しなかった後にエージェントを一時停止解除 - ${AGENT_INTERFACE})

exten => h,n(再開),UnpauseQueueMember(,${AGENT_INTERFACE})

exten => h,n(終了),noop()

于 2013-12-20T18:21:53.123 に答える
-1

FreePBXのような既に書かれたソリューションを読む必要があると思います

ほとんどのソリューションでは、関数 GROUP をローカル チャネルと共に使用します。

于 2013-12-20T15:43:29.970 に答える