(57)【要約】【課題】複数のデバイス間でサービスを同期させる技術を提供すること。【解決手段】情報処理装置は、ユーザを識別するユーザ識別情報と、ユーザ識別情報に関連付けられ、ユーザが使用する機器を識別する機器識別情報と、に対応する情報処理装置であって、情報処理装置に対応するユーザ識別情報に対応すると共に情報処理装置に対応する機器識別情報とは異なる第２の機器識別情報に対応する、通信を伴うサービスを実行していた第２の情報処理装置が存在するかを判断する。情報処理装置は、第２の情報処理装置が存在する場合、その第２の情報処理装置が実行していた通信を伴うサービスに関する通信のログを、第２の情報処理装置から取得し、その通信のログを用いて、第２の情報処理装置からサービスを引き継いで実行する。【選択図】図４
2014102754.tif 000002
【特許請求の範囲】
【請求項１】
ユーザを識別するユーザ識別情報と、前記ユーザ識別情報に関連付けられ、前記ユーザが使用する機器を識別する機器識別情報と、に対応する情報処理装置であって、
通信を伴うサービスを実行していた第２の情報処理装置であって、前記情報処理装置に対応する前記ユーザ識別情報に対応すると共に、前記情報処理装置に対応する前記機器識別情報とは異なる第２の機器識別情報に対応する第２の情報処理装置が存在するかを判断する判断手段と、
前記第２の情報処理装置が存在する場合、当該第２の情報処理装置が実行していた通信を伴うサービスに関する通信のログを、当該第２の情報処理装置から取得する取得手段と、
前記通信のログを用いて、前記第２の情報処理装置から前記サービスを引き継いで実行する実行手段と、
を有することを特徴とする情報処理装置。
【請求項２】
前記取得手段は、前記通信のログを取得するための要求を前記第２の情報処理装置へ送信する送信手段をさらに有する、
ことを特徴とする請求項１に記載の情報処理装置。
【請求項３】
前記要求は、前記第２の情報処理装置が実行していた通信を伴うサービスに関する通信のログのうち、取得すべきログを特定する条件式を含み、
前記取得手段は、前記通信のログのうち、前記条件式により特定されたログを取得する、
ことを特徴とする請求項２に記載の情報処理装置。
【請求項４】
前記要求は、前記情報処理装置が実行するサービスの情報を含み、
前記取得手段は、前記実行するサービスに関する前記通信のログを取得する、
ことを特徴とする請求項２又は３に記載の情報処理装置。
【請求項５】
前記取得手段は、さらに、前記サービスの情報に含まれないサービスに関し、通信のログのサマリを取得する、
ことを特徴とする請求項４に記載の情報処理装置。
【請求項６】
前記要求は、前記情報処理装置が実行することができる通信を伴うサービスのリストを含み、
前記取得手段は、前記サービスのリストと、前記第２の情報処理装置が実行することができる通信を伴うサービスのリストとに共通するサービスについて、通信のログを取得する、
ことを特徴とする請求項２又は３に記載の情報処理装置。
【請求項７】
前記取得手段は、さらに、前記情報処理装置が実行することができる通信を伴うサービスのリストと、前記第２の情報処理装置が実行することができる通信を伴うサービスのリストとで共通しないサービスに関し、通信のログのサマリを取得する、
ことを特徴とする請求項６に記載の情報処理装置。
【請求項８】
前記情報処理装置に対応する前記ユーザ識別情報を有する他の情報処理装置へ、実行したサービスに関し、通信のログを提供する提供手段をさらに有する、
ことを特徴とする請求項１から７のいずれか１項に記載の情報処理装置。
【請求項９】
前記他の情報処理装置から、実行したサービスに関する通信のログを取得するための要求を受信する受信手段をさらに有し、
前記提供手段は、前記要求を受信したことに応じて、前記通信のログを前記他の情報処理装置へ提供する、
ことを特徴とする請求項８に記載の情報処理装置。
【請求項１０】
前記提供手段は、前記要求が取得すべきログを特定する条件式を含む場合、当該条件式により特定されたログを前記他の情報処理装置へ提供する、
ことを特徴とする請求項９に記載の情報処理装置。
【請求項１１】
前記他の情報処理装置が実行することができる通信を伴うサービスと、前記情報処理装置が実行することができる通信を伴うサービスとに共通するサービスについて、通信のログを保存する保存手段をさらに有し、
前記提供手段は、前記保存手段に保存された通信のログを前記他の情報処理装置へ提供する、
ことを特徴とする請求項８から１０のいずれか１項に記載の情報処理装置。
【請求項１２】
前記第２の情報処理装置が、通信を伴うサービスを実行できる状態かを判定する判定手段をさらに有し、
前記取得手段は、前記第２の情報処理装置が当該サービスを実行できる状態となるのを待って、前記通信のログを取得する、
ことを特徴とする請求項１から１１のいずれか１項に記載の情報処理装置。
【請求項１３】
ユーザを識別するユーザ識別情報と、前記ユーザ識別情報に関連付けられ、前記ユーザが使用する機器を識別する機器識別情報と、に対応する情報処理装置と、複数の前記情報処理装置がメッセージ交換を行う際の中継を行うサーバとを有する情報処理システムにおける前記情報処理装置であって、
前記ユーザ識別情報と前記機器識別情報とを用いて前記サーバへログインするログイン手段と、
前記サーバへログインしている第２の情報処理装置であって、前記情報処理装置に対応する前記ユーザ識別情報に対応すると共に、前記情報処理装置に対応する前記機器識別情報とは異なる第２の機器識別情報に対応する第２の情報処理装置が存在するかを判断する判断手段と、
前記第２の情報処理装置が存在する場合、当該第２の情報処理装置が実行していた通信を伴うサービスに関する通信のログを、当該第２の情報処理装置から取得する取得手段と、
前記通信のログを用いて、前記第２の情報処理装置から前記サービスを引き継いで実行する実行手段と、
を有することを特徴とする情報処理装置。
【請求項１４】
ユーザを識別するユーザ識別情報と、前記ユーザ識別情報に関連付けられ、前記ユーザが使用する機器を識別する機器識別情報と、に対応する情報処理装置の情報処理方法であって、
判断手段が、通信を伴うサービスを実行していた第２の情報処理装置であって、前記情報処理装置に対応する前記ユーザ識別情報に対応すると共に、前記情報処理装置に対応する前記機器識別情報とは異なる第２の機器識別情報に対応する第２の情報処理装置が存在するかを判断する判断工程と、
取得手段が、前記第２の情報処理装置が存在する場合、当該第２の情報処理装置が実行していた通信を伴うサービスに関する通信のログを、当該第２の情報処理装置から取得する取得工程と、
実行手段が、前記通信のログを用いて、前記第２の情報処理装置から前記サービスを引き継いで実行する実行工程と、
を有することを特徴とする情報処理方法。
【請求項１５】
ユーザを識別するユーザ識別情報と、前記ユーザ識別情報に関連付けられ、前記ユーザが使用する機器を識別する機器識別情報と、に対応する情報処理装置と、複数の前記情報処理装置がメッセージ交換を行う際の中継を行うサーバとを有する情報処理システムにおける前記情報処理装置の情報処理方法であって、
ログイン手段が、前記ユーザ識別情報と前記機器識別情報とを用いて前記サーバへログインするログイン工程と、
判断手段が、前記サーバへログインしている第２の情報処理装置であって、前記情報処理装置に対応する前記ユーザ識別情報に対応すると共に、前記情報処理装置に対応する前記機器識別情報とは異なる第２の機器識別情報に対応する第２の情報処理装置が存在するかを判断する判断工程と、
取得手段が、前記第２の情報処理装置が存在する場合、当該第２の情報処理装置が実行していた通信を伴うサービスに関する通信のログを、当該第２の情報処理装置から取得する取得工程と、
実行手段が前記通信のログを用いて、前記第２の情報処理装置から前記サービスを引き継いで実行する実行工程と、
を有することを特徴とする情報処理方法。
【請求項１６】
コンピュータを請求項１から１４のいずれか１項に記載の情報処理装置が備える各手段として機能させるためのプログラム。
【請求項１７】
請求項１５に記載のプログラムを記憶したコンピュータが読み取り可能な記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は複数のデバイス間でのサービスの共有技術に関する。
【背景技術】
【０００２】
スマートフォンやタブレットといったモバイル端末の普及により、ユーザが複数のデバイスを持つことが多くなってきている。例えば、１人のユーザが、外出先で使用するスマートフォンと、自宅で使用するＰＣ（又はタブレット端末など）との両方を有することが一般的になっている。これに伴い、例えば、ユーザが、外出先でスマートフォンによりチャットなどのサービスのアプリケーションを利用している場合に、自宅において、ＰＣにおいてもその続きを行いたいというニーズがある。
【０００３】
ユーザ間でメッセージを交換する方式として、例えばＸＭＰＰ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍｅｓｓａｇｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｃｅ  Ｐｒｏｔｏｃｏｌ）が提案されている。ＸＭＰＰでは、同一ユーザのアカウント（Ｂａｒｅ  ＪＩＤ）で複数のデバイスからＸＭＰＰサーバにログインし、メッセージ交換を行うことができる。
【０００４】
また、特許文献１には、１人のユーザが複数の装置を利用している時、動的に変化するバディリスト（プレゼンスをウォッチする友達リスト）の同期を行う技術が記載されている。特許文献１の技術によれば、バディリストの変更やプレゼンスの更新があった時に、各装置で表示がばらつくことを防止できる。
【先行技術文献】
【特許文献】
【０００５】
【特許文献１】特開２００７−２７２９２１号公報
【発明の概要】
【発明が解決しようとする課題】
【０００６】
しかしながら、例えばスマートフォンとＰＣとの関係で検討すると、別のデバイスにログインすると、そのデバイスでは前に利用していたデバイス上のアプリケーションに関連する過去の処理内容の情報を持っていない。このため、スマートフォンとＰＣとの間で１つのアプリケーションを引き継いで、操作の続きを行うことが困難であるという課題があった。すなわち、ユーザＩＤを利用して、別のデバイスによりサービスにログインした場合、以前に別のデバイスで実行していたアプリケーションに関連する過去の処理内容を継続して利用することはできないという課題があった。また、デバイスの過去の動作が分からないため、複数のデバイス間で一貫性のある処理ができないという課題があった。
【０００７】
本発明は上記課題の少なくとも１つに鑑みなされたものであり、複数のデバイス間でサービスを同期させる技術を提供することを目的とする。
【課題を解決するための手段】
【０００８】
上記目的を達成するため、本発明による情報処理装置は、ユーザを識別するユーザ識別情報と、前記ユーザ識別情報に関連付けられ、前記ユーザが使用する機器を識別する機器識別情報と、に対応する情報処理装置であって、通信を伴うサービスを実行していた第２の情報処理装置であって、前記情報処理装置に対応する前記ユーザ識別情報に対応すると共に、前記情報処理装置に対応する前記機器識別情報とは異なる第２の機器識別情報に対応する第２の情報処理装置が存在するかを判断する判断手段と、前記第２の情報処理装置が存在する場合、当該第２の情報処理装置が実行していた通信を伴うサービスに関する通信のログを、当該第２の情報処理装置から取得する取得手段と、前記通信のログを用いて、前記第２の情報処理装置から前記サービスを引き継いで実行する実行手段と、を有する。
【発明の効果】
【０００９】
本発明によれば、複数のデバイス間でサービスを同期させることができる。
【図面の簡単な説明】
【００１０】
【図１】情報処理システムの構成例を示す図。
【図２】情報処理装置の機能構成例を示すブロック図。
【図３】情報処理システムにおける処理を示すシーケンス図。
【図４】情報処理装置が情報処理システムへログインする際に実行する動作を示すフローチャート。
【図５】サービスのメッセージのログのリストの例を示す図。
【図６】１つの識別情報に対応する複数の情報処理装置が対応するサービスリストの例を示す図。
【図７】複数の情報処理装置間でメッセージログが同期される様子を示す図。
【図８】情報処理装置がサービスの実行を開始する際の動作を示すフローチャート。
【図９】情報処理装置が他の情報処理装置からサービスに関するメッセージのログを要求された際の動作を示すフローチャート。
【発明を実施するための形態】
【００１１】
以下、添付図面を参照して本発明の実施の形態を詳細に説明する。
【００１２】
（情報処理システムの構成）
図１は、情報処理装置間でメッセージ交換を行う情報処理システムの構成例を示す図である。情報処理システムは、例えば図１に示すように、第１の情報処理装置１０１、第２の情報処理装置１０２、第３の情報処理装置１０３及び情報処理サーバ１０４を含む。ここで、各情報処理装置は、例えば、スマートフォン、タブレット、ＰＣなどである。
【００１３】
第１の情報処理装置１０１は、ＸＭＰＰ（Ｅｘｔｅｎｓｉｂｌｅ  Ｍｅｓｓａｇｉｎｇ  ａｎｄ  Ｐｒｅｓｅｎｃｅ  Ｐｒｏｔｏｃｏｌ）を用いて、情報処理サーバ１０４に接続し、他の情報処理装置とメッセージ交換を行う。第１の情報処理装置１０１は、第１のユーザ識別情報（Ｂａｒｅ  ＪＩＤ（例えば、ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ））と、第１の機器識別情報（ｃａｍｅｒａ）と、ユーザ識別情報に関連付けられたパスワードとを用いて情報処理サーバ１０４にログインする。
【００１４】
なお、ＸＭＰＰにおいては、上述のユーザ識別情報（Ｂａｒｅ  ＪＩＤ）と機器識別情報（ｃａｍｅｒａなど）との組により、１つのＪＩＤを構成する。ＪＩＤは、例えば、ｕｓｅｒ＠ｚｚｚ．ｃｏ．ｊｐ／ｃａｍｅｒａというフォーマットを有し、ｕｓｅｒ＠ｚｚｚ．ｃｏ．ｊｐの部分をＢａｒｅ  ＪＩＤ、ｃａｍｅｒａの部分をリソース、全体をＦｕｌｌ  ＪＩＤと呼ぶ。例えば複数の情報処理装置を使用する１人のユーザを識別するのがユーザ識別情報であるＢａｒｅ  ＪＩＤであり、そのユーザが使用する複数の情報処理装置のうちの１つを識別するのが機器識別情報であるリソース情報である。Ｂａｒｅ  ＪＩＤは情報処理システムの中で一意であり、リソース情報はＢａｒｅ  ＪＩＤ内で一意である。すなわち、異なるユーザに対してはＢａｒｅ  ＪＩＤの値が異なり、使用される情報処理装置（スマートフォン、タブレット、ＰＣ、通信機能付きカメラなど）ごとにリソース情報の値が異なる。
【００１５】
なお、以下では、ＸＭＰＰを用い、ユーザ識別情報と機器識別情報とが、それぞれＪＩＤのＢａｒｅ  ＪＩＤとリソース情報とに対応する場合について説明するが、これに限られない。すなわち、以下の説明は、ユーザを識別するユーザ識別情報と、１人のユーザに対応する複数の情報処理装置のうち１つを特定する機器識別情報とが組み合わされて使用される情報処理システムに対しても適用することができる。
【００１６】
第２の情報処理装置１０２は、ＸＭＰＰを用いて情報処理サーバ１０４に接続し、他の情報処理装置とメッセージ交換を行う。第２の情報処理装置１０２は、第２のユーザ識別情報（ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ）と、第２の機器識別情報（ｍｏｂｉｌｅ）と、ユーザ識別情報に関連付けられたパスワードとを用いて、情報処理サーバ１０４にログインする。第２の情報処理装置１０２は、第１の情報処理装置１０１と同じ第１のユーザ識別情報を有するが、機器識別情報は第１の機器識別情報（ｃａｍｅｒａ）とは異なる第２の機器識別情報（ｍｏｂｉｌｅ）を有する。すなわち、第１の情報処理装置１０１と第２の情報処理装置１０２とは、同じユーザに使用されるが、機器が異なる。
【００１７】
第３の情報処理装置１０３は、ＸＭＰＰを用いて情報処理サーバ１０４に接続し、他の情報処理装置とメッセージ交換を行う情報処理装置である。第３の情報処理装置１０３は、第２のユーザ識別情報（ｐｐｐ＠ｑｑｑ．ｃｏ．ｊｐ）と、第３の機器識別情報（ｔｖ）と、ユーザ識別情報に関連付けられたパスワードとを用いて、情報処理サーバ１０４にログインする。このように、第３の情報処理装置１０３は、ユーザ識別情報が第１の情報処理装置１０１と異なるため、使用するユーザが異なることとなる。
【００１８】
なお、以下では、第３の情報処理装置１０３を、当該第３の情報処理装置１０３を利用するユーザが存在するように説明するが、これに限られない。第３の情報処理装置１０３は、通信を伴うサービスの相手方装置であればよく、例えば情報をダウンロードする対象となるサーバであってもよい。例えば、ユーザが、スマートフォンでサーバからの動画を閲覧している途中で、ＰＣからの動画閲覧に切り替える場合で、サーバとの間の通信のログが記録されている場合、そのログを取得することで、動画を途中から閲覧することが可能となる。
【００１９】
情報処理サーバ１０４は、ＸＭＰＰのサーバ機能を有する。情報処理サーバ１０４は、複数の情報処理装置がメッセージ交換を行う際の中継を行う。なお、以下では、第１の情報処理装置１０１、第２の情報処理装置１０２、及び第３の情報処理装置１０３が、それぞれ情報処理サーバ１０４にログインすることを前提として説明するが、情報処理サーバ１０４はなくてもよい。例えば、第１の情報処理装置１０１又は第２の情報処理装置１０２が、第３の情報処理装置１０３との間で、直接通信を確立してもよい。
【００２０】
（情報処理装置の構成）
図２は、情報処理装置の機能構成例を示すブロック図である。以下では、第１の情報処理装置１０１について説明するが、第２の情報処理装置１０２と第３の情報処理装置１０３とが同様の構成を有していてもよい。第１の情報処理装置１０１は、存在判断部２０１、ログ取得部２０２、サービスログ選択部２０３、サービス実行部２０４、関係性判断部２０５、ログ保存部２０６、ログ提供部２０７、及びＴＣＰ／ＩＰ処理部２０８を有する。各機能部は、バス２００により接続される。
【００２１】
存在判断部２０１は、現在ログインしているＢａｒｅ  ＪＩＤ（ユーザ識別情報）で別の情報処理装置（例えば、第２の情報処理装置１０２）がログインしているかを判断する。本実施形態では、第１のユーザ識別情報（ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ）に対して、第１の機器識別情報（ｃａｍｅｒａ）と第２の機器識別情報（ｍｏｂｉｌｅ）とが関連付けられている。第１の情報処理装置１０１の存在判断部２０１は、第２の機器識別情報（ｍｏｂｉｌｅ）を有する第２の情報処理装置１０２が情報処理サーバ１０４にログインしている場合、そのことを認識することができる。存在判断部２０１は、ＸＭＰＰを用いて情報処理サーバ１０４にログインした時に取得できるプレゼンス情報（ユーザ識別情報に関連したリソースの状態情報）に基づいて、ログインしている他の情報処理装置が存在するかを判断することができる。なお、存在判断部２０１は、ユーザ識別情報に関連したリソース情報を、情報処理サーバ１０４から取得することにより、情報処理サーバ１０４にログインしている他の情報処理装置が存在するかを判断してもよい。また、存在判断部２０１は、情報処理サーバ１０４から、第１のユーザ識別情報に関連付けられている機器識別情報（本実施形態では、第１の機器情報および第２の機器情報）を取得した上で、上記の処理を実行してもよい。
【００２２】
また、第１の情報処理装置１０１又は第２の情報処理装置１０２は、第３の情報処理装置１０３との直接通信を伴うサービスを実行する際に、当該第３の情報処理装置１０３に、他方の装置との間でサービスを実行していたかの情報を直接問い合わせてもよい。また、第１の情報処理装置１０１又は第２の情報処理装置１０２は、他方の装置が、第３の情報処理装置と通信していたかについて、サービスを監視するサーバ（不図示）へ問い合わせてもよい。
【００２３】
ログ取得部２０２は、他の情報処理装置からサービスに関する通信ログを取得する。例えば、第１の情報処理装置１０１のログ取得部２０２は、第２の情報処理装置１０２から、サービスのログを取得する。サービスログ選択部２０３は、どのサービスのログを保存するかを判断する。サービスログ選択部２０３は、他の情報処理装置のサービスへの対応状態から、どのサービスのログを保存するかを決定する。サービス実行部２０４は、場合に応じてサービスのログを取得して、サービスを実行する。
【００２４】
関係性判断部２０５は、情報処理サーバ１０４から、現在ログインしているユーザ識別情報に関連するデバイスが少なくとも過去に存在していたかの判断を（例えば図６のサービスリストを用いて）行う。すなわち、関係性判断部２０５は、情報処理サーバ１０４にログインしたことがあるデバイスであって、現在ログインしているユーザ識別情報に対応するデバイスがあるかを判断する。なお、第３の情報処理装置１０３との間で、直接通信を伴うサービスを実行する場合も同様に、第３の情報処理装置１０３との間で直接通信をしたことのある、同一のユーザ識別情報に対応する他のデバイスが存在するかを判断する。
【００２５】
ログ保存部２０６は、ログを保存すると決定したサービスのログのみを保存する。なお、ログ保存部２０６は、ログを保存すると決定したサービスのログ以外のログを保存してもよい。ログ提供部２０７は、ログの取得要求に応じて、サービスのログを提供する。ＴＣＰ／ＩＰ処理部２０８は、通信プロトコル処理（ＸＭＰＰ、ＴＣＰ、ＩＰなど）を行う。
【００２６】
なお、情報処理サーバ１０４は、例えば、各情報処理装置との間での信号のやり取りに応じて、情報処理装置に関するユーザ識別情報と機器識別情報とを保持し、さらに、図６のようなサービスリストを情報処理装置毎に管理する。また、情報処理サーバ１０４を用いない構成においては、第１の情報処理装置１０１、第２の情報処理装置１０２、及び第３の情報処理装置１０３が、それぞれこれらの情報を保持してもよい。
【００２７】
（情報処理システムの動作）
図３は、第１の情報処理装置１０１〜１０３、および、情報処理サーバ１０４のシーケンス図である。
【００２８】
第２の情報処理装置１０２は、ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ（第１のユーザ識別情報）と、ｍｏｂｉｌｅ（第２の機器識別情報）と、ユーザ識別情報に関連付けられたパスワードとを用いて、情報処理サーバ１０４にログインする。第２の情報処理装置１０２は、第３の情報処理装置１０３（ｐｐｐ＠ｑｑｑ．ｃｏ．ｊｐ／ｔｖ）との間でチャットおよび画像共有のサービスに係るメッセージ交換を開始する（Ｍ３０１）。
【００２９】
第２の情報処理装置１０２は、同一のユーザ識別情報（ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ）に関連した他のデバイスがあるかの問い合わせを、情報処理サーバ１０４に対して行う（Ｍ３０２）。情報処理サーバ１０４は、ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐで識別されるユーザに関連したデバイスがあるかどうかの確認を行う。本実施形態では、ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐのユーザが保持するデバイスは、第１の情報処理装置１０１と第２の情報処理装置１０２の２つがある。したがって、情報処理サーバ１０４は、同一のユーザ識別情報に対応するデバイスとして、第１の情報処理装置１０１があることを第２の情報処理装置１０２に通知する（Ｍ３０２）。
【００３０】
ここで、第２の情報処理装置１０２は、情報処理サーバ１０４から、第１の情報処理装置１０１の持つサービスの情報を取得してもよい。図６は、ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ（第１のＢａｒｅ  ＪＩＤ）に関連づけられたデバイスのサービスリストである。６０１は、第１の情報処理装置１０１が持つサービスリストである。６０２は、第２の情報処理装置１０２が持つサービスリストである。６０３は、第４の情報処理装置１０５が持つサービスリストである。なお、第４の情報処理装置１０５は、図１及び図３に存在しないが、これは例えばオフラインのデバイスであることを示している。
【００３１】
第２の情報処理装置１０２は、他のデバイス（第１の情報処理装置１０１、および、第４の情報処理装置１０５）が存在することを確認し、これらのデバイスが持つサービスのメッセージのログ（通信ログ）の保存を開始する（Ｍ３０３）。第２の情報処理装置１０２は、自らが持つサービスリスト６０２と、第１の情報処理装置又は第４の情報処理装置が持つサービスリスト６０１及び６０３とを比較する。そして、第２の情報処理装置１０２が持つサービスリスト６０２に含まれるサービスが他のデバイスが持つサービスリストに含まれている場合、当該他のデバイスからサービスのメッセージのログを取得する。図６の例では、第２の情報処理装置１０２のサービスリストに含まれるサービスのうち、チャットが第１の情報処理装置１０１及び第４の情報処理装置１０５のサービスリストに含まれるため、両方のデバイスからチャットサービスのメッセージのログを取得する。また、画像共有サービスが第４の情報処理装置１０５のサービスリスト６０３に含まれるため、第２の情報処理装置１０２は、第４の情報処理装置１０５の画像共有サービスのメッセージのログを取得する。同様に、第２の情報処理装置１０２は、第１の情報処理装置１０１の印刷サービスのメッセージのログを取得する。図５は、サービスのメッセージのログのリストの例を示す図である。ログは、例えば、サービスのメッセージ番号、サービスの種類、送信又は受信時刻、メッセージのサイズを含む。また、メッセージ番号により、特定のメッセージが識別される。なお、サービスの種類は、例えば、チャット、画像共有等を含む。例えば、第４の情報処理装置１０５のサービスリスト６０３がない時（第４の情報処理装置１０５が関連付けられたデバイスでない場合）、画像共有のサービスのメッセージのログは保存されない。なお、サービスリスト６０２に含まれるサービスが、サービスリスト６０１及び６０３のいずれにも含まれない場合は、ログを取得しない。このように、サービスリストを比較することにより、無駄な問い合わせをする必要がなくなる。
【００３２】
その後、第１の情報処理装置１０１は、第１のユーザ識別情報（ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ）と、第１の機器識別情報（ｃａｍｅｒａ）と、ユーザ識別情報に関連付けられたパスワードとを用いて、情報処理サーバ１０４にログインする（Ｍ３０４）。情報処理サーバ１０４は、ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐでログインするデバイスの状態をプレゼンスとして通知する（Ｍ３０５）。本実施形態では、第２の情報処理装置１０２の状態を第１の情報処理装置１０１に通知する。
【００３３】
第１の情報処理装置１０１は、情報処理サーバ１０４を介して、第２の情報処理装置１０２にメッセージログ取得要求を送信する（Ｍ３０６）。このメッセージログ取得要求には、第１の情報処理装置１０１が保持するサービスやアプリケーションの情報（図６の６０１）が含まれている。
【００３４】
第２の情報処理装置１０２は、情報処理サーバ１０４を介して、第１の情報処理装置１０１にメッセージログ取得要求に対して返信する（Ｍ３０７）。ここで、第２の情報処理装置１０２は、受信したメッセージログ取得要求に含まれるサービスリスト６０１と、自らが保持するサービスリスト６０２との比較を行う。そして、第１の情報処理装置１０１と第２の情報処理装置１０２との間ではチャットのサービスのみが共通するため、メッセージログ取得要求に対する返信として、チャットのサービスに関するメッセージのログを抜き出して送信する。
【００３５】
なお、本実施形態では、チャットサービスのみログを送信したが、これに限らず、第１の情報処理装置１０１のサービスリスト６０１に含まれていないサービス（画像共有）のメッセージのログについてのサマリを送ってもよい。さらに、第２の情報処理装置１０２は、メッセージの総量、時間、個数、特定のサービスやアプリケーションのみに絞るための条件式がメッセージログ取得要求に含まれていた場合、その条件式により送信する対象となるメッセージのログを絞り込んでもよい。この場合、第２の情報処理装置１０２は、条件式とメッセージのログとの比較により、メッセージのログを、必要な部分のログのみに加工して、第１の情報処理装置１０１へ送信する。これにより、例えば非常に古いログなどを排除して、データの送受信量を抑えながら、第１の情報処理装置１０１との間で効率的にログの同期をとることができる。また、第２の情報処理装置１０２は、独自に条件式を保持し、第１の情報処理装置１０１からのメッセージログ取得要求があった場合に、その条件式を用いて送信するログを絞り込んでもよい。
【００３６】
また、第１の情報処理装置１０１は、実行するサービスに関してのみログを特定して要求するようにメッセージログ取得要求を構成してもよい。この場合、第２の情報処理装置１０２は、メッセージログ取得要求に含まれる、第１の情報処理装置１０１が実行するサービスの情報から、送信するログを特定する。これにより、送受信するデータ量を抑えながら、第１の情報処理装置１０１が使用することが予想されるデータを効率的に送信することができる。
【００３７】
第１の情報処理装置１０１は、第２の情報処理装置１０２から受信したメッセージのログを保存し、各アプリケーションやサービスでそのログの利用を開始する。また、第１の情報処理装置１０１は、第２の情報処理装置１０２が有さないログ（例えば、第１の情報処理装置１０１や別の情報処理装置のログなど）がある場合、情報処理サーバ１０４を介して、第２の情報処理装置１０２へそのログを送信する（Ｍ３０８）。この時のメッセージのログは、上述の条件式を用いて、必要な部分のログに加工したログであってもよい。第２の情報処理装置１０２は、受信したメッセージのログを保存し、各アプリケーションやサービスに引き渡す。このように、ある条件に応じたメッセージのログの同期が行われる。
【００３８】
なお、本実施形態では、どちらかの情報処理装置が定めた条件式を使用する形を取ったが、Ｍ３０６〜Ｍ３０８の間に条件式のネゴシエーションを行ってもよい。これにより、複数の情報処理装置のメモリ容量や処理速度などの能力に応じた適切な条件で、共有するログを決定することができる。
【００３９】
第１の情報処理装置１０１は、第３の情報処理装置１０３とチャットのサービスのメッセージ交換を行う（Ｍ３０９）。ここで、第１の情報処理装置１０１は、第２の情報処理装置１０２とチャットのサービスに関するメッセージのログの同期を行っているので、Ｍ３０９において生じたメッセージのログを保存して更新する。そして、第１の情報処理装置１０１は、情報処理サーバ１０４を介して、第２の情報処理装置１０２に、更新されたメッセージのログを送信する（Ｍ３１０）。このメッセージログの送受信による更新は、サービスやアプリケーションから指定された間隔で実行されてもよいし、メッセージログが更新される都度に実行されてもよい。同様に、第２の情報処理装置１０２のログが更新された場合も、同様の処理によりメッセージログの更新を実行することができる。
【００４０】
本実施形態では、ＸＭＰＰを用いた例で示しているため、第１の情報処理装置１０１、第２の情報処理装置１０２、及び第３の情報処理装置１０３間で通信を行う場合に情報処理サーバ１０４を介して送受信を行っている。しかし、これはＸＭＰＰの仕様によるものであって、情報処理サーバ１０４を介することが必要ではない。例えば、直接通信を行うプロトコルに対しても、ログの更新を行うことができることは明らかである。
【００４１】
図７は、複数の情報処理装置間における、サービスに関するメッセージのログの動き、すなわち、メッセージログが同期される様子を示した図である。図７において、７０１は、第１の情報処理装置１０１のログテーブルを示し、７０２は、第２の情報処理装置１０２のログテーブルを示す。例えば、メッセージ番号１、３、５のログは、図３のＭ３０７において、第２の情報処理装置１０２から第１の情報処理装置１０１にログが渡される。メッセージ番号６は、例えば、図３のシーケンス図には示されていない処理であるが、ログの同期後に、第２の情報処理装置１０２から第１の情報処理装置１０１に渡される。また、メッセージ番号８は、図３のＭ３１０において、第１の情報処理装置１０１から第２の情報処理装置１０２にログが渡される。このように、ログインした後に、過去のログについての同期を一度に行った後は、所定時間間隔で、又は、ログが更新されるたびに、いずれかの情報処理装置において更新されたメッセージログが同期される。
【００４２】
（情報処理装置の動作）
図４に、第１の情報処理装置１０１が情報処理システムへログインする際に実行する処理のフローチャートを示す。本処理は、図３におけるＭ３０４〜Ｍ３１０における第１の情報処理装置１０１の動作に対応する。以下では、第１の情報処理装置１０１の動作として説明するが、第２の情報処理装置１０２など、他の情報処理装置においてこれらの動作を実行してもよい。
【００４３】
まず、サービス実行部２０４は、ユーザからのＦｕｌｌ  ＪＩＤの入力を受け付ける（Ｓ４０１）。ここでは、第１の情報処理装置のＦｕｌｌ  ＪＩＤであるｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ／ｃａｍｅｒａが、すなわち、第１のユーザ識別情報と第１の機器識別情報とが、ユーザにより指定される。なお、ユーザによるＦｕｌｌ  ＪＩＤの入力を受け付けてもよいし、ユーザによるユーザ識別情報の入力を受け付け、その入力の受付に応じて、情報処理装置がリソース情報（機器識別情報）を付加してもよい。
【００４４】
続いて、サービス実行部２０４は、情報処理サーバ１０４にログインする（Ｓ４０２）。例えば、サービス実行部２０４は、ＴＣＰ／ＩＰ処理部２０８にＸＭＰＰの実行を依頼する。そして、サービス実行部２０４は、情報処理サーバ１０４へのログインが成功したかの判定を行う（Ｓ４０３）。サービス実行部２０４がログインに失敗したと判断すると（Ｓ４０３でＮＯ）、第１の情報処理装置１０１は、処理を終了する。
【００４５】
一方、サービス実行部２０４がログインに成功したと判断すると（Ｓ４０３でＹＥＳ）、存在判断部２０１は、ユーザ識別情報（ｘｘｘ＠ｙｙｙ．ｃｏ．ｊｐ）に関連する他のリソースからのプレゼンスを情報処理サーバ１０４から取得する（Ｓ４０４）。そして、存在判断部２０１は、取得したプレゼンスから、同一のＪＩＤで他の情報処理装置がログインしているか否かの判定を行う（Ｓ４０５）。同一のＪＩＤの他の情報処理装置がログインしていると判定すると（Ｓ４０５でＹＥＳ）、第１の情報処理装置１０１は処理をＳ４０６へ進める。一方、同一のＪＩＤの他の情報処理装置がログインしていないと判定すると（Ｓ４０５でＮＯ）、処理を終了する。本実施形態では、情報処理サーバ１０４からプレゼンスを取得することで、他の情報処理装置（第２の情報処理装置１０２）が利用可能な状態にあるか否かの判定を行ったが、これに限らず、別のサーバに登録してある情報を取得してもよい。また、実行するサービスが決定している場合、例えばチャットなどの相手方装置が存在するサービスを実行する場合は、その相手方装置の通信相手として、同一のＪＩＤを有する他の情報処理装置が存在するかの情報を、当該相手方装置から取得してもよい。
【００４６】
Ｓ４０６では、サービス実行部２０４は、ユーザによる指示または予め設定された設定情報から、実行するサービスを決定する。本実施形態では、サービスリスト６０１から、チャットのサービスが選択される（Ｓ４０６）。なお、この処理は、ログイン（Ｓ４０２）時に実行されていてもよい。
【００４７】
サービス実行部２０４は、Ｓ４０６において選択されたサービス（チャット）が、他の情報処理装置のサービスリストに含まれているかの判断を行う（Ｓ４０７）。本実施形態では、図６の第２の情報処理装置１０２のサービスリスト６０２と第４の情報処理装置１０５のサービスリスト６０３に、選択されたサービス（チャット）が存在するか否かの判断を行う。そして、他の情報処理装置のサービスリストに、選択されたサービスが含まれない場合（Ｓ４０７でＮＯ）は、処理を終了する。
【００４８】
一方、他の情報処理装置のサービスリストに、選択されたサービスが含まれる場合（Ｓ４０７でＹＥＳ）、ログ取得部２０２は、利用可能な状態を示す第２の情報処理装置１０２から、選択されたサービスのメッセージログを取得する（Ｓ４０８）。ここで、利用可能な状態とは、情報処理サーバ１０４にログインした状態のこと、すなわち、サービスを実行できる状態のことを指す。利用可能な状態か否かは、Ｓ４０４で取得したプレゼンスが、他の情報処理装置が利用可能状態であることを示すか否かにより判定することができる。取得したプレゼンスが、他の情報処理装置が利用不可状態であることを示す場合、ログ取得部２０２は、当該他の情報処理装置が利用可能状態になるまで、待機してからメッセージのログを取得する。なお、他の情報処理装置が利用可能状態となったことは、所定時間ごとに第１の情報処理装置１０１がプレゼンスを確認することにより判定してもよいし、他の情報処理装置からのログ取得要求などを受信したことにより判定してもよい。
【００４９】
なお、メッセージログの取得には、第２の情報処理装置１０２へメッセージログ取得要求を送信する（Ｍ３０６）。このとき、上述のように、第１の情報処理装置１０１は、実行するサービスを特定し、その情報をメッセージログ取得要求へ含めて、そのメッセージログ取得要求を第２の情報処理装置１０２へ送信してもよい。また、第１の情報処理装置１０１は、実行するサービスを特定せず、実行可能なサービス及びアプリケーションの情報をサービスリスト６０１としてメッセージログ取得要求へ含めて、第２の情報処理装置１０２へ送信してもよい。この場合、第２の情報処理装置１０２は、これらのメッセージログ取得要求に応じて、第１の情報処理装置１０１へ送信するログを特定する。
【００５０】
続いて、サービス実行部２０４は、Ｓ４０８で取得したメッセージのログ情報をサービスに受け渡す（Ｓ４０９）。さらに、ログ保存部２０６は、取得したログを保存する。そして、サービス実行部２０４は、取得したメッセージログを利用して、第２の情報処理装置１０２からサービス（チャット）を引き継いで実行する（Ｓ４１０）。具体的には、例えば、第１の情報処理装置１０１は、サービス（チャット）において取得したログの一部を表示する。その後、ログ提供部２０７は、第２の情報処理装置１０２にサービス（チャット）の開始を通知する（Ｓ４１１）。必要であれば、ログ提供部２０７は、第２の情報処理装置１０２が必要なログを送信する。そして、サービス実行部２０４は、サービスの同期を開始する（Ｓ４１２）と共に、同期を開始したことをユーザに通知し、処理を終了する。
【００５１】
図８は、第２の情報処理装置１０２がサービスの実行を開始する際の動作を示すフローチャートである。この動作は、図３のＭ３０１〜Ｍ３０３における第２の情報処理装置１０２の処理に対応する。以下では、第２の情報処理装置１０２の動作として説明するが、第１の情報処理装置１０１などにおいてこれらの動作を実行してもよい。
【００５２】
まず、第２の情報処理装置１０２のサービス実行部２０４は、情報処理サーバ１０４にログインした後、サービス（チャット、画像共有）を開始する（Ｓ８０１）。そして、関係性判断部２０５は、情報処理サーバ１０４から現在ログインしているＪＩＤに関連するデバイスが存在するかを、例えば図６のサービスリストを用いて判断する（Ｓ８０２）。そして、関連するデバイスが存在しないと判断した場合（Ｓ８０２でＮＯ）、処理を終了する。
【００５３】
一方、関連するデバイスが存在すると判断した場合（Ｓ８０２でＹＥＳ）、サービスログ選択部２０３が、図６のサービスリストの比較から、ログが必要なサービスを選択する（Ｓ８０３）。ここでは、サービスログ選択部がサービスリスト６０２を、サービスリスト６０１およびサービスリスト６０３と比較し、チャット、画像共有、印刷のサービスのログを保存することを決定する。そして、ログ保存部２０６は、サービスログ選択部２０３の決定に従い、選択したサービス（チャット、画像共有、印刷）のログを保存する（Ｓ８０４）。
【００５４】
図９は、第２の情報処理装置１０２が第１の情報処理装置１０１からサービスに関するメッセージのログを要求された際の動作を示すフローチャートである。なお、この動作は、図３におけるＭ３０６〜Ｍ３０７に対応する。以下の説明においては、第１の情報処理装置１０１と第２の情報処理装置１０２との役割を反転させてもよい。
【００５５】
まず、第２の情報処理装置１０２の存在判断部２０１は、同一のＪＩＤ（第１の情報処理装置１０１）のプレゼンスを受信したかを判断する（Ｓ９０１）。例えば、図３のＭ３０２において、情報処理サーバ１０４に対して同一のユーザ識別情報に関連するデバイスがあるかを確認することにより、同一のＪＩＤを有するデバイスがいたかどうかを判定する。
【００５６】
存在判断部２０１が、同一のＪＩＤのプレゼンスを受信したと判断すると（Ｓ９０１でＹＥＳ）、サービス実行部２０４は、実行中のサービスがあるか否かの判断を行う（Ｓ９０２）。そして、サービス実行部２０４が、実行中のサービスがあると判断すると（Ｓ９０２でＹＥＳ）、サービスログ選択部は２０３、図６のサービスリストを用いて、関連するサービスがあるかの判断を行う（Ｓ９０３）。例えば、第２の情報処理装置１０２は、サービスリスト６０１とサービスリスト６０２を比較した結果、チャットと印刷のサービスが２つのリスト間で共通するため、関連するサービスがあると判断し、ログを送信することを決定する。サービスログ選択部２０３が、サービスのログを送信することを決定する（Ｓ９０３でＹＥＳ）と、第２の情報処理装置１０２は、処理をＳ９０４へ進める。
【００５７】
なお、同一のＪＩＤのプレゼンスを受信していない場合（Ｓ９０１でＮＯ）、実行中のサービスがない場合（Ｓ９０２でＮＯ）、又はサービスのログを送信しないと決定した場合（Ｓ９０３でＮＯ）は、いずれも処理を終了する。
【００５８】
ログ提供部２０７は、第１の情報処理装置１０１からサービスに関するメッセージのログの要求を受信する（Ｓ９０４）。そして、ログ提供部２０７は、第１の情報処理装置１０１にサービスに関するメッセージのログを送信する（Ｓ９０５）。ここで、Ｓ９０４で受信した要求には、サービスの種類、時間、サイズなど検索条件などが含まれていている場合、その条件に応じて特定したメッセージログのみを返信する。そして、サービス実行部２０４は、同一のユーザ識別情報を有するデバイス（第１の情報処理装置１０１）が存在することをサービスやアプリケーションに通知する（Ｓ９０６）。サービスやアプリケーションは、それに応じて、情報処理装置の存在、および、サービスのメッセージのログ同期が実行されたことを表示する。
【００５９】
以上のような処理により、１人のユーザが複数のデバイスを有する環境において、自動的にサービスのメッセージのログ同期を実行することができる。例えば、チャットなどの特定のアプリケーションを利用している最中に、第１の情報処理装置から第２の情報処理装置に利用するデバイスを変更する場合、第１の情報処理装置での通信内容を第２の情報処理装置で閲覧可能となる。この結果、ユーザは、１つの情報処理装置で実行していた特定のアプリケーションの続きを、別の情報処理装置において、過去に送受信したメッセージ内容を閲覧しながら行うことができる。したがって、ユーザは円滑なコミュニケーションを行うことが可能となり、ユーザビリティが向上する。さらに、ユーザ単位で各アプリケーションに対する過去の処理内容を把握できるため、ユーザ単位での一貫性のある処理を実現できる。
【００６０】
さらに、サービスリストを用いることによって、各デバイスが有するサービスのみのログを共有することが可能となり、デバイスの負荷を軽減できる。また、各デバイスは、ログインによって１人のユーザと関連付けられるため、例えば、友人宅のテレビを借りてチャットを行うなどの場合に、テレビでログインするだけで、サービス（チャット）に関するメッセージのログを取得することができる。これにより、ユーザは、複数のデバイスをシームレスに利用することが可能となる。
【００６１】
＜＜その他の実施形態＞＞
また、本発明は、以下の処理を実行することによっても実現される。即ち、上述した実施形態の機能を実現するソフトウェア（プログラム）を、ネットワーク又は各種記憶媒体を介してシステム或いは装置に供給し、そのシステム或いは装置のコンピュータ（またはＣＰＵやＭＰＵ等）がプログラムを読み出して実行する処理である。
【図１】
2014102754.tif 000003
【図２】
2014102754.tif 000004
【図３】
2014102754.tif 000005
【図４】
2014102754.tif 000006
【図５】
2014102754.tif 000007
【図６】
2014102754.tif 000008
【図７】
2014102754.tif 000009
【図８】
2014102754.tif 000010
【図９】
2014102754.tif 000011