(57)【要約】 【課題】端末装置を使用するユーザ同士をサーバ装置が紹介する紹介システムにおいて、紹介されるまでの待ち時間にユーザに適切な情報を提示して、ユーザに参加を促す紹介システム等を提供する。【解決手段】紹介システムにおいて、端末装置が、時刻ti-1〜tiの時間帯３０４とは余裕時間３０５だけ前にずれた時間帯３０３に他の端末装置の紹介を求めると、サーバ装置は、当該端末装置に紹介時刻tiを割り当て、端末装置は、割り当てられた紹介時刻と現在時刻との差を画面に残り待ち時間として表示し、紹介待ちとなっている端末装置の数を表示し、時刻tiに至ると、サーバ装置は、tiを紹介時刻とする端末装置をグループ分けして紹介する相手を決め、紹介相手を各端末装置に知らせる。【選択図】図３
2008269356.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータ通信網を介して互いに通信可能なサーバ装置と、複数の端末装置と、を有する紹介システムであって、
（ａ）前記サーバ装置は、
他のユーザの紹介を求めるユーザのユーザ名と、当該ユーザに対して紹介を行うべき紹介時刻と、が、対応付けて記憶される紹介情報記憶部、
当該紹介時刻の候補となる候補時刻が記憶される紹介時刻記憶部を備え、
（ｂ）前記複数の端末装置のそれぞれは、
当該端末装置を使用するユーザの指示により、当該ユーザのユーザ名を指定する紹介要求を、前記サーバ装置に送信する紹介要求送信部を備え、
（ｃ）前記サーバ装置は、
前記複数の端末装置のそれぞれから送信された紹介要求を受信する紹介要求受信部、
当該紹介要求が受信されると、当該紹介要求に指定されるユーザ名を有するユーザに対して紹介を行うべき紹介時刻を、前記紹介時刻記憶部に記憶される候補時刻に決定する紹介時刻決定部、
当該紹介時刻が決定されると、当該ユーザ名と、当該紹介時刻と、を対応付けて、前記紹介情報記憶部に追加して記憶させる紹介情報追加部、
前記決定された紹介時刻を指定する紹介応答を、当該紹介要求を送信した端末装置に送信する紹介応答送信部、
当該紹介情報記憶部が更新されると、前記紹介情報記憶部に記憶されるユーザ名の個数を取得するユーザ情報取得部、
前記取得されたユーザ名の個数を指定するユーザ報告を、前記複数の端末装置のうち、前記紹介情報記憶部に記憶されるユーザ名のユーザが使用する端末装置のそれぞれに送信するユーザ報告送信部をさらに備え、
（ｄ）前記複数の端末装置のそれぞれは、
前記サーバ装置から送信された紹介応答を受信する紹介応答受信部、
前記サーバ装置から送信されたユーザ報告を受信するユーザ報告受信部、
現在時刻が前記受信された紹介応答に指定される紹介時刻に至るまで、当該紹介時刻と当該現在時刻との差を表示し、当該ユーザ報告が受信され、かつ、所定のユーザ報告表示条件が満たされると、当該ユーザ報告に指定されるユーザ名の個数をさらに表示する表示部をさらに備え、
（ｅ）前記サーバ装置は、
前記紹介情報記憶部に記憶されるユーザ名のうち、当該紹介時刻が現在時刻以降であるユーザ名を、前記紹介情報記憶部から抽出し、当該ユーザ名を、前記紹介情報記憶部から消去する抽出消去部、
前記抽出されたユーザ名を、１つまたは複数のグループに分類するグループ分類部、
前記分類された１つまたは複数のグループのそれぞれについて、当該グループに属するユーザ名のユーザが使用する端末装置のそれぞれに、当該グループに属する他のユーザのユーザ名を指定する紹介報告を送信する紹介報告送信部をさらに備え、
（ｆ）前記複数の端末装置のそれぞれは、
前記サーバ装置から送信された紹介報告を受信する紹介報告受信部をさらに備え、
（ｇ）前記サーバ装置は、
前記紹介時刻記憶部に記憶される候補時刻より所定の余裕時間前の時刻に至ると、当該候補時刻を、当該余裕時間より長い所定の間隔時間後の時刻に更新する紹介時刻更新部をさらに備え、
（ｈ）前記複数の端末装置のそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、前記受信された紹介応答に指定される紹介時刻に至るまでの間である場合に、満たされる
ことを特徴とする紹介システム。
【請求項２】
請求項１に記載の紹介システムであって、
（ｉ）前記サーバ装置は、
ユーザ名と、当該ユーザ名のユーザに関する情報と、が、対応付けて記憶されるユーザ情報記憶部をさらに備え、
前記ユーザ情報取得部は、前記受信された紹介要求に指定されるユーザ名に対応付けて前記ユーザ情報記憶部に記憶されるユーザに関する情報をさらに取得し、
前記ユーザ報告送信部は、前記取得されたユーザに関する情報を、当該ユーザ報告にさらに指定して送信し、
（ｊ）前記複数の端末装置のそれぞれにおいて、
前記表示部は、当該ユーザ報告が受信されると、当該ユーザ報告に指定されるユーザに関する情報をさらに表示する
ことを特徴とする紹介システム。
【請求項３】
請求項２に記載の紹介システムであって、
前記サーバ装置において、
前記グループ分類部は、さらに、前記分類された１つまたは複数のグループのそれぞれに含まれるユーザ名に対応付けて前記ユーザ情報記憶部に記憶されるユーザに関する情報を取得し、当該取得されたユーザに関する情報に基づいて、当該グループに含まれるユーザ名の順位を決定し、
前記紹介報告送信部は、当該紹介報告に、当該グループに含まれるすべてのユーザ名と、その順位と、をさらに指定して送信し、
前記複数の端末装置のそれぞれにおいて、
前記表示部は、前記サーバ装置から送信された紹介報告に指定されるすべてのユーザ名と、その順位と、をさらに表示する
ことを特徴とする紹介システム。
【請求項４】
請求項１または２に記載の紹介システムであって、
前記複数の端末装置のそれぞれは、
前記複数の端末装置のうち、前記受信された紹介報告に指定されるユーザ名のユーザが使用する端末装置と通信する通信部
をさらに備えることを特徴とする紹介システム。
【請求項５】
請求項１から４のいずれか１項に記載の紹介システムであって、
前記サーバ装置において、
前記ユーザ情報取得部は、前記紹介情報記憶部に記憶されるユーザ名の個数を、前記紹介情報記憶部に記憶される紹介時刻ごとに取得し、
前記ユーザ報告送信部は、前記複数の端末装置のうち、前記紹介情報記憶部に記憶されるユーザ名のユーザが使用する端末装置のそれぞれに、当該ユーザ名の紹介時刻について前記取得されたユーザ名の個数を指定するユーザ報告を送信する
ことを特徴とする紹介システム。
【請求項６】
請求項１から５のいずれか１項に記載の紹介システムであって、
前記複数の端末装置のそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、前記受信された紹介応答に指定される紹介時刻に至るまでの間であり、かつ、前記受信された紹介応答に指定される紹介時刻と現在時刻との差が、当該間隔時間と当該余裕時間の差以下である場合に、満たされる
ことを特徴とする紹介システム。
【請求項７】
請求項１から５のいずれか１項に記載の紹介システムであって、
前記複数の端末装置のそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、前記受信された紹介応答に指定される紹介時刻に至るまでの間であり、かつ、前記ユーザ報告に指定されたユーザ名の個数が、所定の最低人数以上である場合に、満たされる
ことを特徴とする紹介システム。
【請求項８】
請求項１から７のいずれか１項に記載の紹介システムであって、
前記紹介時刻更新部は、前記紹介情報記憶部に記憶されるユーザ名のうち、前記紹介時刻記憶部に記憶される候補時刻を紹介時刻とするユーザ名の個数が所定の第１閾値を超えると、当該候補時刻を、現在時刻から当該所定の間隔時間後の時刻にさらに更新する
ことを特徴とする紹介システム。
【請求項９】
請求項８に記載の紹介システムであって、
前記紹介時刻決定部は、前記紹介情報記憶部に記憶されるユーザ名のうち、前記紹介時刻記憶部に記憶される候補時刻より前で当該候補時刻に最も近い時刻（以下「直近時刻」という。）を紹介時刻とするユーザ名の個数が所定の第１閾値を超え、かつ、前記紹介情報記憶部に記憶されるユーザ名のうち、前記紹介時刻記憶部に記憶される候補時刻を紹介時刻とするユーザ名の個数が所定の第２閾値を超えている場合、当該紹介要求に指定されるユーザ名を有するユーザに対して紹介を行うべき紹介時刻として、紹介時刻記憶部に記憶される候補時刻にかえて、当該直近時刻を決定する
ことを特徴とする紹介システム。
【請求項１０】
コンピュータ通信網を介して互いに通信可能なサーバ装置と、複数の端末装置と、にて、実行される紹介方法であって、
前記サーバ装置は、紹介情報記憶部、紹介時刻記憶部、紹介要求受信部、紹介時刻決定部、紹介情報追加部、紹介応答送信部、ユーザ情報取得部、ユーザ報告送信部、抽出消去部、グループ分類部、紹介報告送信部、紹介時刻更新部を有し、
前記複数の端末装置のそれぞれは、紹介要求送信部、紹介応答受信部、ユーザ報告受信部、表示部、紹介報告受信部を有し、
前記サーバ装置において、前記紹介情報記憶部には、他のユーザの紹介を求めるユーザのユーザ名と、当該ユーザに対して紹介を行うべき紹介時刻と、が、対応付けて記憶され、前記紹介時刻記憶部には、当該紹介時刻の候補となる候補時刻が記憶され、
（ａ）前記複数の端末装置のそれぞれにおいて、
前記紹介要求送信部が、当該端末装置を使用するユーザの指示により、当該ユーザのユーザ名を指定する紹介要求を、前記サーバ装置に送信する紹介要求送信工程を備え、
（ｂ）前記サーバ装置において、
前記紹介要求受信部が、前記複数の端末装置のそれぞれから送信された紹介要求を受信する紹介要求受信工程、
当該紹介要求が受信されると、前記紹介時刻決定部が、当該紹介要求に指定されるユーザ名を有するユーザに対して紹介を行うべき紹介時刻を、前記紹介時刻記憶部に記憶される候補時刻に決定する紹介時刻決定工程、
当該紹介時刻が決定されると、前記紹介情報追加部が、当該ユーザ名と、当該紹介時刻と、を対応付けて、前記紹介情報記憶部に追加して記憶させる紹介情報追加工程、
前記紹介応答送信部が、前記決定された紹介時刻を指定する紹介応答を、当該紹介要求を送信した端末装置に送信する紹介応答送信工程、
当該紹介情報記憶部が更新されると、前記ユーザ情報取得部が、前記紹介情報記憶部に記憶されるユーザ名の個数を取得するユーザ情報取得工程、
前記ユーザ報告送信部が、前記取得されたユーザ名の個数を指定するユーザ報告を、前記複数の端末装置のうち、前記紹介情報記憶部に記憶されるユーザ名のユーザが使用する端末装置のそれぞれに送信するユーザ報告送信工程をさらに備え、
（ｃ）前記複数の端末装置のそれぞれにおいて、
前記紹介応答受信部が、前記サーバ装置から送信された紹介応答を受信する紹介応答受信工程、
前記ユーザ報告受信部が、前記サーバ装置から送信されたユーザ報告を受信するユーザ報告受信工程、
前記表示部が、現在時刻が前記受信された紹介応答に指定される紹介時刻に至るまで、当該紹介時刻と当該現在時刻との差を表示し、当該ユーザ報告が受信され、かつ、所定のユーザ報告表示条件が満たされると、前記表示部が、当該ユーザ報告に指定されるユーザ名の個数をさらに表示する表示工程をさらに備え、
（ｄ）前記サーバ装置において、
前記抽出消去部が、前記紹介情報記憶部に記憶されるユーザ名のうち、当該紹介時刻が現在時刻以降であるユーザ名を、前記紹介情報記憶部から抽出し、当該ユーザ名を、前記紹介情報記憶部から消去する抽出消去工程、
前記グループ分類部が、前記抽出されたユーザ名を、１つまたは複数のグループに分類するグループ分類工程、
前記紹介報告送信部が、前記分類された１つまたは複数のグループのそれぞれについて、当該グループに属するユーザ名のユーザが使用する端末装置のそれぞれに、当該グループに属する他のユーザのユーザ名を指定する紹介報告を送信する紹介報告送信工程をさらに備え、
（ｅ）前記複数の端末装置のそれぞれにおいて、
前記紹介報告受信部が、前記サーバ装置から送信された紹介報告を受信する紹介報告受信工程をさらに備え、
（ｆ）前記サーバ装置において、
前記紹介時刻記憶部に記憶される候補時刻より所定の余裕時間前の時刻に至ると、前記紹介時刻更新部が、当該候補時刻を、当該余裕時間より長い所定の間隔時間後の時刻に更新する紹介時刻更新工程をさらに備え、
（ｇ）前記複数の端末装置のそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、前記受信された紹介応答に指定される紹介時刻に至るまでの間である場合に、満たされる
ことを特徴とする紹介方法。
【請求項１１】
サーバ用コンピュータをサーバ装置として機能させるサーバ用プログラムと、前記サーバ用コンピュータとコンピュータ通信網を介して通信可能な複数の端末用コンピュータのそれぞれを端末装置として機能させる端末用プログラムと、を有するプログラムであって、
（ａ）前記サーバ用プログラムは、前記サーバ用コンピュータを、
他のユーザの紹介を求めるユーザのユーザ名と、当該ユーザに対して紹介を行うべき紹介時刻と、が、対応付けて記憶される紹介情報記憶部、
当該紹介時刻の候補となる候補時刻が記憶される紹介時刻記憶部、として機能させ、
（ｂ）前記端末用プログラムは、前記複数の端末用コンピュータのそれぞれを、
当該端末装置を使用するユーザの指示により、当該ユーザのユーザ名を指定する紹介要求を、前記サーバ装置に送信する紹介要求送信部として機能させ、
（ｃ）前記サーバ用プログラムは、前記サーバ用コンピュータを、
前記複数の端末装置のそれぞれから送信された紹介要求を受信する紹介要求受信部、
当該紹介要求が受信されると、当該紹介要求に指定されるユーザ名を有するユーザに対して紹介を行うべき紹介時刻を、前記紹介時刻記憶部に記憶される候補時刻に決定する紹介時刻決定部、
当該紹介時刻が決定されると、当該ユーザ名と、当該紹介時刻と、を対応付けて、前記紹介情報記憶部に追加して記憶させる紹介情報追加部、
前記決定された紹介時刻を指定する紹介応答を、当該紹介要求を送信した端末装置に送信する紹介応答送信部、
当該紹介情報記憶部が更新されると、前記紹介情報記憶部に記憶されるユーザ名の個数を取得するユーザ情報取得部、
前記取得されたユーザ名の個数を指定するユーザ報告を、前記複数の端末装置のうち、前記紹介情報記憶部に記憶されるユーザ名のユーザが使用する端末装置のそれぞれに送信するユーザ報告送信部としてさらに機能させ、
（ｄ）前記端末用プログラムは、前記複数の端末用コンピュータのそれぞれを、
前記サーバ装置から送信された紹介応答を受信する紹介応答受信部、
前記サーバ装置から送信されたユーザ報告を受信するユーザ報告受信部、
現在時刻が前記受信された紹介応答に指定される紹介時刻に至るまで、当該紹介時刻と当該現在時刻との差を表示し、当該ユーザ報告が受信され、かつ、所定のユーザ報告表示条件が満たされると、当該ユーザ報告に指定されるユーザ名の個数をさらに表示する表示部としてさらに機能させ、
（ｅ）前記サーバ用プログラムは、前記サーバ用コンピュータを、
前記紹介情報記憶部に記憶されるユーザ名のうち、当該紹介時刻が現在時刻以降であるユーザ名を、前記紹介情報記憶部から抽出し、当該ユーザ名を、前記紹介情報記憶部から消去する抽出消去部、
前記抽出されたユーザ名を、１つまたは複数のグループに分類するグループ分類部、
前記分類された１つまたは複数のグループのそれぞれについて、当該グループに属するユーザ名のユーザが使用する端末装置のそれぞれに、当該グループに属する他のユーザのユーザ名を指定する紹介報告を送信する紹介報告送信部としてさらに機能させ、
（ｆ）前記端末用プログラムは、前記複数の端末用コンピュータのそれぞれを、
前記サーバ装置から送信された紹介報告を受信する紹介報告受信部としてさらに機能させ、
（ｇ）前記サーバ用プログラムは、前記サーバ用コンピュータを、
前記紹介時刻記憶部に記憶される候補時刻より所定の余裕時間前の時刻に至ると、当該候補時刻を、当該余裕時間より長い所定の間隔時間後の時刻に更新する紹介時刻更新部としてさらに機能させ、
（ｈ）前記端末用プログラムは、前記複数の端末用コンピュータのそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、前記受信された紹介応答に指定される紹介時刻に至るまでの間である場合に、満たされるように機能させる
ことを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、端末装置を使用するユーザ同士をサーバ装置が紹介する紹介システムにおいて、紹介されるまでの待ち時間にユーザに適切な情報を提示して、ユーザに紹介システム参加を促すのに好適な紹介システム、紹介方法、ならびに、これらをコンピュータにて実現するプログラムに関する。
【背景技術】
【０００２】
従来から、通信対戦ゲームにおいては、各ユーザは、自身が使用する端末装置をインターネットなどのコンピュータ通信網に接続し、ロビーサーバと呼ばれるサーバ装置と通信して、サーバ装置に対戦相手の紹介を求め、サーバ装置では、紹介を求めるユーザ同士を組み合わせて端末装置に紹介し、端末装置は紹介された同士で通信して対戦を行う技術が提供されている。このような紹介技術は「マッチング」とも呼ばれ、通信対戦ゲームに限らず、ユーザ同士を紹介するシステムにおいて利用されている。
【０００３】
このようなマッチングの技術については、たとえば以下の文献に開示されている。
【特許文献１】特開２００２−２１０２４９号公報
【０００４】
ここで、[特許文献１]には、相性の合う友達をネットゲームを通じて見つけ出すことを支援するため、ネットゲーム用サーバ装置は、仮想パーティーに参加する複数の会員を編成し、編成された各携帯通信端末に提示される所要数の設問を生成し、生成された設問の回答情報と相性評価パラメータを基にパーティー内から２人を選出し、選出された２人に対して所要数の設問および回答を作成させ、作成された設問の回答情報と相性評価パラメータを基にアクセス時間および仮想場所を設定可能にし、設定した時間および仮想場所にアクセスしたか否かを判定し、メールボックスを提供する技術が開示されている。
【発明の開示】
【発明が解決しようとする課題】
【０００５】
このように、マッチングにおいては、ゲームの習熟度が同じ相手や同じ興味を持つ相手など、できるだけ適切な相手を見つけることが望ましい。このために、紹介を求めるユーザを、ある程度プールして人数をまとめてから、マッチングを行う必要がある。したがって、ユーザは、紹介を求めてから実際に紹介がされるまで、ある程度の時間待つこととなる。
【０００６】
したがって、この待機時間中に、ユーザが紹介システムに参加して、他のユーザを紹介してもらおうとする意思が減退しないように、適切な情報を提供する技術が強く求められている。
【０００７】
本発明は、上記のような課題を解決するもので、端末装置を使用するユーザ同士をサーバ装置が紹介する紹介システムにおいて、紹介されるまでの待ち時間にユーザに適切な情報を提示して、ユーザに紹介システム参加を促すのに好適な紹介システム、紹介方法、ならびに、これらをコンピュータにて実現するプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００８】
以上の目的を達成するため、本発明の原理にしたがって、下記の発明を開示する。
【０００９】
本発明の第１の観点に係る紹介システムは、コンピュータ通信網を介して互いに通信可能なサーバ装置と、複数の端末装置と、を有し、以下のように構成する。
【００１０】
ここで、サーバ装置は、紹介情報記憶部、紹介時刻記憶部、紹介要求受信部、紹介時刻決定部、紹介情報追加部、紹介応答送信部、ユーザ情報取得部、ユーザ報告送信部、抽出消去部、グループ分類部、紹介報告送信部、紹介時刻更新部を有する。
【００１１】
一方、複数の端末装置のそれぞれは、紹介要求送信部、紹介応答受信部、ユーザ報告受信部、表示部、紹介報告受信部を有する。
【００１２】
そして、サーバ装置において、紹介情報記憶部には、他のユーザの紹介を求めるユーザのユーザ名と、当該ユーザに対して紹介を行うべき紹介時刻と、が、対応付けて記憶される。
【００１３】
ここで、ユーザ名とは、典型的には各ユーザに割り当てられる識別番号やＩＤ（IDentifier）のことであり、各ユーザに重複しないように与えられるものである。一方、紹介時刻とは、他のユーザの紹介を求めるユーザに対して、紹介を行う予定の時刻のことであり、紹介する相手がいない等のエラーが生じない限り、現在時刻に対して未来の時刻となる。
【００１４】
このほか、当該ユーザに対しては、必ず端末装置を使用して連絡がされるので、当該ユーザが使用する端末装置のＩＰアドレスやポート番号などの通信識別子も対応付けて記憶することが望ましい。
【００１５】
一方、紹介時刻記憶部には、当該紹介時刻の候補となる候補時刻が記憶される。
【００１６】
候補時刻は、次に紹介を求めてきたユーザに対して割り当てられる紹介時刻として用いられる。したがって、候補時刻は、現在時刻に対して未来の時刻となる。
【００１７】
紹介時刻記憶部に記憶される候補時刻は、所定の間隔時間単位で増加する（未来に向かって更新される）のが典型的である。
【００１８】
一方、複数の端末装置のそれぞれにおいて、紹介要求送信部は、当該端末装置を使用するユーザの指示により、当該ユーザのユーザ名を指定する紹介要求を、サーバ装置に送信する。
【００１９】
ユーザが、他のユーザの紹介を受けたいと考えた場合には、当該ユーザが使用する端末装置を適宜操作することによって、その希望を端末装置に入力すると、当該端末装置からサーバ装置へ紹介要求が送信される。端末装置が携帯電話やゲーム機である場合には、各種のボタン操作、キー操作によってこれらの入力が行われ、一般的なコンピュータである場合には、各種のマウス操作によってこれらの入力が行われるのが典型的である。
【００２０】
一方、サーバ装置において、紹介要求受信部は、複数の端末装置のそれぞれから送信された紹介要求を受信する。
【００２１】
紹介要求は、ユーザの指示に基づいて送信されるので、紹介要求がサーバ装置に到着する時刻にはばらつきがあるのが一般的である。
【００２２】
さらに、紹介時刻決定部は、当該紹介要求が受信されると、当該紹介要求に指定されるユーザ名を有するユーザに対して紹介を行うべき紹介時刻を、紹介時刻記憶部に記憶される候補時刻に決定する。
【００２３】
すなわち、紹介時刻記憶部に記憶される候補時刻が、新たに紹介を求めてきたユーザに対する紹介時刻として用いられる。
【００２４】
さらに、紹介情報追加部は、当該紹介時刻が決定されると、当該ユーザ名と、当該紹介時刻と、を対応付けて、紹介情報記憶部に追加して記憶させる。
【００２５】
このとき、当該ユーザ名が指定されていた紹介要求の送信元の端末装置の通信識別子（ＩＰアドレスやポート番号等）を、ともに紹介情報記憶部に対応付けて記憶するのが典型的である。
【００２６】
そして、紹介応答送信部は、決定された紹介時刻を指定する紹介応答を、当該紹介要求を送信した端末装置に送信する。
【００２７】
これによって、各端末装置は、当該端末装置を使用するユーザが紹介を受けられる時刻を知ることができるようになる。
【００２８】
一方、ユーザ情報取得部は、当該紹介情報記憶部が更新されると、紹介情報記憶部に記憶されるユーザ名の個数を取得する。
【００２９】
紹介情報記憶部が更新されるのは、サーバ装置に対して新たなユーザが紹介を求めてきた場合であり、これによって、サーバ装置が紹介要求を受け付けた際に、現在紹介待ちとなっているユーザの人数が得られる。
【００３０】
さらに、ユーザ報告送信部は、取得されたユーザ名の個数を指定するユーザ報告を、複数の端末装置のうち、紹介情報記憶部に記憶されるユーザ名のユーザが使用する端末装置のそれぞれに送信する。
【００３１】
これによって、現在紹介待ちとなっている各端末装置は、現在紹介待ちとなっているユーザの人数を知ることができるようになる。
【００３２】
一方、複数の端末装置のそれぞれにおいて、紹介応答受信部は、サーバ装置から送信された紹介応答を受信し、ユーザ報告受信部は、サーバ装置から送信されたユーザ報告を受信する。
【００３３】
紹介応答は、当該端末装置から送信された紹介要求に対する返答であるが、ユーザ報告は、紹介待ちとなっている間サーバ装置から他のユーザが新たに紹介を求めてきたときに送信されるものである。
【００３４】
さらに、表示部は、現在時刻が受信された紹介応答に指定される紹介時刻に至るまで、当該紹介時刻と当該現在時刻との差を表示する。
【００３５】
これによって、当該端末装置を使用するユーザは、自分が紹介を受けるまでの待ち時間を表示画面で確認できることとなり、ユーザの紹介システムに参加する意思を維持することができるようになる。
【００３６】
そして、表示部は、当該ユーザ報告が受信され、かつ、所定のユーザ報告表示条件が満たされると、当該ユーザ報告に指定されるユーザ名の個数をさらに表示する。
【００３７】
これによって、当該端末装置を使用するユーザは、自分が紹介を受けるまでの待ち時間に、他の紹介待ちのユーザの人数を確認できることとなり、他のユーザとの連帯感を高めるとともに、多数のユーザの中から自分に適合したユーザを紹介してもらえるという期待感を得ることができるようになる。
【００３８】
なお、ユーザ報告表示条件については、後述するような種々の態様が考えられる。
【００３９】
一方、サーバ装置において、抽出消去部は、紹介情報記憶部に記憶されるユーザ名のうち、当該紹介時刻が現在時刻以降であるユーザ名を、紹介情報記憶部から抽出し、当該ユーザ名を、紹介情報記憶部から消去する。
【００４０】
ここで抽出されるユーザは、まさに今、紹介を行うべきユーザである。紹介ができないなどのエラーが生じない限り、紹介時刻が現在時刻以降であるユーザの紹介時刻は、一致するはずである。
【００４１】
また、抽出の際には、紹介情報記憶部からユーザが消去されるため、紹介情報記憶部が更新されるので、ユーザ報告が各端末装置に送信されることになる。
【００４２】
さらに、グループ分類部は、抽出されたユーザ名を、１つまたは複数のグループに分類する。
【００４３】
各グループに含まれるユーザ名のユーザ同士が、マッチングされたユーザであり、互いに紹介されたユーザである。通信対戦格闘ゲームや、通信囲碁、通信将棋、通信チェスゲームなどにおいては、１対１の対戦が行われ、恋人探しゲーム、メール友達探しゲームにおいては、ある１人に対して別の１人を紹介するのが典型的であるので、各グループに含まれるユーザの人数は２人である。また、通信麻雀ゲームなどにおいては、４人で対局が行われるので、各グループに含まれるユーザの人数は４人である。このように、グループに含まれるユーザ名の個数は、用途に応じて適宜変更することが可能である。
【００４４】
そして、紹介報告送信部は、分類された１つまたは複数のグループのそれぞれについて、当該グループに属するユーザ名のユーザが使用する端末装置のそれぞれに、当該グループに属する他のユーザのユーザ名を指定する紹介報告を送信する。
【００４５】
これにより、各端末装置は、他のユーザの紹介を受けることとなる。ここで、紹介報告には、ユーザ名のみならず、当該ユーザが使用する端末装置の通信識別子（ＩＰアドレスやポート番号等）も指定するのが典型的である。
【００４６】
一方、複数の端末装置のそれぞれにおいて、紹介報告受信部は、サーバ装置から送信された紹介報告を受信する。
【００４７】
これにより、当該端末装置、ならびに、これを使用するユーザは、サーバ装置に紹介されたユーザ名を知得することができるようになる。あとは、このユーザ名を用いて、種々の処理を行うこととなるが、その態様については後述する。
【００４８】
一方、サーバ装置において、紹介時刻更新部は、紹介時刻記憶部に記憶される候補時刻より所定の余裕時間前の時刻に至ると、当該候補時刻を、当該候補時刻から「当該余裕時間より長い所定の間隔時間」後の時刻に更新する。
【００４９】
ここで、「間隔時間」とは、紹介（グループ分け、マッチング）が行われる時間間隔である。たとえば、毎正分（６０秒おき）に紹介がされる場合を考えると、間隔時間は６０秒ということになる。
【００５０】
一方、「余裕時間」は、まだ次の紹介時間にはなっていないけれども、次の紹介時間では紹介を受けることができないようにするための時間である。
【００５１】
たとえば、余裕時間として１５秒を採用した場合を考えると、時刻m分０秒〜時刻m分４５秒に紹介を求めたユーザに対する紹介時刻は時刻m+1分０秒であり、時刻m分４５秒〜時刻m+1分０秒に紹介を求めたユーザに対する紹介時刻は時刻m+2分０秒である。
【００５２】
すると、各ユーザが紹介を受けるまでに待つ待ち時間は、１５秒（余裕時間）〜７５秒（余裕時間と間隔時間の和）となる。
【００５３】
このようにすると、当該紹介システムに参加しているユーザの人数は、すなわち、紹介情報記憶部に記憶されるユーザ名の個数は、常に、「毎正分に紹介を受けるユーザの人数のおよそ６０（間隔時間）分の１５（余裕時間）、すなわち、４分の１」以上となることが期待できる。
【００５４】
このような紹介システムでは、紹介を求めた際に、紹介を求めている他のユーザの人数が０人であると、紹介システムそのものの利用をやめてしまうために、紹介を求めるユーザの人数が０人のままになってしまう、という現象が起きてしまうことがある。
【００５５】
本発明においては、間隔時間と余裕時間を適切に設定することで、ユーザが紹介を求める際にすでに紹介待ちとなっているユーザの人数をできるだけ確保して、このような状況を起きにくくし、ユーザの興味を惹くことができる。
【００５６】
一方、複数の端末装置のそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、受信された紹介応答に指定される紹介時刻に至るまでの間である場合に、満たされる。
【００５７】
すなわち、本発明においては、紹介を求める旨がサーバ装置に受け付けられてから、実際に紹介を受けるまでの間、現在紹介待ちのユーザの人数が、表示画面に表示されることになる。
【００５８】
これによって、自分に紹介される他のユーザの候補人数をユーザは確認することができ、ユーザの紹介に対する興味をかき立てることができるようになる。
【００５９】
このように、本発明においては、端末装置を使用するユーザ同士をサーバ装置が紹介する紹介システムにおいて、紹介されるまでの待ち時間にユーザに、現在紹介待ちのユーザ総数に関する情報を提示するとともに、各ユーザに対する紹介時刻の決定を工夫して、他の紹介待ちのユーザ総数が０にならないようにして、ユーザの紹介システム参加に対する興味を惹き、参加を促すことができるようになる。
【００６０】
また、本発明の紹介システムにおいて、サーバ装置は、ユーザ情報記憶部をさらに備え、以下のように構成することができる。
【００６１】
ここで、ユーザ情報記憶部は、ユーザ名と、当該ユーザ名のユーザに関する情報と、が、対応付けて記憶される。「ユーザに関する情報」とは、たとえば、当該ユーザのハンドル名やニックネーム、アバターの画像などが含まれる。このほか、通信対戦ゲームにおいては、当該ユーザの戦績やレベル、得意技、装備するアイテムなどの情報、友達紹介ゲームにおいては、趣味や好みの異性のタイプ、好きな食べ物などの情報を含むこととしても良い。
【００６２】
一方、ユーザ情報取得部は、受信された紹介要求に指定されるユーザ名に対応付けてユーザ情報記憶部に記憶されるユーザに関する情報をさらに取得し、ユーザ報告送信部は、取得されたユーザに関する情報を、当該ユーザ報告にさらに指定して送信する。
【００６３】
さらに、複数の端末装置のそれぞれにおいて、表示部は、当該ユーザ報告が受信されると、当該ユーザ報告に指定されるユーザに関する情報をさらに表示する。
【００６４】
これによって、各ユーザは、新たに紹介を求めてきたユーザについての情報を確認することができるようになる。
【００６５】
本発明によれば、紹介待ち時間の間に、他のユーザが紹介を求めてくると、そのユーザの情報がリアルタイムに画面に表示されることとなるので、ユーザの紹介システム参加に対する興味を惹き、参加を促すことができるようになる。
【００６６】
また、本発明の紹介システムは、以下のように構成することができる。
【００６７】
すなわち、サーバ装置において、グループ分類部は、さらに、分類された１つまたは複数のグループのそれぞれに含まれるユーザ名に対応付けてユーザ情報記憶部に記憶されるユーザに関する情報を取得し、当該取得されたユーザに関する情報に基づいて、当該グループに含まれるユーザ名の順位を決定し、紹介報告送信部は、当該紹介報告に、当該グループに含まれるすべてのユーザ名と、その順位と、をさらに指定して送信する。
【００６８】
これは、紹介を求めたユーザ同士の対戦が、サーバ装置に記憶されるユーザ情報に基づいて、サーバ装置において行われる態様によるもので、グループに含まれるユーザ名が２人であればこの順位によって勝ち負けが決定することになる。
【００６９】
順位を決定する手法については、ユーザ名に対応付けて記憶される属性、レベルや過去の戦績、所有するアイテムなどのパラメータを適宜重み付けて比較したり、乱数を取り混ぜて勝敗を決する等、ゲームのルールに基づいて、種々の態様を採用することができる。
【００７０】
一方、複数の端末装置のそれぞれにおいて、表示部は、サーバ装置から送信された紹介報告に指定されるすべてのユーザ名と、その順位と、をさらに表示する。
【００７１】
したがって、ユーザは、対戦相手の紹介を受けると同時に、その対戦の結果を知ることができることとなる。
【００７２】
本発明は、適切なマッチングに基づいてサーバ装置内で通信対戦を行う場合に、上記発明を適用した好適実施形態に係るものである。
【００７３】
また、本発明の紹介システムにおいて、複数の端末装置のそれぞれは、通信部をさらに備え、以下のように構成することができる。
【００７４】
すなわち、通信部は、複数の端末装置のうち、受信された紹介報告に指定されるユーザ名のユーザが使用する端末装置と通信する。
【００７５】
上記のように、紹介報告に指定されるユーザ名のユーザが使用する端末装置の通信識別子も、紹介報告に指定するのが典型的であり、これによって、サーバ装置を中継しないピアツーピアの通信を行って、通信対戦やチャットなどの通信が行われる。
【００７６】
なお、上記のように、端末装置の通信識別子とユーザ名とは、一緒に処理するのが典型的であるので、端末装置の通信識別子そのものをユーザ名と考えても良い。
【００７７】
本発明は、適切なマッチングに基づいて通信対戦をピアツーピア通信で行う場合や、チャットなどを行う場合に、上記発明を適用した好適実施形態に係るものである。
【００７８】
また、本発明の紹介システムにおいて、サーバ装置において、ユーザ情報取得部は、紹介情報記憶部に記憶されるユーザ名の個数を、紹介情報記憶部に記憶される紹介時刻ごとに取得し、ユーザ報告送信部は、複数の端末装置のうち、紹介情報記憶部に記憶されるユーザ名のユーザが使用する端末装置のそれぞれに、当該ユーザ名の紹介時刻について取得されたユーザ名の個数を指定するユーザ報告を送信するように構成することができる。
【００７９】
上記発明においては、紹介情報記憶部に記憶されるユーザ名の個数、すなわち、紹介待ちのユーザの総数を端末装置に表示することとしていたが、紹介によってユーザ総数が大きく減少するタイミングがあるため、画面に表示されるユーザ総数が大幅に減ることとなる。
【００８０】
このような数値の変動は、紹介システムがリアルに動作していることをユーザに実感させることとなるため、望ましい場合もあるが、用途によっては、紹介の候補となる他のユーザの人数が減らない方が、ユーザの興味を惹くことができる場合もある。
【００８１】
本発明は、このような状況に対応するもので、当該端末装置を使用するユーザと同じ紹介時刻に紹介を受けるユーザの総数を画面に表示する。
【００８２】
本発明では、各ユーザは、現在紹介待ちのユーザの総数ではなく、あるユーザに対して実際に紹介の候補となるユーザの人数を知ることができるようになり、画面に表示される人数の数値が常に増加傾向をとるようにして、ユーザの紹介システム参加に対する興味を惹き、参加を促すことができるようになる。
【００８３】
また、本発明の紹介システムにおいて、複数の端末装置のそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、受信された紹介応答に指定される紹介時刻に至るまでの間であり、かつ、受信された紹介応答に指定される紹介時刻と現在時刻との差が、当該間隔時間と当該余裕時間の差以下である場合に、満たされるように構成することができる。
【００８４】
上記発明では、紹介要求が受け付けられると、ユーザの人数が端末装置に表示されることとなっていたが、本発明では、
（ａ）紹介要求が受け付けられ、
（ｂ）紹介が行われる前であり、
（ｃ）紹介時刻と現在時刻との差が、間隔時間と余裕時間の差以下である
場合に、ユーザの人数が画面に表示される。
【００８５】
上記の例でいうと、時刻m分０秒〜時刻m分４５秒に紹介を求めたユーザに対しては、時刻m分０秒〜時刻m+1分０秒の間、すなわち、紹介を求めてから紹介を受けるまでの間、ユーザの人数が画面に表示される。
【００８６】
一方、時刻m分４５秒〜時刻m+1分０秒に紹介を求めたユーザに対しては、時刻m+1分０秒〜時刻m+2分０秒の間、ユーザの人数が画面に表示される。このため、ユーザは、最大１５秒（余裕時間）は、ユーザの人数が画面に表示されないことなる。
【００８７】
ユーザの人数が画面に表示されない期間は、紹介によってユーザの総数が減少することが想定されるタイミングや、次の紹介待ちのユーザの人数がまだ少ないことが想定されるタイミングを含む。したがって、このようなタイミングにおけるユーザの人数（紹介待ちのユーザ総数や、次回の自身に対する紹介の際の候補となるユーザの人数）を画面表示しないものとするのである。
【００８８】
本発明によれば、各ユーザの紹介システムに対する興味が低減する可能性のある人数情報は、適宜画面表示を停止することとして、ユーザの紹介システム参加に対する興味を惹き、参加を促すことができるようになる。
【００８９】
また、本発明の紹介システムにおいて、複数の端末装置のそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、受信された紹介応答に指定される紹介時刻に至るまでの間であり、かつ、ユーザ報告に指定されたユーザ名の個数が、所定の最低人数以上である場合に、満たされるように構成することができる。
【００９０】
本発明は、上記発明の好適実施形態に係るものであり、ユーザの人数が所定の最低人数以上となるまで、画面にユーザの人数を表示しないものとする。
【００９１】
本発明によれば、各ユーザの紹介システムに対する興味が低減する可能性のある人数情報は、適宜画面表示を停止することとして、ユーザの紹介システム参加に対する興味を惹き、参加を促すことができるようになる。
【００９２】
また、本発明の紹介システムにおいて、紹介時刻更新部は、紹介情報記憶部に記憶されるユーザ名のうち、紹介時刻記憶部に記憶される候補時刻を紹介時刻とするユーザ名の個数が所定の第１閾値を超えると、当該候補時刻を、現在時刻から当該所定の間隔時間後の時刻にさらに更新するように構成することができる。
【００９３】
上記の例では、間隔時間と実際に紹介が行われるタイミングの間隔とは一致していたが、本態様では、紹介に必要な人数が集まったときに候補時刻を更新するため、実際に紹介が行われるタイミングの間隔は、間隔時間より短くなると想定される。
【００９４】
本発明によれば、紹介システムに参加しているユーザの人数が十分に多い場合に、紹介待ち時間をできるだけ短くして、ユーザの紹介システム参加に対する興味を惹き、参加を促すことができるようになる。
【００９５】
また、本発明の紹介システムにおいて、紹介時刻決定部は、紹介情報記憶部に記憶されるユーザ名のうち、紹介時刻記憶部に記憶される候補時刻より前で当該候補時刻に最も近い時刻（以下「直近時刻」という。）を紹介時刻とするユーザ名の個数が所定の第１閾値を超え、かつ、紹介情報記憶部に記憶されるユーザ名のうち、紹介時刻記憶部に記憶される候補時刻を紹介時刻とするユーザ名の個数が所定の第２閾値を超えている場合、当該紹介要求に指定されるユーザ名を有するユーザに対して紹介を行うべき紹介時刻として、当該候補時刻にかえて、当該直近時刻を決定するように構成することができる。
【００９６】
ここで、第１閾値は、紹介のグループ分けに十分な人数であり、第２閾値は、画面に表示してもユーザの興味が減退しないと想定される最低人数である。本発明においては、２種類の紹介時刻が想定されており、前の紹介時刻にまだ至っておらず、後の紹介時刻に割り当てられたユーザの人数が一定以上いる場合には、紹介時刻として、候補時刻ではなく、その候補時刻より前の直近の時刻である紹介時刻（直近時刻）を採用するのである。
【００９７】
直近時刻は、候補時刻よりも前の時刻であり、かつ、当該直近時刻を紹介時刻とする人数も一定以上確保されている。そこで、候補時刻ではなく直近時刻を紹介時刻として決定することで、当該ユーザはそれだけ短い待ち時間で紹介を受けられるようになる。
【００９８】
本発明によれば、紹介システムに参加しているユーザの人数が十分に多い場合に、紹介待ち時間をできるだけ短くして、ユーザの紹介システム参加に対する興味を惹き、参加を促すことができるようになる。
【００９９】
本発明のその他の観点に係る紹介方法は、コンピュータ通信網を介して互いに通信可能なサーバ装置と、複数の端末装置と、にて、実行され、以下のように構成する。
【０１００】
すなわち、サーバ装置は、紹介情報記憶部、紹介時刻記憶部、紹介要求受信部、紹介時刻決定部、紹介情報追加部、紹介応答送信部、ユーザ情報取得部、ユーザ報告送信部、抽出消去部、グループ分類部、紹介報告送信部、紹介時刻更新部を有する。
【０１０１】
一方、複数の端末装置のそれぞれは、紹介要求送信部、紹介応答受信部、ユーザ報告受信部、表示部、紹介報告受信部を有する。
【０１０２】
そして、当該紹介方法は、紹介要求送信工程、紹介要求受信工程、紹介時刻決定工程、紹介情報追加工程、紹介応答送信工程、ユーザ情報取得工程、ユーザ報告送信工程、紹介応答受信工程、ユーザ報告受信工程、表示工程、抽出消去工程、グループ分類工程、紹介報告送信工程、紹介報告受信工程、紹介時刻更新工程を備える。
【０１０３】
そして、サーバ装置において、紹介情報記憶部には、他のユーザの紹介を求めるユーザのユーザ名と、当該ユーザに対して紹介を行うべき紹介時刻と、が、対応付けて記憶され、紹介時刻記憶部には、当該紹介時刻の候補となる候補時刻が記憶される。
【０１０４】
一方、複数の端末装置のそれぞれにおいて、紹介要求送信工程では、紹介要求送信部が、当該端末装置を使用するユーザの指示により、当該ユーザのユーザ名を指定する紹介要求を、サーバ装置に送信する。
【０１０５】
さらに、サーバ装置において、紹介要求受信工程では、紹介要求受信部が、複数の端末装置のそれぞれから送信された紹介要求を受信し、当該紹介要求が受信されると、紹介時刻決定工程では、紹介時刻決定部が、当該紹介要求に指定されるユーザ名を有するユーザに対して紹介を行うべき紹介時刻を、紹介時刻記憶部に記憶される候補時刻に決定し、当該紹介時刻が決定されると、紹介情報追加工程では、紹介情報追加部が、当該ユーザ名と、当該紹介時刻と、を対応付けて、紹介情報記憶部に追加して記憶させ、紹介応答送信工程では、紹介応答送信部が、決定された紹介時刻を指定する紹介応答を、当該紹介要求を送信した端末装置に送信する。
【０１０６】
また、当該紹介情報記憶部が更新されると、ユーザ情報取得工程では、ユーザ情報取得部が、紹介情報記憶部に記憶されるユーザ名の個数を取得し、ユーザ報告送信工程では、ユーザ報告送信部が、取得されたユーザ名の個数を指定するユーザ報告を、複数の端末装置のうち、紹介情報記憶部に記憶されるユーザ名のユーザが使用する端末装置のそれぞれに送信する。
【０１０７】
そして、複数の端末装置のそれぞれにおいて、紹介応答受信工程では、紹介応答受信部が、サーバ装置から送信された紹介応答を受信し、ユーザ報告受信工程では、ユーザ報告受信部が、サーバ装置から送信されたユーザ報告を受信し、表示工程では、表示部が、現在時刻が受信された紹介応答に指定される紹介時刻に至るまで、当該紹介時刻と当該現在時刻との差を表示し、当該ユーザ報告が受信され、かつ、所定のユーザ報告表示条件が満たされると、表示部が、当該ユーザ報告に指定されるユーザ名の個数をさらに表示する。
【０１０８】
一方、サーバ装置において、抽出消去工程では、抽出消去部が、紹介情報記憶部に記憶されるユーザ名のうち、当該紹介時刻が現在時刻以降であるユーザ名を、紹介情報記憶部から抽出し、当該ユーザ名を、紹介情報記憶部から消去し、グループ分類工程では、グループ分類部が、抽出されたユーザ名を、１つまたは複数のグループに分類し、紹介報告送信工程では、紹介報告送信部が、分類された１つまたは複数のグループのそれぞれについて、当該グループに属するユーザ名のユーザが使用する端末装置のそれぞれに、当該グループに属する他のユーザのユーザ名を指定する紹介報告を送信する。
【０１０９】
さらに、複数の端末装置のそれぞれにおいて、紹介報告受信工程では、紹介報告受信部が、サーバ装置から送信された紹介報告を受信する。
【０１１０】
そして、サーバ装置において、紹介時刻記憶部に記憶される候補時刻より所定の余裕時間前の時刻に至ると、紹介時刻更新工程では、紹介時刻更新部が、当該候補時刻を、当該余裕時間より長い所定の間隔時間後の時刻に更新する。
【０１１１】
一方、複数の端末装置のそれぞれにおいて、当該所定のユーザ報告表示条件は、現在時刻が、当該紹介応答が受信された後であり、かつ、現在時刻が、受信された紹介応答に指定される紹介時刻に至るまでの間である場合に、満たされる。
【０１１２】
本発明のその他の観点に係るプログラムは、サーバ用プログラムと、端末用プログラムと、を備え、サーバ用プログラムは、サーバ用コンピュータを上記のサーバ装置として機能させ、端末用プログラムは、端末用コンピュータを上記の端末装置として機能させるように構成する。
【０１１３】
また、本発明のプログラムは、コンパクトディスク、フレキシブルディスク、ハードディスク、光磁気ディスク、ディジタルビデオディスク、磁気テープ、半導体メモリ等のコンピュータ読取可能な情報記憶媒体に記録することができる。
【０１１４】
上記プログラムは、プログラムが実行されるコンピュータとは独立して、コンピュータ通信網を介して配布・販売することができる。また、上記情報記憶媒体は、コンピュータとは独立して配布・販売することができる。
【発明の効果】
【０１１５】
本発明によれば、端末装置を使用するユーザ同士をサーバ装置が紹介する紹介システムにおいて、紹介されるまでの待ち時間にユーザに適切な情報を提示して、ユーザに紹介システム参加を促すのに好適な紹介システム、紹介方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。
【発明を実施するための最良の形態】
【０１１６】
以下に本発明の実施形態を説明する。以下では、理解を容易にするため、ゲーム用の情報処理装置を利用して本発明が実現される実施形態を説明するが、以下に説明する実施形態は説明のためのものであり、本願発明の範囲を制限するものではない。したがって、当業者であればこれらの各要素もしくは全要素をこれと均等なものに置換した実施形態を採用することが可能であるが、これらの実施形態も本発明の範囲に含まれる。
【実施例１】
【０１１７】
図１は、プログラムを実行することにより、本発明の端末装置等の機能を果たす典型的な情報処理装置の概要構成を示す模式図である。以下、本図を参照して説明する。
【０１１８】
情報処理装置１００は、ＣＰＵ（Central Processing Unit）１０１と、ＲＯＭ  １０２と、ＲＡＭ（Random Access Memory）１０３と、インターフェイス１０４と、コントローラ１０５と、外部メモリ１０６と、画像処理部１０７と、ＤＶＤ−ＲＯＭ（Digital Versatile Disc ROM）ドライブ１０８と、ＮＩＣ（Network Interface Card）１０９と、音声処理部１１０と、マイク１１１と、を備える。
【０１１９】
ゲーム用のプログラムおよびデータを記憶したＤＶＤ−ＲＯＭをＤＶＤ−ＲＯＭドライブ１０８に装着して、情報処理装置１００の電源を投入することにより、当該プログラムが実行され、本実施形態の端末装置等が実現される。
【０１２０】
ＣＰＵ  １０１は、情報処理装置１００全体の動作を制御し、各構成要素と接続され制御信号やデータをやりとりする。また、ＣＰＵ  １０１は、レジスタ（図示せず）という高速アクセスが可能な記憶域に対してＡＬＵ（Arithmetic Logic Unit）（図示せず）を用いて加減乗除等の算術演算や、論理和、論理積、論理否定等の論理演算、ビット和、ビット積、ビット反転、ビットシフト、ビット回転等のビット演算などを行うことができる。さらに、マルチメディア処理対応のための加減乗除等の飽和演算や、三角関数等、ベクトル演算などを高速に行えるように、ＣＰＵ  １０１自身が構成されているものや、コプロセッサを備えて実現するものがある。
【０１２１】
ＲＯＭ  １０２には、電源投入直後に実行されるＩＰＬ（Initial Program Loader）が記録され、これが実行されることにより、ＤＶＤ−ＲＯＭに記録されたプログラムをＲＡＭ  １０３に読み出してＣＰＵ  １０１による実行が開始される。また、ＲＯＭ  １０２には、情報処理装置１００全体の動作制御に必要なオペレーティングシステムのプログラムや各種のデータが記録される。
【０１２２】
ＲＡＭ  １０３は、データやプログラムを一時的に記憶するためのもので、ＤＶＤ−ＲＯＭから読み出したプログラムやデータ、その他ゲームの進行やチャット通信に必要なデータが保持される。また、ＣＰＵ  １０１は、ＲＡＭ  １０３に変数領域を設け、当該変数に格納された値に対して直接ＡＬＵを作用させて演算を行ったり、ＲＡＭ  １０３に格納された値を一旦レジスタに格納してからレジスタに対して演算を行い、演算結果をメモリに書き戻す、などの処理を行う。
【０１２３】
インターフェイス１０４を介して接続されたコントローラ１０５は、ユーザがゲーム実行の際に行う操作入力を受け付ける。
【０１２４】
インターフェイス１０４を介して着脱自在に接続された外部メモリ１０６には、ゲーム等のプレイ状況（過去の成績等）を示すデータ、ゲームの進行状態を示すデータ、ネットワーク対戦の場合のチャット通信のログ（記録）のデータなどが書き換え可能に記憶される。ユーザは、コントローラ１０５を介して指示入力を行うことにより、これらのデータを適宜外部メモリ１０６に記録することができる。
【０１２５】
ＤＶＤ−ＲＯＭドライブ１０８に装着されるＤＶＤ−ＲＯＭには、ゲームを実現するためのプログラムとゲームに付随する画像データや音声データが記録される。ＣＰＵ  １０１の制御によって、ＤＶＤ−ＲＯＭドライブ１０８は、これに装着されたＤＶＤ−ＲＯＭに対する読み出し処理を行って、必要なプログラムやデータを読み出し、これらはＲＡＭ  １０３等に一時的に記憶される。
【０１２６】
画像処理部１０７は、ＤＶＤ−ＲＯＭから読み出されたデータをＣＰＵ  １０１や画像処理部１０７が備える画像演算プロセッサ（図示せず）によって加工処理した後、これを画像処理部１０７が備えるフレームメモリ（図示せず）に記録する。フレームメモリに記録された画像情報は、所定の同期タイミングでビデオ信号に変換され画像処理部１０７に接続されるモニタ（図示せず）へ出力される。これにより、各種の画像表示が可能となる。
【０１２７】
画像演算プロセッサは、２次元の画像の重ね合わせ演算やαブレンディング等の透過演算、各種の飽和演算を高速に実行できる。
【０１２８】
また、仮想３次元空間に配置され、各種のテクスチャ情報が付加されたポリゴン情報を、Ｚバッファ法によりレンダリングして、所定の視点位置から仮想３次元空間に配置されたポリゴンを所定の視線の方向へ俯瞰したレンダリング画像を得る演算の高速実行も可能である。
【０１２９】
さらに、ＣＰＵ  １０１と画像演算プロセッサが協調動作することにより、文字の形状を定義するフォント情報にしたがって、文字列を２次元画像としてフレームメモリへ描画したり、各ポリゴン表面へ描画することが可能である。
【０１３０】
ＮＩＣ  １０９は、情報処理装置１００をインターネット等のコンピュータ通信網（図示せず）に接続するためのものであり、ＬＡＮ（Local Area Network）を構成する際に用いられる１０ＢＡＳＥ−Ｔ／１００ＢＡＳＥ−Ｔ規格にしたがうものや、電話回線を用いてインターネットに接続するためのアナログモデム、ＩＳＤＮ（Integrated Services Digital Network）モデム、ＡＤＳＬ（Asymmetric Digital Subscriber Line）モデム、ケーブルテレビジョン回線を用いてインターネットに接続するためのケーブルモデム等と、これらとＣＰＵ  １０１との仲立ちを行うインターフェース（図示せず）により構成される。
【０１３１】
インターネット内のＳＮＴＰサーバにＮＩＣ  １０９を介して接続し、ここから情報を得ることによって現在の日時情報を得るようにすることができる。また、各種のネットワークゲームのサーバ装置が、ＳＮＴＰサーバと同様の機能を果たすように構成設定してもよい。
【０１３２】
一旦日時情報が得られれば、情報処理装置１００が動作中はタイマ割込によりリアルタイムクロックと同様の機能を果たすカウンタを更新することとしてもよいし、情報処理装置１００がリアルタイムクロックを有する場合は、その日時情報を修正する態様を採用することもできる。この際に、修正するか否かをユーザに問い合わせてもよい。内蔵するリアルタイムクロックを修正しない場合には、リアルタイムクロックの情報と実際にサーバから得られた情報との差分を保持し、日時情報が必要な場合には、リアルタイムクロックから得られた情報にその差分を加算すればよい。
【０１３３】
音声処理部１１０は、ＤＶＤ−ＲＯＭから読み出した音声データをアナログ音声信号に変換し、これに接続されたスピーカ（図示せず）から出力させる。また、ＣＰＵ  １０１の制御の下、ゲームの進行の中で発生させるべき効果音や楽曲データを生成し、これに対応した音声をスピーカから出力させる。
【０１３４】
音声処理部１１０では、ＤＶＤ−ＲＯＭに記録された音声データがＭＩＤＩデータである場合には、これが有する音源データを参照して、ＭＩＤＩデータをＰＣＭデータに変換する。また、ADPCM形式やOgg Vorbis形式等の圧縮済音声データである場合には、これを展開してＰＣＭデータに変換する。ＰＣＭデータは、そのサンプリング周波数に応じたタイミングでＤ／Ａ（Digital/Analog）変換を行って、スピーカに出力することにより、音声出力が可能となる。
【０１３５】
さらに、情報処理装置１００には、インターフェイス１０４を介してマイク１１１を接続することができる。この場合、マイク１１１からのアナログ信号に対しては、適当なサンプリング周波数でＡ／Ｄ変換を行い、ＰＣＭ形式のディジタル信号として、音声処理部１１０でのミキシング等の処理ができるようにする。
【０１３６】
このほか、情報処理装置１００は、ハードディスク等の大容量外部記憶装置を用いて、ＲＯＭ  １０２、ＲＡＭ  １０３、外部メモリ１０６、ＤＶＤ−ＲＯＭドライブ１０８に装着されるＤＶＤ−ＲＯＭ等と同じ機能を果たすように構成してもよい。
【０１３７】
以上で説明した情報処理装置１００は、いわゆる「コンシューマ向けテレビゲーム装置」に相当するものであるが、コンピュータ通信網を介して他の機器と通信を行うものであれば本発明を実現することができる。したがって、携帯電話、携帯ゲーム機器、カラオケ装置、一般的なビジネス用コンピュータなど、種々の計算機上で本発明を実現することが可能である。
【０１３８】
たとえば、一般的なコンピュータは、上記情報処理装置１００と同様に、ＣＰＵ、ＲＡＭ、ＲＯＭ、ＤＶＤ−ＲＯＭドライブ、および、ＮＩＣを備え、情報処理装置１００よりも簡易な機能を備えた画像処理部を備え、外部記憶装置としてハードディスクを有する他、フレキシブルディスク、光磁気ディスク、磁気テープ等が利用できるようになっている。また、コントローラ１０５ではなく、キーボードやマウスなどを入力装置として利用する。
【０１３９】
また、サーバ装置は、一般的なコンピュータ上に実現されるが、情報処理装置１００の群の中の所定の情報処理装置１００をサーバ装置として利用することも可能である。情報処理装置１００と一般的なコンピュータとは、速度や容量の差は大きいことが多いものの、原理的な構成や機能に大きな相違はない。そこで、以下の説明では、一般的なコンピュータと情報処理装置１００とを同じように扱って説明する。
【０１４０】
（紹介システム）
図２は、本実施形態に係る紹介システムの概要構成を示す説明図である。以下、本図を参照して説明する。
【０１４１】
本紹介システム２０１は、インターネット２５１を介して互いに通信可能なサーバ装置２２１と、複数の端末装置２４１と、から構成される。
【０１４２】
各端末装置２４１は、通信対戦をしたり、チャットをしたりする際には、ピアツーピア通信を行う。この通信の相手先を紹介してもらうために、サーバ装置２２１をロビーサーバとして使用する。
【０１４３】
すなわち、ユーザは、自分の端末装置２４１から一旦サーバ装置２２１に他のユーザの端末装置２４１の紹介を求め、一定時間経過後に、紹介が受けられ、相手のユーザ名、ＩＰアドレスやポート番号などの通信識別子が得られる。
【０１４４】
その後は、紹介された同士の端末装置２４１が、相手先のＩＰアドレスやポート番号などを参照してピアツーピア通信を行う。
【０１４５】
このほか、相手の端末装置２４１とは直接の通信を行わない態様もありうる。たとえば、各ユーザのゲームにおけるパラメータがサーバ装置２２１に蓄積されている場合には、対戦相手を紹介してもらうと同時に、サーバ装置２２１内にて、当該パラメータに基づいて、ゲームにおける対戦の計算処理を行ってしまう。そして、紹介された同士の端末装置２４１には、サーバ装置２２１にて計算された対戦の途中経過や結果が送信され、端末装置２４１では、これを画面に表示する、という形態である。
【０１４６】
以下では、主として端末装置２４１同士がピアツーピア通信を行う場合を想定して説明するが、上記のような態様に本発明を適用することも可能である。
【０１４７】
また、本発明においては、紹介待ちの間は、現在紹介を待っている各種のユーザ数や、実際に紹介が受けられるまでの残り時間、紹介を求めるべく新たにサーバ装置２２１に通信した端末装置２４１を使用するユーザの情報等が、サーバ装置２２１から各端末装置２４１へ適宜伝達され、端末装置２４１にて画面表示される。
【０１４８】
図３は、本実施形態の最も単純な設定に係る紹介システムにおける通信の様子を示すセッション図である。以下、本図を参照して説明する。
【０１４９】
本図の時間軸３０１には、時刻…，ti-1，ti，…が記載されているが、これらは、紹介のためのマッチング（グループ分け）処理をサーバ装置２２１が行う紹介時刻を示している。
【０１５０】
一方、本図には、紹介を求める各端末装置２４１に割り当てられる紹介時刻の変遷を示す帯３０２が記載されている。ある時点において帯３０２に設定された紹介時刻を「候補時刻」と呼ぶ。
【０１５１】
本図に示すように、時刻tiが候補時刻として設定されている時間帯３０３は、時刻ti-1〜時刻tiの時間帯３０４とは、余裕時間３０５だけずれている。
【０１５２】
また、図示はしていないが、時刻ti+1が候補時刻として設定されている時間帯は、時刻ti〜時刻ti+1の時間帯とは、余裕時間３０５だけずれている。
【０１５３】
この余裕時間３０５は、時刻ti-1と時刻tiとの間隔や、時刻tiと時刻ti+1との間隔である間隔時間３０６よりも短い。
【０１５４】
添字がこれらより前、あるいはこれらより後の値をとった場合にも、同様の関係が成立している。
【０１５５】
このずれを設けることが、本発明の構成上の特徴の一つである。
【０１５６】
本図に示すように、各端末装置２４１から紹介要求（実線矢印）が送信され、サーバ装置２２１に到達すると、サーバ装置２２１は、現在帯３０２に示されている候補時刻を指定した紹介応答（点線矢印）を端末装置２４１に返すとともに、紹介待ちになっている各端末装置２４１に、現在のユーザの紹介待ちの状況、たとえば、現在紹介待ちとなっているユーザの総数や、当該端末装置２４１と同じ時刻を紹介時刻として紹介待ちとなっているユーザの数等を示すユーザ報告（太線矢印）を送信する。
【０１５７】
また、サーバ装置２２１は、時刻…，ti-1，ti，ti+1，…のそれぞれに至ると、その紹介時刻に割り当てられた端末装置２４１のマッチング（グループ分け）を行い、当該マッチングされた端末装置２４１に、紹介相手を示す紹介報告（白ヌキ矢印）を送信する。
【０１５８】
紹介報告を受信した端末装置２４１は、紹介報告に指定された相手と対戦やチャットなど、ピアツーピアの通信ができるようになる。
【０１５９】
本図に示す例では、端末装置２４１として、ａ〜ｆが想定されている。
【０１６０】
端末装置２４１ａ、２４１ｂは、時刻ti-1よりも前にサーバ装置２２１に紹介要求を送信しているが、候補時刻はすでにtiとなっているため、紹介応答に指定される紹介時刻もtiとなっている。
【０１６１】
その後、現在時刻がti-1に至ると、端末装置２４１ａよりも以前に紹介を求めていた端末装置２４１（図示せず）に対して紹介報告がなされる。
【０１６２】
したがって、時刻ti-1においてサーバ装置２２１において紹介のためのマッチングがなされた直後の時点で、紹介待ちになっているユーザの総数は、０人ではなく、紹介時刻としてtiが割り当てられた端末装置２４１ａ、２４１ｂのユーザの２人ということになる。
【０１６３】
以後、端末装置２４１ｃ、２４１ｄ、２４１ｅは、時刻ti-1以降、時刻tiよりも前に、サーバ装置２２１に紹介要求を送信しており、紹介時刻tiを指定する紹介応答を受信する。
【０１６４】
端末装置２４１ｆは、時刻ti-1以降、時刻tiよりも前に、サーバ装置２２１に紹介要求を送信しているが、候補時刻はすでにti+1となっているため、紹介応答に指定される紹介時刻もti+1となっている。
【０１６５】
その後、現在時刻がtiに至ると、紹介時刻ｔとしてtiが割り当てられた端末装置２４１ａ〜２４１ｅについて紹介のためのマッチングがなされ、紹介報告がなされる。
【０１６６】
時刻tiにおいてこのマッチングがなされた直後の時点で、紹介待ちになっているユーザの総数は、０人ではなく、紹介時刻としてti+1が割り当てられた端末装置２４１ｆのユーザの１人ということになる。
【０１６７】
このように、候補時刻の時間帯３０３と、ある紹介時刻と次の紹介時刻に挟まれる時間帯３０４とに、ずれを設けているが、単位時間あたりに紹介を求めてくる端末装置２４１の個数の期待値をv、余裕時間３０５をA、間隔時間３０６をBとおくと、A < Bであり、ある紹介のためのマッチングにおいて処理されるユーザの人数の期待値はvBとなり、プールされる人数の期待値はvAとなる。
【０１６８】
このようなずれを設けないと、A = 0となるから、プールされる人数の期待値は０となってしまうが、本発明においては、A > 0にしてあるから、プールされる人数の期待値も０より大きくなる。このように、紹介待ちのユーザの人数が０人にクリアされてしまう状況を、できるだけ防止することができ、ある程度の最低数をプールすることができる。
【０１６９】
紹介システムにおいて、紹介を求めた際に、同じように紹介待ちとなっている他のユーザがどれだけいるかを示す情報をユーザに示す場合、他のユーザの人数が「０人」であることがわかると、ユーザが紹介を受けるのをすぐにあきらめて、紹介システムの利用を直ちに止めてしまう現象が見られる。これが連続すると、いつまでたっても、紹介を希望するユーザの数は０人のままとなってしまう。
【０１７０】
本発明においては、余裕時間３０５を設けることで、他のユーザの人数は「０人」よりも多くなる状況が殆どとなると期待されるから、上記のような、紹介待ちユーザが０人のままとなってしまうような状況は、できるだけ防止することができる。
【０１７１】
以下、サーバ装置２２１と端末装置２４１の具体的な態様について、さらに詳細に説明する。
【０１７２】
（サーバ装置）
図４は、本実施形態に係る通信システムにおけるサーバ装置の概要構成を示す説明図である。図５は、当該サーバ装置にて実行されるサーバ処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【０１７３】
本実施形態に係るサーバ装置２２１は、情報処理装置１００において、所定のサーバ用プログラムを実行することによって実現される。
【０１７４】
サーバ装置２２１は、紹介情報記憶部４０１、紹介時刻記憶部４０２、紹介要求受信部４０３、紹介時刻決定部４０４、紹介情報追加部４０５、紹介応答送信部４０６、ユーザ情報取得部４０７、ユーザ報告送信部４０８、抽出消去部４０９、グループ分類部４１０、紹介報告送信部４１１、紹介時刻更新部４１２、ユーザ情報記憶部４１３を有する。
【０１７５】
そして、サーバ装置２２１におけるサーバ処理が開始されると、サーバ装置２２１が実現される情報処理装置１００のＣＰＵ  １０１は、ＲＡＭ  １０３に用意された紹介情報記憶部４０１、紹介時刻記憶部４０２を初期化する（ステップＳ５０１）。
【０１７６】
ここで、紹介情報記憶部４０１には、以下の情報が対応付けて、１つのレコードとして記憶される。
（ａ）他のユーザの紹介を求めるユーザのユーザ名。
（ｂ）当該ユーザに対して紹介を行うべき紹介時刻。
（ｃ）当該ユーザが使用する端末装置２４１の通信識別子（ＩＰアドレスやポート番号等）。
【０１７７】
ユーザ名とは、典型的には各ユーザに割り当てられる識別番号やＩＤ（IDentifier）のことであり、各ユーザに重複しないように与えられるものである。
【０１７８】
一方、紹介時刻とは、他のユーザの紹介を求めるユーザに対して、紹介を行う予定の時刻のことであり、紹介する相手がいない等のエラーが生じない限り、現在時刻に対して未来の時刻となる。
【０１７９】
また、当該ユーザに対しては、必ず端末装置２４１を使用して連絡がされるので、当該ユーザが使用する端末装置２４１の通信識別子も記憶される。
【０１８０】
紹介情報記憶部４０１は、上記のような要素を含む構造体の配列として構成するのが典型的であるが、各種のデータベースシステムを利用して実現しても良い。この場合には、紹介情報記憶部４０１は、ＲＡＭ  １０３とハードディスクとが共働して実現されることとなる。
【０１８１】
初期化の際には、紹介情報記憶部４０１はクリアされ、記憶されるユーザ名の個数は０個となる。
【０１８２】
一方、紹介時刻記憶部４０２には、当該紹介時刻の候補となる候補時刻が記憶される。
【０１８３】
候補時刻は、次に紹介を求めてきたユーザに対して割り当てられる紹介時刻として用いられる。したがって、候補時刻は、現在時刻に対して未来の時刻となる。
【０１８４】
紹介時刻記憶部４０２に記憶される候補時刻は、所定の間隔時間単位で増加する（未来に向かって更新される）のが典型的である。
【０１８５】
以下では、候補時刻が記憶される紹介時刻記憶部４０２の変数名をsと表記する。本実施形態では、初期化の際には、
s ← 現在時刻 + B；
を実行し、変数sに、現在時刻から間隔時間Bだけ後の時刻を設定する。ここで、←は値の代入を行うことを意味する。
【０１８６】
初期化が完了すると、サーバ装置２２１のＣＰＵ  １０１は、ＮＩＣ  １０９の受信状況をチェックし、端末装置２４１から紹介要求が到達しているか否かを調べる（ステップＳ５０２）。到達していなければ（ステップＳ５０２；Ｎｏ）、ステップＳ５１０に進む。
【０１８７】
一方、到達している場合（ステップＳ５０２；Ｙｅｓ）、ＮＩＣ  １０９を介して当該紹介要求を受信する（ステップＳ５０３）。したがって、ＮＩＣ  １０９は、紹介要求受信部４０３として機能する。
【０１８８】
紹介要求は、端末装置２４１におけるユーザの指示に基づいて送信されるので、紹介要求がサーバ装置２２１に到着する時刻には、ばらつきがあるのが一般的である。
【０１８９】
さて、受信された紹介要求には、以下の情報が含まれている。
（ａ）発信元の端末装置２４１の通信識別子（ＩＰアドレスやポート番号）。
（ｂ）当該端末装置２４１を使用するユーザのユーザ名。
【０１９０】
さて、紹介要求が受信されたら、ＣＰＵ  １０１は、紹介時刻記憶部４０２に記憶される候補時刻sを、当該紹介要求に指定されるユーザ名を有するユーザに対して紹介を行うべき紹介時刻に決定する（ステップＳ５０４）。したがって、ＣＰＵ  １０１は、ＲＡＭ  １０３と共働して、紹介時刻決定部４０４として機能する。
【０１９１】
ついで、ＣＰＵ  １０１は、紹介情報記憶部４０１に、
（ａ）受信された紹介要求に指定されるユーザ名。
（ｂ）ステップＳ５０４にて決定された紹介時刻。
（ｃ）紹介要求の発信元の端末装置２４１の通信識別子（ＩＰアドレスやポート番号）。
を対応付けて、１つのレコードとして紹介待ちとして追加して記憶させる（ステップＳ５０５）。これにより、紹介情報記憶部４０１に記憶されるユーザ名の個数は、１だけ増えることになる。
【０１９２】
したがって、ＣＰＵ  １０１は、ＲＡＭ  １０３と共働して、紹介情報追加部４０５として機能する。
【０１９３】
さらに、ＣＰＵ  １０１は、ＮＩＣ  １０９を介して、ステップＳ５０４にて決定された紹介時刻を指定する紹介応答を、当該紹介要求を送信した端末装置２４１に送信する（ステップＳ５０６）。
【０１９４】
これによって、各端末装置２４１は、当該端末装置２４１を使用するユーザが紹介を受けられる時刻を知ることができるようになる。
【０１９５】
したがって、ＣＰＵ  １０１は、ＮＩＣ  １０９と共働して、紹介応答送信部４０６として機能する。
【０１９６】
さて、ステップＳ５０３〜ステップＳ５０６の処理では、紹介要求と紹介応答のやりとりがされているが、以降では、すでに紹介待ちとなっているユーザの端末装置２４１に、サーバ装置２２１から種々の情報を送る処理を行う。
【０１９７】
ここで、ユーザ情報記憶部４１３は、ユーザ名と、当該ユーザ名のユーザに関する情報と、が、対応付けて、あらかじめ記憶されている。「ユーザに関する情報」とは、たとえば、当該ユーザのハンドル名やニックネーム、アバターの画像などが含まれる。このほか、通信対戦ゲームにおいては、当該ユーザの戦績やレベル、得意技、装備するアイテムなどの情報、友達紹介ゲームにおいては、趣味や好みの異性のタイプ、好きな食べ物などの情報を含むこととしても良い。
【０１９８】
ユーザ情報記憶部４１３は、データベースを利用して構成するのが典型的である。したがって、ハードディスクが、ユーザ情報記憶部４１３として機能する。
【０１９９】
さて、ＣＰＵ  １０１は、受信された紹介要求に指定されるユーザ名に対応付けてユーザ情報記憶部４１３に記憶されるユーザに関する情報を取得する（ステップＳ５０７）。
【０２００】
さらに、ＣＰＵ  １０１は、紹介情報記憶部４０１に記憶されるユーザ名の個数（ユーザの人数）を取得する（ステップＳ５０８）。これは、紹介情報記憶部４０１が、ステップＳ５０５の処理によって更新されたことに基づくものである。
【０２０１】
これらの処理により、ＣＰＵ  １０１は、ＲＡＭ  １０３やハードディスク等と共働して、ユーザ情報取得部４０７として機能する。
【０２０２】
そして、ＣＰＵ  １０１は、ＮＩＣ  １０９を介して、
（ａ）ステップＳ５０７において取得された、新たに紹介を求めたユーザに関する情報。
（ｂ）ステップＳ５０８において取得された現在紹介待ちとなっているユーザの人数。
を指定する取得されたユーザに関する情報を指定する当該ユーザ報告を、紹介情報記憶部４０１に記憶される通信識別子のそれぞれの端末装置２４１に対して送信して（ステップＳ５０９）、ステップＳ５０２に戻る。
【０２０３】
したがって、ＣＰＵ  １０１は、ＮＩＣ  １０９と共働して、ユーザ報告送信部４０８として機能する。
【０２０４】
なお、ステップＳ５０８においては、紹介待ちのユーザの総数のほかに、各紹介時刻毎のユーザの人数の情報も取得し、この情報をユーザ報告に指定することとしても良い。
【０２０５】
また、各紹介時刻毎のユーザの人数すべてを送信するのではなく、ユーザ報告を送信する相手先の端末装置２４１の通信識別子に対応付けて記憶されている紹介時刻におけるユーザの人数のみを、ユーザ報告に指定することもできる。
【０２０６】
このほか、後述するように、ステップＳ５０７を経由せずにステップＳ５０８に到達する制御フローによりステップＳ５０９に至った場合には、新たに紹介を求めたユーザに関する情報は省略し、ユーザの人数をユーザ報告に指定することとする。
【０２０７】
これらの情報は、ユーザの興味を惹き、紹介システム２０１への参加の意欲を増すために、適宜端末装置２４１にて表示される。
【０２０８】
一方、ステップＳ５０２において、紹介要求が到達していなければ（ステップＳ５０２；Ｎｏ）、サーバ装置２２１のＣＰＵ  １０１は、リアルタイムクロック等を参照して、現在時刻を取得する（ステップＳ５１０）。
【０２０９】
そして、紹介情報記憶部４０１に、紹介時刻が現在時刻以前となっているレコードが存在するか否か、すなわち、紹介のためのマッチングを直ちに行う必要があるユーザが存在するか否かを調べ（ステップＳ５１１）、存在すれば（ステップＳ５１１；Ｙｅｓ）、そのレコードをすべて抽出して（ステップＳ５１２）、抽出されたレコードを紹介情報記憶部４０１から消去し、ユーザを紹介待ちから削除する（ステップＳ５１３）。
【０２１０】
したがって、ＣＰＵ  １０１は、ＲＡＭ  １０３等と共働して、抽出消去部４０９として機能する。
【０２１１】
ここで抽出されるユーザは、まさに今、紹介を行うべきユーザである。紹介ができないなどのエラーが生じない限り、紹介時刻が現在時刻以降であるユーザの紹介時刻は、一致するはずである。
【０２１２】
さらに、ＣＰＵ  １０１は、抽出されたレコードを、複数のグループに分類する（ステップＳ５１４）。したがって、ＣＰＵ  １０１は、グループ分類部４１０として機能する。
【０２１３】
各グループに分類されるレコードの個数は、紹介システムが使用される用途によって異なる。通信対戦格闘ゲームや、通信囲碁、通信将棋、通信チェスゲームなどにおいては、１対１の対戦が行われ、恋人探しゲーム、メール友達探しゲームにおいては、ある１人に対して別の１人を紹介するのが典型的であるので、各グループに含まれるユーザの人数は２人である。また、通信麻雀ゲームなどにおいては、４人で対局が行われるので、各グループに含まれるユーザの人数は４人である。このように、グループに含まれるユーザ名の個数は、用途に応じて適宜変更することが可能である。各グループに含まれるユーザ名のユーザ同士が、マッチングされたユーザであり、互いに紹介されたユーザである。
【０２１４】
このようなグループ分けは、ランダムに行っても良いし、ユーザ情報記憶部４１３に記憶される情報に基づいて、たとえばレベルが互いに近いユーザ同士をマッチさせたり、趣味や好みのタイプが合致するユーザ同士をマッチさせて、１つのグループとするなどの手法を採用しても良い。
【０２１５】
そして、分類ができなかったレコード、すなわち、１対１の紹介を行う場合において、グループに含まれるユーザの人数が１人となってしまったレコードや、４人の紹介を行う場合においてグループに含まれるユーザの人数が３人以下となってしまったレコードのそれぞれの紹介時刻を現在の候補時刻sに修正して、紹介情報記憶部４０１に追加して記憶させ、紹介待ちに戻す（ステップＳ５１５）。
【０２１６】
このような状況は、１対１の紹介を行う場合に、抽出されたレコードの数が奇数であったり、４人ごとの紹介を行う場合に、抽出されたレコードの数が４の倍数でなかったりした場合に生じうる。なお、このような状況が生じないようにするために、後述する紹介時刻更新部４１２における処理で工夫をしても良い。
【０２１７】
そして、ＣＰＵ  １０１は、分類されたグループのそれぞれについて、当該グループに属するユーザ名のユーザが使用する端末装置２４１のそれぞれに、当該グループに属する他のユーザのユーザ名を指定する紹介報告を送信する（ステップＳ５１６）。したがって、ＣＰＵ  １０１は、ＮＩＣ  １０９と共働して、紹介報告送信部４１１として機能する。
【０２１８】
これにより、各端末装置２４１は、他のユーザの紹介を受けることとなる。ここで、紹介報告には、ユーザ名のみならず、当該ユーザが使用する端末装置２４１の通信識別子（ＩＰアドレスやポート番号等）も指定するのが典型的である。
【０２１９】
このほか、ＣＰＵ  １０１は、分類されたグループのそれぞれのユーザを対戦させて、グループ内における勝敗や順位を計算する対戦シミュレーションを行っても良い。
【０２２０】
各グループに含まれるレコードに指定される通信識別子を有する端末装置２４１に送信される紹介報告には、各ユーザの勝敗や順位の結果や、対戦シミュレーションの経時変化の様子の情報を指定すれば、端末装置２４１にこれらの情報が通知され、端末装置２４１でこれらの情報を表示することができるようになる。
【０２２１】
順位を決定する手法については、ユーザ名に対応付けてユーザ情報記憶部４１３に記憶される属性、レベルや過去の戦績、所有するアイテムなどのパラメータを適宜重み付けて比較したり、乱数を取り混ぜて勝敗を決する等、ゲームのルールに基づいて、種々の態様を採用することができる。
【０２２２】
さて、このような紹介の処理が終わると、ＣＰＵ  １０１は、現在時刻をリアルタイムクロック等から取得して（ステップＳ５１７）、紹介時刻記憶部４０２に記憶される候補時刻を更新すべきか否かを判断する（ステップＳ５１８）。この際には、以下のような条件を考慮する必要がある。
【０２２３】
まず、現在時刻が、「候補時刻sより余裕時間Aだけ前の時刻s-A」以降である場合には、できるだけ早期に候補時刻sを更新することが望ましい。
【０２２４】
また、紹介情報記憶部４０１において候補時刻sを紹介時刻とするレコードの個数が、あぶれるユーザができるだけないような数の条件を満たしていなければ、更新すべきでない、とも考えられる。たとえば、１対１の紹介では、偶数であることが望ましいし、４人の紹介では、４の倍数であることが望ましいので、この条件を満たさない場合には、候補時刻sの更新を行わない、という考え方もある。
【０２２５】
このほか、紹介情報記憶部４０１において候補時刻sを紹介時刻とするレコードの個数が、所定の第１閾値を超える場合、すなわち、グループ分けに十分な人数が確保できている場合には、直ちに候補時刻sを更新しても良い、と考えることもできる。この場合には、さらに、当該レコードの個数についての条件（上記の例における偶数であることや４の倍数であること等）を満たすように閾値を設定することが望ましい。
【０２２６】
紹介システムの用途に応じ、これらの条件を適宜組み合わせて、候補時刻sを更新すべきか否かを判断することとなる。
【０２２７】
さて、候補時刻sを更新することとなった場合（ステップＳ５１８；Ｙｅｓ）、
s ← 現在時刻 + B；
を実行して（ステップＳ５１９）、ステップＳ５０８に戻る。候補時刻sを更新しないこととなった場合（ステップＳ５１８；Ｎｏ）も同様である。
【０２２８】
したがって、ＣＰＵ  １０１は、ＲＡＭ  １０３と共働して、紹介時刻更新部４１２として機能する。
【０２２９】
ここで、ステップＳ５０８に戻るのは、紹介待ちのユーザの人数が変化したためである。そこで、現在紹介待ちのユーザが使用する端末装置２４１に、最新の情報を通知するのである。
【０２３０】
このほか、ステップＳ５０４において紹介時刻決定部４０４が決定する時刻を、単純に候補時刻sとするのではない態様を採用しても良い。
【０２３１】
すなわち、紹介情報記憶部４０１に記憶されるレコードを調べて、候補時刻sより前であり、かつ、候補時刻sに最も近い時刻（以下「直近時刻」という。）を取得する。
【０２３２】
そして、
（ａ）直近時刻を紹介時刻とするレコードの個数が所定の第１閾値を超えており、かつ、
（ｂ）候補時刻sを紹介時刻とするレコードの個数が所定の第２閾値を超えている
場合には、紹介時刻として、当該直近時刻を決定するように構成するのである。
【０２３３】
ここで、第１閾値は、紹介のグループ分けに十分な人数であり、第２閾値は、画面に表示してもユーザの興味が減退しないと想定される最低人数である。本発明においては、２種類の紹介時刻が想定されており、前の紹介時刻にまだ至っておらず、後の紹介時刻に割り当てられたユーザの人数が一定以上いる場合には、紹介時刻として、候補時刻ではなく、その候補時刻より前の直近の時刻である紹介時刻（直近時刻）を採用するのである。
【０２３４】
直近時刻は、候補時刻よりも前の時刻であり、かつ、当該直近時刻を紹介時刻とする人数も一定以上確保されている。そこで、候補時刻ではなく直近時刻を紹介時刻として決定することで、当該ユーザはそれだけ短い待ち時間で紹介を受けられるようになる。
【０２３５】
また、現在時刻が直近時刻に至ると、紹介時刻が直近時刻のレコードはすべて抽出されて消去されるため、これ以降は、候補時刻が紹介時刻として決定されることとなる。
【０２３６】
以下では、端末装置２４１の構成について、詳細に説明する。
【０２３７】
（端末装置）
図６は、本実施形態に係る通信システムにおける端末装置の概要構成を示す説明図である。図７は、当該端末装置にて実行される端末処理の制御の流れを示すフローチャートである。以下、本図を参照して説明する。
【０２３８】
本実施形態に係る端末装置２４１は、情報処理装置１００にて所定の端末プログラムを実行することによって実現される。
【０２３９】
端末装置２４１は、紹介要求送信部６０１、紹介応答受信部６０２、ユーザ報告受信部６０３、表示部６０４、紹介報告受信部６０５を有する。このほか、図示するように、通信部６０６を有するように構成することができる。
【０２４０】
端末装置２４１において、端末処理が開始されると、情報処理装置１００のＣＰＵ  １０１は、キーボードやマウスなどの入力装置の操作状況を監視し（ステップＳ７０１）、ユーザが他のユーザの紹介を求める指示入力をしていれば（ステップＳ７０２；紹介）、ＮＩＣ  １０９を介して、当該ユーザのユーザ名を指定する紹介要求を、サーバ装置２２１に送信する（ステップＳ７０３）。
【０２４１】
したがって、ＣＰＵ  １０１は、ＮＩＣ  １０９等と共働して、紹介要求送信部６０１として機能する。
【０２４２】
ユーザが、他のユーザの紹介を受けたいと考えた場合には、当該ユーザが使用する端末装置２４１を適宜操作することによって、その希望を端末装置２４１に入力する。端末装置２４１が携帯電話やゲーム機である場合には、各種のボタン操作、キー操作によってこれらの入力が行われ、一般的なコンピュータである場合には、各種のマウス操作によってこれらの入力が行われるのが典型的である。
【０２４３】
そして、ＣＰＵ  １０１は、ＮＩＣ  １０９を介して、サーバ装置２２１から送信された紹介応答を受信する（ステップＳ７０４）。したがって、ＣＰＵ  １０１は、ＮＩＣ  １０９と共働して、紹介応答受信部６０２として機能する。
【０２４４】
そして、紹介応答に指定されている紹介時刻を取得して、これをＲＡＭ  １０３内の所定の領域に、記憶させ（ステップＳ７０５）、ステップＳ７０１に戻る。
【０２４５】
一方、ユーザが他の操作をしていた場合（ステップＳ７０２；その他）、対応する処理を実行して（ステップＳ７０６）、ステップＳ７０１に戻る。
【０２４６】
さらに、ユーザが特段の指示入力をしていなかった場合（ステップＳ７０２；なし）、ＣＰＵ  １０１は、リアルタイムクロック等を参照して現在時刻を取得し（ステップＳ７０７）、ＲＡＭ  １０３内に記憶された紹介時刻と、取得された現在時刻の差を計算して（ステップＳ７０８）、計算結果を画面に表示する（ステップＳ７０９）。
【０２４７】
この差は、当該端末装置２４１を使用するユーザが紹介を受けるまでにどれだけ待つ必要があるかを示す残り待ち時間に相当する。
【０２４８】
したがって、ＣＰＵ  １０１の制御の下、画像処理部１０７と、これに接続されるモニタは、表示部６０４として機能する。
【０２４９】
さらに、ＣＰＵ  １０１は、ＮＩＣ  １０９にサーバ装置２２１から送信された通信パケットが到着していないか調べる（ステップＳ７１０）。到着していなければ（ステップＳ７１０；Ｎｏ）、ステップＳ７０１に戻る。到着していれば（ステップＳ７１０；Ｙｅｓ）、当該通信パケットを受信して（ステップＳ７１１）、その種類を調べる（ステップＳ７１２）。
【０２５０】
当該通信パケットが、ユーザ報告である場合（ステップＳ７１２；ユーザ報告）、ＣＰＵ  １０１は、ユーザ報告に指定されている情報を取得する（ステップＳ７１３）。したがって、ＣＰＵ  １０１は、ＮＩＣ  １０９と共働して、ユーザ報告受信部６０３として機能する。
【０２５１】
ユーザ報告に指定される情報には、以下のようなものがある。
（ａ）新たに紹介を求めたユーザに関する情報。ユーザ報告が送信されたタイミングによっては、この情報が含まれない場合もある。
（ｂ）現在紹介待ちのユーザの総数。
（ｃ）当該端末装置２４１と同じ紹介時刻に紹介を受けるべく、紹介待ちとなっているユーザの人数。
【０２５２】
これらの情報は、用途に応じて、適宜組み合わせたり、適宜省略したりすることができる。
【０２５３】
そして、ＣＰＵ  １０１は、画像処理部１０７に指示を出して、当該ユーザ報告から取得した情報を画面に表示し（ステップＳ７１４）、ステップＳ７０１に戻る。
【０２５４】
これによって、端末装置２４１を使用するユーザは、自分が紹介を受けるまでの待ち時間を表示画面で確認できることとなり、ユーザの紹介システムに参加する意思を維持することができるようになる。
【０２５５】
また、当該端末装置２４１を使用するユーザは、自分が紹介を受けるまでの待ち時間に、他の紹介待ちのユーザの人数を確認できることとなり、他のユーザとの連帯感を高めるとともに、多数のユーザの中から自分に適合したユーザを紹介してもらえるという期待感を得ることができるようになる。
【０２５６】
一方、当該通信パケットが紹介報告である場合（ステップＳ７１２；紹介報告）、ＣＰＵ  １０１は、紹介報告に指定されるユーザ名、当該ユーザが使用する端末装置２４１の通信識別子など、紹介相手の情報を取得して（ステップＳ７１５）、ＮＩＣ  １０９を介して当該紹介相手との通信を開始する（ステップＳ７１６）。したがって、ＣＰＵ  １０１は、ＮＩＣ  １０９と共働して、紹介報告受信部６０５、ならびに、通信部６０６として機能する。
【０２５７】
そして、紹介相手との通信が終わったら、ステップＳ７０１に戻る。
【０２５８】
当該通信パケットがそのほかの種類である場合（ステップＳ７１２；その他）、対応する処理を実行して（ステップＳ７１７）、ステップＳ７０１に戻る。
【０２５９】
このフローでは、紹介待ちとなっている間、すなわち、紹介応答を受信してから、紹介時刻までの間は、常に、残り待ち時間と、ユーザ報告に指定される情報と、が画面に表示されるが、ユーザ報告に指定される情報については、表示される時間帯を制限しても良い。
【０２６０】
このように、ユーザ報告に指定される情報を画面に表示する条件を、ユーザ報告表示条件と呼ぶ。ユーザ報告表示条件については、以下のようなものを採用することができる。
（ａ）紹介応答を受信してから現在時刻が紹介時刻になるまでの間、ユーザ報告表示条件が満たされる。
（ｂ）紹介応答を受信してから現在時刻が紹介時刻になるまでの間であり、かつ、紹介時刻と現在時刻の差が、間隔時間Bと余裕時間Aの差以下である場合に、ユーザ報告表示条件が満たされる。
（ｃ）紹介応答を受信してから現在時刻が紹介時刻になるまでの間であり、かつ、ユーザ報告に指定される同じ時刻に紹介を受ける紹介待ちのユーザの人数が、所定の閾値を超えた場合に、ユーザ報告表示条件が満たされる。
【０２６１】
条件（ａ）は、最も単純なものであり、ユーザ報告に指定される紹介待ちのユーザ総数、あるいは、同じ時刻に紹介を受ける紹介待ちのユーザの人数が、そのまま表示されるものである。
【０２６２】
条件（ｂ）は、表示される紹介待ちのユーザ総数、あるいは、同じ時刻に紹介を受ける紹介待ちのユーザの人数が小さい値となったり減少したりするのをできるだけ避ける手法であり、余裕時間Bの間に紹介待ちのユーザがプールされるまで、ユーザの人数を表示しないこととするものである。
【０２６３】
条件（ｃ）は、表示される同じ時刻に紹介を受ける紹介待ちのユーザの人数が小さい値となるのを避ける手法であり、紹介待ちのユーザがプールされるまで、ユーザの人数を表示しないこととするものである。
【０２６４】
紹介報告に指定されるユーザ名のユーザが使用する端末装置２４１の通信識別子も、紹介報告に指定するのが典型的であり、これによって、サーバ装置２２１を中継しないピアツーピアの通信を行って、通信対戦やチャットなどの通信が行われる。
【０２６５】
なお、上記のように、端末装置２４１の通信識別子とユーザ名とは、一緒に処理するのが典型的であるので、端末装置２４１の通信識別子そのものをユーザ名と考えても良い。
【０２６６】
このほか、通信部６０６を省略する態様としては、紹介報告に、紹介相手と自身との対戦の結果や経過が指定されており、その結果や経過を画面に表示する手法、紹介相手のユーザ名を画面に表示する手法、紹介相手のユーザ名が電子メールアドレスであり、アドレス帳に登録される手法などを採用しても良い。
【産業上の利用可能性】
【０２６７】
以上説明したように、本発明によれば、端末装置を使用するユーザ同士をサーバ装置が紹介する紹介システムにおいて、紹介されるまでの待ち時間にユーザに適切な情報を提示して、ユーザに紹介システム参加を促すのに好適な紹介システム、紹介方法、ならびに、これらをコンピュータにて実現するプログラムを提供することができる。
【図面の簡単な説明】
【０２６８】
【図１】プログラムを実行することにより、本発明の端末装置等の機能を果たす典型的な情報処理装置の概要構成を示す模式図である。
【図２】本実施形態に係る紹介システムの概要構成を示す説明図である。
【図３】本実施形態に係る紹介システムにおける通信の様子を示すセッション図である。
【図４】本実施形態に係る通信システムにおけるサーバ装置の概要構成を示す説明図である。
【図５】当該サーバ装置にて実行されるサーバ処理の制御の流れを示すフローチャートである。
【図６】本実施形態に係る通信システムにおける端末装置の概要構成を示す説明図である。
【図７】当該端末装置にて実行される端末処理の制御の流れを示すフローチャートである。
【符号の説明】
【０２６９】
１００  情報処理装置
１０１  ＣＰＵ
１０２  ＲＯＭ
１０３  ＲＡＭ
１０４  インターフェイス
１０５  コントローラ
１０６  外部メモリ
１０７  画像処理部
１０８  ＤＶＤ−ＲＯＭドライブ
１０９  ＮＩＣ
１１０  音声処理部
１１１  マイク
２０１  紹介システム
２２１  サーバ装置
２４１  端末装置
２５１  インターネット
３０１  時間軸
３０２  帯
３０３  候補時刻の時間帯
３０４  紹介時刻に挟まれる時間帯
３０５  余裕時間
３０６  間隔時間
４０１  紹介情報記憶部
４０２  紹介時刻記憶部
４０３  紹介要求受信部
４０４  紹介時刻決定部
４０５  紹介情報追加部
４０６  紹介応答送信部
４０７  ユーザ情報取得部
４０８  ユーザ報告送信部
４０９  抽出消去部
４１０  グループ分類部
４１１  紹介報告送信部
４１２  紹介時刻更新部
４１３  ユーザ情報記憶部
６０１  紹介要求送信部
６０２  紹介応答受信部
６０３  ユーザ報告受信部
６０４  表示部
６０５  紹介報告受信部
６０６  通信部
【図１】
2008269356.tif 000003
【図２】
2008269356.tif 000004
【図３】
2008269356.tif 000005
【図４】
2008269356.tif 000006
【図５】
2008269356.tif 000007
【図６】
2008269356.tif 000008
【図７】
2008269356.tif 000009