以下、情報処理装置および当該情報処理装置を含む情報処理システムの実施の形態について、図面を参照して説明する。以下の説明において、同一の機能および作用を有する部品は、各図を通して同じ符号を付し、重複する説明を繰返さない。
<ネットワークの構成の概略>
図1を参照して、情報処理システムの構成を説明する。図1は、情報処理システムを含むネットワークの全体構成の概略を示す図である。図1に示されるように、このネットワークは、情報処理装置100Aと、情報処理装置100Bと、情報処理装置100Cと、無線ルータ200と、無線基地局300と、ネットワーク700と、サーバ800とを含む。3台の情報処理装置100A,100B,100C(以下、これらを総称して「情報処理装置100」と言うこともある)は、CPU(Central Processing Unit)、ROM(Read Only Memory)、RAM(Random Access Memory)、ディスプレイ、通信インタフェース等を備え、プログラムに従って動作する。
図1に示されるように、情報処理装置100は、無線ルータ200や無線基地局300を介して、または、直接、ネットワーク700に接続する。情報処理装置100A、情報処理装置100B、および、情報処理装置100Cは、ネットワーク700を介して、相互に通信し得る。情報処理装置100は、ネットワーク700を介してサーバ800と通信することにより、サーバ800に格納されたコンテンツを利用し得る。
本明細書において、「コンテンツを利用する」ことは、サーバ800に格納された何らかのデータを情報処理装置100において利用することを意味する。より具体的には、「コンテンツを利用する」ことは、サーバ800に格納されたコンテンツ(画像コンテンツ,音声コンテンツ,動画コンテンツ等)を情報処理装置100にダウンロードすることや、サーバ800に格納されたコンテンツをストリーミングによって情報処理装置100において再生することだけでなく、サーバ800に格納されたプログラムをダウンロードすることや、サーバ800上のウェブアプリケーションおよび/またはクラウドアプリケーションを利用することをも含む。
サーバ800は、サーバ800A、サーバ800Bなど複数のサーバからなるサーバ群である。サーバ800は、デジタルコンテンツを情報処理装置100へ配信でき、デジタルコンテンツを配信するためのコンテンツ配信プラットフォームとして機能する。サーバ800が配信するデジタルコンテンツは、例えば、情報処理装置100で動作するアプリケーションや、ゲームプログラムや、音楽データや、動画データや、電子書籍などである。コンテンツ提供者は、このコンテンツ配信プラットフォームにコンテンツを提供する。
サーバ800は、情報処理装置100に対してウェブアプリケーションやクラウドアプリケーションを提供することもできる。この場合、アプリケーションプラットフォームとして機能する。なお、本明細書では、説明の便宜から、主に、サーバ800がコンテンツ配信プラットフォームとして機能する場合が説明される。
サーバ800は、情報処理装置100からのアクセスを受け付け、コンテンツを利用するユーザを認証し、認証済みのユーザの情報処理装置100に対し、コンテンツの利用を許可する。より具体的には、サーバ800は、認証済みのユーザの情報処理装置100に対して、ユーザが所望するコンテンツを送信し、また、ウェブアプリケーションやクラウドアプリケーションへのアクセスを許可する。
情報処理装置100は、例えば、コンテンツ配信プラットフォームを通じてコンテンツを取得するとともに、取得したコンテンツを利用するためのアプリケーション(以下、このアプリケーションを「コンテンツ管理アプリケーション」と言うこともある)を記憶する。情報処理装置100は、このアプリケーションを実行することによって、コンテンツ配信プラットフォームの認証を受ける処理、コンテンツ配信プラットフォームを通じてコンテンツの一覧を取得する処理、コンテンツ配信プラットフォームを通じてコンテンツを購入する処理、購入等によって取得したコンテンツの一覧を表示する処理、コンテンツを再生する処理など、コンテンツを取得および利用するための様々な処理を実行する。
本実施の形態においてコンテンツ配信プラットフォームおよびアプリケーションプラットフォームは、いずれも、一人の利用者が複数の端末でコンテンツを利用することを許可している。ユーザは、保有する2以上の情報処理装置のいずれをも、サーバ800においてコンテンツを利用できるように登録することができる。これにより、ユーザは、登録されたいずれの情報処理装置においても、サーバ800上のコンテンツを利用できる。
各情報処理装置におけるコンテンツの利用について、説明する。ユーザは、複数の情報処理装置を保有しており、これら複数の情報処理装置のそれぞれで同一のコンテンツを利用できる。より具体的には、図1に示されるように、本実施の形態において、情報処理装置100Aはユーザの第1のスマートフォンであり、情報処理装置100Bは当該ユーザのタブレット端末であり、情報処理装置100Cは当該ユーザの第2のスマートフォンである。ユーザは、自宅では、主にスマートフォン(情報処理装置100A)を使用してサーバ800から受信したコンテンツを利用し、外出中は、タブレット端末(情報処理装置100B)および第2のスマートフォン(情報処理装置100C)を使用してサーバ800から受信したコンテンツを利用する。
例えば、ユーザは、情報処理装置100Aを操作してサーバ800と通信し、ユーザを識別するためのアカウント名によってサーバ800の認証を受け、コンテンツ(例えば、音楽データや教育用の動画コンテンツなど)を購入し、当該コンテンツを情報処理装置100Aで受信する。
その後、ユーザは、情報処理装置100Bを操作してサーバ800と通信し、上記のアカウント名を用いてサーバ800の認証を受ける。認証が成功すれば、ユーザは、情報処理装置100Bでも、上記コンテンツを受信し得る。さらに、ユーザは、情報処理装置100Cを操作してサーバ800と通信し、上記のアカウント名を用いてサーバ800の認証を受ける。認証が成功すれば、ユーザは、情報処理装置100Cでも、上記コンテンツを受信し得る。
サーバ800は、認証した情報処理装置100のそれぞれについての情報を記憶する。本明細書では、各情報処理装置100について記憶される情報を、「利用者管理情報」(後述する利用者管理情報86)ともいう。利用者管理情報は、アカウント名と装置固有情報とを含む。装置固有情報は、情報処理装置100を特定するための情報であって、例えば、情報処理装置100のIP(Internet Protocol)アドレスやMAC(Media Access Control)アドレスなどの装置に特有の情報、情報処理装置100に設定されるデバイス名称、および/または、情報処理装置100のログインユーザ名である。
<サーバ800の構成>
図2を参照して、サーバ800の構成を説明する。図2は、サーバ800の機能ブロック図である。図2に示されるように、サーバ800は、通信部81と、制御部82と、記憶部83とを含む。本実施の形態では、記憶部83により「格納部」が構成される。
通信部81は、他の装置と通信するための通信インタフェースを備え、制御部82の制御に従って、情報処理装置100からの接続要求等を受け付けて、情報処理装置100へ各種コンテンツを送信する。
制御部82は、CPU、ROM、RAM等を備え、プログラムを実行することによってサーバ800の動作を制御する。制御部82は、例えば、情報処理装置100へコンテンツの一覧を送信する処理と、情報処理装置100のユーザがコンテンツを取得するための決済処理と、情報処理装置100へコンテンツを送信する処理等を行う。制御部82は、登録管理部88を含む。登録管理部88は、情報処理装置100からの要求に応じて、後述する利用者管理情報86への、当該情報処理装置100のアカウント情報の登録を受け付ける。
記憶部83は、サーバ800が使用する各種データを記憶するための記憶領域を構成しており、ハードディスク等により実現される。記憶部83は、利用者管理情報86と、コンテンツ87(コンテンツ87A、コンテンツ87B、・・)とを記憶する。利用者管理情報86は、情報処理装置100のユーザを識別するためのアカウント名(ユーザID)と、情報処理装置に固有の情報(装置固有情報)とを含む。
コンテンツ87は、コンテンツ保有者から提供される、画像ファイル、動画ファイル、音声ファイル、プログラム等の、種々の情報を含む。
<情報処理装置100の構成>
図3を参照して、情報処理装置100の構成を説明する。図3は、情報処理装置100の機能ブロック図である。図3に示されるように、情報処理装置100は、通信部10と、記憶部20と、操作部30と、表示部40と、制御部50とを含む。
通信部10は、外部の装置と通信するためのインタフェースであり、例えば、IEEE(The Institute of Electrical and Electronic Engineers)802.11規格に対応した無線LAN(Local Area Network)インタフェース、LTE(Long Term Evolution)に対応したモデム、イーサネット(登録商標)用のLANポート等である。
記憶部20は、各種プログラムやデータを記憶するための記憶領域を構成しており、たとえば、フラッシュメモリ、DRAM(Dynamic Random Access Memory)、ハードディスク等の記憶装置である。記憶部20は、アカウント情報21と、装置固有情報22とを記憶する。
アカウント情報21は、サーバ800が提供するコンテンツ配信プラットフォームをユーザが利用するための、サーバ800からユーザに対し発行されるアカウント(ユーザID)に関する情報である。アカウント情報21は、ユーザが情報処理装置100を操作することによってサーバ800にログインするための情報を含む。サーバ800は、情報処理装置100がコンテンツ配信プラットフォームを通じてコンテンツを取得等する際に、ユーザの認証を行う。例えば、サーバ800は、アカウント名とパスワードとの組み合わせによって、コンテンツ配信プラットフォームの利用者を認証する。
装置固有情報22は、情報処理装置100の装置に固有の情報(例えば、情報処理装置100のMACアドレスやシリアルナンバーなど)である。情報処理装置100は、サーバ800と通信し、コンテンツ配信プラットフォームを利用する際に装置固有情報22をサーバ800へ送信する。サーバ800は、アカウント名と、装置に固有の情報とを利用者管理情報86において記憶しており、あるユーザがコンテンツを利用するために使用している情報処理装置を管理する。
操作部30は、ユーザの操作を受け付けるための入力部材であり、例えばタッチパネル、操作キー、ポインティングデバイスにより実現される。操作部30は、ユーザの操作に応じて制御部50へユーザの操作内容を出力する。
表示部40は、コンテンツを表示するための表示機能を有しており、例えばLCD(Liquid Crystal Display)、有機EL(Electroluminescence)により実現される。表示部40は、制御部50の制御に従って映像を表示する。
制御部50は、CPU、ROM、RAM等を備え、プログラムを読み出して実行することによって、情報処理装置100の動作(コンテンツ再生処理、通信処理、アプリケーション実行処理など)を制御する。制御部50は、登録処理部51と、アプリケーション実行部54とを含む。
登録処理部51は、ユーザの入力操作に応じて、サーバ800に対して、コンテンツを利用するための情報の登録等を要求する。
アプリケーション実行部54は、コンテンツ管理アプリケーションを実行する。コンテンツ管理アプリケーションが実行されることにより、コンテンツ配信プラットフォームやアプリケーションプラットフォームと通信してアカウント情報を登録する処理や、コンテンツ配信プラットフォームを通じたコンテンツの取得や、アプリケーションプラットフォームを通じて取得したコンテンツの利用・再生などの処理を行う。これにより、情報処理装置100がたとえば電子書籍リーダとして機能する場合、アプリケーション実行部54は、コンテンツ配信プラットフォームから電子書籍を取得する処理、取得した電子書籍を表示部40へ表示する処理などを実行する。また、アプリケーション実行部54は、コンテンツ配信プラットフォームからオンラインゲームソフトを取得した場合、表示部40への表示制御などゲーム特有の処理を実行する。
また、アプリケーション実行部54は、サーバ800上のアプリケーションを実行する。この場合、情報処理装置100は、サーバ800が提供するアプリケーションを実行するクライアント端末として機能する。
<利用者管理情報>
図4を参照して、サーバ800の記憶部83に利用者管理情報86として格納される情報について説明する。図4は、利用者管理情報86の内容の一例を示す図である。図4に示されるように、利用者管理情報86は、アカウント名61と、端末ID62と、端末名称63と、登録状態64とを含む。
アカウント名61は、情報処理装置100のユーザを特定する情報である。たとえば複数の情報処理装置100が同一のユーザによって所有される場合には、複数の情報処理装置100が同じアカウント名を有し得る。図4中のアカウント名「user_A」は、情報処理装置100A,100B,100Cのユーザのアカウント名の一例である。
端末ID62は、情報処理装置100固有の情報である。図4中の端末ID「0123456789」は、情報処理装置100Aの端末IDの一例である。端末ID「0123012301」は、情報処理装置100Bの端末IDの一例である。端末ID「9876543210」は、情報処理装置100Cの端末IDの一例である。
端末名称63は、ユーザが各情報処理装置100に付与する名称である。図4中の端末名称「myphone」は、情報処理装置100Aの端末名称の一例である。端末名称「mytablet」は、情報処理装置100Bの端末名称の一例である。端末名称「mynewphone」は、情報処理装置100Cの端末名称の一例である。
図4の利用者管理情報には、アカウント名「user_B」で特定されるユーザの2つの情報処理装置についてのデータも登録されている。1つ目のデータは、アカウント名「user_B」、端末ID「0120120120」、および、端末名称「homepc」を含む。2つ目のデータは、アカウント名「user_B」、端末ID「0120120121」、および、端末名称「mypc」を含む。
登録状態64は、情報処理装置100ごとにサービスの提供の可否を表す情報である。図4に示されるように、登録状態64は、3種類のデータ(「registered」「disabled」「unregistered」)を含む。「registered」は、サービスの提供を許可される状態を示す。「disabled」は、サービスの提供の許可が一時的に解除された状態を示す。「unregistered」は、今後サービスを利用できない状態を示す。
本実施の形態では、サーバ800から情報処理装置100へのサービスの提供は、アカウント名ごとに、同時にサービスの提供を許可される情報処理装置の数が「2」以下になるように制限される。図4に示された例では、アカウント名「user_A」の1台の情報処理装置(端末名称「mynewphone」)の登録状態は、「registered」である。また、アカウント名「user_B」の2台の情報処理装置(端末名称「homepc」「mypc」)の登録状態は、「registered」である。これらの3台の情報処理装置は、サービスの提供を許可されている。一方、アカウント名「user_A」の2台の情報処理装置(端末名称「myphone」,「mytablet」)の登録状態は、「disabled」である。これらの2第の情報処理装置は、サービスの提供の許可を一時的に解除されている。
<アカウント情報>
情報処理装置100の記憶部20に格納されるアカウント情報21について説明する。
アカウント情報21は、情報処理装置100のアカウントに関する情報であり、図4を参照して説明された、アカウント名と、端末IDと、端末名称とを含む。アカウント名は、たとえばユーザによって記憶部20に登録される。複数の情報処理装置100が同一のユーザによって所有される場合には、複数の情報処理装置100は、同一のアカウント名を含み得る。端末IDは、たとえば出荷時に製造元から各情報処理装置100に付与される、情報処理装置100ごとのシリアルナンバーである。端末名称は、たとえばユーザによって記憶部20に登録される。
<処理の概要>
本実施の形態の情報処理システムにおいて、ユーザは、情報処理装置100でサーバ800に格納されたコンテンツを利用しようとする場合、当該情報処理装置100のアカウントをサーバ800の利用者管理情報86に登録する必要があり、さらに、図4を参照して説明したように、当該情報処理装置100の「登録状態」が「registered」である必要がある。なお、上記したように、本実施の形態では、サーバ800が1つのアカウント名に対して同時に登録状態を「registered」で登録できる情報処理装置100の台数の上限は、「2」に制限される。
ここで、図5および図6を参照して、当該情報処理システムにおいて、3台の情報処理装置100A,100B,100Cを所有するユーザが、当該3台のうち2台が「registered」で登録された状態で、3台目の登録を希望する際の処理の内容を説明する。図5および図6は、情報処理システムにおける装置間の情報のやりとりを模式的に示す図である。これらの図では、情報のやりとりの順序が、「(1)」「(2)」等のように数字を付されて示されている。
図5を参照して、ユーザは、まず、(1)として示されるように、情報処理装置100Aに、アカウント情報をサーバ800に登録するよう指示する。これにより、情報処理装置100Aの登録処理部51は、登録の要求とともに、当該情報処理装置100Aのアカウント名(user_A)と、端末ID(0123456789)と、端末名称(myphone)とを、サーバ800へ送信する。
上記情報処理装置100Aについての登録要求は、上記ユーザのアカウント名での初めての登録要求であるとする。このことから、サーバ800の利用者管理情報86には、まだ上記アカウント名では「registered」で登録されているアカウント名は存在しない。つまり、この時点で、登録管理部88は、情報処理装置100Aを「registered」で登録できる。そして、登録管理部88は、(2)として示されるように、記憶部83に、情報処理装置100Aから受信した情報を、利用者管理情報86として、登録状態「registered」とともに登録する。なお、図5および図6では、「情報処理装置100」は、「端末100」と記述される場合もある。
次に、ユーザは、(3)として示されるように、情報処理装置100Bに、アカウント情報をサーバ800に登録するよう指示する。これにより、情報処理装置100Bの登録処理部51は、登録の要求とともに、当該情報処理装置100Bのアカウント名(user_A)と、端末ID(0123012301)と、端末名称(mytablet)とを、サーバ800へ送信する。
上記のように情報処理装置100Aのアカウント情報が登録されても、まだ、利用者管理情報86に登録状態「registered」とともに登録されているアカウント情報の数は、「1」であり、上限である「2」には達していない。つまり、登録管理部88は、この時点で、情報処理装置100Bを「registered」で登録できる。そして、登録管理部88は、(4)として示されるように、記憶部83に、情報処理装置100Bから受信した情報を、利用者管理情報86として、登録状態「registered」とともに登録する。
以上説明した(1)〜(4)の処理によって、記憶部83には、利用者管理情報86として、情報処理装置100Aと情報処理装置100Bのアカウント情報が、「registered」という情報とともに登録される。図5では、この状態の利用者管理情報86が示されている。
次に、ユーザは、(5)として示されるように、情報処理装置100Cに、アカウント情報をサーバ800に登録するよう指示する。これにより、情報処理装置100Cの登録処理部51は、登録の要求とともに、当該情報処理装置100Cのアカウント名(user_A)と、端末ID(9876543210)と、端末名称(mynewphone)とを、サーバ800へ送信する。
記憶部83の利用者管理情報86には、上記(2)と(4)によって、アカウント名(user_A)に関連付けられて既に2つの端末IDが登録されている。このため、登録管理部88は、このままの状態では、情報処理装置100Cのアカウント情報を利用者管理情報86として登録できない。したがって、登録管理部88は、(6)として示されるように、情報処理装置100Cの登録が失敗したと判断し、そして、(7)として示されるように、情報処理装置100Cに対して登録の失敗を通知する。当該通知は、たとえば、既に利用者管理情報86に登録されている他の情報処理装置を特定する情報を含み得る。
当該失敗の通知を受けて、情報処理装置100Cの表示部40では、たとえば、図5の枠41内に示されたような情報が表示される。より具体的には、情報処理装置100Cの表示部40には、既に利用者管理情報86に登録されている、情報処理装置100Cとアカウント名が同じ情報処理装置100(情報処理装置100A,100B)を特定する情報が表示される。
図5には、(8X)として、当該通知に対する情報処理装置100Cの処理として、本実施の形態に対する比較例を構成する処理が示されている。(8X)として示される処理は、情報処理装置100Cにおいて、既に利用者管理情報86に登録されている情報処理装置のうち、登録を解除するものを指定する処理である。当該処理において情報処理装置100Cの表示部40に表示されることが想定される情報が、枠42内に示されている。
(8X)では、ユーザは、当該ユーザが所有する他の情報処理装置100の中から登録を解除すべき情報処理装置100を選択することができる。このため、(8X)は、ユーザにとって容易な処理であるとも考えられる。しかしながら、たとえばユーザが端末名称から情報処理装置100を正確に特定できない場合、つまり、端末名称「myphone」が情報処理装置100Aを指すのか情報処理装置100Bを指すのかをユーザが思い出せないような場合、当該処理はユーザにとって容易であるとは言えない。
本実施の形態では、ユーザは、登録を解除する情報処理装置を選択するのではなく、サーバ800に、他の情報処理装置の登録内容を、サービスを利用できないように変更することを指示する。より具体的には、ユーザは、情報処理装置100Cに、サーバ800に対して、他の情報処理装置100の登録の内容を、当該他の情報処理装置100が利用できないものへと変更することを指示させる。
このような情報処理装置100Cによる処理は、図6において、(8)として示されている。(8)では、情報処理装置100Cの登録処理部51は、図5の(7)においてサーバ800から受信した2つの他の情報処理装置100(情報処理装置100A,100B)のアカウント情報を利用して、サーバ800に対して、これらのアカウント情報の登録内容を、サービスの利用(コンテンツの利用)ができなくなるように変更する要求(指示)を送信する。
これに応じて、サーバ800の登録管理部88は、(9)として示されるように、利用者管理情報86における情報処理装置100A,100Bの登録状態を、「registered」から「disabled」へと変更する。そして、登録管理部88は、当該変更の完了を情報処理装置100Cへ通知する。
そして、登録管理部88は、(10)として示されるように、再度、サーバ800に対して、情報処理装置100Cのアカウント情報の登録を要求する。
(9)で示された処理により、利用者管理情報86では、アカウント名「user_A」に関連付けられた端末IDのうち、登録状態「registered」とともに登録された端末IDは無くなった。したがって、登録管理部88は、(10)の要求に応じて、(11)で示されるように、情報処理装置100Cのアカウント情報を、登録状態「registered」とともに、利用者管理情報86に登録する。図6では、このときの利用者管理情報86の内容が示されている。
その後、(9)の処理において利用者管理情報86における登録状態を変更した情報処理装置100A,100Bからの受信した情報に応じて、登録管理部88は、利用者管理情報86における登録の内容を変更する。
たとえば、(12)として示されるように、情報処理装置100Aからサービスの利用のための登録要求を受けると、登録管理部88は、(13)として示されるように、情報処理装置100Aに、当該情報処理装置100Aの登録状態が「disabled」へと変更されていることを通知する。図6では、当該通知が、「仮解除状態通知」と記載されている。ユーザは、情報処理装置100Aの登録の解除を受け入れるか否かを選択する。そして、情報処理装置100Aの登録の解除を受け入れる場合には、ユーザは、(14)として示されるように、情報処理装置100Aに、サーバ800へ、「登録解除受入」を通知させる。これに応じて、登録管理部88は、利用者管理情報86から、情報処理装置100Aのアカウント情報を削除する。
また、ユーザは、情報処理装置100Bの登録解除を拒否することを選択する場合もあり得る。この場合、ユーザは、サーバ800に対して、情報処理装置100Bに、登録解除を拒否する情報を送信させる。より具体的には、(15)として示されるように、情報処理装置100Bの登録処理部51がサーバ800へサービス利用のための登録を要求し、これに応じて、(16)として示されたように、サーバ800の登録管理部88は、情報処理装置100Bに、当該情報処理装置100Bの登録状態が「disabled」へと変更されていることを通知する。これに対し、情報処理装置100Bの登録処理部51は、(17)として示されるように、アカウント情報の登録の解除の拒否(を示すデータ)を送信する。サーバ800の登録管理部88は、情報処理装置100Bからの拒否を受信すると、利用者管理情報86における情報処理装置100Bのアカウント情報における登録状態を「registered」へと戻す。
なお、情報処理装置100Aからの登録解除受入を受信する前に情報処理装置100Bからの登録解除の拒否を受信すると、登録管理部88は、情報処理装置100Bの登録状態を「registered」へ戻すとともに、情報処理装置100Aのアカウント情報を利用者管理情報86から削除する。利用者管理情報86では、(11)において情報処理装置100Cのアカウント情報が登録状態「registered」とともに登録にされ、また、(17)において情報処理装置100Bの登録状態が「registered」に戻されることにより、登録状態「registered」とともにアカウント情報を登録された情報処理装置100の数が「2」となっている。この場合、情報処理装置100Aのアカウント情報は、「registered」とともに登録することができない。したがって、情報処理装置100Aのアカウント情報は利用者管理情報86から削除される。
本実施の形態の情報処理システムは、一度「registered」と登録された後、サービスを利用できなくなった情報処理装置100のアカウント情報を、二度と「registered」という状態で登録しないように設計される場合もあり得る。この場合、一度「registered」で登録されたアカウント情報は、利用者管理情報86から削除される代わりに、その状態を「unregistered」に変更される。「unregistered」は、今後コンテンツを利用できない状態を表す。
<処理シーケンス>
図7は、情報処理装置100A、情報処理装置100Bがコンテンツを利用可能な端末(情報処理装置)としてサーバ800に登録し、さらに、情報処理装置100Cにおいてコンテンツを利用可能にする場合の処理を示したシーケンス図である。このシーケンス図では、次の1)および2)の2点が前提となっている。
1)同一ユーザ(アカウント名)が使用可能な端末数の上限は、2台に制限される。
2)まず、同一ユーザの情報処理装置100A,100Bが、使用可能な端末としてサーバ800に登録する。そして、当該ユーザは、新規に購入した情報処理装置100Cを、サーバ800に、使用可能な端末として登録することを希望している。当該ユーザは、情報処理装置100Cの代わりに情報処理装置100Aの登録を解除することを希望する。ただし、図7のシーケンスが実行される際には、ユーザの手元には、情報処理装置100Cのみがあって、情報処理装置100A,100Bは無い。そして、当該ユーザは、端末名称だけでは、情報処理装置100Aと情報処理装置100Bを見分けられない。ただし、当該ユーザは、情報処理装置100Aの本体および/または情報処理装置100Bを見れば、端末名称が当該情報処理装置100Aと情報処理装置100Bのどちらに対応するのかを理解できる。
さて、図7を参照して、ユーザは、情報処理装置100Aを使用して、サーバ800に対して、認証を行った後、コンテンツを利用する端末として情報処理装置100Aを登録する(ステップS10)。登録のために、情報処理装置100Aの登録処理部51は、アカウント名(user_A)と情報処理装置100Aの端末ID(0123456789)とを、サーバ800に送信する。
この時点で、利用者管理情報86において、アカウント名user_Aに対応付けられて登録されている端末は存在しない。このため、サーバ800の登録管理部88は、利用者管理情報86に、情報処理装置100Aから受信したアカウント名(user_A)と端末ID(0123456789)とを、情報処理装置100Aについての登録状態「利用可能」(registered)とともに登録し、そして、正常に登録が終了したことを情報処理装置100Aに通知する(ステップS40)。
なお、ステップS10では、情報処理装置100Aの登録処理部51は、サーバ800に、さらに、情報処理装置100Aの端末名称を送信することもできる。そして、ステップS40では、サーバ800の登録管理部88は、さらに、利用者管理情報86に、情報処理装置100Aのアカウント名等に関連付けて、端末名称を登録することもできる。つまり、サーバ800の登録管理部88では、図5等を参照して説明されたように、情報処理装置100のアカウント名と端末IDだけでなく、端末名称をも登録することができる。
次に、ユーザは、情報処理装置100Bを使用して、サーバ800に対して、認証を行った後、コンテンツを利用する端末として情報処理装置100Bを登録する(ステップS20)。登録のため、情報処理装置100Bの登録処理部51は、アカウント名(user_A)と情報処理装置100Bの端末ID(0123012301)とをサーバ800に送信する。
この時点で、利用者管理情報86において、アカウント名user_Aに対応付けられて登録されている端末は情報処理装置100Aのみである。つまり、登録されている情報処理装置の数は、上限である「2」より小さい。このため、サーバ800の登録管理部88は、利用者管理情報86に、アカウント名(user_A)と端末ID(0123012301)とを、情報処理装置100Bについての登録状態「利用可能」(registered)とともに登録し、そして、正常に登録が終了したことを情報処理装置100Bに通知する(ステップS41)。
次に、ユーザは、情報処理装置100Cを使用して、サーバ800に対して、認証を行った後、コンテンツを利用する端末として情報処理装置100Cの登録を要求する(ステップS30)。登録の要求のため、情報処理装置100Cの登録処理部51は、アカウント名(user_A)と情報処理装置100Cの端末ID(9876543210)とをサーバ800に送信する。
この時点で、利用者管理情報86では、情報処理装置100Aと情報処理装置100Bが、すでに、user_Aに関連付けられて登録されている。つまり、利用者管理情報86では、登録状態「registered」とともに登録されている情報処理装置100の数が、すでに、上限台数(2台)に達している。このため、登録管理部88は、情報処理装置100Cに対してエラーを通知する(ステップS42)。当該エラーの通知は、すでに利用者管理情報86に登録されている情報処理装置100A,100Bの端末ID(0123456789,0123012301)の通知を含む。本実施の形態の登録管理部88では、情報処理装置について、付加的に、アカウント名も登録される。したがって、本実施の形態では、上記エラーの通知は、すでに利用者管理情報86に登録されている情報処理装置100A,100Bの端末名称(myphone,mytablet)の通知をも含む。
この通知に応じて、情報処理装置100Cは、通知された情報処理装置100A,100Bの情報を用いて、情報処理装置100A,100Bの登録の解除を問い合わせる画面を表示部40に表示する。ここで表示される画面は、たとえば、図5に枠42として示されたものである。本実施の形態では、情報処理装置100Cのユーザは、登録を解除する情報処理装置100を選択する必要はない。つまり、ユーザは、情報処理装置100Cを使用して、サーバ800に対して、利用者管理情報86に「registered」で登録されている情報処理装置100のすべてのサービスの提供の許可を一時的に解除することを指示できる。当該指示に応じて、情報処理装置100Cの登録処理部51は、サーバ800に対して当該指示を送信する(ステップS32)。
サーバ800の登録管理部88は、当該指示に応じて、利用者管理情報86を、情報処理装置100A,100Bのアカウント情報が一時的に無効(disabled)になるように変更し、当該変更が正常に終了したことを情報処理装置100Cに通知する(ステップS43)。
次に、ユーザは、情報処理装置100Cを使用して、再度、コンテンツを利用する端末として情報処理装置100Cを登録する(ステップS34)。ステップS34では、情報処理装置100Cの登録処理部51は、サーバ800に対して、アカウント名および情報処理装置100Cの端末ID等を送信する。
これに応じて、サーバ800の登録管理部88は、記憶部83において、利用者管理情報86として、情報処理装置100Cの端末名称等を登録状態「registered」とともに登録し、登録に成功するとその旨を情報処理装置100Cに通知する(ステップS44)。
次に、ユーザが情報処理装置100Aを使用する時、情報処理装置100Aはサーバ800が提供する機能(サービス)を使用するために、サーバ800にアクセスする(ステップS12)。サーバ800へのアクセス時に送信される情報loginのパラメータは、たとえば、アカウント名と、ログインパスワードと、端末IDとを含む。
サーバ800は、当該アクセスに応じて、情報処理装置100Aに対して、情報処理装置100Aの登録状態に応じた情報を通知する(ステップS45)。より具体的には、ステップS43において更新されたことにより、利用者管理情報86上では、ユーザ(user_A)の情報処理装置100A(端末ID:0123456789)の登録状態は、一時的に登録解除された状態(disabled)である。このため、ステップS45において、登録管理部88は、情報処理装置100Aに対して、当該情報処理装置100Aの登録状態がdisabledであることを通知する。
ユーザは、ステップS45の通知を受けて、情報処理装置100Aの登録を解除することに同意する場合、情報処理装置100Aに、サーバ800に対してその旨の返信を送信させる(ステップS14)。より具体的には、情報処理装置100Aは、ステップS45の通知をうけて、情報処理装置100Aを登録解除するか、または、継続して使用するかを選択するための画面を表示部40に表示する。そして、ユーザが情報処理装置100Aの登録を解除することを選択すると、情報処理装置100Aの登録処理部51は、ステップS14で、情報処理装置100Aに対する登録の解除を受け入れることを、サーバ800に通知する。
サーバ800の登録管理部88は、ステップS14の通知に対して、利用者管理情報86から情報処理装置100Aの登録を削除し、その旨を情報処理装置100Aに通知する(ステップS46)。なお、情報処理装置100Aの登録を削除する代わりに、情報処理装置100Aの登録状態としてサービスを二度と利用できない状態を示す情報(たとえば、「unregistered」)が登録されても良い。
利用者管理情報86において、情報処理装置100Aのアカウント情報が削除(または、「unregistered」に変更)されたことによって、情報処理装置100Bのアカウント情報が「registered」に戻されても、登録状態「registered」を付された情報処理装置100の数は、上限である「2」以内に収まる。したがって、登録管理部88は、情報処理装置100Aのアカウント情報を削除(または、「unregistered」に変更)したことに応じて、ステップS47で、情報処理装置100Bのアカウント情報の登録状態を「registered」に戻す。次に、ユーザが情報処理装置100Bを使用するとき、情報処理装置100Bは、サーバ800が提供する機能(サービス)を使用するために、サーバ800にアクセスする(ステップS22)。
情報処理装置100Bのアクセスに応じて、サーバ800は、情報処理装置100Bのアカウント情報の登録状態を「registered」に戻したことを通知する(ステップS47)。情報処理装置100Bの登録処理部51は、当該通知を正常に受信すると、その旨を返信する。
以上、図5〜図7を参照して説明したシーケンスにより、サーバ800に、コンテンツの利用についての上限である2台の情報処理装置(情報処理装置100A,100B)が登録されている状態で、さらに情報処理装置100Cをサーバ800に登録する際、ユーザは、サーバ800に、情報処理装置100A,100Bの登録状態を一時的にコンテンツが利用できない状態へと変更させる。これにより、ユーザは、登録を解除する情報処理装置を一意に特定できない場合であっても、情報処理装置100Cをサーバ800に登録でき、そして、当該情報処理装置100Cで、サーバ800が提供するサービス(コンテンツ)を利用できる。
その後、ユーザは、情報処理装置100Aを操作することにより、当該情報処理装置100Aのアカウント情報を利用者管理情報86から削除できる。つまり、ユーザは、登録を削除する装置自体を操作して、当該装置のアカウント情報の削除を指示できる。なお、上記のように一時的にコンテンツを利用できない状態にされた装置の中の一つの装置(情報処理装置100B)から、サーバ800に、登録の削除を受け入れないことを示す情報を送信することにより、残りの装置(情報処理装置100A)の登録を削除することもできる(図6の(17))。
なお、アカウント情報が削除される代わりに、アカウント情報の登録状態がコンテンツを二度と利用できない状態へと変更される場合もあり得る。
<サーバ側の処理>
図8を参照して、サーバ800が本実施の形態の情報処理システムにおいて実行する処理の内容を説明する。図8は、サーバ800の登録管理部88が実行する処理のフローチャートである。この例では、「registered」で登録されていたアカウント情報が削除される代わりに、アカウント情報の登録状態がコンテンツを二度と利用できない状態へと変更される場合が示される。
情報処理装置100A〜100Cのいずれかから要求を受信すると、登録管理部88は、ステップS80で、当該要求の種別に従って制御を進める。
受信した要求が利用者管理情報86における情報処理装置のアカウント情報の登録解除の要求であれば、登録管理部88は、ステップS82へ制御を進める。当該要求は、図6では(14)で示され、また、図8では「登録解除要求」で示されている。
受信した要求が利用者管理情報86への情報処理装置のアカウント情報の登録の要求であれば、登録管理部88は、ステップS84へ制御を進める。当該要求は、図5では(1)または(3)で示され、図6では(10)で示され、また、図8では「登録要求」で示されている。また、図6において(17)で示される登録解除拒否も、情報処理装置100Bからサーバ800への当該情報処理装置100Bの登録を要求に相当することから、、情報処理装置のアカウント情報の登録の要求に含まれる。
受信した要求が利用者管理情報86における情報処理装置のアカウント情報の登録を一時的に解除する要求であれば、登録管理部88は、ステップS90へ制御を進める。当該要求は、図6では(8)で示され、図8では「一時登録解除要求」で示されている。
ステップS82では、登録管理部88は、利用者管理情報86において該当する端末IDの登録状態を「unregistered」に変更して、処理を終了する。このとき、登録管理部88は、該当する端末IDに対応する情報処理装置に対して、変更が正常に終了したことを通知する。なお、登録管理部88は、登録状態を「unregistered」に変更する代わりに、利用者管理情報86から対応する端末IDの情報の登録を削除しても良い。
ステップS84では、登録管理部88は、利用者管理情報86において、登録要求元の情報処理装置と同じアカウント名で登録されている情報処理装置であって、登録状態が「registered」と登録されている情報処理装置の数が、同一アカウント名に対してサービスを提供し得る上限値以上であるか否かを判断する。そして、登録管理部88は、当該数が上限値以上であると判断するとステップS88へ制御を進め、当該数が上限値未満であると判断するとステップS86へ制御を進める。
ステップS86では、登録管理部88は、登録要求の要求元の情報処理装置のアカウント情報を、登録状態「registered」とともに登録して、処理を終了する。このとき、登録管理部88は、当該要求元の情報処理装置に対して、登録が正常に終了したことを通知する。
ステップS88では、登録管理部88は、利用者管理情報86に登録状態「registered」とともに登録されている情報処理装置であって、登録要求の要求元と同じアカウント名で登録されている情報処理装置のアカウント情報を、登録要求の要求元の情報処理装置へ送信して、処理を終了する。このとき、登録管理部88は、登録要求の要求元の情報処理装置へエラーを通知する。
ステップS90では、登録管理部88は、利用者管理情報86に登録状態「registered」とともに登録されている情報処理装置であって、一時登録解除要求の要求元の情報処理装置と同じアカウント名の情報処理装置について、登録状態を「disabled」に変更して、処理を終了する。このとき、登録管理部88は、一時登録解除要求の要求元の情報処理装置に対して、一時的な登録の解除が正常に終了したことを通知する。
以上説明した本実施の形態では、情報処理装置100Cは、サーバ800にアカウント情報の登録を要求した際に、利用者管理情報86において、当該情報処理装置100Cのアカウント情報と同じアカウント情報に関連付けられて他の情報処理装置(情報処理装置100A,100B)が登録されていることに基づいて当該要求を拒否された場合、サーバ800に、一時登録解除要求を送信する。一時登録解除要求は、他の情報処理装置(情報処理装置100A,100B)がコンテンツを利用できないように、当該他の情報処理装置(情報処理装置100A,100B)の装置固有情報の登録を一時的に解除する指示の一例である。
一時登録解除要求に応じて、サーバ800は、上記他の情報処理装置の登録状態を「disabled」に変更する。これにより、上記他の情報処理装置は、一時的にサーバ800によるサービス(コンテンツ)を利用できない状態になる。
一方、情報処理装置100Cは、サーバ800から、一時登録解除要求に対応した登録の解除が完了した通知を受けると、再度、サーバ800に、情報処理装置100Cのアカウント情報の登録を要求する。当該要求に応じて、サーバ800は、情報処理装置100Cのアカウント情報を利用者管理情報86に登録する。これにより、情報処理装置100Cを利用するユーザは、登録を解除する情報処理装置100を選択することなく、情報処理装置100Cで、サーバ800が提供するサービス(コンテンツ)を利用できる。
その後、一時登録解除要求に応じて登録状態を「disabled」へと変更された情報処理装置100は、サーバ800にアクセスすることにより、サーバ800から当該変更の通知を受ける。当該通知を受けた情報処理装置は、ユーザの操作等によって、サーバ800に、当該情報処理装置の登録の解除を受け入れることを報知する情報(解除受入情報)を送信する。サーバ800は、解除受入情報を送信した情報処理装置については、利用者管理情報86における登録を削除するか、登録状態を「unregistered」に変更する。登録状態「unregistered」は、サーバ800が提供するサービスを利用できない状態を意味する。このとき、サーバ800は、登録状態を「disabled」へと変更された残りの情報処理装置の登録状態を、「registered」へと変更しても良い。
上記通知を受けた情報処理装置は、ユーザの操作等によって、登録の解除を受け入れないことを報知する情報(解除拒否情報)を送信することもできる。サーバ800は、解除拒否情報を送信した情報処理装置については、登録状態を「registered」に変更し、他の情報処理装置のうち残りの情報処理装置についての登録状態を「unregistered」に変更する(または登録を削除する)。
なお、サーバ800は、一時登録解除要求に応じて登録状態を「disabled」へと変更した情報処理装置に対して、利用者管理情報86における登録の解除を受け入れるかどうかを問い合わせても良い。この場合、サーバ800は、受け入れると返信した情報処理装置については、利用者管理情報86における登録を削除するか、登録状態を「unregistered」に変更する。また、サーバ800は、受け入れないと返信した情報処理装置については、登録状態を「registered」に変更し、他の情報処理装置のうち残りの情報処理装置についての登録状態を「unregistered」に変更する(または登録を削除する)。
以上説明した本実施の形態では、1つのアカウント名について同時にサービス(コンテンツ)の利用を許可され得る端末の数の上限は「2」とされていた。このため、2台の端末のアカウント情報が「disabled」で登録された場合、1台の端末のアカウント情報の状態が「registered」に戻されると、他方の端末のアカウント情報は削除され、または、「unregistered」に変更された。また、上記の場合、1台の端末のアカウント情報について登録解除を受け入れられると、当該端末のアカウント情報を削除または「unregistered」にし、他方の端末のアカウント情報の状態が「registered」に戻された。
1つのアカウント名について同時にサービス(コンテンツ)の利用を許可され得る端末の数の上限が「3」以上である場合であって、3台以上の端末の状態が同時に「disabled」にされた場合、いくつかの方法の処理が考えられる。たとえば、サーバ800は、「disabled」で登録されている3台以上の端末から、順次、登録要求を受け付ける。そして、サーバ800は、登録要求を受け付けた端末から順に、アカウント情報の状態を「registered」に変更する。そして、「registered」で登録された端末の台数が上限の台数に到達した時点で、状態が「disabled」のままの端末のアカウント情報を削除または「unregistered」にする。または、サーバ800は、「disabled」で登録されている3台以上の端末のうち、1台の端末から登録解除を受け入れる旨の通知を受けると、当該通知の送信元の端末のアカウント情報を削除し、または、アカウント情報の状態を「unregistered」に変更し、その他の全ての端末のアカウント情報の状態を「registered」に変更する。
また、以上説明した本実施の形態では、アカウント情報の登録を拒否された情報処理装置(情報処理装置100C)は、他のアカウント情報の登録の一時的な解除を指示した後、サーバ800からの他のアカウント情報の登録の解除の通知を待って、再度のアカウント情報の登録の要求を送信した。なお、再度のアカウント情報の登録の要求は、上記解除の通知を待たずに、サーバ800へ送信されても良い。
再度のアカウント情報の登録の要求が上記解除の通知を待たずに送信される場合、情報処理装置100Cは、当該要求を、他のアカウント情報の登録の一時的な解除の指示とともに送信しても良いし、当該指示とは異なるタイミングで(たとえば、当該指示の後で)送信しても良い。
より具体的には、図7を参照して説明した処理において、情報処理装置100Cは、ステップS32で、サーバ800に、他のアカウント情報の登録を一時的に解除する要求を送信した後、サーバ800からの返信(ステップS43)を受けた後、ステップS34で、再度の登録の要求を送信していた。この点、情報処理装置100Cは、ステップS34における登録の要求を、サーバ800からの返信(ステップS43)を待たずに、サーバ800へ送信しても良い。
以上説明された情報処理システムでは、アカウント名ごとに登録を許可されるアカウント情報の数は「2」とされたが、本開示は、許可されるアカウント情報の数が「3」以上であるシステムにも適用され得る。このようなシステムにおいて、アカウント名に対応する情報処理装置のうちすでに登録を許可される上限数のアカウント情報がサーバ800に登録されている場合であって、新たな1台の情報処理装置が他の情報処理装置のアカウント情報の登録の一時的な解除の要求(図6の(8))をサーバ800へ送信した場合を想定する。この場合、サーバ800は、すでに登録されているアカウント情報のすべての登録状態を「disabled」に変更しても良いし、新たな情報処理装置のアカウント情報を登録するために最小限の数のアカウント情報の登録状態を「disabled」にしても良い。つまり、上限台数が「3」で、すでに3台のアカウント情報が登録されている場合であって、新たな情報処理装置から一時的な解除の要求を受けた場合、サーバ800は、3台のすべてのアカウント情報を「disabled」にしても良いし、新たな情報処理装置のアカウント情報を登録するための最小限の台数、つまり、3台のうち2台のアカウント情報を「disabled」にしても良い。
どの情報処理装置のアカウント情報を「disabled」にするかは、たとえば、新たに登録を要求した情報処理装置によって指定される。より具体的には、サーバ800は、新たにアカウント情報の登録を要求した情報処理装置に対して、すでにアカウント情報を登録されている情報処理装置を特定する情報(たとえば、端末名称)を、通知する。これにより、通知を受けた情報処理装置では、図5において枠42として示されたように、既に登録されている情報処理装置を特定する情報が表示される。通知を受けた情報処理装置のユーザは、表示された情報処理装置の中から、少なくとも2台の、登録を一時的に解除する情報処理装置を指定する。通知を受けた情報処理装置は、サーバ800へ、指定された情報処理装置を通知する。サーバ800は、通知された情報処理装置(ユーザによって指定された情報処理装置)について、アカウント情報の登録状態を「disabled」へと変更する。これにより、新たに情報処理装置のアカウント情報を登録しようとするユーザは、これ以降サービスが利用できなくなるアカウント情報(または、登録を解除されるアカウント情報)を決定するのではなく、一時的にアカウント情報の登録を解除するアカウント情報を指定すればよい。また、当該ユーザは、指定する情報処理装置(アカウント情報)を1台に絞る必要はない。
今回開示された実施の形態およびその変形例はすべての点で例示であって制限的なものではないと考えられるべきである。本発明の範囲は上記した説明ではなくて特許請求の範囲によって示され、特許請求の範囲と均等の意味および範囲内でのすべての変更が含まれることが意図される。実施の形態およびその変形例において開示された技術は、可能な限り単独でも組み合わせても実施され得ることが意図される。