JP6692418B2 - ネイティブアプリケーションのコラボレーション - Google Patents

ネイティブアプリケーションのコラボレーション Download PDF

Info

Publication number
JP6692418B2
JP6692418B2 JP2018517385A JP2018517385A JP6692418B2 JP 6692418 B2 JP6692418 B2 JP 6692418B2 JP 2018517385 A JP2018517385 A JP 2018517385A JP 2018517385 A JP2018517385 A JP 2018517385A JP 6692418 B2 JP6692418 B2 JP 6692418B2
Authority
JP
Japan
Prior art keywords
content item
content
user
management system
synchronized
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018517385A
Other languages
English (en)
Other versions
JP2019509530A (ja
Inventor
マーティン ペドリック,
マーティン ペドリック,
マイケル ウー,
マイケル ウー,
アンヴィシャ パイ,
アンヴィシャ パイ,
Original Assignee
ドロップボックス, インコーポレイテッド
ドロップボックス, インコーポレイテッド
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by ドロップボックス, インコーポレイテッド, ドロップボックス, インコーポレイテッド filed Critical ドロップボックス, インコーポレイテッド
Publication of JP2019509530A publication Critical patent/JP2019509530A/ja
Application granted granted Critical
Publication of JP6692418B2 publication Critical patent/JP6692418B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0484Interaction techniques based on graphical user interfaces [GUI] for the control of specific functions or operations, e.g. selecting or manipulating an object, an image or a displayed text element, setting a parameter value or selecting a range
    • G06F3/04847Interaction techniques to control parameter settings, e.g. interaction with sliders or dials
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/10File systems; File servers
    • G06F16/17Details of further file system functions
    • G06F16/178Techniques for file synchronisation in file systems
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F3/00Input arrangements for transferring data to be processed into a form capable of being handled by the computer; Output arrangements for transferring data from processing unit to output unit, e.g. interface arrangements
    • G06F3/01Input arrangements or combined input and output arrangements for interaction between user and computer
    • G06F3/048Interaction techniques based on graphical user interfaces [GUI]
    • G06F3/0481Interaction techniques based on graphical user interfaces [GUI] based on specific properties of the displayed interaction object or a metaphor-based environment, e.g. interaction with desktop elements like windows or icons, or assisted by a cursor's changing behaviour or appearance
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/535Tracking the activity of the user

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • Human Computer Interaction (AREA)
  • Databases & Information Systems (AREA)
  • Data Mining & Analysis (AREA)
  • Computer Hardware Design (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • User Interface Of Digital Computer (AREA)
  • Information Transfer Between Computers (AREA)
  • Digital Computer Display Output (AREA)

Description

本開示は一般にデバイス間で情報を共有することに関し、特にネイティブアプリケーションと共有コンテンツの間の相互作用に関する。
コンテンツ管理システムは、デバイスに、コンテンツ管理システム及び他のデバイスとの間でコンテンツアイテムを同期することを可能にする。デバイスはコンテンツアイテムのローカルコピーを格納する。コンテンツアイテムがデバイスにおいて追加され、削除され、及び編集される場合、これらの修正は、格納及び他のデバイスとの同期のためにコンテンツ管理システムに送信される。コンテンツアイテムと相互作用するため、ユーザは典型的にはデバイス上のネイティブアプリケーションを実行して、コンテンツアイテムを閲覧し修正する。ユーザがコンテンツ管理システムにコンテンツアイテムを追加することを望む場合、ユーザは典型的にはネイティブアプリケーションを終了しなければならず、ユーザは、ネイティブアプリケーションでコンテンツアイテムを閲覧ながら共有フォルダにコンテンツアイテムを追加する便利な方法を有しない。
説明される実施形態は、コンテンツ管理システムを介してコンテンツアイテムを共有するデバイスの一組のユーザが、ネイティブアプリケーション内の同一のコンテンツアイテムの単一のインスタンスを同時に閲覧することと修正することを可能にする。様々な実施形態では、共有コンテンツアイテムが1つ以上の他のデバイスで閲覧され又は編集されていることを示すユーザの各デバイスにおいて、グラフィカル及びテキストの情報がユーザに提供される。更に、様々な実施形態では、ユーザは2以上のデバイスから協同的に共有コンテンツアイテムを編集することができる。
様々な実施形態に従うデバイスは、デバイス間で維持及び同期される、共有コンテンツアイテムのローカルコピーを格納する。同期は、コンテンツ管理システムによって、又はそれらのうちのデバイスによって実行されてもよい。デバイスは、ワードプロセッサ、メディアビューア、メディアエディタ等のような、コンテンツアイテムにアクセスするために用いられるネイティブアプリケーションを含む。ネイティブアプリケーションは、ウィンドウ等のユーザインタフェース要素に、コンテンツアイテムに関連する情報を表示する。デバイスはまた、コンテンツアイテムとの相互作用を監視し、これらの相互作用についての情報を、直接的に又はコンテンツ管理システムを介してコンテンツアイテムを共有する他のデバイスへ通信するクライアントアプリケーションを含む。クライアントアプリケーションは、コンテンツアイテムとのユーザの相互作用を表すデータを含む相互作用情報を生成する。クライアントアプリケーションはまた、2つ以上のデバイス間のコラボレーションを容易にする。
相互作用情報は、クライアントアプリケーションとの相互作用とネイティブアプリケーションとの相互作用とを含む。相互作用情報は、ネイティブアプリケーション内で発生するプログラムイベントを含むプレゼンス情報から決定されてよい。プレゼンスイベントは、コンテンツアイテムを開くこと、コンテンツアイテムを編集すること、コンテンツアイテムを保存すること、コンテンツアイテムの名称変更を行うこと、コンテンツアイテムを移動すること、コンテンツアイテムを削除することを含む。プレゼンスイベントはまた、ユーザインタフェース要素がフォーカスを得たり失ったりするような、ネイティブアプリケーションのユーザインタフェース要素と相互作用することを含む。フォーカスされたユーザインタフェース要素は、デバイスにおけるユーザ操作を受け取るユーザインタフェース要素である。例えば、ユーザインタフェース要素がフォーカスを有する場合、ユーザがユーザインタフェース要素を介してコンテンツアイテムを「閲覧している」ことを示す、プレゼンス情報が生成されてよい。ある実施形態では、プレゼンスイベントは、コンテンツアイテムと相互作用するネイティブアプリケーションとは別のクライアントアプリケーションによって収集される。すなわち、この実施形態では、プレゼンツ情報は、コンテンツアイテム又はプレゼンス情報にアクセスするネイティブアプリケーションに統合されていない、他のアプリケーション又はプロセスによって収集される。
クライアントアプリケーションはデバイス上のイベントを監視して、いつユーザがコンテンツアイテムと相互作用するためにネイティブアプリケーションを使用しているかを判定する。イベントを監視する1つの方法では、クライアントアプリケーションは、ユーザインタフェース要素に関連するイベントを受信するために、ユーザインタフェース要素またはオペレーティングシステムを制御するプロセスに登録する。クライアントアプリケーションはそのような全てのイベント、或いは、コンテンツアイテムを開くことに関連付けられた所定のユーザインタフェース要素のみを監視してよい。プレゼンスイベントが発生した場合、クライアントアプリケーションは、ネイティブアプリケーションから又はオペレーティングシステムからプレゼンスイベントを受信する。クライアントアプリケーションは、イベントと関連付けられたユーザインタフェース要素を識別し、イベントに関連付けられたプレゼンス情報を判定する。クライアントアプリケーションは、コンテンツアイテムが相互作用されている又は相互作用されたコンテンツアイテムを同期するコンテンツ管理システムに通知し、当該コンテンツ管理システムにプレゼンス情報を送信する。プレゼンス情報(又は他の相互作用情報)は直接他のデバイスに送信されてもよい。
コンテンツ管理システムは、相互作用情報を受信し、相互作用情報の種別に基づいて相互作用情報に応答する或いは他のデバイスに相互作用情報を送信してもよい。メッセージに関する相互作用情報は、コンテンツアイテムを同期する他のデバイスに送信される。プレゼンス情報は、ある実施形態では、コンテンツアイテム、デバイス、プロセス、ユーザインタフェース要素、及びプレゼンスの種別(例えばコンテンツアイテムが開いている、閲覧されている、編集されている、又は協同して編集されている)を示す、プレゼンス記録として格納される。相互作用の優先度を示すユーザプレゼンスは、相互作用の順番に従って判定されてよい。順序付けの例として、コンテンツアイテムを編集することは、コンテンツアイテムを閲覧することよりも高い優先度を有し、コンテンツアイテムを閲覧することは、コンテンツアイテムを開くことよりも高い優先度を有する。ユーザプレゼンスは、コンテンツアイテムに関するユーザのプレゼンスを表し、そして、任意の特定のデバイス、プロセス又はユーザインタフェース要素への参照を有さなくてもよい。コンテンツ管理システムは、コンテンツアイテムに関して同期する全てのデバイスへ当該情報を送信してもよく、又は、コンテンツアイテムに関してアクティブなプレゼンス記録に関連付けられているデバイスにのみ送信してもよい。ある実施形態では、デバイスは、通知をトリガするための特定の相互作用を特定し得る、コンテンツアイテムについての相互作用情報を受信するためにコンテンツ管理システムに登録する。相互作用が発生した場合、トリガする相互作用情報が通知に関連付けられたデバイスに送信される。
コンテンツ管理システムに同期されていないコンテンツアイテムに対して監視イベントが受信された場合、同期インタフェースがユーザに提示され得る。同期インタフェースでは、ユーザは、コンテンツ管理システムに同期されるコンテンツアイテムを指定してもよい。コンテンツアイテムを同期するための、ユーザからの要求を受信した場合、クライアントアプリケーションは、共有フォルダ内のコンテンツアイテムへのパスを決定し、コンテンツアイテムと関連付けられているネイティブアプリケーションに命令してコンテンツアイテムを共有フォルダに保存させる。この場合、ネイティブアプリケーションは、保存し及び同期するプロセスの間はコンテンツアイテムを開いたままにしてもよい。コンテンツアイテムがローカル共有フォルダに保存される場合、クライアントアプリケーションは、コンテンツアイテムを他のデバイスへ又はコンテンツ管理システムへ同期させ、同期中には、同期インタフェースを更新してコンテンツアイテムの同期状態を示してもよい。コンテンツアイテムの同期が完了した場合、共有及びコンテンツ管理システムを介したコンテンツアイテムとの他の相互作用を可能にする、コンテンツアイテムの状態の監視が通常の状態でなされてよい。
図1は、相互作用情報の通信とユーザコラボレーションとを含む、コンテンツアイテムを同期する環境の実施形態を示す。
図2は、ある実施形態に従う、デバイスの様々なモジュールと構成要素を示す。
図3A及び図3Bは、デバイスのデスクトップ表示におけるユーザインタフェース要素のフォーカス変化を示す。
図4は、ある実施に従う、コンテンツアイテムに関連付けられたプレゼンス情報を判定する例示的処理を示す。
図5A〜図5Bは、相互作用情報を表示する例示的ユーザインタフェースを示す。
図6は、コンテンツアイテムを共有フォルダに追加する例示的処理を示す。
図7A〜図7Dは、共有フォルダに追加されたコンテンツアイテムを表示する例示的ユーザインタフェースを示す。
図は説明の目的のみのために本発明の様々な実施形態を図示するものである。当業者は、以下に示される構成及び方法の他の代替的な実施形態が以下に説明される発明の原理から離れることなく用いられ得ることを以降の記載から容易に理解する。
図1は、相互作用情報の通信とユーザコラボレーションとを含む、コンテンツアイテムを同期する環境の実施形態を示す。図1は、デバイス100A、100B、100C(広くデバイス100として参照される)、コンテンツ管理システム110、及びネットワーク120を含む。3つのデバイスは図示の目的のみのために示されるものであり、実際には任意の数のデバイスが環境に存在してよい。同様に、全体を通して説明及び図示される他のモジュール又は構成要素は、実施のニーズに対して適切であり一般性を失わないものとして1つ又は複数のインスタンスを含んでよい。
デバイス100は、ローカルにコンテンツアイテムを格納して閲覧するため、及びコンテンツ管理システム110とコンテンツアイテムを同期するための任意の適切なコンピューティングデバイスであってよい。デバイスの例は、デスクトップ及びラップトップコンピュータ、携帯型モバイルデバイス、タブレットコンピュータ、及び他のコンピューティングデバイスを含む。様々な実施形態におけるデバイス100の動作は、更に以下で説明される。
各デバイス100は、ネットワーク120を介してコンテンツ管理システム110と通信する。ネットワーク120は、任意の適切なネットワークであり、ローカルネットワーク、業務用ネットワーク、グローバルネットワーク、及び任意のこれらの組み合わせを含んでよい。典型的な構成では、デバイス100は、有線又は無線の通信ネットワークを介してローカルのネットワークサービスプロバイダと通信し、インターネットを通じてコンテンツ管理システム110と通信する。ある構成では、デバイス100A、100B、100Cは、図1において破線で示されるように、ネットワーク120を介すること無く、互いに直接通信する。例えば、デバイス100は、Bluetooth通信を介した無線、又は、ユニバーサル・シリアル・ネットワーク(USB)を介した有線のような、有線又は無線接続を介して通信してもよい。
コンテンツ管理システム110は、デバイス100のユーザに対し、コンテンツ共有及び同期サービスを提供する。これらのサービスは、ユーザが他のデバイス100のユーザとコンテンツを共有できるようにする。コンテンツ共有に加えて、コンテンツ管理システム110は、変更に応じて共有コンテンツを更新し、複数のデバイス100に渡ってコンテンツアイテムに対する同期された変更を可能にする。ユーザは、ユーザが所有し、ユーザのアカウントに関連付けられている複数のデバイス100に渡ってコンテンツを同期してもよく、ユーザは、他のユーザのアカウントに関連付けられているデバイスと同期されるコンテンツを共有してもよい。コンテンツ管理システム110に格納されるコンテンツは、以下で合わせて「コンテンツアイテム」として参照される、デジタルデータ、書類、メディア(例えば画像、写真、ビデオ、音声、ストリーミングコンテンツ)、データファイル及びデータベース、ソースコード及びオブジェクトコード、記録、及び、任意の他のデータ又はファイルの種別などの、データの任意の種別を含み得る。コンテンツ管理システム110によって格納されるコンテンツアイテムはまた、フォルダ、テーブル、コレクション、アルバム、プレイリスト、又は他のデータベース構成物(例えば、オブジェクト指向のもの、キー/バリュー等)など、他のコンテンツアイテムを組織するために用いられてよい。実際には、様々なデバイス100は、ユーザ連携、パーミッション、コンテンツ共有パーミッション等に基づいて、コンテンツアイテムの異なるグループを同期させてもよい。様々な実施形態におけるコンテンツ管理システム110の動作は、更に以下で説明される。
図2は、ある実施形態に従う、デバイス100の様々なモジュールと構成要素を示す。デバイス100は、情報をユーザに提供するディスプレイ220を含み、あるクライアントデバイス100はタッチスクリーンを含む。デバイス100はまた、ネットワーク120を介してコンテンツ管理システム110と通信するためのネットワークインタフェース225を含む。デバイス100はまた、キーボート、マウス、タッチパッド、又は他のデバイスなどの様々なユーザ入力デバイスからのユーザ入力を受け取る、ユーザ入力モジュール260を含む。重要でない、例えば、1つ以上のコンピュータプロセッサ、ローカルの固定メモリ(RAM及びROM)、及び、オプションとしての着脱可能メモリ(例えば、SDカード)、電源、及び音声-ビデオ入力といった、クライアントデバイス100の他の従来的な構成要素は示されていない。
ソフトウェアモジュールは、オペレーティングシステム245及び1つ以上のネイティブアプリケーション255を含む。ネイティブアプリケーション255は、クライアントデバイスに応じて異なり、ワードプロセッサ、スプレッドシート、データベース管理システム、コードエディタ、画像及びビデオエディタ、電子ブックリーダ、音声及びビデオプレーヤーなどの、コンテンツ管理システム110に格納されたコンテンツアイテムを生成し、閲覧し、消費し、及び修正するための様々なアプリケーションを含んでよい。各デバイス上のオペレーティングシステム245は、ローカルのファイル管理システムを提供し、コンテンツ管理システムクライアントアプリケーション200及びネイティブアプリケーション255などの、様々なソフトウェアモジュールを実行する。コンテンツディレクトリ240は、名前、写真、電話番号、会社、電子メールアドレス、物理アドレス、ウェブサイトURLなどの、ユーザの連絡先についての情報を格納する。ネイティブアプリケーション255、オペレーティングシステム245及びコンテンツ管理システムクライアントアプリケーション200の更なる動作は、以下で説明される。
ある実施形態では、デバイス100は、カメラ230及びロケーションモジュール235などの、追加的な構成要素を含む。カメラ230は、オンラインコンテンツ管理システム110にアプロードする画像又はビデオを撮影するために用いられてよい。ロケーションモジュール235は、例えば、全地球測位衛星(GPS)信号、携帯電話基地局の三角測量、又は他の方法を用いてデバイスの位置を決定する。ロケーションモジュール235は、位置データを取得し、カメラ230によって撮影された画像のようなコンテンツアイテムについてのメタデータに位置データを追加するために、クライアントアプリケーション200によって使用されてよい。
クライアントデバイス100は様々な方法でコンテンツ管理システム110にアクセスする。クライアントアプリケーション200は、コンテンツ管理システム110のサービスへのアクセスを提供する専用のアプリケーション又はモジュールであり得、ユーザインタフェースを通した共有ファイルへのユーザアクセスと他のアプリケーションによるプログラムでのアクセスの両方を提供する。クライアントデバイス100はまた、ウェブブラウザ250を通じてコンテンツ管理システム110にアクセスしてもよい。代替として、クライアントアプリケーション200は、コンテンツ管理システム110へのアクセスと、オペレーティングシステム245によって提供されるローカルファイル管理システムとを統合してもよい。コンテンツ管理システム110へのアクセスがローカルファイル管理システムに統合された場合、コンテンツ管理システム110において保守されるファイル組織化スキームは、オペレーティングシステム245とクライアントアプリケーション200との共同により、ローカルファイル構成物として表される。クライアントアプリケーション200は、スタンドアローンのアプリケーション、アプリケーションプラグイン、又はブラウザ拡張などの様々な形式をとってよい。クライアントアプリケーション200は、ユーザインタフェースモジュール202、相互作用管理モジュール204、コンテンツアクセスモジュール206、ローカルコンテンツデータストア208、監視プレゼンスデータストア210及びコラボレーションモジュール207を含む。
他のデバイスタスクを扱うことに加えて、オペレーティングシステム245は、デバイス100上で実行しているアプリケーションからの情報をディスプレイ220を介してユーザに表示する。このとき、情報は1つ以上のユーザインタフェース要素を含み得る。このようなユーザインタフェース要素は、特定のデバイス及び構成に応じて変化してよい。ユーザインタフェース要素は、モバイルデバイス上のユーザインタフェース要素及び、デスクトップインタフェース上のウィンドウを含み得る。ウィンドウのようなユーザインタフェース要素を用いるオペレーティングシステムの例は、レッドモンドのMicrosoft CorporationによるMicrosoft Windows 8、カリフォルニアのクパチーノのApple Inc.によるOS Xである。更に、オペレーティングシステム245は、同時に動作している複数のネイティブアプリケーション255の制御を管理する。ユーザインタフェース要素は、1つのレイヤが他のレイヤに重なるようにレイヤ化されてもよい。いくつかのオペレーティングシステムと構成では、1つのユーザインタフェース要素のみが所定の期間に表示される。典型的には1つのユーザインタフェース要素がアクティブなユーザインタフェース要素であり、これはオペレーティングシステム245がキーボードエントリ、カーソル移動、タッチセンサ、タッチジェスチャ等のようなユーザ入力を送るユーザインタフェース要素であることを意味する。当業者によって理解されるように、特定の期間にアクティブな、ウィンドウ又は他のユーザインタフェース要素は、しばしばフォーカスを有する。ユーザは、あるユーザインタフェース要素から他の要素へフォーカスを移動させるために他のユーザインタフェース要素を選択してもよく、ある例では、オペレーティングシステム245はフォーカスをユーザ入力なしに変更してもよい。
典型的には、ユーザインタフェース要素、例えばネイティブアプリケーション255と関連付けられたウィンドウ、はオペレーティングシステム245によって管理され、オペレーティングシステムは、実行しているネイティブアプリケーション255のプロセス識別子とユーザインタフェース要素のユーザインタフェース要素識別子との間の関連を管理する。例えば、特定のアプリケーションはプロセスid「2587」に関連付けられ、このプロセスidは、ユーザインタフェース要素識別子4、8及び10を用いて複数のユーザインタフェース要素を管理し得る。各ユーザインタフェース要素識別子は、別々に、そのネイティブアプリケーション255によって開かれた特定のコンテンツアイテムと関連付けられてよく、複数のユーザインタフェース要素識別子とプロセス識別子とは同一のコンテンツアイテムに関連付けられてもよい。
オペレーティングシステム245はまた、様々なイベントを扱い、認識する。このようなイベントは、コンテンツアイテムを閉じたり開いたりするためのネイティブアプリケーション255からの要求、ウィンドウ又は他のユーザインタフェース要素を閉じるためのネイティブアプリケーション255からの要求、及びユーザインタフェース要素のフォーカスを変更する要求、その他の多くのものを含む。以下で説明されるように、これらのイベントは、コンテンツアイテムに関連するプレゼンスの変更を識別するために、相互作用管理モジュール204によって用いられてよい。
クライアントアプリケーション200は、ユーザがデバイス上のコンテンツアイテムを開く、閉じる或いは変更するときのように、コンテンツアイテムに関して生じる相互作用を識別する。これらの相互作用は、コンテンツアイテムとの相互作用を記述する相互作用情報を生成するために、クライアントアプリケーション200によって識別される。相互作用情報は、クライアントアプリケーション200との相互作用とネイティブアプリケーション255との相互作用とを含む。ネイティブアプリケーション255の動作から決定される相互作用情報は、プレゼンス情報と呼ばれる。相互作用情報とプレゼンス情報とを判定するクライアントアプリケーション200などのアプリケーションは、プレセンスアプリケーションと呼ばれる。(プレゼンス情報に加えた)相互作用情報の更なる種別は、コンテンツアイテムに関連する、ノート、メッセージ及び通知要求を含み、これらはクライアントアプリケーション200によって受信され得る。メッセージは、他のデバイスへのチャットメッセージ、コンテンツアイテムと相互作用(例えば編集)するユーザの意図を示すメッセージ、及び、コラボレーションセッションを開始するユーザの意図を示すメッセージを含んでよい。通知要求は、他のユーザの相互作用情報が変化した際に通知される要求を含んでよい。相互作用情報はまた、バージョン管理上のノートのようなメタデータの修正、又は、バージョン管理情報又は以前のコンテンツアイテムのバージョンを閲覧するための要求のような、コンテンツ管理システム110に格納されるコンテンツアイテムに関する更なる情報に対する要求を含む。更なる相互作用情報の例は以下に説明される。
相互作用情報は、コンテンツアイテムに関して同期される他のデバイス100へ送信される。意図の指示は、例えば、第1のユーザがコンテンツアイテムを編集しようとする或いは協同的な編集セッションを開始しようとすることを、他のデバイス上のコンテンツアイテムの第2のユーザに注意を促す。クライアントアプリケーション200は、ユーザがいつネイティブアプリケーション255を用いてコンテンツアイテムと相互作用するのかを識別し、また、ユーザからのチャット又は意図情報を受信する。様々な実施形態では、デバイス100は、コンテンツアイテムにおけるユーザのプレゼンス(すなわちユーザがコンテンツアイテムを開く又はコンテンツアイテムを編集すること)を、後に更に説明するオペレーティングシステム245との相互作用を通じて、識別する。
デバイス100は、コンテンツ管理システム110からコンテンツアイテムを受信し、ユーザがデバイス100上に格納された様々なネイティブアプリケーション255を用いてコンテンツアイテムを閲覧し、修正し、及び相互作用することを可能にする。例えば、デバイス100は、画像コンテンツアイテムを操作する写真編集アプリケーション、テキストコンテンツアイテムの編集を可能にするワードプロセッシングアプリケーション、又は、コンテンツアイテムの描画の修正を可能にするコンピュータ支援設計(CAD)アプリケーションを含んでよい。更に後述するように、相互作用情報は、ユーザの相互作用アプリケーションを介してデバイス100によって判定され、相互作用情報は他のデバイス100に送信される。更に、デバイス100が他のデバイス100に関連する相互作用情報を受信した場合、デバイス100はその相互作用情報を表示する。
ある実施形態では、コンテンツアイテムに関連する相互作用情報を検出するアプリケーションは、コンテンツアイテムを閲覧し又は操作するアプリケーションとは別のものである。例えば、相互作用情報を検出するクライアントアプリケーションは、画像コンテンツアイテムを操作し又は表示する写真編集アプリケーションとは別のものである。様々な実施形態では、相互作用情報を検出するアプリケーションはまた、コンテンツアイテムをコンテンツ管理システム110と同期する責務を有する。相互作用情報を検出するアプリケーションはプレセンスが検出されるアプリケーションとは別のものであるため、プレゼンスは、多数のアプリケーションとコンテンツアイテムとに対して一度に監視され、また、コンテンツアイテムビューアの種別のそれぞれに対するプレゼンスの監視を統合すること無く監視されてよい。すなわち、例えば、写真編集アプリケーション、ワードプロセッシングアプリケーション、及びプレイリスト編集アプリケーションのそれぞれに対して、追加的な特別なプレゼンス監視又はアプリケーションの修正を必要としない。
図3A及び3Bは、デバイス100のディスプレイ220上に表示される、デスクトップ300におけるユーザインタフェース要素のフォーカス変化を示している。図3Aでは、ウィンドウ310A、310B及び310Cはデスクトップ300上に表示されてユーザから見えるようになる。この実施形態では、デスクトップ300は、ディスプレイ220上のユーザインタフェース要素を取り囲む、オペレーティングシステム245によって管理される汎用のコンテナ又はフレームである。図3A及び3Bでは、ユーザインタフェース要素は、デスクトップコンピューティング環境におけるウィンドウ310である。モバイルデバイス又は領域の制限される他のディスプレイのような他の構成では、1つのユーザインタフェース要素のみが一度に表示されてよい。図3Aに示すように、ウィンドウ310Aは、フロントウィンドウとして示されるアクティブウィンドウであり、部分的にウィンドウ310B及び310Cを覆っている。図3Bでは、フォーカスがウィンドウ310Bに変更され、今はフロントウィンドウであってアクティブウィンドウとなっている。フォーカスは、ウィンドウ310Bとのユーザ相互作用によって、又は、そのウィンドウをアクティブウィンドウにすることを要求するプロセスによって、変更されてよい。あるオペレーティングシステム及び構成では、ユーザインタフェース要素は、フロントのユーザインタフェース要素になること無く、フォーカスを有してよい(すなわち、ユーザ入力を受け取っている)。
再び図2を参照すると、コンテンツアイテムを開くために、ネイティブアプリケーション255はオペレーティングシステム245からコンテンツアイテムを要求し、コンテンツアイテムに対し、コンテンツアイテムへのハンドルをオペレーティングシステム245から受け取る。ある場合には、アプリケーション245はハンドルを維持せずに、ネイティブアプリケーション255がコンテンツアイテムからのデータを使用する場合、又は、ユーザがコンテンツアイテムに対する編集を入力する場合であっても、コンテンツアイテムをメモリにロードし、続いてコンテンツアイテムのハンドルを閉じてもよい。従って、開いたコンテンツアイテムのハンドルは、アプリケーションが特定のコンテンツアイテムと相互作用しているかを判定するためには信頼性の高いものではない。このように、ある実施形態では、ネイティブアプリケーション255によって示される更なる振る舞いが、アプリケーションがコンテンツアイテムを編集しているかを判定するために用いられる。
ネイティブアプリケーション255はまた、ユーザがコンテンツアイテムを修正した場合及びユーザがコンテンツアイテムを保存する前に、様々な振る舞いを実行する。これらの振る舞いはアプリケーション及びオペレーティングシステム245に応じて変化する。例えば、いくつかのネイティブアプリケーション255は、例えば、主要な一時的なコンテンツアイテムのファイル名にチルダ又は他の認識可能なマークを有する、開いているコンテンツアイテムと異なるファイル名を有する一時的なコンテンツアイテムを生成する。他の例では、ネイティブアプリケーション255は、ユーザから直接視認可能である又は視認可能でない、コンテンツアイテムに関連付けられたユーザインタフェース要素のタイトルを変更する。更なる例では、ネイティブアプリケーション255は、コンテンツアイテムが修正されたことを示すフラグを設定する。ネイティブアプリケーション255はまた、他のアプリケーション又はオペレーティングシステム245からの要求に応じて、コンテンツアイテムの修正に関する情報を提供してもよい。例えば、上述したようなOS XオペレーティングシステムにおけるアクセシビリティAPIはユーザインタフェース要素と関連付けられたコンテンツアイテムに関する情報を提供する。開いたコンテンツアイテムのハンドルは、コンテンツアイテムがネイティブアプリケーション255によって編集されているかを判定するための信頼性の高いものではないため、これらの振る舞いは、コンテンツアイテムを編集している又は修正していることに関するプレゼンスを判定するために、更に後に説明されるように、プレゼンス管理モジュールによって使用される。
ネイティブアプリケーション255は典型的に、他とは独立にデバイス100内で実行され、アプリケーションと、他のアプリケーション又はデバイス100上で実行するプロセスとの間の通信を可能にし得る。ネイティブアプリケーション255は典型的に、アプリケーションが実行しているプロセスから情報を要求することを可能にする、アプリケーションプログラミングインタフェース(API)を用いてプロセスに情報を提供する。例えば、ネイティブアプリケーション255は、アプリケーションによって制御されるユーザインタフェース要素に対する要求を可能にする、又は、ユーザインタフェース要素のタイトルを示すため又はネイティブアプリケーション255によって開かれたコンテンツアイテムに関連付けられたファイルシステム内のパスを要求するための、APIを公開してよい。同様に、オペレーティングシステム245は、特定のユーザインタフェース要素を制御するプロセスについての情報を要求するような、要求処理のための類似のAPIを提供してもよい。
クライアントアプリケーション200は、コンテンツ管理システム110へのアクセスを制御する。クライアントアプリケーション200は、以下で様々に示されるように、クライアントアプリケーション200によってアクセスされるコンテンツへのインタフェースを生成する、ユーザインタフェースモジュール202を含み、この機能を実行する1つの手段である。生成されたインタフェースはディスプレイ220によってユーザへ提供される。クライアントアプリケーション200は、コンテンツ管理システム110のコンテンツストレージからアクセスされたコンテンツを、ローカルのコンテンツデータストア208に格納してもよい。ここではクライアントアプリケーション200内のものとして示されるが、ローカルコンテンツデータストア208は、不揮発性ストレージ内にクライアントデバイス100のための他のデータと共に格納されてもよい。ローカルのコンテンツデータストア208がこのように格納される場合、コンテンツは、クライアントアプリケーション200がコンテンツ管理システム110と通信中でないときに、ユーザ及びネイティブアプリケーション255のような他のアプリケーション又はモジュールに利用可能である。コンテンツアクセスモジュール206は、ローカルのコンテンツデータストア208への更新を管理し、クライアントデバイス100によって修正されたコンテンツをコンテンツ管理システム110上に維持されるコンテンツと同期するために、同期ロジックを用いてコンテンツ管理システム110と通信する。このような同期の1つの例は2013年9月27日に出願された米国特許出願第14/040,584号において提供されており、参照によってその全体がここに取り込まれる。クライアントアプリケーション200は、スタンドアローンのアプリケーション、アプリケーションプラグイン、又はブラウザ拡張などの様々な形式をとってよい。
コンテンツ管理システム110は、コンテンツアイテムが削除されたことを示す情報、又はデバイス100がコンテンツアイテムの期限切れのバージョンを閲覧又は編集しているであろうことを示す情報などの、コンテンツアイテムを同期するための追加的なデータを提供してもよい。
相互作用管理モジュール204は、ユーザの同期されたコンテンツアイテムに関連する相互作用情報を取得し管理する。上述したように、相互作用管理モジュール204は典型的に、プレゼンス情報のために相互作用管理モジュール204によって監視されているネイティブアプリケーション255とは別のモジュールであり、別のプロセスとして動作する。相互作用管理モジュール204は、デバイス100に同期されたコンテンツアイテムに関する決定された相互作用情報を、コンテンツ管理システム110に送信する。相互作用管理モジュール204はまた、コンテンツ管理システム110から、他のユーザに関する相互作用情報をユーザに表示するために受信する。後に更に説明するように、ある実施形態では、相互作用管理モジュール204は、同期されたコンテンツアイテムに関連付けられたユーザインタフェース要素にプレゼンスインジケータを付加することによって、他のユーザに関するプレゼンス情報を表示する。更に、相互作用情報は、プレゼンスインジケータとも表示される。
後に更に説明するように、相互作用情報の多くの種別を判定するため、相互作用管理モジュール204は、ユーザインタフェース要素を通して相互作用情報を受信する。同期コンテンツアイテムと関連するプレゼンス情報を判定するため、相互作用管理モジュール204は、ネイティブアプリケーション255に関連付けられたユーザインタフェース要素を監視する。相互作用管理モジュール204は、全てのユーザインタフェース要素を監視すること、或いは、代替的にユーザインタフェース要素がコンテンツアイテムと関連付けられた後に特定のユーザインタフェース要素についてのみ監視することができる。監視プレゼンスデータストア210は、同期されたコンテンツアイテムに関連する動作を判定するために特定のユーザインタフェース要素が監視されていることを示す、相互作用管理モジュール204によって維持される情報を含む。
ここではクライアントアプリケーション200の一部として示すが、様々な実施形態では、コンテンツアクセスモジュール206及び相互作用管理モジュール204は、それぞれの機能を実行するための別々のモジュールに分けられている。同様に、様々なモジュール及びデータストアは便宜のために本開示を通して別々に説明され、様々な実施形態において、所望に統合され又は更に別々の構成要素に分けられる。
図4は、ある実施に従う、コンテンツアイテムに関連付けられたプレゼンス情報を判定する例示的処理を示す。この処理は典型的には相互作用管理モジュール204によって実行される。ユーザインタフェース要素がコンテンツアイテムに関連付けられた後にのみ監視される場合において、相互作用管理モジュール204は、ユーザインタフェース要素を監視するかを判定するために、コンテンツアイテムがアプリケーション又はユーザインタフェース要素によって開かれていることを示すイベントを用いる。これは、コンテンツアイテムをユーザインタフェース要素に関連付けるかもしれないイベントの一例であり、監視イベントと呼ばれる。他の実施形態では、監視するユーザインタフェース要素の選択は、他の方法で決定され、又は、全てのユーザインタフェース要素が監視される。この場合、相互作用管理モジュール204は監視イベントを使用しなくてもよい。他の実施形態では、監視イベントはコンテンツアイテムを保存する処理を含む。
オペレーティングシステム245によって利用可能にされた場合、相互作用管理モジュール204は、特定のアプリケーションのための監視イベントを受信するために、オペレーティングシステム245に登録してもよい。これらの実施形態では、オペレーティングシステム245は、オペレーティングシステム245がコンテンツアイテムを開く又は保存する要求を受信した場合に、相互作用管理モジュール204に通知する。この実施形態では、相互作用管理モジュール204は、ウィンドウ又は他のユーザインタフェース要素がコンテンツアイテムと相互作用することを示す監視イベント400を受信し、このコンテンツアイテムは、同期されたコンテンツアイテムであってよい(すなわち、プロセスは特定のユーザインタフェース要素においてコンテンツアイテムと相互作用する)。監視イベントは監視イベントをトリガしたユーザインタフェース要素を少なくとも示す。他の実施形態では、相互作用管理モジュール204は、時々(例えば5分インターバルで)ユーザインタフェース要素に関連付けられたイベントを監視し、ユーザインタフェース要素が任意の開かれているコンテンツアイテムと関連付けられているかを問い合わせる。オペレーティングシステム245とネイティブアプリケーション255の構成に従って、この問い合せは、オペレーティングシステム245又はネイティブアプリケーション255に向けられてよい。ユーザインタフェース要素が新たに開かれたコンテンツアイテムを含む場合、その新たに開かれたコンテンツアイテムは、新たに開かれたコンテンツアイテムがコンテンツ管理システム110と同期されたコンテンツアイテムであるかを判定するために監視イベントとして扱われ、そして、そのプレゼンス情報は新たに開かれたコンテンツアイテムに対して判定されなければならない。
監視イベントが受信された場合、相互作用管理モジュール204は、どのプロセスが、監視イベントに関連付けられたユーザインタフェース要素に対する責務を負うかを410において判定する。相互作用管理モジュール204は典型的に、オペレーティングシステム245からユーザインタフェース要素に関連付けられたプロセスIDを要求することによってプロセスを判定する。いくつかの実施形態では、相互作用管理モジュール204は、ユーザインタフェース要素自身からプロセスの識別子を要求することによって、プロセスを識別する。
プロセスとユーザインタフェース要素とが互いに正しく関連付けられていること、及び、ユーザインタフェース要素が依然としてアクティブであることを確認するために、相互作用管理モジュール204は、プロセスから現在アクティブなユーザインタフェース要素の識別を要求してもよい。相互作用管理モジュール204は、プロセスから受信した現在アクティブなユーザインタフェース要素が、監視イベントと関連付けられたユーザインタフェース要素と一致することを確認する。
プロセスの識別子を用いて、相互作用管理モジュール204は、コンテンツアイテムに対する関連付けられたディレクトリパスを取得するために、プロセスから任意の開いているコンテンツアイテムを420において要求する。相互作用管理モジュール204は、監視イベントに関連付けられたユーザインタフェース要素に、開かれているコンテンツアイテムのパスに対する要求を結びつける。相互作用管理モジュール204は、プロセス又はオペレーティングシステムへの利用可能なインタフェースを用いて、プロセス又はオペレーティングシステムから開いているアイテムを要求する。ある例として、OS Xオペレーティングシステムでは、既知であるように、コンテンツアイテムとユーザインタフェース要素に対するコンテンツアイテムパスとに関連付けられた情報にアクセスするためにアクセシビリティAPIが用いられる。プロセスによって提供されるコンテンツアイテムパスを用いて、相互作用管理モジュール204は、開かれたコンテンツアイテムパスが任意の同期されたコンテンツアイテムに対応するかを判定する。そうであれば、相互作用管理モジュール204は、プロセスによってアクセスされるコンテンツアイテムがコンテンツ管理システム110に同期されたコンテンツアイテムであると判定し、当該プロセスとユーザインタフェース要素とをコンテンツアイテムに関連付ける。他の実施形態では、プロセスによってアクセスされるコンテンツアイテムが同期されたコンテンツアイテムであるかどうかを判定するために他の方法が用いられてもよい。
コンテンツアイテムが、コンテンツ管理システム110に430において同期される場合、相互作用管理モジュール204は、イベントに対するユーザインタフェース要素を440において監視するために、コンテンツアイテム、プロセス及びユーザインタフェース要素に関連する情報を格納する。監視イベントの関連付けられたコンテンツアイテムが同期されていない場合、プロセスは、図6において更に詳細化され図7A−7Dに示されるように、ユーザに同期インタフェースを表示することによって継続してもよい。この監視情報は、監視プレゼンスデータストア210に格納される。監視し、その後ユーザインタフェース要素に関連するプレゼンスイベントを受信するために、相互作用管理モジュール204は、ユーザインタフェース要素に関連付けられたイベントを受信するために登録する。相互作用管理モジュール204による登録処理は、デバイス100の構成に従って変わる。典型的には相互作用管理モジュール204は、オペレーティングシステム245から、又は、利用可能なプロセス又はユーザインタフェース要素からのプレゼンスイベントを受信するための要求を登録する。監視イベントは、ユーザインタフェース要素又はプロセスが同期したコンテンツアイテムと相互作用するかが判定される一方、プレゼンス情報は、コンテンツアイテムに関連付けられたユーザインタフェース要素又はプロセスに関連する、ユーザのプレゼンスの状態を示し得るイベントである。例示のプレゼンスイベントは、相互作用管理モジュール204によって認識されるプレゼンスの種別に基づく、ユーザインタフェース要素のフォーカスの変化、ユーザインタフェース要素を閉じること、コンテンツアイテムを閉じること、コンテンツアイテムを開くこと等を含む。様々な実施形態では、相互作用管理モジュール204によって使用されるプレゼンスイベントは、オペレーティングシステム245及びネイティブアプリケーション255が相互作用管理モジュール204による受信のために利用可能にしているイベントに基づく。
プレゼンスイベントは、プレゼンスイベントが関連するコンテンツアイテムと関連付けられたプレゼンス情報を判定するために用いられる。例えば、コンテンツアイテムに関連付けられるユーザインタフェース要素がフォーカスを有することを示すプレゼンスイベントは、ユーザがコンテンツアイテムを閲覧していることを示し、従って、当該コンテンツアイテムに対するプレゼンス情報は、その状態を示す。同様に、コンテンツアイテムに関連付けられていないユーザインタフェース要素がフォーカスを得たことを示すプレゼンスイベントは、以前にフォーカスされたユーザインタフェース要素に関連付けられたコンテンツアイテムがフォーカスを失ったことを示し、従って、ユーザがもはや当該コンテンツアイテムを閲覧していないことを示す。従って、プレゼンス情報はプレゼンスイベントそのものの基礎となるセマンティック解釈のレベルを提供する。
相互作用管理モジュール204が登録したプレゼンス情報を受信することに加えて、プレゼンス情報はまた、監視されるユーザインタフェース要素に対してプレゼンス情報が変化していないことを確認するために、相互作用管理モジュール204によって開始されてよい。これらのプレゼンスイベントは、閾値の時間が特定のユーザインタフェース要素又はプロセスに対する最後のプレゼンスイベントから経過した場合、又は特定のインターバル、例えば5分を経過した場合に開始されてもよい。
イベントに対する登録に加えて、相互作用管理モジュール204は他の方法によって相互作用イベントを受信してもよい。ある実施形態では、ユーザは、ユーザインタフェース要素を通じて相互作用情報を明示的に示してもよい。ユーザインタフェース要素は、例えば、特定の意図を表すメニューアイテム又はアイコンを選択することによって、例えばユーザがコンテンツアイテムの更新を意図することを示して、コンテンツアイテムを編集している又は閲覧している他のユーザにその意図を示すことができるように構成され得る。ユーザインタフェース要素は、もはやコンテンツアイテムを閲覧しない或いは現在又は将来にコンテンツアイテムがユーザに提示されないことを明示するような、ユーザの他の意図をユーザが示すことができるようにも構成され得る。他のユーザは、コンテンツアイテムを自由に編集できることを知るために、そのような「提示しない」意図を用いてもよい。ユーザ入力の相互作用イベントはまた、例えばデバイス上でコンテンツアイテムを現在閲覧している他のユーザへメッセージを送信する、コンテンツアイテムに関連付けられた他のユーザに広めるためのメッセージ又はチャット機能を含んでよい。
プレゼンス情報が450において受信された場合、相互作用管理モジュール204は、任意のプレゼンス情報が監視ユーザインタフェース要素に関連する最後のプレゼンスイベントから変更されたかを判定する。ユーザが開始させる相互作用情報に対して、相互作用情報は、例えば、ユーザがコンテンツアイテム又はユーザのチャットメッセージを修正する意図することを示す、ユーザインタフェース要素のユーザの選択のような、ユーザによって提供される情報であってもよい。プレゼンスイベントに対し、相互作用管理モジュール204は、監視されるユーザインタフェース要素の状態を判定するために、監視プロセスに問い合わせる。特に、相互作用管理モジュール204は、監視されるユーザインタフェース要素がアクティブなユーザインタフェース要素であるかを判定するために、プロセスに問い合わせる。監視されるユーザインタフェース要素がアクティブなユーザインタフェース要素である場合、コンテンツアイテムはユーザによって閲覧されている。
いくつかの実施形態では、コンテンツアイテムに関するユーザプレゼンスを検出することに加えて、相互作用管理モジュール204はまた、コンテンツアイテムがユーザによって修正されている又は修正されたかを判定する。この更なる側面は、例えば、ユーザがコンテンツアイテムに関して閲覧者よりむしろ編集者としてプレゼンスを有することを示す表示を用いて、プレゼンス情報がより細かくレポートされるようにすることができる。上述したように、コンテンツアイテムが修正されている際にアプリケーションによって実行される特定のアクションは変化するため、相互作用管理モジュール204によってこれらのアクションのうちの1つを検出することは、プロセスがコンテンツアイテムを編集したことを示す。例えば、コンテンツアイテムが編集されている際にプロセスによって予期されるアクションの種別に従って、相互作用管理モジュール204は、コンテンツアイテムに修正されたことのフラグが立っていることをプロセスが示しているか、ユーザインタフェース要素のタイトル情報が変化したか、一時ファイルが保存され又はキャッシュされたか、又は、任意の他のデータが修正されたことを示唆するか、を判定するために、プロセスに問い合わせてよい。相互作用管理モジュール204はまた、例えば、コンテンツアイテムに類似したファイル名を有するコンテンツアイテムであるが、チルダ又は他の特殊なファイル名のバリエーションを有する、一時的なコンテンツアイテムの形式と一致するコンテンツアイテムが保存されたかを判定するために、オペレーティングシステムに問い合わせてもよい。このような修正は、コンテンツアイテムに関連付けられたプレゼンス情報が、ユーザがコンテンツアイテムを編集していることを反映しなければならないことを表す。
プレゼンス情報の460における判定の後には、ユーザインタフェース要素に対する任意の新たなプレゼンス情報が監視プレゼンスデータストアとして格納されてよい。ある実施形態におけるこのプレゼンス情報は、1のプロセスによって複数のユーザインタフェース要素が同一のコンテンツアイテムと関連付けられ、そして、個別に管理されるプレゼンス情報を有してもよいように、ユーザインタフェース要素ごとの原則で格納される。ある実施形態では、プレゼンス情報は現在のプレゼンス状態に応じて変化してもよい。例えば、コンテンツアイテムに対するプレゼンス情報が、コンテンツアイテムが編集されていることを反映する場合、ある実施形態では、ユーザが他のユーザインタフェース要素にフォーカスを変更したときに、ユーザインタフェース要素内のコンテンツアイテムのプレゼンスは変更されない。代わりに、編集された状態は、プレゼンスイベントがユーザインタフェース要素が閉じていることを示すまで、ユーザインタフェース要素に関して維持される。他の実施形態では、編集はコンテンツアイテムに変更を導入する可能性があるため、ある実施形態では、編集されたドキュメントに対するプレゼンス情報は、コンテンツアイテムへの変更がコミットされた又は修正が破棄されたといういずれかの通知をインタラクション管理モジュール204が受信するまで、変更されない。
閲覧されていることを示すプレゼンス情報を有するコンテンツアイテムは、ユーザインタフェース要素がフォーカスを失ったとき、又はフォーカスを失う閾値期間内にその状態変化を有してもよい。これは、コンテンツアイテムに関連付けられたユーザインタフェース要素がまだ開いている場合であってもよい。ある実施形態では、「閲覧された」プレゼンス情報は、コンテンツアイテムがアクティブなユーザインタフェース要素に関連付けられているかどうかを示す。ある実施形態では、「閲覧された」プレゼンス情報は、ユーザインタフェース要素が時間の閾値より長い間アクティブでなくなる(またはフォーカスを失ったとき)まで保持される。ある実施形態では、コンテンツアイテムがアプリケーションによって開かれている間には、コンテンツアイテムは「閲覧された」とみなされる。
相互作用情報に変化がある場合、相互作用管理モジュール204は、相互作用情報をコンテンツ管理システム110に送信する。ある実施形態では、送信されたプレゼンス情報は、コンテンツアイテムの識別子、プロセスID、ユーザインタフェース要素ID、及びプレゼンス状態を含む。
図5A−5Bは、相互作用情報を表示する例示的ユーザインタフェースを示す。様々なユーザインタフェース要素は、図3Aおよび3Bに示したインタフェース要素と類似する。図5Aでは、例示的ユーザインタフェースはプレゼンス情報を表示する。プレゼンス情報を表示するために、相互作用管理モジュール204は、コンテンツアイテムに関連付けられたウィンドウの縁または境界に沿ってプレゼンスインジケータ500を提供する。この例では、相互作用管理モジュール204は、ユーザJeffがコンテンツアイテム2を編集しており、4人のユーザがコンテンツアイテム2を閲覧していることを示すプレゼンス情報を受信する。相互作用管理モジュール204は、Jeffが文書を編集中であることを示すプレゼンスインジケータ500Aと、ユーザが文書を閲覧していることを示すプレゼンスインジケータ500Bとを表示する。ある実施形態では、プレゼンスインジケータ500は、プレゼンスインジケータに関連付けられたユーザのアイコン又は写真を表示する。アイコン又は写真は、連絡先ディレクトリ240から相互作用管理モジュール204によって取得されてもよいし、コンテンツ管理システム110から受信されてもよい。プレゼンスインジケータによって表示される個々のユーザは、実施形態に応じて変化してもよく、例えば、特定のプレゼンスを有する第1のユーザ(例えば、第1の閲覧者)又は最近コンテンツアイテムを開いたユーザを表示してもよい。
プレゼンスインジケータ500は、コンテンツアイテムに関連付けられたウィンドウに沿って表示され、ある実施形態では、相互作用管理モジュール204は、ウィンドウの位置を追跡し、ウィンドウの近傍または隣接して、例えば、ウィンドウの境界又は縁のそばにプレゼンスインジケータ500を表示する。補足プレゼンスインジケータ510は、ユーザがプレゼンスインジケータ500上で停止する場合にユーザに更なる情報またはインタフェースを提供するために現れてよい。図5に示す例では、補足プレゼンスインジケータ510は、プレゼンスインジケータ500Aを記述し、具体的にはJeffはコンテンツアイテム2を編集することのプレゼンスに関連付けられて記述される。補足プレゼンスインジケータ510は、新しいユーザが例えば文書を閲覧しているか編集していることを示すために、プレゼンスが変化したときにも現れてよい。
プレゼンスインジケータ500及び補足プレゼンスインジケータ510は、ディスプレイ220の任意の都合のよい領域に配置されてよい。ある実施形態では、プレゼンスインジケータは、プレゼンスインジケータと特定のコンテンツアイテムとの間の関係をユーザに視覚的に示すように、コンテンツアイテムの関連するユーザインタフェース要素の近傍に表示される。更に、ウィンドウの境界又は縁に沿ったプレゼンスインジケータの表示は、ユーザがプレゼンスインジケータに気付く可能性を増加させる。ある実施形態では、プレゼンスインジケータ500は、コンテンツアイテムを含むウィンドウの垂直エッジ上又はそのそば(例えば、図5Aに示すような右端)に表示される。
代替的に、プレゼンスインジケータは、タスクバー又はトレイアイコンのようなディスプレイの別の領域に表示されてもよく、或いは、コンテンツアイテムのユーザインタフェース要素と相互作用しない別個のユーザインタフェース要素であってもよい。ここでは、プレゼンスの各種別(編集または閲覧)に対する1つのプレゼンスインジケータ500として示されるが、任意の数のプレゼンスインジケータ500がコンテンツアイテムに関連して表示されてよい。例えば、循環インジケータは、コンテンツアイテムを閲覧しているユーザの数を含んでよく、他の循環インジケータは、コンテンツアイテムを編集しているユーザの数を含んでよい。代替的に、複数のプレゼンスインジケータ500が表示される場合、これらは、上から下に順序付けられてもよく、順序は、最新から最も古いもの、又は最も高い優先度から最も低い優先度、又はこれらの組み合わせ(例えば、優先順に並べられ、同じ優先順位のプレゼンスインジケータについては、最新の順に並べられる)。プレゼンスインジケータは、図示するように、他のユーザに関連付けられたアイコン又は写真も示してもよい。インジケータはまた、ユーザが他のユーザによる編集に影響を及ぼすリスクを示すために色分けされていてもよい。例えば、プレゼンスインジケータは、他のユーザが編集している場合には赤色(またはプレゼンスインジケータが赤色に変わってもよい)であってもよく、これはユーザにそのユーザの変更を伴う任意の所望の変更を調整するように示している。同様に、編集インジケータは、他のユーザがコンテンツアイテムを閲覧している場合には黄色であってよく、現在のユーザがコンテンツアイテムを閲覧する唯一のユーザである場合には緑色であってよい。
図5Bは、ユーザが相互作用情報を相互作用管理モジュール204に入力することができるユーザインタフェースを示している。このインタフェースは、更なるユーザインタフェース要素に加えて、プレゼンスインジケータ500を含む。このインタフェースは、図5Aの例の代わりに提示されてもよく、又はコンテンツアイテムに関する追加のデータを提供する補足プレゼンスインジケータとして提示されてもよい。
図5Bのユーザインタフェースは、通知要素520を提供し、プレゼンスの変化が他のユーザに関連して発生した場合に通知されることについてのユーザの希望を、ユーザが示すことができるようにする。通知要素520を選択した場合、ユーザは、特定のユーザのプレゼンスが変化した場合(例えば、Jeffがもはや編集中でない)に、全てのユーザが特定のプレゼンスを停止した(例えば、誰も編集していない)、又はユーザがアクティブなプレゼンスを有していない(例えば他のだれもコンテンツ2にアクセスしていない)ことが通知されるように、更に特定の通知オプションを選択してよい。ユーザの通知プリファレンスは、要求されたプレゼンスが変化した場合に通知を要求するように、コンテンツ管理システム110又は適用可能なユーザに送信される。
インタフェースはまた、ユーザがコンテンツアイテムを開いている他のユーザとのコラボレーションセッションを開始することができるようにする、コラボレーション要素570を提供する。コラボレーション要素570を選択した場合、ユーザは特定のコラボレーションオプションを更に選択してもよい。例えば、コラボレーションセッションに含めるユーザを選択し、編集コントロールを用いてコラボレーションするかどうかを選択する。
このインタフェースはまた、ユーザがコンテンツアイテムに現れる他のユーザと通信するためのチャットインタフェースを提供する。チャットインタフェースは、ユーザが他のユーザにメッセージを入力したり受信したりすることを可能にする。プレゼンスの変化は、例えば、Amandaが現在コンテンツアイテムを閲覧していることがチャットウィンドウにも表示される。チャットウィンドウは、ユーザがアイテムの編集を終了しそうな場合のような、ユーザがそのコンテンツアイテムに関する情報を具体的に議論することができるようにし得る。これらのチャットメッセージは、相互作用情報として相互作用管理モジュール204によって受信され、コンテンツアイテムに同期される他のクライアントに送信される。ネイティブアプリケーションがチャット機能を提供しない場合であっても、これにより、ユーザはコンテンツアイテムについて直接チャットすることができるようになる。
ノートユーザインタフェース540は、コンテンツアイテムに関して格納されたノートをユーザが検索し、入力できるようにする。ノートインタフェース540が選択された場合、相互作用管理モジュール204は、コンテンツアイテムに関するコンテンツ管理システム110からの任意のノート又は他の永続的な情報を要求し、他の同期されるデバイス及びコンテンツ管理システム110に送信される追加のノートを入力するためのインタフェースとともに、ユーザに任意のそのようなノートを表示する。チャットウィンドウのように、これにより、コンテンツアイテムに対して入力される追加的なノート、及びノート機能をネイティブでは提供し得ないユーザインタフェースを提供するアプリケーションが可能になる。ノート要素540は、コンテンツアイテム内に他のユーザが存在しない場合にも使用され、コンテンツアイテムについて他のユーザのためにメッセージを残すために使用されてもよい。
コンテンツデータ要素550により、ユーザは、任意の関連するメタデータ、ユーザ許可などのような、コンテンツアイテムについての追加データを要求できるようになる。これにより、ユーザは、コンテンツアイテムに関連付けられたユーザインタフェース要素の近くのインタフェースから直接的に、コンテンツ管理システムからのコンテンツアイテムの詳細を要求できるようになる。
同様に、バージョン要素560はバージョン情報のための要求を示す。相互作用管理モジュール204は、バージョン情報に対する要求を、コンテンツアイテムに関連する相互作用情報としてコンテンツ管理システム110に送信する。これに応じて、コンテンツ管理システム110は、コンテンツアイテムに対する関連バージョン情報を識別する。ある実施形態では、以前のバージョンは、ユーザインタフェース要素内に表示されるコンテンツアイテムのバージョンと並んで比較される。他の実施形態では、以前のバージョンは、ユーザインタフェース要素において列状に比較される。
図5Cは、他のコンテンツアイテムに関連するプレゼンスの変化について、ユーザに通知するユーザインタフェースを示す。この場合、ユーザJeffがコンテンツアイテム2の編集を終了した場合に、通知要素520を使用して、ユーザは以前に選択したものが通知されるようにする。通知を要求した後には、ユーザは、コンテンツアイテム2に関連するウィンドウ310Bを閉じるように進み、現在コンテンツアイテム1を閲覧している。この実施形態では、プレゼンスインジケータ500Eは、ユーザがこのコンテンツアイテムに関するプレゼンスを有する唯一のユーザであることを示す。これは、図示されているように、明示的に表示されてもよい(「誰もこのファイルを見ていない」)し、又は、ユーザがプレゼンスインジケータ500Eと相互作用する場合に提供されてもよい。相互作用管理モジュール204は、Jeffがコンテンツアイテム2の編集を終了したことの通知を受信する。通知590がユーザに対して表示される。この通知は、ユーザが、通知が関係するコンテンツアイテム以外の別のアプリケーションまたは別のコンテンツアイテムと相互作用している場合であっても提供される。
図5Dは、ユーザがコンテンツアイテムが修正されたという通知を受信するユーザインタフェースを示す。この例では、ユーザによって閲覧されたコンテンツアイテム2の新たなバージョンが、別のユーザであるJeffによって保存されている。相互作用管理モジュール204は、コンテンツ管理システム110から、コンテンツアイテム2が変更され、新しいバージョンが利用可能であることを示すメッセージを受信する。典型的に、ユーザの編集は、コンテンツ管理システム110によって維持されたバージョンでは古くなるため、ユーザが、コンテンツ管理システム110にユーザの編集を同期させようとする場合には、ユーザの編集が失われるかもしれない。ユーザがコンテンツアイテムを編集中であることを示すプレゼンス情報を用いて、ユーザがJeffからの任意の編集をユーザの編集へ組み込むことを支援する選択肢を提供することができる。バージョン通知580は、新しいバージョンに応じてなされる選択と共に、ユーザに提示される。この例では、ユーザは新しいバージョンをロードしたり、ユーザの編集を破棄したり、ユーザの編集を新しいファイルとして保存したりしてよい。ユーザに利用可能な特定の選択肢は、以下で更に説明するように、デバイスのプレゼンス100についてのコンテンツ管理システム110の記録に基づいて、コンテンツ管理システム110によって提供されてもよい。他の実施形態では、相互作用管理モジュール204は、ユーザに対する表示のためのオプションを決定する。
相互作用管理モジュール204がウィンドウ310Bのネイティブアプリケーション255とは別のアプリケーションである実施形態では、プレゼンスインジケータ500は相互作用管理モジュール204によって提供される。従って、相互作用管理モジュール204は、アプリケーションに関連付けられたプレゼンス情報を監視し、アプリケーションに関連付けられたコンテンツアイテムについて他のユーザに関するプレゼンス情報を表示する。他のウィンドウがアクティブになった場合、同一の相互作用管理モジュール204が、アクティブになったウィンドウに関するプレゼンス情報を表示する。
プレゼンスインジケータを表示するために、相互作用管理モジュール204は、典型的にはコンテンツ管理システム110から、他のデバイスに対するプレゼンス情報を受信する。相互作用管理モジュール204は、同期されたコンテンツアイテムがウィンドウ又はプロセスによって使用されていること、及びウィンドウがユーザに表示されていることを判定する。例えば、相互作用管理モジュール204は、上述のように監視されているウィンドウ又はプロセスからプレゼンスイベントを受信してもよい。プレゼンスイベントがウィンドウにフォーカスがあることを示す場合、相互作用管理モジュール204はプレゼンスインジケータをディスプレイに追加する。ある実施形態における相互作用管理モジュール204はまた、デスクトップ内のウィンドウの動きを追跡し、ウィンドウに対するプレゼンスインジケータの位置を維持するように、プレゼンスインジケータを移動させる。
ある実施形態では、プレゼンスインジケータをディスプレイに追加するために、相互作用管理モジュール204は、フォーカスされるウィンドウとその境界の位置を決定し、ウィンドウ境界に隣接するプレゼンスインジケータを追加する。相互作用管理モジュール104がフォーカスされるウィンドウが変化したことを識別した場合には、そのコンテンツアイテムのプレゼンスインジケータはまた、そのウィンドウが再びフォーカスされるまで除去されてもよい。
再び図5Bを参照すると、ある実施形態では、少なくとも2つのデバイス上のネイティブアプリケーションで閲覧又は編集するために開いているコンテンツアイテムに関連して、コラボレーション要素570が表示される。閲覧している又は編集しているユーザは、コラボレーション要素570を介してコラボレーションを開始してもよい。コラボレーションの間には、あるデバイスはプライマリデバイスの役割を担い、他のデバイスはセカンダリデバイスとなる。プライマリデバイスは、コラボレーションが発生するコンテンツアイテムのインスタンスを有するデバイスである。従って、セカンダリデバイスは、プライマリデバイス上に置かれるコンテンツアイテムのインスタンスに関して閲覧及び編集機能を提供する。所定のコラボレーションセッションには複数のセカンダリデバイスが存在してもよいが、プライマリデバイスは1つのみである。
コラボレーションの前に、コンテンツアイテムのインスタンスは、どれがセカンダリデバイスになるかを閲覧又は編集するために開かれてよい。ある実施形態では、コラボレーション要素570は、ユーザのうちの1人、例えば要求するユーザに、どのデバイスがコラボレーションセッションのプライマリデバイスになるかを選択するように促す。他の実施形態では、プライマリデバイスはコラボレーションモジュール207によって選択される。例えば、あるユーザが編集のために開いたコンテンツアイテムを有するとともに、他のユーザが閲覧のためにアイテムを開いている場合、コラボレーションモジュール207は、アイテムが編集されているデバイスをプライマリとして指定する。
図6は、コンテンツアイテムを共有フォルダに追加する例示的処理を示す。図4に関して説明したように、図6は、コンテンツ管理システムに同期されていないコンテンツアイテムに対する監視イベントが受信された場合の処理を継続する。図6に示す処理は、クライアントアプリケーション200によって実行されてよい。この例では、監視イベントは、ネイティブアプリケーションのウィンドウまたは他のユーザインターフェイス要素に関連付けられたプロセスによって開かれた又は保存されたコンテンツアイテムであってよい。いくつかの例では、同期インタフェースは、共有フォルダと同期していないネイティブアプリケーションの任意のコンテンツアイテムについて表示される。他の例では、同期インタフェースは、保存後の5秒又は10秒などの、コンテンツアイテムが保存される時間の閾値の後に表示される。同期インタフェースは、ネイティブアプリケーションのウィンドウに隣接して又は近傍に600において表示され、ウィンドウの一部と重複してもよい。同期インタフェースのための例示的ユーザインタフェースを図7A−図7Dに示している。同期インタフェースは、ユーザが、コンテンツ管理システム100、又は、1以上の他のクライアントデバイス100と同期した共有フォルダにコンテンツアイテムを追加する要求を示すことを可能にする。次に、ユーザは、コンテンツアイテムを共有フォルダに追加する要求を提供してよく、これはクライアントアプリケーション200によって600において受信される。
コンテンツアイテムを共有フォルダに保存するために、クライアントアプリケーション200は、コンテンツアイテムのための対象の共有フォルダを620において決定する。すなわち、クライアントアプリケーションは、コンテンツ管理システム100又は他のクライアントデバイス110と同期するローカルのコンテンツデータストア208内の特定の共有フォルダ又は他の場所又はコレクションなどの、コンテンツアイテムを保存する場所を決定する。ある実施形態では、同期インタフェースは、ユーザがコンテンツアイテムを格納するためにローカルコンテンツデータストア208内の場所を選択するためのファイルブラウザインタフェースを表示する。代替的に、対象の共有フォルダは、同期されるコンテンツアイテムのためのディレクトリツリーのルート又は他の自動的に選択された場所など、自動的に選択されてもよい。
ユーザが共有フォルダにコンテンツアイテムを追加することを要求する場合、コンテンツアイテムはネイティブアプリケーションによってアクセスされ、ネイティブアプリケーションはコンテンツアイテムへのハンドル又は他のファイルアクセス連携を有し得る。コンテンツアイテムを対象の共有フォルダに移動するために、クライアントアプリケーション200は、630においてコンテンツアイテムを対象の共有フォルダに保存するようにプロセスに指示する。プロセスへの指示は、例えばアプリケーションプログラミングインタフェースを介して提供されてよく、コンテンツアイテムのウィンドウと共有フォルダのパスを特定してよい。他の例では、コンテンツアイテムを保存するようにプロセスに指示するよりむしろ、クライアントアプリケーション200は、その既存の場所でコンテンツアイテムを閉じるようにプロセスに指示する。クライアントアプリケーション200は、コンテンツアイテムを既存の場所から対象の共有フォルダにコピーし、対象の共有フォルダでコンテンツアイテムを開くようにプロセスに指示する。このようにしてコンテンツアイテムを共有フォルダに移動することにより、コンテンツアイテムはネイティブアプリケーションにおいてユーザから引き続き使用され、コンテンツアイテムは、ネイティブアプリケーションにおけるコンテンツアイテムの通常の使用を中断することなくシームレスに共有フォルダに追加され得る。
コンテンツアイテムが対象の共有フォルダに保存される場合、コンテンツアイテムのコピーは、依然としてコンテンツアイテムの前の場所に格納されていてもよい。クライアントアプリケーションは、コンテンツアイテムのコピーを削除してもよく、又、コンテンツアイテムのコピーを前の場所に残しておいてもよい。
コンテンツアイテムが対象の共有フォルダに保存される場合、コンテンツアイテムは、その共有フォルダを同期するクライアントデバイス110及びコンテンツ管理システム100などの他のシステムと640において同期される。コンテンツアイテムが同期されている間には、同期インタフェースは、コンテンツアイテムが同期されていることを示すために650において更新される。同期が完了すると、同期インタフェースは、コンテンツアイテムが成功裏に同期されたことを示すために再び更新されてもよい。この時点では、コンテンツアイテムに対する他のユーザとのプレゼンス情報の共有、他のユーザとのコンテンツアイテムの共有、同期されたコンテンツアイテムの他の使用など、同期に関するコンテンツアイテムとの相互作用のための追加オプションが利用可能であってよい。コンテンツアイテムに対する追加的なプレゼンスのアクションを実行するため、ウィンドウイベントは、図4に関して説明したように、660において続いて監視され得る。
図7A−図7Dは、共有フォルダに追加されたコンテンツアイテムを表示する例示的ユーザインタフェースを示す。これらのユーザインタフェースは、例えば、ユーザインタフェースモジュール202によって生成され、これを行うための1つの手段である。この例では、ウィンドウ700は、コンテンツアイテム、ここでは「コンテンツアイテム7」、を表示する。このコンテンツアイテムは共有フォルダと同期されておらず、上述したように、同期インタフェース710がウィンドウ700の近くに表示される。この例では、同期インタフェース710は、この例ではウィンドウの側部に沿って示されているが、いくつかの実施形態ではウィンドウ700と重複しない、或いはウィンドウの側部に沿ってドッキングしてもよい。ユーザインタフェースモジュール202は、同期インタフェース710をウィンドウ700の相対的な位置に置くために、ウィンドウ700の位置を監視してもよい。
図7Aに示す例では、同期インタフェース710は、コンテンツアイテムが共有フォルダの一部ではないことを示すアイコンを表示する。この例では、同期インタフェース710は、コンテンツアイテムが共有されていないことを表すためのグレーアウトアイコンを表示するが、他のアイコンまたは表示を用いてもよい。
ユーザが同期インタフェース710と相互作用する場合、図7Bに示すように、同期メニュー720が表示されてよい。ユーザの相互作用は、例えば、同期インタフェース710のクリック又は選択を含んでよく、又は、期間の閾値(例えば、「ホバリング」)にわたってローカルインタフェース710の位置が維持されるカーソル、或いは他の相互作用を含んでよい。
同期メニュー720は、「このアイテムは同期されていない」のようなコンテンツアイテムについての情報をユーザに提供し、ユーザがコンテンツアイテムを共有フォルダに追加するためのオプションを提供する。ユーザがコンテンツアイテムを共有フォルダに追加するために「はい」を選択した場合、図6に関して説明したように、コンテンツアイテムは共有フォルダに追加されてよい。更に、コンテンツアイテムを保存する対象の共有フォルダをユーザが選択するために、インタフェース要素(不図示)が提供されてもよい。ユーザが「いいえ」を選択した場合、コンテンツアイテムは共有フォルダに追加されず、同期メニュー720は閉じられる。この例における同期化メニュー720は、追加情報のための又は同期メニュー720を隠すためのインタフェースも提供する。ユーザが追加情報のためにインタフェース(「Info」)と相互作用する場合、例えば、コンテンツアイテムを同期させる利点及び特徴といった、追加の情報がユーザに表示される。ユーザが「隠す」ためのインタフェースと相互作用する場合、同期メニュー720は閉じられ、同期インタフェース710もこのコンテンツアイテムに対して削除される。
ユーザが「はい」を選択してコンテンツアイテムが共有フォルダに追加された後には、この例における同期メニュー720は閉じられ、そして、閉じられた、及び同期インタフェース710は、図7Cにおいてインタフェース730に示すように、コンテンツアイテムの同期を示すように変化する。この例では、同期インタフェース730は、他のクライアントデバイス110又はコンテンツ管理システム100へのコンテンツアイテムの同期を示す円形の矢印を表示する。
コンテンツアイテムが同期された後には、図7Dに示すように、同期インタフェースが変更される。同期インタフェース740は、コンテンツアイテムが他の共有フォルダと同期されていることを示し、コンテンツアイテムが成功裏に共有フォルダに追加され、他のデバイスと同期されていることの表示をネイティブアプリケーションで提供する。ユーザは、プレゼンス情報、バージョン管理、ノート、及びクライアントアプリケーション200によって提供される同期されたコンテンツの他の特徴を提供するなど、コンテンツアイテムに対する同期機能にアクセスするために、同期インタフェース740とさらに相互作用してもよい。
本発明の実施形態に係る前述の説明は、説明の目的で提示されており、本発明を網羅する又はここで開示される同一の形態に限定することを意図していない。当業者であれば、上記開示に照らして種々の変更及び変形が可能であることを理解することができる。
当該記載のある部分は、情報におけるアルゴリズムと記号表現の操作に関する本発明の実施形態を説明するものである。これらのアルゴリズムに関する記載と表現は、データ処理の分野の当業者が他の当業者に効果的に本質を伝えるために通常用いられる。機能的、コンピュータ的、又は論理的に記載される一方で、これらの操作はコンピュータプログラム、同等の電気的な回路、又はマイクロコードなどによって実装されるべきであることが理解される。更に、一般性を失うこと無く、モジュールとして、これらの操作の変形に言及することが都合がよい場合もあることも証明されている。説明した動作及びそれらに関連するモジュールは、ソフトウェア、ファームウェア、ハードウェア、又はそれらの任意の組み合わせで具体化されてもよい。
ここで説明されるステップ、動作、又はプロセスのいずれかは、単独で、又は他のデバイスと組み合わせて、1以上のハードウェア又はソフトウェアモジュールで実行又は実装されてもよい。ある実施形態において、ソフトウェアモジュールは、記述されたステップ、動作、又はプロセスの何れか又は全てを実行するコンピュータプロセッサによって実行されうるコンピュータプログラムコードを含むコンピュータ可読媒体を備えるコンピュータプログラム製品で実装されてもよい。
本発明の実施形態はまた、ここでの動作を実行する装置に関連する。当該装置は、必要な目的のために特別に構成することができ、及び/又は、コンピュータに格納されたコンピュータプログラムによって選択的に起動又は再構成された汎用コンピューティングデバイスを含むことができる。このようなコンピュータプログラムは、 非一時的な、有形のコンピュータ可読記憶媒体、又はコンピュータシステムバスに結合することができる電子命令を格納するのに適した任意の種別の媒体に格納することができる。さらに、本明細書で言及される任意のコンピューティングシステムは、単一のプロセッサを含むことができ、或いは、コンピューティング性能を高めるために複数のプロセッサ設計を採用するアーキテクチャであってもよい。
本発明の実施形態はまた、ここで説明されるコンピューティングプロセス(処理)によって生成される製品に関連してもよい。そのような製品は、 非一時的な、有形のコンピュータ可読記憶媒体に情報が格納される計算プロセスから生じる情報を含むことができ、ここで記載されるコンピュータプログラム製品又は他のデータの組み合わせの任意の実施形態を含むことができる。
最後に、明細書において使用された言葉は主に可読性及び説明の目的のために選択されたものであり、本発明の主題の輪郭を描いたり制限を加えたりするために選択されたものではない。従って、本発明の範囲は、この詳細な説明によって限定されるのではなく、ここでの記載に基づく本出願で公表される任意の請求項によって限定されることが意図される。従って、本発明の実施形態の開示は説明のためを意図したものであって、以下の請求項において明らかにされる本発明の範囲を限定するものではない。

Claims (20)

  1. 方法であって、
    クライアントデバイスにインストールされたクライアントアプリケーションによって、コンテンツアイテムと相互作用し且つ前記クライアントデバイスにインストールされたネイティブアプリケーションによって制御されるユーザインタフェース要素に関連付けられるユーザのプレゼンスの状態の変化を示す監視イベントを受信することであって、前記クライアントアプリケーションは前記ネイティブアプリケーションと独立しており且つ統合されていない、ことと、
    前記クライアントアプリケーションによって、前記コンテンツアイテムがコンテンツ管理システムに同期されていない、前記クライアントデバイスのローカルフォルダに保存されているの或いは前記コンテンツ管理システムに同期されている、前記クライアントデバイスのローカルフォルダに保存されているのかを判定することであって、前記コンテンツ管理システムは前記クライアントデバイスからリモートである1つ以上のサーバ上にインスタンス化されている、ことと、
    記コンテンツ管理システムに同期されている、前記クライアントデバイスの前記ローカルフォルダに前記コンテンツアイテムが保存されているのと対照的に、前記コンテンツ管理システムに同期されていない、前記クライアントデバイスの前記ローカルフォルダに前記コンテンツアイテムが保存されていると判定したことに応じて、
    前記クライアントアプリケーションによって、ユーザが前記コンテンツアイテムの前記コンテンツ管理システムへの同期を要求するための選択可能なオプションを含む同期インタフェースを表示するように生成することと、
    前記同期インタフェースから前記コンテンツアイテムを同期する前記選択可能なオプションに関する選択を受信することと、
    前記選択可能なオプションに関する前記選択を受信したことに応じて、前記コンテンツアイテムを、前記コンテンツ管理システムに同期される共有フォルダに追加することと、を含む方法。
  2. 請求項1に記載の方法であって、前記コンテンツアイテムは、前記コンテンツアイテムを同期する前記要求を受信した後に、1つ以上の共有デバイスに同期される、方法。
  3. 請求項1に記載の方法であって、更に、前記共有フォルダの場所を識別することを含む、方法。
  4. 請求項3に記載の方法であって、前記共有フォルダの前記場所は前記ユーザによって特定される、方法。
  5. 請求項3に記載の方法であって、前記共有フォルダの前記場所は同期されるコンテンツアイテムのためのディレクトリツリーのルートである、方法。
  6. 請求項1に記載の方法であって、前記監視イベントは前記コンテンツアイテムを保存することを含む、方法。
  7. 請求項1に記載の方法であって、前記監視イベントは前記コンテンツアイテムを開くことを含む、方法。
  8. 請求項1に記載の方法であって、前記同期インタフェースは前記ユーザインタフェース要素に隣接して又は前記ユーザインタフェース要素と重複して表示される、方法。
  9. 1つ以上のプロセッサによって実行可能な命令を含むコンピュータプログラムであって、前記命令は、実行されたときに、前記1つ以上のプロセッサに、
    クライアントデバイスにインストールされたクライアントアプリケーションによって、コンテンツアイテムと相互作用し且つ前記クライアントデバイスにインストールされたネイティブアプリケーションによって制御されるユーザインタフェース要素に関連付けられるユーザのプレゼンスの状態の変化を示す監視イベントを受信することであって、前記クライアントアプリケーションは前記ネイティブアプリケーションと独立しており且つ統合されていない、ことと
    前記クライアントアプリケーションによって、前記コンテンツアイテムがコンテンツ管理システムに同期されていない、前記クライアントデバイスのローカルフォルダに保存されているの或いは前記コンテンツ管理システムに同期されている、前記クライアントデバイスのローカルフォルダに保存されているのかを判定することであって、前記コンテンツ管理システムは前記クライアントデバイスからリモートである1つ以上のサーバ上にインスタンス化されている、ことと
    記コンテンツ管理システムに同期されている、前記クライアントデバイスの前記ローカルフォルダに前記コンテンツアイテムが保存されているのと対照的に、前記コンテンツ管理システムに同期されていない、前記クライアントデバイスの前記ローカルフォルダに前記コンテンツアイテムが保存されていると判定したことに応じて、
    前記クライアントアプリケーションによって、ユーザが前記コンテンツアイテムの前記コンテンツ管理システムへの同期を要求するための選択可能なオプションを含む同期インタフェースを表示するように生成することと
    前記同期インタフェースから前記コンテンツアイテムを同期する前記選択可能なオプションに関する選択を受信することと
    前記選択可能なオプションに関する前記選択を受信したことに応じて、前記コンテンツアイテムを、前記コンテンツ管理システムに同期される共有フォルダに追加することと、の動作を実行させるコンピュータプログラム。
  10. 請求項9に記載のコンピュータプログラムであって、前記コンテンツアイテムは、前記コンテンツアイテムを同期する前記要求を受信した後に、1つ以上の共有デバイスに同期される、コンピュータプログラム。
  11. 請求項9に記載のコンピュータプログラムであって、前記命令は更に、前記1つ以上のプロセッサに、前記共有フォルダの場所を識別させる、コンピュータプログラム。
  12. 請求項11に記載のコンピュータプログラムであって、前記共有フォルダの前記場所は前記ユーザによって特定される、コンピュータプログラム。
  13. 請求項11に記載のコンピュータプログラムであって、前記共有フォルダの前記場所は同期されるコンテンツアイテムのためのディレクトリツリーのルートである、コンピュータプログラム。
  14. 請求項9に記載のコンピュータプログラムであって、前記監視イベントは前記コンテンツアイテムを保存することを含む、コンピュータプログラム。
  15. 請求項9に記載のコンピュータプログラムであって、前記監視イベントは前記コンテンツアイテムを開くことを含む、コンピュータプログラム。
  16. 請求項9に記載のコンピュータプログラムであって、前記同期インタフェースは前記ユーザインタフェース要素に隣接して又は前記ユーザインタフェース要素と重複して表示される、コンピュータプログラム。
  17. システムであって
    命令を実行するように構成される1つ以上のプロセッサと、
    命令を含む不揮発性記録媒体であって、前記命令は、前記1つ以上のプロセッサによって実行されると前記1つ以上のプロセッサに、
    クライアントデバイスにインストールされたクライアントアプリケーションによって、コンテンツアイテムと相互作用し且つ前記クライアントデバイスにインストールされたネイティブアプリケーションによって制御されるユーザインタフェース要素に関連付けられるユーザのプレゼンスの状態の変化を示す監視イベントを受信することであって、前記クライアントアプリケーションは前記ネイティブアプリケーションと独立しており且つ統合されていない、ことと、
    前記クライアントアプリケーションによって、前記コンテンツアイテムがコンテンツ管理システムに同期されていない、前記クライアントデバイスのローカルフォルダに保存されているの或いは前記コンテンツ管理システムに同期されている、前記クライアントデバイスのローカルフォルダに保存されているのかを判定することであって、前記コンテンツ管理システムは前記クライアントデバイスからリモートである1つ以上のサーバ上にインスタンス化されている、ことと、
    記コンテンツ管理システムに同期されている、前記クライアントデバイスの前記ローカルフォルダに前記コンテンツアイテムが保存されているのと対照的に、前記コンテンツ管理システムに同期されていない、前記クライアントデバイスの前記ローカルフォルダに前記コンテンツアイテムが保存されていると判定したことに応じて、
    前記クライアントアプリケーションによって、ユーザが前記コンテンツアイテムの前記コンテンツ管理システムへの同期を要求するための選択可能なオプションを含む同期インタフェースを表示するように生成することと、
    前記同期インタフェースから前記コンテンツアイテムを同期する前記選択可能なオプションに関する選択を受信することと、
    前記選択可能なオプションに関する前記選択を受信したことに応じて、前記コンテンツアイテムを、前記コンテンツ管理システムに同期される共有フォルダに追加することと、のステップを実行させる、システム。
  18. 請求項17に記載のシステムであって、前記コンテンツアイテムは、前記コンテンツアイテムを同期する前記要求を受信した後に、1つ以上の共有デバイスに同期される、システム。
  19. 請求項17に記載のシステムであって、前記監視イベントは前記コンテンツアイテムを保存すること又は開くことを含む、システム。
  20. 請求項17に記載のシステムであって、前記同期インタフェースは前記ユーザインタフェース要素に隣接して又は前記ユーザインタフェース要素と重複して表示される、システム。
JP2018517385A 2015-12-30 2016-09-02 ネイティブアプリケーションのコラボレーション Active JP6692418B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/983,847 2015-12-30
US14/983,847 US10620811B2 (en) 2015-12-30 2015-12-30 Native application collaboration
PCT/IB2016/055286 WO2017115158A1 (en) 2015-12-30 2016-09-02 Native application collaboration

Publications (2)

Publication Number Publication Date
JP2019509530A JP2019509530A (ja) 2019-04-04
JP6692418B2 true JP6692418B2 (ja) 2020-05-13

Family

ID=56958966

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018517385A Active JP6692418B2 (ja) 2015-12-30 2016-09-02 ネイティブアプリケーションのコラボレーション

Country Status (5)

Country Link
US (2) US10620811B2 (ja)
EP (1) EP3356953A1 (ja)
JP (1) JP6692418B2 (ja)
AU (1) AU2016381225B2 (ja)
WO (1) WO2017115158A1 (ja)

Families Citing this family (17)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10997189B2 (en) * 2015-03-23 2021-05-04 Dropbox, Inc. Processing conversation attachments in shared folder backed integrated workspaces
US10108688B2 (en) 2015-12-22 2018-10-23 Dropbox, Inc. Managing content across discrete systems
US10620811B2 (en) * 2015-12-30 2020-04-14 Dropbox, Inc. Native application collaboration
US10382502B2 (en) 2016-04-04 2019-08-13 Dropbox, Inc. Change comments for synchronized content items
US10664654B2 (en) * 2016-09-13 2020-05-26 Workiva Inc. Electronic document author identification
US10776755B2 (en) 2016-12-29 2020-09-15 Dropbox, Inc. Creating projects in a content management system
US10970656B2 (en) 2016-12-29 2021-04-06 Dropbox, Inc. Automatically suggesting project affiliations
US10402786B2 (en) 2016-12-30 2019-09-03 Dropbox, Inc. Managing projects in a content management system
US10866963B2 (en) 2017-12-28 2020-12-15 Dropbox, Inc. File system authentication
US11226939B2 (en) 2017-12-29 2022-01-18 Dropbox, Inc. Synchronizing changes within a collaborative content management system
US11100053B2 (en) * 2018-11-06 2021-08-24 Dropbox, Inc. Technologies for integrating cloud content items across platforms
US11409716B2 (en) * 2019-01-30 2022-08-09 Citrix Systems, Inc. File conflict detection
US11416831B2 (en) 2020-05-21 2022-08-16 HUDDL Inc. Dynamic video layout in video conference meeting
CN114115635B (zh) * 2021-09-30 2023-03-24 荣耀终端有限公司 消息处理方法和装置
US20230297208A1 (en) * 2022-03-16 2023-09-21 Figma, Inc. Collaborative widget state synchronization
US11935007B1 (en) * 2022-12-27 2024-03-19 Dropbox, Inc. Generating collaborative content items to provide customizable graphical representations in online graphical user interfaces
US20240329912A1 (en) * 2023-03-28 2024-10-03 Apple Inc. Group synchronization with shared content

Family Cites Families (248)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US5337407A (en) 1991-12-31 1994-08-09 International Business Machines Corporation Method and system for identifying users in a collaborative computer-based system
JPH06214743A (ja) 1993-01-14 1994-08-05 Hitachi Ltd 共同情報処理システム
US5805889A (en) 1995-10-20 1998-09-08 Sun Microsystems, Inc. System and method for integrating editing and versioning in data repositories
US5960173A (en) 1995-12-22 1999-09-28 Sun Microsystems, Inc. System and method enabling awareness of others working on similar tasks in a computer work environment
JPH10187619A (ja) 1996-12-26 1998-07-21 Toshiba Corp 共同作業システム
US6065026A (en) 1997-01-09 2000-05-16 Document.Com, Inc. Multi-user electronic document authoring system with prompted updating of shared language
US6088707A (en) 1997-10-06 2000-07-11 International Business Machines Corporation Computer system and method of displaying update status of linked hypertext documents
US6260040B1 (en) 1998-01-05 2001-07-10 International Business Machines Corporation Shared file system for digital content
WO2000052886A1 (en) 1999-03-02 2000-09-08 Microsoft Corporation Scalable multiparty conferencing and collaboration system and method of dynamically allocating system resources
US6725281B1 (en) 1999-06-11 2004-04-20 Microsoft Corporation Synchronization of controlled device state using state table and eventing in data-driven remote device control model
US6405219B2 (en) 1999-06-22 2002-06-11 F5 Networks, Inc. Method and system for automatically updating the version of a set of files stored on content servers
US6578054B1 (en) * 1999-10-04 2003-06-10 Microsoft Corporation Method and system for supporting off-line mode of operation and synchronization using resource state information
JP2003521061A (ja) 2000-01-25 2003-07-08 オートデスク,インコーポレイテッド インターネット上で建築図面へのアクセスを提供し、処理する方法および装置
US6820088B1 (en) 2000-04-10 2004-11-16 Research In Motion Limited System and method for synchronizing data records between multiple databases
US7013316B1 (en) 2000-07-13 2006-03-14 Microsoft Corporation System and method for synchronizing multiple database files
US8117281B2 (en) 2006-11-02 2012-02-14 Addnclick, Inc. Using internet content as a means to establish live social networks by linking internet users to each other who are simultaneously engaged in the same and/or similar content
US20030018719A1 (en) 2000-12-27 2003-01-23 Ruths Derek Augustus Samuel Data-centric collaborative computing platform
JP2002351730A (ja) 2001-05-22 2002-12-06 Fuji Xerox Co Ltd 電子文書のファイリング方法および装置
US20040058710A1 (en) 2001-05-25 2004-03-25 Timmins Timothy A. Technique for synchronizing data in user devices through an information service
US6910188B2 (en) * 2001-06-27 2005-06-21 International Business Machines Corporation Viewing changes to a shared document in one object
US7761535B2 (en) 2001-09-28 2010-07-20 Siebel Systems, Inc. Method and system for server synchronization with a computing device
JP3876702B2 (ja) 2001-12-11 2007-02-07 ソニー株式会社 サービス提供システム、情報提供装置および方法、情報処理装置および方法、並びにプログラム
US20030112273A1 (en) 2001-12-17 2003-06-19 Workshare Technology, Ltd. Document collaboration suite using a common database
US7062515B1 (en) * 2001-12-28 2006-06-13 Vignette Corporation System and method for the synchronization of a file in a cache
US7328225B1 (en) 2002-03-27 2008-02-05 Swsoft Holdings, Ltd. System, method and computer program product for multi-level file-sharing by concurrent users
US6938042B2 (en) * 2002-04-03 2005-08-30 Laplink Software Inc. Peer-to-peer file sharing
JP2003157225A (ja) 2002-07-25 2003-05-30 Fujitsu Hokuriku Systems:Kk サーバ
US20040021686A1 (en) 2002-07-30 2004-02-05 Barberis Romain P. Method and system for collaborative interaction on a document
US7386532B2 (en) 2002-12-19 2008-06-10 Mathon Systems, Inc. System and method for managing versions
US7389309B2 (en) * 2003-02-28 2008-06-17 Microsoft Corporation Method for managing file replication in applications
US7730014B2 (en) 2003-03-25 2010-06-01 Hartenstein Mark A Systems and methods for managing affiliations
US20040199514A1 (en) * 2003-04-02 2004-10-07 Ira Rosenblatt Techniques for facilitating item sharing
US7051282B2 (en) * 2003-06-13 2006-05-23 Microsoft Corporation Multi-layer graphical user interface
EP1492307A1 (en) 2003-06-27 2004-12-29 Hewlett-Packard Development Company, L.P. Method and apparatus for automatically determining a presence status
US7640506B2 (en) 2003-06-27 2009-12-29 Microsoft Corporation Method and apparatus for viewing and managing collaboration data from within the context of a shared document
US7512638B2 (en) 2003-08-21 2009-03-31 Microsoft Corporation Systems and methods for providing conflict handling for peer-to-peer synchronization of units of information manageable by a hardware/software interface system
US7401104B2 (en) 2003-08-21 2008-07-15 Microsoft Corporation Systems and methods for synchronizing computer systems through an intermediary file system share or device
US7496607B2 (en) * 2003-08-29 2009-02-24 Yahoo! Inc. Method and system for maintaining synchronization between a local data cache and a data store
US7734690B2 (en) * 2003-09-05 2010-06-08 Microsoft Corporation Method and apparatus for providing attributes of a collaboration system in an operating system folder-based file system
EP1692602A4 (en) 2003-10-31 2007-10-24 Landmark Technology Partners I INTELLIGENT CLIENT ARCHITECTURE COMPUTER SYSTEM AND METHOD
US7822711B1 (en) 2003-12-31 2010-10-26 Symantec Operating Corporation Conflict resolution for a distributed file sharing system
US7526768B2 (en) 2004-02-04 2009-04-28 Microsoft Corporation Cross-pollination of multiple sync sources
US7533134B2 (en) 2004-04-01 2009-05-12 Microsoft Corporation Systems and methods for the propagation of conflict resolution to enforce item convergence (i.e., data convergence)
US7496633B2 (en) 2004-04-23 2009-02-24 Yahoo! Inc. System and method facilitating a shared content experience using enhanced messaging including a displayable status indicator
US7437566B2 (en) 2004-05-01 2008-10-14 Microsoft Corporation System and method for identity confirmation of a contact published on a network
JP2007524929A (ja) 2004-05-20 2007-08-30 ビーイーエイ システムズ, インコーポレイテッド エンタープライズコラボレーションシステム及び方法
US7603357B1 (en) * 2004-06-01 2009-10-13 Adobe Systems Incorporated Collaborative asset management
US7444379B2 (en) 2004-06-30 2008-10-28 International Business Machines Corporation Method for automatically setting chat status based on user activity in local environment
US7730026B2 (en) 2004-07-01 2010-06-01 Apple Inc. Method and system using reusable state information for synchronization and maintenance of data
US7539943B2 (en) * 2004-07-14 2009-05-26 Microsoft Corporation Systems and methods for tracking file modifications in software development
CA2807829C (en) 2004-11-04 2017-10-10 Topeer Corporation System and method for creating a secure trusted social network
WO2006053019A2 (en) 2004-11-08 2006-05-18 Sharpcast, Inc. Method and apparatus for a file sharing and synchronization system
US7664788B2 (en) * 2005-01-10 2010-02-16 Microsoft Corporation Method and system for synchronizing cached files
US7584268B2 (en) 2005-02-01 2009-09-01 Google Inc. Collaborative web page authoring
US7752633B1 (en) * 2005-03-14 2010-07-06 Seven Networks, Inc. Cross-platform event engine
US20070016650A1 (en) * 2005-04-01 2007-01-18 Gilbert Gary J System and methods for collaborative development of content over an electronic network
US7631007B2 (en) 2005-04-12 2009-12-08 Scenera Technologies, Llc System and method for tracking user activity related to network resources using a browser
US7610280B2 (en) 2005-05-05 2009-10-27 Cisco Technology, Inc. Method and system for dynamically pre-positioning content in a network based detecting or predicting user presence
US7523146B2 (en) 2005-06-21 2009-04-21 Apple Inc. Apparatus and method for peer-to-peer N-way synchronization in a decentralized environment
US8495015B2 (en) 2005-06-21 2013-07-23 Apple Inc. Peer-to-peer syncing in a decentralized environment
US7512596B2 (en) 2005-08-01 2009-03-31 Business Objects Americas Processor for fast phrase searching
US7779347B2 (en) * 2005-09-02 2010-08-17 Fourteen40, Inc. Systems and methods for collaboratively annotating electronic documents
US20070143324A1 (en) * 2005-12-16 2007-06-21 Sap Ag Graphical user interface icon for documents with status indicator
US20070150433A1 (en) * 2005-12-22 2007-06-28 Mediatek Inc. Method for managing file in version control system
US8543637B2 (en) 2006-01-18 2013-09-24 At&T Intellectual Property I, L.P. Distributed web publishing
KR100678967B1 (ko) 2006-01-25 2007-02-06 삼성전자주식회사 공유 정보를 기초로 사용자별 연관 관계를 제공하는 장치및 그 방법
GB0610116D0 (en) 2006-05-20 2006-06-28 Ibm A method, apparatus and computer program for collaborative editing of a document
US8086698B2 (en) 2006-06-02 2011-12-27 Google Inc. Synchronizing configuration information among multiple clients
US7912916B2 (en) 2006-06-02 2011-03-22 Google Inc. Resolving conflicts while synchronizing configuration information among multiple clients
WO2007147495A2 (en) 2006-06-21 2007-12-27 Wibu-Systems Ag Method and system for intrusion detection
US7953785B2 (en) 2006-06-30 2011-05-31 Microsoft Corporation Content synchronization in a file sharing environment
US7558797B2 (en) * 2006-06-30 2009-07-07 Microsoft Corporation Metadata structures for mass P2P file sharing
US20080005235A1 (en) 2006-06-30 2008-01-03 Microsoft Corporation Collaborative integrated development environment using presence information
US8041807B2 (en) 2006-11-02 2011-10-18 International Business Machines Corporation Method, system and program product for determining a number of concurrent users accessing a system
US20080147727A1 (en) 2006-12-14 2008-06-19 Nortel Networks Limited Media context information
US7617220B2 (en) 2006-12-21 2009-11-10 Palm, Inc. Sharing access to content items using group information and item information
US8700759B2 (en) 2007-01-19 2014-04-15 International Business Machines Corporation Autonomic optimization of presence server performance
US8205150B2 (en) * 2007-01-22 2012-06-19 Cfph, Llc Document changes
US7620659B2 (en) 2007-02-09 2009-11-17 Microsoft Corporation Efficient knowledge representation in data synchronization systems
JP5023736B2 (ja) 2007-02-27 2012-09-12 富士ゼロックス株式会社 端末装置、及びプログラム
US7962610B2 (en) 2007-03-07 2011-06-14 International Business Machines Corporation Statistical data inspector
US8745075B2 (en) 2007-03-26 2014-06-03 Xerox Corporation Notification method for a dynamic document system
US7818419B1 (en) 2007-03-30 2010-10-19 Amazon Technologies, Inc. Monitoring user consumption of content
US20080244418A1 (en) 2007-03-30 2008-10-02 Microsoft Corporation Distributed multi-party software construction for a collaborative work environment
US7769810B1 (en) 2007-04-26 2010-08-03 Adobe Systems Incorporated Method and system for collaborative editing
US20080307102A1 (en) 2007-06-08 2008-12-11 Galloway Curtis C Techniques for communicating data between a host device and an intermittently attached mobile device
US8484578B2 (en) 2007-06-29 2013-07-09 Microsoft Corporation Communication between a document editor in-space user interface and a document editor out-space user interface
CN101355524B (zh) 2007-07-24 2013-10-09 华为技术有限公司 一种消息处理方法、系统、服务器和终端
US9621649B2 (en) 2007-09-28 2017-04-11 Xcerion Aktiebolag Network operating system
US8407605B2 (en) 2009-04-03 2013-03-26 Social Communications Company Application sharing
US20090113412A1 (en) 2007-10-29 2009-04-30 Sap Portals Israel Ltd. Method and apparatus for enhanced synchronization protocol
US8326814B2 (en) * 2007-12-05 2012-12-04 Box, Inc. Web-based file management system and service
US7917521B2 (en) 2008-03-10 2011-03-29 International Business Machines Corporation User/browser state information sharing between browser applications
US20090249224A1 (en) 2008-03-31 2009-10-01 Microsoft Corporation Simultaneous collaborative review of a document
US9740293B2 (en) 2009-04-02 2017-08-22 Oblong Industries, Inc. Operating environment with gestural control and multiple client devices, displays, and users
US8352870B2 (en) 2008-04-28 2013-01-08 Microsoft Corporation Conflict resolution
US8230348B2 (en) 2008-04-28 2012-07-24 Roger Peters Collaboration software with real-time synchronization
US8387122B2 (en) 2008-05-16 2013-02-26 University Of Washington Access control by testing for shared knowledge
US8521732B2 (en) 2008-05-23 2013-08-27 Solera Networks, Inc. Presentation of an extracted artifact based on an indexing technique
US8301593B2 (en) 2008-06-12 2012-10-30 Gravic, Inc. Mixed mode synchronous and asynchronous replication system
US7962458B2 (en) 2008-06-12 2011-06-14 Gravic, Inc. Method for replicating explicit locks in a data replication engine
US8090681B2 (en) 2008-06-26 2012-01-03 Microsoft Corporation Resolving conflicts in content management systems
JP5344460B2 (ja) 2008-09-29 2013-11-20 インターナショナル・ビジネス・マシーンズ・コーポレーション 編集装置、編集プログラム、および編集方法
GB2464948A (en) 2008-10-29 2010-05-05 Quolos Limited Online collaboration
US20100131868A1 (en) 2008-11-26 2010-05-27 Cisco Technology, Inc. Limitedly sharing application windows in application sharing sessions
US8655840B2 (en) 2008-12-03 2014-02-18 Nokia Corporation Method, apparatus and computer program product for sub-file level synchronization
JP5430164B2 (ja) 2009-01-30 2014-02-26 キヤノン株式会社 データ管理方法及び装置
US8452959B2 (en) 2009-02-24 2013-05-28 Research In Motion Limited Method and system for registering a presence user with a presence service
FR2942928B1 (fr) 2009-03-03 2011-04-01 Alcatel Lucent Procede et systeme de gestion multicriteres de notifications de presence
JP2010211569A (ja) 2009-03-11 2010-09-24 Fuji Xerox Co Ltd 評価装置、プログラム及び情報処理システム
JP5428428B2 (ja) 2009-03-18 2014-02-26 株式会社リコー 情報処理装置、システム、方法、プログラムおよび記憶媒体
US8683554B2 (en) * 2009-03-27 2014-03-25 Wavemarket, Inc. System and method for managing third party application program access to user information via a native application program interface (API)
US20100257457A1 (en) 2009-04-07 2010-10-07 De Goes John A Real-time content collaboration
US8555177B1 (en) 2009-04-22 2013-10-08 Google, Inc. Real-time interaction during video viewing
US8881013B2 (en) 2009-04-30 2014-11-04 Apple Inc. Tool for tracking versions of media sections in a composite presentation
US8650498B1 (en) * 2009-05-04 2014-02-11 SugarSync, Inc. User interface for managing and viewing synchronization settings in a synchronization system
US9298834B2 (en) 2009-05-26 2016-03-29 Adobe Systems Incorporated User presence data for web-based document collaboration
US8943408B2 (en) 2009-05-27 2015-01-27 Adobe Systems Incorporated Text image review process
US9454361B2 (en) * 2009-07-15 2016-09-27 Avaya Inc. System and method of merging of objects from different replicas
US8825597B1 (en) * 2009-08-13 2014-09-02 Dropbox, Inc. Network folder synchronization
US20110055177A1 (en) 2009-08-26 2011-03-03 International Business Machines Corporation Collaborative content retrieval using calendar task lists
US8341224B2 (en) 2010-02-24 2012-12-25 Microsoft Corporation Multi-master text synchronization using deltas
US8572022B2 (en) * 2010-03-02 2013-10-29 Microsoft Corporation Automatic synchronization conflict resolution
EP2369820B1 (en) 2010-03-22 2016-04-06 BlackBerry Limited Management and display of grouped messages on a communication device
US9621958B2 (en) 2010-05-05 2017-04-11 Adobe Systems Incorporated Deferred, on-demand loading of user presence within a real-time collaborative service
WO2012003504A2 (en) 2010-07-02 2012-01-05 Air Computing, Inc. A system and method for cloud file management
JP2012038210A (ja) 2010-08-10 2012-02-23 Sony Corp 情報処理装置、情報処理方法、コンピュータプログラム及びコンテンツ表示システム
US8615552B2 (en) 2010-08-25 2013-12-24 International Business Machines Corporation Sharing cloud data resources with social network associates
US20120101980A1 (en) 2010-10-26 2012-04-26 Microsoft Corporation Synchronizing online document edits
US9009726B2 (en) 2010-12-10 2015-04-14 Microsoft Technology Licensing, Llc Deterministic sharing of data among concurrent tasks using pre-defined deterministic conflict resolution policies
US8468132B1 (en) 2010-12-28 2013-06-18 Amazon Technologies, Inc. Data replication framework
US8868500B2 (en) 2011-01-14 2014-10-21 Apple Inc. Data synchronization
JP2012150647A (ja) 2011-01-19 2012-08-09 Konica Minolta Business Technologies Inc 文書データ処理装置、文書データ処理システムおよびコンピュータプログラム
JP2012173780A (ja) 2011-02-17 2012-09-10 Hitachi Solutions Ltd ファイルの構成管理システム
US20120233543A1 (en) 2011-03-08 2012-09-13 Google, Inc. Collaborative Electronic Document Editing
JP2012209614A (ja) 2011-03-29 2012-10-25 Brother Ind Ltd 会議システム、会議端末、および会議プログラム
WO2012140701A1 (en) * 2011-04-15 2012-10-18 Hitachi, Ltd. File sharing system and file sharing method
US20120278127A1 (en) 2011-04-28 2012-11-01 Rawllin International Inc. Generating product recommendations based on dynamic product context data and/or social activity data related to a product
US10963584B2 (en) 2011-06-08 2021-03-30 Workshare Ltd. Method and system for collaborative editing of a remotely stored document
US8832284B1 (en) 2011-06-16 2014-09-09 Google Inc. Virtual socializing
US9021113B2 (en) 2011-06-17 2015-04-28 International Business Machines Corporation Inter-service sharing of content between users from different social networks
US9049176B2 (en) 2011-06-22 2015-06-02 Dropbox, Inc. File sharing via link generation
US8533165B2 (en) 2011-07-03 2013-09-10 Microsoft Corporation Conflict resolution via metadata examination
WO2013009337A2 (en) 2011-07-08 2013-01-17 Arnold Goldberg Desktop application for access and interaction with workspaces in a cloud-based content management system and synchronization mechanisms thereof
US20130060859A1 (en) 2011-07-18 2013-03-07 Salesforce.Com, Inc. Computer implemented methods and apparatus for selective display of information updates of a feed of an online social network
CN102262620B (zh) 2011-08-04 2014-11-26 无锡永中软件有限公司 一种文档协作方法
US9177267B2 (en) 2011-08-31 2015-11-03 Accenture Global Services Limited Extended collaboration event monitoring system
US8682973B2 (en) 2011-10-05 2014-03-25 Microsoft Corporation Multi-user and multi-device collaboration
US8965847B1 (en) * 2011-10-28 2015-02-24 Oxygen Cloud, Inc. Independent synchronization of file data and file metadata
US9606972B2 (en) * 2011-11-09 2017-03-28 Microsoft Technology Licensing, Llc Document collaboration with collaboration context data
US10482638B2 (en) 2011-11-11 2019-11-19 Microsoft Technology Licensing, Llc Collaborative commenting in a drawing tool
US8990307B2 (en) 2011-11-16 2015-03-24 Box, Inc. Resource effective incremental updating of a remote client with events which occurred via a cloud-enabled platform
US9773051B2 (en) 2011-11-29 2017-09-26 Box, Inc. Mobile platform file and folder selection functionalities for offline access and synchronization
EP2798486B1 (en) 2011-12-29 2019-11-06 VMware, Inc. N-way synchronization of desktop images
US8843441B1 (en) 2012-01-17 2014-09-23 Amazon Technologies, Inc. System and method for maintaining a master replica for reads and writes in a data store
US8930312B1 (en) 2012-01-17 2015-01-06 Amazon Technologies, Inc. System and method for splitting a replicated data partition
US8719225B1 (en) 2012-01-17 2014-05-06 Amazon Technologies, Inc. System and method for log conflict detection and resolution in a data store
US20130185651A1 (en) 2012-01-18 2013-07-18 Microsoft Corporation People presence detection in a multidocument knowledge base
US9164997B2 (en) 2012-01-19 2015-10-20 Microsoft Technology Licensing, Llc Recognizing cloud content
US20130191451A1 (en) 2012-01-19 2013-07-25 Microsoft Corporation Presence-based Synchronization
KR101295209B1 (ko) 2012-02-01 2013-09-12 엔에이치엔(주) 클라우드 서버와의 양방향 연동을 통해 파일 공유를 제공하는 그룹 메시징 시스템, 방법 및 컴퓨터 판독 가능한 기록 매체
US9286162B2 (en) 2012-02-02 2016-03-15 Netapp, Inc. System and method for guaranteeing consistent data synchronization from a volatile data source
US10885060B2 (en) * 2012-02-28 2021-01-05 International Business Machines Corporation On-demand file synchronization
JP2013196233A (ja) 2012-03-19 2013-09-30 Konica Minolta Inc オブジェクト共有システム及びオブジェクト管理プログラム
US20130247004A1 (en) 2012-03-19 2013-09-19 International Business Machines Corporation Visually indicating file allocation in an integrated development environment
US9928226B2 (en) 2012-03-20 2018-03-27 Adobe Systems Incorporated Local authoring and editing of cloud-based electronic content
US20130268480A1 (en) * 2012-04-05 2013-10-10 Box, Inc. Method and apparatus for selective subfolder synchronization in a cloud-based environment
US9307006B2 (en) * 2012-04-11 2016-04-05 Salesforce.Com, Inc. System and method for synchronizing data objects in a cloud based social networking environment
US9575981B2 (en) * 2012-04-11 2017-02-21 Box, Inc. Cloud service enabled to handle a set of files depicted to a user as a single file in a native operating system
US9413587B2 (en) 2012-05-02 2016-08-09 Box, Inc. System and method for a third-party application to access content within a cloud-based platform
US8914900B2 (en) * 2012-05-23 2014-12-16 Box, Inc. Methods, architectures and security mechanisms for a third-party application to access content in a cloud-based platform
US8886836B2 (en) 2012-06-12 2014-11-11 Facebook, Inc. Providing a multi-column newsfeed of content on a social networking system
US10394429B2 (en) 2012-06-29 2019-08-27 Qualcomm Incorporated Sharing of user interface objects via a shared space
WO2014010497A1 (ja) 2012-07-12 2014-01-16 ソニー株式会社 表示制御装置、表示制御方法、プログラム、及び通信システム
US9344458B2 (en) 2012-07-16 2016-05-17 eZuce, Inc. Providing unified communications services
CA2783223C (en) * 2012-07-19 2014-07-15 Microsoft Corporation Global recently used files list
US20150101064A1 (en) 2012-07-31 2015-04-09 Sony Corporation Information processing apparatus, information processing method and program
US9558202B2 (en) * 2012-08-27 2017-01-31 Box, Inc. Server side techniques for reducing database workload in implementing selective subfolder synchronization in a cloud-based environment
US9135093B2 (en) 2012-08-31 2015-09-15 Sap Se Event-driven approach for collecting monitoring data of messaging systems
US20140101310A1 (en) 2012-10-04 2014-04-10 Box, Inc. Seamless access, editing, and creation of files in a web interface or mobile interface to a collaborative cloud platform
JP6079152B2 (ja) 2012-11-08 2017-02-15 富士通株式会社 文書編集通知方法,そのサーバ,プログラム及びシステム
US10373202B2 (en) 2012-12-05 2019-08-06 Facebook, Inc. Selection of region-specific brand pages based on location information of social networking system users
US20140160153A1 (en) 2012-12-07 2014-06-12 Jatinder Pal Singh Method and system for real-time learning and collaboration solution
US10235383B2 (en) 2012-12-19 2019-03-19 Box, Inc. Method and apparatus for synchronization of items with read-only permissions in a cloud-based environment
US9336226B2 (en) * 2013-01-11 2016-05-10 Commvault Systems, Inc. Criteria-based data synchronization management
EP2755151A3 (en) * 2013-01-11 2014-09-24 Box, Inc. Functionalities, features and user interface of a synchronization client to a cloud-based environment
US9300492B2 (en) 2013-01-14 2016-03-29 Dropbox, Inc. Notification feed across multiple client devices
US9471556B2 (en) * 2013-01-30 2016-10-18 Microsoft Technology Licensing, Llc Collaboration using multiple editors or versions of a feature
WO2014121143A1 (en) 2013-02-01 2014-08-07 Parlor Labs, Inc. System and method for assessing reader activity
US10826951B2 (en) 2013-02-11 2020-11-03 Dotloop, Llc Electronic content sharing
US9310981B2 (en) * 2013-02-13 2016-04-12 Dropbox, Inc. Seamless editing and saving of online content items using applications
US9971468B2 (en) 2013-02-21 2018-05-15 Atlassian Pty Ltd Automatically generating column layouts in electronic documents
CN104008104A (zh) 2013-02-22 2014-08-27 纬创资通股份有限公司 处理文件变更的方法及电子装置
US10318492B2 (en) * 2013-02-25 2019-06-11 Amazon Technologies, Inc. Predictive storage service
US20140244618A1 (en) * 2013-02-26 2014-08-28 Dropbox, Inc. Search interface for an online content management system
US8856256B1 (en) 2013-03-13 2014-10-07 CoralTree Inc. System and method for file sharing and updating
US9646023B1 (en) * 2013-03-13 2017-05-09 Western Digital Technologies, Inc. Devices and methods configured for automated duplication of network shared folders
US20140280377A1 (en) 2013-03-14 2014-09-18 Scribestar Ltd. Systems and methods for collaborative document review
US20140280603A1 (en) 2013-03-14 2014-09-18 Endemic Mobile Inc. User attention and activity in chat systems
US9256341B2 (en) 2013-03-20 2016-02-09 Microsoft Technology Licensing, Llc Tracking changes in collaborative authoring environment
US9715476B2 (en) * 2013-04-10 2017-07-25 Microsoft Technology Licensing, Llc Collaborative authoring with scratchpad functionality
US9565232B2 (en) * 2013-05-03 2017-02-07 Dropbox, Inc. Importing content items
US10133720B2 (en) 2013-06-15 2018-11-20 Microsoft Technology Licensing, Llc Showing presence of multiple authors in a spreadsheet
US9805050B2 (en) * 2013-06-21 2017-10-31 Box, Inc. Maintaining and updating file system shadows on a local device by a synchronization client of a cloud-based platform
US10110656B2 (en) * 2013-06-25 2018-10-23 Box, Inc. Systems and methods for providing shell communication in a cloud-based platform
US20150012887A1 (en) 2013-07-02 2015-01-08 Cerner Innovation, Inc. Clinical document speed viewer
US9053165B2 (en) * 2013-07-08 2015-06-09 Dropbox, Inc. Structured content item synchronization
US20150033149A1 (en) 2013-07-23 2015-01-29 Saleforce.com, inc. Recording and playback of screen sharing sessions in an information networking environment
US9773010B1 (en) 2013-07-24 2017-09-26 Veritas Technologies Llc Information-driven file system navigation
US20150040101A1 (en) 2013-08-05 2015-02-05 Sap Ag Collaborative Awareness in Software Development
US9432457B2 (en) * 2013-08-30 2016-08-30 Citrix Systems, Inc. Redirecting local storage to cloud storage
US9338242B1 (en) 2013-09-09 2016-05-10 Amazon Technologies, Inc. Processes for generating content sharing recommendations
US9704137B2 (en) 2013-09-13 2017-07-11 Box, Inc. Simultaneous editing/accessing of content by collaborator invitation through a web-based or mobile application to a cloud-based collaboration platform
US10866931B2 (en) 2013-10-22 2020-12-15 Box, Inc. Desktop application for accessing a cloud collaboration platform
US10855760B2 (en) * 2013-11-07 2020-12-01 Cole Asher Ratias Systems and methods for synchronizing content and information on multiple computing devices
US9614880B1 (en) 2013-11-12 2017-04-04 Google Inc. Methods for real-time notifications in an activity stream
US20150142742A1 (en) 2013-11-17 2015-05-21 Zhen-Chao HONG System and method for syncing local directories that enable file access across multiple devices
US9832237B2 (en) 2013-11-27 2017-11-28 Getgo, Inc. Collaborative online document editing
US9602560B1 (en) 2013-12-10 2017-03-21 United Services Automobile Association (Usaa) Concurrent display of masked views of applications between devices
KR101591462B1 (ko) 2013-12-13 2016-02-18 신정호 온라인 아이디어 회의 제공방법
US9690785B1 (en) 2014-01-30 2017-06-27 Google Inc. Change notification routing based on original authorship of modified region
US20150261411A1 (en) 2014-03-17 2015-09-17 Microsoft Corporation Displaying collaboration icons for collaboration states
WO2015139179A1 (zh) * 2014-03-17 2015-09-24 华为终端有限公司 一种终端间同步内容的方法和终端
US9898520B2 (en) 2014-03-25 2018-02-20 Open Text Sa Ulc Systems and methods for seamless access to remotely managed documents using synchronization of locally stored documents
US20150281869A1 (en) * 2014-03-31 2015-10-01 Google Inc. Native web-based application
US10635540B2 (en) * 2014-04-02 2020-04-28 Microsoft Technology Licensing, Llc Modern document save and synchronization status
US10270871B2 (en) * 2014-04-08 2019-04-23 Dropbox, Inc. Browser display of native application presence and interaction data
US10091287B2 (en) 2014-04-08 2018-10-02 Dropbox, Inc. Determining presence in an application accessing shared and synchronized content
US9998555B2 (en) 2014-04-08 2018-06-12 Dropbox, Inc. Displaying presence in an application accessing shared and synchronized content
US10171579B2 (en) 2014-04-08 2019-01-01 Dropbox, Inc. Managing presence among devices accessing shared and synchronized content
US10140309B2 (en) * 2014-06-10 2018-11-27 Alfresco Software, Inc. File tracking on client machines synchronized with a content management system repository
EP3161607B1 (en) * 2014-06-24 2021-05-26 Google LLC Storing content items
CN114564920B (zh) 2014-06-24 2023-05-30 谷歌有限责任公司 用于合作性文档的方法、系统和计算机可读介质
WO2016036288A1 (en) * 2014-09-02 2016-03-10 Telefonaktiebolaget L M Ericsson (Publ) A method, cloud synchronization function means and file system for handling files and directories in a cloud storage service
US9792452B2 (en) * 2014-09-12 2017-10-17 Anthony Tan Pervasive intermediate network attached storage application
US9753816B2 (en) * 2014-12-05 2017-09-05 Commvault Systems, Inc. Synchronization based on filtered browsing
US20180113862A1 (en) * 2014-12-29 2018-04-26 Workshare, Ltd. Method and System for Electronic Document Version Tracking and Comparison
WO2016131044A1 (en) 2015-02-15 2016-08-18 Schmahmann Adin Reicin Systems and methods for secure collaboration with precision access management
US20160253352A1 (en) * 2015-02-27 2016-09-01 Barracuda Networks, Inc. Method and apparatus for file synchronization and sharing with cloud storage
US9846528B2 (en) 2015-03-02 2017-12-19 Dropbox, Inc. Native application collaboration
US10997189B2 (en) 2015-03-23 2021-05-04 Dropbox, Inc. Processing conversation attachments in shared folder backed integrated workspaces
US10356157B2 (en) * 2015-04-16 2019-07-16 Google Llc Systems and methods for notifying users of changes to files in cloud-based file-storage systems
US10198411B2 (en) * 2015-05-01 2019-02-05 Microsoft Technology Licensing, Llc Storing additional document information through change tracking
US9922044B2 (en) * 2015-05-28 2018-03-20 International Business Machines Corporation File path modification based management
US20170093777A1 (en) * 2015-09-28 2017-03-30 Angela G. Neustifter App for Selective Monitoring of Social Media Activity
US10620811B2 (en) * 2015-12-30 2020-04-14 Dropbox, Inc. Native application collaboration
US9413708B1 (en) * 2015-12-31 2016-08-09 Dropbox, Inc. User notifications for interaction information
US11244284B2 (en) * 2018-05-31 2022-02-08 Microsoft Technology Licensing, Llc Document status management system

Also Published As

Publication number Publication date
JP2019509530A (ja) 2019-04-04
US10620811B2 (en) 2020-04-14
US20200210058A1 (en) 2020-07-02
EP3356953A1 (en) 2018-08-08
AU2016381225B2 (en) 2020-02-27
US11875028B2 (en) 2024-01-16
WO2017115158A1 (en) 2017-07-06
AU2016381225A1 (en) 2018-04-26
US20170192656A1 (en) 2017-07-06

Similar Documents

Publication Publication Date Title
JP6692418B2 (ja) ネイティブアプリケーションのコラボレーション
JP6725715B2 (ja) 共有され同期されたコンテンツにアクセスするアプリケーションにおいてプレゼンスを判定すること
US11789590B2 (en) User interface for content sharing client in a desktop file system context
US11526260B2 (en) Native application collaboration
JP6727373B2 (ja) 共有され同期されたコンテンツにアクセスする装置間でプレゼンスを管理すること
JP6785920B2 (ja) ネイティブアプリケーションプレゼンスとインタラクションデータのブラウザ表示
JP6793766B2 (ja) 共有され同期されたコンテンツにアクセスするアプリケーションにおいてプレゼンスを表示すること
JP6774493B2 (ja) 相互作用情報のユーザ通知

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180627

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180627

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190318

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20190613

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20191111

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200221

A911 Transfer to examiner for re-examination before appeal (zenchi)

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20200227

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20200327

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20200414

R150 Certificate of patent or registration of utility model

Ref document number: 6692418

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250