予測ダイヤラ

ICTBroadcastは、コールセンターに最適な予測ダイヤラーです。

このドキュメントでは、予測ダイヤラ機能をICTBroadcastに実装する方法について説明しました。 ながら
予測ダイヤリング動作の実装では、XNUMXつの質問に直面しました。

キャンペーンに必要なチャネルの数は? そして、新しいチャネルをダイヤルする必要があるときは? キューにアクティブコールが必要なため
忙しいエージェントが無料になる前に!
上記の質問に答え、最終的なアルゴリズムを完了するために、この投稿を次のセクションに分割しました
関連するエンティティ アルゴリズムが利用できるエンティティ。
ダイヤリングファクター キャンペーンの速度を決定できる要因
ターゲットハンドル キャンペーンのペースを制御する責任がある変数
必要な統計 ターゲットハンドルを完了するために必要な統計または変数。
デザイン 予測ダイヤリングの最終設計/アルゴリズム

関連するエンティティ

次のエンティティを監視して、アクティブなコール数を予測する必要があります
キャンペーン/キュー
エージェントキャンペーンは、キャンペーンごとにXNUMXつのキューを持つことができ、すべての統計が収集され、キューを考慮します。
アクティブなエージェント
有効なエージェントがいません。特定の時間にキャンペーン/キューに利用できます
アクティブな連絡先/通話
3番目のパラメーターは、キュー内およびサービス呼び出し内の発信の総数です。

ダイヤリングファクター

次の要因を使用して、ダイヤラが必要な同時数を増減する必要があるかどうかを判断できます
チャネル。
制限要因
活性剤
アクティブなチャネル
キュー内の呼び出し
平均処理(通話+保留+ラップアップ)時間
後押し要因
低ASR
自由契約選手
平均通話セットアップ時間

平均放棄時間
カスタム要因
必要なキュー時間
許容放棄比率

ターゲットハンドル

以下の方法でキャンペーンの速度や同時通話数を制御できます
既存のハンドラー
通常ICTBroadcastは、キャンペーンに次のXNUMXつのパラメーターを使用して、関連するキャンペーンのダイヤル速度を制御します。
Channel Auto:キャンペーンに割り当てられたチャネルの総数
チャネルオフセット:ユーザーがダッシュボードGUIからチャネルを増減したい場合のチャネルの違い、
さらに、このパラメータは、バランスが十分に高く維持できない場合に、同時実行数を減らすためにも使用されます。
同時チャネルの数。
新しいハンドラー
キャンペーン統計の上記の処理パラメーターを、次のエージェント関連の予測パラメーターに追加/置換できます
エージェント自動:キャンペーン内の任意の時点でのアクティブエージェントの総数
エージェントのオフセット:ICTBroadcastが低ASRの問題に対処するためにダイヤルする必要がある追加の必要なチャネル。 電話を切る
セットアップ時間など...

必要な統計

上記のように、同時チャネル数を制御するにはXNUMXつのパラメーターが必要です。ここにサブパラメーターの詳細があります。
上記のパラメータの実際の値を決定する前に必要なもの

エージェントオート
変更なしに、エージェント自動としてアクティブエージェントを使用しません。

エージェントオフセット
それは少し複雑で、その値を計算するために以下のすべてのサブパラメーターが必要です
平均セットアップ時間:ダイヤルして通話に応答するのに必要な平均時間(つまり、呼び出し時間)
平均処理時間:保留時間とラップアップ時間を含む、エージェントとの平均通話時間
平均成功率(ASR):成功率、つまり、拒否された通話中のコールと応答されたコールの数

セットアップ中の呼び出し:現在呼び出し中の呼び出しの数またはセットアップ中の呼び出し
合計アクティブコール:合計アクティブコール
対応可能なエージェント:現在ログインしており、通話に対応または対応可能なエージェントの総数

無料エージェント:新しい通話を無料で受けられるログに記録されたエージェント
予想されるエージェント:解放しようとしているハンドルモードのエージェント。
現在の処理時間+平均セットアップ時間> =平均処理時間
また、エージェントのオフセットを上限以下に保つ必要もありました
Channel Auto:キャンペーンに割り当てられたチャネルの数
チャネルオフセット:ユーザーまたはシステムの冒涜ごとの追加または少ない呼び出しの数

デザイン

agent_autoおよびagent_offsetフィールドのほかに、予測をサポートするために次のエンティティを作成/導入する必要があります
ICTBroadcastでのダイヤル

統計的予測
データベースに作成されたXNUMXつのテーブルとXNUMXつのイベントは、キャンペーンごとにシステム統計を収集します。 イベントは後に発生するように設定されています
30秒ごとに、次のパラメーターの平均値でstatistic_predictiveテーブルを更新するようにプログラムされています
キャンペーンごと。
成功率
handle_time
ring_time
hold_time
こちらが流れです
(スタート)
|
[過去30秒間の統計を収集する] | |
| |
[statistic_predictiveテーブルを更新する] |
| |
| |
[30秒ごと]> ------------
|
( 終わり )

予測キャンペーンのエージェント
すべてのアクティブなキャンペーンをXNUMXつずつ処理し、周囲から最新の統計を取得する別のEVENT
上記のstatistic_predictiveテーブルを含むシステム。その後、agent_autoおよびagent_offset変数を格納します。
それらの値を計算します。
こちらが流れです
(スタート)
|
____________ | _____________
[すべてのアクティブなキャンペーンを取得] [__________________________] |
________ | _________ |
[キャンペーンをXNUMXつ取得]

[__________________] | |
_________ | _________ | |
[呼び出し統計を取得] | |
[___________________] | |
_________ | _________ | |
[チャンネルの状態を取得] | |
[___________________] | |
_________ | _________ | |
[エージェントの状態を取得] | |
[___________________] | |
_____________ | _____________ | |
[agent_auto = agent_active] | |
[___________________________] | |
________________ | __________________ | |
[agent_offset = calculate_offset()] | |
[___________________________________] | |
______________ | ______________ | |
[agent_offsetを制限する] | |
[channel_autoおよびオフセット] | |
[_____________________________] | |
_____________ | _____________ | |
[agent_autoおよびを更新する] | |
[agent_offset] | |
[___________________________] | |
| | |
(ループ)> ---------------- |
| |
[5秒ごと]> ------------
|
( 終わり )