次に発明の実施の形態について説明する。図1は、本発明の一実施形態に係る中継通信システムの全体構成を示す説明図である。
本実施形態の中継通信システムは、装置又は機械の遠隔保守を目的として構築された遠隔保守システムであり、コールセンターと、前記装置又は機械の設置先(客先工場)と、サービスマン派遣先と、の3拠点を、インターネットを介して接続するものである。
なお、コールセンターとは、客先工場に導入した装置又は機械の保守を行うためのサービス拠点であり、例えば前記装置又は機械の製造元メーカーに設置される。サービスマン派遣先(図1で示すところの第1サービスマン派遣先及び第2サービスマン派遣先)はサービスマンが派遣される場所であり、遠隔保守サービスを提供するための拠点としてコールセンターとは別に設置される。本実施形態の中継通信システムは、客先工場の装置又は機械を、サービスマン派遣先に待機しているサービスマンがインターネットを介して遠隔保守する、といった状況を想定して構築されている。
図1に示すように、中継通信システムは、WANに接続された複数のLAN91〜94で構成されている。WAN(Wide Area Network)は、異なるLANを相互に接続するネットワークである。本実施形態ではWANとしてインターネットが使用されている。LAN(Local Area Network)は、限定された場所で構築されるネットワークである。LANは複数存在し、互いに物理的に離れた場所に構築されている。
LAN(コールセンターLAN)91はコールセンターに構築され、LAN(派遣先LAN)92は第1サービスマン派遣先に構築され、LAN(客先LAN)93は客先工場に構築され、LAN(ヘルプ元LAN)94は第2サービスマン派遣先に構築されている。これら4つのLAN91,92,93,94は、グローバルなネットワークであるインターネットにそれぞれ接続されている。
また、LAN91〜94には、それぞれ中継サーバ1が設置されている。以下の説明において、各LANに配置される中継サーバ1を区別するために、LAN91に配置された中継サーバ(管理機能付き中継サーバ)1のことをコールセンターサーバ(relay server 1)R1と呼ぶことがある。また、LAN92に配置された中継サーバ(第2の管理対象中継サーバ)1のことを派遣先サーバ(relay server 2)R2と呼び、LAN93に配置された中継サーバ(第1の管理対象中継サーバ)1のことを客先サーバ(relay server 3)R3と呼ぶことがある。また、LAN94に配置された中継サーバ(第3の管理対象中継サーバ)1は、サービスマン派遣先に配置されているという意味で派遣先サーバと呼ぶことができるが、この中継サーバ1のことを特にヘルプ元サーバ(relay server 4)R4と呼ぶことがある。
コールセンターサーバR1には、中継通信を行うための各種の設定等を行うクライアント端末5がLAN91を介して接続されている。派遣先サーバR2及びヘルプ元サーバR4には、サービスマンが遠隔保守を行う際に直接操作するクライアント端末5がLAN92又はLAN94を介して接続されている。各サービスマンには、クライアント端末5がそれぞれ1台ずつ割り当てられており、どのサービスマンがどのクライアント端末5を使用するかは決まっている。従って、通信を行っているクライアント端末5を特定することにより、どのサービスマンが遠隔保守作業を行っているのかを特定することができる。
客先工場には、サービスマンが遠隔保守を行う対象であるクライアント端末5が配置されている。この客先工場のクライアント端末5そのものが製造元メーカーが製造した装置又は機械であることもあれば、客先工場のクライアント端末5は装置又は機械を制御するための制御端末に過ぎない場合もある。何れの場合であっても、サービスマンは、この客先工場のクライアント端末5にアクセスすることにより、遠隔保守サービスを提供する。客先工場に配置されるクライアント端末5は、LAN93を介して客先サーバR3に接続されている。
それぞれのLAN91〜94に接続されるクライアント端末5はユーザが直接操作できる端末であり、例えばユーザによって日々の業務に使用されるパーソナルコンピュータ(PC)等が該当する。従って、LAN内には通常多数のクライアント端末5が存在する。各クライアント端末5には、同一のLANの中で一意に管理されたプライベートIPアドレスが付与されている。
なお、図1に図示されているコールセンターサーバR1、派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4以外にも、物理的に離れた場所にLANが構築されており、当該LANに中継サーバ1が配置されている。これらの中継サーバ1は、外部サーバ2にインターネットを介して複数接続されている。
より具体的には、図1には2つのサービスマン派遣先(第1サービスマン派遣先及び第2サービスマン派遣先)が示されているが、これ以外にも図示しない派遣先が幾つか存在する。そして、図示されない派遣先においてもそれぞれLANが構築されるとともに、当該LANにも、派遣先サーバとしての中継サーバ1が(図1のLAN92及びLAN94の場合と同様に)接続される。また、図1で示す客先工場にはLAN93が設置されているが、これ以外にも図示しない客先工場(保守対象の機械又は装置が設置されている客先)が存在する。そして、図示されない客先工場にもそれぞれLANが設置されるとともに、当該LANにも、客先サーバとしての中継サーバ1が(図1のLAN93の場合と同様に)接続されている。
そして、本実施形態においては、客先サーバ(中継サーバ1)ごとに複数の派遣先サーバとしての中継サーバ1が設定されている。なお、以下の説明において、「派遣先サーバとしての中継サーバ1」を単に「派遣先サーバ」と称し、「客先サーバとしての中継サーバ1」を単に「客先サーバ」と称することがある。
次に、外部サーバ2の構成について説明する。この外部サーバ2は、各LANに配置された中継サーバ1間での通信に用いられる装置であり、インターネット上に設置されている。本実施形態の外部サーバ2は、SIP(Session Initiaion Protocol)サーバとしての機能を備えている。具体的には、外部サーバ2は、SIPメソッド及びレスポンス等を中継するSIPプロキシサーバとしての機能と、中継サーバ1のアカウントを登録するSIPレジストラサーバとしての機能を備える。
外部サーバ2は、図2に示すように、WANインタフェース201と、制御部202と、中継サーバアカウント情報データベース203と、を主要な構成として備えている。
WANインタフェース201は、グローバルIPアドレスを使用して、インターネットに接続された中継サーバ1等の各装置と通信を行うインタフェースである。
中継サーバアカウント情報データベース203は、中継通信システムを構成する中継サーバ1のアカウントをグローバルIPアドレスと対応付けて管理するデータベースである。本実施形態の中継サーバアカウント情報データベース203には、コールセンターサーバR1、派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4のアカウントとグローバルIPアドレスとが、対応付けて中継サーバ1ごとにそれぞれ登録されている。
制御部202は、WANインタフェース201を介して行う様々な通信を制御する処理部であり、TCP/IP、UDP又はSIP等のプロトコルに従った通信処理を制御する。この制御部202は、例えば、それぞれの中継サーバ1から当該中継サーバ1のアカウントに関する情報を受信し、中継サーバアカウント情報データベース203に登録する処理を行う。また、中継サーバ1から送信された様々なSIPメソッド又はレスポンス等の通信データを他の中継サーバ1に中継する処理等を行う。
次に、LAN91〜94に配置される中継サーバ1の構成について説明する。LAN91〜94に配置される各中継サーバ1は、各LANに配置されているクライアント端末5に通信可能に接続されるとともに、インターネットにも接続されている。そして、各中継サーバ1、即ち、コールセンターサーバR1、派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4には、プライベートIPアドレスとグローバルIPアドレスの両方が付与されている。これにより、各中継サーバ1は、前記外部サーバ2を介して相互に中継通信を行うことが可能になっている。中継サーバ1はSIPレジストラサーバとしての機能を備えており、各中継サーバ1と各クライアント端末5との間の通信はSIPを使用して行われる。なお、各中継サーバ1と各クライアント端末5との間の通信はSIPを用いたものに限定される訳ではなく、TCP/IP、UDP等の適宜のプロトコルに従った通信を行うことも可能である。
図3を参照してLAN91に配置されるコールセンターサーバR1を例にして中継サーバ1について説明する。図3はコールセンターサーバR1の機能ブロック図である。
コールセンターサーバR1は、図3に示すように、LANインタフェース501と、WANインタフェース502と、制御部503と、クライアント端末情報データベース511と、中継サーバ情報データベース512と、中継グループ情報データベース521と、ルーティンググループ情報データベース522と、アクセス許可情報データベース513と、通信管理情報データベース515と、作業履歴管理部(履歴情報管理部)516と、を主要な構成要素として備えている。
LANインタフェース501は、自装置と同一のLANに接続されたクライアント端末5との通信を、プライベートIPアドレスを使用して行うインタフェースである。
WANインタフェース502は、グローバルIPアドレスを使用して、インターネットに接続された外部サーバ2等の各装置と通信を行うインタフェースである。
制御部503は、LANインタフェース501及びWANインタフェース502を介して行う様々な通信を制御する処理部であり、TCP/IP、UDP及びSIP等のプロトコルに従った様々な通信処理を制御する。
クライアント端末情報データベース511は、LAN91を介してコールセンターサーバR1とローカルに接続しているクライアント端末5のアカウント情報をプライベートIPアドレスと対応付けて管理するデータベースである。
クライアント端末情報データベース511に格納されるクライアント端末情報の記憶内容例を図4に示す。図4に示すように、クライアント端末情報においては、LAN91に接続しているクライアント端末5ごとに、当該クライアント端末5に関する属性情報を含むnodeタグが記述される。クライアント端末5に関する属性情報としては、クライアント端末5のプライベートIPアドレス(「addr」)、識別情報(「id」)、名称(「name」)及びポート情報(「port」)等がある。なお、図4に示す記憶内容例において、client11及びclient12以外のクライアント端末5の記述を省略したが、実際には、LAN91を介して中継サーバ1に接続している他のクライアント端末5(例えば、client13)に関する属性情報についても記述されている。
中継サーバ情報データベース512は、中継通信を行う中継サーバ1とそれぞれの中継サーバ1に接続されるクライアント端末5の情報を管理するデータベースである。
中継サーバ情報データベース512に格納される中継サーバ情報の記憶内容例を図5に示す。図5に示す中継サーバ情報は、中継通信を行う中継サーバ1(コールセンターサーバR1、派遣先サーバR2及び客先サーバR3等)のそれぞれで作成されたものを合成したものである。この中継サーバ情報は、コールセンターサーバR1が、中継通信を行う他の中継サーバ1から受信したそれぞれの中継サーバ情報に、コールセンターサーバR1自身で作成した中継サーバ情報を合成して作成したものである。
図5に示す中継サーバ情報においては、中継サーバ1ごとに記述されるsiteタグと、前記siteタグを親要素とする子要素のnodeタグと、が記述されている。siteタグには中継サーバ1に関する属性情報が含まれており、この属性情報としては、中継サーバ1の識別情報(「id」)、中継サーバ1の名称(「name」)及び起動情報(「stat」)等がある。siteタグの子要素であるnodeタグには、中継サーバ1にログオンするクライアント端末5に関する属性情報が含まれている。クライアント端末5に関する属性情報としては、当該クライアント端末5の識別情報(「id」)及びクライアント端末5の名称(「name」)等がある。なお、図5の記憶内容例において、relayserver1及びrelayserver2以外の中継サーバ1の記述を省略したが、実際には、外部サーバ2を介して接続される他の中継サーバ1(例えば、relayserver3)に関する属性情報についても記述されている。また、図5においては、図4と同様に、クライアント端末5に関する記述を一部省略している。
中継グループ情報データベース521は、中継通信を行う中継グループ情報を管理するデータベースである。
中継グループ情報データベース521に格納される中継グループ情報の記憶内容例を図6に示す。図6に示すように、中継グループ情報においては、groupタグと、このグループタグを親要素とする子要素のsiteタグと、が記述されている。groupタグには中継グループに関する属性情報が含まれており、この属性情報としては、中継グループの識別情報(「id」)及び中継グループの名称(「name」)等がある。siteタグには、中継グループに含まれる中継サーバ1に関する属性情報が含まれており、この属性情報としては、当該中継サーバ1の識別情報(「id」)等がある。また、中継グループは追加作成が可能であり、その場合、新しい中継グループには、他の中継グループと異なる一意の識別情報が付与される。これにより、中継グループ内だけでデータのやり取りを行う等の設定が可能になっている。
ルーティンググループ情報データベース522は、中継通信システムを利用したルーティング処理を行うために用いられるルーティンググループ情報を管理するデータベースである。なお、ルーティンググループ情報及びこのルーティンググループ情報を用いたルーティング処理の詳細については後述する。
なお、図4で示したクライアント端末情報の記憶内容例、図5で示した中継サーバ情報の記憶内容例及び図6で示した中継グループ情報の記憶内容例はあくまで一例であり、適宜の属性情報及び要素情報を追加又は削除できることは勿論である。
アクセス許可情報データベース513は、コールセンターサーバR1以外で通信が許可されている中継サーバの識別情報等を客先サーバごとに管理するデータベースである。ここでいう客先サーバは、図1に図示される客先サーバR3を含めた中継サーバ1のことを意味している。このアクセス許可情報データベース513は、例えば、どのサービスマン派遣先がどの客先工場の遠隔保守を担当するかが予め決まっている場合、担当のサービスマン派遣先のみが遠隔保守を実施できるように、客先サーバへのアクセス制限を行うためのものである。
このアクセス許可情報データベース513について、図7を参照して具体的に説明する。図7は、アクセス許可情報データベース513の内容を示した表である。
また、前述のように、本実施形態のコールセンターサーバR1は、派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4に対してだけでなく、多数の中継サーバ1と接続されている。図7においては、これの中継サーバ1のうち、客先サーバを、relayserver3,31,32,33,34と表し、派遣先サーバを、relayserver2,4,5,6と表している。
図7の表において、targetの列には客先サーバが記述されている。一方、permitの列には派遣先サーバが記述されている。そして、この表では、ある客先サーバに対して通信が許可されている派遣先サーバが、当該客先サーバに対応付けられた形で記述されている。例えば、relayserver3は、relayserver2,4,6からの通信を許可している。
前記制御部503は、例えば、派遣先サーバR2から接続要求があった場合は、アクセス許可情報データベース513に登録されている情報に基づいてアクセス許可リストを作成し、当該派遣先サーバR2に送信する。このアクセス許可リストは、派遣先サーバR2からの通信が許可されている中継サーバ1を示すリストである。
なお、制御部503は、アクセス許可リストを作成せずに、アクセス許可情報データベース513に登録されている情報を派遣先サーバR2に送信しても良い。派遣先サーバR2は、この情報に対して適宜の処理を行うことで、自らが通信可能な客先サーバを把握することができる。
通信管理情報データベース515は、客先サーバと派遣先サーバの接続時間及び接続状況等を管理するデータベースである。
作業履歴管理部516は、各サービスマン派遣先の各クライアント端末5のアカウントと、遠隔保守の対象となった客先サーバのアカウントと、その時行われた遠隔保守作業の内容と、を対応付けて記録した作業履歴(履歴情報)を格納して管理している。前述のように、各サービスマンが使用するクライアント端末5は決まっている。従って、この作業履歴管理部が記録している作業履歴を参照することにより、どのサービスマンがどの客先工場に対してどのような遠隔保守作業を過去に行ったかという情報を取得することができる。このように、コールセンターサーバR1において、サービスマンが行った作業の履歴を一元管理することができる。
なお、前記遠隔保守作業の内容として作業履歴に記録される情報は、特に限定されない。例えば、遠隔保守作業に掛かった時間、サービスマンが行った操作コマンド、客先装置のトラブル等の事案を遠隔保守によって実際に解決できたか否か、といった情報を作業履歴管理部516に記憶することができる。また、作業履歴はデータベース化されていても良い。この場合、例えば、ある客先サーバに対してどのサービスマンが何回接続したかという情報、或いは特定のサービスマンの解決率といった情報を、当該データベース化した作業履歴を検索することにより取得することができる。
派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4は、LANインタフェースと、WANインタフェースと、制御部と、を備えている。派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4の構成は、図3に示すコールセンターサーバR1の構成からアクセス許可情報データベース513及び通信管理情報データベース515を省略した構成にほぼ相当しているので、各部の構成の説明は省略する。
次に、本実施形態の中継通信システムにおけるパケットのルーティング制御について説明する。本実施形態においては、遠隔地のLANに属するクライアント端末5同士で、WANを意識することなく相互に通信可能とするために、アプリケーション層でパケットのルーティング処理を行うことが可能に構成されている。以下、図8を参照して説明する。なお、以下の説明において、各クライアント端末5を区別するため、符号の末尾にアルファベットを付して、クライアント端末5a、クライアント端末5b・・・のように表示する場合がある。
以下の説明では、第1サービスマン派遣先のサービスマンが客先工場のクライアント端末5を遠隔保守する場合を想定し、派遣先LAN92と客先LAN93との間でパケットのルーティングを行う場合について説明する。なお、以下のルーティングに関する説明において、派遣先サーバR2と客先サーバR3との間には、既にメディアセッションが確立されているものとする。派遣先サーバR2と客先サーバR3との間でメディアセッションを確立するための処理については、後述する。
本実施形態の中継通信システムにおいて、WANを介して互いに接続されたLAN91,92,93,94には、それぞれプライベートIPアドレスが割り振られている。なお、各プライベートアドレスは、中継通信システムの中で一意に決まるように管理されている。例として図8に示すように、派遣先LAN92のアドレスは「172.16.1.0/24」、客先LAN93のアドレスは「172.30.2.0/24」である場合を想定して説明する。
本実施形態の中継通信システムにおいて、前記アプリケーション層でのパケットのルーティングを実現するため、ルーティングの対象となるLANには、ルーティング装置として機能できる中継サーバ1又はクライアント端末5が少なくとも1つ用意されている。例えば本実施形態の場合、派遣先LAN92内では派遣先サーバR2が、客先LAN93内ではクライアント端末5dが、それぞれルーティング装置として機能できるものとして説明する。
本実施形態の中継通信システムにおいて、パケットのルーティングを行う際には、まず、ルーティング可能なLANの検索を行う。具体的には、何れかのクライアント端末5から中継サーバ1に対して、ルーティング可能LAN検索コマンド(以下、単にLAN検索コマンド)を送信する。以下では、具体的に、クライアント端末5bが、派遣先サーバR2に対してルーティング可能LAN検索コマンドを送信したとして説明する。
ここで、「ルーティング可能なLAN」とは、ルーティング装置としての中継サーバ1又はクライアント端末5を備えているLANのことである。なお、図8においては、派遣先LAN92及び客先LAN93は1つずつとして説明しているが、実際には、各中継サーバ1には複数のLANが接続され得るし、それぞれのLANが必ずしもルーティング可能とは限らない。そこで、このようにルーティング可能なLANの検索が必要となる。
LAN検索コマンドを受信した派遣先サーバR2は、中継グループ情報を参照することにより、中継グループを構成する他の中継サーバ1(コールセンターサーバR1、客先サーバR3等)に対してLAN検索コマンドを転送する。そして、LAN検索コマンドを受信した各中継サーバ1(コールセンターサーバR1、派遣先サーバR2、客先サーバR3等)は、クライアント端末情報データベース511に登録された各クライアント端末5と通信を行い、自身が接続されているLANの中にルーティング装置として機能できるクライアント端末5が存在するか否かを調べる。ルーティング装置としての機能を備えたクライアント端末5が見つかった場合、当該クライアント端末5を備えるLANはルーティング可能なLANである。また、中継サーバ1自身がルーティング装置として機能できる場合も、当該中継サーバ1を備えるLANはルーティング可能なLANである。このような場合、中継サーバ1は、当該LANはルーティング可能なLANである旨と、当該LANのプライベートIPアドレスと、を関連付けたLAN検索応答情報を生成する。
続いて、コールセンターサーバR1、客先サーバR3等は、生成したLAN検索応答情報を派遣先サーバR2へ送信する。派遣先サーバR2においては、自身が生成したLAN検索応答情報と、各中継サーバ1から受信したLAN検索応答情報と、を合成した合成LAN検索応答情報を生成する。派遣先サーバR2は、当該合成LAN検索応答情報を、クライアント端末5bに転送する。クライアント端末5bには、この合成LAN検索応答情報に基づいて、LAN検索結果情報が生成されて記憶される。
クライアント端末5bに記憶されるLAN検索結果情報の例を、図9に示す。LAN検索結果情報においては、routing_networkタグを親要素とする子要素のnetworkタグが記述されている。各networkタグには、ルーティング可能なLANのプライベートIPアドレス情報(「addr」)が記載されている。このように、LAN検索コマンドの送信元のクライアント端末において、中継通信システムの中でルーティング可能なLANのプライベートIPアドレスを特定することができる。例えば本実施形態では、図9に示すように、派遣先LAN92(addr=“172.16.1.0/24”)及び客先LAN93(addr=“172.30.2.0/24”)が、ルーティング可能なLANとして特定される。
次に、ルーティング可能なLANを特定したクライアント端末5bにおいて、ルーティング経路の探索(より詳細に言うと、ルーティングポイントの特定)が行われる。当該クライアント端末5bは、ルーティング可能なLANの中からルーティング対象LANを指定したうえで、ルーティング経路探索コマンド(以下、単に経路探索コマンド)を派遣先サーバR2に送信する。以下、ルーティング対象LANとして、派遣先LAN92と客先LAN93が指定された場合について説明する。
経路探索コマンドを受信した派遣先サーバR2は、中継グループ情報を参照することにより、中継グループを構成する他の中継サーバ1(コールセンターサーバR1、客先サーバR3等)に対して経路探索コマンドを転送する。
そして、経路探索コマンドを受信した各中継サーバ1(コールセンターサーバR1、派遣先サーバR2、客先サーバR3等)は、クライアント端末情報データベース511に登録された各クライアント端末5と通信することにより、自身が接続されているLANの中に、ルーティング対象LANとして指定されたLANのルーティング装置として機能できるクライアント端末5が存在するか否かを調べる。
例えば本実施形態の場合、クライアント端末5dは、ルーティング対象LANとして指定されたLAN(客先LAN93)のルーティング装置として機能できる。このようにルーティング対象LANのルーティング装置として機能できるクライアント端末5dは、指定されたLANの間(派遣先LAN92と客先LAN93の間)でパケットをルーティングする際のルーティングポイントとして機能することができる。ルーティングポイントとして機能できるクライアント端末5dが見つかった場合、客先サーバR3は、当該客先LAN93のプライベートIPアドレスと、当該クライアント端末5dの識別情報と、を関連付けた経路探索応答情報を生成する。
一方、ルーティング対象LANとして指定されたLANのルーティング装置として中継サーバ1自身が機能できる場合、当該中継サーバ1は自身がルーティングポイントとして機能できる。例えば本実施形態では、派遣先サーバR2は、ルーティング対象LANとして指定されたLAN(派遣先LAN92)のルーティング装置として機能できる。このような場合、当該派遣先サーバR2は、当該派遣先LAN92のプライベートIPアドレスと、自身の識別情報と、を関連付けた経路探索応答情報を生成する。
続いて、客先サーバR3は、生成した経路探索応答情報を派遣先サーバR2へ送信する。派遣先サーバR2においては、客先サーバR3から受信した経路探索応答情報と、自身が生成した経路探索応答情報と、を合成した合成経路探索応答情報を生成する。派遣先サーバR2は、当該合成経路探索応答情報を、クライアント端末5bに転送する。クライアント端末5bには、この合成経路探索応答情報に基づいて、経路探索結果情報が生成されて記憶される。
クライアント端末5bに記憶される経路探索結果情報の例を、図10に示す。経路探索結果情報においては、routing_networkタグを親要素とする子要素のnetworkタグが記述されている。各networkタグには、ルーティング可能なLANのプライベートIPアドレス情報(「addr」)と、ルーティングポイントとして機能できる装置の識別情報(「router」)と、が関連付けられて記載されている。このように、ルーティング対象LANとして指定したLANの間でのルーティング経路の探索(即ちルーティングポイントの特定)を実現することができる。
次に、ルーティングセッションの確立を行う。ルーティングセッションとは、本実施形態の中継通信システムでパケットのルーティング制御に用いられるメディアセッションである。
ルーティングセッションを確立するため、クライアント端末5bは、ルーティングセッションで用いるルーティングポイントを指定する情報を、派遣先サーバR2へ送信する。派遣先サーバR2においては、上記経路探索結果情報に基づいて、ルーティンググループ情報が生成される。ルーティンググループ情報は、中継通信システムを利用したルーティング制御を実行するためのルーティング設定情報であり、ルーティンググループ情報データベース522に格納される。
ルーティンググループ情報データベース522に格納されるルーティンググループ情報の例を、図11に示す。ルーティンググループ情報において、networkタグには、ルーティング対象LANのローカルIPアドレスと、ルーティングポイントとして使用する装置の識別情報と、が関連付けられて記述されている。routing_sessionタグを親要素とする子要素のsessionタグには、当該ルーティングセッションの始点(「start」)と終点(「end」)が記述されている。
続いて、派遣先サーバR2は、ルーティンググループ情報を、次のルーティングポイントであるクライアント端末5dに転送する。これにより、各ルーティングポイントにおいて、ルーティング対象LANの間のルーティング経路に関する情報が共有される。
各ルーティングポイントが前記ルーティンググループ情報を受信した後、当該ルーティングポイントの間で、複数のメディアセッションからなるルーティングセッションが確立される。具体的には、客先サーバR3とクライアント端末5dとの間でメディアセッションが確立される。また前述のように、派遣先サーバR2と客先サーバR3との間には、既にメディアセッションが確立されている。この2つのメディアセッションにより、ルーティングポイント同士(派遣先サーバR2とクライアント端末5d)を結ぶルーティングセッションが構成される。
次に、派遣先LAN92内の端末5aから、客先LAN93内のクライアント端末5fに対して、ルーティングセッションを介してパケットを送信する場合について説明する。この場合、クライアント端末5aは、クライアント端末5fのプライベートIPアドレス(172.30.2.3)を指定したパケットを作成する。続いて、クライアント端末5aは、当該クライアント端末5a自身が属しているLAN(派遣先LAN92)のルーティングポイントである派遣先サーバR2へ、パケットを転送する。
ルーティングポイントとしての派遣先サーバR2は、ルーティングの対象となるパケットを受信した場合、宛先のプライベートIPアドレス(172.30.2.3)に基づいて、当該パケットを届けるべきLANを特定する。今回の説明では、パケットの届け先のLANは客先LAN93(プライベートIPアドレスは172.30.2.0/24)となる。次に、派遣先サーバR2は、前記ルーティンググループ情報を参照することにより、客先LAN93との間で有効なルーティングセッションが確立されているか否かを判定する。例えば現在説明中の例では、ルーティンググループ情報を参照することにより、客先LAN93との間に既にルーティングセッションが確立されていることがわかるので、当該ルーティングセッションを用いてパケットの送信を行えば良いことになる。なお、ここでルーティングセッションが確立されていない場合は、ルーティングセッションを介したパケットの送信が不可能であるためエラーとなる。
パケットの送信に使用するルーティングセッションを特定した後、ルーティングポイントとしての派遣先サーバR2は、クライアント端末5aから受信したパケットを、ルーティングセッションを介して送り出す。これにより、前記パケットは、次のルーティングポイントであるクライアント端末5dに受信される。
次のルーティングポイントであるクライアント端末5dは、宛先として指定されたプライベートIPアドレス(172.30.2.3)に対して、当該パケットを転送する。これにより、クライアント端末5fにパケットが届けられる。なお、逆方向への通信(クライアント端末5fからクライアント端末5aへパケットを送信する場合)も同様に、ルーティングセッションを介してパケットのルーティングを行うことができる。
以上で説明したルーティング関係の処理、即ち、ルーティング可能なLANの検索、ルーティング経路の探索の処理などは、アプリケーション層で行われる。このように、本実施形態では、アプリケーション層のルーティングセッションで、ルーティング対象のデータを流すように構成されている。従って、以上で説明したルーティングは、通常のIPルーティングとは異なっている。
このようにアプリケーション層でルーティングを行うことにより、WANを意識することなく遠隔地のLAN同士がプライベートIPアドレスを利用して相互に通信できるだけでなく、ルーティング経路等を中継通信システムの構成に応じて柔軟に構築できる。なお、ルーティングセッションを確立するまでもない単発的な情報の送受信を行う場合には、上記のルーティングを行わない通常の方法でパケットを送受信しても良いことは勿論である。
本実施形態において、サービスマン派遣先のサービスマンは、以上で説明したルーティングセッションを介して、客先工場のクライアント端末5の遠隔保守を行うことができる。ところで、上記のようにして確立されたルーティングセッションには、中継サーバ1同士のメディアセッションが含まれている。例えば上記の例では、クライアント端末5aとクライアント端末5fとの間でパケットの送受信を行う際のルーティングセッションには、派遣先サーバR2と客先サーバR3との間に確立されたメディアセッションが含まれている。従って、サービスマンは、派遣先サーバR2と客先サーバR3との間に確立されたメディアセッションを介して、遠隔保守を行うと言うことができる。なお、以下の説明においては、サービスマンが遠隔保守を行う場合であっても、ルーティングセッション全体の説明は省略し、派遣先サーバと客先サーバとの間に確立されたメディアセッションの部分のみを説明する場合がある。
このように、派遣先サーバR2と客先サーバR3との間にメディアセッションが確立されると、客先サーバR3のクライアント端末5に対して、リモートメンテナンス及びソフトウェアの更新等の保守作業を行うことができる。また、クライアント端末5に不具合が生じた場合は、復旧用のアプリケーションを適用する等の復旧作業を行うこともできる。
次に、図12〜図15のシーケンス図を参照して、本実施形態の中継通信システムを用いて遠隔保守を行う際の処理の流れについて説明する。
まず、定期的な遠隔保守を行う場合など、特に緊急性の無い場合について説明する。このような場合、第1サービスマン派遣先において、定期的な遠隔保守を担当するサービスマンは、クライアント端末5を操作し、派遣先サーバR2を介して、コールセンターサーバR1を送信先としたアクセス許可リスト要求を送信する(シーケンス番号1)。
このように、本実施形態ではクライアント端末5から各中継サーバ1を介して要求等が送信されることがあるが、以下の説明においては、クライアント端末5を操作する処理の具体的な説明を省略することがある。
また、このアクセス許可リスト要求では、送信先のコールセンターサーバR1のアカウントが指定されている。外部サーバ2は、中継サーバアカウント情報データベース203を参照することでコールセンターサーバR1のグローバルIPアドレスを取得し、派遣先サーバR2からの上記要求をコールセンターサーバR1に中継する。
以上のように、本実施形態の各中継サーバ1間の通信は外部サーバ2を経由して行われ、以下においても同様である。従って、以下の説明では、外部サーバ2を経由する通信処理の具体的な説明を省略することがある。
上記のアクセス許可リスト要求を受信したコールセンターサーバR1は、アクセス許可情報データベース513に基づいて、派遣先サーバR2がアクセス可能な中継サーバを示したアクセス許可リストを作成する。そして、コールセンターサーバR1は、このアクセス許可リストを派遣先サーバR2へ送信する。
そして、サービスマンは、このアクセス許可リストに基づいて、自らが通信すべき客先サーバを選択する。本実施形態においては、この接続先の客先サーバとして客先サーバR3が選択されたとする。
しかし、前述のとおり、客先サーバR3はコールセンターサーバR1以外からの通信を通常は受け付けていない。この通信を開始するためには、コールセンターサーバR1から客先サーバR3へアクセス元(派遣先サーバR2)が通知される必要がある。そのため、サービスマンは、派遣先サーバR2を介して、アクセス先通知(Accessメソッド)をコールセンターサーバR1に対して送信する(シーケンス番号2)。
なお、客先サーバの選択及びアクセス先の通知は、予め設定された方法によって、派遣先サーバR2又はクライアント端末5が自動的に行う構成にしても良い。
この通知を受信したコールセンターサーバR1は、客先サーバR3へ、派遣先サーバR2に対するアクセス許可要求(ACCESS PERMITメソッド)を送信する(シーケンス番号2.1)。
このアクセス許可要求を受信した客先サーバR3は、派遣先サーバR2からの通信を受け付ける処理を行うとともに、コールセンターサーバR1に対してOKレスポンスを返す。コールセンターサーバR1は、客先サーバR3からOKレスポンスを受信すれば、前記アクセス許可要求に対するOKレスポンスを派遣先サーバR2に対して返す。
派遣先サーバR2は、このOKレスポンスを受けると、客先サーバR3に対して接続要求(INVITEメソッド)を送信する(シーケンス番号3)。これに対するOKレスポンスを受信した派遣先サーバR2は、客先サーバR3にINVITEに対する最終レスポンス(ACKメソッド)を送信する(シーケンス番号4)。そして、客先サーバR3が派遣先サーバR2に対してMediaSessionコマンドを送信する。このコマンドによって、派遣先サーバR2と客先サーバR3との間に通信経路(ルーティングセッション)が確立される(シーケンス番号5)。
通信経路が確立されると、派遣先サーバR2の制御部は、コールセンターサーバR1に対してルーティングセッションの確立を通知する(NOTIFY_ESTABLISHMENTメソッド、シーケンス番号5.1)。従って、中継サーバ1の制御部はセッション確立通知部として機能すると言うことができる。そして、コールセンターサーバR1は、派遣先サーバR2が客先サーバR3に対して中継通信を行っている旨と、ルーティングセッションの開始時刻と、を通信管理情報データベース515へ記録する。続いて、コールセンターサーバR1は、ルーティングセッション確立の通知に対するOKレスポンスを派遣先サーバR2に対して返す。
派遣先サーバR2と客先サーバR3との間にルーティングセッションが確立されると、サービスマンは当該ルーティングセッションを利用して、客先工場に設置されたクライアント端末5の遠隔保守を行う。
前記遠隔保守の作業中は、サービスマンが行った作業の内容(例えば遠隔保守に使用したコマンドの内容等)を示す情報が、派遣先サーバR2の制御部からコールセンターサーバR1へ送信される。このように、派遣先サーバR2の制御部は、サービスマンが行った作業の内容を示す情報、即ち、派遣先サーバR2と客先サーバR3との間で行われた通信に関する情報を送信するので、通信関連情報送信部として機能すると言うことができる。一方、コールセンターサーバR1の制御部は、前記作業の内容を示す情報を受信する。従って、コールセンターサーバR1の制御部は、通信関連情報受信部として機能すると言うことができる。
コールセンターサーバR1の制御部が、前記サービスマンが行った作業の内容を示す情報を受信すると、当該情報と、当該サービスマンが第1サービスマン派遣先で操作しているクライアント端末5のアカウントと、保守の対象である客先サーバR3のアカウントと、が関連付けられた作業履歴が、コールセンターサーバR1が備える作業履歴管理部516に記録される。
このようにして、サービスマンが行う遠隔保守作業の作業履歴を、コールセンターサーバR1において一元管理する構成を実現することができる。従って、コールセンターサーバR1は管理機能付き中継サーバであると言うことができる。一方、コールセンターサーバR1以外の中継サーバ(派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4)は、作業履歴管理部516を備えていないため管理機能を持たず、コールセンターサーバR1によって管理される関係となっている。従って、派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4は、コールセンターサーバR1による管理の対象となる管理対象中継サーバであると言える。
遠隔保守の作業が終了した場合、サービスマンは、セッションを終了させる旨(BYEメソッド)を客先サーバR3に送信する(シーケンス番号6)。これに対して客先サーバR3はOKレスポンスを返し、通信を切断する。OKレスポンスを返された派遣先サーバR2は、客先サーバR3との接続が終了したことをコールセンターサーバR1に通知する(NOTIFY_TERMINATIONメソッド、シーケンス番号7)。
そして、コールセンターサーバR1は、派遣先サーバR2と客先サーバR3とのルーティングセッションが終了した時刻を通信管理情報データベース515に記録し、ルーティングセッション終了の通知に対するOKレスポンスを派遣先サーバR2に対して返す。
次に、客先工場に設置されたクライアント端末5において、何らかのトラブルが発生した場合について説明する。以下、客先サーバR3に接続されているクライアント端末5でトラブルが発生した場合を想定して説明する。トラブル発生時のように緊急に遠隔保守が必要な場合には、既に説明したような定期的なリモートメンテナンスを待つことはできない。そこで、客先サーバR3側からコールセンターサーバR1に対してトラブルの発生(アラート)を通知する(NOTIFYメソッド、シーケンス番号11)。
客先サーバR3からの前記アラートを受信したコールセンターサーバR1においては、当該客先サーバR3で発生したトラブルに対応できる最適なサービスマンを選択する。具体的には、コールセンターサーバR1の制御部は、客先サーバR3からのアラートを受信した場合、作業履歴管理部516が記憶している作業履歴の中から、当該客先サーバR3に関する作業履歴を抽出する(シーケンス番号11.1)。続いて、コールセンターサーバR1の制御部は、客先サーバR3に関する作業履歴を参照して、当該客先サーバR3で発生したトラブルに対応するのに最適と考えられるサービスマンを選択する。なお、最適なサービスマンを選択する条件は特に限定されないが、例えば以下のようなサービスマンを作業履歴に基づいて選択することができる。即ち、当該客先サーバR3に対する遠隔保守回数が最も多い(経験が豊富な)サービスマン、当該客先サーバR3で発生したトラブルの解決率が最も高いサービスマン、当該客先サーバR3に対する遠隔保守作業に掛かる平均時間が最も短い(作業効率の良い)サービスマンなどである。
コールセンターサーバR1の制御部は、最適なサービスマンを選択した後、当該最適なサービスマンが使用するクライアント端末5が接続されている中継サーバ1を、接続元中継サーバとして選択する。以下、最適なサービスマンとして、第1サービスマン派遣先で待機しているサービスマンの1人が選択された場合について説明する。この場合は、接続元サーバとして派遣先サーバR2が選択される。このように、コールセンターサーバR1の制御部は、客先サーバR3からのアラートに応じて接続元としての派遣先サーバR2を選択しているので、接続元選択部として機能すると言うことができる。
続いて、コールセンターサーバR1は、接続元として選択された派遣先サーバR2に対して、客先サーバR3を接続先とする接続元中継サーバとして選択された旨の通知(ACCESS_CONFIRMATIONメソッド)を行う(シーケンス番号11.2)。前記最適なサービスマンが即座に遠隔保守に対応できる状態である場合、派遣先サーバR2は、コールセンターサーバR1に対して遠隔保守に対応できる旨のOKレスポンスを返す。
派遣先サーバR2からのOKレスポンスを受けたコールセンターサーバR1は、派遣先サーバR2が遠隔保守を担当する旨を、客先サーバR3に対して通知する(シーケンス番号11.3)。客先サーバR3は、派遣先サーバR2が遠隔保守を担当する旨の通知をコールセンターサーバR1から受けると、派遣先サーバR2からの通信を受け付ける処理を行う。
続いて、コールセンターサーバR1は、派遣先サーバR2に対して、客先サーバR3に対する接続を行うように指示する接続指示(ACCESSメソッド)を送信する(シーケンス番号12)。派遣先サーバR2は、この接続指示を受けると、客先サーバR3に対して接続要求(INVITEメソッド)を送信する(シーケンス番号12.1)。これに対するOKレスポンスを受信した派遣先サーバR2は、客先サーバR3にINVITEに対する最終レスポンス(ACKメソッド)を送信する(シーケンス番号12.2)。
続いて、客先サーバR3が派遣先サーバR2に対してMediaSessionコマンドを送信する。このコマンドによって、派遣先サーバR2と客先サーバR3との間にルーティングセッションが確立される(シーケンス番号13)。ルーティングセッションが確立されると、派遣先サーバR2は、コールセンターサーバR1に対してルーティングセッションの確立を通知する(NOTIFY_ESTABLISHMENTメソッド、シーケンス番号12.1)。
この後、最適なサービスマンとして選択されたサービスマンは、前記ルーティングセッションを介して、トラブルが発生した客先工場のクライアント端末5にアクセスすることにより、当該トラブルに対応する。
次に、上記のようにして選択された最適なサービスマンが、客先のトラブルを解消できなかった場合について説明する。客先のトラブルに対してあるサービスマンが適切に対応できない場合、別のサービスマンにヘルパーとして参加してもらう(いわゆるエスカレーション)ということが行われる。
客先工場のクライアント端末5のトラブルに対応しているサービスマン(前記最適なサービスマン)は、自身では当該トラブルに対応できないと判断した場合(エスカレーションが必要と判断した場合)、当該トラブルに対応できるヘルパーを選択する。以下、具体的に説明する。
エスカレーションが必要と判断したサービスマンは、自分のクライアント端末5を操作することにより、派遣先サーバR2に対して、ヘルパーを選択するための情報(ヘルパー選択根拠情報)を要求する。ここで、ヘルパーを選択するための情報には、作業履歴とヘルパーリストが含まれる。なお、ヘルパーリストとは、客先サーバR3に対して、ヘルパーとして接続することを許可されている派遣先サーバのリストである。ヘルパー選択根拠情報の要求を受けた派遣先サーバR2の制御部は、コールセンターサーバR1に対して、ヘルパー選択根拠情報の要求を送信する。ヘルパー選択根拠情報の要求を受けた派遣先サーバR2の制御部は、コールセンターサーバR1に対して、ヘルパー選択根拠情報の要求(REQUEST_HELPER_INFOメソッド)を送信する(シーケンス番号14)。
なお、ヘルパーが遠隔保守に新たに参加するということは、既にルーティングセッションを確立済の派遣先サーバR2(第1の接続確立済中継サーバ)と客先サーバR3(第2の接続確立済中継サーバ)に対して、第3者としての別の派遣先サーバ(第3の中継サーバ)を新たな接続元として接続させるということである。従って、ヘルパーを選択するということは、前記の第3の中継サーバを選択するということでもあり、前記ヘルパー選択根拠情報は、前記の第3の中継サーバを選択するための情報であると言うこともできる。この点、派遣先サーバR2の制御部は、第3の中継サーバを選択するための情報としてのヘルパー選択根拠情報(作業履歴及びヘルパーリスト)を、コールセンターサーバR1に対して要求していると言うことができる。従って、派遣先サーバR2の制御部は、履歴情報要求部として機能すると言うことができる。
派遣先サーバR2からのヘルパー選択根拠情報の要求を受けたコールセンターサーバR1の制御部は、作業履歴管理部516が記憶している作業履歴の中から、当該客先サーバR3に関する作業履歴を抽出する(シーケンス番号14.1)。そして、コールセンターサーバR1の制御部は、派遣先サーバR2に対して、ヘルパー選択根拠情報として、客先サーバR3に関する作業履歴と、ヘルパーリストと、を送信する。従って、コールセンターサーバR1の制御部は、履歴情報送信部として機能すると言うことができる。
ヘルパー選択根拠情報を受信した派遣先サーバR2側では、前記ヘルパー選択根拠情報に基づいて、最適なヘルパーの選択が行われる。具体的には、派遣先サーバR2は、ヘルパー選択根拠情報を、当該ヘルパー選択根拠情報の要求先であるクライアント端末5に送信する。当該クライアント端末5を操作しているサービスマン(最適なサービスマンとして客先のトラブルに対応していたサービスマン)は、クライアント端末5のディスプレイに表示されたヘルパー選択根拠情報を確認し、最適なヘルパーを選択する。前述のように、ヘルパー選択根拠情報には、客先サーバR3に関する作業履歴が含まれているので、当該作業履歴を確認することにより、実績のあるサービスマンをヘルパーとして選択することができる。
なお、以上のように、ヘルパーの選択は(自動的に行われるのではなくて)人間であるサービスマンによって行われるが、これは以下のような理由による。即ち、コールセンターサーバR1の制御部によって自動的に選択された最適なサービスマンであっても客先のトラブルに対応できなかったのであるから、ヘルパーの選択の際には、人間が介入した方が、より適切にエスカレーションを実行することができると考えられる。また、客先のトラブルに実際に対応することで、当該客先の現在の状況を十分に把握しているサービスマン(前記最適なサービスマン)がヘルパーを選択することになるので、当該トラブルに対応することができるヘルパーを的確に選択することができる。もっとも、ヘルパーの選択は、上記最適なサービスマンの選択の場合と同様に、自動的に行われるように構成されていても良い。
ヘルパーが選択されると、派遣先サーバR2の制御部は、当該ヘルパーとしてのサービスマンが使用するクライアント端末5が接続されている中継サーバ1を、新たな接続元中継サーバ(第3の中継サーバ)として選択する。以下、最適なサービスマンとして第2サービスマン派遣先で待機しているサービスマンの一人が選択された場合について説明する。この場合は、第3の中継サーバとしてヘルプ元サーバR4が選択される。派遣先サーバR2の制御部は、新たな接続元としてヘルプ元サーバR4を指定したエスカレーション要求(REQUEST_ESCALATIONメソッド)を、コールセンターサーバR1に対して送信する(シーケンス番号15)。従って、派遣先サーバR2の制御部は、追加接続元通知部として機能すると言うことができる。
エスカレーション要求を受けたコールセンターサーバR1の制御部は、ヘルプ元サーバR4に対して、接続先として派遣先サーバR2及び客先サーバR3を通知するエスカレーション要求を送信する(シーケンス番号15.1)。従って、コールセンターサーバR1の制御部は、接続通知部として機能すると言うことができる。ヘルパーとして選択されたサービスマンが即座にエスカレーションに対応できる状態である場合、ヘルプ元サーバR4は、コールセンターサーバR1に対して、エスカレーションに対応できる旨のOKレスポンスを返す。
ヘルプ元サーバR4からのOKレスポンスを受信したコールセンターサーバR1は、客先サーバR3に対して、ヘルプ元サーバR4を接続元とするエスカレーションが行われる旨の通知を行う(シーケンス番号15.2)。エスカレーションが行われる旨の通知を受信した客先サーバR3は、ヘルプ元サーバR4からの通信を受け付ける処理を行うとともに、コールセンターサーバR1に対してOKレスポンスを返す。コールセンターサーバR1は、客先サーバR3からOKレスポンスを受信すれば、派遣先サーバR2に対して、エスカレーションの準備が整った旨のOKレスポンスを返す。このOKレスポンスを受信した派遣先サーバR2は、ヘルプ元サーバR4からの通信を受け付ける処理を行う。
続いて、ヘルプ元サーバR4は、派遣先サーバR2及び客先サーバR3に対して、それぞれルーティングセッションを確立する(シーケンス番号16〜21.1)。なお、ルーティングセッションの確立については既に説明したので、詳細な説明は省略する。
エスカレーションに用いられるルーティングセッションが確立することにより、第2サービスマン派遣先のヘルパーは、当該ルーティングセッションを介して客先工場のクライアント端末5の遠隔保守を自ら行うことができる。また当該ヘルパーは、遠隔保守を実施中だった第1サービスマン派遣先のサービスマン(最適なサービスマン)が使用中のクライアント端末5を遠隔操作することもできる。これにより、ヘルパーは、途中までトラブル対応を行っていた第1サービスマン派遣先のサービスマンによる作業をバックアップすることができる。この場合のように、ヘルパー自ら客先工場のクライアント端末5を遠隔保守するのではなく、トラブル対応中のサービスマンに対する後援者として遠隔保守に参加しても良い。
エスカレーションを終了する場合、ヘルプ元サーバR4は、派遣先サーバR2及び客先サーバR3に終了通知を送る(シーケンス番号22,24)。前記終了通知に対するOKレスポンスを受信したヘルプ元サーバR4は、コールセンターサーバR1にセッションの終了を報告する(シーケンス番号23,24)。以上により、エスカレーションが終了する。そして最後に、派遣先サーバR2と客先サーバR3との間のルーティングセッションを終了する(シーケンス番号26,27)。
以上で説明したように、本実施形態のコールセンターサーバR1は、通信関連情報受信部としての制御部と、作業履歴管理部516と、を備えた管理機能付き中継サーバである。通信関連情報受信部としての制御部は、中継サーバR2,R3,R4間で行われた遠隔保守作業の内容を示す情報を、当該遠隔保守を行った派遣先サーバから受信する。作業履歴管理部516は、客先サーバに対して接続を行う派遣先サーバを選択するための情報として、前記作業の内容を示す情報を記録した履歴情報を格納する。
これにより、コールセンターサーバR1で作業履歴を一元的に管理することができる。従って、ある中継サーバ1に接続させる接続元として最適な中継サーバ1を、複数の中継サーバ1の中から、前記作業履歴に基づいて選択することができる。
また、本実施形態のコールセンターサーバR1は、接続元選択部としての制御部を備える。接続元選択部としての制御部は、客先サーバR3からのアラートを受けると、客先サーバR3を接続先として接続すべき派遣先サーバR2を、前記接続先としての客先サーバR3に関する作業履歴に基づいて自動的に選択する。
これにより、コールセンターサーバR1が、自身が一元的に管理している作業履歴に基づいて、前記接続元としての派遣先サーバR2を自動的に選択できる。このように、接続元中継サーバとして最適な中継サーバを、複数の接続元中継サーバ候補の中から即座に決定することができる。
また、本実施形態のコールセンターサーバR1は、履歴情報送信部としての制御部を備える。履歴情報送信部としての制御部は、派遣先サーバR2と客先サーバR3との間で接続が確立されている場合において、派遣先サーバR2及び客先サーバR3に対して新たに接続元として接続させるヘルプ元サーバR4を選択するためのヘルパー選択根拠情報としての作業履歴を要求する通知を、派遣先サーバR2から受けると、当該派遣先サーバR2に対してヘルパー選択根拠情報を送信する。
即ち、コールセンターサーバR1以外の中継サーバ1においても、当該コールセンターサーバR1から作業履歴を受信することにより、接続元として最適な中継サーバを前記作業履歴に基づいて選択することができる。特に、派遣先サーバR2と客先サーバR3との間で遠隔保守が行われているような場合には、コールセンターサーバR1側ではなく、遠隔保守の状況を把握している派遣先サーバR2側で、ヘルプ元サーバR4を作業履歴に基づいて選択することにより、より実情に即したエスカレーションを行うことができる。
また、本実施形態のコールセンターサーバR1は、接続通知部としての制御部を備える。接続通知部としての制御部は、接続元としてのヘルプ元サーバR4を指定する通知を派遣先サーバR2から受けると、ヘルプ元サーバR4に対して、接続先の派遣先サーバR2及び客先サーバR3を通知する。
これにより、新たに接続元として選択されたヘルプ元サーバR4において、新たな接続の準備をすることができる。
また、本実施形態の派遣先サーバR2は、通信関連情報送信部と、履歴情報要求部と、追加接続元通知部と、として機能する制御部を備える。通信関連情報送信部としての制御部は、客先サーバR3との間で行われた通信に関する情報を、コールセンターサーバR1に対して送信することにより、当該コールセンターサーバR1に作業履歴を記録させる。履歴情報要求部としての制御部は、客先サーバR3に対して遠隔保守のためのルーティングセッションを確立している場合において、エスカレーションの必要が生じた場合、コールセンターサーバR1に対して作業履歴を要求する。追加接続元通知部としての制御部は、作業履歴に基づいて選択されたヘルプ元サーバR4を、コールセンターサーバR1に対して通知する。
即ち、派遣先サーバR2と客先サーバR3との間で遠隔保守が行われているような場合には、コールセンターサーバR1側ではなく、遠隔保守の状況を把握している派遣先サーバR2側で、ヘルプ元サーバR4を作業履歴に基づいて選択することにより、より実情に即したエスカレーションを行うことができる。
また、本実施形態の中継通信システムは、コールセンターサーバR1と、コールセンターサーバR1の管理対象の中継サーバとして、派遣先サーバR2、客先サーバR3及びヘルプ元サーバR4を備えている。
これにより、コールセンターサーバR1で作業履歴を一元的に管理することができる。従って、ある中継サーバ1に接続させる接続元として最適な中継サーバ1を、複数の中継サーバ1の中から、前記作業履歴に基づいて選択することができる。
以上に本発明の好適な実施の形態を説明したが、上記の構成は例えば以下のように変更することができる。
作業履歴としては、上記で例示した情報の他、例えば、サービスマンが遠隔保守作業について作成した作業報告書のような情報を記録しても良い。第1派遣先のサービスマンは、この作業報告書を参照することにより、適切なヘルパーを選択することができる。
上記の説明では、作業履歴として、遠隔保守作業の内容と、サービスマンが操作したクライアント端末5のアカウントとを関連付けて記録するとした。この点、遠隔保守作業の内容と、サービスマン自身のログインアカウントと、を関連付けて記憶しても良い。この変形例によれば、例えば、1つのクライアント端末5を複数のサービスマンで共有しているような場合であっても、作業履歴を参照することにより、どのサービスマンがどのような遠隔保守作業を行ったかを特定することができる。
上記の説明では、コールセンターサーバR1において、客先サーバR3に関する作業履歴を抽出し(シーケンス番号14.1)、その抽出結果を派遣先サーバR2へ送信するものとしたが、派遣先サーバR2側で客先サーバR3に関する作業履歴を抽出するようにしても良い。もっとも、ヘルパーを選択する際には、必ずしもトラブルが発生している客先サーバに関する作業履歴を抽出しなくてもよく、他の客先サーバに対する遠隔保守作業の作業履歴も総合的に判断することでヘルパーを選択しても良い。
上記の説明で、エスカレーションを行うヘルプ元サーバR4は、派遣先サーバR2と客先サーバR3の両方との間でルーティングセッションを確立しているが、何れか一方のみでも良い。
上記クライアント端末情報、中継サーバ情報、中継グループ情報、ルーティンググループ情報等は、図面を参照して説明する際にXML形式のデータとして説明したが、上記各情報を格納する形式はこれに限定されず、適宜の形式で各情報を格納することができる。