~/blog/2013/03/25/807.md

コールセンターの債権回収システム開発の思い出

債権回収システムの開発

職務経歴には書いていないですが、まだIT業界の駆け出しだった頃、勤めていた会社の都合で商社系のシステム部門に派遣されました。その商社は誰もが名前を知っている有名なクレジットカードのシステムを受注していて、僕が担当したのはそのクレジットカードの債権回収システムの構築でした。債権回収システムというと聞こえはいいけれど、要は 「借金かえしてね!」とお金のない人にお金を返させる仕組みです。僕がやっていたのはカード会社のコールセンターから自動的に債務者に大量に電話を発信する架電ハードウェアの制御でした。

クレジットカードの未払いが貯まるとカード会社のコールセンターのオペレーターから督促電話がかかってくるかと思いますが、大手クレジットカード会社のコールセンターになると、電話は人間が手で掛けているのではなくて、大量の対象者リスト(コールリスト)を元にコンピュータが読み込んでダイヤリングハードウェアを使って一斉に発信しています。ちなみにコールセンターから債務者に発信することを「アウトバウンド」、債務者からコールセンターに電話が掛かってくることを「インバウンド」と呼んでいました。インバウンドのみならず、アウトバウンドもコンピュータによって自動化されているのです。

オペレーターは座って待機しているだけで良い

コンピュータが自動的に大量に電話を掛けて、電話がつながったら (「ヒットする」と呼んでいました)、オペレータのヘッドセットに自動的に音声がつながり、音声が伝送されたら瞬時に、オペレータの画面には、誰につながったのか、督促金額はいくらか、その債務者の通話履歴情報、要注意人物なのか、オペレータが会話すべき内容などが表示されます(この画面を「ヒット画面」と呼んでいました)。 つまりオペレータは座って待機しているだけで、常時債務者に電話がつながり、機械的に何度でも「お金返してね」コールができる仕組みです。相手と会話すべき内容はヒット画面が教えてくれます。

僕はその中でもダイヤリング・ハードウェアの制御システムをC言語で書いていました。UNIXのシステム上で大量に架電して、架電する量をオペレータへのヒット率をもとに自動的に調整したり、電話回線の切断理由コードを取得して、相手先都合で切断された場合にどう判断するのか(例えば勤務先に掛けたりとか)をハードウェアに教えたりです。オペレーターは督促電話が終了すると、その内容に応じて結果コード(例えば「*日以内に返金予定」「再コール」など)をヒット画面に入力します。結果コードは最終的にDBに保存されます。

電話の切断理由コード

業界関係者以外にはあまり知られていないですが、ISDNを使って電話を掛けて繋がらなかった場合、切断理由コードというのが取得できます。切断理由コードは次のようなものです。

コード意味原因
1欠番発信した番号に誤りがある
2指定中継網へのルート無し発信した番号に誤りがある
3相手へのルート無し発信した番号に誤りがある
6チャネル利用不可同一バス上の他の端末が全てのチャネルを使用している
16正常切断正常な切断がされた
17着ユーザビジー相手が他の端末と通信中である
18着ユーザレスポンス無し相手からの応答がない
19相手ユーザ呼出中/応答無し相手からの応答はあったが、接続できなかった
21通信拒否ISDN関係の設定不整合などの理由により、相手端末が接続を拒否した
22相手加入者番号変更相手の電話番号が変更されている
26選択されなかった
ユーザの切断復旧
着信に対して応答したが、同一バス上の他の端末に接続された
27相手先端末故障中相手先の端末が故障したか、切断手順を踏まずに電源が切られた
28無効番号フォーマット発信した番号に誤りがある
31その他の正常クラスその他のエラー
34利用可回線/チャネル無し同一バス上の他の端末が全てのチャネルを使っており、発信できない
38網障害網に障害が発生した
41一時的障害網に一時的な障害が発生した
42交換機輻輳網に障害が発生した
43アクセス情報廃棄網に障害が発生した
44要求回線/チャネル利用不可使用を要求したチャネルは同一バス上の他の端末に使用されている
88端末属性不一致発信した電話番号に誤りがあるか、接続形態に誤りがある
91無効中継網選択発信した電話番号に誤りがある
96必須情報要素不足不正な相手からの着信を受け取った
97メッセージ種別未定義
又は未提供
不正な相手からの着信を受け取った
98呼状態とメッセージ不一致
又はメッセージ種別未定義
又は未提供
網との間で状態の不一致が発生した
101呼状態とメッセージ不一致網との間で状態の不一致が発生した
102タイマ満了による回復着信時のタイムアウトが発生した

この切断理由コードを取得すれば、相手がどういう状態で電話に出られなかったのかが判別つきます。この切断理由コードを元に再コールを行うべきか判断します。

コンピュータと電話の融合

事業はCRM(Customer Relationship Management)と呼ばれて、その中でもCTI(Computer Telephony Integration)、いわゆる電話の世界とコンピュータの世界の融合な技術をやっていた感じです。INS回線とか、PSTN(公衆交換電話網:Public Switched Telephone Network*)とか、*PBX(構内電話機:Private Branch eXchange)とか、電話業界の業界用語にだいぶ詳しくなりました。ダイヤリングハードウェアは一般的なサーバーではなく専用機器だったのですが、Solarisサーバーからの制御を受け付けていたので、Solarisから独自コマンドでダイヤリングハードウェアのイニシャライズや発信呼数制御、現在の発信状況から判断して最適な発信状態の維持(オペレーターの稼働率が高い時は発信数を自動的に抑え、オペレーターの稼働率が低い時は発信数を自動的に増やす)などをやっていました。あと、ヒット画面の作成もVB6などで作る仕事もやっていました。AVAYAの機器導入やインバウンドの制御に関しては別なチームが行なっていました。

退職者は沢山いました

この業界、2000年前半には非常に儲かっていたので、待遇は良かったのですが、やはり退職者は沢山いました。債権回収システムという名目の「借金の取り立て」ですから。この債権回収システムで自殺してしまった人もいるのではないかなと思います。退職者の方と食事をした時に「自分の技術を借金の返済の強制とかに使われたくない」という嫌悪感を吐露していた人とかもやはりいました。手に職をつけたかった僕は、元の会社から呼び戻しがあるまで仕事は続けたのですが、さすがに今もうこの業界に再び戻ろうとは思わないですね。

現在のCTIソリューション

督促電話や貸金に関しても法律が出来たし、電話回線も多様化しているし、AsteriskなどのオープンソースのIP-PBXアプリケーションも出てきたので、最近のCTI業界がどうなっているのかは不明です。ただ、貸金業法が改正されたとはいえ、クレジットローンなどは未だ健在なので、形を変えて残っているとは思います。CRMが重要って最近よく聞くようになったけど、CRMの現場はけっこう過酷でした。