JP2013211686A - サーバ装置、プログラム及び情報処理方法 - Google Patents

サーバ装置、プログラム及び情報処理方法 Download PDF

Info

Publication number
JP2013211686A
JP2013211686A JP2012080424A JP2012080424A JP2013211686A JP 2013211686 A JP2013211686 A JP 2013211686A JP 2012080424 A JP2012080424 A JP 2012080424A JP 2012080424 A JP2012080424 A JP 2012080424A JP 2013211686 A JP2013211686 A JP 2013211686A
Authority
JP
Japan
Prior art keywords
information
node
telephone
call
request
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2012080424A
Other languages
English (en)
Inventor
Toshiyuki Hatada
敏行 幡田
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2012080424A priority Critical patent/JP2013211686A/ja
Publication of JP2013211686A publication Critical patent/JP2013211686A/ja
Pending legal-status Critical Current

Links

Images

Abstract

【課題】着信時の発信者の情報と発信者へ折り返すための情報とが異なる場合に、これらの情報を予め対応付けて記憶しておく必要がないようにする。
【解決手段】第1サーバ装置は、電話網に接続された端末装置からの着信が検出された場合、発信者情報を取得し、呼出先情報を取得し、オーバーレイネットワークを利用する電話において端末装置を識別するための識別情報を生成し、識別情報と発信者情報とを含む管理情報を記憶し、識別情報が第1サーバ装置により管理されることを登録する登録情報を第2サーバ装置へ送信し、識別情報を発信者情報として含む第1要求情報を呼出先情報により識別される呼出先へ送信し、呼出先からの折り返しの接続要求を示す第2要求情報を受信し、第2要求情報に折り返し先を示す情報として含まれる識別情報を取得し、識別情報を含む管理情報に含まれる発信者情報に基づいて、端末装置へ発信する。
【選択図】図3

Description

本発明は、オーバーレイネットワークを利用する電話のシステムの技術分野に関する。
近年、オーバーレイネットワークを利用した電話サービスを提供する通信システムが知られている。例えば、オーバーレイネットワークが、呼制御を行う複数のサーバ装置により構成される。そして、サーバ装置同士が、例えばピアツーピア方式で通信することにより、端末装置間の通話接続が行われる。
ところで、端末装置が、着信した際の発信元の電話番号を記憶しておき、例えば利用者からの指示等により、記憶した電話番号に基づいて発信元へ発信する折り返し電話が知られている。このときに、発信元の電話番号と折り返しの電話番号とが異なる場合がある。例えば、特許文献1には、発信元の電話番号と折り返しの電話番号とが異なる場合があるシステムが開示されている。このシステムでは、IP(Internet Protocol)電話機が、発信元の電話番号と折り返しの電話番号とを対応付けて記憶する。IP電話機に対する着信に対してIP電話機の利用者が折り返し電話を行うとする。この場合、IP電話機は、発信元の電話番号に対応付けて記憶された折り返しの電話番号を接続先とする発呼パケットをIP電話網へ送信する。
特開2005−210498号公報
しかしながら、特許文献1に記載の発明では、発信元の電話番号と折り返しの電話番号とを対応付けて事前に設定しておく必要がある。オーバーレイネットワークを利用した電話サービスでは、膨大な数の端末装置が接続される場合があることから、事前の設定が困難である。また、設定する電話番号の数が多数になることがあるため、電話番号を記憶するために大容量の記憶領域が必要となる。
本発明は、以上の点に鑑みてなされたものである。本発明は、オーバーレイネットワークを利用した電話において、着信時の発信者の情報と、発信者へ折り返すための情報とが異なる場合に、これらの情報を予め対応付けて記憶しておく必要がないサーバ装置、プログラム及び情報処理方法を提供することを目的とする。
上記課題を解決するために、請求項1に記載の発明は、ネットワークに接続された複数のサーバ装置によりオーバーレイネットワークが構成され、前記オーバーレイネットワークを利用する電話の呼制御を前記サーバ装置が行う通信システムにおいて、前記複数のサーバ装置に含まれる第1サーバ装置であって、前記ネットワークとは異なる電話網に接続する接続手段と、前記電話網に接続された端末装置からの着信が前記接続手段を介して検出された場合、前記端末装置を識別する発信者情報を前記接続手段を介して取得する第1取得手段と、前記端末装置からの呼出先を識別する呼出先情報を取得する第2取得手段と、前記オーバーレイネットワークを利用する電話において前記端末装置を識別するための識別情報を生成する生成手段と、前記生成手段により生成された前記識別情報と、前記第1取得手段により取得された前記発信者情報とを含む管理情報を記憶する記憶手段と、前記生成手段により生成された前記識別情報が前記第1サーバ装置により管理されることを登録する登録情報を、前記複数のサーバ装置のうち前記登録情報を管理する第2サーバ装置へ送信する第1送信手段と、前記端末装置からの接続要求を示す第1要求情報であり、前記生成手段により生成された前記識別情報を前記発信者情報として含む第1要求情報を、前記第2取得手段により取得された前記呼出先情報により識別される呼出先へ送信する第2送信手段と、前記第2取得手段により取得された前記呼出先情報により識別される呼出先からの折り返しの接続要求を示す第2要求情報を受信可能な受信手段と、前記受信手段により受信された前記第2要求情報に折り返し先を示す情報として含まれる前記識別情報を取得する第3取得手段と、前記第3取得手段により取得された前記識別情報を含む前記管理情報に含まれる前記発信者情報に基づいて、前記接続手段を介して前記端末装置へ発信する発信手段と、を備えることを特徴とする。
請求項2に記載の発明は、前記発信手段による発信による前記端末装置への接続が成立したかを判定する判定手段と、前記判定手段により接続が成立したと判定された場合、前記第3取得手段により取得された前記識別情報に対応する前記登録情報の削除要求を示す第3要求情報を前記第2サーバ装置へ送信する第3送信手段と、を更に備えることを特徴とする。
請求項3に記載の発明は、前記第3送信手段は、前記記憶手段に前記管理情報が記憶されてから予め設定された設定時間が経過した場合、前記管理情報に含まれる前記識別情報に対応する前記登録情報の削除要求を示す前記第3要求情報を送信することを特徴とする。
請求項4に記載の発明は、前記記憶手段は、前記識別情報の利用時刻を示す時刻情報を更に含む前記管理情報を記憶し、前記第3送信手段は、前記記憶手段に記憶された前記管理情報に含まれる前記時刻情報が示す時刻から前記設定時間が経過した場合、前記第3要求情報を送信し、前記判定手段により接続が成立しなかったと判定された場合、前記第3取得手段により取得された前記識別情報を含む前記管理情報に含まれる前記時刻情報を更新する更新手段を更に備えることを特徴とする。
請求項5に記載の発明は、前記生成手段は、前回生成した前記識別情報とは異なる前記識別情報を生成することを特徴とする。
請求項6に記載の発明は、ネットワークに接続された複数のサーバ装置によりオーバーレイネットワークが構成され、前記オーバーレイネットワークを利用する電話の呼制御を前記サーバ装置が行う通信システムにおいて、前記複数のサーバ装置に含まれる第1サーバ装置に含まれるコンピュータに、前記ネットワークとは異なる電話網に接続する接続手段を介して、前記電話網に接続された端末装置からの着信が検出された場合、前記端末装置を識別する発信者情報を前記接続手段を介して取得する第1取得ステップと、前記端末装置からの呼出先を識別する呼出先情報を取得する第2取得ステップと、前記端末装置を前記オーバーレイネットワークを利用する電話で識別するための識別情報を生成する生成ステップと、前記生成ステップにより生成された前記識別情報と、前記第1取得ステップにより取得された前記発信者情報とを含む管理情報を記憶手段に記憶させる記憶ステップと、前記生成ステップにより生成された前記識別情報が前記第1サーバ装置により管理されることを登録する登録情報を、前記複数のサーバ装置のうち前記登録情報を管理する第2サーバ装置へ送信する送信ステップと、前記端末装置からの接続要求を示す第1要求情報であり、前記生成ステップにより生成された前記識別情報を前記発信者情報として含む第1要求情報を、前記第2取得ステップにより取得された前記呼出先情報により識別される呼出先へ送信する第1送信ステップと、前記第2取得ステップにより取得された前記呼出先情報により識別される呼出先からの折り返しの接続要求を示す第2要求情報を受信する受信ステップと、前記受信ステップにより受信された前記第2要求情報に折り返し先を示す情報として含まれる前記識別情報を取得する第3取得ステップと、前記第2取得ステップにより取得された前記識別情報を含む前記管理情報に含まれる前記発信者情報に基づいて、前記接続手段を介して前記端末装置へ発信する発信ステップと、を実行させることを特徴とする。
請求項7に記載の発明は、ネットワークに接続された複数のサーバ装置によりオーバーレイネットワークが構成され、前記オーバーレイネットワークを利用する電話の呼制御を前記サーバ装置が行う通信システムにおいて、前記複数のサーバ装置に含まれる第1サーバ装置の情報処理方法であって、前記ネットワークとは異なる電話網に接続する接続手段を介して、前記電話網に接続された端末装置からの着信が検出された場合、前記端末装置を識別する発信者情報を前記接続手段を介して取得する第1取得ステップと、前記端末装置からの呼出先を識別する呼出先情報を取得する第2取得ステップと、前記端末装置を前記オーバーレイネットワークを利用する電話で識別するための識別情報を生成する生成ステップと、前記生成ステップにより生成された前記識別情報と、前記第1取得ステップにより取得された前記発信者情報とを含む管理情報を記憶手段に記憶させる記憶ステップと、前記生成ステップにより生成された前記識別情報が前記第1サーバ装置により管理されることを登録する登録情報を、前記複数のサーバ装置のうち前記登録情報を管理する第2サーバ装置へ送信する送信ステップと、前記端末装置からの接続要求を示す第1要求情報であり、前記生成ステップにより生成された前記識別情報を前記発信者情報として含む第1要求情報を、前記第2取得ステップにより取得された前記呼出先情報により識別される呼出先へ送信する第1送信ステップと、前記第2取得ステップにより取得された前記呼出先情報により識別される呼出先からの折り返しの接続要求を示す第2要求情報を受信する受信ステップと、前記受信ステップにより受信された前記第2要求情報に折り返し先を示す情報として含まれる前記識別情報を取得する第3取得ステップと、前記第2取得ステップにより取得された前記識別情報を含む前記管理情報に含まれる前記発信者情報に基づいて、前記接続手段を介して前記端末装置へ発信する発信ステップと、を含むことを特徴とする。
請求項1、6または7に記載の発明によれば、電話網からの着信があったときに、発信者情報が、オーバーレイネットワークを利用する電話で端末装置を識別するための識別情報と対応付けて記憶される。そのため、着信時の発信者の情報と発信者へ折り返すための情報とを予め対応付けて記憶しておく必要がない。
請求項2に記載の発明によれば、接続が成立することにより不要となった識別情報がオーバーレイネットワークから削除される。そのため、オーバーレイネットワークにおいて、識別情報を有効に利用することができる。
電話網からの着信があった後、呼出先からの折り返しがない場合がある。また、折り返しがあった場合であっても、端末装置のユーザが電話に出ない場合がある。また、端末装置のユーザが電話に出る前に、呼出先のユーザが電話をあきらめる場合がある。これらの場合、識別情報がオーバーレイネットワークから削除されない。請求項3に記載の発明によれば、着信から予め設定された時間が経過した場合、識別情報がオーバーレイネットワークから削除される。そのため、オーバーレイネットワークにおいて、識別情報を有効に利用することができる。
請求項4に記載の発明によれば、呼出先のユーザが折り返し電話を行っても発信元に接続されなかった場合、ユーザは、後で再度折り返し電話を行う可能性がある。この場合に、識別情報の削除が延期されるので、ユーザは再度折り返し電話を行うことができる。
請求項5に記載の発明によれば、同一の呼出先へ或る端末装置からの着信があった後、別の端末装置からの着信があった場合、それぞれの第1要求情報に互いに異なる識別情報が設定される。従って、呼出先には、別々の識別情報が通知される。そのため、ユーザが同一の端末装置から複数の着信があったと誤って判断することを防止することができる。
一実施形態の通信システムの概要構成例を示す図である。 各UAの管理ノード、SIP_UIR及びアナログ電話番号の例を示す図である。 一実施形態の通信システムSの動作例を示すシーケンス図である。 一実施形態のノードN5の制御部11及びSLIC15の処理例を示すフローチャートである。 一実施形態のノードN5の制御部11及びSLIC15の処理例を示すフローチャートである。
以下、本発明の実施形態を図面に基づいて説明する。なお、以下に説明する実施の形態は、通信システムに本発明を適用した場合の実施形態である。
[1.通信システムの構成及び動作概要]
始めに、図1及び図2(A)を参照して、本実施形態の通信システムの構成及び動作概要について説明する。図1は、本実施形態の通信システムの概要構成例を示す図である。図1に示すように、本実施形態の通信システムSは、複数のノード装置Nn(n=1,2,3・・・)等により構成されている。ノード装置Nnを、以下、「ノード」という。また、ノードはネットワークNWに接続されている。ノードは、本発明におけるサーバ装置の一例である。ネットワークNWは、インターネット等からなる。ノードは、例えば、VOIP(Voice over Internet Protocol)、SIP(Session Initiation Protocol)等を利用したIP電話サービスに関する呼制御を行うSIPサーバである。
また、複数のノードの中に、1つ以上のUA(User Agent)n−lA(l=1,2,3・・・)が接続されているノードが存在する。この場合、ノードとUAn−lAとは、例えば、LAN(Local Area Network)を介して接続される。UAn−lAは、ユーザがIP電話を利用するために用いる端末装置である。UAn−lAは、例えば、IP電話機である。また、UAn−lAは、例えば、IP電話の機能を有するパーソナルコンピュータ、スマートフォン、携帯電話機、セットトップボックス等であってもよい。UAn−lAは、ノード及びネットワークNWを介して他のUAn−lAと電話通信を行う。
また、複数のノードの中に、UAn−lBを有するノードが存在する。UAn−lBを有するノードとして、例えば、ノードN5〜N7がある。UAn−lBは、SIPにおける論理的なエンティティである。図1においては、ノードとUAn−lBとが接続されているように示されている。その理由は、SIPサーバとしてのノードとUAn−lBとしてのノードとを分けて表したためである。例えば、図5におけるノードN5は、SIPサーバとしてのノードN5である。また、図5におけるUA5−1Bは、UAn−lBとしてのノードN5である。ノードN5〜N7は、本発明における第1サーバ装置の一例である。また、「UA」は、UAn−lAとUAn−lBの総称である。
ノードN5〜N7は、ネットワークNWと公衆交換電話網NPとを相互接続するためのゲートウェイとして機能する。公衆交換電話網NPは、複数の交換機Em(m=1,2,3・・)により構成されている。複数の交換機Emの中に、電話機Tm−i(i=1,2,3・・)と接続されている交換機Emがある。電話機Tm−iは、公衆電話網NPに接続されたアナログ電話機である。電話機Tm−iは、公衆交換電話網NPを介して他の電話機Tm−iと電話通信を行う。電話機Tm−iは、本発明における端末装置の一例である。UAn−lBは、外線に終端するUAである。UAn−lBを有するノードは、UAn−lBを介して公衆交換電話網NPと接続する。UAn−lBは、公衆交換電話網NPへの発信や公衆交換電話網NPからの着信の検出等を行う。UAn−lAと電話機Tm−iとは、ノードN5、N6またはN7を介して、互いに電話通信を行うことができる。なお、公衆電話網は、本発明における電話網の一例である。
また、図1に示すように、通信システムSには、ネットワークNWを介して互いに通信可能な複数のノードの参加によりオーバーレイネットワークONが構成されている。オーバーレイネットワークONは、仮想的なリンクを構成する論理的なネットワークである。オーバーレイネットワークONは、特定のアルゴリズム、例えば、分散ハッシュテーブルを利用したアルゴリズムにより実現される。なお、分散ハッシュテーブルを、以下、「DHT(Distributed Hash Table)」という。ここで、オーバーレイネットワークONに参加するとは、DHTを用いたルーティングテーブルに基づいてオーバーレイネットワークONを介して他のノードとの間で各種メッセージを送受信できる状態に稼動することをいう。なお、DHTを用いたルーティングテーブルについては、特開2006−197400号公報等で公知であるので、詳しい説明を省略する。複数のノードがオーバーレイネットワークONを介して互いに情報を送受信することにより、各UAn−lAは、オーバーレイネットワークONを利用した電話通信を行うことができる。オーバーレイネットワークONに参加している各ノードには、ノードIDが付与されている。このノードIDは、ノードを、オーバーレイネットワークONに参加している複数のノードの中から識別する固有の識別情報である。また、ノードIDは、例えば、ノードに割り当てられたIPアドレスや製造番号等を共通のハッシュ関数によりハッシュ化することにより得られる情報である。
図2(A)は、各UAの管理ノード、SIP_URI(SIP Uniform Resource Identifier)及びアナログ電話番号の例を示す図である。管理ノードは、UAの通信を管理する。例えば、管理ノードは、UAからのメッセージを他のノードに転送したり、UAに対するメッセージをUAに転送したりする。UAn−lAの管理ノードは、UAn−lAが接続するノードである。例えば、UA3−1Aの管理ノードは、ノードN3である。UAn−lBの管理ノードは、UAn−lBを有するノードである。例えば、UA5−1Bの管理ノードは、ノードN5である。各UAには、それぞれ固有のSIP_URIが割り当てられている。SIP_URIは、例えば、複数の数字により構成されている。SIP_URIは、オーバーレイネットワークONを利用するIP電話の電話番号に相当する。また、SIP_URIは、公衆交換電話網NPのアナログ電話番号を外線番号とした場合の内線番号に相当する。各UAn−lBには、それぞれ固有のアナログ電話番号が割り当てられている。アナログ電話番号は、公衆交換電話網NPにおいて割り当てられた電話番号である。
次に、オーバーレイネットワークONに対するSIP_URIの登録及び削除の処理概要と、通話接続の処理概要について説明する。SIP_URIの登録とは、UAのSIP_URIに対応付けて、このUAの管理ノードの情報を、オーバーレイネットワークONに記憶させることをいう。管理ノードの情報を、「管理ノード情報」という。管理ノード情報は、管理ノードのノードID、IPアドレス及びポート番号等を含む。オーバーレイネットワークONに記憶された管理ノード情報は、オーバーレイネットワークONから取得可能である。管理ノード情報が記憶されることにより、或るUAと通信するための管理ノードを特定することができる。管理ノード情報が記憶されたUAは、他のUAと通信することができる。
或るUAが、SIP_URIを登録するため、管理ノードにREGISTERメッセージを送信する。REGISTERメッセージは、SIP_URIを含む。REGISTERメッセージを受信した管理ノードは、REGISTERメッセージに、管理ノード情報を追加する。また、管理ノードは、管理ノード情報のキー情報を生成する。キー情報は、複数のノードに分散して記憶される情報を、オーバーレイネットワークONに記憶される複数の情報の中から識別する固有の識別情報である。キー情報は、オーバーレイネットワークONから情報を取得するために必要な情報である。また、キー情報の形式は、ノードIDの形式と同じである。管理ノードは、REGISTERメッセージに含まれるSIP_URIを、ノードIDを生成するときと共通のハッシュ関数によりハッシュ化する。これにより、管理ノードは、キー情報を生成する。そして、管理ノードは、REGISTERメッセージにキー情報を追加する。
管理ノードは、DHTのルーティングテーブルに従って、REGISTERメッセージを他のノードへ送信する。これにより、管理ノードは、REGISTERメッセージをルートノードへ向けて送信する。ルートノードは、オーバーレイネットワークONを構成する複数のノードのうち、キー情報に基づいて定められるノードである。例えば、ルートノードは、キー情報と最も近いノードIDを有するノードであるように定められる。キー情報と最も近いノードIDとは、具体的に、キー情報と上位桁が最も多く一致するノードIDである。管理ノードから送信されたREGISTERメッセージは、DHTのルーティングよって最終的にルートノードに到着する。なお、DHTのルーティングは、例えば特開2007−053662号公報等で公知であるので、詳しい説明を省略する。REGISTERメッセージを受信したルートノードは、REGISTERメッセージに含まれるキー情報と管理ノード情報とを対応付けて記憶する。キー情報は、SIP_URIから特定することができる情報である。従って、管理ノード情報は、SIP_URIに対応付けて記憶される。これにより、SIP_URIがオーバーレイネットワークONに登録される。ルートノードは、SIPにおけるロケーションサーバに相当する。
或るユーザが他のユーザと電話したいとき、ユーザは、UAn−lAに対して、呼出先のSIP_URIを入力する。すると、UAn−lAは、INVITEメッセージを管理ノードへ送信する。INVITEメッセージは、通信接続の要求を示すメッセージである。INVITEメッセージのToフィールドには、呼出先のSIP_URIが設定される。UAn−lAからINVITEメッセージを受信した管理ノードは、呼出先のSIP_URIをハッシュ化することにより、キー情報を生成する。そして、管理ノードは、キー情報を含む検索要求を、DHTのルーティングテーブルに従って他のノードへ送信する。検索要求は、SIP_URIの検索の要求を示すメッセージである。検索要求は、最終的にルートノードに到着する。ルートノードは、受信した検索要求に含まれるキー情報に対応する管理ノード情報を管理ノードへ送信する。管理ノードは、受信した管理ノード情報に含まれるIPアドレス及びポート番号に基づいて、呼出先のUAn−lAの管理ノードへINVITEメッセージを転送する。INVITEメッセージを受信した管理ノードは、呼出先のUAn−lAへINVITEメッセージを転送する。その後、UAn−lA間で電話通信が行われる。
ノードが或るUAのSIP_URIをオーバーレイネットワークONから削除するとき、削除対象のSIP_URIをハッシュ化することにより、キー情報を生成する。そして、ノードは、キー情報を含む削除要求を、DHTのルーティングテーブルに従って他のノードへ送信する。削除要求は、SIP_URIの削除の要求を示すメッセージである。削除要求は、最終的にルートノードに到着する。ルートノードは、受信した削除要求に含まれるキー情報に対応する管理ノード情報を削除する。
[2.公衆電話網からの着信に対する折り返し電話]
次に、電話機Tm−iからUAn−lAへの着信に対するUAn−lAから電話機Tm−iへの折り返し電話について説明する。なお、以降においては、UAn−lBを有するノードの代表として、ノードN5について主に説明する。
電話機T1−1のユーザAが、例えば、UA3−1AのユーザBに電話したいとする。この場合、ユーザAは、UA5−1B、UA6−1BまたはUA7−1Bの電話番号を入力して電話をかける。例えば、ユーザAは、UA5−1Bの電話番号である052−XXX−051を入力する。UA5−1Bを有するノードN5は、公衆電話網NPを介して電話機T1−1からの着信を検出する。そして、ノードN5は公衆電話網NPから送信されてくる発信者番号を受信する。ノードN5は、発信者番号として、電話機T1−1の電話番号である03−AAAA−XXXXを受信する。発信者番号は、本発明における発信者情報の一例である。次いで、IVR(Interactive Voice Response)機能により、電話機T1−1から、UA3−1AのSIP_URIである3001を取得する。IVR機能により取得されるSIP_URIは、本発明における呼出先情報の一例である。その後、ノードN5は、UA3−1Aの管理ノードであるノードN3へ、INVITEメッセージを送信する。ノードN3は、受信したINVITEメッセージをUA3−1Aへ転送する。INVITEメッセージを受信したUA3−1Aは、呼び出し音を出力する。また、UA3−1Aには、INVITEメッセージに含まれるFromフィールドのディスプレイネームに設定された電話番号の情報が、発信者番号として通知される。その後、ユーザBがユーザAに対して折り返し電話をするとする。この場合、UA3−1Aは、INVITEメッセージをノードN3へ送信する。このとき、UA3−1Aは、通知された発信者番号をINVITEメッセージのToフィールドに設定する。
ノードN5がINVITEメッセージをノードN3へ送信するとき、INVITEメッセージのFromフィールドのディスプレイネームに如何なる情報を設定するかが問題となる。例えば、ノードN5が、このFromフィールドのディスプレイネームに、電話機T1−1の電話番号である03−AAAA−XXXXを設定したとする。この場合、UA3−1Aからの折り返しのINVITEメッセージのToフィールドに、03−AAAA−XXXXが設定される。UA3−1AからINVITEメッセージを受信したノードN3は、Toフィールドに設定された番号がアナログ電話番号であることを認識する。呼出先の電話番号がアナログ電話番号である場合、INVITEメッセージの転送先の候補としては、外線に終端するノードN5〜N7がある。今回の場合、ノードN3はノードN5へINVITEメッセージを送信することが望ましい。その理由は、電話機T1−1からの着信を受けたUAn−lBと、折り返し電話を電話機T1−1へ発信するUAn−lBとが一致するからである。つまり、ノードN5がINVITEメッセージをノードN3から受信した場合、INVITEメッセージに含まれる03−AAAA−XXXXで公衆電話網NPへ発信する。すると、電話機T1−1へは、発信者番号として、UA5−1Bの電話番号である052−XXX−051が通知される。そのため、ユーザAはユーザBからの折り返しの電話があったことを認識することができる。しかしながら、ノードN3は、INVITEメッセージに含まれる03−AAAA−XXXXからは、ノードN5を特定することはできない。そのため、ノードN3は、INVITEメッセージを、ノードN5〜N7のうち、例えば任意のノードへ転送する。例えば、ノードN3がノードN7へ転送したとする。ノードN7は、03−AAAA−XXXXで公衆電話網NPへ発信する。すると、電話機T1−1へは、発信者番号として、UA7−1Bの電話番号である052−ZZZ−071が通知される。発信者番号がユーザAによって入力された電話番号と異なるので、ユーザAは、未知の電話番号から着信があったと認識してしまうという問題がある。
また、例えば、ノードN5が、Fromフィールドのディスプレイネームに、UA5−1BのSIP_URIである5001を設定したとする。この場合、UA3−1Aからの折り返しのINVITEメッセージのToフィールドに、5001が設定される。そのため、折り返しのINVITEメッセージは、ノードN5に到達する。しかしながら、ノードN5は、5001という番号を用いて公衆電話網NPに対して発信することはできない。SIPに準拠する場合、ディスプレイネームに発信元の電話番号の情報を複数設定することはできない。そのため、ノードN5は、INVITEメッセージに03−AAAA−XXXXと5001の両方を設定することはできない。そこで、ノードN5は、以下に説明する処理を行う。
図3は、本実施形態の通信システムSの動作例を示すシーケンス図である。電話機T1−1が、052−XXX−051で発信した場合、図3に示すように、ノードN5が接続する交換機E2は、ノードN5の回線の極性を反転させる。これにより、ノードN5は、電話機T1−1からの着信を検出する(ステップS1)。また、交換機E2は、モデム信号をノードN5へ送信する(ステップS2)。モデム信号には、発信者番号として、03−AAAA−XXXXが設定されている。ノードN5は、受信したモデム信号から発信者番号を取得する。次いで、ノードN5は、電話機T1−1と通話接続すると、IVR機能による案内音声を交換機E2へ送信する(ステップS3)。案内音声は、公衆電話網NPを介して電話機T1−1へ送信される。これにより、電話機T1−1から、例えば、「お電話ありがとうございます。内線番号を入力してください。」といった音声が出力される。ユーザAが、内線番号として3001と入力すると、交換機E2は、公衆電話網NPを介して送信された3001をノードN5へ送信する(ステップS4)。これにより、ノードN5は、3001という番号をSIP_URIとして取得する。
次いで、ノードN5は、テンポラリ番号を生成する(ステップS5)。テンポラリ番号は、オーバーレイネットワークONに一時的に登録されるSIP_URIである。また、テンポラリ番号は、発信元の電話機Tm−iを、オーバーレイネットワークONを利用するIP電話で識別するためのSIP_URIである。ノードN5は、テンポラリ番号として、例えば5−372を生成する。テンポラリ番号は、各UAに割り当てられているSIP_URIと重複しないように生成する必要がある。例えば、テンポラリ番号の形式を、UAに割り当てられるSIP_URIの形式と異ならせてもよい。また、テンポラリ番号は、オーバーレイネットワークONに現在登録されているUAと重複しないように生成する必要がある。なお、テンポラリ番号は、本発明における識別情報の一例である。
次いで、ノードN5は、テンポラリ番号情報を生成する。テンポラリ番号情報は、テンポラリ番号と発信元の電話機Tm−iの電話番号とを対応付けた管理情報である。具体的に、テンポラリ番号情報は、テンポラリ番号、外線発信番号、最終利用時刻を含まれる。外線発信番号は、発信元の電話機Tm−iの電話番号である。最終利用時刻は、テンポラリ番号が最後に利用された時刻である。最終利用時刻は、例えば、日付及び時刻の両方を含んでいてもよいし、時刻のみを含んでいてもよい。テンポラリ番号情報は、本発明における管理情報の一例である。また、最終利用時刻は、本発明における時刻情報の一例である。ノードN5は、5−372、03−AAAA−XXXX及び現在時刻を含むテンポラリ番号情報を生成する。そして、ノードN5は、生成したテンポラリ番号情報を記憶する(ステップS6)。これにより、ノードN5は、テンポラリ番号を管理する。
次いで、ノードN5は、テンポラリ番号をハッシュ化してキー情報を生成する。そして、ノードN5は、キー情報とノードN5の管理ノード情報とを含むREGISTERメッセージを送信する(ステップS7)。つまり、電話機T1−1がUAであると仮定した場合、ノードN5が、電話機T1−1の管理ノードとなる。テンポラリ番号5−372から生成されたキー情報に基づいて定められるルートノードが、ノードN4であるとする。この場合、送信されたREGISTERメッセージは、DHTのルーティングに従って、ノードN4に到達する。従って、ノードN4は、REGISTERメッセージに含まれるキー情報と管理ノード情報とを対応付けて記憶する。このときのルートノードは、本発明における第2サーバ装置の一例である。また、このときのREGISTERメッセージに含まれるキー情報及び管理ノード情報は、キー情報の生成に用いられたSIP_URIが管理ノード情報により示される管理ノードにより管理されることを登録する情報である。
次いで、ノードN5は、SIP_URI3001をハッシュ化して生成されたキー情報を含む検索要求の送信によって、UA3−1Aの管理ノードであるノードN3の管理ノード情報を取得すると、ノードN3へINVITEメッセージを送信する(ステップS8)。このとき、ノードN5は、Fromフィールドのディスプレイネームにテンポラリ番号である5−372を設定する。また、ノードN5は、Toフィールドに3001を設定する。これにより、ノードN5は、INVITEメッセージを呼出先のUA3−1Aへ送信する。INVITEメッセージを受信したノードN3は、Toフィールドの記述に従って、INVITEメッセージをUA3−1Aへ転送する(ステップS9)。これにより、INVITEメッセージ受信したUA3−1Aは着信音を出力する。また、UA3−1Aは、INVITEメッセージのFromフィールドに設定された5−372を発信者番号として、UA3−1Aのメモリに記憶させる。また、UA3−1Aは、5−372を画面に表示する。
その後、ユーザBが折り返し電話をかける。この場合、UA3−1Aは、ユーザBの操作等に基づいて、INVITEメッセージをノードN3へ送信する(ステップS10)。このとき、UA3−1Aは、メモリに記憶されている5−372をToフィールドに設定する。INVITEメッセージを受信したノードN3は、受信したINVITEメッセージのToフィールドから5−372を取得する。そして、ノードN3は、5−372を含む検索要求を送信する(ステップS11)。これにより、ノードN3は、ノードN4から、電話機T1−1の管理ノードであるノードN5の管理ノード情報を受信する(ステップS12)。次いで、ノードN3は、受信した管理ノード情報に基づいて、INVITEメッセージをノードN5へ転送する(ステップS13)。
INVITEメッセージを受信したノードN5は、受信したINVITEメッセージのToフィールドから5−372を取得する。次いで、ノードN5は、5−372をテンポラリ番号として含むテンポラリ番号情報を検索する。5−372を含むテンポラリ番号情報には、外線発信番号として、03−AAAA−XXXXが設定されている。そこで、ノードN5は、検索されたテンポラリ番号情報から03−AAAA−XXXXを取得する(ステップS14)。次いで、ノードN5は、03−AAAA−XXXXで、公衆電話網NPへ発信する(ステップS15)。従って、電話機T1−1へは、発信者番号として052−XXX−051が通知される。
このように、電話機Tm−iからの着信を受けたUAn−lBと、折り返し電話を電話機Tm−iへ発信するUAn−lBとが一致する。そのため、電話機Tm−iのユーザは、自分が発信した相手からの着信があったと認識することができる。また、電話機Tm−iの電話番号とテンポラリ番号とを事前に対応付けて記憶しておく必要がない。
ノードN5は、公衆電話網NPへの発信によって電話機T1−1とUA3−1Aとの通話接続が成立すると、ノードN5は、テンポラリ番号5−372をオーバーレイネットワークONから削除してもよい。また、このとき、ノードN5は、テンポラリ番号情報を削除してもよい。折り返し電話において一度接続が成立すれば、テンポラリ番号は必要ではなくなるからである。また、テンポラリ番号がオーバーレイネットワークONに登録されたままであると、登録されているテンポラリ番号の分、割り当て可能なSIP_URIが減少する。仮にテンポラリ番号の形式と、UAに割り当てられるSIP_URIの形式とが異なっていたとしても、割り当て可能なテンポラリ番号が減少する。そこで、不要となったテンポラリ番号をオーバーレイネットワークONから削除することで、SIP_URIを有効利用することができる。また、不要となったテンポラリ番号情報を削除することにより、ノードN5の記憶容量の空きを増やすことができる。一方、ノードN5は、通話接続が成立しなかった場合、オーバーレイネットワークONからのテンポラリ番号の削除及びテンポラリ番号情報の削除を行わない。ユーザBが再度折り返し電話をかける場合があるからである。なお、ノードN5は、テンポラリ番号をオーバーレイネットワークONから削除する一方で、テンポラリ番号情報の削除は行わなくてもよい。
電話機T1−1からの着信の後、ユーザBは、折り返し電話をかけない場合がある。また、ユーザBが折り返し電話をかけたが、ユーザAが電話に出ない場合がある。また、ユーザBが折り返し電話をかけたが、ユーザAが電話に出る前にユーザBがオンフック操作をする場合がある。これらの場合、電話機T1−1とUA3−1Aとの通話接続が成立していない。従って、オーバーレイネットワークONからテンポラリ番号は削除されず、テンポラリ番号情報も削除されない。しかしながら、長い時間削除が行われないと、割り当て可能なSIP_URIが減少する。また、ノードN5の記憶容量の空きが減少する。そこで、ノードN5は、テンポラリ番号情報を記憶してから予め設定された時間が経過した場合、オーバーレイネットワークONからテンポラリ番号を削除してもよい。また、このとき、ノードN5は、テンポラリ番号情報を削除してもよい。予め設定された時間を、「設定時間」という。テンポラリ番号情報は、最終利用時刻を含む。最終利用時刻は、テンポラリ番号情報が記憶された時刻を示す。そのため、ノードN5は、最終利用時刻に基づいて、テンポラリ番号情報を記憶してから設定時間が経過したか否かを判定することができる。
ユーザBが折り返し電話をかけたがユーザAが電話に出ない場合や、ユーザBが折り返し電話をかけたがユーザAが電話に出る前にユーザBがオンフックする場合、ユーザBは再度電話をかける可能性がある。しかしながら、テンポラリ番号情報を記憶してから設定時間が経過した後にユーザBが折り返し電話をかけようとすると、その時点ではテンポラリ番号がオーバーレイネットワークONから削除されていることがある。そのため、ノードN5は、電話機T1−1の電話番号で公衆電話網NPへ発信することができない。そこで、ノードN5は、折り返し電話において通話接続が成立しなかった場合には、テンポラリ番号情報の最終利用時刻を更新してもよい。具体的に、ノードN5は、最終利用時刻を、通話接続が成立しなかった時刻に書き換える。そして、ノードN5は、最終利用時刻から設定時間が経過した場合に、オーバーレイネットワークONからテンポラリ番号を削除してもよい。また、このとき、ノードN5は、テンポラリ番号情報を削除してもよい。最終利用時刻が更新されることで、テンポラリ番号の削除が延期される。そのため、ユーザBは、再度折り返し電話をかけることができる。なお、テンポラリ番号情報が記憶されたときの最終利用時刻は、ノードN5がテンポラリ番号をINVITEメッセージの生成に利用した時刻を示す。一方、更新された最終利用時刻は、ノードN5が最終利用時刻を外線発信番号の取得に利用した時刻を示す。
ところで、同一のUAn−lAが互いに異なる複数の電話機Tm−iからの着信を受けることがある。例えば、ユーザAが052−XXX−051で電話機T1−1から電話をかけ、内線番号として3001を入力する。この場合、ノードN5は、電話機T1−1からの着信時にテンポラリ番号を生成して、オーバーレイネットワークONに登録する。そして、生成されたテンポラリ番号がUA3−1Aに通知される。その後、UA3−1Aから電話機T1−1の折り返し電話の接続が成立すると、ノードN5は、テンポラリ番号をオーバーレイネットワークONから削除する。その後、例えば、ユーザCが052−XXX−051で電話機T5−1から電話をかけ、内線番号として3001を入力する。この場合も、ノードN5は、電話機T5−1からの着信時にテンポラリ番号を生成する。そして、生成されたテンポラリ番号がUA3−1Aに通知される。電話機T5−1からの着信時には、電話機T1−1からの着信時に生成されたテンポラリ番号は削除されている。そこで、ノードN5は、電話機T1−1からの着信時に生成したテンポラリ番号と同じテンポラリ番号を、電話機T5−1からの着信時に生成することも可能である。例えば、ノードN5は、同一のテンポラリ番号として5−372を生成したとする。しかしながら、この場合、電話機T1−1からの着信時と、電話機T5−1からの着信時とで、同一の発信者番号5−372がUA3−1Aに通知される。そのため、ユーザBは、同一の相手から2回電話があったと誤って判断することがある。
そこで、ノードN5は、テンポラリ番号を生成するとき、前回生成したテンポラリ番号と異なるテンポラリ番号を生成してもよい。これにより、電話機T1−1からの着信時と、電話機T5−1からの着信時とで、異なる発信者番号が通知される。そのため、ユーザBは、同一の相手から2回電話があったと誤って判断することを防止することができる。なお、前回の着信時と今回の着信時とで発信元の電話機Tm−iが同一である場合であっても、ノードN5は、前回の着信時とは異なるテンポラリ番号を生成してもよい。具体的な生成方法としては、例えば、前回生成したテンポラリ番号に1を加算したテンポラリ番号を生成することが挙げられる。また、ノードN5は、或るテンポラリ番号を生成してからそのテンポラリ番号と同一のテンポラリ番号が生成されるまでのテンポラリ番号の生成回数が多くなるように、テンポラリ番号を生成するとよい。
上述した例は、同一のノードが複数の電話機Tm−iから着信した場合の例である。しかしながら、互いに異なる複数のノードがそれぞれ着信する場合がある。例えば、ユーザAが052−XXX−051で電話機T1−1から電話をかけ、内線番号として3001を入力する。一方、ユーザCが052−YYY−061で電話機T5−1から電話をかけ、内線番号として3001を入力する。この場合は、ノードN6が着信を受ける。この場合、ノードN5とノードN6が互いに同一のテンポラリ番号を生成すると、同一の発信者番号がUA3−1Aに通知される。そこで、ノードN5〜N7は、それぞれ他のノードが生成するテンポラリ番号とは異なるテンポラリ番号を生成してもよい。例えば、ノードN5は、ノードN5のノードIDを用いてテンポラリ番号を生成する。例えば、ノードN5のノードIDが0005であり、ノードN6のノードIDが0006であるとする。ノードN5が生成した番号が3−572であったとする。ノードN5は、3−572に0005を付加して、テンポラリ番号3−5720005を生成する。一方、ノードN6が生成した番号も3−572であったとする。ノードN6は、3−572に0006を付加して、テンポラリ番号3−5720006を生成する。
[3.ノードの構成]
次に、図2(B)を参照して、ノードN5の構成及び機能について説明する。図2(B)は、ノードN5の概要構成例を示すブロック図である。ノードN5は、図2(B)に示すように、制御部11、記憶部12、NIC(Network Interface Card)13a、RJ−45ジャック14a、NIC13b、RJ−45ジャック14b、SLIC(Subscriber Loop Interface Circuit)15、RJ−11ジャック16等を備えて構成される。制御部11は、記憶部12、NIC13a、NIC13b及びSLIC15とバス17を介して相互に接続されている。また、NIC13aとRJ−45ジャック14a、NIC13bとRJ−45ジャック14b、及び、SLIC15とRJ−11ジャック16はそれぞれ接続されている。
記憶部12は、本発明における記憶手段の一例である。記憶部12は、例えばハードディスクドライブ等から構成される。記憶部12には、オペレーティングシステム、P2Pプログラム、SIPサーバプログラム、IVR機能プログラム、UAプログラム等が記憶されている。P2Pプログラムは、ルーティングテーブルを用いて他のノードと通信を行うためのプログラムである。なお、P2Pプログラム等は、例えば、ネットワークNWに接続された所定のサーバからダウンロードされるようにしてもよい。或いは、P2Pプログラム等は、例えば、DVD等の記録媒体に記録されて記録媒体のドライブを介して読み込まれるようにしてもよい。
また、記憶部12には、オーバーレイネットワークONで使用されるDHTを用いたルーティングテーブル等が記憶されている。また、記憶部12には、ノードN5のノードID、IPアドレス及びポート番号が記憶されている。また、記憶部12には、設定時間が記憶されている。また、記憶部12には、ノードN5がルートノードとなる管理ノード情報がキー情報に対応付けて記憶されている。また、記憶部12には、テンポラリ番号情報が一時的に記憶される。
RJ−45ジャック14a及び14bには、LANケーブルが接続される。RJ−45ジャック14aは、LANケーブルによりUA5−1Bと接続される。NIC13aは、RJ−45ジャック14aを介して、UA5−1Bとの間の通信制御を行う。なお、ノードN5は、NIC13a及びRJ−45ジャック14aを複数組備えていてもよい。
RJ−45ジャック14bは、LANケーブルによりネットワークNWと接続される。NIC13bは、RJ−45ジャック14b及びネットワークNWを介して、他のノード等との間の通信制御を行う。
SLIC15及びRJ−11ジャック16は、FXO(Foreign eXchange Office)デバイスである。RJ−11ジャック16は、アナログ回線のケーブルが接続される。RJ−11ジャック16は、アナログ回線を介して公衆電話網NPと接続される。SLIC15は、公衆電話網NPとネットワークNWと間のインタフェースを提供する。SLIC15は、FSK(Frequency-Shift Keying)による信号復号機能、公衆電話網NPへの発信機能等を有する。SLIC15及びRJ−11ジャック16は、本発明における接続手段の一例である。また、SLIC15は、本発明における第1取得手段、及び発信手段の一例である。
制御部11は、演算機能を有するCPU,作業用RAM,及びROM等から構成される。また、制御部11は、時計機能及びタイマ機能を備える。そして、制御部11は、CPUが記憶部12等に記憶されたプログラムを読み出して実行することにより、本発明における第2取得手段、生成手段、第1送信手段、第2送信手段、受信手段、第3取得手段、判定手段、第3送信手段及び更新手段として機能する。
なお、ノードN6及びN7の構成は、ノードN5の構成と基本的に同様である。また、他のノードの構成は、SLIC15及びRJ−11ジャック16を備えていないことを除いて、ノードN5の構成と基本的に同様である。
[4.通信システムの動作]
次に、図4及び図5を参照して、本実施形態の通信システムSの動作について説明する。図4及び図5は、本実施形態のノードN5の制御部11及びSLIC15の処理例を示すフローチャートである。
図4に示す処理は、ノードN5のSLIC15がRJ−11ジャック16を介して公衆電話網NPからの着信を検出したときに開始される。図4に示すように、SLIC15は、RJ−11ジャック16を介してモデム信号を受信する。そして、SLIC15は、モデム信号をFSKにより復号することにより、モデム信号から発信者番号を取得する(ステップS21)。
次いで、制御部11は、IVR機能プログラムを実行し、IVR機能によって公衆電話網NPから内線番号としてのSIP_URIを取得する(ステップS22)。ところで、例えば、電話機T1−1からの電話を必ずUA3−1Aが着信するようにしたい場合がある。この場合、電話機T1−1の電話番号とUA3−1AのSIP_URIとが予め対応付けられていてもよい。例えば、或るノードが、電話機T1−1の電話番号をハッシュ化してキー情報を生成する。そして、ノードは、キー情報とUA3−1AのSIP_URIとを含むREGISTERメッセージをルートノードへ向けて送信する。これにより、キー情報とSIP_URIとがルートノードにより対応付けて記憶される。公衆電話網NPからの着信時、ノードN5は、呼出先のSIP_URIをIVR機能によって取得するのではなく、オーバーレイネットワークONから取得する。つまり、ノードN5は、SLIC15により取得された発信者番号をハッシュ化してキー情報を生成する。そして、キー情報を含む検索要求をルートノードへ向けて送信することにより、ルートノードから呼出先のSIP_URIを取得する。
SIP_URIが取得されると、制御部11は、テンポラリ番号を生成する(ステップS23)。次いで、制御部11は、生成したテンポラリ番号がオーバーレイネットワークONに既に登録されているかを確認する(ステップS24)。具体的に、制御部11は、テンポラリ番号をハッシュ化して生成したキー情報を含む検索要求をルートノードへ向けて送信する。検索要求を受信したルートノードは、検索要求に含まれるキー情報に対応する管理ノード情報がルートノードの記憶部12に記憶されているか否かを判定する。このとき、ルートノードは、キー情報に対応する管理ノード情報が記憶されている場合にはこの管理ノード情報をノードN5へ送信する。一方、ルートノードは、キー情報に対応する管理ノード情報が記憶されていない場合には、例えば、エラー応答をノードN5へ送信する。エラー応答は、キー情報に対応する管理ノード情報がないことを示すメッセージである。制御部11は、ルートノードから管理ノード情報またはエラー応答を受信する。
次いで、制御部11は、生成したテンポラリ番号がオーバーレイネットワークONに既に登録されているか否かを判定する(ステップS25)。このとき、制御部11は、管理ノード情報を受信した場合には、テンポラリ番号は既に登録されていると判定する(ステップS25:YES)。この場合、制御部11は、ステップS23に進む。一方、制御部11は、エラー応答を受信した場合には、テンポラリ番号は登録されていないと判定する(ステップS25:NO)。この場合、制御部11は、ステップS26に進む。ステップS23〜S25の処理により、制御部11は、オーバーレイネットワークONに登録されているテンポラリ番号と異なるテンポラリ番号を生成することができる。また、制御部11は、テンポラリ番号の形式がUAに割り当てられるSIP_URIの形式と同一であっても、オーバーレイネットワークONに登録されているSIP_URIと異なるテンポラリ番号を生成することができる。
ステップS26において、制御部11は、テンポラリ番号情報を生成する。具体的に、制御部11は、時計機能から、現在時刻を取得する。制御部11は、現在時刻を最終利用時刻とする。次いで、制御部11は、ステップS23〜S25で最終的に生成されたテンポラリ番号、SLIC15により取得された発信者番号及び最終利用時刻を含むテンポラリ番号情報を生成する。そして、制御部11は、生成したテンポラリ番号情報を記憶部12に記憶させる(ステップS26)。
次いで、制御部11は、テンポラリ番号をオーバーレイネットワークONに登録する(ステップS27)。具体的に、制御部11は、生成したテンポラリ番号をハッシュ化してキー情報を生成する。次いで、制御部11は、キー情報と、ノードN5に対して発信してきた電話機Tm−iの管理ノードであるノードN5の管理ノード情報を含むREGISTERメッセージをルートノードへ向けて送信する。ステップS27において送信されるREGISTERメッセージに含まれるキー情報とノードN5の管理ノード情報が、本発明における登録情報の一例である。
次いで、制御部11は、INVITEメッセージを生成する(ステップS28)。このとき、制御部11は、INVITEメッセージのFromフィールドのディスプレイネームに、生成したテンポラリ番号を設定する。また、制御部11は、INVITEメッセージのToフィールドに、IVR機能により取得されたSIP_URIを設定する。Fromフィールドのディスプレイネームとしてテンポラリ番号が設定されたINVITEメッセージは、本発明における第1要求情報の一例である。また、このINVITEメッセージのFromフィールドのディスプレイネームに設定されたテンポラリ番号は、本発明における第1要求情報に含まれる発信者情報の一例である。INVITEメッセージを生成した制御部11は、ステップS22においてIVR機能により取得されたSIP_URIをハッシュ化して、キー情報を生成する。次いで、制御部11は、生成したキー情報を含む検索要求をルートノードへ向けて送信する。これにより、制御部11は、ルートノードから管理ノード情報を受信する。次いで、制御部11は、受信した管理ノード情報に基づいて、呼出先のUA3−1Aの管理ノードへINVITEメッセージを送信する(ステップS29)。制御部11は、この処理を終えると、図4に示す処理を終了させる。
図5に示す処理は、ノードN5の制御部11が他のノードからToフィールドにテンポラリ番号が設定されたINVITEメッセージを受信したときに開始される。Toフィールドにテンポラリ番号が設定されたINVITEメッセージは、本発明における第2要求情報の一例である。また、このINVITEメッセージのToフィールドに設定されたテンポラリ番号は、本発明における折り返し先を示す情報の一例である。図5に示すように、制御部11は、INVITEメッセージのToフィールドからテンポラリ番号を取得する(ステップS41)。次いで、制御部11は、取得したテンポラリ番号を含むテンポラリ番号情報を記憶部12から検索する。そして、制御部11は、検索されたテンポラリ番号情報から外線発信番号を取得する(ステップS42)。
次いで、制御部11は、取得した外線発信番号をSLIC15へ送信する。そして、SLIC15は、公衆電話網NPへ発信する(ステップS43)。具体的に、SLIC15は、外線発信番号をPB(Push Button)信号に変換し、PB信号をRJ−11ジャック16を介して公衆電話網NPへ送信する。次いで、制御部11は、外線呼び出し音を、発信元のUAn−lAへ送信する(ステップS44)。
次いで、制御部11は、呼出先の電話機T1−1のオフフックがSLIC15により検出されたか否かを判定する(ステップS45)。このとき、制御部11は、オフフックが検出されていないと判定した場合には(ステップS45:NO)、ステップS46に進む。ステップS46において、制御部11は、オフフックフラグにFALSEを設定する。オフフックフラグは、オフフックされたか否かを示す情報である。次いで、制御部11は、ステップS48に進む。一方、制御部11は、オフフックが検出されたと判定した場合には(ステップS45:YES)、ステップS47に進む。ステップS47において、制御部11は、オフフックフラグにTRUEを設定する。次いで、制御部11は、ステップS48に進む。
ステップS48において、制御部11は、発信元のUAn−lAからCANCELメッセージを受信したか否かを判定する。つまり、制御部11は、発信元のユーザがオンフック操作をしたか否かを判定する。このとき、制御部11は、CANCELメッセージを受信していないと判定した場合には(ステップS48:NO)、ステップS49に進む。ステップS49において、制御部11は、CANCELフラグにFALSEを設定する。CANCELフラグは、CANCELメッセージが受信されたか否かを示す情報である。次いで、制御部11は、ステップS51に進む。一方、制御部11は、CANCELメッセージを受信したと判定した場合には(ステップS48:YES)、ステップS50に進む。ステップS50において、制御部11は、CANCELフラグにTRUEを設定する。次いで、制御部11は、ステップS51に進む。
ステップS51において、制御部11は、CANCELフラグがFALSEであり且つオフフックフラグがFALSEであるか否かを判定する。このとき、制御部11は、CANCELフラグがFALSEであり且つオフフックフラグがFALSEであると判定した場合には(ステップS51:YES)、ステップS44に進む。制御部11は、呼出先のユーザがオフフック操作をするか、発信元のユーザがオンフック操作をするまで、ステップS44〜S51の処理を繰り返す。一方、制御部11は、CANCELフラグがTRUEであると判定した場合、または、オフフックフラグがTRUEであると判定した場合には(ステップS51:NO)、ステップS52に進む。
ステップS52において、制御部11は、CANCELフラグがFALSEであるか否かを判定する(ステップS52)。このとき、制御部11は、CANCELフラグがTRUEであると判定した場合には(ステップS52:NO)、ステップS53に進む。一方、制御部11は、CANCELフラグがFALSEであると判定した場合には(ステップS52:YES)、ステップS54に進む。
ステップS53において、制御部11は、ステップS42において検索されたテンポラリ番号情報に含まれる最終利用時刻を更新する。その理由は、通話接続が成立しなかったからである。具体的に、制御部11は、時計機能から現在時刻を取得する。そして、制御部11は、最終利用時刻に現在時刻を設定する。制御部11は、この処理を終えると、図5に示す処理を終了させる。
ステップS54において、制御部11は、ステップS42において検索されたテンポラリ番号情報を記憶部12から削除する。次いで、制御部11は、オーバーレイネットワークONからテンポラリ番号を削除する(ステップS55)。具体的に、制御部11は、INVITEメッセージのToフィールドから取得したテンポラリ番号をハッシュ化してキー情報を生成する。そして、制御部11は、キー情報を含む削除要求をルートノードへ向けて送信する。キー情報を含む削除要求が本発明における第3要求情報の一例である。次いで、制御部11は、通話処理を開始する(ステップS56)。制御部11は、200 OKメッセージを発信元のUAn−lAへ送信し、発信元のUAn−lAから送信されてくるACKメッセージを受信する。その後、制御部11は、発信元のUAn−lAから送信されてくる音声信号をアナログ変換して、SLIC15により公衆電話網NPへ送信させる。また、制御部11は、公衆電話網NPからSLIC15により受信された音声信号をデジタル信号に変換して、発信元のUAn−lAへ送信する。制御部11は、この処理を終えると、図5に示す処理を終了させる。
制御部11は、テンポラリ番号を削除する処理を、例えば定期的に実行する。具体的に、制御部11は、記憶部12に記憶されているテンポラリ番号情報に含まれる最終利用時刻から設定時間が経過したか否かを判定する。このとき、制御部11は、最終利用時刻から設定時間が経過していないと判定した場合には、テンポラリ番号を削除しない。一方、制御部11は、最終利用時刻から設定時間が経過したと判定した場合には、ステップS54及びS55と同様の処理を行う。
以上説明したように、本実施形態によれば、ノードN5が、公衆電話網NPに接続し、電話機Tm−iからの着信が検出された場合、電話機Tm−iの発信者番号を取得し、呼出先のUAn−lAのSIP_URIを取得し、テンポラリ番号を生成し、テンポラリ番号と発信者番号とを含むテンポラリ番号情報を記憶部12に記憶させ、テンポラリ番号から生成されたキー情報とノードN5の管理ノード情報とを含むREGISTERメッセージをルートノードへ送信し、テンポラリ番号をFromフィールドに設定したINVITEメッセージを呼出先のUAn−lAへ送信する。その後、ノードN5は、UAn−lAからの折り返しのINVITEメッセージを受信し、INVITEメッセージのToフィールドに設定されたテンポラリ番号を取得し、取得したテンポラリ番号に対応する外線発信番号を記憶部12から取得し、取得した外線発信番号に基づいて、電話機Tm−iへ発信する。従って、電話機Tm−iの電話番号とテンポラリ番号とを予め対応付けて記憶しておく必要がない。
なお、上記実施形態において、ノード5は、公衆電話網NPに接続されていた。しかしながら、ノードN5は、公衆電話網NP以外の電話網に接続されてもよい。例えば、ノードN5は、移動体通信網等に接続されてもよい。
11 制御部
12 記憶部
13a,13b NIC
14a,14b RJ−45ジャック
15 SLIC
16 RJ−11ジャック
Nn ノード
5−1B,6−1B,7−1B UA
NW ネットワーク
ON オーバーレイネットワーク
S 通信システム
NP 公衆電話網

Claims (7)

  1. ネットワークに接続された複数のサーバ装置によりオーバーレイネットワークが構成され、前記オーバーレイネットワークを利用する電話の呼制御を前記サーバ装置が行う通信システムにおいて、前記複数のサーバ装置に含まれる第1サーバ装置であって、
    前記ネットワークとは異なる電話網に接続する接続手段と、
    前記電話網に接続された端末装置からの着信が前記接続手段を介して検出された場合、前記端末装置を識別する発信者情報を前記接続手段を介して取得する第1取得手段と、
    前記端末装置からの呼出先を識別する呼出先情報を取得する第2取得手段と、
    前記オーバーレイネットワークを利用する電話において前記端末装置を識別するための識別情報を生成する生成手段と、
    前記生成手段により生成された前記識別情報と、前記第1取得手段により取得された前記発信者情報とを含む管理情報を記憶する記憶手段と、
    前記生成手段により生成された前記識別情報が前記第1サーバ装置により管理されることを登録する登録情報を、前記複数のサーバ装置のうち前記登録情報を管理する第2サーバ装置へ送信する第1送信手段と、
    前記端末装置からの接続要求を示す第1要求情報であり、前記生成手段により生成された前記識別情報を前記発信者情報として含む第1要求情報を、前記第2取得手段により取得された前記呼出先情報により識別される呼出先へ送信する第2送信手段と、
    前記第2取得手段により取得された前記呼出先情報により識別される呼出先からの折り返しの接続要求を示す第2要求情報を受信可能な受信手段と、
    前記受信手段により受信された前記第2要求情報に折り返し先を示す情報として含まれる前記識別情報を取得する第3取得手段と、
    前記第3取得手段により取得された前記識別情報を含む前記管理情報に含まれる前記発信者情報に基づいて、前記接続手段を介して前記端末装置へ発信する発信手段と、
    を備えることを特徴とする第1サーバ装置。
  2. 前記発信手段による発信による前記端末装置への接続が成立したかを判定する判定手段と、
    前記判定手段により接続が成立したと判定された場合、前記第3取得手段により取得された前記識別情報に対応する前記登録情報の削除要求を示す第3要求情報を前記第2サーバ装置へ送信する第3送信手段と、
    を更に備えることを特徴とする請求項1に記載の第1サーバ装置。
  3. 前記第3送信手段は、前記記憶手段に前記管理情報が記憶されてから予め設定された設定時間が経過した場合、前記管理情報に含まれる前記識別情報に対応する前記登録情報の削除要求を示す前記第3要求情報を送信することを特徴とする請求項2に記載の第1サーバ装置。
  4. 前記記憶手段は、前記識別情報の利用時刻を示す時刻情報を更に含む前記管理情報を記憶し、
    前記第3送信手段は、前記記憶手段に記憶された前記管理情報に含まれる前記時刻情報が示す時刻から前記設定時間が経過した場合、前記第3要求情報を送信し、
    前記判定手段により接続が成立しなかったと判定された場合、前記第3取得手段により取得された前記識別情報を含む前記管理情報に含まれる前記時刻情報を更新する更新手段を更に備えることを特徴とする請求項3に記載の第1サーバ装置。
  5. 前記生成手段は、前回生成した前記識別情報とは異なる前記識別情報を生成することを特徴とする請求項1乃至4の何れか1項に記載の第1サーバ装置。
  6. ネットワークに接続された複数のサーバ装置によりオーバーレイネットワークが構成され、前記オーバーレイネットワークを利用する電話の呼制御を前記サーバ装置が行う通信システムにおいて、前記複数のサーバ装置に含まれる第1サーバ装置に含まれるコンピュータに、
    前記ネットワークとは異なる電話網に接続する接続手段を介して、前記電話網に接続された端末装置からの着信が検出された場合、前記端末装置を識別する発信者情報を前記接続手段を介して取得する第1取得ステップと、
    前記端末装置からの呼出先を識別する呼出先情報を取得する第2取得ステップと、
    前記端末装置を前記オーバーレイネットワークを利用する電話で識別するための識別情報を生成する生成ステップと、
    前記生成ステップにより生成された前記識別情報と、前記第1取得ステップにより取得された前記発信者情報とを含む管理情報を記憶手段に記憶させる記憶ステップと、
    前記生成ステップにより生成された前記識別情報が前記第1サーバ装置により管理されることを登録する登録情報を、前記複数のサーバ装置のうち前記登録情報を管理する第2サーバ装置へ送信する送信ステップと、
    前記端末装置からの接続要求を示す第1要求情報であり、前記生成ステップにより生成された前記識別情報を前記発信者情報として含む第1要求情報を、前記第2取得ステップにより取得された前記呼出先情報により識別される呼出先へ送信する第1送信ステップと、
    前記第2取得ステップにより取得された前記呼出先情報により識別される呼出先からの折り返しの接続要求を示す第2要求情報を受信する受信ステップと、
    前記受信ステップにより受信された前記第2要求情報に折り返し先を示す情報として含まれる前記識別情報を取得する第3取得ステップと、
    前記第2取得ステップにより取得された前記識別情報を含む前記管理情報に含まれる前記発信者情報に基づいて、前記接続手段を介して前記端末装置へ発信する発信ステップと、
    を実行させることを特徴とするプログラム。
  7. ネットワークに接続された複数のサーバ装置によりオーバーレイネットワークが構成され、前記オーバーレイネットワークを利用する電話の呼制御を前記サーバ装置が行う通信システムにおいて、前記複数のサーバ装置に含まれる第1サーバ装置の情報処理方法であって、
    前記ネットワークとは異なる電話網に接続する接続手段を介して、前記電話網に接続された端末装置からの着信が検出された場合、前記端末装置を識別する発信者情報を前記接続手段を介して取得する第1取得ステップと、
    前記端末装置からの呼出先を識別する呼出先情報を取得する第2取得ステップと、
    前記端末装置を前記オーバーレイネットワークを利用する電話で識別するための識別情報を生成する生成ステップと、
    前記生成ステップにより生成された前記識別情報と、前記第1取得ステップにより取得された前記発信者情報とを含む管理情報を記憶手段に記憶させる記憶ステップと、
    前記生成ステップにより生成された前記識別情報が前記第1サーバ装置により管理されることを登録する登録情報を、前記複数のサーバ装置のうち前記登録情報を管理する第2サーバ装置へ送信する送信ステップと、
    前記端末装置からの接続要求を示す第1要求情報であり、前記生成ステップにより生成された前記識別情報を前記発信者情報として含む第1要求情報を、前記第2取得ステップにより取得された前記呼出先情報により識別される呼出先へ送信する第1送信ステップと、
    前記第2取得ステップにより取得された前記呼出先情報により識別される呼出先からの折り返しの接続要求を示す第2要求情報を受信する受信ステップと、
    前記受信ステップにより受信された前記第2要求情報に折り返し先を示す情報として含まれる前記識別情報を取得する第3取得ステップと、
    前記第2取得ステップにより取得された前記識別情報を含む前記管理情報に含まれる前記発信者情報に基づいて、前記接続手段を介して前記端末装置へ発信する発信ステップと、
    を含むことを特徴とする情報処理方法。
JP2012080424A 2012-03-30 2012-03-30 サーバ装置、プログラム及び情報処理方法 Pending JP2013211686A (ja)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2012080424A JP2013211686A (ja) 2012-03-30 2012-03-30 サーバ装置、プログラム及び情報処理方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2012080424A JP2013211686A (ja) 2012-03-30 2012-03-30 サーバ装置、プログラム及び情報処理方法

Publications (1)

Publication Number Publication Date
JP2013211686A true JP2013211686A (ja) 2013-10-10

Family

ID=49529172

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2012080424A Pending JP2013211686A (ja) 2012-03-30 2012-03-30 サーバ装置、プログラム及び情報処理方法

Country Status (1)

Country Link
JP (1) JP2013211686A (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109819122A (zh) * 2019-03-12 2019-05-28 安徽赛迪信息技术有限公司 一种客户信息分析系统

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006197400A (ja) * 2005-01-14 2006-07-27 Brother Ind Ltd 情報配信システム、情報更新プログラム、及び情報更新方法等
JP2008536455A (ja) * 2005-04-12 2008-09-04 テレコミュニケーション システムズ インク. 一時的enumゲートウェイ
US7702081B1 (en) * 2006-02-21 2010-04-20 Sprint Communications Company L.P. Call back number provisioning for emergency call services

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2006197400A (ja) * 2005-01-14 2006-07-27 Brother Ind Ltd 情報配信システム、情報更新プログラム、及び情報更新方法等
JP2008536455A (ja) * 2005-04-12 2008-09-04 テレコミュニケーション システムズ インク. 一時的enumゲートウェイ
US7702081B1 (en) * 2006-02-21 2010-04-20 Sprint Communications Company L.P. Call back number provisioning for emergency call services

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109819122A (zh) * 2019-03-12 2019-05-28 安徽赛迪信息技术有限公司 一种客户信息分析系统

Similar Documents

Publication Publication Date Title
JP5332544B2 (ja) 呼制御装置、呼制御システム、呼制御方法及びコンピュータプログラム
JP2005318503A (ja) プレゼンスサーバ、セッション制御サーバ、パケット中継システム、サーバ、及びシステム
JP2008131519A (ja) コンタクト先情報登録方法、ネットワークシステム、ノードおよびコンタクト先情報登録プログラム
JP2008508753A (ja) ハイブリッド通信ネットワークにおいて相関手段を提供する方法および装置
JP4640448B2 (ja) 両網対応電話装置
JP4672011B2 (ja) Ip電話システム及びip電話方法
JP2011147007A (ja) 通話録音装置及び通話録音システム
WO2009107800A1 (ja) 通話中継サーバおよび音声通話システムならびに音声通話中継方法
WO2001071989A1 (fr) Systeme de fourniture d'informations
JP2011091661A (ja) 電話装置および電話方法
JP4677350B2 (ja) 呼制御信号転送装置、呼制御信号転送方法および呼制御信号転送プログラム
JP4679483B2 (ja) Ip通話端末切り替え装置及び方法
CN102077551B (zh) 自动配置的互联网协议电话
JP2013211686A (ja) サーバ装置、プログラム及び情報処理方法
JP2007150711A (ja) 電話番号管理装置及び電話番号変換方法
JP2008236470A (ja) Ip電話端末及びip電話システム
JP5282439B2 (ja) 電話アダプタ、電話端末および呼接続方法
JP2007150841A (ja) 電話交換システム及び電話交換方法及び電話交換プログラム
JP4094316B2 (ja) インターネット電話方式および方法
JP2005317001A (ja) プレゼンスサーバ、セッション制御サーバ、パケット中継システム
JP2009049559A (ja) メッセージ中継装置、メッセージ中継システム及びプログラム
JP2010088094A (ja) セッション−イニシエーション−プロトコル・プロキシ・データベースの同期化
JP5299350B2 (ja) コールセンタシステムおよびコールセンタシステムの制御方法
JP5266860B2 (ja) 呼制御端末、電話装置および着信に対する処理方法
JP2006074565A (ja) 構内電話システム及びその内線電話機収容方法

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20140314

RD04 Notification of resignation of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7424

Effective date: 20140902

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20141128

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20141202

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20150324