以下、本発明の一実施態様について、図面を参照しながら説明する。
<概要>
図1は、予約管理通話システムのシステム構成を示すシステム図である。
図1に示すように、当該予約管理通話システムは、複数のサーバ(情報処理装置)100a、100b、100cと、複数のユーザ端末200a、200bを含む。サーバ100aは、IPネットワーク400a(インターネット、LAN、通信事業者の独自IP網などのネットワーク)を介してユーザ端末200a、200bと接続される。また、サーバ100bは、電話網400b(公衆交換電話網(PSTN(Public Switch Telephone Network)、ISDN、IP電話網、携帯電話網などの一般的な電話網)を介してユーザ端末200a、200bと接続される。
なお、図1において、説明を簡単にするために、ユーザの端末は2台だけ示してあるが、これ以上存在してもよいことは言うまでもない。
一例として、サーバ100a、100bは、Webサーバおよびアプリケーションサーバとしての役目も担い、Webサーバとしてはルータ、ファイアウォール等を介して外部ネットワークとの接続を許容する非武装地帯(DMZ(DeMilitarized Zone))に設置してもよい。一方、サーバ100cは、データベースサーバとしての役目も担い、外部ネットワークとの接続は許容させない構成として、他のサーバより高いアクセス権限レベルを含むセキュリティレベルを確保してもよい。なお、以下においては、特に区別の必要がない場合に、サーバ100a、100b、100cを総称して、サーバ100と記載する。サーバ100の各機能部においても同様に記載する。
ここで、「アクセス権限レベル」とは、ネットワーク、サーバ、データベースの利用アカウントに与えられた、ネットワーク、サーバ、データベースに係るハードディスクなどに保存されたソフトウェアに係るファイルおよびフォルダ、接続された周辺機器などを利用するための権限の度合いをいう。一例として、「参照(読み取り)」、「登録」、「変更(書き込み)」、「削除」、「実行」といったアクセスの種類を組み合わせて設定することができる。具体的には、例えば、機密性の高いファイルに対して、当該権限レベルを「高」と設定し、SYSTEMアカウントや管理者(Administrator)アカウントなどの限られたアカウントのみがアクセス(参照、登録、変更など)することを許容し、その他のアカウントはアクセスすることを禁じるよう設定することができる。
サーバ100は、具体的には、プロセッサによって装置全体が制御されている情報処理装置である。当該プロセッサには、バスを介して、RAMおよびハードディスクドライブ等の記憶装置、入出力インタフェース、通信インタフェース等が接続され、構成されている。当該記憶装置には、制御部110における各種処理に必要となる各種処理データやプログラムを記憶する機能を有している。当該入出力インタフェースには、ディスプレイ、キーボード、マウス、外付け記憶媒体等の入出力装置が接続されている。当該通信インタフェースには、IPネットワーク400a、電話網400b等が接続されている。
サーバ100aは、一例として、個人間の予約情報を管理するサーバとして設けてもよい。具体的には、例えば、サーバ100aは、IPネットワーク400aを介して、ユーザ端末200から予約の登録を受け付け、受け付けた予約情報をデータベース等に記憶することで登録する。サーバ100aは、当該データベースを自己の情報処理装置内の記憶装置に設けてもよいし、サーバ100cをデータベースサーバ(以下、「DBサーバ」という)として設けて、当該DBサーバに当該データベースを設けてもよい。サーバ100aは、例えば、ユーザ端末200からの要求に応じて、登録する予約情報を参照させ、また、更新または削除処理してもよい。
ここで、「予約情報」とは、CtoCサービスにおいて、当該サービスを利用するユーザ個人間での予約に関する情報であり、例えば、個人の先生が開催する教室に対して、生徒が申し込む参加予約に関する予約時間、予約名等の情報である。当該予約情報の詳細については、後述の<データ>における図3(a)の説明で説明する。
サーバ100bは、一例として、電話機(電話番号入力や通話を行うための端末機器をいう)からの呼接続を制御(発呼、着呼および終呼の一連の通話制御)する呼制御サーバとして設けてもよい。具体的には、サーバ100bは、交換機としての機能(アナログの電気信号をデジタル信号に、デジタル信号を復号してアナログ信号に変換する等のデータ列と音声信号の相互変換を行う等、電話番号から相手を選択し、接続し通話するための機能)を備えてもよく、電話網400bを介して、別の交換機との間の通話に関する音声を始めとする情報伝送を実現し、発信者端末から呼接続要求を受信すると、当該呼接続要求を着信者端末に転送することで、呼を接続し、発信者端末と着信者端末との間で通話を開始させる。
サーバ100bは、別の例として、SIP(Session Initiation Protocol)サーバとして、電話網400bと接続し、IP電話サービスの管理および制御を行ってもよい。
また、別の一例として、サーバ100a、100b、100cを一台のサーバやクラウドサーバで構成してもよい。
ユーザ端末200a、200bの具体的な機器は、図示のように、スマートフォンに限定されず、例えば、携帯端末、タブレット端末、パーソナルコンピュータ、その他の電子機器であってもよい。なお、以下においては、特に区別の必要がない場合に、ユーザ端末を総称して、ユーザ端末200と記載する。
本発明に係る予約管理通話システムは、一例として、発信者端末から送信された仮電話番号を含む呼接続要求(発呼)をサーバ100bが受信すると、当該仮電話番号に対応した有効な紐付けデータが存在するか否かの判定を、サーバ100aに問い合わせ要求を送信する。
ここで、「紐付けデータ」とは、ユーザ間の予約情報とユーザ個人の個人情報とを紐付けたデータをいう。当該紐付けデータの詳細について、後述の<データ>における図3(c)の説明で説明する。
本発明に係る予約管理通話システムは、サーバ100aが当該問合せに対し、有効な紐付けデータが存在するか否かの判定結果および有効な紐付けデータが存在する場合には、着信者端末の実電話番号を含む応答データをサーバ100bに送信する。サーバ100bは、ユーザ端末200からの呼接続要求に発信者端末の実電話番号が含まれている場合には、発信者の実電話番号を仮電話番号に交換し、ユーザ端末200からの呼接続要求に発信者端末の実電話番号が含まれていない場合には発信者の電話番号として仮電話番号を設定し、呼接続要求を着信者端末に転送する。着信者端末は当該呼接続要求を受信する(着呼)。これにより、着信者端末の発信元の電話番号表示には、発信者の実電話番号ではなく、仮電話番号が表示されるため、発信者の個人情報の機密性を確保できる。
ここで、「個人情報」とは、CtoCサービスにおいて、当該サービスを利用するユーザ個人の情報であり、例えば、ユーザの氏名、住所、実電話番号等の情報をいう。当該個人情報の詳細については、後述の<データ>における図3(b)の説明で説明する。
ここで、「仮電話番号」とは、電話網400bにおいて、固定電話の加入者線、携帯電話などの移動体通信、IP電話の特定サービスアカウントであり、例えばユーザ端末200間で呼接続をするために用いられる、予め用意され一時的に使用可能なサーバ100aから払い出される有限の数値配列による識別子(電話番号)をいう。当該数値配列は、当該特定サービスや地域エリアに応じて、例えば、03、050、0120で始まる3種類の配列グループに分かれ決定してもよい。また、仮電話番号に予め用意された電話番号を用いることで、例えば、割り当てられる仮電話番号が特定されることから、着信者のユーザに予め仮電話番号を知らせることができる。このような構成によれば、着信者のユーザは、全く知らない電話番号による着信に対しては不信感を生じることがあるが、予め知っている仮電話番号による着信に対しては安心して電話をとることができる。
本発明に係る予約管理通話システムは、一例として、ユーザ個人(先生)が開催する教室と当該教室に参加したい他のユーザ(生徒)とを仲介するサービスに用いてもよい。具体的には、例えば、図4(a)に示すように、先生のユーザ端末200aの料理教室の予約管理ページ画面例に表示される入力表示(生徒ユーザごとの「TEL」ボタン表示)において、生徒bbbbの「TEL」ボタンを指定(タップ)すると、先生のユーザ端末200aの制御部210の制御に従い、送信部223から通信接続要求がサーバ100に送信される。
本例において、サーバ100は、当該通信接続要求を受信すると、通信接続要求に含まれる予約識別番号に基づき、該当する予約情報を検索し、取得する。サーバ100は、当該取得した予約情報に基づき、個人識別番号を取得し、取得した個人識別番号に基づき、着信者および着信者の実電話番号を取得する。サーバ100は、取得したこれらの情報から紐付けデータを生成し、例えば当該紐付けデータに有効期間(本例では、画面例で表示されているとおり予約時間が「2016.10.1(月)11:00〜14:30」であるため、有効期間を「2016.10.1(月)9:00〜21:00」とする)を設定し、仮電話番号を払い出す。サーバ100は、先生のユーザ端末200aに当該仮電話番号を通知すると、先生のユーザ端末200aは、図4(b)に示すように、「bbbbさんに電話をかけます。よろしければ発信ボタンを押下してください。」とのテキストメッセージと併せて、呼接続要求を行う入力表示(電話の受話器を表す図形を表示するボタン)に係るポップアップ表示を表示する。
本例において、ユーザ端末200aから当該ポップアップ表示の入力表示を指定(タップ)すると、サーバ100に仮電話番号を含む呼接続要求が送信される。サーバ100は呼接続要求を受信すると、当該呼接続要求に含まれる仮電話番号に対応する有効な紐付けデータが存在するか否かを判定する。サーバ100は、本例においては、有効期間「2016.10.1(月)9:00〜21:00」であり、一方、呼接続要求の入力表示を指定したのが画面例で記すように「(2016.10.1(月))8:00 PM」である場合、有効期間内であるため、有効な紐付けデータが存在すると判定し、ユーザ端末200bに呼接続要求を転送し、呼接続を行うことができる。
本発明に係る予約管理通話システムは、当該例において、このような構成とすることで、ユーザ間の予約における連絡において、発信者および着信者のユーザ双方において実電話番号を開示することなく連絡を取ることができ、かつ、予め用意された仮電話番号を一時的な使用に限定し、使い回すことができるため、セキュリティ性が高く、かつ、効率的なCtoCサービスに係るユーザ間の予約管理可能な予約管理通話システムを提供することができる。
なお、本発明に係る予約管理通話システムは、当該例において、ユーザ個人の先生が開催する教室の仲介サービスを例としたが、当該例に限定せず、例えば、ユーザ個人間のオークションおよびフリーマーケット、ユーザ個人間の婚活、お見合い等の出会いの仲介サービス、SNS(Social Networking Service)サイト等個人情報の保護が重要となるCtoCサービスであればどの様なサービスにでも本発明に係る予約管理通話システムを適用することができる。
<構成>
以下、サーバ100、ユーザ端末200の構成について説明する。図2は、サーバ100、ユーザ端末200の機能構成を示すブロック図である。図2に示すように、サーバ100は、制御部110、通信部120と、記憶部130、呼処理部140を含んで構成される。
制御部110aは、検索部111a、生成部112a、設定部113a、判定部114aを備え、サーバ100aの各機能部を制御する機能を有するプロセッサである。一例として、制御部110aは、通信部120aから伝達されたユーザ端末200または他のサーバ100からの処理要求に係るメッセージ(以下、「処理要求メッセージ」という、他の各種要求に係るメッセージおよび各種応答に係るメッセージについても同様に表記する)に基づいて、記憶部130aに記憶されている予約情報等の各種情報を参照、更新または削除処理し、当該処理結果をユーザ端末200または他のサーバ100において表示する表示情報を生成してもよい。
制御部110b、制御部110cについても同様に、サーバ100b、サーバ100cの各機能部を制御する機能を有するプロセッサであり、通信部120b、120cから伝達されたユーザ端末200または他のサーバ100からの処理要求メッセージに基づいて、記憶部130b、記憶部130cに記憶されている記憶情報等の各種情報を参照、更新または削除処理し、当該処理結果をユーザ端末200または他のサーバ100において表示する表示情報を生成してもよい。
また、制御部110aは、図4に示すように、ユーザ端末200の表示部240において、予約管理ページとして、ユーザの予約相手(別のユーザ)を一覧で表示したり、一覧で表示された予約相手に対する呼接続要求または通信接続要求のための操作入力表示を表示したり、当該入力の結果表示を表示する表示情報を生成する。制御部110aは、生成した表示情報を、ユーザ端末200aに送信するよう、通信部120aに伝達する。
検索部111は、通信部120から伝達された検索要求メッセージに基づいて、記憶部130が記憶する情報から、当該メッセージに含まれる検索キーに一致するキー情報を含む情報を検索する。
検索部111aは、予約識別番号に基づき、個人情報および予約情報を参照して、発信者および着信者の実電話番号を検索する。具体的には、検索部111aは、通信部120aから伝達された予約識別番号を含む通信接続要求メッセージに含まれるデータが伝達されると、記憶部130aに記憶する予約情報のうち、当該データに含まれる予約識別番号を検索キーとして、当該予約識別番号が一致する予約情報を検索する。
ここで、「予約識別番号」とは、ユーザ間の予約情報を一意に識別可能な番号であり、例えば、図3(a)に示す予約情報レコードの主キーとし、各レコードを一意に識別することができる番号である。以下、予約識別番号を適宜「予約ID」と略す。
検索部111aは、当該検索の結果、予約IDが一致する予約情報が抽出された場合は、当該予約情報に含まれる発信者であるユーザ(以下、「ユーザ1」という)または着信者(以下、「ユーザ2」という)のそれぞれの個人識別番号(以下、適宜「ユーザ1ID」、「ユーザ2ID」と略す)を取得する。
ここで、「個人識別番号」とは、ユーザ個人を一意に識別可能な番号であり、図3(b)に示す個人情報レコードの主キーとして各レコードを一意に識別することができる番号である。以下、個人識別番号を適宜「ユーザID」と略す。
検索部111aは、個人情報を参照して、発信者および着信者の実電話番号を検索する。検索部111aは、一例として、個人情報記憶部131cに記憶する個人情報を参照して、取得した個人識別番号(ユーザ1ID、ユーザ2ID)に紐づく発信者および着信者の実電話番号を抽出するよう、検索する。検索部111aは、具体的には、例えば、取得した個人識別番号を検索キーとして、サーバ100cに対して当該個人識別番号を含む個人情報検索要求メッセージを送るよう、通信部120aに当該検索要求メッセージを伝達し、通信部120aからサーバ100cに当該検索要求メッセージを送信する。
サーバ100cは、当該検索要求メッセージを通信部120cで受信すると、制御部110cの制御に従い、記憶部130cの個人情報記憶部131cに記憶される個人情報のうち、当該検索要求メッセージに含まれる発信者および着信者の個人識別番号(ユーザ1ID、ユーザ2ID)を検索キーとして、当該ユーザIDが一致する個人情報を検索する。
サーバ100cは、当該検索の結果、ユーザIDが一致する個人情報を発信者と着信者の分それぞれ抽出した場合は、当該個人情報を含む検索結果情報を、サーバ100aの検索要求メッセージに応答するよう、通信部120cからサーバ100aに送信する。サーバ100aが当該検索結果情報を含む応答メッセージを受信すると、通信部120aは、制御部110aの制御に従い、検索部111cに当該個人情報の検索結果情報を伝達する。検索部111cは、当該個人情報の検索結果情報を伝達されると、抽出した予約情報と伝達された個人情報を生成部112aに伝達する。
また、検索部111aは、予約IDが一致する予約情報またはユーザIDが一致する個人情報の少なくともいずれか一つを抽出、取得できなかった場合は、検索エラーとして、当該エラー情報を制御部110aに伝達し、制御部110aは、エラーが発生した旨を通知するエラー表示情報を生成し、ユーザ端末200に送信するよう、通信部120aに伝達してもよい。このとき、ユーザ端末200aにおいて、当該エラー表示情報を受信すると、例えば、呼接続要求の入力表示(例えば、図4(b)のポップアップ表示)を表示しないよう制御したり、当該エラーが発生し、通信接続できない旨を伝えるテキストメッセージを表示したりしてもよい。
また、サーバ100cは、ユーザIDが一致する個人情報を抽出できなかった場合は、検索エラーとして、当該エラー情報をサーバ100aに伝達し、サーバ100aは、当該エラー情報が伝達されると、制御部110aにおいて、エラーが発生した旨と通知するエラー表示情報を生成し、ユーザ端末200に送信するよう、通信部120に伝達してもよい。このとき、ユーザ端末200aにおいて、当該エラー表示情報を受信すると、例えば、呼接続要求の入力表示(例えば、図4(b)のポップアップ表示)を表示しないよう制御したり、当該エラーが発生し、通信接続できない旨を伝えるテキストメッセージを表示したりしてもよい。
生成部112aは、各機能部の要求を受け付けて、各種データを生成する機能を有する。
生成部112aは、予約情報および個人情報の検索の結果に基づいて、予約識別番号と発信者および着信者の実電話番号との紐付けデータを生成する。具体的には、例えば、生成部112aは、検索部111aから検索結果情報として予約情報および個人情報を伝達されると、図3(c)に示すように、予約情報と個人情報とを紐付ける紐付けデータを生成する。生成部112aは、生成した紐付けデータを記憶部130aの予約記憶部131aに記憶してもよいし、予約記憶部131aとは異なる記憶領域に、例えば、テンポラリファイルとして、一時的に記憶してもよい。生成部112aは、紐付けデータを生成すると、紐付けデータ自体または紐付けデータが記憶される場所を含む生成結果を設定部113aに伝達する。
生成部112aは、一例として、通信接続要求を受信した日時が所定の時間帯であった場合、紐付けデータを生成しなくてもよい。生成部112aは、具体的には、ユーザ端末200からサーバ100aが通信接続要求メッセージを受信した時に、制御部110の制御に従い、受信部122が当該受信日時を含めて検索部111aを経由して、生成部112aに伝達する。
生成部112aは、当該受信日時が所定の時間帯、例えば、深夜時間帯(例えば、21時〜3時の間)や早朝時間帯(例えば、3時〜8時の間)には、紐付けデータを生成せず、通信接続要求メッセージの応答として通信接続エラー情報をユーザ端末200に送信するよう、送信部122aを経由してユーザ端末200に送信してもよい。このような構成によれば、発信者のユーザから仮に、一般的に電話を受けたくない時間帯に通信接続要求があっても、紐付けデータを生成せずに済むため、無駄な紐付けデータが発生することを抑止することができ、また、着信相手のユーザにとっても電話を受けられない時間帯に着呼しなくてよいので、ユーザにとって利便性の高い予約管理通話システムを提供することができる。
生成部112aは、一例として、予約識別番号および個人識別番号が互いに同一である予約情報が所定数未満である場合、紐付けデータを生成しなくてもよい。生成部112aは、具体的には、例えば、紐付けデータを予約IDとユーザIDを複合する検索キーとして、当該検索キーが一致するレコードを抽出し、当該抽出したレコード数をカウントし、当該カウント数が予め設定する所定数(例えば、1、10、20、30など)未満である場合は、紐付データを生成しない。このような構成によれば、予約実績のあまりないユーザ間での呼接続を行わないことができ、換言すれば、相手との信頼関係ができる程度の予約実績があるユーザに限定して呼接続を行うができ、利便性の高い予約管理通話システムを提供することができる。
生成部112aは、一例として、周期的に(例えば、1時間毎、半日毎(12時間毎)、1日毎など)、予約情報の予約時間を参照して、現在時刻(例えば、システム日付)が予約時間を基準とした所定の期間内(例えば、予約日の当日や予約時間前後12時間など)である判定した場合は、紐付けデータを生成してもよい。このような構成とすることで、ユーザが一時的に直接連絡を取りたい場面に向けて、予め紐付けデータを生成することができるため、円滑に仮電話番号を通知し、呼接続に遷移することができ、効率性の高い予約管理通話システムを提供することができる。
設定部113aは、生成部112aが生成した各種データに対して、付加すべき情報を払い出し、また、付加すべき情報を各種データに付加するよう設定する機能を有する。
設定部113aは、具体的には、例えば、紐付けデータに対し、有効か否かを識別する有効識別情報を設定し、予め用意され一時的に使用可能な仮電話番号を払い出す。また、設定部113aは、当該仮電話番号を、発信者のユーザ端末200aから受信した通信接続要求の応答メッセージに含め、ユーザ端末200aに送信するよう、送信部122aに伝達する。また、設定部113aは、当該応答メッセージとして、通信接続要求に対する結果を表示する表示情報を含めてもよい。このような構成によれば、有効である紐付けデータおよび当該紐付けデータに払い出された仮電話番号は、当該識別情報によって使用期間を制御することができ、一時的に直接連絡を取ることが必要な場合に限定して、ユーザ端末間の通話を確立することができる。また、このような構成によれば、当該仮電話番号を通信接続要求都度発行せずとも、予め用意された仮電話番号を使いまわすことができるため、番号の枯渇を抑制し、効率良く一時的な通話を確立することができる。
ここで、「有効識別情報」とは、生成された紐付けデータが有効か否かを識別するための情報であり、具体的には、例えば、有効期間(ある日時から、他の日時に至るまでの間をいい、これらの日時については、日付と時刻を示すものであれば、どのような形で表現されてもよく、例えば、年=YYYY、月=MM、日=DD、時=hh、分=mm、秒=ssとした、基本表記YYYYMMDDThhmmssまたは、拡張表記YYYY-MM-DDThh:mm:ss等を用いることが考えられる。)、有効期限(前もって決められた時期(日時)をいい、表現方法は、上述の有効期間と同様である)、単に有効か否かを示すフラグ(例えば、有効であれば「1」を設定し、有効でなければ「0」を設定する)等といった情報をいう。
設定部113aは、例えば、有効識別情報が有効期間であった場合は、紐付けデータの予約日時を参照して、当該予約日時を基準に、所定の期間を設定する。当該所定の期間、また、どの様に付加するかは、本発明に係る予約管理通話システムを用いるサービスによって適宜設定すればよい。例えば、個人の先生が開催する教室の仲介サービスの場合は、開催日当日前後に緊急で生徒個人と直接連絡を取りたいケースが考えられるため、予約日時の当日中を有効期間として設定することが考えられる。また、別の例として、個人間の婚活、お見合い等の出会いの仲介サービスにおいては、直接出会い食事等をする予約をしていた場合には、待ち合わせのために直接連絡を取りたいケースが考えられるため、予約日時の前後3時間を有効期間として設定することが考えられる。
判定部114aは、各サーバ100、各ユーザ端末200、各機能部からの要求に対し、有効なデータが存在するか否かを判定する機能を有する。
判定部114aは、呼接続要求を受信した場合、当該呼接続要求に含まれる仮電話番号に対応した有効な紐付けデータが存在するか否かを判定する。判定部114aは、具体的には、サーバ100bが呼接続要求を受信した場合、サーバ100bから伝達される有効判定要求メッセージに対し、紐付けデータが記憶されるエリア(例えば、記憶部130)を参照して、例えば、呼接続要求に含まれる仮電話番号を検索キーとして、当該仮電話番号が一致する仮電話番号を含む紐付けデータを検索する。また、一例として、呼接続要求に予約識別番号が含まれていた場合は、予約識別番号を検索キーとしてもよい。
判定部114aは、当該検索の結果、該当する紐付けデータが抽出された場合は、有効識別情報を参照して、当該抽出された紐付けデータが有効であるか否かを判定する。判定部114aは、例えば、有効識別情報が有効期間であった場合、呼接続要求を受信した日時またはサーバ100aのシステム日付が当該有効期間内であったときに紐付けデータが有効であるとして、有効な紐付けデータが存在すると判定する。このような構成によれば、有効期間を過ぎた紐付けデータおよび当該紐付けデータに払い出された仮電話番号は使用ができなくなり、一時的に直接連絡を取ることが必要な期間に限定して、ユーザ端末間の通話を確立することができる。また、このような構成によれば、当該仮電話番号を通信接続要求都度発行せずとも、予め用意された仮電話番号を使いまわすことができるため、番号の枯渇を抑制し、効率良く一時的な通話を確立することができる。
判定部114aは、仮電話番号が一致する紐付けデータが存在しない(抽出できない)場合、または、仮電話番号が一致する紐付けデータを抽出しても、有効識別情報を参照して有効でないと判定した場合は、有効な紐付けデータが存在しないと判定する。
判定部114aは、有効な紐付けデータが存在すると判定した場合、サーバ100bの有効判定要求メッセージへの応答として、当該有効な紐付けデータに紐付けられた着信者の実電話番号にサーバ100bの呼送信部142bが呼接続要求を転送するよう、サーバ100bに当該紐付けデータを含む判定結果情報を伝達する。
一方、判定部114aは、有効な紐付けデータが存在しないと判定した場合、サーバ100bの有効判定要求メッセージへの応答として、呼接続要求に含まれる仮電話番号に紐づく発信者の実電話番号に呼送信部142bが着呼エラー情報を送信するよう、サーバ100aに当該呼接続エラー情報を含む判定結果情報を伝達する。
判定部114aは、一例として、同一ユーザ間の呼接続の回数が所定数を超えた場合、紐付けデータが有効でないと判定してもよい。具体的には、例えば、紐付けデータは呼接続要求を転送して、発信者と着信者とを呼接続した回数(以下、「接続回数」という)を含んでもよい。
呼処理部140bは、呼接続要求を転送する都度、接続回数を1増やし、呼処理部140bは、当該接続回数が所定数を超えた場合、有効な紐付けデータが存在しないとして呼接続を行わないとしてもよい。
一例として、呼送信部142bは、呼接続要求を転送する都度、当該接続回数を1増やし(インクリメント)、判定部114aは、当該接続回数が所定数を超えた場合、紐付けデータが有効でないと判定してもよい。具体的には、例えば、呼送信部142bは、呼接続要求を転送後、接続回数更新要求メッセージをサーバ100aに送信する。サーバ100aの受信部121aは、当該接続回数更新要求メッセージを受信すると、当該接続回数更新要求メッセージに係るデータを設定部に113aに伝達し、当該接続回数更新要求メッセージに係る対象の紐付けデータの接続回数を1増やすよう、更新する。
判定部114aは、発信者のユーザ端末200aから呼接続要求を受信して、紐付けデータが有効か否かを判定する際に、有効識別情報に基づき有効であると判定した紐付けデータの接続回数を参照し、所定数(例えば、10、50、100等の回数)を超えた場合は、当該判定を覆し、当該紐付けデータが有効でないと判定してもよい。このような構成とすることにより、例えば、あくまで一時的に直接連絡を取るための手段として、払い出される仮電話番号による呼接続要求を、必要以上に行うことを抑止し、利便性の高い予約管理通話システムを提供することができる。
判定部114aは、一例として、発信者のユーザ端末200bの位置情報に基づいて、発信者が所定の範囲内に居ないと判定した場合、紐付けデータを有効でないと判定してもよい。
具体的には、例えば、呼送信部224は、呼接続要求をサーバ100に送信する際に、当該呼接続要求に発信者のユーザ端末200aに保有される位置情報(GPSデータ等)を取得して、当該呼接続要求に含めてもよい。
呼処理部140bは、当該呼接続要求を受信した際、当該位置情報に基づいて、発信者が所定の範囲内に居ないと判定した場合、有効な紐付けデータが存在しないとして呼接続を行わないとしてもよい。
具体的には、例えば、判定部114aは、有効な紐付けデータが存在するか否かを判定する際に、当該位置情報に基づいて、発信者が所定の範囲内(例えば、個人情報に登録される自宅住所や教室の住所等から半径10キロメートル以内等)に居ないと判定した場合は、紐付けデータが有効でない、すなわち、有効な紐付けデータは存在しないと判定してもよい。このような構成をとることにより、海外からの発信者のユーザと偽って送信される不正な呼接続要求(不正アクセス)や発信者のユーザ本人であっても直接連絡を取る必要性のない無用な呼接続要求を破棄することができ、利便性の高い予約管理通話システムを提供することができる。
通信部120aは、受信部121aおよび送信部122aを備え、制御部110の制御に従い、IPネットワーク400aを介して、ユーザ端末200との通信(各種メッセージの送受信等)を実行する機能を有する。また、通信部120aは、制御部110aの制御に従い、LANを介して、他のサーバ100との通信を実行する機能を有する。当該通信は、有線、無線のいずれでもよく、また、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。ここで、「メッセージ」とは、テキストに限らず、画像、音声、動画等の各種データが含まれる。
通信部120cは、通信部120aと同じく、受信部121および送信部122(不図示)を備え、制御部110の制御に従い、IPネットワーク400を介して、ユーザ端末200との通信(各種データを含むメッセージの送受信等)を実行する機能を有してもよい。また、120cは、通信部120aと同じく、制御部110cの制御に従い、LANを介して、他のサーバ100との通信を実行する機能を有する。
また、通信部120bは、通信部120aと同じく、受信部121および送信部122(不図示)を備え、110cの制御に従い、LANを介して、他のサーバ100との通信を実行する機能を有する。
受信部121aは、制御部110aの制御に従い、IPネットワーク400aを介して、各ユーザ端末200から各種メッセージを受信し、当該メッセージに含まれるデータを各機能部に伝達する機能を有する。また、受信部121aは、制御部110の制御に従い、LANを介して、他のサーバ100b、サーバ100cから各種メッセージを受信し、当該メッセージに含まれるデータを、各機能部に伝達する機能を有する。
具体的には、例えば、受信部121aは、ユーザ端末200から通信接続要求メッセージを受信すると、制御部110の制御に従い、当該メッセージに含まれるデータを検索部111aに伝達する。また、受信部121は、サーバ100bから呼接続要求に対する有効判定要求メッセージを受信すると、制御部110の制御に従い、判定部114aに当該メッセージに含まれるデータを伝達する。また、受信部121aは、通信接続要求の受信時に、受信した日時情報を通信接続要求日時として当該要求メッセージに係るデータに付加してから検索部111aに伝達してもよい。
また、受信部121aは、制御部110aの制御に従い、一つの予約に対して通信接続要求または有効判定要求が要求された場合、当該要求をメッセージ・キュー(Message Queue)等に保存して、先に受信した要求が処理されるまで、それ以降に受信した要求を保持してもよい。これにより、一つの予約に対して複数の要求が要求された場合でも整合を図って、通信の接続処理、判定処理を行うことができる。
送信部122aは、制御部110aの制御に従い、IPネットワーク400aを介して、各機能部から伝達された表示情報等の各種情報が含まれるメッセージを、各ユーザ端末200に送信する機能を有する。また、送信部122aは、制御部110の制御に従って、LANを介して、各機能部から伝達されたデータが含まれるメッセージを、他のサーバb、サーバcに送信する機能を有する。
送信部122aは、具体的には、例えば、発信者のユーザ端末200aに、設定部113aから伝達された仮電話番号を含む通信接続要求の応答メッセージを送信する。
記憶部130は、サーバ100が動作するうえで必要とする各種プログラム、データおよびパラメータを記憶する機能を有する。具体的には、例えば、記憶部130は、予約情報および個人情報等を記憶する。記憶部130は、具体的には、例えば、ROMおよびRAMで構成される主記憶装置、不揮発性メモリ等で構成される補助記憶装置、HDD(Hard Disc Drive)、SSD(Solid State Drive)、フラッシュメモリ等各種の記録媒体によって構成される。
記憶部130aは、一例として、予約記憶部131aを含んで構成してもよい。
予約記憶部131aは、予約を一意に識別可能な予約識別番号と個人識別番号との紐付けを含む予約情報を記憶する。また、予約記憶部131aは、予約を一意に識別可能な予約識別番号と個人識別番号との紐付けを含む予約情報を個人情報記憶部131cとはアクセス権限レベルが異なる記憶領域に記憶してもよい。
記憶部130aは、一例として、個人を一意に識別可能な個人識別番号と当該個人が所有する端末毎に割り当てられる実電話番号との紐付けを含む個人情報を記憶する個人情報記憶部(不図示)を予約記憶部131aと異なる記憶領域に含んで構成してもよい。予約記憶部131aと当該個人情報記憶部を異なる記憶領域に含んで構成する例として、例えば、物理的には異なる記憶装置、記憶媒体、ファイルに記憶してもよいし、論理的に異なるデータベース、テーブルに記憶してもよい。このような構成とすることで、予約情報と個人情報に対し、これらの情報にアクセスするアカウント、処理タスク等からのアクセス権のレベルを変えることができる。これにより、例えば、予約情報は比較的機密性を低く、可用性を高くして、一方、個人情報は比較的機密性を高く、可用性を低くすることで、セキュリティ性の高い予約管理通話システムを実現することができる。
記憶部130cは、一例として、個人を一意に識別可能な個人識別番号と当該個人が所有する端末毎に割り当てられる実電話番号との紐付けを含む個人情報を記憶する個人情報記憶部131cを含んで構成してもよい。
呼処理部140bは、制御部110bの制御に従い、電話網400bを介して、発信者のユーザ端末200aを含む各種電話機から送信される呼接続要求を受信して、当該呼接続要求を着信者のユーザ端末200bを含む他の各種電話機に転送することで、呼接続を行い発信者と着信者の電話機間で呼接続を確立する。また、呼処理部140bは、確立した呼接続に対し、ユーザ端末200から呼切断要求を受信すると、通話状態にあるユーザ端末200a、200bの呼切断を行う機能を有する。
呼処理部140bは、具体的には、例えば、発信者のユーザ端末200aから仮電話番号を含む呼接続要求を受信すると、当該仮電話番号に対応する有効な紐付けデータが存在する場合には呼接続を行う。
呼処理部140bは、呼受信部141bおよび呼送信部142bを含んで構成してもよい。呼処理部140bは、一例として、呼接続要求の受信日時が有効期間内であった場合に、有効な紐付けデータが存在するとして呼接続を行ってもよい。
呼受信部141bは、発信者の端末から仮電話番号を含む呼接続要求を受信する。呼受信部141bは、具体的には、例えば、電話網400bを介して、発信者のユーザ端末200aから呼接続要求先の電話番号を仮電話番号に設定した呼接続要求を受信すると、制御部110bの制御に従い、サーバ100aに当該呼接続要求に対応する有効な紐付けデータが存在するか否かを判定させるために、当該有効判定要求メッセージをサーバ100aの通信部120bに伝達する。
通信部120bは、サーバ100aに当該有効判定要求メッセージを送信する。また、通信部120bは、当該有効判定要求メッセージの応答として、有効な紐付けデータまたは呼接続エラー情報等の判定結果情報を含む応答メッセージを受信すると、呼送信部142bに当該判定結果情報を伝達する。
呼送信部142bは、当該判定結果情報に有効な紐付けデータが存在した結果や当該有効な紐付けデータが含まれていた場合は、制御部110bの制御に従い、当該有効な紐付けデータに設定された着信者の実電話番号に呼接続要求を転送するよう、呼接続要求を着信者のユーザ端末200bに送信する。
呼送信部142bは、当該判定結果情報に有効な紐付けデータが存在しなかった結果や呼接続エラー情報が含まれていた場合には、発信者の実電話番号に呼接続ができなかった旨を伝える音声メッセージを送信してもよい。
呼送信部142bは、一例として、呼接続要求を転送後、有効期間を所定の期間延長してもよい。呼送信部142bは、具体的には、例えば、呼接続要求を着信者のユーザ端末200bに転送した後、有効期間を所定の期間延長するよう、有効期間延長要求メッセージをサーバ100aに送信する。サーバ100aの受信部121aが当該延長要求メッセージを受信すると、設定部113に当該要求メッセージに含まれるデータを伝達し、設定部113は、記憶されている紐付けデータの有効期間または有効期限を、2〜3時間、半日(12時間)、1日(24時間)、1週間分等、延長する。このような構成をとることにより、特定のユーザ間で一度呼接続があった(直接連絡を取った)場合、近いうちに、何度か再度呼接続要求を行う(再度直接連絡を取りたい)ケースが多いが、このようなケースにおいて、要求都度、紐付けデータを再度生成し、別の仮電話番号を払い出さなくとも、既存の紐付けデータおよび当該紐付けデータに払い出された仮電話番号を使用することができ、効率のよくユーザ間の呼接続を行い、通話を確立することができる。
以上が、サーバ100の構成である。
次にユーザ端末200の構成について説明する。
図2に示すように、ユーザ端末200は、制御部210、通信部220、記憶部230、表示部240を含んで構成される。これらの機能部は、既存のユーザ端末にインストール、アンインストール可能なアプリケーションプログラム等で実現されてもよい。
制御部210は、ユーザ端末200の各機能部を制御する機能を有するプロセッサである。一例として、制御部210は、通信部220から伝達された他のユーザ端末200またはサーバ100からの処理要求メッセージに基づいて、記憶部230に記憶されている各種情報を参照、更新または削除処理する。また、制御部210は、当該処理結果を表示部240において表示する表示情報を生成してもよい。
通信部220は、受信部221および送信部223を備え、IPネットワーク400aを介して、サーバ100との通信(各種メッセージの送受信等)または別のユーザ端末200との通信を実行する機能を有する。当該通信は、有線、無線のいずれでもよく、また、互いの通信が実行できるのであれば、どのような通信プロトコルを用いてもよい。ここで、「メッセージ」とは、テキストに限らず、画像、音声、動画等の様々なデータが含まれる。
受信部221は、制御部210の制御に従い、IPネットワーク400aを介して、サーバ100または他のユーザ端末200からメッセージを受信し、当該メッセージに含まれるデータを各機能部に伝達する機能を有する。
受信部221は、具体的には、例えば、サーバ100から表示情報を含むメッセージ、例えば、ユーザ端末200からの各種処理要求に対する結果の応答メッセージ等を受信する。受信部221は、例えば、サーバ100に送信した通信接続要求メッセージに対する結果(仮電話番号、当該結果を表示する表示情報、エラー情報等)を含む応答メッセージをサーバ100から受信する。
送信部223は、制御部210の制御に従って、IPネットワーク400aを介して、サーバ100または他のユーザ端末200に各種メッセージを送信する機能を有する。具体的には、例えば、送信部223は、通信接続要求メッセージの各種処理要求メッセージ等をサーバ100に送信する。
呼受信部222は、制御部210の制御に従い、電話網400bを介して、他のユーザ端末200からサーバ100を経由して送信される呼接続要求を受信して、呼接続を行う機能を有する。また、呼受信部222は、制御部210の制御に従い、電話網400bを介して他のユーザ端末200からサーバ100を経由して送信される呼切断要求を受信して、呼切断を行う機能を有する。
呼送信部224は、制御部210の制御に従って、電話網400bを介して、他のユーザ端末200にサーバ100を経由して送信するようサーバ100から通知された仮電話番号を含む呼接続要求を送信して、呼接続を行う機能を有する。呼送信部224は、制御部210の制御に従い、呼接続要求に発信者の実電話番号を含めず、代わりに予約識別番号を含めてもよい。このような構成とすることで、発信者の実電話番号を通知することなく呼接続が可能となるため、機密性をより確保することができる。
記憶部230は、ユーザ端末200が動作するうえで必要とする各種プログラム、データおよびパラメータを記憶する機能を有する。記憶部230は、具体的には、例えば、サーバ100から送信された表示情報、通信接続要求に対する結果に関する情報等を記憶する。記憶部240は、具体的には、例えば、ROMおよびRAMで構成される主記憶装置、不揮発性メモリ等で構成される補助記憶装置、HDD(Hard Disc Drive)、SSD(Solid State Drive)、フラッシュメモリ等各種の記録媒体によって構成される。
表示部240は、制御部210の制御に従い、ユーザからの入力を受け付ける機能を有する。表示部240は、具体的には、タッチパネル等のソフトキーあるいはハードキーにより実現される。また、表示部240は、制御部210の制御に従い、各サーバ100から送信された表示情報等を表示する機能を有する。表示部240は、具体的には、例えば、LCD(Liquid Crystal Display)ディスプレイ、LED(Light Emitting Diode)ディスプレイ、OLED(Organic Light Emitting Diode)ディスプレイ等を用いればよい。表示部240の表示画面は、例えば、HTML(Hyper Text Markup Language)などのマークアップ言語や、ビットマップデータあるいは圧縮処理された画像データなど、ユーザ端末200で画面表示可能な一般的なデータ形式で生成されればよい。
表示部240は、図4に示すように、制御部210の制御に従い、サーバ100aから送信された表示情報に基づいて、予約管理ページを表示してもよい。表示部240は、例えば、予約管理ページとして、ユーザの予約相手(別のユーザ)を一覧で表示したり、一覧で表示された予約相手に対する通信接続要求や呼接続要求のための操作入力表示を表示したり、当該入力の結果表示を表示してもよい。
表示部240は、制御部210の制御に従い、具体的には、例えば、図4に示すように、ユーザの予約相手の別ユーザ(例えば、1.bbbb、2.dddd、3.eeee、4.ffff(gggg、hhhhh)として、アルファベットの小文字4桁はユーザ名を示す)を一覧表示し、通信接続要求を行うための操作入力表示として「TEL」ボタンを設けてもよい。また、表示部240は、当該操作入力表示について、通信接続要求ができる予約相手のユーザのみ有効化してもよい。表示部240は、例えば、予約をキャンセルした相手や、複数ユーザからなるグループにおける代表ユーザでないユーザ(例えば、ggggおよびhhhh)については、当該操作入力表示を無効化して(例えば、「TEL」ボタンを非表示またはグレーアウト等)通信接続要求を要求できなくしてもよい。これにより、無用な通信接続要求を受信せずに済み、通信の輻輳を防ぎ、処理の効率化を図ることができる。
以上が、ユーザ端末200の構成である。
<データ>
ここで、本実施の形態において、記憶部130に記憶される予約情報、個人情報および紐付けデータのデータ構成例について図3(a)〜(c)に示す。
図3(a)は、予約情報のデータ構成例を示すデータ概念図である。
予約ID501は、予約識別するために付与された固有の識別情報である。予約IDは、予約識別番号の略称である。予約識別番号(予約ID)は、ユーザ間の予約情報を一意に識別可能な番号であり、例えば、図3(a)に示すように、予約情報レコードの主キーとし、各レコードを一意に識別することができる番号である。予約識別番号は、ユーザ端末200からの予約要求メッセージをサーバ100が受信した時など、ユーザからの予約要求を本発明に係る予約管理通話システム等が受け付けたときにシーケンスに採番等行えばよい。当該番号の番号体系については、サービス内容やシステム構成等によって適宜設定すればよい。
予約要求日時502は、ユーザから別のユーザに予約が要求された日時(日付と時刻)を示すものである。具体的には、例えば、ユーザ端末200の表示部240に別のユーザに予約を要求する入力表示を設けて、当該入力表示から入力された日時を当該予約要求日時として、サーバ100に予約要求メッセージに含めて設定してもよいし、サーバ100がユーザ端末200から当該予約要求メッセージを受信した日時として設定してもよい。
予約時間503は、ユーザが予約をしたい時間または時間区間における日付と時間の情報(予約をしたい開始日時および終了日時、時間数等)である。例えば、ユーザ個人の先生が開催する教室等の仲介サービスに本発明に係る予約管理通話システムを用いる場合であれば、当該教室等の開催時間または開始時間を設定すればよく、ユーザ間の出会いの仲介サービスに本発明に係る予約管理通話システムを用いる場合であれば、直接会う予約の待ち合わせ時間等を設定すればよい。
予約名504は、予約の対象となる教室名、予約の内容等を簡潔に示す情報である。当該予約名は、ユーザがユーザ端末200から予約要求を行うときに手動入力としてテキストを設定してもよい。
予約場所505は、予約の対象となる教室、待ち合わせ場所等を示す情報であり、ユーザ端末200に記録されるこれらの場所を示すGPS等から得られる位置情報を予約要求時に設定してもよいし、ユーザがユーザ端末200から予約要求を行うときに手動入力したテキストを設定してもよい。
ユーザID506、507は、ユーザを識別するために付与されたユーザ固有の識別情報である。ユーザIDは個人識別番号の略称である。個人識別番号(ユーザID)は、ユーザ個人を一意に識別可能な番号である。一例として、ユーザ1 IDであるユーザID506を発信者のユーザとし、ユーザ2 IDであるユーザID507を着信者のユーザとしてもよい。予約相手が複数の場合は、当該ユーザIDは当該複数分繰り返し設ければよい。
個人識別番号は、ユーザが本発明に係る予約管理通話システムを用いるサービスに対し、利用登録する際にシーケンスに採番し設定した番号等を用いればよい。当該番号の番号体系については、サービス内容やシステム構成等によって適宜設定すればよい。
図3(b)は、記憶部130に記憶されている個人情報のデータ構成例を示すデータ概念図である。当該個人情報は、当該例に示す情報以外にも、個人に関わる情報であれば、どの様な情報を含んでもよく、例えば、ユーザの誕生日、血液型、家族構成等を含んでもよい。
ユーザID701は、ユーザID506、507と同じ個人識別番号である。ただし、ユーザID701は、図3(b)に示すように、個人情報レコードの主キーとして各レコードを一意に識別することができる番号でもある。
実電話番号702は、ユーザ毎の実電話番号である。図3(b)では例として一つ設けているが、複数の電話番号を所有するユーザにおいては、複数項目設けてもよい。実電話番号は、ユーザが本発明に係る予約管理通話システムを用いるサービスに対し、利用登録する際にシーケンスに採番し設定した番号等を用いればよい。当該番号の番号体系については、サービス内容やシステム構成等によって適宜設定すればよい。
住所703は、ユーザの自宅の住所、ユーザの開催する教室がある建物の住所等を示す情報である。自宅住所は、ユーザが本発明に係る予約管理通話システムを用いるサービスに対し、利用登録する際に自宅として登録設定した住所や予約要求時に登録した住所等を用いればよい。
図3(c)は、記憶部130に記憶されている紐付けデータのデータ構成例を示すデータ概念図である。なお、当該紐付けデータの主キーとして、予約ID、ユーザ1 ID、ユーザ2 IDの複合キーを設定してもよいし、別途紐付けデータ用の識別番号をサーバ100が紐付けデータを生成する際に新たに発行してもよい。
予約ID801、予約時間803、ユーザ1 ID804、ユーザ2 ID806、は、紐付けデータの生成時に、予約情報から取得し設定される情報である。
接続要求日時802は、ユーザから通信接続要求がされた日時(日付と時刻)を示すものである。具体的には、例えば、ユーザ端末200の表示部240の通信接続要求に係る入力表示が指定された際の日時を当該接続要求日時として、サーバ100に通信接続要求メッセージに含めて設定してもよいし、サーバ100がユーザ端末200から当該通信接続要求メッセージを受信した日時として設定してもよい。
ユーザ1 実電話番号805、ユーザ2 実電話番号807は、紐付けデータの生成時に、個人情報から取得し設定される情報である。
仮電話番号808は、紐付けデータ生成後払い出される、予め用意され一時的に使用可能な仮電話番号である。当該データ構成例においては、図3(c)に示すように対象の紐付けデータの内に設定し保持しているが、対象の紐付けデータとは別途、保持してもよく、対象の紐付けデータと関連付けができ、通信接続要求に対する応答メッセージに含まれればどの様に保持してもよい。
有効期間809は、生成された紐付けデータが有効か否かを識別するための有効識別情報として設定される情報である。
接続回数810は、呼接続要求を転送して発信者と着信者とを呼接続した回数である。
<動作>
本実施の形態に係るサーバ100の動作およびサーバ100とユーザ端末200のメッセージ等のやり取りの流れを説明する。図5を用いて、サーバ100の動作を説明する。図5は、サーバ100の動作を示すフローチャート図である。
図5(a)に示すように、本発明に係るシステムのサーバ100において、個人情報記憶部131cは、個人番号と実電話番号との紐付けを含む個人情報を記憶する(ステップS10)。予約記憶部131aは、予約識別番号と個人識別番号との紐付けを含む予約情報を記憶する(ステップS11)。受信部121aは、発信者のユーザ端末200aから予約識別番号を含む通信接続要求を受信する(ステップS12)。受信部121aは、当該接続要求メッセージを受信すると、当該接続要求メッセージに係るデータを検索部111aに伝達する。検索部111aは、当該データを伝達されると、当該データに含まれる当該予約識別番号に基づき、予約情報を参照して、個人識別番号を取得する。検索部111aは、さらに、取得した個人識別番号に基づき、個人情報を参照して、個人の実電話番号を検索する(ステップS13)。検索部111aは、当該検索後、当該検索の結果に係るデータ(予約情報、個人情報を含む)を生成部112aに伝達する。生成部112aは、検索部111aから当該データを伝達されると、当該データに含まれる検索結果に基づいて、予約識別番号と、発信者および着信者の実電話番号との紐付けデータを生成する(ステップS14)。生成部112aは、当該生成後、設定部113aに当該生成の結果に係るデータ(紐付けデータ含む)を伝達する。設定部113aは、生成部112aから当該データを伝達されると、当該データに含まれる紐付けデータに対し、有効識別情報を設定する(ステップS15)。設定部113aは、当該設定後、予め用意された一時的に使用可能な仮電話番号を払い出す(ステップS16)。設定部113aは、当該払い出し後、当該設定および払い出しの結果に係るデータ(仮電話番号を含む)を送信部122aに伝達する。送信部122aは、設定部113aから当該データを伝達されると、発信者のユーザ端末200aに、仮電話番号を通知する(ステップS17)。
図5(b)に示すように、本発明に係るシステムのサーバ100において、呼受信部141bが、発信者のユーザ端末200aから呼接続要求を受信する(ステップS21)。呼受信部141bは、当該受信後、当該呼接続要求に係るデータを判定部114aに伝達する。判定部114aは、当該データを伝達されると、当該データに含まれる仮電話番号に対応する有効な紐付けデータが存在するか否かを判定する(ステップS22)。判定部114aは、当該判定の結果、有効な紐付けデータが存在すると判定した場合は(ステップS22のYES)、呼送信部141bに当該判定の結果に係るデータ(有効な紐付けデータ(着信者の実電話番号を含む)を含む)を伝達する。呼送信部141bは、判定部114aから伝達された着信者の実電話番号に呼接続要求を転送する(ステップS23)。
次に、図6を用いて、サーバ100とユーザ端末200間のメッセージに係る情報のやり取りおよび処理の流れを説明する。図6は、サーバ100とユーザ端末200間の通信接続要求の送信から呼接続要求の送信(転送)までのメッセージ等の情報のやり取りおよび処理の流れを示すシーケンス図である。ここで、図6におけるユーザ端末200について、発信者のユーザ端末200aを、ユーザ1端末とし、着信者のユーザ端末200bを、ユーザ2端末とする。
先ず、ユーザ1端末が通信接続要求メッセージを送信すると(ステップS51)、サーバ100は、当該接続要求に基づいて、予約情報を参照して個人識別番号を検索し(ステップS52)、個人情報を参照して個人の実電話番号を検索する(ステップS53)。サーバ100は、これらの検索結果に基づき、紐付きデータを生成し(ステップS54)、生成した紐付きデータに有効識別情報を設定し、仮電話番号を払い出す(ステップS55)。サーバ100は、払い出した仮電話番号をユーザ1端末に送信する(通知する)(ステップS56)。ユーザ1端末は、送信された(通知された)仮電話番号を要求先として、呼接続要求をサーバ100に送信する(ステップS57)。サーバ100は、有効な紐付けデータが存在する場合は、呼接続要求をユーザ2端末に送信し(ステップS58)、ユーザ1端末とユーザ2端末間で呼接続(通話確立)を行う。一方、サーバ100は、有効な紐付けデータが存在しない場合は、呼接続不可の結果をユーザ1端末に送信(通知)してもよい(ステップS59)。
サーバ100及びユーザ端末200の各機能部は、集積回路(IC(Integrated Circuit)チップ、LSI(Large Scale Integration))等に形成された論理回路(ハードウェア)や専用回路によって実現してもよいし、CPU(Central Processing Unit)およびメモリを用いてソフトウェアによって実現してもよい。また、各機能部は、1または複数の集積回路により実現されてよく、複数の機能部の機能を1つの集積回路により実現されることとしてもよい。LSIは、集積度の違いにより、VLSI、スーパーLSI、ウルトラLSIなどと呼称されることもある。なお、ここで「回路」は、コンピュータによるデジタル処理、すなわち、ソフトウェアによる機能的処理としての意味合いを含んでもよい。また、当該回路は、再構築可能な回路(例えば、FPGA:Field Programmable Gate Away)により実現されてもよい。
サーバ100及びユーザ端末200の各機能部をソフトウェアにより実現する場合、サーバ100またはユーザ端末200は、各機能を実現するソフトウェアである表示情報生成プログラムの命令を実行するCPU、上記検索プログラムおよび各種データがコンピュータ(またはCPU)で読み取り可能に記録されたROM(Read Only Memory)または記憶装置(これらを「記録媒体」と称する)、上記検索プログラムを展開するRAM(Random Access Memory)などを備えている。そして、コンピュータ(またはCPU)が上記検索プログラムを上記記録媒体から読み取って実行することにより、本発明の目的が達成される。上記記録媒体としては、「一時的でない有形の媒体」、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブルな論理回路などを用いることができる。また、上記検索プログラムは、当該検索プログラムを伝送可能な任意の伝送媒体(通信ネットワークや放送波等)を介して上記コンピュータに供給されてもよい。本発明は、上記検索プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
なお、上記検索プログラムは、例えば、ActionScript、JavaScript(登録商標)などのスクリプト言語、Objective-C、Java(登録商標)などのオブジェクト指向プログラミング言語、HTML5などのマークアップ言語などを用いて実装できる。