(58)【調査した分野】(Int.Cl.,DB名)
前記セッション状態は、前記端末を利用するオペレータのプレゼンス状態及び前記通信の状態を示す回線状態のうち少なくとも1つである、請求項1に記載の通信システム。
【発明を実施するための形態】
【0010】
以下、図面を参照して実施の形態について説明する。なお、以下で説明する実施の形態は一例に過ぎず、本発明が適用される実施の形態は、以下の実施の形態に限られるわけではない。例えば、以下で説明する実施の形態では、CTIシステムに本発明を適用する例を説明しているが、本発明はCTIシステムに限らず、セッション状態の管理を必要とするシステム(インターネット電話システム、オンラインゲーム等)に適用可能である。
【0011】
<概要>
図1は、実施の形態に係る通信システムの構成の一例を示す図である。
図1に示すように、実施の形態に係る通信システムは、端末1と状態管理装置2と通信装置3とを有する。なお、
図1には端末1が1つ示されているが、2以上の端末1を有していてもよい。
【0012】
端末1は、例えばWebブラウザを備えたPC(Personal Computer)であり、CTIアプリケーションがインストールされている。CTIアプリケーションは、状態管理装置2を介して通信装置3と通信することで、CTIシステムが備える各種機能を実現する。
【0013】
状態管理装置2は、端末1と通信装置3とに接続され、端末1にインストールされたCTIアプリケーションと通信装置3との間で送受信される信号を中継すると共に、当該信号からCTIアプリケーションのセッション状態(プレゼンス状態や通話状態等)を取得して管理する機能を有している。
【0014】
通信装置3は、状態管理装置2を介してCTIアプリケーションと通信し、CTIシステムが備える各種機能を実現する。また、通信装置3は、CTIアプリケーションのセッション状態(プレゼンス状態や通話状態等)を管理する機能、CTIアプリケーションのセッション状態に従ってユーザからの問い合わせを任意のCTIアプリケーションに振り分ける機能などを有している。なお、通信装置3は、通話機能を提供するPBX(Private Branch eXchange)と、CTIアプリケーションを管理するCTIサーバとを含むシステムであってもよい。
【0015】
なお、一般的にCTIシステムでは、通信装置3とCTIアプリケーションとの間でセッション状態を管理する為に送受信される制御信号(SIP等)を通すための通信路と、通信装置3とCTIアプリケーションとの間で実際の音声データ又は映像データ(RTP等)を通すための通信路とが用いられる。本実施の形態では、状態管理装置2でCTIアプリケーションのセッション状態を取得するため、制御信号を通すための通信路は状態管理装置2を経由して確立される。一方、実際の音声又は映像を通すための通信路は、制御信号を通すための通信路と同様に状態管理装置2を介して確立されるようにしてもよいし、状態管理装置を介さずに、通信装置3とCTIアプリケーションとの間で直接確立されるようにしてもよい。
【0016】
<機能構成>
(端末)
図2は、実施の形態に係る端末の機能構成の一例を示す図である。
図2に示すように、端末1は、CTIアプリケーション11と、反映部12と、記憶部13とを有する。
【0017】
CTIアプリケーション11は、通信装置3と通信することで、CTIシステムが備える各種機能(電話の発信・着信・保留等の通話機能、オペレータの在席・離席を設定するプレゼンス機能、顧客に関する情報の入力・表示機能等)を実現する。また、CTIアプリケーション11は、オペレータに操作画面を提供すると共に、オペレータからの各種操作を受け付ける機能を有する。
【0018】
反映部12は、通信装置3とCTIアプリケーション11との間でセッションの確立が行われる際に、当該セッションを一意に識別するための識別子(以下、「状態管理ID」という)を状態管理装置2から取得し、記憶部13に格納する。
【0019】
また、反映部12は、記憶部13に状態管理IDが保存されている場合、状態管理IDを状態管理装置2に送信することで、CTIアプリケーションの直前のセッション状態を状態管理装置2から取得し、取得した直前のセッション状態をCTIアプリケーションに反映させる機能を有する。
【0020】
なお、反映部12は、Java(登録商標)ライブラリやActiveX(登録商標)等のミドルウェアを含み、CTIアプリケーション11は、当該ミドルウェアが備えるAPIを用いて実現されるJava(登録商標)アプリケーション、Applet、Webアプリケーション、Windows(登録商標)アプリケーション等であってもよい。
【0021】
記憶部13は、HDD又はメモリ等により実現され、状態管理IDを記憶する。なお、記憶部13は、状態管理IDをHDD又は不揮発性メモリに記憶するようにしてもよい。端末1自身が再起動した場合又は端末1の電源が急に切れた場合であっても、状態管理IDがメモリから消去されてしまうことを防止することができる。
【0022】
(状態管理装置)
図3は、実施の形態に係る状態管理装置の機能構成の一例を示す図である。
図3に示すように、状態管理装置2は、通信装置間通信部21と、端末間通信部22と、セッション状態管理部23と、記憶部24とを有する。
【0023】
通信装置間通信部21は、通信装置3が備えるプロトコルを用いて、通信装置3との間で信号の送受信を行う機能を有する。端末間通信部22は、端末1との間で信号の送受信を行う機能を有する。
【0024】
セッション状態管理部23は、端末1が備えるCTIアプリケーション11のセッション状態を通信装置3から取得すると共に、取得したセッション状態を一意に識別する「状態管理ID」を生成する。また、セッション状態管理部23は、取得したセッション状態に状態管理IDを対応づけてセッション情報に格納する。また、端末1が備える反映部12からの要求に応じて、セッション情報からCTIアプリケーション11の直前のセッション状態を取得して端末1に送信する。
【0025】
記憶部24は、HDD又はメモリ等により実現され、セッション情報を記憶する。セッション情報の具体例を
図4に示す。セッション情報には、CTIアプリケーション11を一意に識別する「エージェントID」と、CTIアプリケーションを利用するオペレータのプレゼンス(在席状況)を示す「プレゼンス状態」と、CTIアプリケーションと通信装置3との間に確立される通話回線の状態を示す「回線状態」と、「状態管理ID」とが対応づけられて格納される。なお、プレゼンス状態及び回線状態は、セッション状態の全部又は一部である。
【0026】
<システムの動作例>
次に、本実施の形態に係る通信システムの動作例を
図5及び
図6を参照して説明する。まず、
図5を用いて、オペレータがCTIアプリケーションにログインしてプレゼンス状態を変更する際の動作例を説明する。
【0027】
CTIアプリケーション11により、端末1のディスプレイにコールセンター業務のログイン画面が表示され、端末1を利用するオペレータにより当該ログイン画面にID及びパスワードが入力される(S101)。続いて、CTIアプリケーション11は、反映部12にログイン要求を送信する。ログイン要求には、オペレータが入力したエージェントID(Agent1)及びパスワードが含まれる(S102)。
【0028】
反映部12は、エージェントID(Agent1)及びパスワードを含むログイン要求を状態管理装置2に送信する(S103)。続いて、状態管理装置2のセッション状態管理部23は、通信装置間通信部21を介して、エージェントID(Agent1)及びパスワードを含むログイン要求を通信装置3に送信する(S104)。
【0029】
通信装置3は、受信したエージェントID(Agent1)及びパスワードを用いて認証処理を行い、ログイン結果を状態管理装置2に送信する。なお、通信装置3は、ログイン結果と共に、Agent1に対応するCTIアプリケーションのセッション状態を状態管理装置2に送信する(S105)。当該セッション状態には、少なくともプレゼンス状態及び回線状態が含まれる。なお、本動作例では、プレゼンス状態には初期状態として「受付可」が設定されていると仮定する。また、同様に、回線状態には初期状態として通話中でも着信中でもないことを示す「−」が設定されていると仮定する。
【0030】
続いて、通信装置3と状態管理装置2の通信装置間通信部21との間で、通信装置3とCTIアプリケーション11との間でセッション状態の同期や通話回線の制御を行うために送受信される制御信号を通すための通信路が確立される(S106)。
【0031】
続いて、状態管理装置2のセッション状態管理部23は、状態管理ID(本動作例では「00001」と仮定)を生成し、ステップS105の処理手順で受信したセッション状態に対応づけてセッション情報に格納する(S107)。
【0032】
状態管理装置2のセッション状態管理部23は、ステップS105の処理手順で受信したログイン結果、セッション状態及び生成した状態管理ID(「00001」)を、端末間通信部22を介して端末1に送信する(S108)。続いて、状態管理装置2の端末間通信部22と端末1の反映部12との間で、通信装置3とCTIアプリケーション11との間でセッション状態の同期や通話回線の制御を行うために送受信される制御信号を通すための通信路が確立される(S109)。なお、当該通信路にはWebSocketを用いるようにしてもよい。WebSocketが用いられることで、通信のリアルタイム性を確保することができる。
【0033】
端末1の反映部12は、ステップS108の処理手順で受信したログイン結果、セッション状態及び状態管理IDのうち、状態管理ID(「00001」)を記憶部13に格納する(S110)と共に、ログイン結果及びセッション状態をCTIアプリケーション11に送信する(S111)。CTIアプリケーション11は、コールセンター業務の画面をログイン画面から操作画面に遷移させると共に、プレゼンス状態が「受付可」であること、及び回線状態が「−」であることを操作画面に表示する(S112)。
【0034】
次に、端末1を利用するオペレータが操作画面を操作することにより、プレゼンス状態が「受付可」から「離席中」に変更される(S113)。CTIアプリケーション11は、プレゼンス状態が変更されたことを反映部12に通知するため、エージェントID(Agent1)と、プレゼンス状態(「離席中」)とを含むステータス変更通知を反映部12に送信する(S114)。反映部12は、エージェントID(Agent1)及びプレゼンス状態(「離席中」)を含むステータス変更通知を状態管理装置2に送信する(S115)。続いて、状態管理装置2のセッション状態管理部23は、通信装置間通信部21を介して、エージェントID(Agent1)及びプレゼンス状態(「離席中」)を含むステータス変更通知を通信装置3に送信する(S116)。
【0035】
通信装置3は、通信装置3の内部で管理している、Agent1に対応するCTIアプリケーションのプレゼンス状態を「受付可」から「離席中」に変更すると共に、変更を受け付けたことを示すステータス変更結果(「OK」)を状態管理装置2に通知する(S117)。続いて、状態管理装置2のセッション状態管理部23は、セッション情報のうち、エージェントIDがAgent1であるレコードのプレゼンス状態を「離席中」に変更する。
【0036】
状態管理装置2のセッション状態管理部23は、プレゼンス状態の変更を受け付けたことを示すステータス変更結果(「OK」)を、端末間通信部22を介して端末1に送信する(S118)。続いて、端末1の反映部12は、プレゼンス状態の変更を受け付けたことを示すステータス変更結果(「OK」)をCTIアプリケーション11に送信する(S119)。CTIアプリケーション11は、ステータス変更結果が「OK」であることを確認し、操作画面に表示しているプレゼンス状態を「離席中」に更新する(S120)。
【0037】
以上、
図5を用いて、オペレータがCTIアプリケーションにログインしてプレゼンス状態を変更する際の動作例を説明した。なお、端末1に表示されるコールセンター業務の画面において正常にログオフされた場合、ステップS101乃至ステップS111と同様の処理順序により、状態管理装置2のセッション情報からエージェントIDがAgent1であるレコードが消去されると共に、端末1の記憶部13に格納されている状態管理IDも消去される。
【0038】
次に、
図6を用いて、CTIアプリケーションが初期化されてセッション状態が失われた場合に、セッション状態の復旧処理が行われる際の動作例について説明する。
【0039】
本動作例では、
図5の動作例が行われた後、何らの要因(Webブラウザの異常終了、Webブラウザの再起動、Webページのリロード等)により、正常にログオフされる前にCTIアプリケーション11が初期化されたと仮定する。また、CTIアプリケーションの初期化に伴い、
図5のステップS109の処理手順で確立されていた通信路が切断されたと仮定する。
【0040】
CTIアプリケーション11により、端末1のディスプレイにコールセンター業務のログイン画面が表示され、端末1を利用するオペレータにより当該ログイン画面にID及びパスワードが入力される(S121)。続いて、CTIアプリケーション11は、反映部12にログイン要求を送信する。ログイン要求には、オペレータが入力したエージェントID(Agent1)及びパスワードが含まれる(S122)。
【0041】
反映部12は、記憶部13に状態管理IDが格納されているか否かを確認する。なお、状態管理IDが格納されていない場合(すなわち、正常にログオフが行われた場合)、反映部12は、
図5のステップS103の処理手順を実行することになる。
図6の動作例では正常にログオフされていないことから、記憶部13に状態管理ID(「00001」)が格納されたままの状態である。
【0042】
反映部12は、記憶部13に状態管理IDが格納されていることを確認すると、記憶部13から状態管理IDを読み出し(S122)、読み出した状態管理ID(「00001」)を状態管理装置2に通知する(S123)。
【0043】
状態管理装置2のセッション状態管理部23は、ステップS123の処理手順で受信した状態管理IDに対応するレコードがセッション情報に格納されているかを確認する(S124)。また、端末間通信部22は、
図5のステップS109の処理手順で確立されていた通信路に関する情報がメモリ等に残っている場合は、当該情報を破棄する(S125)。
【0044】
続いて、状態管理装置2のセッション状態管理部23は、ステップS123の処理手順で受信した状態管理ID(「00001」)に対応するセッション状態(プレゼンス状態、回線状態)をセッション情報から読み出す(S126)。なお、本動作例では、読み出されたプレゼンス状態は「離席中」であり、回線状態は「−」である。
【0045】
続いて、状態管理装置2のセッション状態管理部23は、読み出したプレゼンス状態(「離席中」)及び回線状態「−」を、端末間通信部22を介して端末1に送信する(S127)。続いて、状態管理装置2の端末間通信部22と端末1の反映部12との間で、通信装置3とCTIアプリケーション11との間でセッション状態の同期や通話回線の制御を行うために送受信される制御信号を通すための通信路が新たに確立される(S128)。
【0046】
続いて、端末1の反映部12は、ログイン結果(「OK」)及びセッション状態(プレゼンス状態:「離席中」、回線状態)「−」)をCTIアプリケーション11に送信する(S129)。CTIアプリケーション11は、コールセンター業務の画面をログイン画面から操作画面に遷移させると共に、プレゼンス状態が「受付可」であること、及び回線状態が「−」であることを操作画面に表示する(S130)。
【0047】
以上、
図6を用いて、CTIアプリケーションが初期化されてセッション状態が失われた場合に、セッション状態の復旧処理が行われる際の動作例について説明した。
【0048】
<まとめ>
以上、実施の形態によれば、端末と、通信装置と、前記端末と前記通信装置との間で行われる通信のセッション状態を管理する状態管理装置とを有する通信システムであって、前記状態管理装置は、前記セッション状態を一意に識別する識別子(状態管理ID)と前記セッション状態とが対応づけられたセッション情報を記憶する記憶部(記憶部24)と、前記端末から受信した前記識別子に基づいて、前記セッション情報から前記セッション状態を読み出して前記端末に通知する通知部(端末間通信部22及びセッション状態管理部23)と、を有し、前記端末は、前記識別子を前記状態管理装置に送信することで、前記状態管理装置から前記セッション状態を取得し、取得した当該セッション状態を通信アプリケーション(CTIアプリケーション11)に反映させる反映部(反映部12)と、を有する通信システムが提供される。この通信システムにより、アプリケーション(CTIアプリケーション)が初期化された場合であっても、初期化前の状態を引き継ぐことができる。
【0049】
<実施形態の補足>
本発明は、上記の実施の形態に限定されることなく、特許請求の範囲内において、種々変更・応用が可能である。
【0050】
本実施の形態に係る端末1、状態管理装置2及び通信装置3は、例えば、コンピュータ(携帯電話機、スマートフォン等を含む)に、本実施の形態で説明する処理内容を記述したプログラムを実行させることにより実現可能である。すなわち、端末1、状態管理装置2及び通信装置3が有する機能は、当該コンピュータに内蔵されるCPUやメモリなどのハードウェア資源を用いて、それぞれ端末1、状態管理装置2及び通信装置3で実施される処理に対応するプログラムを実行することによって実現することが可能である。また、上記プログラムは、コンピュータが読み取り可能な記録媒体(可搬メモリ等)に記録して、保存したり、配布したりすることが可能である。また、上記プログラムをインターネットや電子メールなど、ネットワークを通して提供することも可能である。