(57)【要約】  コンピュータネットワーク内の複数のターゲット宛先にわたるデータ同期のための方法が、ターゲット宛先に関する情報を取得するステップを含み、このターゲット宛先は、コンピュータネットワーク内のネットワークアカウント、或いはコンピュータネットワークに結合された又はこれに関連するターゲット装置の少なくとも一方を含み、取得される情報は、ターゲット宛先に関連する識別情報を含む。この方法は、ユーザ装置において、データソースからのデータを受け取るステップと、この受け取ったデータに含まれる情報及び識別情報に基づいて、受け取ったデータをフィルタ処理するステップと、このフィルタ処理ステップに基づいて、フィルタ処理したデータを受け取るための選択されたターゲット宛先を識別するステップと、この識別され選択されたターゲット宛先に、フィルタ処理したデータを送信するステップと、を含むこともできる。【選択図】図５
2014501956.tif 000002
【特許請求の範囲】
【請求項１】
コンピュータネットワーク内の複数のターゲット宛先にわたるデータ同期のためのコンピュータ実施方法であって、
前記ターゲット宛先に関する情報を取得するステップを含み、
前記ターゲット宛先が、
前記コンピュータネットワーク内のネットワークアカウント、或いは
前記コンピュータネットワークに結合された又は前記ネットワークアカウントに関連するターゲット装置
の少なくとも一方を有し、
前記取得される情報が、前記ターゲット宛先に関連する識別情報を有し、
コンピュータ実施方法は、
ユーザ装置において、データソースからのデータを受け取るステップと、
前記受け取ったデータに含まれる情報及び前記識別情報に含まれる情報に基づいて、前記受け取ったデータをフィルタ処理するステップと、
前記フィルタ処理ステップに基づいて、前記フィルタ処理したデータを受け取るための選択されたターゲット宛先を識別するステップと、
前記識別され選択されたターゲット宛先に、前記フィルタ処理したデータを送信するステップと、
をさらに含むことを特徴とする方法。
【請求項２】
前記受け取ったデータをフィルタ処理するステップが、
前記受け取ったデータに含まれる前記情報を、前記ターゲット宛先に関連する前記識別情報と比較するステップを含み、
前記識別情報が、
地理的識別情報、
人の顔の画像、
人の声、又は
前記ターゲット宛先のいずれかを参照する情報
のうちの少なくとも１つを有し、
前記フィルタ処理するステップは、
前記受け取ったデータの前記情報が、前記ターゲット宛先のいずれかに関連する識別情報に一致するか否かを判定するステップと、
前記判定に基づいて、前記選択されたターゲット宛先を識別するステップと、
前記受け取ったデータを、前記識別され選択されたターゲット宛先に関連付けるステップと、
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項３】
前記受け取ったデータをフィルタ処理するステップが、
前記受け取ったデータに含まれる前記情報を手動更新するよう、ユーザ入力を受け取るステップと、
前記更新した情報、及び前記ターゲット宛先に関連する前記識別情報に基づいて、前記受け取ったデータをフィルタ処理するステップと、
を含むことを特徴とする請求項１に記載の方法。
【請求項４】
前記受け取ったデータをフィルタ処理するステップが、
前記受け取ったデータに含まれる前記情報を自動的に更新するステップと、
前記更新した情報、及び前記ターゲット宛先に関連する前記識別情報に基づいて、前記受け取ったデータをフィルタ処理するステップと、
を含むことを特徴とする請求項１に記載の方法。
【請求項５】
前記フィルタ処理したデータのアクセス許可メタデータを設定するとともに、基準を提供し、これにより、前記送信したデータへのアクセスが、前記基準を満たすユーザにしか提供されないようにするステップをさらに含む、
ことを特徴とする請求項１に記載の方法。
【請求項６】
前記フィルタ処理したデータのコンテンツアイテムを新たなフォーマットに変換することによって第１のコンテンツアイテムを作成すること、又は前記フィルタ処理したデータの前記コンテンツアイテムを第２のコンテンツアイテムとマージすることによって第１のコンテンツアイテムを作成することの一方を選択するよう、ユーザ入力を受け取るステップと、
前記ユーザ選択に従って前記第１のコンテンツアイテムを作成するステップと、
前記作成した第１のコンテンツアイテムを、前記識別され選択されたターゲット宛先に送信するステップと、
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項７】
前記識別され選択されたターゲット宛先の、表示画面サイズ、最大解像度、受け入れ可能なファイルサイズ、又は帯域幅限界のうちの少なくとも１つを有する特性情報を取得するステップと、
前記取得した特性情報に基づいて、前記フィルタ処理したデータを修正するステップと、
前記修正したデータを、前記識別され選択されたターゲット宛先に送信するステップと、
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項８】
前記ユーザ装置又は前記識別され選択されたターゲット宛先の状態情報を取得するステップと、
前記取得した状態情報に基づいて、限界閾値に達しているか否かを判定するステップと、
前記判定が、前記閾値に達してないことを示す場合、前記データ同期を実行するステップと、
をさらに含み、前記限界閾値が、接続帯域幅又は利用可能なリソースに関連する、
ことを特徴とする請求項１に記載の方法。
【請求項９】
前記識別され選択された宛先において、前記送信されたデータの表示を開始するステップをさらに含む、
ことを特徴とする請求項１に記載の方法。
【請求項１０】
前記ユーザ装置において、前記受け取ったデータの表現を表示するための第１のグラフィックユーザインターフェイスを提供するステップと、
前記データの前記表現のサブセットの選択を検出するステップと、
前記表現の前記選択されたサブセットにより表される選択したデータを選択されたターゲット宛先に送信するよう、命令をユーザから受け取るステップと、
前記命令を受け取った後、前記選択したデータに含まれる前記情報、及びターゲット宛先の少なくとも１つに関連する識別情報に基づいて、前記選択したデータをフィルタ処理するステップと、
前記フィルタ処理したデータを、前記選択されたターゲット宛先に送信するステップと、
をさらに含むことを特徴とする請求項１に記載の方法。
【請求項１１】
前記第１のグラフィックユーザインターフェイス内に表示される、前記選択されたターゲット宛先を表すターゲットグラフィックオブジェクトの選択を前記ユーザから受け取るステップと、
前記フィルタ処理したデータを、前記選択されたターゲットグラフィックオブジェクトによって表される前記選択されたターゲット宛先に送信するステップと、
をさらに含むことを特徴とする請求項１０に記載の方法。
【請求項１２】
前記選択したデータを前記選択されたターゲット宛先に送信するよう、命令を前記ユーザから受け取るステップが、前記データの前記表現の前記選択されたサブセットが、前記選択されたターゲット宛先にリンクするターゲットグラフィックオブジェクト上にドラッグアンドドロップされたことを検出するステップを含む、
ことを特徴とする請求項１０に記載の方法。
【請求項１３】
前記ターゲットグラフィックオブジェクトが、前記ユーザと前記選択されたターゲット宛先との間の通信を容易にする第２のグラフィックユーザインターフェイス内に存在する、
ことを特徴とする請求項１２に記載の方法。
【請求項１４】
前記選択したデータを前記選択されたターゲット宛先に送信するよう命令を前記ユーザから受け取るステップが、前記選択したデータを前記選択されたターゲット宛先に送信するように命令するグラフィックアクションオブジェクトを前記ユーザが押したことを検出するステップを含む、
ことを特徴とする請求項１０に記載の方法。
【請求項１５】
前記第１のグラフィックユーザインターフェイス内にリスト化された前記受け取ったデータを編集するようユーザ入力を受け取るステップをさらに含む、
ことを特徴とする請求項１０に記載の方法。
【請求項１６】
コンピュータネットワーク内の複数のターゲット宛先にわたるデータ同期のための装置であって、
前記ターゲット宛先に関する情報を取得する同期マネージャを備え、
前記ターゲット宛先が、
前記コンピュータネットワーク内のネットワークアカウント、或いは
前記コンピュータネットワークに結合された又は前記ネットワークアカウントに関連するターゲット装置
の少なくとも一方を有し、
前記取得される情報が、前記ターゲット宛先に関連する識別情報を有し、
データ同期のための装置は、
前記受け取ったデータに含まれる情報が、選択されたターゲット宛先に関連する識別情報に一致するか否かを判定するデータ分析器と、
前記判定に基づいて、前記受け取ったデータをフィルタ処理するデータフィルタと、
前記フィルタ処理したデータを、前記選択されたターゲット宛先に送信するデータ送信機と、
をさらに備えることを特徴とする装置。
【請求項１７】
前記同期マネージャが、
前記装置又は前記選択されたターゲット宛先の状態情報を取得し、
前記取得した状態情報に基づいて、接続帯域幅又は利用可能なリソースに関する限界閾値に達しているかどうかを判定し、
前記判定に基づいて、前記フィルタ処理したデータを送信するように前記データ送信機に命令する、
ことを特徴とする請求項１６に記載の装置。
【請求項１８】
前記選択されたターゲット宛先の、表示画面サイズ、最大解像度、受け入れ可能なファイルサイズ、又は帯域幅限界のうちの少なくとも１つを含む特性情報を取得し、
前記取得した特性情報に基づいて、前記フィルタ処理したデータを修正し、
前記修正したデータを、前記選択されたターゲット宛先に送信するように前記データ送信機に命令する、
ためのデータオプティマイザをさらに備える、
ことを特徴とする請求項１６に記載の装置。
【請求項１９】
データを受け取るユーザ装置と、
前記ユーザ装置に結合された自動同期エンジンと、
を備え、前記自動同期エンジンが、
ターゲット宛先に関する情報を取得し、
前記ターゲット宛先が、
前記コンピュータネットワーク内のネットワークアカウント、或いは
前記コンピュータネットワークに結合された又は前記ネットワークアカウントに関連するターゲット装置
の少なくとも一方を含み、
前記取得される情報が、前記ターゲット宛先に関連する識別情報を含み、
前記自動同期エンジンがさらに、
前記受け取ったデータに含まれる情報及び前記識別情報に含まれる情報に基づいて、前記受け取ったデータをフィルタ処理し、
前記フィルタ処理に基づいて、前記フィルタ処理したデータを受け取るための選択されたターゲット宛先を識別し、
前記識別され選択されたターゲット宛先に、前記フィルタ処理したデータを送信する、
ことを特徴とするシステム。
【請求項２０】
実行時にコンピュータネットワーク内の複数のターゲット宛先にわたるデータ同期のための方法をコンピュータに実行させる命令を記憶する非一時的コンピュータ可読媒体であって、前記方法が、
前記ターゲット宛先に関する情報を取得するステップを含み、
前記ターゲット宛先が、
前記コンピュータネットワーク内のネットワークアカウント、或いは
前記コンピュータネットワークに結合された又は前記ネットワークアカウントに関連するターゲット装置
の少なくとも一方を有し、
前記取得される情報が、前記ターゲット宛先に関連する識別情報を有し、
方法は、
データソースからのデータを受け取るステップと、
前記受け取ったデータに含まれる情報及び前記識別情報に含まれ            る情報に基づいて、前記受け取ったデータをフィルタ処理するステップと、
前記フィルタ処理ステップに基づいて、前記フィルタ処理したデータを受け取るための選択されたターゲット宛先を識別するステップと、
前記識別され選択されたターゲット宛先に、前記フィルタ処理したデータを送信するステップと、
をさらに含むことを特徴とする非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本開示は、例えばクラウドコンピューティング環境などの分散データネットワーク環境において、ある装置からのデータを複数の場所に同期させるための方法及びシステムに関する。
【背景技術】
【０００２】
例えば、クラウドコンピューティング環境などの分散コンピューティング環境では、分散した複数の場所にデータが記憶される。現在のところ、データをローカル装置から「クラウド」内の複数の場所に、又は全体的に他の装置に同期させる簡単な方法は存在していない。
【発明の概要】
【課題を解決するための手段】
【０００３】
本開示は、コンピュータネットワーク内の複数のターゲット宛先にわたるデータ同期のための例示的な方法を含む。この方法の実施形態は、ターゲット宛先に関する情報を取得するステップを含み、このターゲット宛先は、コンピュータネットワーク内のネットワークアカウント、或いはコンピュータネットワークに結合された又はこれに関連するターゲット装置の少なくとも一方を含み、取得される情報は、ターゲット宛先に関連する識別情報を含む。この方法の実施形態は、ユーザ装置において、データソースからのデータを受け取るステップと、この受け取ったデータに含まれる情報及び識別情報に基づいて、受け取ったデータをフィルタ処理するステップと、このフィルタ処理ステップに基づいて、フィルタ処理したデータを受け取るための選択されたターゲット宛先を識別するステップと、この識別され選択されたターゲット宛先に、フィルタ処理したデータを送信するステップと、を含むこともできる。
【０００４】
本開示による例示的なシステムは、データを受け取るためのユーザ装置と、このユーザ装置に結合された自動同期エンジンと、を備える。この自動同期エンジンは、ターゲット宛先に関する情報を取得し、このターゲット宛先は、コンピュータネットワーク内のネットワークアカウント、或いはコンピュータネットワークに結合された又はこれに関連するターゲット装置の少なくとも一方を含み、取得される情報は、ターゲット宛先に関連する識別情報を含む。いくつかの実施形態では、この自動同期エンジンがまた、受け取ったデータに含まれる情報及び識別情報に基づいて、受け取ったデータをフィルタ処理し、このフィルタ処理に基づいて、フィルタ処理したデータを受け取るための選択されたターゲット宛先を識別し、この識別され選択されたターゲット宛先に、フィルタ処理したデータを送信する。
【０００５】
上述の概要説明及び以下の詳細な説明は、いずれも特許請求の範囲に記載する本発明を例示して解説するものにすぎず、本発明を限定するものではないと理解されたい。
【図面の簡単な説明】
【０００６】
【図１】本発明による例示的なシステムのブロック図である。
【図２】データ同期のための例示的な実施形態を示すフロー図である。
【図３】配布リストを作成するための例示的な実施形態を示すフロー図である。
【図４】グラフィックユーザインターフェイスを使用したデータ同期のための例示的な実施形態を示すフロー図である。
【図５】データ同期のための例示的なグラフィックユーザインターフェイスを示す図である。
【図６】パイプ意識型データ同期のための例示的な実施形態を示すフロー図である。
【図７】装置意識型データ同期のための例示的な実施形態を示すフロー図である。
【図８】図１の例示的なシステム１００における自動同期エンジン１０６の１つの例示的な実施形態を示すブロック図である。
【発明を実施するための形態】
【０００７】
以下、添付図面に示す例示的な実施形態を詳細に参照する。可能な限り、同じ又は同様の部分の参照については、図面全体を通じて同じ参照数字を使用する。
【０００８】
本明細書に開示する方法及びシステムは、上述のニーズに対処するものである。例えば、例示的な実施形態を使用して宛先を自動的に識別し、ローカル装置からのデータを１又はそれ以上のコンピュータネットワーク内の識別した複数の宛先に同期させることができる。
【０００９】
図１に、本発明による例示的なシステム１００のブロック図を示す。図１に示すように、例示的なシステム１００は、データソース１０２、ユーザ装置１０４、自動同期エンジン１０６、１又はそれ以上のネットワークアカウント１１０〜１１２、及び互いに動作可能に接続されて、（ネットワーク１０８などの）１又はそれ以上のネットワーク又は１つの構成要素から別の構成要素へのデータ送信を可能にするあらゆる種類の通信リンクを介した１又はそれ以上のターゲット装置１１４〜１１６を含むことができる。ネットワークは、ローカルエリアネットワーク（ＬＡＮ）及び／又は広域ネットワーク（ＷＡＮ）を含むことができ、無線、有線、又はこれらの組み合わせとすることができる。
【００１０】
データソース１０２は、オーディオ及び／又はビジュアルコンテンツ、テキストコンテンツ、これらの組み合わせを含むメディアデータ、又はその他のあらゆる種類のデータなどのデータを記憶できるいずれの種類の記憶媒体であってもよい。例えば、データソース１０２を、ビデオＣＤ、ＤＶＤ、Ｂｌｕ−ｒａｙディスク、ハードディスク、磁気テープ、フラッシュメモリカード／ドライブ、揮発性又は不揮発性メモリ、ホログラフィックデータ記憶装置、及びその他のあらゆる種類の記憶媒体として提供することができる。また、データソース１０２を、ユーザ装置１０４にデータを提供できるデータ取り込み装置又はコンピュータとすることもできる。例えば、データソース１０２は、画像データを取り込み、この取り込んだ画像データをユーザ装置１０４に提供するカメラであってもよい。
【００１１】
別の例として、データソース１０２を、ウェブサーバ、企業サーバ、又はその他のあらゆる種類のコンピュータサーバとすることもできる。データソース１０２は、ユーザ装置１０４からの（ＨＴＴＰ、又はデータ送信を開始できるその他のプロトコルなどの）要求を受け入れ、要求されたデータをユーザ装置１０４に提供するようにプログラムされたコンピュータとすることもできる。また、データソース１０２を、無料放送施設、ケーブル放送施設、衛星放送施設、及びデータを配信するためのその他の放送施設などの放送施設とすることもできる。
【００１２】
ユーザ装置１０４は、例えば、コンピュータ、携帯情報端末（ＰＤＡ）、携帯電話機又はスマートフォン、ラップトップコンピュータ、デスクトップコンピュータ、メディアコンテンツプレーヤ、セットトップボックス、放送チューナを含むテレビ、ビデオゲームコントローラ、或いはデータネットワークへのアクセス及び／又はデータの提供が可能ないずれの電子装置であってもよい。ユーザ装置１０４は、ユーザ装置１０４がネットワーク又はローカル記憶媒体と通信してここからデータを受け取れるようにするソフトウェアアプリケーションを含むことができる。上述したように、ユーザ装置１０４は、上述した例を含むデータソース１０２からデータを受け取ることができる。
【００１３】
自動同期エンジン１０６は、プロセッサ内で実行されるソフトウェアプログラムとして、及び／又はデータ同期を実行するハードウェアとして実装することができる。自動同期エンジン１０６は、ユーザ装置１０４からのデータを１又はそれ以上の宛先に同期させることができる。これらの宛先は、例えば、１又はそれ以上のコンピュータネットワーク内の１又はそれ以上のネットワークアカウント（ネットワークアカウント１１０、１１２など）、１又はそれ以上のターゲット装置（ターゲット装置１１４、１１６など）、或いはユーザ装置がアクセスできるその他の場所又は装置を含むことができる。データ同期については、以下でさらに説明する。
【００１４】
ネットワーク１０８は、１又はそれ以上のコンピュータネットワークとすることができ、１又はそれ以上のネットワークアカウント１１０、１１２、及び／又は１又はそれ以上のターゲット装置１１４、１１６を含むこと、又はこれらに接続することができる。図１には、２つのネットワークアカウント１１０、１１２、及び２つのターゲット装置１１４、１１６しか示していないが、これらの各々よりも多くのものを使用できると理解されたい。ネットワークアカウント１１０、１１２は、例えば、ネットワーク１０８に関連するユーザアカウントであってもよく、又はネットワーク１０８内のネットワーク位置又は記憶空間を参照する識別子であってもよい。いくつかの実施形態では、１又はそれ以上のネットワークアカウントを、ネットワーク１０８内の１又はそれ以上の記憶空間に関連付けることができる。
【００１５】
ターゲット装置１１４、１１６は、例えば、コンピュータ、携帯情報端末（ＰＤＡ）、携帯電話機又はスマートフォン、ラップトップコンピュータ、デスクトップコンピュータ、メディアコンテンツプレーヤ、セットトップボックス、放送チューナを含むテレビ、ビデオゲームコントローラ、或いはデータネットワークへのアクセス及び／又はデータの受け取りが可能ないずれの電子装置であってもよい。いくつかの実施形態では、ターゲット装置１１４、１１６を、例えば、テレビ、モニタ、プロジェクタ、デジタルフォトフレーム、ディスプレイパネル、及びその他のあらゆるディスプレイ装置などのディスプレイ装置とすることができる。いくつかの実施形態では、ネットワークアカウント１１０、１１２の一部をターゲット装置１１４、１１６の一部に関連付け、又はこれらに付随させることができる。例えば、ターゲット装置１１４は、ネットワークアカウント１１２に関連付けられ、又はこれに付随する。いくつかの実施形態では、ネットワークアカウント１１０、１１２、及びターゲット装置１１４、１１６が、データの同期を要求し、及び／又はユーザ装置１０４及び／又は自動同期エンジン１０６からデータを受け取ることができる。
【００１６】
いくつかの実施形態では、ネットワーク１０８が、例えば、ＦＬＩＣＫＲ（登録商標）、ＦＡＣＥＢＯＯＫ、ＭＹＳＰＡＣＥ、ＴＷＩＴＴＥＲ、ＬＩＮＫＥＤＩＮ（登録商標）などの１又はそれ以上のインターネットソーシャルネットワークを含むことができ、ネットワークアカウント１１０、１１２を、これらの１又はそれ以上のインターネットソーシャルネットワークのアカウントとすることができる。これらの１又はそれ以上のインターネットソーシャルネットワークを通じて、ユーザ装置１０４のユーザをネットワークアカウント１１０、１１２に関連付けることができる。例えば、１又はそれ以上のネットワークアカウント１１０、１１２を、１又はそれ以上のインターネットソーシャルネットワーク内のユーザの連絡先とすることができる。
【００１７】
図１では、データソース１０２、ユーザ装置１０４及び自動同期エンジン１０６を動作可能に接続された別個の構成要素として示しているが、これらの一部又は全部を１つの装置内に配置することもできる。例えば、データソース１０２は、ユーザ装置１０４内に位置すること、又はその一部を形成することができ、自動同期エンジン１０６は、データソース１０２又はユーザ装置１０４内に位置すること、又はその一部を形成することができる。図１に示す構成は例示のためのものにすぎないと理解されたい。いくつかの構成要素又は装置を取り除くこと、又は組み合わせることもでき、他の構成要素又は装置を追加することもできる。
【００１８】
図２は、データ同期のための例示的な方法を示すフロー図である。図２に示すように、ユーザ装置からのデータを１又はそれ以上の宛先に同期させる前に、複数の宛先を含む配布リストを作成することができる（ステップ２０２）。例えば、図３は、配布リストを作成するための例示的な方法を示すフロー図である。図３に示すように、自動同期エンジンは、例えば、１又はそれ以上のインターネットソーシャルネットワークなどの１又はそれ以上のコンピュータネットワークと通信することができる（ステップ３０２）。ログイン識別符号及びパスワードなどの認証情報を提供して、通信を容易にすることができる。ネットワークとの通信が確立されると、自動同期エンジンは、ユーザが参加しているインターネットソーシャルネットワーク内の連絡先情報、ターゲット装置情報、及び／又はユーザ装置がネットワークからアクセス可能なその他の場所に関する情報などの同期先情報をダウンロードすることができる（ステップ３０４）。その後、各ネットワークからダウンロードした情報を集約及び／又は分析することができる（ステップ３０６）。
【００１９】
この集約した情報に基づいて、配布リストを作成することができる（ステップ３０８）。配布リストは、例えば、ネットワークアカウント（インターネットソーシャルネットワークの連絡先など）、ターゲット装置、又はユーザ装置がアクセス可能なその他の場所などを含むことができる。いくつかの実施形態では、配布リストが、友人としてマークした連絡先及び／又はターゲット装置で構成された友人リスト、或いは家族としてマークした連絡先及び／又はターゲット装置で構成された家族リストなどの１又はそれ以上のサブリストを含むことができる。いくつかの実施形態では、ダウンロードした同期先情報を使用して、既存の配布リストを更新することができる。
【００２０】
いくつかの実施形態では、配布リスト上の宛先が、これらの宛先に関連する、或いはこれらの宛先を参照又は識別する識別情報を有することができる。この識別情報は、例えば、名前（Ｂｏｂ、Ｂｏｂの携帯電話など）、分類情報（友人、同級生、又は家族など）、地理的情報、人の顔の画像、人の声、又は宛先を識別するその他の情報などのうちの１つ又はそれ以上を含むことができる。いくつかの実施形態では、自動同期エンジンが、ユーザ又は配布リストのメンバーが制御するデータを使用して識別情報を構成することができる。例えば、自動同期エンジンは、ユーザ又はその連絡先のインターネットソーシャルネットワークの場所に掲載されたコンテンツアイテムをダウンロードして分析し、このコンテンツアイテムを宛先のいずれかに関連付けるために使用できる情報を取り出すことができる。この取り出した情報に基づいて、関連する宛先の識別情報を更新することにより、ユーザ装置からのデータが正しい宛先と同期する可能性又は確率を高めることができる。
【００２１】
再び図２を参照すると、ステップ２０４において、データソースからのデータを受け取る（ステップ２０４）。自動同期エンジンは、この受け取ったデータに含まれる情報を上述した識別情報と比較することができる。この比較に基づいて、自動同期エンジンは、受け取ったデータに含まれる情報が、１又はそれ以上の宛先に関連する、或いはこれらを参照又は識別するいずれかの識別情報を含むかどうか、又はこのような識別情報に一致するかどうかを判定することができる（ステップ２０６）。照合される情報は、例えば、メタデータ（ジオタギング、ソーシャルネットワーキングタギング又はその他のデータのタギングなどのタギング情報など）、受け取ったデータの一部（顔認識用の画像、又は音声認識用の声など）、コンテンツアイテム名などの形をとることができる。一致する情報が見つからない場合、処理はステップ２１２へ進んでさらなるデータをチェックする。
【００２２】
一致する情報が見つかった場合、自動同期エンジンは、この一致する情報及び／又は識別情報に基づいて、受け取ったデータをフィルタ処理する（ステップ２０８）。いくつかの実施形態では、ステップ２０６をフィルタ処理の一部とすることができ、或いは１又はそれ以上の宛先を識別するための追加ステップを含めることができる。いくつかの実施形態では、このフィルタ処理が、例えば、受け取ったデータを配布リスト内の１又はそれ以上の宛先に関連付けるステップを含むこともでき、及び／又は受け取ったデータを配布リスト内の１又はそれ以上の宛先へ送信すべきデータとして分類することもできる。
【００２３】
いくつかの実施形態では、この関連付け又は分類に基づいて、フィルタ処理したデータを、特定の人々又は集団に特定の許可を与えるアクセス許可メタデータを含むように構成することができる。例えば、同期すべきデータをインターネットソーシャルネットワークの家族連絡先に関連付ける場合、フィルタ処理したデータを、宛先ネットワークの規約に従う許可メタデータを含むように構成することができる。その後、このフィルタ処理したデータを公衆ネットワークの位置に掲載することができるが、このデータには、許可に従ってしかアクセスすることができない。
【００２４】
いくつかの実施形態では、フィルタ処理中に、受け取ったデータに含まれる情報を更新することができ、この更新された情報に基づいて、受け取ったデータにフィルタ処理を行うことができる。例えば、受け取ったデータが、特定の宛先にリンクされる情報を含む場合、この受け取ったデータに追加のメタデータ又はタギング情報を追加することができ、例えば、インターネットソーシャルネットワークの連絡先「Ｂｏｂ  Ｓｍｉｔｈ」に顔画像がリンクされている場合、「Ｂｏｂ  Ｓｍｉｔｈ用」というデータタグを追加することができる。
【００２５】
また、受け取ったデータに地理メタデータ又はタギング情報を追加することもでき、或いは全地球測位システム（「ＧＰＳ」）の能力を有するユーザ装置からの同期時にこれらを更新することもできる。例えば、ＧＰＳの能力を有する画像取り込み装置からメディアコンテンツ（画像又はビデオなど）を受け取る時に、この画像取り込み装置が、メディアコンテンツを取り込んだ場所の情報を取り込んでいた場合には、受け取ったメディアコンテンツに、ＧＰＳ又は「サンディエゴ動物園、カリフォルニア州サンディエゴ」という文字列を含むデータタグなどの地理データタグを添付し、又は含めることができる。
【００２６】
さらに、自動同期エンジンは、ユーザがデータタギングを更新し、コンテンツアイテム名を変更し、又は受け取ったデータのメタデータ又はタグに追加情報を含めることができるようにするユーザインターフェイスを提供することもできる。例えば、ユーザにグラフィックユーザインターフェイスを提供して、上記の例のデータタグを、「シマウマ、２０１０年９月１５日、カリフォルニア州サンディエゴ、サンディエゴ動物園にて、撮影：Ｂｏｂ  Ｓｍｉｔｈ」などの追加情報を含むように更新することができる。従って、自動同期エンジンは、受け取ったデータに含まれる更新された情報に基づいて、インターネットソーシャルネットワークの、「Ｂｏｂ  Ｓｍｉｔｈ」という名前の、カリフォルニア州サンディエゴに居住し、ユーザとともにサンディエゴ動物園を訪れ、シマウマ又はその他の同様の動物を好むといった連絡先に受け取ったデータを関連付けることにより、受け取ったデータを自動的にフィルタ処理することができる。自動同期エンジンは、受け取ったデータを連絡先の１又はそれ以上の関連するターゲット装置に関連付けることもできる。
【００２７】
いくつかの実施形態では、フィルタ処理中に、受け取ったデータを新しいコンテンツアイテムに変換し、又は他のコンテンツアイテムとマージした後でターゲット宛先に送信することができる。例えば、自動同期エンジンは、データ又はコンテンツアイテムを動画にマージするか、それともフォトコラージュにマージするかを選択又は決定するようにユーザを促すインターフェイスを提供することができる。ユーザの選択に応じて、動画又はフォトコラージュを自動的に作成することができる。その後、自動同期エンジンは、このマージしたコンテンツアイテムをターゲット宛先に送信するように準備することができる。
【００２８】
再び図２を参照すると、ステップ２１０において、自動同期エンジンが、フィルタ処理したデータをターゲット宛先に送信する。次に、処理はステップ２１２へ進んで、フィルタ処理すべきデータがさらに存在するかどうかをチェックする。存在しない場合、処理は終了する。フィルタ処理すべきデータがさらに存在する場合、処理はステップ２０４へ進んでさらなるデータを受け取る。
【００２９】
いくつかの実施形態では、データ同期処理により、送信されたデータを自動的にターゲット装置上に読み込んで表示させることができる。例えば、ユーザは、メディアコンテンツ（写真又はビデオなど）を記憶場所にアップロードした後で、友人又は家族にこれを手動でダウンロードさせなくてもよい。代わりに、例えばユーザ装置から、その国のはるかに離れた所にあるターゲット装置（デジタルフォトフレームなど）に写真を直接送信するなどのように、メディアコンテンツを装置から装置に直接送信することができ、従ってメディアコンテンツをターゲット装置上に自動的に読み込んで表示することができる。これは、例えば、データソースからのデータをダウンロードし、このデータを自動的にフィルタ処理し、このフィルタ処理したデータをクラウド又は国中のターゲット装置にアップロードできる自動スタートライブ同期機能を有効にすることによって行うことができる。
【００３０】
図４は、グラフィックユーザインターフェイス（「ＧＵＩ」）を使用したデータ同期のための例示的な方法を示すフロー図である。図４に示すように、ステップ４０２において、ユーザ装置に対してローカルな及び／又はユーザ装置から離れた複数の場所に記憶されたデータ表現を表示する第１のＧＵＩをユーザ装置に提供することができる。この表現は、グラフィックオブジェクト、文字列、又はこれらの組み合わせとすることができる。例えば、図５に、データ同期のための例示的なＧＵＩ５００を示す。
【００３１】
ユーザは、このＧＵＩを使用して、データの管理及び共有を行うことができる。例えば、ユーザは、図５に示すＧＵＩ５００などのペイン型ビューアを使用して、複数の同期アカウント及びクラウドストレージ、サイト、又は装置を管理することができる。ＧＵＩ５００は、ローカルシステムからのローカルコンテンツ５０２を表すアイコン５０２ａ〜ｄ、インターネットソーシャルネットワークの連絡先と共有するためのギャラリー共有コンテンツ５０４のアイテム５０４ａ〜ｄ、複数のインターネットソーシャルネットワークの場所５０８からのインターネットソーシャルネットワークコンテンツ５０６のアイテム５０６ａ〜ｄを示す。ＧＵＩ５００は、インターネットソーシャルネットワークの連絡先リスト５１０、ターゲット装置のリスト５１２、及びアクションボタン５１４〜５２４も示す。
【００３２】
いくつかの実施形態では、自動同期エンジンが、ユーザ及び／又はその連絡先のインターネットソーシャルネットワーク、付随する装置、又はあらゆるネットワークの場所に掲載又は記憶されたコンテンツをダウンロードすることができる。このダウンロードしたコンテンツを集約し、分類して、ＧＵＩ５００上に示されるようにリスト化することができる。いくつかの実施形態では、自動同期エンジンが、コンテンツアイテムをダウンロードせずにこれらへのリンクを提供することにより、コンテンツの管理及び共有を行うことができる。ユーザは、コンテンツを編集することができる。例えば、ユーザは、ある場所／装置から別の場所／装置にコンテンツアイテムをコピー又は移動し、コンテンツアイテムを削除し、コンテンツアイテム名を変更し、コンテンツアイテムのメタデータ又はタグを編集することなどができる。いくつかの実施形態では、例えば、ユーザが、図５に示すようなアクションボタン５１４をクリックして、１つの場所／装置からの選択したコンテンツ又は全てのコンテンツを、他の全ての場所／装置に同期させることができる。
【００３３】
再び図４を参照すると、自動同期エンジンは、ユーザが、いくつかのデータ表現を選択したことを検出し（ステップ４０４）、この選択したデータを同期させるための命令をユーザから受け取ることができる（ステップ４０６）。ユーザは、例えばドラッグアンドドロップ動作を行うこと、アクションボタンをクリックすることなどのいずれかの動作コマンドによるデータ同期により、この命令を与えることができる。上述したように、自動同期エンジンは、命令を受け取ると、選択されたデータをフィルタ処理し（ステップ４０８）、その後このフィルタ処理したデータを１又はそれ以上のターゲット宛先に送信する（ステップ４１０）。
【００３４】
いくつかの実施形態では、ユーザが、例えば図５に示すＧＵＩ５００などのＧＵＩを使用することにより、リスト化された１又はそれ以上のコンテンツアイテムを選択することができる。次に、ユーザは、インターネットソーシャルネットワークの連絡先を表すターゲットグラフィックオブジェクト、又はＧＵＩ上にリスト化されたターゲット装置上に選択したコンテンツアイテムをドラッグアンドドロップすることにより、選択したコンテンツアイテムを送信することができる。例えば、「ＴＶでＦａｃｅｂｏｏｋ」機能を有効にして、１又はそれ以上のソーシャルネットワークのコンテンツアイテムから、フォトコラージュ、スクリーンセーバ又は動画などのメディアコンテンツを作成し、ドラッグアンドドロップしたコンテンツアイテムをテレビなどのターゲット装置に自動的に送信又は投影して表示することができる。
【００３５】
いくつかの実施形態では、例えば、ユーザが、インスタントメッセージインターフェイスを使用して、ユーザの連絡先の１つとチャットすることができる。このインスタントメッセージインターフェイス（図５には図示せず）は、図５に示すＧＵＩ５００などのデータ同期ＧＵＩ内に存在することも、又は別個のＧＵＩとすることもできる。例えば、連絡先を選択してチャットボタン５２４をクリックすることにより、チャットウィンドウを開くことができる。ユーザは、チャット中に、自身のデータを現在の連絡先と共有しようと決定することができる。ユーザは、１又はそれ以上のリスト化されたコンテンツアイテムを選択し、この選択したコンテンツアイテムをインスタントメッセージインターフェイス上にドラッグアンドドロップすることができる。
【００３６】
いくつかの実施形態では、ユーザが、例えば図５に示すＧＵＩ５００などのＧＵＩを使用することによって１又はそれ以上のリスト化されたコンテンツアイテムを選択し、アクションボタン５１６クリックして、選択したコンテンツアイテムを、友人、すなわち友人としてマークした連絡先及び／又は関連するターゲット装置に送信することができる。また、ユーザは、アクションボタン５１８をクリックして、選択したコンテンツアイテムを、家族、すなわち家族としてマークした連絡先及び／又は関連するターゲット装置に送信することもできる。また、ユーザは、アクションボタン５２０をクリックして、選択したコンテンツアイテムを全ての連絡先及び／又は関連するターゲット装置に送信することもできる。さらに、ユーザは、インターネットソーシャルネットワークの連絡先又はＧＵＩ上にリスト化されたターゲット装置を表す１又はそれ以上のターゲットグラフィックオブジェクトを選択し、その後にアクションボタン５２２をクリックして、選択したコンテンツアイテムを選択した連絡先及び／又はターゲット装置に送信することもできる。いくつかの実施形態では、個々のコンテンツアイテムが選択されない場合、リスト化されたコンテンツアイテムの全てが同期又は送信のために選択されたものと見なすことができる。
【００３７】
自動同期エンジンは、ユーザのドラッグアンドドロップ動作又はクリック送信ボタン動作を検出した後に、上述したデータフィルタ処理を実行し、このフィルタ処理したデータを、目的とする（単複の）ソーシャルネットワークの連絡先及び／又は（単複の）ターゲット装置などの（単複の）目的とする宛先に送信することができる。
【００３８】
いくつかの実施形態では、自動同期エンジンが、宛先の記憶空間を管理し、ユーザに通知又は警告を与えて、動作を選択又は確認するようにユーザを促すことができる。例えば、ユーザは、図５に示すＧＵＩ５００などのＧＵＩを使用して、上述した方法を使用して、あらゆるネットワークの場所、付随する装置又はソーシャルネットワーキングサイトから、ターゲット宛先にメディアコンテンツ（ビデオ、写真、スライドショー、又は音楽クリップなど）を送信することができる。いくつかの実施形態では、自動同期エンジンが、コンテンツを送信する際に、このコンテンツを永続的コンテンツとして記憶するか、それとも一時的コンテンツとして記憶するかを選択するようにユーザを促すことができる。永続的コンテンツは、期限切れすることがなく上書きできないのに対し、一時的コンテンツは、或る期間後に期限切れし、期限切れ後に上書きすることができる。また、自動同期エンジンは、ターゲット宛先に記憶されたコンテンツの中に期限切れ寸前のもの又は上書きされる寸前のものがあることを検出した場合、ユーザに警告して上書きを確認するようにユーザを促すこともできる。
【００３９】
また、いくつかの実施形態では、自動同期エンジンが、ターゲット宛先の利用可能な記憶空間が（残り空間が１５％などの）閾値未満であることを検出した場合、ユーザ（又は宛先を管理する連絡先）に一部の記憶空間を解放するように警告することもできる。さらに、いくつかの実施形態では、自動同期エンジンが、コンテンツを送信する際に、ターゲット宛先の特定の場所（特定のフォルダ、或いはお気に入りのテレビ番組又は次回の映画などの特定のカテゴリなど）にコンテンツを記憶することを選択するようにユーザを促すことができる。
【００４０】
図５に示す機能及びグラフィック要素は、例示のためのものにすぎないと理解されたい。いくつかの機能又はグラフィック要素を取り除くこと、組み合わせること、又は配置し直すこともでき、他の機能又はグラフィック要素を追加することもできる。
【００４１】
図６は、「パイプ意識型」データ同期、すなわち、ブロードバンド接続、無線接続、ダイアルアップ接続などの通信チャネルすなわち「パイプ」の容量に依存して処理が変化するデータ同期のための例示的な実施形態を示すフロー図である。いくつかの実施形態では、自動同期エンジンが、接続及び／又はユーザ装置の状態などの、データ同期の実行及びデータの送信に使用する通信パイプの状態を判断し、この結果、データ同期を継続するか、それとも終了するかを決定することができる。例えば、いくつかの実施形態では、自動同期エンジンが、ユーザ装置からのデータ送信が低速接続、或いは帯域幅利用限界又はコスト限界に達した接続で行われていることを検出し、この結果、より高速な又はより安い接続を待つことができる。いくつかの実施形態では、自動同期エンジンが、ユーザ装置上の利用可能なリソースではデータ同期を完了できないことを検出することもできる。この結果、自動同期エンジンは、十分なリソースが利用可能になるのを待つ。
【００４２】
図６に示すように、自動同期エンジンは、コンピュータネットワークを介してユーザ装置からのデータをターゲット宛先に同期させることを開始した後（ステップ６０２）、コンピュータネットワークへの接続がアクティブであるかどうかをチェックすることができる（ステップ６０４）。アクティブな接続が確立されてない場合、自動同期エンジンは、データ同期処理を一時停止又は中止することができる（ステップ６０６）。アクティブな接続が確立されている場合、自動同期エンジンは、このアクティブな接続が高速接続であるか、それとも低速接続であるか、或いは帯域幅利用限界又はコスト限界を伴う接続であるか、それとも伴わない接続であるかをチェックすることができる（ステップ６０８）。この接続が低速接続である場合、或いは帯域幅利用限界又はコスト限界を伴う接続（月間のデータアップロードが１００メガバイトという利用限界を伴う無線接続など）である場合、自動同期エンジンは、月間帯域幅利用閾値又はコスト閾値に達しているかどうかをさらにチェックすることができる（ステップ６１０）。閾値に達している場合、この接続を介したあらゆるデータ送信をコストが高すぎるとして禁止することができる。この場合、自動同期エンジンは、高速接続又は限界のない接続（有線接続など）が利用可能になるまでデータ同期処理を一時停止又は中止することができる（ステップ６１２）。
【００４３】
高速接続（有線接続など）或いは帯域幅利用限界又はコスト限界のない接続が確立された場合、自動同期エンジンは、ユーザ装置がデータ同期を完了させるために利用可能なリソース（バッテリ寿命など）が十分であるかどうかを判定することができる（ステップ６１４）。十分でない場合、自動同期エンジンは、十分なリソースが利用可能になる（例えば、電源が差し込まれる）まで、データ同期処理を一時停止又は中止することができる（ステップ６１６）。十分なリソースが利用可能である場合、自動同期エンジンは、上述したデータ同期を完了することができる（ステップ６１８）。当然ながら、バッテリ寿命以外にも、このようにして他の種類のリソースを分析することもできる。
【００４４】
いくつかの実施形態では、自動同期エンジンが、宛先側のパイプ状態を取得することができる。自動同期エンジンは、この宛先側のパイプ状態に基づいて、上述したパイプ意識型データ同期を実行することができる。
【００４５】
図７は、装置意識型データ同期のための例示的な実施形態を示すフロー図である。いくつかの実施形態では、自動同期エンジンが、ターゲット宛先にデータを送信する前に、ターゲット宛先の特性情報に基づいてデータを修正（例えば、スケーリング又は最適化）することができる。この特性情報は、例えば、表示画面サイズ、最大解像度、（装置又はサービスによって）受け入れ可能なファイルサイズ、帯域幅限界などを含むことができる。例えば、自動同期エンジンは、この特性情報に基づいて、表示画面の小さなターゲット装置に合わせて投影するデータサイズを自動縮小し、データの解像度をターゲット装置の最大解像度に一致する低い解像度に下げ、データをターゲット装置又はサービス（インターネットサービスなど）が受け入れ可能な小さなサイズに圧縮し、データのビットレート（すなわち、データ転送レート)をターゲット装置又はサービスの帯域幅に一致するように調整することなどができる。例えば、ハンドヘルド装置に高解像度ビデオを送信するということは、画像投影サイズだけでなくファイルサイズ自体も調整することを意味し得る。自動同期エンジンは、データ修正（スケーリング、最適化など）を行うことにより、宛先が表示するのに必要な量のデータのみを送信し、及び／又は宛先が受け入れることができる量のデータを送信することができる。このデータ修正により、データ送信時間を短縮し、帯域幅を節約し、データ送信側と宛先側の両方のユーザ体験を向上させることができる。
【００４６】
例えば、図７に示すように、ステップ７０２において、自動同期エンジンは、同期すべきデータに上述したフィルタ処理を実行し、このフィルタ処理したデータを受け取るターゲット装置を識別することができる。自動同期エンジンは、ターゲット装置の特性情報を取得することができる（ステップ７０４）。いくつかの実施形態では、自動同期エンジンが、ターゲット装置に対して特性情報を求めるクエリを行うことができる。いくつかの実施形態では、上述した配布リストを作成する時に、特性情報を収集して記憶しておくこともできる。自動同期エンジンは、この記憶した特性情報を、ターゲット装置にクエリを行わずに取り出すことができる。
【００４７】
自動同期エンジンは、特性情報を取得した後、この特性情報を、フィルタ処理したデータに関する情報と比較することができる。自動同期エンジンは、この比較に基づいて、フィルタ処理したデータを修正するかどうかを判断することができる。例えば、自動同期エンジンは、ターゲット装置の解像度がフィルタ処理したデータの解像度よりも低いかどうかをチェックすることができる（ステップ７０６）。ターゲット装置の解像度の方が低い場合、自動同期エンジンは、フィルタ処理したデータのダウンスケーリングが必要とされるように修正構成を更新することができる（ステップ７０８）。ターゲット装置の解像度がフィルタ処理したデータの解像度を下回らない場合、自動同期エンジンは、ターゲット装置に帯域幅限界又はデータストリーム限界が存在するかどうかをチェックすることができる（ステップ７１０）。これらの限界が存在する場合、自動同期エンジンは、ビットレートの調整が必要とされるように修正構成を更新することができる（ステップ７１２）。
【００４８】
ターゲット装置に帯域幅限界又はデータストリーム限界が存在しない場合、自動同期エンジンは、ターゲット装置にファイルサイズ限界が存在するかどうか、及びフィルタ処理したデータのサイズがこの限界に達しているかどうかをチェックすることができる（ステップ７１４）。これらのチェックのいずれかが肯定的である場合、自動同期エンジンは、フィルタ処理したデータの圧縮が必要とされるように修正構成を更新することができる（ステップ７１６）。いくつかの実施形態では、ターゲット装置が、ファイルタイプ限界を有することがある。例えば、ターゲット装置は、ストリーミングデータのファイルサイズが大きいことに起因して、ストリーミングデータを受け入れることができない場合がある。
【００４９】
ターゲット装置にファイルサイズ限界が存在せず、又はフィルタ処理したデータのサイズがファイルサイズ限界に達してない場合、処理は、データを修正するステップ７１８に進むことができる。自動同期エンジンは、この更新された修正構成に基づいて、フィルタ処理したデータに上述したデータ修正を行い（ステップ７１８）、この修正したデータをターゲット装置に送信することができる（ステップ７２０）。その後、方法は終了する。
【００５０】
いくつかの実施形態では、このデータ修正により、ターゲット装置の特性によって課せられる上述した限界のいずれかを解決できない場合、自動同期エンジンは、ユーザに警告することができる。また、自動同期エンジンは、データ送信を確認するように、又は別の動作を選択するようにユーザを促すこともできる。
【００５１】
図２〜図４、図６及び図７において上述した例示的なプロセスフロー例は、例示のためのものにすぎないと理解されたい。いくつかのステップを削除すること、組み合わせること、又は配置し直すこともでき、追加のステップを加えることもできる。
【００５２】
図８は、図１の例示的なシステム１００の自動同期エンジン１０６の１つの例示的な実施形態を示すブロック図である。図８に示すように、自動同期エンジン１０６は、同期マネージャ８０２、同期データベース８０４、データ分析器８０６、データフィルタ８０８、データ送信機８１０、及びデータオプティマイザ８１２を含むことができる。
【００５３】
図８に示す自動同期エンジン１０６の構成要素は、例示のためのものにすぎないと理解されたい。いくつかの構成要素を取り除くこと、又は組み合わせることもでき、他の構成要素を追加することもできる。また、図８に示す１又はそれ以上の構成要素を、１又はそれ以上のコンピュータシステム上のソフトウェアの形で実装することもできる。例えば、このような構成要素は、１又はそれ以上のソフトウェアアプリケーションを含むことができ、これらのソフトウェアアプリケーションは、プロセッサによる実行時にコンピュータに方法のステップを実行させるコンピュータ可読命令を含む記憶装置を含む１又はそれ以上のコンピュータ装置を構成することができる。コンピュータ可読命令は、固体メモリ又はディスクメモリなどの有形の非一時的コンピュータ可読媒体に記憶することができる。或いは、図８に示す１又はそれ以上の構成要素をハードウェア構成要素の形で、又は、例えばＡＳＩＣ、専用コンピュータ又は汎用コンピュータなどのハードウェアとソフトウェアの組み合わせの形で実装することもできる。
【００５４】
図８を参照すると、自動同期エンジン１０６が、データソースから同期すべきデータを受け取る（８１４）。いくつかの実施形態では、同期マネージャ８０２が、受け取ったデータを同期データベース８０４に記憶し（８１６）、又は受け取ったデータをデータ分析器８０６に渡してさらに処理することができる（８１８）。いくつかの実施形態では、データを受け取って同期データベース８０４に記憶し、このデータを同期マネージャ８０２が取り出して同期させることができる（ステップ８１６）。
【００５５】
同期マネージャ８０２は、同期すべきデータを管理し、データ修正を容易にする情報を構成して提供し、データ修正を調整することができる。例えば、同期マネージャ８０２は、上述したように、同期データを受け取るためのターゲット宛先を含む配布リストを作成して構成し、ユーザ装置及び／又はターゲット宛先の状態情報を取得して構成し、特性情報、データ修正構成、及びターゲット宛先の識別情報を取得して構成することができる。また、いくつかの実施形態では、同期マネージャ８０２が、上述したように、例えば様々な場所又は装置からデータを収集して集約すること、データのメタデータ／タギング情報を更新すること、データを編集すること、及びアクセス許可情報を構成することなどにより、同期すべきデータを管理することもできる。いくつかの実施形態では、同期マネージャ８０２が、上述した機能の１つ又はそれ以上を実行するためのＧＵＩを提供することができる。いくつかの実施形態では、同期マネージャ８０２が、同期データベース８０４を利用して、上述したデータ及び情報を記憶することができる。
【００５６】
いくつかの実施形態では、同期マネージャ８０２を使用して、フィルタ処理したデータをターゲット宛先に送信するために使用されるユーザ装置の状態情報を取得することができる。この状態情報は、ユーザ装置又は同期データベース８０４から取得することができる（８１６）。同期マネージャ８０２は、この取得した状態情報に基づいて、上述したパイプ意識型データ同期の実行を調整することができる。いくつかの実施形態では、同期マネージャ８０２が、ターゲット宛先の状態情報に基づいて、上述したパイプ意識型データ同期の実行を調整することができる。
【００５７】
同期データベース８０４を使用して、データ同期に関する一群の情報を記憶することもできる。この記憶したものを、一連のキュー、構造化ファイル、リレーショナルデータベース、オブジェクト指向データベース、又はその他のあらゆる適当なデータベースとして体系化することができる。データベース管理システムなどのコンピュータソフトウェアを利用して、同期データベース８０４に記憶したデータへのアクセスの管理及び提供を行うことができる。同期データベース８０４は、上述したような同期すべきデータ、及びデータ修正を容易にすることができるあらゆる情報を記憶することができる。
【００５８】
いくつかの実施形態では、データ分析器８０６を使用して、上述したように、受け取ったデータを分析し、この受け取ったデータがターゲット宛先に関連する識別情報に一致するいずれかの情報を含むかどうかを判定することができる。いくつかの実施形態では、データ分析器８０６が、この判定に基づいてターゲット宛先を識別することができる。識別情報は、例えば同期データベース８０４から直接、又は同期マネージャ８０２を通じて取得することができる（８１６及び８１８）。いくつかの実施形態では、データ分析器８０６が、一致する情報を取り出し、これを分析したデータとともにデータフィルタ８０８に渡してさらに処理することができる（８２８）。
【００５９】
データフィルタ８０８は、この一致する情報、及びデータ分析器８０６又は同期データベース８０４から受け取った識別情報に基づいて（８１６及び８２２）、分析したデータに対して上述したデータフィルタ処理を行うことができる。このフィルタ処理したデータをデータ送信機８１０に渡して送信する（８２４及び８２６）。
【００６０】
いくつかの実施形態では、データオプティマイザ８１２を使用してターゲット宛先の特性情報を取得することもできる。特性情報は、ターゲット宛先から、又は同期データベース８０４から直接、或いは同期マネージャ８０２を通じて取得することができる（８１６及び８３０）。データオプティマイザ８１２は、この取得した特性情報に基づいて、フィルタ処理したデータに対して上述した装置意識型データ修正を行うことができる。その後、データオプティマイザ８１２は、修正したデータをデータ送信機８１０に渡して送信することができる（８３２及び８２６）。
【００６１】
上述したデータ同期処理中に、自動同期エンジン１０６の各構成要素は、その計算／判定結果を、後で取り出すこと又はトレーニングすることができるように同期データベース８０４に記憶することができる。自動同期エンジン１０６は、この履歴データに基づいて、データをフィルタ処理する性能、及びデータを正しい宛先へ送信する性能を向上させるように自動同期エンジン１０６自体をトレーニングすることができる。
【００６２】
本明細書に開示した方法は、コンピュータプログラム製品、すなわち機械可読記憶装置などの非一時的情報キャリア内で有形的に具体化されたコンピュータプログラムとして、或いはプログラマブルプロセッサ、コンピュータ又は複数のコンピュータなどのデータ処理装置が実行するための、又はこれらの装置の動作を制御するための有形の非一時的コンピュータ可読媒体として実現することができる。コンピュータプログラムは、コンパイラ型言語又はインタープリタ型言語を含むあらゆる形式のプログラミング言語で記述することができ、スタンドアロンプログラムの形、又はモジュール、構成要素、サブルーチン、又はコンピュータ環境での使用に適したその他のユニットの形を含むあらゆる形で展開することができる。コンピュータプログラムは、１つのコンピュータ上で展開することもでき、或いは一箇所における、又は複数箇所にわたって分散され通信ネットワークにより相互接続された複数のコンピュータ上で実行されるように展開することもできる。
【００６３】
本明細書に開示した方法の一部又は全部を、特定用途向け集積回路（ＡＳＩＣ）、フィールドプログラマブルゲートアレイ（ＦＰＧＡ）、コンプレックスプログラマブルロジックデバイス（ＣＰＬＤ）、プリント基板（ＰＣＢ）、デジタルシグナルプロセッサ（ＤＳＰ）、プログラマブル論理要素とプログラマブル相互接続の組み合わせ、単一の中央処理装置（ＣＰＵ）チップ、マザーボード上で組み合わせたＣＰＵチップ、汎用コンピュータ、又は本明細書で開示したデータ同期を実行できる装置又はモジュールの他のあらゆる組み合わせによって実現することもできる。
【００６４】
上述の明細書では、特定の例示的な実施形態を参照しながら本発明を説明した。しかしながら、以下の特許請求の範囲に示す本発明の広範にわたる思想及び範囲から逸脱することなく、様々な修正及び変更を行えることが明らかであろう。従って、明細書及び図面は、限定的なものではなく例示的なものと見なすべきである。当業者には、本明細書に開示した本発明の明細書及び実施を検討することにより、本発明の他の実施形態が明らかになるであろう。
【符号の説明】
【００６５】
５００：グラフィックユーザインターフェイス
５０２：ローカルコンテンツ
５０２ａ〜ｄ：アイコン
５０４：マイギャラリの共有
５０４ａ−ｄ：アイテム
５０６：ソーシャルネットワークコンテンツ
５０６ａ〜ｄ：アイテム
５０８：場所
５１０：連絡先
５１２：装置
５１４：全ての場所に同期
５１６：友人に送信
５１８：家族に送信
５２０：全ての連絡先に送信
５２２：選択した連絡先／装置に送信
５２４：チャット
【図１】
2014501956.tif 000003
【図２】
2014501956.tif 000004
【図３】
2014501956.tif 000005
【図４】
2014501956.tif 000006
【図６】
2014501956.tif 000007
【図７】
2014501956.tif 000008
【図８】
2014501956.tif 000009
【図５】
2014501956.tif 000010
【国際調査報告】
2014501956.tif 000011