(57)【要約】【課題】メッセージ交換処理のための処理負荷をサーバ装置とユーザの情報端末装置とに分散し、サーバ装置への負荷集中を避けることで、サービスの信頼性および応答性の向上を図る。【解決手段】ルームにユーザがログインすると、そのユーザのＩＭクライアントにユーザ管理データベース上の他の全てのユーザのユーザ情報を送信する。検索実行者のＩＭクライアントはユーザ情報を取得すると、検索エンジンでこれらユーザ情報中の被検索者用のＰＳＩＤの一覧とＰＳＩＤ記憶部に記憶された検索実行者用のＰＳＩＤの一覧とを照合し、検索実行者用のＰＳＩＤに対して所定のペアをなす被検索対象者を検索する。検索エンジンは検索した被検索対象者が所有する披検索対象者用のＰＤを取得し、この披検索対象者用のＰＤと自身のＰＤ保存部に保存されている検索実行者用のＰＤとを照合し、検索実行者が希望している条件を満足する被検索対象者を特定する。【選択図】    図１
2005056247.tif 000002
【特許請求の範囲】
【請求項１】
メッセージ交換相手を検索するサービスを提供するサーバ装置に、自ユーザの前記サービスの利用目的を示す識別情報を含むユーザ情報を前記ネットワークを通じて送信して前記サーバ装置に登録させるユーザ情報提供部と、
前記サーバ装置より前記サービスにログインしている他ユーザの前記ユーザ情報を前記ネットワークを通じて取得するユーザ情報取得部と、
自ユーザの前記サービスの利用目的を示す識別情報を記憶する識別情報記憶部と、
自ユーザの検索条件および被検索条件の詳細情報を記憶する詳細情報記憶部と、
前記ユーザ情報取得部により取得した前記他ユーザのユーザ情報中の識別情報と前記識別情報記憶部に記憶されている前記自ユーザの識別情報とを照合して、当該自ユーザの識別情報に対して所定の組み合わせなす他ユーザの前記詳細情報記憶部に記憶されている前記被検索条件の詳細情報を前記ネットワークを通じて取得する被検索条件取得部と、
前記被検索条件取得部により取得した前記被検索条件の詳細情報と前記自ユーザの前記詳細情報記憶部に記憶されている前記検索条件の詳細情報とを照合し、所定の一致条件を満たす他ユーザをメッセージの交換相手として判定する判定部と
を具備することを特徴とする情報端末装置。
【請求項２】
前記ユーザ情報取得部は、前記他ユーザによる前記サーバ装置への前記ユーザ情報の登録が発生する都度、前記サーバ装置より前記他ユーザの前記ユーザ情報を前記ネットワークを通じて取得することを特徴とする請求項１に記載の情報端末装置。
【請求項３】
前記ユーザ情報取得部は、前記サーバ装置に登録されている前記他ユーザのユーザ情報の更新が発生する都度、前記サーバ装置より前記他ユーザの前記ユーザ情報を前記ネットワークを通じて取得することを特徴とする請求項１に記載の情報端末装置。
【請求項４】
前記ユーザ情報は、自ユーザに前記ネットワークを通じて接続するために必要な接続情報を含んでおり、前記被検索条件取得部は、この接続情報に基づいて他ユーザと接続し、当該他ユーザの前記詳細情報記憶部に記憶されている前記被検索条件の詳細情報を前記ネットワークを通じて取得することを特徴とする請求項１に記載の情報端末装置。
【請求項５】
情報端末装置のユーザに、メッセージ交換相手を検索するサービスをネットワークを通じて提供するサーバ装置であって、
前記サービスにログインした前記ユーザの情報端末装置から、当該サービスの利用目的を示す識別情報を含むユーザ情報を取得して管理するユーザ情報管理部と、
前記ユーザ情報管理部にて管理されている前記ユーザのユーザ情報を前記ログイン中の他のユーザの情報端末装置に配信するユーザ情報配信部と
を具備することを特徴とするサーバ装置。
【請求項６】
前記ユーザ情報配信部は、前記ユーザ情報管理部への前記ユーザ情報の登録が発生する都度、この登録されたユーザ情報を前記サービスにログイン中の他ユーザの情報端末装置に配信することを特徴とする請求項５に記載のサーバ装置。
【請求項７】
前記ユーザ情報配信部は、前記ユーザ情報管理部に管理されている前記ユーザ情報の更新が発生する都度、この更新されたユーザ情報を前記サービスにログイン中の他ユーザの情報端末装置に配信することを特徴とする請求項５に記載のサーバ装置。
【請求項８】
メッセージ交換相手を検索するサービスを提供するサーバ装置に、自ユーザの前記サービスの利用目的を示す識別情報を含むユーザ情報を前記ネットワークを通じて送信して前記サーバ装置に登録させるユーザ情報提供部と、
前記サーバ装置より前記サービスにログインしている他ユーザの前記ユーザ情報を前記ネットワークを通じて取得するユーザ情報取得部と、
自ユーザの前記サービスの利用目的を示す識別情報を記憶する識別情報記憶部と、
自ユーザの検索条件および被検索条件の詳細情報を記憶する詳細情報記憶部と、
前記ユーザ情報取得部により取得した前記他ユーザのユーザ情報中の識別情報と前記識別情報記憶部に記憶されている前記自ユーザの識別情報とを照合して、当該自ユーザの識別情報に対して所定の組み合わせなす他ユーザの前記詳細情報記憶部に記憶されている前記被検索条件の詳細情報を前記ネットワークを通じて取得する被検索条件取得部と、
前記被検索条件取得部により取得した前記被検索条件の詳細情報と前記自ユーザの前記詳細情報記憶部に記憶されている前記検索条件の詳細情報とを照合し、所定の一致条件を満たす他ユーザをメッセージの交換相手として判定する判定部
としてコンピュータを機能させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ネットワークを通じてメッセージ交換を行うことのできる情報端末装置、メッセージ交換に必要なサービスを情報端末装置に提供するサーバ装置、およびプログラムに関する。
【背景技術】
【０００２】
最近、インターネットが普及し、インターネットを利用して各種のデータを相手側と授受するユーザが増えてきた。データの授受を行うシステムとしては、例えば、インターネットを介してテキスト情報の授受を行い、リアルタイムに相手との通信を行うＩＭ（Instant Messaging）通信システムなどが存在する。
【０００３】
従来のＩＭは、インターネット接続時に、使用中の端末画面に、事前に登録した相手のインターネットへの接続の有無状態や、相手からのメッセージを自動的に表示し、その場でリアルタイムにメッセージ交換やチャット、ファイルの送付をしている（例えば、非特許文献１参照）。
【０００４】
また、ＩＭでは、ＩＭサーバ装置に登録された各ユーザの個人情報が、交換関係を結んだ他のユーザに提供される。ユーザＡとユーザＢが交換関係を結んだ場合、ユーザＢは、ユーザＡにとってのバディ（Buddy）として、ユーザＡのバディリストに登録され、ユー
ザＡは、ユーザＢのバディとして、ユーザＢにとってのバディリストに登録される。
【０００５】
交換関係を結ぶ場合、ユーザ（ユーザＡ）は、他のユーザ（ユーザＢ）に「お誘い」を送信する。「お誘い」を受信したユーザＢは、ユーザＡの「お誘い」を承諾するのであれば（交換関係を結ぶのであれば）、ユーザＡに「承諾」を送信する。
【０００６】
ユーザＡが、ユーザＢを「お誘い」するには、ユーザＡは、ユーザＢのＩＤを知っている必要がある。ユーザＢが、ユーザＡに「承諾」を送るには、ユーザＢは、ユーザＡのＩＤを知っている必要がある。このＩＤを取得するには、相手と直接ネゴシエーションをし、お互いのＩＤを教えあうことになる。
【０００７】
あるいは、ＩＭサーバ装置にて各ユーザの個人情報を保存しておき、検索実行者であるユーザにとって興味のある被検索対象者であるユーザのＩＤを検索し、検索実行者の端末装置にその結果を応答する方法もある。これは、具体的には、検索実行者であるユーザの端末装置からＩＭサーバ装置に検索条件を与えることで、ＩＭサーバ装置が、この検索条件と各ユーザの個人情報とを突き合わせ、検索条件を満足するユーザを探し出すことによって行われている。  
【非特許文献１】デジタル・クリエイターズ連絡協議会、"マルチメディア・インターネット辞典「インスタントメッセージング」"、［online］、［平成１５年８月４日検索］、インターネット、<URL: http://www.kaigisho.ne.jp/literacy/midic/data/k2/k2122.htm>
【発明の開示】
【発明が解決しようとする課題】
【０００８】
しかしながら、従来の検索システムでは、検索実行者であるユーザが検索条件を入力した時点でＩＭサーバ装置のデータベースに存在している個人情報の中から、当該検索条件に合致するものを検索してユーザに通知するようになっているので、ＩＭサーバ装置のデータベースの個人情報をリアルタイムに変更することが可能な場合であっても、一度検索結果が検索実行者であるユーザに返された後では、データベースの更新内容は検索実行者であるユーザに与えられる検索結果に反映されることがない。すなわち、検索後では、検索条件に合致するユーザが現れたとしても、検索実行者には知らされないという問題があった。
【０００９】
また、検索はＩＭサーバ装置で統括して行われるので、ＩＭサーバ装置に負荷が集まり、特に混雑時には検索実行者であるユーザから見た応答性が低下するおそれがあった。
【００１０】
本発明は、このような実情を鑑みて、メッセージ交換処理のための全体の負荷をサーバ装置とユーザの情報端末装置とに分散し、サーバ装置への負荷集中を避けることで、サービスの信頼性（可用性）および応答性の向上を図ることのできる情報端末装置、サーバ装置およびプログラムを提供することを目的としている。
【００１１】
さらに、本発明は、常に最新の情報に基づいてメッセージ交換相手の検索を行うことのできる情報端末装置、サーバ装置およびプログラムを提供することを目的としている。
【課題を解決するための手段】
【００１２】
上記の課題を解決するために、本発明の情報端末装置は、メッセージ交換相手を検索するサービスを提供するサーバ装置に、自ユーザの前記サービスの利用目的を示す識別情報を含むユーザ情報を前記ネットワークを通じて送信して前記サーバ装置に登録させるユーザ情報提供部と、前記サーバ装置より前記サービスにログインしている他ユーザの前記ユーザ情報を前記ネットワークを通じて取得するユーザ情報取得部と、自ユーザの前記サービスの利用目的を示す識別情報を記憶する識別情報記憶部と、自ユーザの検索条件および被検索条件の詳細情報を記憶する詳細情報記憶部と、前記ユーザ情報取得部により取得した前記他ユーザのユーザ情報中の識別情報と前記識別情報記憶部に記憶されている前記自ユーザの識別情報とを照合して、当該自ユーザの識別情報に対して所定の組み合わせなす他ユーザの前記詳細情報記憶部に記憶されている前記被検索条件の詳細情報を前記ネットワークを通じて取得する被検索条件取得部と、前記被検索条件取得部により取得した前記被検索条件の詳細情報と前記自ユーザの前記詳細情報記憶部に記憶されている前記検索条件の詳細情報とを照合し、所定の一致条件を満たす他ユーザをメッセージの交換相手として判定する判定部とを具備するものである。
【００１３】
この発明によれば、サーバ装置は、各ユーザの情報端末装置との間でユーザ情報を送受信して各ユーザのユーザ情報を管理するだけでよく、ユーザ情報に含まれるサービスの利用目的を示す識別情報の照合は検索を実行するユーザの情報端末装置にて実行される。また、検索を実行するユーザの情報端末装置は、他のユーザの情報端末装置から被検索条件の詳細情報をネットワークを通じて直接取得し、取得した被検索条件の詳細情報と自ユーザの検索条件の詳細情報との照合も行う。これにより、メッセージ交換処理のための全体の負荷がサーバ装置とユーザの情報端末装置とに分散され、サーバ装置への負荷集中が避けられることで、サービスの信頼性（可用性）および応答性が向上する。
【００１４】
この発明の情報端末装置において、前記ユーザ情報取得部は、前記他ユーザによる前記サーバ装置への前記ユーザ情報の登録が発生する都度、前記サーバ装置より前記他ユーザの前記ユーザ情報を前記ネットワークを通じて取得するものであってよい。これにより、検索を実行するユーザの情報端末装置はログイン以後も最新の情報に基づくメッセージ交換相手の検索を行うことが可能となる。
【００１５】
さらに、この発明の情報端末装置において、前記ユーザ情報取得部は、前記サーバ装置に登録されている前記他ユーザのユーザ情報の更新が発生する都度、前記サーバ装置より前記他ユーザの前記ユーザ情報を前記ネットワークを通じて取得するものであってもよい。これにより、検索を実行するユーザの情報端末装置はログイン以後も最新の情報に基づくメッセージ交換相手の検索を行うことが可能となる。
【００１６】
また、この発明の情報端末装置において、前記ユーザ情報は、自ユーザに前記ネットワークを通じて接続するために必要な接続情報を含んでおり、前記被検索条件取得部は、この接続情報に基づいて他ユーザと接続し、当該他ユーザの前記詳細情報記憶部に記憶されている前記被検索条件の詳細情報を前記ネットワークを通じて取得するものであってよい。すなわち、検索を実行するユーザの情報端末装置は、接続情報に基づき、目的の他ユーザの情報端末装置とのピアツーピア接続によって被検索条件の詳細情報のやりとりを行うことができる。
【００１７】
本発明の別の観点に基づくサーバ装置は、上記の情報端末装置のユーザに、メッセージ交換相手を検索するサービスをネットワークを通じて提供するサーバ装置であって、前記サービスにログインした前記ユーザの情報端末装置から、当該サービスの利用目的を示す識別情報を含むユーザ情報を取得して管理するユーザ情報管理部と、前記ユーザ情報管理部にて管理されている前記ユーザのユーザ情報を前記ログイン中の他のユーザの情報端末装置に配信するユーザ情報配信部とを具備するものである。
【００１８】
この発明のサーバ装置は、各ユーザの情報端末装置との間でユーザ情報を送受信して各ユーザのユーザ情報を管理するだけでよいから、サーバ装置への負荷集中が避けられることで、サービスの信頼性（可用性）および応答性が向上する。
【００１９】
また、この発明のサーバ装置において、前記ユーザ情報配信部は、前記ユーザ情報管理部への前記ユーザ情報の登録が発生する都度、この登録されたユーザ情報を前記サービスにログイン中の他ユーザの情報端末装置に配信するものであってよい。これにより、検索を実行するユーザの情報端末装置はログイン以後も最新の情報に基づくメッセージ交換相手の検索を行うことが可能となる。
【００２０】
さらに、この発明のサーバ装置において、前記ユーザ情報配信部は、前記ユーザ情報管理部に管理されている前記ユーザ情報の更新が発生する都度、この更新されたユーザ情報を前記サービスにログイン中の他ユーザの情報端末装置に配信するものであってよい。これにより、検索を実行するユーザの情報端末装置はログイン以後も最新の情報に基づくメッセージ交換相手の検索を行うことが可能となる。
【００２１】
本発明の別の観点に基づくプログラムは、メッセージ交換相手を検索するサービスを提供するサーバ装置に、自ユーザの前記サービスの利用目的を示す識別情報を含むユーザ情報を前記ネットワークを通じて送信して前記サーバ装置に登録させるユーザ情報提供部と、前記サーバ装置より前記サービスにログインしている他ユーザの前記ユーザ情報を前記ネットワークを通じて取得するユーザ情報取得部と、自ユーザの前記サービスの利用目的を示す識別情報を記憶する識別情報記憶部と、自ユーザの検索条件および被検索条件の詳細情報を記憶する詳細情報記憶部と、前記ユーザ情報取得部により取得した前記他ユーザのユーザ情報中の識別情報と前記識別情報記憶部に記憶されている前記自ユーザの識別情報とを照合して、当該自ユーザの識別情報に対して所定の組み合わせなす他ユーザの前記詳細情報記憶部に記憶されている前記被検索条件の詳細情報を前記ネットワークを通じて取得する被検索条件取得部と、前記被検索条件取得部により取得した前記被検索条件の詳細情報と前記自ユーザの前記詳細情報記憶部に記憶されている前記検索条件の詳細情報とを照合し、所定の一致条件を満たす他ユーザをメッセージの交換相手として判定する判定部としてコンピュータを機能させるものである。
【００２２】
したがって、サーバ装置は各ユーザの情報端末装置との間でユーザ情報を送受信して各ユーザのユーザ情報を管理するだけでよく、ユーザ情報に含まれるサービスの利用目的を示す識別情報の照合は、本発明のプログラムを実装したコンピュータを有するユーザの情報端末装置にて実行される。また、本発明のプログラムを実装したコンピュータを有するユーザの情報端末装置は、他のユーザの情報端末装置から被検索条件の詳細情報をネットワークを通じて直接取得し、取得した被検索条件の詳細情報と自ユーザの検索条件の詳細情報との照合も行う。これにより、メッセージ交換処理の必要負荷がサーバ装置とユーザの情報端末装置とに分散され、サーバ装置への負荷集中が避けられることで、サービスの信頼性（可用性）および応答性が向上する。
【発明の効果】
【００２３】
以上、説明したように本発明によれば、メッセージ交換処理の全体負荷がサーバ装置とユーザの情報端末装置とに分散され、サーバ装置への負荷集中が避けられることで、サービスの信頼性（可用性）および応答性が向上する。また、ログイン以後も最新の情報に基づくメッセージ交換相手の検索を行うことが可能となる。
【発明を実施するための最良の形態】
【００２４】
以下、本発明の実施形態を図面により説明する。
【００２５】
図１は、本発明の一実施形態にかかるＩＭ通信システムの全体的な構成を示す図である。
【００２６】
同図に示すように、このＩＭ通信システム２００は、ＩＭ通信サービスを提供するコンピュータであるＩＭサーバ装置２０１と、ＩＭサーバ装置２０１が提供するＩＭ通信サービスを享受するユーザ端末であるＰＣ（Personal Computer）、ＰＤＡ（Personal Digital Assistant）、携帯電話などのクライアント装置２０２（２０２−１，２０２−２，… ，２０２−ｎ）と、ＩＭサーバ装置２０１とクライアント装置２０２とを接続可能なインターネットなどのネットワーク２０３とで構成される。
【００２７】
ＩＭサーバ装置２０１には、ＩＭ通信サービスを行うＩＭ通信サービス実行部２１１がたとえばミドルウェアなどとして実装されている。クライアント装置２０２には、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１によって提供されるＩＭ通信サービスを享受するＩＭクライアント２２０がたとえばミドルウェアなどとして実装されている。
【００２８】
ＩＭサーバ装置２０１において、ＩＭ通信サービス実行部２１１は、ネットワーク２０３を通じて複数のクライアント装置２０２のユーザが通信相手の検索を行う際の起点となる仮想的な場としてのルーム２１３を設定する。また、ＩＭ通信サービス実行部２１１は、ＩＭ通信サービスを利用可能なユーザに関する情報（ユーザ情報）をユーザ管理データベース２１２上で管理している。
【００２９】
図２は、このユーザ管理データベース２１２上で管理されているユーザ情報２３０の構成を示す図である。同図に示すように、ユーザ情報２３０は、ユーザＩＤ２３１、エンドポイント情報２３２、被検索対象者用のＰＳＩＤの一覧２３３、プレゼンス情報２３４、ニックネーム２３５などで構成される。
【００３０】
ユーザＩＤ２３１は、ＩＭ通信サービスを利用可能な個々のユーザに対してユニークに与えられるＩＤである。エンドポイント情報２３２とは、ユーザのクライアント装置２０２上で動作しているどのアプリケーションが通信相手となるかを示す情報である。被検索対象者用のＰＳＩＤの一覧２３３は、被検索対象者としてのユーザが保持するＰＳＩＤの一覧である。ＰＳＩＤ（Profile Space ID）とは、たとえば「オークション」「友達検索」といった検索カテゴリーを示すＩＤであり、さらに言い換えれば、サービスの利用目的を示す識別情報である。プレゼンス情報２３４は、ユーザの現在の接続状態（オンライン／オフラインなど）を示す情報である。ニックネーム２３５は、ユーザ本人が任意に決めた自分の呼び名である。
【００３１】
ＩＭ通信サービス実行部２１１は、ルーム２１３にログインしてきたユーザのＩＭクライアント２２０より上記のユーザ情報２３０を取得してユーザ管理データベース２１２に格納し、管理する機能を有する。
【００３２】
また、ＩＭ通信サービス実行部２１１は、ルーム２１３にログインしてきたユーザのＩＭクライアント２２０に、ユーザ管理データベース２１２上で管理している他のすべてのユーザのユーザ情報２３０を送信する機能を有している。
【００３３】
さらに、ＩＭ通信サービス実行部２１１は、新たなユーザのログインが発生する都度、ルーム２１３にログイン中の他のすべてのユーザのＩＭクライアント２２０に送信する機能を有している。
【００３４】
一方、クライアント装置２０２のＩＭクライアント２２０は、ＩＭ通信部２２１、検索実行者用ＰＳＩＤ記憶部２２３、検索エンジン２２４、検索結果表示部２２５、およびＰＤ保存部２２６を有している。
【００３５】
ＰＤ保存部２２６には、ユーザの検索条件および被検索条件の各詳細情報が、それぞれ検索実行者用のＰＤ（Profile Description） および被検索対象者用のＰＤとして記憶されている。
【００３６】
ＩＭ通信部２２１は、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１および他のユーザのクライアント装置２０２のＩＭクライアント２２０との間でＩＭ通信の処理を実行する。具体的には、ＩＭ通信部２２１は、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１から配信される、ルーム２１３にログイン中の他のユーザのユーザ情報２３０の受信、他のユーザのＩＭクライアント２２０との間でのピアツーピアによる通信を処理する。
【００３７】
検索実行者用ＰＳＩＤ記憶部２２３は、検索実行者用のＰＳＩＤの一覧を記憶した記憶部である。
【００３８】
検索エンジン２２４は、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１より取得した他のユーザのユーザ情報２３０の中の被検索者用のＰＳＩＤの一覧２３３と、検索実行者用ＰＳＩＤ記憶部２２３に記憶されている検索実行者用のＰＳＩＤの一覧とを照合し、検索実行者用のＰＳＩＤに対して所定の組み合わせをなす被検索対象者の検索を行う機能を有する。具体的には、ＰＳＩＤ＝１は検索実行者にとっての友達検索を意味し、ＰＳＩＤ＝２は被検索対象者にとっての友達検索を意味する場合、検索実行者用ＰＳＩＤ記憶部２２３にＰＳＩＤとして「１」が記憶され、かつ被検索対象者のユーザ情報２３０の中の被検索者用のＰＳＩＤの一覧２３３にＰＳＩＤとして「２」が含まれているとき、その被検索対象者が検索結果として得られるようになっている。
【００３９】
また、検索エンジン２２４は、検索された被検索対象者のユーザ情報２３０に基づいて、その被検索対象者のＩＭクライアント２２０に対して、ＩＭ通信部２２１を通じて被検索対象者用のＰＤ（Profile Description）の送信を要求し、応答として受け取った被検
索対象者用のＰＤと自身のＰＤ保存部２２６に保存されている検索実行者用のＰＤとの照合を行う。
【００４０】
図３は「友達検索」に検索実行者として参加しているユーザが所有している検索実行者用のＰＤ２５０の内容の例である。同図に示すように、検索実行者用のＰＤ２５０には、検索対象者の性別、年齢やその範囲、出身地などの複数のデータ項目毎に、それぞれ検索実行者により任意に決められた内容を示す整数値または整数値の範囲が記述されている。
【００４１】
図４は「友達検索」に被検索対象者として参加しているユーザが所有している被検索対象者用のＰＤ２６０の内容の例である。同図に示すように、被検索対象者用のＰＤ２６０には、本人の性別、年齢、出身地などの複数のデータ項目毎に、それぞれの内容を示す整数値が記述されている。
【００４２】
検索エンジン２２４は、検索実行者用のＰＤ２５０と被検索対象者用のＰＤ２６０とをデータ項目毎に照合し、内容が一致するデータ項目を有する被検索対象者を検索結果として得るとともに、その被検索対象者のＩＭクライアント２２０に対して自身（検索実行者）の登録を要求し、その応答を受信する。
【００４３】
検索結果表示部２２５は、検索エンジン２２４の検索結果を表示部２２８に表示するものである。
【００４４】
さらに、クライアント装置２０２には、ＩＭクライアント２２０と内部的に通信して、ＩＭクライアント２２０が外部から取得した情報を用いて特定の処理を行うアプリケーション２２７が実装されている。このアプリケーション２２７が上記エンドポイント情報２３２が示すアプリケーションである。
【００４５】
次に、このＩＭ通信システムの動作を説明する。
【００４６】
図５はＩＭクライアント２２０の動作、特に検索実行者のＩＭクライアント２２０Ａと被検索対象者のＩＭクライアント２２０Ｂの動作を示すフローチャートである。なお、ルーム２１３にログインしたすべてのユーザのＩＭクライアント２２０はそれぞれ、検索実行者および被検索対象者の両方のＩＭクライアント２２０Ａ，２２０Ｂとして振る舞う。図６はＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１の動作を示すフローチャートである。
【００４７】
まず、ユーザはＩＭクライアント２２０Ａ，２２０Ｂを通じて、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１によって設定されたルーム２１３にログインを要求する（ステップ５０１，５２１）。ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１は、このユーザからのログイン要求を受けると（ステップ６０１、ステップ６０２のＹＥＳ）、ログイン処理すなわち受信したログイン要求に含まれるＩＤとパスワードについて認証を行い、認証結果をＩＭクライアント２２０Ａ，２２０Ｂに応答する（ステップ６０３）。
【００４８】
認証に成功した場合、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１は、ルーム２１３にログインしてきたユーザのＩＭクライアント２２０Ａ，２２０Ｂに、ユーザ管理データベース２１２上で管理している他のすべてのユーザのユーザ情報２３０を送信する（ステップ６０４）。
【００４９】
被検索対象者であるユーザは、ルーム２１３へのログインに成功したことを表示部２２８の画面などを通して確認すると、ＩＭサーバ装置２０１のユーザ管理データベース２１２に、ユーザ情報２３０として登録すべきエンドポイント情報２３２、被検索対象者用のＰＳＩＤの一覧２３３、ニックネーム２３５などの設定を行う（ステップ５０２）。設定完了後、ＩＭクライアント２２０Ｂは、ＩＭ通信部２２１によって、設定されたユーザ情報をＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１に登録要求とともに送信する（ステップ５０３）。
【００５０】
ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１は、この登録要求を受けると（ステップ６０５のＹＥＳ）、この登録要求とともに受信したユーザ情報をユーザ管理データベース２１２に登録する（ステップ６０６）。
【００５１】
この後、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１は、ユーザ管理データベース２１２に登録された被検索対象者のユーザ情報を、ルーム２１３にログイン中の他のすべてのユーザのＩＭクライアント２２０に送信する（ステップ６１０）。
【００５２】
検索実行者のＩＭクライアント２２０Ａは、ＩＭサーバ装置２０１から送信された被検索対象者のユーザ情報を取得し（ステップ５２２）、これを検索エンジン２２４に渡す。
【００５３】
検索エンジン２２４は、取得した他のユーザのユーザ情報２３０の中の被検索者用のＰＳＩＤの一覧２３３と、検索実行者用ＰＳＩＤ記憶部２２３に記憶されている検索実行者用のＰＳＩＤの一覧とを照合し（ステップ５２３）、検索実行者用のＰＳＩＤに対して所定のペアをなす被検索対象者を検索する（ステップ５２４）。
【００５４】
続いて、検索エンジン２２４は、検索した被検索対象者が所有している披検索対象者用のＰＤ（たとえば図４のＰＤ２６０）の取得をＩＭ通信部２２１に指示する。ＩＭ通信部２２１は、この指示に従って、当該被検索対象者のＩＭクライアント２２０Ｂに対して披検索対象者用のＰＤの取得を要求する（ステップ５２５）。
【００５５】
また、ステップ５２４で、検索実行者用のＰＳＩＤに対して所定のペアをなす被検索対象者が検索されなかった場合（ステップ５２４のＮＯ）、検索実行者のＩＭクライアント２２０Ａは、ＩＭ通信部２２１にて、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１に対して被検索対象者のユーザ情報の取得を要求する。ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１は、被検索対象者のユーザ情報の取得要求を受信すると（ステップ６０９のＹＥＳ）、要求元である検索実行者のＩＭクライアント２２０Ａに、ユーザ管理データベース２１２に登録されている他のすべての被検索対象者のユーザ情報を送信する（ステップ６１１）。
【００５６】
検索実行者のＩＭクライアント２２０Ａは、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１から被検索対象者のユーザ情報を取得した後（ステップ５２２）、検索エンジン２２３にて、取得した他のユーザのユーザ情報２３０の中の被検索者用のＰＳＩＤの一覧２３３と検索実行者用ＰＳＩＤ記憶部２２３に記憶されている検索実行者用のＰＳＩＤの一覧との照合を再度行う（ステップ５２３）。そして、検索実行者用のＰＳＩＤに対して所定のペアをなす被検索対象者が検索されるまで、ステップ５２２、５２３、５２４の処理が繰り返される。
【００５７】
被検索対象者のＩＭクライアント２２０Ｂは、このＰＤの取得要求を受信すると（ステップ５０４）、ＰＤ保存部２２６から披検索対象者用のＰＤを読み出し、このＰＤをＩＭ通信部２２１によりＰＤ要求元である検索実行者のＩＭクライアント２２０Ａに送信する（ステップ５０５）。
【００５８】
検索実行者のＩＭクライアント２２０Ａは、披検索対象者用のＰＤを受信すると（ステップ５２６）、検索エンジン２２４にて、この披検索対象者用のＰＤの内容と自身のＰＤ保存部２２６に保存されている検索実行者用のＰＤ（たとえば図３のＰＤ２５０）の内容とを対応するデータ項目毎に照合し（ステップ５２７）、所定の一致条件を満足する、たとえば値が一致するデータ項目が１つ以上ある披検索対象者が検索されたならば（ステップ５２８のＹＥＳ）、その被検索対象者のＩＭクライアント２２０Ｂに対して自検索実行者の登録をＩＭ通信部２２１を通じて要求する（ステップ５２９）。
【００５９】
また、所定の一致条件を満足する披検索対象者が検索されなかった場合には（ステップ５２８のＮＯ）、検索実行者のＩＭクライアント２２０Ａは、ＩＭ通信部２２１にて、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１に対して被検索対象者のユーザ情報の取得を再度要求し、以後、ステップ５２８での照合で所定の一致条件を満足する披検索対象者が検索されるまで、ステップ５２２からステップ５２８までの処理を繰り返す。
【００６０】
検索実行者のＩＭクライアント２２０Ａからの登録要求を受けた被検索対象者のＩＭクライアント２２０Ｂは、その登録要求者である検索実行者を通信相手として登録し、その応答を検索実行者のＩＭクライアント２２０Ａに返す（ステップ５０６）。
【００６１】
この後、被検索対象者のＩＭクライアント２２０Ｂにおいて、ユーザ情報に変更すべき事項があるかどうかがユーザにより判断される（ステップ５０７）。変更がない場合にはステップ５０８へ移行し、変更がある場合には処理はステップ５０２のユーザ情報の設定に戻る。
【００６２】
一方、検索実行者のＩＭクライアント２２０Ａは、被検索対象者のＩＭクライアント２２０Ｂからの登録完了の応答を受けると、この被検索対象者を通信相手の検索結果として登録するとともに、その検索結果を表示部２２８に表示する（ステップ５３０）。
【００６３】
これ以後、検索実行者のＩＭクライアント２２０Ａと被検索対象者のＩＭクライアント２２０Ｂとはピアツーピアで通信を行うことができるようになる。
【００６４】
検索カテゴリーが「友達検索」である場合、この後、検索実行者と被検索対象者との間でＩＭの交換を双方のアプリケーション２２７によって行うことができる（ステップ５３１，５３２，５０８，５０９）。
【００６５】
ところで、被検索対象者のＩＭクライアント２２０Ｂは、ＩＭサーバ装置２０１のユーザ管理データベース２１２に登録済みの自身のユーザ情報を変更したい場合（ステップ５０７のＹＥＳ）、ステップ５０２においてクライアント装置２０２内部でのユーザ情報の変更を行った後、この変更したユーザ情報を含む変更要求をＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１に対して送信する（ステップ５０３）。
【００６６】
ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１は、このユーザ情報の変更要求を受けると（ステップ６０７のＹＥＳ）、ユーザ管理データベース２１２の該当するユーザ情報を、変更要求に含まれる変更されたユーザ情報で書き替える（ステップ６０８）。この後、ＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１は、変更されたユーザ情報を、ルーム２１３にログイン中の他のすべてのユーザのＩＭクライアント２２０に送信する（ステップ６１０）。検索実行者のＩＭクライアント２２０Ａは、受信したユーザ情報２３０を検索エンジン２２４に渡して、被検索対象者の検索を検索エンジン２２４に実行させる（ステップ５２３）。
【００６７】
図６に示したＩＭサーバ装置２０１のＩＭ通信サービス実行部２１１の処理手順は、ＩＭクライアント２２０Ａ，２２０Ｂからの、前記のログイン要求、ユーザ情報の登録要求、ユーザ情報の変更要求、ユーザ情報の取得要求などの要求を受けるごとに実行される。
【００６８】
このように、このＩＭ通信システム２００では、ＩＭクライアント２２０が検索実行者のＩＭクライアント２２０Ａと被検索対象者のＩＭクライアント２２０Ｂの両方として振る舞う。ルーム２１３にユーザがログインすると、そのログインしてきたユーザのＩＭクライアント２２０に、ユーザ管理データベース２１２上で管理している他のすべてのユーザのユーザ情報２３０を送信する。検索実行者のＩＭクライアント２２０Ａは、ＩＭサーバ装置２０１から送信された被検索対象者のユーザ情報を取得すると、検索エンジン２２４にて、取得した他のユーザのユーザ情報２３０の中の被検索者用のＰＳＩＤの一覧２３３と、検索実行者用ＰＳＩＤ記憶部２２３に記憶されている検索実行者用のＰＳＩＤの一覧とを照合し、検索実行者用のＰＳＩＤに対して所定のペアをなす被検索対象者を検索する。そして検索エンジン２２４は、検索した被検索対象者が所有している披検索対象者用のＰＤを取得し、この披検索対象者用のＰＤと自身のＰＤ保存部２２６に保存されている検索実行者用のＰＤとを照合することによって、検索実行者が希望している条件を満足する被検索対象者を特定する。すなわち「友達検索」を例にとれば、検索実行者が希望している性別、年齢などの条件を満足する被検索対象者をＩＭ通信相手の友達として特定する。
【００６９】
したがって、このＩＭ通信システム２００によれば、次のような効果が得られる。
【００７０】
ＩＭサーバ装置２０１と各クライアント２０２との間で送受信される情報は、各ユーザのユーザ情報２３０だけとなる。検索実行者の希望する条件を満足する被検索対象者を絞り込むために必要な情報である被検索対象者用のＰＤ２６０は、検索実行者のＩＭクライアント２２０Ａと被検索対象者のＩＭクライアント２２０Ｂとの間で直接やりとりされ、この被検索対象者用のＰＤ２６０と検索実行者用のＰＤ２５０との照合は、ＩＭクライアント２２０Ａにて行われる。したがって、ＩＭサーバ装置２０１への負荷集中を避けることができ、サービスの信頼性（可用性）および応答性を向上させることができる。
【００７１】
また、この実施形態のＩＭ通信システムでは、ＩＭサーバ装置２０１への新たなユーザ情報の登録および変更が発生する都度、その新たに登録されたユーザ情報や変更されたユーザ情報が他のすべてのユーザのＩＭクライアント２２０に送信され、ＩＭクライアント２２０にてＰＳＩＤの照合以下の処理が実行されるので、検索実行者のＩＭクライアント２２０Ａはログイン以後も最新の情報に基づく被検索対象者の検索を行うことが可能となる。
【００７２】
次に、本発明の第２の実施形態であるＩＭ通信システムについて説明する。
【００７３】
図７は、この第２の実施形態のＩＭ通信システム１００の全体的な構成を示す図である。同図に示すように、このＩＭ通信システム１００は、ＩＭ通信サービスを提供するコンピュータであるＩＭサーバ装置１と、ＩＭサーバ装置１が提供するＩＭ通信サービスを享受するユーザ端末であるＰＣ（Personal Computer）、ＰＤＡ（Personal Digital Assistant） 、携帯電話などのクライアント装置２（２−１，２−２，…，２−ｎ）と、ＩＭサーバ装置１とクライアント装置２とを接続可能なインターネットなどのネットワーク３とで構成される。
【００７４】
ＩＭサーバ装置１には、ＩＭ通信サービスを行うＩＭ通信サービス実行部１１がたとえばミドルウェアなどとして実装されている。クライアント装置２には、ＩＭサーバ装置１のＩＭ通信サービス実行部１１によって提供されるＩＭ通信サービスを享受するＩＭクライアント２０がたとえばミドルウェアなどとして実装されている。
【００７５】
ＩＭサーバ装置１において、ＩＭ通信サービス実行部１１は、ネットワーク３を通じて複数のクライアント装置２のユーザが通信相手の検索を行う際の起点となる仮想的な場としてのルーム１３を設定する。また、ＩＭ通信サービス実行部１１は、ＩＭ通信サービスを利用可能なユーザに関する情報（ユーザ情報）をユーザ管理データベース１２上で管理している。
【００７６】
図８は、このユーザ管理データベース１２上で管理されているユーザ情報３０の構成を示す図である。同図に示すように、ユーザ情報３０は、ユーザＩＤ３１、エンドポイント情報３２、ＰＳＩＤ（Profile Space ID）の一覧３３、プレゼンス情報３４、ニックネーム３５などで構成される。
【００７７】
ユーザＩＤ３１は、ＩＭ通信サービスを利用可能な個々のユーザに対してユニークに与えられるＩＤである。エンドポイント情報３２とは、ユーザのクライアント装置２上で動作しているどのアプリケーションが通信相手となるかを示す情報である。ＰＳＩＤの一覧３３は、ユーザが保持しているＰＳＩＤの一覧である。ＰＳＩＤ（Profile Space ID）とは、たとえば「オークション」「友達検索」といった検索カテゴリーを示すＩＤであり、さらに言い換えれば、サービスの利用目的を示す識別情報である。プレゼンス情報３４は、ユーザの現在の接続状態（オンライン／オフラインなど）を示す情報である。ニックネーム３５は、ユーザ本人が任意に決めた自分の呼び名である。
【００７８】
ＩＭ通信サービス実行部１１は、被検索対象者としてルーム１３にログインしてきたユーザのＩＭクライアント２０より上記のユーザ情報３０を取得してユーザ管理データベース１２に格納し、管理する機能を有する。
【００７９】
また、ＩＭ通信サービス実行部１１は、このユーザ管理データベース１２上で管理している被検索対象者のユーザ情報３０を、検索実行者としてルーム１３にログインしてきたユーザのＩＭクライアント２０からの取得要求に対して応答する機能を有している。
【００８０】
さらに、ＩＭ通信サービス実行部１１は、被検索対象者である新たなユーザのログインが発生する都度、ルーム１３にログイン中のすべての検索実行者のＩＭクライアント２０に配信する機能を有している。
【００８１】
ここで、ＩＭクライアント２０のユーザは、たとえば、ルーム１３へのログイン時などに自分が検索実行者であるか被検索対象者であるかを選択できる。ＩＭサーバ装置１のＩＭ通信サービス実行部１１は、この選択情報に基づき、ルーム１３にログイン中の個々のユーザがそれぞれ検索実行者であるか被検索対象者であるかを管理している。
【００８２】
一方、クライアント装置２のＩＭクライアント２０は、ＩＭ通信部２１、検索条件入力部２２、検索エンジン２３、検索結果表示部２４およびＰＤ保存部２５を有している。
【００８３】
ＰＤ保存部２５には、ユーザの検索条件または被検索条件の詳細情報がＰＤ（Profile Description） として記憶されている。詳細には、ユーザが検索実行者としてルーム１３にログインする場合には検索条件の詳細情報が検索実行者用のＰＤとして、ユーザが被検索対象者としてルーム１３にログインする場合には被検索条件の詳細情報が被検索対象者用のＰＤとしてＰＤ保存部２５に記憶されている必要がある。
【００８４】
ＩＭ通信部２１は、ＩＭサーバ装置１のＩＭ通信サービス実行部１１および他のクライアント装置２のＩＭクライアント２０との間でＩＭ通信の処理を実行する。具体的には、ＩＭ通信部２１は、ＩＭサーバ装置１のＩＭ通信サービス実行部１１から配信される、ルーム１３にログイン中の被検索対象者のユーザ情報３０の受信、被検索対象者のＩＭクライアント２０との間でのピアツーピアによる通信を処理する。
【００８５】
検索条件入力部２２は、アプリケーション２６を通じて検索実行者であるユーザより入力された検索条件を検索エンジン２３に与える。具体的には、アプリケーション２６がクライアント装置２の表示部２８に検索条件入力用のＧＵＩ（Graphical User Interface）画面を表示し、このＧＵＩ画面上でユーザが入力部２７を使って入力した検索条件のデータを検索条件入力部２２が読み込んで検索エンジン２３に与える。
【００８６】
図９は、検索カテゴリーが「オークション」の場合の検索条件入力用のＧＵＩ画面４０の例である。同図に示すように、この検索条件入力用のＧＵＩ画面４０には、ＰＳＩＤと、出品物の品種、ブランド名、使用年数、品質などのデータを入力する入力欄４１−４５が設けられている。これらの入力欄４１−４５にユーザが入力部２７を使って任意のデータを入力した後、ＯＫボタン４６を押すと、各入力欄４１−４５に入力されたデータが検索条件入力部２２によって検索エンジン２３に渡される。
【００８７】
検索エンジン２３は、ＩＭ通信部２１を通じてＩＭサーバ装置１のＩＭ通信サービス実行部１１より取得した被検索対象者のユーザ情報３０の中のＰＳＩＤの一覧３３を対象に、検索条件入力部２２を通じて検索実行者より入力された検索条件の中のＰＳＩＤに一致する被検索対象者の検索を行う機能を有する。
【００８８】
また、検索エンジン２３は、ＰＳＩＤが一致した被検索対象者のユーザ情報３０に基づいて、その被検索対象者のＩＭクライアント２０に対して、ＩＭ通信部２１を通じてＰＤ（Profile Description） の送信を要求し、応答として受け取った被検索対象者のＰＤと自身のＰＤ保存部２５に保存されている自身（検索実行者）のＰＤとの照合を行う。
【００８９】
図１０は「オークション」の出品者（被検索対象者）が所有しているＰＤ５０の内容の例である。同図に示すように、出品者のＰＤ５０には、出品物の品種、ブランド名、使用年数、価格、品質などの複数のデータ項目毎に、それぞれ出品者により決められた内容を示す整数値または整数値の範囲が記述されている。
【００９０】
図１１は「オークション」の入札者（検索実行者）が所有しているＰＤ６０の内容の例である。同図に示すように、入札者のＰＤ６０には、入札希望物品の品種、ブランド名、使用年数、価格、品質などの複数のデータ項目毎に、それぞれ入札者により決められた内容を示す整数値または整数値の範囲が記述されている。
【００９１】
検索エンジン２３は、被検索対象者のＰＤ５０と自身（検索実行者）のＰＤ６０とをデータ項目毎に照合し、内容が一致するデータ項目を有する被検索対象者を検索結果として得るとともに、その被検索対象者のＩＭクライアント２０に対して自身（検索実行者）の登録を要求し、その応答を受信する。
【００９２】
検索結果表示部２４は、検索エンジン２３の検索結果を表示部２８に表示するものである。
【００９３】
さらに、クライアント装置２には、ＩＭクライアント２０と内部的に通信して、ＩＭクライアント２０が外部から取得した情報を用いて特定の処理を行うアプリケーション２６が実装されている。このアプリケーション２６が上記エンドポイント情報３２が示すアプリケーションである。
【００９４】
次に、本実施形態のＩＭ通信システム１００の動作を説明する。
【００９５】
図１２はＩＭクライアント２０の動作、特に検索実行者のＩＭクライアント２０Ａと被検索対象者のＩＭクライアント２０Ｂの動作を示すフローチャートである。図１３はＩＭサーバ装置１のＩＭ通信サービス実行部１１の動作を示すフローチャートである。
【００９６】
まず、被検索対象者となることを希望するユーザは、ＩＭクライアント２０Ｂを通じて、ＩＭサーバ装置１のＩＭ通信サービス実行部１１によって設定されたルーム１３に被検索対象者としてログインを要求する（ステップ１２０１）。ＩＭサーバ装置１のＩＭ通信サービス実行部１１は、この被検索対象者のログイン要求を受けると（ステップ１３０１、ステップ１３０２のＹＥＳ）、ログイン処理すなわち受信したログイン要求に含まれるＩＤとパスワードについて認証を行い、認証結果をＩＭクライアント２０Ｂに応答する（ステップ１３０３）。
【００９７】
被検索対象者であるユーザは、ルーム１３へのログインに成功したことを表示部２８の画面などを通して確認すると、ＩＭサーバ装置１のユーザ管理データベース１２に、ユーザ情報３０として登録すべきエンドポイント情報３２およびＰＳＩＤの一覧３３などの設定を行う（ステップ１２０２）。設定完了後、ＩＭクライアント２０Ｂは、ＩＭ通信部２１によって、設定されたユーザ情報をＩＭサーバ装置１のＩＭ通信サービス実行部１１に登録要求とともに送信する（ステップ１２０３）。
【００９８】
ＩＭサーバ装置１のＩＭ通信サービス実行部１１は、この登録要求を受けると（ステップ１３０４のＹＥＳ）、この登録要求とともに受信したユーザ情報をユーザ管理データベース１２に登録する（ステップ１３０５）。
【００９９】
この後、ＩＭサーバ装置１のＩＭ通信サービス実行部１１は、検索実行者であるＩＭクライアント２０Ａからの要求に関らず、ユーザ管理データベース１２に新規登録された被検索対象者のユーザ情報を検索実行者のＩＭクライアント２０Ａに送信する（ステップ１３０９）。
【０１００】
一方、検索実行者となることを希望するユーザがＩＭクライアント２０Ａを通じてルーム１３にログイン要求を行った場合（ステップ１２２１）、ＩＭサーバ装置１のＩＭ通信サービス実行部１１は、この検索実行者のログイン要求を受けて（ステップ１３０２のＹＥＳ）、ログイン処理すなわち受信したログイン要求に含まれるＩＤとパスワードについて認証を行い、認証結果をＩＭクライアント２０Ａに応答する（ステップ１３０３）。
【０１０１】
検索実行者のＩＭクライアント２０Ａは、ＩＭサーバ装置１のＩＭ通信サービス実行部１１よりルーム１３へのログインに成功したことの通知を受けると、表示部２８の表示画面に、たとえば、図９に示したような検索条件入力用のＧＵＩ画面４０を表示して、ユーザにＰＳＩＤを含む検索条件の入力を促す。このＧＵＩ画面４０上で検索実行者によってＰＳＩＤを含む検索条件が入力され、ＯＫボタン４６が押されると、このＧＵＩ画面４０に入力されたＰＳＩＤを含む検索条件が検索条件入力部２２によって取り込まれ、検索エンジン２３に渡される（ステップ１２２２）。検索エンジン２３への検索条件の設定が完了すると、ＩＭ通信部２１はＩＭサーバ装置１のＩＭ通信サービス実行部１１に対して被検索対象者のユーザ情報の取得要求を行う。
【０１０２】
ＩＭサーバ装置１のＩＭ通信サービス実行部１１は、被検索対象者のユーザ情報の取得要求を受信すると（ステップ１３０８のＹＥＳ）、ユーザ管理データベース１２に登録されているすべての被検索対象者のユーザ情報を要求元である検索実行者のＩＭクライアント２０Ａに送信する（ステップ１３１０）。
【０１０３】
検索実行者のＩＭクライアント２０Ａは、ＩＭサーバ装置１のＩＭ通信サービス実行部１１より送信された被検索対象者のユーザ情報をＩＭ通信部２１にて受信した後（ステップ１２２３）、検索エンジン２３にて、受信したすべての被検索対象者のユーザ情報３０を対象に、検索条件入力部２２を通じてユーザより入力された検索条件の中のＰＳＩＤに一致する被検索対象者の検索を行う（ステップ１２２４）。
【０１０４】
ＰＳＩＤが一致する被検索対象者が検索されたなら（ステップ１２２５のＹＥＳ）、検索エンジン２３はその被検索対象者が所有している披検索対象者用のＰＤ（たとえば図１０のＰＤ５０）の取得をＩＭ通信部２１に指示する。ＩＭ通信部２１は、この指示に従って、当該被検索対象者のＩＭクライアント２０Ｂに対して披検索対象者用のＰＤの取得を要求する（ステップ１２２６）。
【０１０５】
また、ステップ１２２５で、ＰＳＩＤが一致する被検索対象者が検索されなかった場合（ステップ１２２５のＮＯ）、検索実行者のＩＭクライアント２０Ａは、ＩＭ通信部２１にて、ＩＭサーバ装置１のＩＭ通信サービス実行部１１に対して被検索対象者のユーザ情報の取得を再度要求し、その応答を受け取った後（ステップ１２２３）、検索エンジン２３にて、検索条件のＰＳＩＤに一致する被検索対象者の検索を行う（ステップ１２２４）。そして、検索条件のＰＳＩＤに一致する被検索対象者が検索されるまで、ステップ１２２３、１２２４、１２２５の処理が繰り返される。
【０１０６】
被検索対象者のＩＭクライアント２０Ｂは、ＰＤの取得要求を受信すると（ステップ１２０４）、ＰＤ保存部２５から披検索対象者用のＰＤを読み出し、このＰＤをＩＭ通信部２１によりＰＤ要求元である検索実行者のＩＭクライアント２０Ａに送信する（ステップ１２０５）。
【０１０７】
検索実行者のＩＭクライアント２０Ａは、披検索対象者用のＰＤを受信すると（ステップ１２２７）、検索エンジン２３にて、この披検索対象者用のＰＤの内容と自身のＰＤ保存部２５に保存されている検索実行者用のＰＤ（たとえば図１１のＰＤ６０）の内容とを、対応するデータ項目毎に照合し（ステップ１２２８）、値が一致するデータ項目が１つ以上ある披検索対象者が検索されたならば（ステップ１２２９のＹＥＳ）、その被検索対象者のＩＭクライアント２０Ｂに対して自検索実行者の登録をＩＭ通信部２１を通じて要求する（ステップ１２３０）。
【０１０８】
また、ステップ１２２８の照合で値が一致するデータ項目がない場合（ステップ１２２９のＮＯ）には、検索実行者のＩＭクライアント２０Ａは、ＩＭ通信部２１にて、ＩＭサーバ装置１のＩＭ通信サービス実行部１１に対して被検索対象者のユーザ情報の取得を再度要求し、以後、ステップ１２２８での照合で値が一致するデータ項目が検索されるまで、ステップ１２２３からステップ１２２９までの処理を繰り返す。
【０１０９】
この登録要求を受けた被検索対象者のＩＭクライアント２０Ｂは、その登録要求者である検索実行者を通信相手として登録し、その応答を検索実行者のＩＭクライアント２０Ａに返す（ステップ１２０６）。
【０１１０】
この後、被検索対象者のＩＭクライアント２０Ｂにおいて、ユーザ情報に変更すべき事項があるかどうかがユーザにより判断される（ステップ１２０７）。変更がない場合にはステップ１２０８へ移行し、変更がある場合には処理はステップ１２０２のユーザ情報の設定に戻る。ステップ１２０８では、詳細情報の提供を行うか否かがユーザにより判断される。
【０１１１】
一方、検索実行者のＩＭクライアント２０Ａは、被検索対象者のＩＭクライアント２０Ｂからの登録完了の応答を受けると、この被検索対象者を通信相手の検索結果として登録するとともに、その検索結果を表示部２８に表示する。図１４は、この検索結果の表示例を示す図である。このように、検索結果は、たとえば、検索された被検索対象者のユーザ情報が一覧で表示される。これ以後、検索実行者のＩＭクライアント２０Ａと被検索対象者のＩＭクライアント２０Ｂとはピアツーピアで通信を行うことができるようになる。
【０１１２】
検索カテゴリーが「オークション」である場合、この後、検索実行者は、検索された被検索対象者に対して、出品物についての詳細情報の取得を要求することができる（ステップ１２３３のＹＥＳ、ステップ１２３４）。ここで、詳細情報とは、出品物の画像や詳細な仕様の記述などを含む、たとえばＨＴＭＬ（Hyper Text Markup Language）形式などの情報である。この詳細情報はクライアント装置２に実装されたＷｅｂブラウザなどのアプリケーション２６によって処理され、表示部２８に表示できるようになっている。
【０１１３】
被検索対象者のＩＭクライアント２０Ｂは、検索実行者のＩＭクライアント２０Ａからの詳細情報の取得要求を受けると（ステップ１２１０）、ステップ１２０８で詳細情報を提供するように設定されていた場合（ステップ１２０８のＹＥＳ）、その検索実行者のＩＭクライアント２０Ａに対して詳細情報を送信する（ステップ１２１１）。
【０１１４】
ここで、被検索対象者のＩＭクライアント２０Ｂにおいて、詳細情報を提供しないことが設定されている場合には（ステップ１２０８のＮＯ）、当該検索実行者に対して詳細情報を送信せず、次の検索実行者からのＰＤの取得要求に待機する（ステップ１２０９）。
【０１１５】
詳細情報を受信した検索実行者のＩＭクライアント２０Ａは、受信した詳細情報をクライアント装置２に実装されたＷｅｂブラウザなどのアプリケーション２６に渡す（ステップ１２３５）。詳細情報を受け取ったアプリケーション２６は、この詳細情報をたとえば表示部２８のブラウザ画面で閲覧可能な情報に変換してユーザに提供する（ステップ１２３６）。これにより検索実行者であるユーザは出品物の詳細な情報を知ることができる。
【０１１６】
また、検索実行者は今回検索された被検索対象者からの詳細情報の取得要求を行わず（ステップ１２３２のＮＯ）、入力部２７を使ってＩＭクライアント２０Ａに、被検索対象者のユーザ情報の再取得をＩＭサーバ装置１に対して要求するように指示を与えることができる。これにより検索実行者のＩＭクライアント２０Ａにおいて、ステップ１２２３から以降の処理が繰り返される。これにより、前回ユーザ情報の取得要求を行ってから以後に、ＩＭサーバ装置１のユーザ管理データベース１２の内容が更新されていれば、ステップ１２２３で、この更新内容を反映した応答結果である被検索対象者のユーザ情報を検索実行者のＩＭクライアント２０Ａにて取得することができ、ステップ１２２４で、異なる被検索対象者を対象とした検索が検索エンジン２３にて行われる。
【０１１７】
また、被検索対象者のユーザ情報の再取得を要求する指示を与える前に、ユーザは必要に応じて、図９に示したような検索条件入力用のＧＵＩ画面４０を表示部２８に呼び出し、このＧＵＩ画面４０でＰＳＩＤを含む検索条件の再設定を行うことができる（ステップ１２３３のＹＥＳ、ステップ１２２２）。これにより、ステップ１２２４で、異なる検索条件での被検索対象者の検索が検索エンジン２３にて行われる。
【０１１８】
ところで、被検索対象者のＩＭクライアント２０Ｂは、ＩＭサーバ装置１のユーザ管理データベース１２に登録済みの自身のユーザ情報を変更したい場合（ステップ１２０７のＹＥＳ）、ステップ１２０２においてクライアント装置２内部でのユーザ情報の変更を行った後、この変更したユーザ情報を含む変更要求をＩＭサーバ装置１のＩＭ通信サービス実行部１１に対して送信する（ステップ１２０３）。
【０１１９】
ＩＭサーバ装置１のＩＭ通信サービス実行部１１は、このユーザ情報の変更要求を受けると（ステップ１３０６のＹＥＳ）、ユーザ管理データベース１２の該当するユーザ情報を、変更要求に含まれる変更されたユーザ情報で書き替える（ステップ１３０７）。この後、ＩＭサーバ装置１のＩＭ通信サービス実行部１１は、検索実行者のＩＭクライアント２０Ａからの要求に拠らず、変更されたユーザ情報を検索実行者のＩＭクライアント２０Ａに送信する（ステップ１３０９）。検索実行者のＩＭクライアント２０Ａは、受信したユーザ情報３０を検索エンジン２３に渡して、ＰＳＩＤが一致する被検索対象者の検索を検索エンジン２３に実行させる（ステップ１２２４）。
【０１２０】
図１３に示したＩＭサーバ装置１のＩＭ通信サービス実行部１１の処理手順は、ＩＭクライアント２０Ａ，２０Ｂから、前記のログイン要求、ユーザ情報の登録要求、ユーザ情報の変更要求、ユーザ情報の取得要求などの要求を受けるごとに実行される。
【０１２１】
このように、この実施形態のＩＭ通信システム１００では、ＩＭクライアント２０が検索実行者のＩＭクライアント２０Ａまたは被検索対象者のＩＭクライアント２０Ｂのいずれかとして振る舞う。被検索対象者のＩＭクライアント２０Ｂは、自身のＰＳＩＤの一覧を含むユーザ情報をＩＭサーバ装置１のユーザ管理データベース１２に登録する。検索実行者のＩＭクライアント２０ＡはＩＭサーバ装置１より、ユーザ管理データベース１２に登録されている被検索対象者のＰＳＩＤの一覧を含むユーザ情報を取得し、自身のＰＳＩＤに一致する被検索対象者を検索する。被検索対象者を検索できたならその被検索対象者に対してＰＤの送信を要求し、自身のＰＤとの照合を行い、検索実行者が希望している条件を満足する被検索対象者を特定する。すなわち「オークション」を例にとれば、入札者が希望している条件を満足する商品を出品している被検索対象者を特定する。
【０１２２】
したがって、この実施形態のＩＭ通信システム１００によれば、次のような効果が得られる。
【０１２３】
ＩＭサーバ装置１は、各ユーザのクライアント装置２との間でユーザ情報を送受信して各ユーザのユーザ情報３０を管理するだけでよく、このユーザ情報３０に含まれるサービスの利用目的を示すＰＳＩＤの照合は検索実行者であるユーザのクライアント装置２にて実行される。また、検索実行者であるユーザのクライアント装置２は、他のユーザのクライアント装置２から被検索対象者用のＰＤ５０をネットワーク３を通じて直接取得し、この被検索対象者用のＰＤ５０と自ユーザの検索実行者用のＰＤ６０との照合も行う。これにより、メッセージ交換に必要な全体的な処理負荷がＩＭサーバ装置１と各クライアント装置２とに分散され、ＩＭサーバ装置１への負荷集中が避けられることで、サービスの信頼性（可用性）および応答性が向上する。
【０１２４】
また、この実施形態のＩＭ通信システムでは、被検索対象者による新たなユーザ情報の登録および変更が発生する都度、検索実行者のＩＭクライアント２０Ａからの要求の有無に関らず、その新たに登録されたユーザ情報や変更されたユーザ情報が検索実行者のＩＭクライアント２０Ａに送信され、ＩＭクライアント２０ＡにてＰＳＩＤの照合以下の処理が実行されるので、検索実行者のＩＭクライアント２０Ａはログイン以後も最新の情報に基づく被検索対象者の検索を行うことが可能となる。
【０１２５】
尚、本発明は、上述の実施形態にのみ限定されるものではなく、本発明の要旨を逸脱しない範囲内において種々変更を加え得ることは勿論である。
【図面の簡単な説明】
【０１２６】
【図１】本発明の一実施形態にかかるＩＭ通信システムの全体的な構成を示す図である。
【図２】図１のユーザ管理データベース上で管理されているユーザ情報の構成を示す図である。
【図３】友達検索に検索実行者として参加しているユーザが所有している検索実行者用のＰＤの例である。
【図４】友達検索に被検索対象者として参加しているユーザが所有している被検索対象者用のＰＤの例である。
【図５】図１のＩＭクライアントの動作を示すフローチャートである。
【図６】図１のＩＭサーバ装置のＩＭ通信サービス実行部の動作を示すフローチャートである。
【図７】本発明の第２の実施形態であるＩＭ通信システムの全体的な構成を示す図である。
【図８】図７のユーザ管理データベース上で管理されているユーザ情報の構成を示す図である。
【図９】検索カテゴリーがオークションである場合の検索条件入力用のＧＵＩ画面の例である。
【図１０】オークションの出品者が所有しているＰＤ（Profile Description）の例である。
【図１１】オークションの入札者が所有しているＰＤの例である。
【図１２】図７のＩＭクライアントの動作を示すフローチャートである。
【図１３】図７のＩＭサーバ装置のＩＭ通信サービス実行部の動作を示すフローチャートである。
【図１４】検索結果の表示例を示す図である。
【符号の説明】
【０１２７】
２００      ＩＭ通信システム
２０１      ＩＭサーバ装置
２０２      クライアント装置
２０３      ネットワーク
２１１      ＩＭ通信サービス実行部
２１２      ユーザ管理データベース
２１３      ルーム
２２０      ＩＭクライアント
２２１      ＩＭ通信部
２２３      検索実行者用ＰＳＩＤ記憶部
２２４      検索エンジン
２２５      検索結果表示部
２２６      ＰＤ保存部
２２７      アプリケーション
２２８      表示部
２２９      入力部
【図１】
2005056247.tif 000003
【図２】
2005056247.tif 000004
【図３】
2005056247.tif 000005
【図４】
2005056247.tif 000006
【図５】
2005056247.tif 000007
【図６】
2005056247.tif 000008
【図７】
2005056247.tif 000009
【図８】
2005056247.tif 000010
【図９】
2005056247.tif 000011
【図１０】
2005056247.tif 000012
【図１１】
2005056247.tif 000013
【図１２】
2005056247.tif 000014
【図１３】
2005056247.tif 000015
【図１４】
2005056247.tif 000016