(57)【特許請求の範囲】
【請求項１】
情報処理装置であって、
通信部と、
前記通信部を介して、他の情報処理装置におけるアプリケーションの実行状態を示す状態情報を含んだプレゼンス情報を取得する取得部と、
取得したプレゼンス情報をもとに、他の情報処理装置におけるアプリケーションの状態を示す状態画像を生成する状態画像生成部と、を備え、前記状態画像生成部は、状態情報を参照して、アプリケーションの実行状態をユーザに提示するためのマークの表示態様を決定する機能を有するものであって、
状態情報は、他の情報処理装置で実行されているアプリケーションのセッションへの参加の可否情報を含んでおり、
前記状態画像生成部は、状態情報を参照して、ユーザがアプリケーションのセッションに参加できる場合と、参加できない場合とで、アプリケーション名を表示する領域の表示態様を異ならせる機能を有することを特徴とする情報処理装置。
【請求項２】
前記状態画像生成部は、状態情報を参照して、ユーザが参加可能なアプリケーション名を表示し、ユーザが参加不能なアプリケーション名を表示しないことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記状態画像生成部は、アプリケーション名を表示する領域において、マークを表示することを特徴とする請求項１または２に記載の情報処理装置。
【請求項４】
他の情報処理装置において複数のアプリケーションが実行されている場合に、前記取得部は、他の情報処理装置において実行されている複数のアプリケーションそれぞれの最新の状態情報を含んだプレゼンス情報を取得することを特徴とする請求項１から３のいずれかに記載の情報処理装置。
【請求項５】
前記状態画像生成部は、ユーザがアプリケーションのセッションに参加できるか否かを提示するように、マークの表示態様を決定することを特徴とする請求項１から４のいずれかに記載の情報処理装置。
【請求項６】
前記状態画像生成部は、状態情報が参加許可情報を含む場合に、マークをユーザが選択できるように生成し、一方で、状態情報が参加禁止情報を含む場合に、マークをユーザが選択できないように生成し、またはマークを状態画像に含めないことを特徴とする請求項５に記載の情報処理装置。
【請求項７】
前記状態画像生成部は、アプリケーションの状態に変化があったときに、更新情報を含めた状態画像を生成するものであって、状態情報が参加許可情報を含む場合に、アプリケーションのセッションへの参加が可能であることをユーザに提示する画像を生成することを特徴とする請求項１に記載の情報処理装置。
【請求項８】
アプリケーションを実行する実行部と、
アプリケーションの実行状態を示す状態情報を含んだプレゼンス情報を生成するプレゼンス情報生成部と、
前記通信部を介して、生成したプレゼンス情報を送信する送信部と、
をさらに備えることを特徴とする請求項１から７のいずれかに記載の情報処理装置。
【請求項９】
前記実行部は、実行しているアプリケーションのセッションに他の情報処理装置が参加できるか否かを判定し、
前記プレゼンス情報生成部は、前記実行部による判定結果を状態情報としてプレゼンス情報に含めることを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記プレゼンス情報生成部は、前記実行部による判定結果に変化があった場合に、プレゼンス情報を生成することを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
複数の情報処理装置が接続する情報処理システムであって、
各情報処理装置は、
通信部と、
アプリケーションを実行する実行部と、
アプリケーションの実行状態を示す状態情報を含んだプレゼンス情報を生成するプレゼンス情報生成部と、
前記通信部を介して、生成したプレゼンス情報を送信する送信部と、
前記通信部を介して、他の情報処理装置における状態情報を含んだプレゼンス情報を取得する取得部と、
取得したプレゼンス情報をもとに、他の情報処理装置におけるアプリケーションの状態を示す状態画像を生成する状態画像生成部と、を備え、前記状態画像生成部は、取得したプレゼンス情報に含まれる状態情報を参照して、アプリケーションの実行状態をユーザに提示するためのマークの表示態様を決定する機能を有するものであって、
取得したプレゼンス情報に含まれる状態情報は、他の情報処理装置で実行されているアプリケーションのセッションへの参加の可否情報を含んでおり、
前記状態画像生成部は、取得したプレゼンス情報に含まれる状態情報を参照して、ユーザがアプリケーションのセッションに参加できる場合と、参加できない場合とで、アプリケーション名を表示する領域の表示態様を異ならせる機能を有することを特徴とする情報処理システム。
【請求項１２】
コンピュータに、
ネットワークに接続している情報処理装置におけるアプリケーションの実行状態を示す状態情報を含んだプレゼンス情報を取得する機能と、
取得したプレゼンス情報をもとに、情報処理装置におけるアプリケーションの状態を示す状態画像を生成する機能と、を実現させるためのプログラムであって、
状態画像の生成機能は、
状態情報を参照して、アプリケーションの実行状態をユーザに提示するためのマークの表示態様を決定する機能と、
情報処理装置で実行されているアプリケーションのセッションへの参加の可否情報を含む状態情報を参照して、ユーザがアプリケーションのセッションに参加できる場合と、参加できない場合とで、アプリケーション名を表示する領域の表示態様を異ならせる機能と、を含むことを特徴とするプログラム。
【請求項１３】
請求項１２に記載のプログラムを記録したコンピュータ読取可能な記録媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、情報処理装置および情報処理システムに関する。
【背景技術】
【０００２】
通信機能を搭載したゲーム装置が広く普及し、複数のユーザでチャットやオンラインゲームを楽しむことができるようになっている。また、ゲーム専用機ではなく、パーソナルコンピュータにゲームプログラムをインストールして、複数のユーザでオンラインゲームを楽しむことも一般的になっている。
【０００３】
また従来より携帯型のゲーム機やＰＤＡ（Personal Digital Assistant）等の電子機器が普及しているが、近年では、たとえばスマートフォンのように、携帯電話やＰＤＡ等の機能を一つにまとめた多機能型の電子機器が登場している。このような電子機器は、大容量のメモリおよび高速プロセッサを搭載しており、アプリケーションプログラムをダウンロードしてインストールすることで、複数のユーザがチャットしたり、またオンラインゲームをプレイすることも可能となっている。
【先行技術文献】
【特許文献】
【０００４】
【特許文献１】米国特許第７，５５８，８２０号公報
【発明の概要】
【発明が解決しようとする課題】
【０００５】
複数のユーザで同じアプリケーションを同期して実行するためには、まず、そのアプリケーションのセッションを作成して、複数のユーザが、そのセッションに参加する必要がある。ユーザ同士が集まってゲームをするような場合には、お互いに相談しながらセッションを作成して、それぞれが参加すればよいが、それぞれのユーザが離れた位置にいるような場合には、互いの状況を目で見て確認することができない。そのような場合でも、互いの状況を容易に確認でき、セッションに参加する際の手順を、可能な限りシンプルにするユーザインタフェースの開発が望まれる。
【０００６】
そこで本発明は、アプリケーションのセッションに、簡易な操作で参加できる技術を提供することを目的とする。
【課題を解決するための手段】
【０００７】
上記課題を解決するために、本発明のある態様の情報処理装置は、通信部と、通信部を介して、他の情報処理装置におけるアプリケーションの実行状態を示す状態情報を含んだプレゼンス情報を取得する取得部と、取得したプレゼンス情報をもとに、アプリケーションの状態を示す状態画像を生成する状態画像生成部と、を備える。状態画像生成部は、状態情報を参照して、アプリケーションの実行状態をユーザに提示する表示の態様を決定する。
【０００８】
本発明の別の態様は、情報処理システムである。この情報処理システムは、複数の情報処理装置が接続する情報処理システムであって、各情報処理装置は、通信部と、アプリケーションを実行する実行部と、アプリケーションの実行状態を示す状態情報を含んだプレゼンス情報を生成するプレゼンス情報生成部と、通信部を介して、生成したプレゼンス情報を送信する送信部と、通信部を介して、他の情報処理装置における状態情報を含んだプレゼンス情報を取得する取得部と、取得したプレゼンス情報をもとに、アプリケーションの状態を示す状態画像を生成する状態画像生成部と、を備える。状態画像生成部は、取得したプレゼンス情報に含まれる状態情報を参照して、アプリケーションの実行状態をユーザに提示する表示の態様を決定する。
【０００９】
なお、以上の構成要素の任意の組み合わせ、本発明の表現を方法、装置、システム、記録媒体、コンピュータプログラムなどの間で変換したものもまた、本発明の態様として有効である。
【発明の効果】
【００１０】
本発明によると、アプリケーションのセッションに、簡易な操作で参加できる技術を提供できる。
【図面の簡単な説明】
【００１１】
【図１】実施例にかかる情報処理システムの構成の一例を示す図である。
【図２】実施例にかかる情報処理装置の外観の一例を示す図である。
【図３】情報処理装置の機能ブロックを示す図である。
【図４】フレンド画面の一例を示す図である。
【図５】フレンドの詳細情報画面の一例を示す図である。
【図６】図５に示すＧＵＩを生成するフローチャートを示す図である。
【図７】状態画像生成部により生成される状態画像の別の例を示す図である。
【発明を実施するための形態】
【００１２】
図１は、実施例にかかる情報処理システム１の構成の一例を示す。情報処理システム１では、複数の情報処理装置１０ａ、１０ｂ、１０ｃ（以下、区別しない場合には「情報処理装置１０」と呼ぶ）が、互いにデータを送受信できるように接続している。図１に示す情報処理システム１においては、各情報処理装置１０が無線通信機能を有し、アクセスポイント（以下、「ＡＰ」と呼ぶ）２を介してネットワーク４に接続し、サーバ６を介して他の情報処理装置１０とデータを送受信する。このように情報処理装置１０は、無線ＬＡＮ（Local Area Network）方式による通信機能を有し、インフラストラクチャモードで他の情報処理装置１０とサーバ６を介して通信してもよいが、アドホックモードで他の情報処理装置１０と直接通信してもよい。また情報処理装置１０は、無線ＬＡＮ方式ではなく、Bluetooth（ブルートゥース）（登録商標）プロトコルを用いて他の情報処理装置１０と通信してもよく、さらには、第３世代移動通信システムにおける通信方式により他の情報処理装置１０と通信してもよい。以上のように、情報処理装置１０は、通信機能を有して、互いにデータを送受信することができる。なお情報処理装置１０は、ケーブルを用いた有線接続で他の情報処理装置１０と通信してもよい。
【００１３】
ＡＰ２は、無線ＬＡＮで情報処理装置１０を他のアクセスポイントに接続したり、情報処理装置１０をインターネットや有線ＬＡＮなどのネットワーク４に接続する中継装置として機能する。ここでは、ＡＰ２ａが情報処理装置１０ａの中継装置として、ＡＰ２ｂが情報処理装置１０ｂの中継装置として、ＡＰ２ｃが情報処理装置１０ｃの中継装置として、それぞれ機能する。なお、情報処理装置１０の数は３台に限るものではなく、それ以上の台数が存在してもよい。また本実施例では、サーバ６が、複数の情報処理装置１０の間でデータを中継するが、情報処理装置１０同士が直接データを送受信してもよい。
【００１４】
図２は、実施例にかかる情報処理装置１０の外観の一例を示す。図２に示す情報処理装置１０は、携帯型端末であり、無線通信機能を搭載している。なお上記したように、情報処理装置１０は、ケーブルを介して他の情報処理装置１０と通信してもよく、また携帯型端末に限らず、据置型端末であってもよい。
【００１５】
図２に示すように、情報処理装置１０の表側、すなわち、ユーザが情報処理装置１０を把持して操作するときにユーザに面する側には、指示入力ボタン２１、方向キー２２、Ｒボタン２３、Ｌボタン２４などの入力装置２０と、表示装置６８が備えられている。表示装置６８には、ユーザの指やスタイラスペンなどによる接触を検知するためのタッチパネル６９が併設されている。情報処理装置１０の内部には、情報処理装置１０の傾きを検知する傾きセンサ２５が備えられている。なお情報処理装置１０の裏側に、背面タッチパネルが備えられてもよい。
【００１６】
ユーザは、情報処理装置１０を両手で把持した状態で、例えば、右手親指で指示入力ボタン２１を操作し、左手親指で方向キー２２を操作し、右手人差し指又は中指でＲボタン２３を操作し、左手人差し指又は中指でＬボタン２４を操作することができる。またタッチパネル６９を操作する場合には、情報処理装置１０を両手で把持した状態で、それぞれの親指でタッチパネル６９を操作してもよく、また情報処理装置１０を左手で把持した状態で、右手でタッチパネル６９を操作し、左手親指で方向キー２２を操作し、左手人差し指又は中指でＬボタン２４を操作してもよい。
【００１７】
以下、実施例の概要を述べる。情報処理システム１では、まず情報処理装置１０ａが、所定のアプリケーションのセッションの作成指示を生成する。このアプリケーションは、複数のユーザが参加することのできるアプリケーション（マルチプレイヤオンラインアプリケーション）であり、チャットやゲームが代表的であるが、他の種類のものであってもよい。情報処理装置１０ａが、生成した作成指示をサーバ６に送信すると、サーバ６は、作成指示にしたがってセッションを作成する。具体的にサーバ６は、セッションを特定する識別情報（以下、「セッションＩＤ」と呼ぶ）を発行して、情報処理装置１０ａに返信する。セッションＩＤは、セッションに参加する情報処理装置１０がサーバ６を介して同期通信をするために利用される、サーバ６へ接続するためのＵＲＩ（Universal Resource Identifier）であってよい。
【００１８】
情報処理装置１０ａは、取得したセッションＩＤを含むプレゼンス情報を、サーバ６に送信し、他の情報処理装置１０ｂ、１０ｃは、定期的にサーバ６にアクセスすることで、情報処理装置１０ａのプレゼンス情報を取得する。なお、複数の情報処理装置１０がアドホックモードで通信する場合は、情報処理装置１０ａがプレゼンス情報を、他の情報処理装置１０ｂ、１０ｃに直接送信する。このとき、情報処理装置１０ａは、プレゼンス情報に、アプリケーションの実行状態を示す状態情報を含めておく。この状態情報は、アプリケーションのセッションへの参加の可否情報を含んでおり、情報処理装置１０ｂ、１０ｃは、プレゼンス情報を取得すると、状態情報にしたがって、情報処理装置１０ａにおけるアプリケーションの状態を示すＧＵＩ（状態画像）を生成し、ユーザがアプリケーションのセッションに参加できるか否かを提示する。状態情報が参加許可情報を含む場合には、たとえば「Ｊｏｉｎ」マークをユーザが選択できるＧＵＩを生成し、一方で、状態情報が参加禁止情報を含む場合には、「Ｊｏｉｎ」マークをユーザが選択できないＧＵＩを生成する。これにより、情報処理装置１０ｂのユーザＢ、および情報処理装置１０ｃのユーザＣは、情報処理装置１０ａを使用しているユーザＡのアプリケーションの状態を確認でき、セッションに参加できるか否かの判断を容易に行うことができる。
【００１９】
図３は、情報処理装置１０の機能ブロックを示す。情報処理装置１０は、入力装置２０、タッチパネル６９、入力部３０、処理部１００、表示装置６８、通信部１６０および記憶部１８０を備える。これらの構成は、ハードウエアコンポーネントでいえば、任意のコンピュータのＣＰＵ、メモリ、メモリにロードされたプログラムなどによって実現されるが、ここではそれらの連携によって実現される機能ブロックを描いている。したがって、これらの機能ブロックがハードウエアのみ、ソフトウエアのみ、またはそれらの組合せによっていろいろな形で実現できることは、当業者には理解されるところである。
【００２０】
入力部３０は、入力装置２０およびタッチパネル６９から入力されるユーザによる操作指示を受け付ける。通信部１６０は、他の情報処理装置１０とサーバ６経由で接続して、データの送受信を行う。上記したように通信部１６０は、他の情報処理装置１０と無線接続してもよく、また有線接続してもよい。処理部１００は、他の情報処理装置１０からプレゼンス情報を取得すると、アプリケーションの状態を示す状態画像を生成して、ユーザに提示する。表示装置６８は、処理部１００により生成される状態画像を表示し、またアプリケーションの実行画面を表示する。
【００２１】
処理部１００は、アプリケーション実行部１１０、プレゼンス情報生成部１２０、送信部１３０、取得部１４０、状態画像生成部１５０およびセッション制御部１７０を有する。セッション制御部１７０は、セッション作成部１７２、セッションＩＤ保持部１７４およびセッション参加部１７６を有する。
【００２２】
セッション制御部１７０は、サーバ６との連携のもとで、アプリケーションのセッションに関する処理を制御する。具体的には、セッション作成部１７２が、セッションの作成指示を生成し、セッションＩＤ保持部１７４が、サーバ６により設定されたセッションＩＤを保持し、セッション参加部１７６が、セッションＩＤ保持部１７４に保持されたセッションＩＤを、送信データに含めさせることで、情報処理装置１０をアプリケーションのセッションに参加させる役割をもつ。なお、セッション制御部１７０の機能はアプリケーションにより実現されてもよく、サーバ６により設定されたセッションＩＤはアプリケーションに渡されて、アプリケーションが、セッションＩＤを用いてセッションに参加するように動作してもよい。
【００２３】
本実施例の情報処理装置１０は、情報処理装置１０の状態を示すプレゼンス情報をサーバ６を介して他の情報処理装置１０に通知し、また他の情報処理装置１０から、他の情報処理装置１０の状態を示すプレゼンス情報を取得する。以下では実施例の理解を容易にするために、図１の情報処理システム１において、情報処理装置１０ａがプレゼンス情報を送信し、情報処理装置１０ｂが、情報処理装置１０ａにおいて生成されたプレゼンス情報を取得する場合について、図３に示した機能ブロックを用いて説明する。なお、全ての情報処理装置１０ａ、１０ｂ、１０ｃが、プレゼンス情報の送信機能および受信機能の双方を有しており、情報処理装置１０ａが送信機能のみ、また情報処理装置１０ｂが受信機能のみをもつわけではない。
【００２４】
＜プレゼンス情報の送信機能＞
情報処理装置１０ａにおいて、アプリケーション実行部１１０は、入力部３０で受け付けた操作指示に応じて、たとえばチャットやゲームなど、複数ユーザが参加できるアプリケーションを起動する。このとき、セッション作成部１７２は、他のユーザがアプリケーションに参加するためのセッションの作成指示を生成し、送信部１３０がサーバ６に送信する。セッションの作成指示には、ユーザＡの識別情報（以下、「ユーザアカウントＩＤ」と呼ぶ）およびアプリケーションを特定する情報（以下、「アプリケーションＩＤ」と呼ぶ）が含まれる。サーバ６は、セッションの作成指示を受け取ると、セッションＩＤを設定して、アプリケーション実行部１１０により実行されるアプリケーションのセッションを作成する。サーバ６は、セッションＩＤを情報処理装置１０ａに送信し、取得部１４０が、通信部１６０を介してセッションＩＤを取得する。取得したセッションＩＤは、セッションＩＤ保持部１７４に保持される。なお上記したように、セッションＩＤは、アプリケーションにより保持されてもよい。
【００２５】
アプリケーション実行部１１０は、複数のマルチプレイヤオンラインアプリケーションを同時に実行してもよい。複数のアプリケーションを同時実行する場合には、セッション作成部１７２は、アプリケーションごとにセッションの作成指示を生成し、サーバ６が、受け取った作成指示ごとにセッションを作成して、それぞれのセッションＩＤを情報処理装置１０ａに通知する。
【００２６】
アプリケーション実行部１１０は、アプリケーションの実行に際して、ユーザＡによるアプリケーションの実行状態を示す状態情報を生成する。この状態情報は、実行中のアプリケーションが、他のユーザからの参加を受け付け可能であるか否かを特定する情報である。たとえば状態情報はフラグ値によって表現されてよく、フラグ１は、参加許可情報であって、他のユーザが参加可能であることを示し、フラグ０は、参加禁止情報であって、他のユーザが参加不能であることを示す。
【００２７】
たとえば、チャットセッションでは、アプリケーション実行部１１０が、参加人数に制限を設けることができる。なおユーザが、アプリケーションに対して参加人数の上限を入力してもよい。参加人数に上限を設けた場合、アプリケーション実行部１１０は、まだ参加人数が上限に達していなければ、参加可能であることを示すフラグ値１の状態情報（参加許可情報）をプレゼンス情報生成部１２０に引き渡し、参加人数が上限に達していれば、参加不能であることを示すフラグ値０の状態情報（参加禁止情報）をプレゼンス情報生成部１２０に引き渡す。また、たとえばカーレースのゲームセッションにおいて、アプリケーション実行部１１０は、レースがスタートする前は、フラグ値１の状態情報をプレゼンス情報生成部１２０に引き渡し、一方で、レースがスタートすると、フラグ値０の状態情報をプレゼンス情報生成部１２０に引き渡す。このように、アプリケーション実行部１１０は、実行しているアプリケーションのセッションに、他の情報処理装置１０が参加できるか否かを判定する。このように情報処理システム１では、アプリケーションセッションに他のユーザが参加できるか否かの判定は、アプリケーション自身により実行され、その判定結果が状態情報としてプレゼンス情報生成部１２０に引き渡される。
【００２８】
プレゼンス情報生成部１２０は、アプリケーションの実行状態を示す状態情報を含んだプレゼンス情報を生成する。プレゼンス情報は、アプリケーションの状態情報だけでなく、ユーザアカウントＩＤ、セッションＩＤおよびアプリケーションＩＤを含み、さらに情報処理装置１０ａにおけるゲームのプレイ履歴、ユーザアイコンなどの情報も含んでよい。なお複数のアプリケーションが同時に起動されている場合には、各アプリケーションのセッションＩＤ、アプリケーションＩＤおよびアプリケーションの状態情報が、プレゼンス情報に含められる。プレゼンス情報生成部１２０は、各アプリケーションの最新の状態情報を記憶部１８０に保持しておき、いずれかのアプリケーションに状態変化が生じた場合に、各アプリケーションの最新の状態情報を含んだプレゼンス情報を生成する。プレゼンス情報生成部１２０は、アプリケーション実行部１１０からアプリケーションＩＤおよびアプリケーションの状態情報を受け取り、またセッションＩＤ保持部１７４からセッションＩＤを受け取ることで、プレゼンス情報を生成する。なおアプリケーションがセッションＩＤを保持している場合には、セッションＩＤはアプリケーションより提供される。プレイ履歴などをプレゼンス情報に含める場合には、プレゼンス情報生成部１２０が、記憶部１８０から必要な情報を読み出す。
【００２９】
プレゼンス情報生成部１２０は、情報処理装置１０ａの状態に変化があると、プレゼンス情報を生成（更新）する。たとえば、アプリケーションの状態情報が変化すると、プレゼンス情報生成部１２０は、プレゼンス情報を更新する。状態情報が変化する場合とは、チャットセッションの例でいえば、参加人数が上限であった状態から１人以上がチャットルームから退出し、参加人数が上限未満となる場合や、逆に、参加人数が上限未満であった状態から１人以上がチャットルームに入室して、参加人数が上限となる場合である。アプリケーション実行部１１０による他のユーザが参加できるか否かの判定結果に変化があった場合、プレゼンス情報生成部１２０は、プレゼンス情報を生成（更新）する。
【００３０】
プレゼンス情報生成部１２０は、典型的には、以下に挙げる状態の変化ポイントで、プレゼンス情報を更新する。
（１）アプリケーションが起動された場合
（２）アプリケーションにおいて、他のユーザの参加が可能となった場合
（３）アプリケーションにおいて、他のユーザの参加が可能だった状態から、参加不能な状態となった場合
（４）アプリケーションが終了された場合
なお、状態の変化ポイントは、（１）〜（４）に加えて、アプリケーションによって任意に設定されてよい。設定される状態変化ポイントは、プレゼンス情報の更新契機となる。
【００３１】
以下、上記した状態変化ポイントに関して、プレゼンス情報に含められるアプリケーションＩＤと状態情報の関係について説明する。
アプリケーションが起動されたとき、プレゼンス情報には、アプリケーションＩＤと、フラグ値０の状態情報（参加禁止情報）が含められる。
アプリケーションにおいて、他のユーザの参加が可能となった場合、プレゼンス情報には、アプリケーションＩＤと、フラグ値１の状態情報（参加許可情報）が含められる。
アプリケーションにおいて、他のユーザの参加が可能だった状態から、参加不能な状態となった場合、プレゼンス情報には、アプリケーションＩＤと、フラグ値０の状態情報（参加禁止情報）が含められる。
アプリケーションが終了されたとき、プレゼンス情報には、アプリケーションＩＤおよび状態情報ともに含められない。つまり、この場合は、アプリケーションＩＤなどをプレゼンス情報に含めないことで、アプリケーションの終了を通知するプレゼンス情報が生成される。
なお、この例では、状態情報は、参加の可否を特定する情報であるが、たとえばゲーム中の所定のミッションをクリアしたことや、所定のアイテムを獲得したことが状態変化ポイントに設定されている場合には、ミッションをクリアしたこと、またはアイテムを獲得したことが、状態情報としてプレゼンス情報に含められてもよい。
【００３２】
なおプレゼンス情報生成部１２０は、複数のアプリケーションを実行している場合、最新の状態変化が生じたアプリケーションについては、変更後の最新の状態情報をプレゼンス情報に含める一方で、状態変化が生じていないアプリケーションについては、記憶部１８０に保持されている最新の状態情報をプレゼンス情報に含める。
【００３３】
送信部１３０は、プレゼンス情報生成部１２０により生成されたプレゼンス情報を、通信部１６０を介して、サーバ６に送信する。サーバ６は、各ユーザごとに、「フレンド」と呼ばれる特定のユーザをリスト形式で登録している。予めユーザ間で合意がなされた場合に、フレンドの登録は行われ、ユーザは、フレンドを増やすことで、一緒にチャットやゲームをする仲間を増やすことができる。サーバ６は、ユーザＡのフレンドリストを保持しており、ユーザＡのフレンドリストに含まれるユーザから、プレゼンス情報の取得要求を受信すると、そのユーザに対して、ユーザＡのプレゼンス情報を送信する。ここで、ユーザＢ、Ｃがフレンドリストに登録されていれば、サーバ６は、プレゼンス情報の取得要求に応じて、ユーザＢの情報処理装置１０ｂ、ユーザＣの情報処理装置１０ｃに、ユーザＡのプレゼンス情報を送信する。以上は、プレゼンス情報を送信する情報処理装置１０ａにおける処理である。
【００３４】
＜プレゼンス情報の受信機能＞
情報処理装置１０ｂにおいて、取得部１４０が、通信部１６０を介して、サーバ６に定期的にアクセスし、情報処理装置１０ａにおけるプレゼンス情報を取得する。取得部１４０が取得するプレゼンス情報は、情報処理装置１０ａにおいて生成されたプレゼンス情報そのものであってもよく、サーバ６において何らかの情報が追加または削除されて加工されたものであってもよい。いずれにしても、取得するプレゼンス情報には、情報処理装置１０ａにおいて実行されているアプリケーションのＩＤ、セッションＩＤ、ユーザアカウントＩＤおよびアプリケーションの実行状態を示す状態情報が含まれている。状態画像生成部１５０は、取得したプレゼンス情報をもとに、アプリケーションの状態を示す状態画像を生成する。なお、ここで状態画像は、少なくとも他の情報処理装置１０ａで実行されているアプリケーションの状態をユーザに提示するものであり、さらに自身（情報処理装置１０ｂ）で実行されているアプリケーションの状態をユーザに提示するものであってよい。状態画像生成部１５０は、状態情報を参照して、アプリケーションの実行状態をユーザに提示する表示の態様を決定する。
【００３５】
図４は、フレンド画面の一例を示す。ユーザＢは、メニュー画面（図示せず）において入力装置２０またはタッチパネル６９を操作し、フレンド画面の表示ボタンを選択すると、状態画像生成部１５０が、フレンド画面を生成する。ここでは、ユーザＢのフレンドとしてユーザＡ、Ｃが登録されていることを前提としている。情報処理装置１０ｂにおいて、取得部１４０は、ユーザＡの情報処理装置１０ａおよびユーザＣの情報処理装置１０ｃにおけるプレゼンス情報を取得し、状態画像生成部１５０は、プレゼンス情報をもとに、これらの情報処理装置１０ａ、１０ｃにおける状態を示す状態画像を生成する。なおプレゼンス情報は、他の情報処理装置１０ａ、１０ｃにおいて状態変化が生じるたびにサーバ６に送信される。通信部１６０がネットワーク４に常時接続している場合、取得部１４０は定期的にサーバ６にアクセスし、サーバ６は、ユーザＢのフレンドのプレゼンス情報が更新されていれば、更新されたプレゼンス情報を情報処理装置１０ｂに送信する。これにより取得部１４０は、更新されたプレゼンス情報を取得する。このとき取得部１４０は、プレゼンス情報を状態画像生成部１５０にその都度渡すが、状態画像生成部１５０は、プレゼンス情報を受け取ると、それ以前のプレゼンス情報を上書きし、常に最新のプレゼンス情報を用いて状態画像を生成する。一方、通信部１６０がネットワーク４に常時接続していない場合には、取得部１４０は、ユーザＢによりフレンド画面の表示ボタンが選択されたタイミングで、サーバ６からプレゼンス情報を取得する。この場合、サーバ６は、最新のプレゼンス情報を通信部１６０に送信する。
【００３６】
フレンド画面には、取得部１４０が取得したプレゼンス情報の一部がユーザごとに表示される。アプリケーション表示領域２００ａには、ユーザＡが実行中のアプリケーションが表示され、アプリケーション表示領域２００ｂには、ユーザＣが実行中のアプリケーションが表示される。アプリケーション表示領域２００ａにおいて、アイコン２０２ａは、ユーザＡのアイコンを示し、ユーザ名２０４ａは、ユーザＡの名前（ニックネーム）を示し、ゲーム名２０６ａは、ユーザＡが実行中のゲームタイトルを示す。ＣＨＡＴマーク２０８は、ユーザＡがチャットセッションに参加していることを示す。またアプリケーション表示領域２００ｂにおいて、アイコン２０２ｂは、ユーザＣのアイコンを示し、ユーザ名２０４ｂは、ユーザＣの名前（ニックネーム）を示し、ゲーム名２０６ｂは、ユーザＣが実行中のゲームタイトルを示す。
【００３７】
図４には、２つのアプリケーション表示領域２００が示されているが、アプリケーション表示領域２００の数は、フレンドの数に一致する。そのため、アプリケーション表示領域２００の数は、フレンドの数に応じて、３つ以上になり得るし、また１つ以下にもなり得る。フレンド画面において、ユーザＢがアプリケーション表示領域２００ａを選択すると、ユーザＡの詳細情報を閲覧できる。この選択操作は、アプリケーション表示領域２００ａをタップして、タッチパネル６９によりタップ位置を検出されることで行われてもよく、また、入力装置２０を操作してカーソルを動かすことで行われてもよい。
【００３８】
図５は、フレンドの詳細情報画面の一例を示す。状態画像生成部１５０は、取得部１４０にて取得したユーザＡのプレゼンス情報をもとに、情報処理装置１０ａにおける状態を示す状態画像を生成する。詳細情報画面には、ユーザＡが実行中のアプリケーションを示すアプリケーション表示領域２１０と、ユーザＡのプレイ履歴を示すプレイ履歴領域２１８が表示される。なお、情報処理装置１０ａの他の状態を示す状態画像が表示されてもよい。アプリケーション表示領域２１０に示されるように、ユーザＡは、ゲーム名２０６ａに示されるゲームタイトル「ＣＡＲＲＡＣＥ２」と、アプリケーション名２１２に示されるチャットを、同時に実行している。これらは、マルチプレイヤオンラインアプリケーションであり、情報処理装置１０ａの各アプリケーションが参加を許可する場合には、ユーザＢは、それぞれのセッションに参加することができる。
【００３９】
情報処理装置１０ｂにおいて、状態画像生成部１５０は、状態情報を参照して、アプリケーションの実行状態をユーザに提示するためのマークの表示態様を決定する。ここでマークは、参加の可否をユーザに提示するためのＪｏｉｎマーク２１４、２１６を指す。Ｊｏｉｎマーク２１４、２１６はＧＵＩ（Graphical User Interface）であり、ユーザが選択できるように表示されていれば、ユーザはＪｏｉｎマークをタップすることで、アプリケーションが起動して、ユーザはそのアプリケーションのセッションに参加できる。
【００４０】
本実施例において、状態画像生成部１５０は、ユーザＢがアプリケーションのセッションに参加できるか否かを提示するように、Ｊｏｉｎマーク２１４、２１６の表示態様を決定する。図５において、Ｊｏｉｎマーク２１４は、点線で薄く表示されており、一方、Ｊｏｉｎマーク２１６は、実線で濃く表示されている。このＧＵＩでは、点線で薄く表示されたＪｏｉｎマーク２１４は、ユーザが選択不能であり、一方で、実線で濃く表示されたＪｏｉｎマーク２１６は、ユーザが選択可能である。
【００４１】
状態画像生成部１５０は、状態情報が参加許可情報を含む場合に、Ｊｏｉｎマーク２１６をユーザが選択できるように生成する。ユーザＢが、Ｊｏｉｎマーク２１６をタップすると、アプリケーション実行部１１０は、有効な選択操作として受け付けて、チャットアプリケーションを起動するとともに、セッションＩＤ保持部１７４は、情報処理装置１０ａのプレゼンス情報から抽出されるセッションＩＤを保持する。なお、セッションＩＤは、アプリケーション自身により保持されてもよい。これにより、情報処理装置１０ｂは、セッションＩＤを用いて、情報処理装置１０ａとの間でチャットを楽しむことができるようになる。
【００４２】
情報処理装置１０ｂは、チャットセッションにおいて、入力したチャットテキストと、セッションＩＤおよびユーザＢのアカウントＩＤとを少なくとも含むチャットデータをサーバ６に送信し、サーバ６は、チャットデータを情報処理装置１０ａに送信する。情報処理装置１０ａは、チャットデータに含まれるセッションＩＤを参照して、チャットセッションのデータであることを認識し、チャットウィンドウに表示する。情報処理装置１０ａから情報処理装置１０ｂにチャットデータを送信する処理も同様である。これにより、情報処理装置１０ａ、１０ｂは、同期して共通のアプリケーションを実行することができる。
【００４３】
一方、状態画像生成部１５０は、状態情報が参加禁止情報を含む場合に、Ｊｏｉｎマーク２１４をユーザが選択できないように生成する。図５に示すＪｏｉｎマーク２１４は、グレーアウト表示されて、ユーザが選択できないようにされているとともに、ユーザに、選択できないことを知らせることができる。ユーザＢがＪｏｉｎマーク２１４をタップしても、アプリケーション実行部１１０は、有効な選択操作として受け付けないため、ゲームアプリケーションを起動しない。なお、状態画像生成部１５０は、状態情報が参加禁止情報を含む場合に、Ｊｏｉｎマークを状態画像に含めないようにしてもよい。これにより、ユーザＢは、「ＣＡＲＲＡＣＥ２」に参加できないことを知ることができる。
【００４４】
図６は、図５に示すＧＵＩを生成するフローチャートを示す。図６に示すフローチャートにおいては、各部の処理手順を、ステップを意味するＳ（Ｓｔｅｐの頭文字）と数字との組み合わせによって表示する。また、Ｓと数字との組み合わせによって表示した処理で何らかの判断処理が実行され、その判断結果が肯定的であった場合は、Ｙ（Ｙｅｓの頭文字）を付加して、例えば、（Ｓ１０のＹ）と表示し、逆にその判断結果が否定的であった場合は、Ｎ（Ｎｏの頭文字）を付加して、（Ｓ１０のＮ）と表示する。
【００４５】
メニュー画面において、ユーザが入力装置２０またはタッチパネル６９を操作して、フレンド画面の表示ボタンを選択すると（Ｓ１０）、取得部１４０が、サーバ６から、自分のフレンドリストに登録されているユーザのプレゼンス情報を取得する（Ｓ１２）。状態画像生成部１５０は、プレゼンス情報をもとに、図４に示すフレンド画面を生成する（Ｓ１４）。続いて、ユーザが、いずれかのフレンドのアプリケーション表示領域２００を選択し、フレンドを指定すると（Ｓ１６）、状態画像生成部１５０が、指定されたフレンドの詳細情報画像を生成する。このとき、状態画像生成部１５０は、状態情報を参照して、アプリケーションの実行状態をユーザに提示するためのマークの表示態様を決定し（Ｓ１８）、参加許可情報があれば（Ｓ１８のＹ）、Ｊｏｉｎマークをユーザが選択可能に生成する（Ｓ２０）。一方で、参加禁止情報があれば（Ｓ１８のＮ）、Ｊｏｉｎマークをユーザが選択不能に生成する（Ｓ２２）。このように、フレンドにおけるアプリケーションが、自身の事情に応じて、他のユーザをセッションに参加させるか否かを決定するため、サーバ６に、その判断を任せる場合と比較すると、サーバ負荷を大きく低減することが可能となる。
【００４６】
図７は、状態画像生成部１５０により生成される状態画像の別の例を示す。この状態画像は、ユーザがチェック領域２２０をタップした際に生成される。この状態画像は、他のユーザにおけるアプリケーションの状態を少なくとも含み、また自身のアプリケーションの状態も含んでいる。状態画像生成部１５０は、アプリケーションの状態に変化があったことを示す更新情報を含む状態画像を生成する。
【００４７】
取得部１４０は、定期的に、通信部１６０を介してサーバ６にアクセスする。このときサーバ６において、いずれかのフレンドのプレゼンス情報が更新されていれば、取得部１４０は、サーバ６から、更新されたプレゼンス情報を取得する。また取得部１４０は、定期的に、メールサーバにアクセスして、新着メールがあるか確認する。メールサーバにおいて、メールが到着していれば、取得部１４０は、メールサーバから、新着メールを取得する。
【００４８】
状態画像生成部１５０は、取得部１４０がプレゼンス情報を取得したり、また新着メールを取得したりすると、他のユーザまたは自身のアプリケーションの状態の変化を検出する。このとき状態画像生成部１５０は、チェック領域２２０を点滅表示させるなど、チェック領域２２０をユーザの注意を引く表示態様にし、ユーザに、いずれかのアプリケーションに変化があったことを知らせる。状態画像生成部１５０は、ユーザによりチェック領域２２０が選択操作されると、アプリケーションの状態変化を示す更新情報を生成して、インジケータ２３０を作成する。
【００４９】
状態画像生成部１５０は、更新情報を上から更新日時が新しい順にリスト形式で表示するインジケータ２３０を作成する。インジケータ２３０において、更新領域２３２には、フレンドが参加しているチャットアプリケーションに状態変化があったことが更新情報として示されている。また、更新領域２３４には、新着メールがあった旨を示す更新情報が示されている。また、更新領域２３６には、ゲームタイトル「Ｂａｓｅｂａｌｌ５」をダウンロード中であることが更新情報として示され、また更新領域２３８には、ゲームタイトル「Ｓｏｃｃｅｒ４」のダウンロードが完了したことが更新情報として示される。ユーザが更新領域２４０を選択操作すると、さらに更新情報が表示される。
【００５０】
図７に示す例では、状態画像生成部１５０は、取得したプレゼンス情報を参照して、状態情報に変化があったことを特定すると、更新情報を生成して、更新領域２３２に表示している。状態情報に変化があった場合とは、たとえば、フレンドがチャットルームを開設した場合や、チャットルームの参加人数が上限に達して参加を受け付けなくなった場合、または参加が可能になった場合などを含む。ここで、フレンドがチャットルームを開設した場合、またはチャットルームが参加不能な状態から参加可能な状態になった場合には、状態画像生成部１５０が、その状態変化があったことを示す更新情報を生成して、インジケータ２３０に表示する。これにより参加可能なチャットセッションが存在するとき、ユーザは、インジケータ２３０で、その存在をいち早く確認できるようになる。なお、ユーザが更新領域２３２をタップすると、アプリケーション実行部１１０がチャットアプリケーションを起動する。これにより、生成されているチャットルームのリストが表示され、ユーザは、所望のチャットルームを選択することで、そのチャットセッションに参加することができる。また、チャットルームが参加可能な状態から参加不能な状態になった場合も、状態画像生成部１５０は、その状態変化があったことを示す更新情報を生成して、インジケータ２３０に表示する。
【００５１】
なお、状態情報が参加禁止情報を含む場合、すなわちチャットルームが参加可能な状態から参加不能な状態になった場合には、状態画像生成部１５０は、チェック領域２２０を点滅させなくてもよい。また、この場合、状態画像生成部１５０は、インジケータ２３０に、チャットに関する更新情報を生成しなくてもよい。プレゼンス情報にチャットセッションが存在することが含まれている場合であっても、参加禁止情報が設定されている場合には、ユーザは、そのチャットセッションに参加することができない。そのため、状態画像生成部１５０は、参加できないチャットルームが生成されても、チェック領域２２０を点滅表示等させず、参加できるチャットルームが生成されたときだけ、ユーザに効率的に更新情報を提示できるようにしてもよい。
【００５２】
以上、本発明を実施の形態をもとに説明した。この実施の形態は例示であり、それらの各構成要素や各処理プロセスの組み合わせにいろいろな変形例が可能なこと、またそうした変形例も本発明の範囲にあることは当業者に理解されるところである。
【００５３】
実施例は、複数の情報処理装置１０が無線ＬＡＮのインフラストラクチャモードで接続している例を示したが、アドホックモードで接続していてもよい。この場合、情報処理装置１０は、プレゼンス情報を互いに送受信することで、他の情報処理装置１０のアプリケーションの状態に応じた状態画像を生成できる。
【００５４】
また実施例では、情報処理装置１０の取得部１４０が、定期的にサーバ６にアクセスしてプレゼンス情報を取得しているが、たとえばサーバ６が、情報処理装置１０にプレゼンス情報を送信するようにしてもよい。このとき、サーバ６は、情報処理装置１０のユーザのフレンドリストに登録されているすべてのユーザのプレゼンス情報を定期的に送信してもよく、また、フレンドリストに登録されているユーザのプレゼンス情報に更新があった場合に、更新されたプレゼンス情報を、更新があるたびに送信するようにしてもよい。
【００５５】
ユーザは、図４に示すフレンド画面のアプリケーション表示領域２００をタップすることで、図５に示すフレンドの詳細情報画面を見ることができる。実施例では、フレンドの詳細情報画面において、ユーザはＪｏｉｎマークの表示態様により、アプリケーションに参加可能であるか否かを判断していた。
【００５６】
変形例では、ユーザが、図４に示すフレンド画面を見た時点で、アプリケーションに参加可能であるか否かを判断できるようにする。状態画像生成部１５０は、状態情報を参照して、アプリケーションの実行状態をユーザに提示するために、アプリケーション表示領域２００の表示態様を決定する。このとき状態画像生成部１５０は、状態情報が参加許可情報を含む場合のアプリケーション表示領域２００と、状態情報が参加許可情報を含まない場合のアプリケーション表示領域２００とで、表示態様を異ならせる。
【００５７】
たとえば、ユーザＡが実行中のゲームタイトル「ＣＡＲＲＡＣＥ２」に参加禁止情報が設定され、ユーザＣが実行中のゲームタイトル「ＴＥＮＮＩＳ４」に参加許可情報が設定されている場合を説明する。状態画像生成部１５０は、ユーザＣのアプリケーション表示領域２００ｂの全体を点滅させる一方で、ユーザＡのアプリケーション表示領域２００ａの全体を点滅させないように表示する。ユーザＢは、アプリケーション表示領域２００ｂの点滅を確認することで、参加可能なアプリケーションをユーザＣが実行していることを認識する。なお状態画像生成部１５０は、参加可能な場合と参加不能な場合とで、アプリケーション表示領域２００の表示色を異ならせたり、また文字色や文字フォント、文字サイズを異ならせたりしてもよい。ユーザＢは、自身が参加可能なアプリケーションをフレンドが実行していることに関心をもっているため、参加可能なアプリケーションを実行しているユーザのアプリケーション表示領域２００は、目立つように表示することが好ましい。
【００５８】
また、状態画像生成部１５０は、図５に示したＪｏｉｎマークを、アプリケーション表示領域２００ｂに付加してもよい。このように、状態画像生成部１５０は、プレゼンス情報に参加許可情報が含まれているか、または参加禁止情報が含まれているかに応じて、アプリケーション表示領域２００の表示態様を異ならせることで、ユーザは、フレンド画面を見て、フレンドのアプリケーションに参加可能であるか判断することが可能となる。
【００５９】
図５に示すフレンドの詳細情報画面では、ユーザが参加不能なアプリケーション（ＣＡＲＲＡＣＥ２）に対して、Ｊｏｉｎマーク２１４を選択不能に表示した。しかしながらユーザＢは、ユーザＡが実行中の「ＣＡＲＲＡＣＥ２」に参加できないため、詳細情報画面において、ユーザＡが「ＣＡＲＲＡＣＥ２」を実行していることを知る必要性は必ずしも高くない。そこで、アプリケーション表示領域２１０には、ユーザＢが参加可能なアプリケーションのみを表示してもよい。このとき、状態画像生成部１５０は、各アプリケーションの状態情報を参照して、参加可能なアプリケーションについては表示し、参加不能なアプリケーションについては表示しない。図５の例では、１つのアプリケーション表示領域２１０に２つのアプリケーション名を表示しているが、アプリケーション表示領域２１０に参加可能なアプリケーションのみを表示する場合には、アプリケーションごとにアプリケーション表示領域２１０を生成し、ユーザがアプリケーション表示領域２１０をタップすると、そのアプリケーションが起動するような仕組みを構築してもよい。
【符号の説明】
【００６０】
１・・・情報処理システム、６・・・サーバ、１０・・・情報処理装置、１００・・・処理部、１１０・・・アプリケーション実行部、１２０・・・プレゼンス情報生成部、１３０・・・送信部、１４０・・・取得部、１５０・・・状態画像生成部、１６０・・・通信部、１７０・・・セッション制御部、１７２・・・セッション作成部、１７４・・・セッションＩＤ保持部、１７６・・・セッション参加部、１８０・・・記憶部、２１４，２１６・・・Ｊｏｉｎマーク。
【図１】
0005272047.tif 000002
【図２】
0005272047.tif 000003
【図３】
0005272047.tif 000004
【図４】
0005272047.tif 000005
【図５】
0005272047.tif 000006
【図６】
0005272047.tif 000007
【図７】
0005272047.tif 000008