JP6186015B2 - コンテンツアイテムの共有 - Google Patents

コンテンツアイテムの共有 Download PDF

Info

Publication number
JP6186015B2
JP6186015B2 JP2015561757A JP2015561757A JP6186015B2 JP 6186015 B2 JP6186015 B2 JP 6186015B2 JP 2015561757 A JP2015561757 A JP 2015561757A JP 2015561757 A JP2015561757 A JP 2015561757A JP 6186015 B2 JP6186015 B2 JP 6186015B2
Authority
JP
Japan
Prior art keywords
client device
content
content item
shared link
shared
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
JP2015561757A
Other languages
English (en)
Other versions
JP2016516233A (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 JP2016516233A publication Critical patent/JP2016516233A/ja
Application granted granted Critical
Publication of JP6186015B2 publication Critical patent/JP6186015B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/06Protocols specially adapted for file transfer, e.g. file transfer protocol [FTP]
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F16/00Information retrieval; Database structures therefor; File system structures therefor
    • G06F16/90Details of database functions independent of the retrieved data types
    • G06F16/95Retrieval from the web
    • G06F16/955Retrieval from the web using information identifiers, e.g. uniform resource locators [URL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1095Replication or mirroring of data, e.g. scheduling or transport for data synchronisation between network nodes
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/01Protocols
    • H04L67/10Protocols in which an application is distributed across nodes in the network
    • H04L67/1097Protocols in which an application is distributed across nodes in the network for distributed storage of data in networks, e.g. transport arrangements for network file system [NFS], storage area networks [SAN] or network attached storage [NAS]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/14Session management
    • H04L67/146Markers for unambiguous identification of a particular session, e.g. session cookie or URL-encoding
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/60Subscription-based services using application servers or record carriers, e.g. SIM application toolkits

Description

本発明は、コンテンツアイテムの共有に関し、より詳細には、コンテンツアイテムへの共有リンクを作成することに観点する。
クラウドストレージアカウントは、ネットワーク接続で任意のコンピュータデバイスからアクセス可能なオンラインストレージアカウントに、ユーザが自身のコンテンツアイテムを格納することを許容する。したがって、ユーザは、コンピュータデバイスから自身のオンラインストレージアカウントへ、画像、音楽、文書などのコンテンツアイテムを更新することができ、後に、異なるコンピュータデバイスから当該コンテンツアイテムにアクセスすることができる。
ユーザが複数のコンピュータデバイスから自身のコンテンツアイテムにアクセスすることが可能なことに加えて、クラウドストレージアカウントはまた、ユーザが他のユーザとコンテンツアイテムを共有することを可能とする。ユーザは、コンテンツアイテムへのアクセスを他のユーザに提供するためにリンクを提供することができる。
コンテンツアイテムを共有する現行のシステムは、自身のコンテンツアイテムを共有するユーザを抑止することは難しい。例えば、いくつかのシステムでは、コンテンツアイテムへの共有リンクを作成するために異なるユーザインタフェースをユーザがナビゲートする必要がある。さらに、ネットワーク接続が共有リンクを作成するために必要となりうる。いくつかのシステムでは、ユーザへの共有リンクを提供する前に、コンテンツ管理システムへコンテンツアイテムがアップロードされるまでユーザが待機する必要がある。したがって、コンテンツアイテムを共有する改善された方法が必要とされる。
本開示の追加の特徴及び利点について以下で説明し、部分的には本説明から自明なものとなるか、又は、ここで開示する原理のプラクティスにより理解されうるであろう。本開示の特徴及び利点は、添付の特許請求の範囲に個別に示した機器や組合せによって、完全に理解され、取得されるであろう。本開示のそれらの特徴及び他の特徴が、以下の詳細な説明及び添付の特許請求の範囲から十分に明らかになるであろうし、或いは、ここで説明する原理のプラクティスによって理解されうるであろう。
コンテンツアイテムを共有するための、システム、方法、及び一時的でないコンピュータで読取可能な記憶媒体について開示する。ユーザが他のユーザとコンテンツアイテムを共有することを可能とするために、コンテンツ管理システムは、コンテンツアイテムが認証なしでアクセスされることを可能とする、ユニフォーム・リソース・ロケータ(URL)などのカスタムネットワークアドレスである共有リンクを作成するように構成される。共有リンクは、コンテンツ管理システムからコンテンツアイテムを要求するように構成されうる。
コンテンツ管理システムは、コンテンツアイテムを識別するために共有リンクを使用することができ、要求側のユーザデバイスへ当該コンテンツを返す。例えば、コンテンツ管理システムは、共有リンクに関連付けられるコンテンツアイテムの位置を識別するコンテンツパスに沿って各共有リンクをリストアップする共有インデックスを含むことができる。したがって、コンテンツ管理システムは、共有インデックスを検索しコンテンツアイテムを返すために、要求側のクライアントデバイスから受信した共有リンクを使用することができる。
いくつかの実施形態において、コンテンツ管理システムは、ユーザがコンテンツアイテムを共有することを望むことを示すユーザからの共有入力を受信すると、コンテンツアイテムへのコンテンツリンクを生成することができる。共有入力は、コンテンツアイテムとともに提供される、ボタンなどのユーザインタフェース要素をユーザが選択した結果として受信され、コンテンツアイテムを共有するようにユーザに促す。いくつかの実施形態において、ユーザインタフェース要素は、ユーザがコンテンツアイテム上をスクロールすると現れるように構成される。ユーザインタフェース要素は、コンテンツアイテム上でユーザが右クリックすると、現れるウィンドウとして提示されてもよい。いくつかの実施形態において、共有入力は、ユーザがキーボードショートカットを用いた結果として受信されてもよい。
共有入力を受信すると、クライアントデバイスは、コンテンツアイテムに対する共有リンクを生成するために、共有リクエストをコンテンツ管理システムへ送信することができる。コンテンツ管理システムは共有リンクを生成することができ、ユーザへ提示するクライアントデバイスへ生成した共有リンクを返す。
或いは、いくつかの実施形態において、コンテンツ管理システムは、クライアントデバイスに格納される共有リンクを予め生成することができる。ユーザから共有入力を受信すると、クライアントデバイスは、新たな共有リンクがコンテンツ管理システムによって生成されることを要求するよりもむしろローカルに格納された共有リンクの1つを提供することができる。その後、クライアントデバイスは、ユーザへ提供される共有リンクと、共有のコンテンツアイテムとともに識別されるコンテンツパスとを識別するように、コンテンツ管理システムに共有リクエストを送信することができる。コンテンツ管理システムは、コンテンツパスと共有リンクとを関連付ける共有インデックスを更新するために、共有リクエストで受信したデータを使用することができる。
共有リンクは、複数の方法でユーザへ提供されうる。いくつかの実施形態において、共有リンクは、ユーザへ視覚的に提示されうる。例えば、共有リンクは、ユーザがコンテンツアイテムを共有するために電子メール、ソーシャルネットワーキングポスト等にコピーすることができるようなテキストでクライアントデバイス上に提示される。したがって、ユーザは、例えば共有リンクを電子メール、ソーシャルネットワーキングポストなどに入力するためにペースト(貼り付け)機能を用いることによって共有リンクにアクセスすることができる。
本開示の上述した特徴及び利点、並びに、他の特徴及び利点は、添付の図面に示される特定の複数の実施形態を参照することによって明らかになるであろう。それらの図面が本開示の特定の実施形態のみを示し、従って本発明の範囲を限定することを意図していないことが理解されれば、添付図面の使用を通じて、追加の特徴及び詳細とともに、本発明の原理が記載され説明される。
本発明に係るデバイス及びネットワークの一実施形態を示す図である。 クライアントデバイスから共有リクエストを受信すると、共有リンクを作成するコンテンツ管理システムを示す図である。 コンテンツアイテムへの共有リンクを提供するクライアントデバイスの方法の一実施形態を示す図である。 クライアントデバイスから共有リクエストを受信すると、共有リンクを作成するコンテンツ管理システムの方法の一実施形態を示す図である。 クライアントデバイス上のローカルメモリに格納される共有リンクをユーザに提供する一実施形態を示す図である。 ローカルメモリに格納される共有リンクをユーザに提供するクライアントデバイスの方法の一実施形態を示す図である。 クライアントデバイス上のローカルメモリに格納される共有リンクをユーザに提供するコンテンツ管理システムの方法の一実施形態を示す図である。 共有リンクによって要求されたコンテンツアイテムを返す方法の一実施形態を示す図である。 一実施形態に係るシステムを示す図である。
本開示の種々の実施形態を以下で説明する。特定の実施形態について説明するが、それらは説明の目的のために行われるものであることを理解されるべきである。当業者は他のコンポーネント及び構成が本開示の精神及び範囲から逸脱することなく利用することができることを理解するであろう。
本開示の技術は、コンテンツ管理システム上に格納されるコンテンツアイテムを共有する、当分野における必要性を解決する。ユーザが他のユーザとコンテンツアイテムを共有することを可能とするために、コンテンツ管理システムは、コンテンツアイテムが認証なしでアクセスされることを許容する、ユニフォーム・リソース・ロケータ(URL)などのカスタムネットワークアドレスである共有リンクを作成するように構成されうる。共有リンクは、コンテンツ管理システムからコンテンツアイテムを要求するように構成されうる。
コンテンツ管理システムは、コンテンツアイテムを識別するために共有リンクを使用することができ、要求側のユーザデバイスへ当該コンテンツを返す。例えば、コンテンツ管理システムは、共有リンクに関連付けられるコンテンツアイテムの位置を識別するコンテンツパスに沿って各共有リンクを識別する共有インデックスを含むことができる。したがって、コンテンツ管理システムは、共有インデックスを検索しコンテンツアイテムを返すために、要求側のクライアントデバイスから受信した共有リンクを使用することができる。
いくつかの実施形態において、コンテンツ管理システムは、ユーザがコンテンツアイテムを共有することを要求することに応じて、コンテンツアイテムへの共有ツリンクを生成することができる。例えば、クライアントデバイスで受信した共有入力は、ユーザがコンテンツアイテムを共有することを望むことを示すことができる。共有入力を受信すると、クライアントデバイスは、コンテンツアイテムに対する共有リンクを生成するために、共有リクエストをコンテンツ管理システムへ送信することができる。コンテンツ管理システムは共有リンクを生成することができ、クライアントデバイスへユーザが利用可能なように生成した共有リンクを返す。
或いは、いくつかの実施形態において、共有リンクは、ユーザがコンテンツアイテムを共有することを要求する前に、コンテンツ管理システムによって、予め生成され、クライアントデバイスに格納されうる。コンテンツアイテムを共有することを要求するユーザから共有入力を受信すると、クライアントデバイスは、コンテンツ管理システムによって生成された共有リンクを要求するよりもむしろローカルに格納された共有リンクの1つを提供することができる。これは、コンテンツ管理システムが共有リンクを作成することを待つことなく、共有リンクをユーザが利用可能となるため、利点である。さらに、クライアントデバイスがオフライン、即ち、コンテンツ管理システムとネットワーク通信状態にない場合であっても、共有リンクがユーザに利用可能となる。
いくつかの実施形態において、共有リンクがクライアントデバイス上のクリップボードなどのデータバッファにおいてユーザに利用可能となる。クライアントデバイスは、コンテンツ管理システムから受信した共有リンクをデータバッファに格納することができる。ユーザは、共有リンクを電子メール、ソーシャルネットワーキングポスト等へ入力するために、例えばペースト(貼り付け)機能を通じて共有リンクに容易にアクセスすることができる。
システム構成100の一例を図1に示し、電子デバイスはコンテンツ及び他のデータを交換するためにネットワークを介して通信を行う。当該システムは、図1に示すように、広域エリアネットワーク上で使用されるように構成されうる。しかしながら、本原理は、電子デバイスの相互通信を容易にする多種多様なネットワーク構成に適用することができる。例えば、図1のシステム100の各コンポーネントは、ネットワークにおいて、局所型の又は分散型の様式で実現されてもよい。
システム100において、ユーザは、直通通信及び中継通信の少なくとも一方によってネットワーク104へ接続されるクライアントデバイス102、102、102(まとめて102と表記する。)を通じてコンテンツ管理システム106と情報のやり取りを行うことができる。コンテンツ管理システム106は、デスクトップコンピュータ、モバイルコンピュータ、モバイル通信デバイス例えばモバイル電話機、スマートフォン、タブレット、スマートテレビジョン、セットトップボックス、及び、任意の他のネットワーク接続可能なコンピュータデバイスの少なくとも1つなどの、種々のクライアントデバイスからの接続をサポートすることができる。クライアントデバイス102は、種別、性能、オペレーティングシステムなどを変えることができる。さらに、コンテンツ管理システム106は、複数のクライアントデバイス102からの接続や複数のクライアントデバイス102との情報のやり取りを同時に受け付けることができる。
ユーザは、クライアントデバイス102にインストールされたクライアント側のアプリケーションを介してコンテンツ管理システム106と情報をやり取りすることができる。いくつかの実施形態において、クライアント側のアプリケーションは、コンテンツ管理システムの特定のコンポーネントを含むことができる。例えば、当該コンポーネントは、スタンドアロンのアプリケーション、1つ以上のアプリケーションプラグイン、及びブラウザ拡張の少なくとも1つであってもよい。しかしながら、ユーザはまた、クライアントデバイス102上に常駐し、コンテンツ管理システム106と通信を行うように構成された、ウェブブラウザなどのサードパーティアプリケーションを介してコンテンツ管理システム106と情報をやり取りしてもよい。いずれにしても、クライアント側のアプリケーションは、コンテンツ管理システム106と情報をやり取りするためにユーザに対してユーザインタフェース(UI)を提供することができる。例えば、ユーザは、ファイルシステムと一体化したクライアント側のアプリケーションを介して、又は、ウェブブラウザアプリケーションを用いて表示されたウェブページを介してコンテンツ管理システム106と情報をやり取りすることができる。
コンテンツ管理システム106は、ユーザによるコンテンツの格納とともに、コンテンツの検索(取り出し)、修正、閲覧、及び共有などの種々のコンテンツ管理タスクを実行することを可能とすることができる。さらに、コンテンツ管理システム106は、ユーザによる複数のクライアントデバイス102からのコンテンツへのアクセスを可能とすることができる。例えば、クライアントデバイス102は、ネットワーク104を介してコンテンツ管理システム106へコンテンツをアップロードすることができる。当該コンテンツは、後に、同じクライアントデバイス102又はいくつかの他のクライアントデバイス102を用いてコンテンツ管理システム106から取り出すことができる。
種々のコンテンツ管理サービスを容易にするために、ユーザは、コンテンツ管理システム106へのアカウントを作成することができる。アカウント情報は、ユーザアカウントデータベース150に保持されうる。ユーザアカウントデータベース150は、登録したユーザに対するプロファイル情報を格納することができる。いくつかのケースにおいて、ユーザプロファイルの個人情報は、ユーザ名称及び電子メールアドレスの少なくとも一方のみであってもよい。しかしながら、コンテンツ管理システム106はまた、追加のユーザ情報を受け付けるように構成されうる。
ユーザアカウントデータベース150はまた、アカウント種別、例えば無料又は有料、利用情報、例えばファイル編集履歴、認証された最大格納スペース、使用されている格納スペース、コンテンツ格納位置、セキュリティ設定、個人コンフィグレーション設定、コンテンツ共有データなどのアカウント管理情報を含みうる。アカウント管理モジュール124は、ユーザアカウントデータベース150のユーザアカウントの詳細を更新するか、及び、取得するかの少なくとも一方を行うように構成されうる。アカウント管理モジュール124は、コンテンツ管理システム106の任意の多くの他のモジュールと情報をやり取りするように構成されうる。
アカウントは、アカウントで認証される1つ以上のクライアントデバイス102から、デジタルデータ、文書、テキストファイル、オーディオファイル、ビデオファイル、画像ファイルなどのコンテンツを格納するために使用されうる。コンテンツはまた、異なる挙動の多種多様なフォルダ又は複数のコンテンツアイテムともにグループ化する他の仕組みを含むことができる。例えば、アカウントは任意のユーザがアクセス可能な公開フォルダを含むことができる。公開フォルダは、ウェブアクセス可能なアドレスを割り当てられうる。ウェブアクセス可能なアドレスへのリンクは、公開フォルダのコンテンツにアクセスするために使用されうる。他の実施形態において、アカウントは、写真を対象とし、写真に適合した特定の属性及び動作を提供する写真フォルダ、オーディオファイルを再生する機能を提供し、他のオーディオ関連の動作を実行するオーディオフォルダ、又は、他の特定用途のフォルダを含むことができる。アカウントは、複数のユーザアカウントにリンク付けされた、又は、複数のユーザアカウントで利用可能な共有フォルダ又はグループフォルダを含むことができる。複数のユーザへの許可は、共有フォルダにおいて異なってもよい。
コンテンツは、コンテンツストレージ160に格納されうる。コンテンツストレージ160は、1つのストレージデバイス、複数のストレージデバイス、又はサーバであってもよい。或いは、コンテンツストレージ160は、1つ以上の通信ネットワークを介してアクセス可能なクラウドストレージプロバイダ、又は、ネットワークストレージであってもよい。コンテンツ管理システム106は、クライアントデバイスからの複雑性と詳細を隠すことができ、それにより、クライアントデバイス102はコンテンツアイテムがコンテンツ管理システム106によって格納されていることを正確に知る必要がない。1つの変形例において、コンテンツ管理システム106は、クライアントデバイス102に明らかなように同じフォルダ階層のコンテンツアイテムを格納することができる。しかしながら、コンテンツ管理システム106は、自身の順序、構成、又は階層でコンテンツアイテムを格納することができる。コンテンツ管理システム106は、ネットワークアクセス可能ストレージ(SAN)やレイド(冗長アレイの安価ディスク:RAID)等に、コンテンツアイテムを格納することができる。コンテンツストレージ160は、FAT、FAT32、NTFS、EXT2、EXT3、EXT4、ReiserFS、BTRFSなどの1つ以上のパーティションタイプを用いてコンテンツアイテムを格納することができる。
コンテンツストレージ160はまた、コンテンツアイテムと、コンテンツアイテム種別と、種々のアカウント、フォルダ若しくはグループへのコンテンツアイテムの関係と、を記述するメタデータを格納することができる。コンテンツアイテムにおけるメタデータは、コンテンツアイテムの一部として格納することができ、又は、コンテンツアイテムとは区別して格納することができる。1つの変形例において、コンテンツストレージ160に格納された各コンテンツアイテムは、システム全体で固有の識別子を割り当てられてもよい。
コンテンツストレージ160は、複製ファイル又はファイルの複製セグメントを識別するのに必要とされるストレージスペースの量を低減させることができる。複数のコピーを格納する代わりに、コンテンツストレージ160は、単一のコピーを格納し、その後ポインタを使用するか、又は、複製を単一のコピーへリンク付ける他の仕組みを使用することができる。同様に、ファイルへの変更、ファイルの異なるバージョン(分岐バージョンツリーを含む)、及び変更履歴を追跡するファイルバージョン制御を用いて、コンテンツストレージ160は、より効果的にファイルを格納することができるとともに、元に戻す操作(アンドゥ操作)の機能を提供することができる。この変更履歴は、オリジナルのファイルバージョンへ適用する際に、変更したファイルバージョンを生成する変更の組み合わせを含むことができる。
コンテンツ管理システム106は、1つ以上のクライアントデバイス102からコンテンツの自動的な同期化をサポートするように構成されてもよい。同期化は、プラットフォームにとらわれなくてよい。つまり、コンテンツは、様々な種別、性能、オペレーティングシステムなどの複数のクライアントデバイス102にわたって同期化されうる。例えば、クライアントデバイス102は、コンテンツ管理システム106の同期化モジュール132を介して、クライアントデバイス102のファイルシステムにおけるコンテンツと、関連するユーザアカウントのコンテンツとを同期化するクライアントソフトウェアを含んでもよい。いくつかのケースにおいて、クライアントソフトウェアは、指定したフォルダ及びそのサブフォルダのコンテンツへの任意の変更、例えば、ファイル若しくはフォルダを新規作成、削除、修正、複製、又は移動するなどを同期化することができる。クライアントソフトウェアは、ソフトウェアアプリケーションを区別することができ、オペレーティングシステムの既存のコンテンツ管理アプリケーションと一体化することができ、或いは、それらの組み合わせを行うことができる。既存のコンテンツ管理アプリケーションと一体化するクライアントソフトウェアの一実施形態において、ユーザはローカルフォルダで直接コンテンツを扱うことができ、一方でバックグランド処理がローカルフォルダに対する変更を監視し、コンテンツ管理システム106へそれらの変更を同期させる。逆に、バックグラウンド処理は、コンテンツ管理システム106で更新されたコンテンツを識別することができ、それらの変更をローカルフォルダへ同期させることができる。クライアントソフトウェアは、同期操作の通知を提供することができ、コンテンツ管理アプリケーション内で直接的にコンテンツの状態の指標を提供することができる。時には、クライアントデバイス102は、ネットワーク接続が利用可能でないかもしれない。そのような状況において、クライアントソフトウェアは、リンク付けされたフォルダのファイルへの変更を監視することができ、ネットワーク接続が利用可能になると、コンテンツ管理システム106へ最新の同期化におけるそれらの変更を通知する(キューイングする)ことができる。同様に、ユーザは、手動で、コンテンツ管理システム106との同期化を停止、又は、一時停止することができる。
ユーザはまた、ユーザインタフェースモジュール122によって生成され、管理されているウェブインタフェースを介してコンテンツを閲覧し、又は操作することができる。例えば、ユーザは、ウェブブラウザにおいて、コンテンツ管理システム106によって提供されるウェブアドレスへナビゲートすることができる。ウェブインタフェースを通じて行われる、新たなバージョンのファイルを更新するなどのコンテンツストレージ160のコンテンツへの変更又は更新は、ユーザのアカウントと関連付けられた他のクライアントデバイス102へ戻すように伝えられる。例えば、それぞれが自身のクライアントソフトウェアを有する複数のクライアントデバイス102は、単一のアカウントに関連付けられ、アカウント内のファイルは、複数のクライアントデバイス102のそれぞれの間で同期化されうる。
コンテンツ管理システム106は、種々のクライアントデバイス102とインタフェースで接続するための通信インタフェース120を含み、アプリケーション・プログラミング・インタフェース(API)を介して他のコンテンツ及びサービスプロバイダ109、109、...109(まとめて”109”)の少なくとも1つと情報をやり取りすることができる。所定のソフトウェアアプリケーションは、ユーザの代わりにコンテンツストレージにアクセスすることができる。例えば、スマートフォン又はタブレットコンピュータデバイス上のアプリなどのソフトウェアパッケージは、ユーザが読み、書き、作成、削除、共有、又はその他のコンテンツへの操作のためにクレデンシャルを提供すると、コンテンツ管理システム106へ直接の呼び出しがプログラムで行われうる。同様に、APIはウェブサイトを通じてユーザがコンテンツストレージ160の全て又は一部へアクセスすることを許容することができる。
コンテンツ管理システム106はまた、認証されたクライアント及びユーザのみがファイルへアクセスすることを保証するために、ユーザクレデンシャル、セキュリティトークン、API読み出し、特定のクライアントデバイスなどを検証する認証モジュール126を含むことができる。さらに、コンテンツ管理システム106は、集約ファイル操作、ユーザアクション、ネットワーク利用、使用済み合計ストレージスペースとともに、他の技術、利用、又はビジネス手法について、追跡したり報告したりすることができる解析モジュール134を含むことができる。プライバシーポリシー及びセキュリティポリシーの少なくとも一方は、コンテンツ管理システム106で格納されるユーザデータへの認証の無いアクセスを防止することができる。
コンテンツ管理システム106は、共有コンテンツの公開又は非公開を管理する共有モジュール130を含むことができる。共有コンテンツの公開は、コンテンツ管理システム106とのネットワーク通信で任意のコンピュータデバイスからアクセス可能なコンテンツアイテムを作成することを含むことができる。共有コンテンツの非公開は、各ユーザアカウントがコンテンツアイテムへアクセスするように、2つ以上のユーザアカウントと、コンテンツストレージ160のコンテンツアイテムをリンク付けることを含むことができる。共有は、プラットフォームにとらわれない方法で実行されてもよい。つまり、コンテンツは、様々な種別、性能、オペレーティングシステムなどの複数のクライアントデバイス102にわたって共有されうる。コンテンツは、様々なユーザアカウントの種別にわたって共有されてもよい。
いくつかの実施形態において、コンテンツ管理システム106は、コンテンツストレージ160の各コンテンツアイテムの位置を識別するコンテンツディレクトリを維持するように構成されうる。コンテンツディレクトリは、コンテンツストレージに格納される各コンテンツアイテムに対する固有のコンテンツ入力を含むことができる。
コンテンツ入力は、コンテンツストレージ160のコンテンツアイテムの位置を識別するために使用されうるコンテンツパスを含むことができる。例えば、コンテンツパスは、メモリ内のコンテンツアイテムの正確なストレージアドレスを識別することができる。いくつかの実施形態において、コンテンツパスは、コンテンツアイテムの一部をそれぞれが含む、メモリ内の複数の位置を識別することができる。
さらに、コンテンツパスは、コンテンツアイテムと関連付けられるコンテンツアイテムの名称と、フォルダ階層を含むことができる。例えば、コンテンツパスは、コンテンツアイテムが位置するフォルダ又はフォルダのパスとともに、コンテンツアイテムの名称を含むことができる。コンテンツ管理システム106は、適切なフォルダ階層のコンテンツアイテムを提示するために、コンテンツパスを使用することができる。
コンテンツパスに加えて、コンテンツ入力はまた、コンテンツアイテムへのアクセスを有するユーザアカウントを識別するユーザアカウント識別子を含むことができる。いくつかの実施形態において、複数のユーザアカウント識別子は、コンテンツアイテムが複数のユーザアカウントによるアクセスが共有されていることを示す単一のコンテンツ入力と関連づけられる。
非公開のコンテンツアイテムを共有するために、共有モジュール130は、ユーザアカウント識別子を、コンテンツアイテムに関連付けられるコンテンツ入力に追加するように構成され、このように、追加したユーザアカウントにコンテンツアイテムへアクセスすることを許可する。共有モジュール130はまた、コンテンツアイテムへのユーザアカウントのアクセスを制限するために、コンテンツ入力からユーザアカウント識別子を取り除くように構成されてもよい。
公開のコンテンツアイテムを共有するために、共有モジュール130は、コンテンツアイテムにアクセスするように使用されうる共有リンクを生成するように構成されうる。いくつかの実施形態において、共有リンクは、コンテンツアイテムが認証無しでアクセスされることを許容する、ユニフォーム・リソース・ロケータ(URL)などのカスタムネットワークアドレスであってもよい。生成される共有リンクは、共有リンクと関連付けられるコンテンツアイテムを識別するために使用されうる。共有リンクが生成すると、共有モジュール130は、共有インデックスのエントリを作成する。エントリは、生成された共有リンクと、コンテンツ管理システム106上でコンテンツアイテムの位置を識別するために使用されうるコンテンツアイテムのコンテンツパスを含むことができる。共有リンクを介してリクエストを受信すると、コンテンツ管理システム106は、コンテンツアイテムの位置を識別するために、共有インデックスで共有リンクを検索することができる。従って、コンテンツ管理システム106は、要求側のクライアントデバイス102へコンテンツアイテムを返すことができる。
いくつかの実施形態において、ユーザがコンテンツアイテムを共有する要求をすると、共有リンクが作成されうる。例えば、クライアントデバイス102は、コンテンツアイテムを共有する要求を行う共有入力を受信すると、コンテンツ管理システム106へ共有リクエストを送信するように構成されうる。クライアントデバイス102から共有リクエストを受信すると、コンテンツ管理システム106は、ユーザがコンテンツアイテムを共有するために利用可能にされる共有リンクを作成し、クライアントデバイス102へ当該共有リンクを送信するように構成されうる。
コンテンツ管理システム106へ送信される共有リクエストは、共有入力によって識別されるコンテンツアイテムのコンテンツパスを含むことができる。クライアントデバイス102から共有リクエストを受信すると、コンテンツ管理システム106は、共有リンクを生成し、生成した共有リンクとクライアントデバイス102から受信したコンテンツパスとを含む共有インデックスのエントリを作成するように構成されうる。コンテンツ管理システム106は、ユーザがコンテンツアイテムを共有するために利用可能にされる、作成した共有リンクをクライアントデバイス102へ送信することができる。
図2は、クライアントデバイス102から共有リクエストを受信すると、共有リンクを作成するコンテンツ管理システム106を示す図である。図示するように、クライアントデバイス102は、コンテンツパス”foo”を有するコンテンツアイテム”A”を含む。コンテンツアイテム”A”への共有リンクを作成するために、クライアントデバイス102は、コンテンツ管理システム106へ共有リクエスト205を送信することができる。共有リクエスト205は、コンテンツアイテム”A”に対してコンテンツパス”foo”を含むことができる。
いくつかの実施形態において、クライアントデバイス102は、クライアントデバイス102のユーザがコンテンツアイテムを共有したいことを示す共有入力の受信に応じて、共有リクエスト205を送信することができる。共有入力は、ユーザが他のユーザと共有することを望むコンテンツアイテムを識別することができる。例えば、いくつかの実施形態において、クライアントデバイス102は、ユーザがコンテンツアイテム”A”を共有させることを可能とするボタンなどのユーザインタフェース要素をユーザに提示することができる。ユーザインタフェース要素の選択は、コンテンツアイテム”A”を識別する共有入力の結果をもたらすことができる。
共有リクエスト205を受信すると、コンテンツ管理システム106は、共有リンク”X”を生成することができる。さらに、コンテンツ管理システム106は、生成した共有リンク”X”と、クライアントデバイス102から受信されるコンテンツパス”foo”とを含む共有インデックス210のエントリを追加することができる。コンテンツ管理システム106は、生成した共有リンク”X”を、メッセージ215で、クライアントデバイス102へ送信することができる。クライアントデバイス102は、コンテンツアイテム”A”共有するために使用することができる、受信した共有リンク”X”を提示することができる。
図1の説明に戻り、いくつかの実施形態において、クライアントデバイス102へ返された共有リンクは、クライアントデバイス102によって視覚的に提示されうる。例えば、共有モジュール130は、クライアントデバイス102にウィンドウに共有リンクを提示させる。その後、ユーザは、電子メールや、ソーシャルネットワーキングサイトへのポストなどに共有リンクをコピーすることによって、容易にコンテンツアイテムを共有することができる。
いくつかの実施形態において、共有リンクは、クライアントデバイス102で実行される複数のアプリケーションからアクセス可能な、クライアントデバイス102上のデータバッファに格納されうる。例えば、共有リンクは、クリップボードなどのデータバッファへ格納され、ユーザは電子メールや、ソーシャルネットワーキングポストへ共有リンクを含ませるように、ペースト機能を使用することができる。
いくつかの実施形態において、クライアントデバイス102は、共有リンクが作成されるのに必要な時間を割り当てるように構成されることができる。例えば、共有リンクの作成は、ネットワーク接続の欠落、低速なネットワーク接続、コンテンツ管理システム106による遅延、などに起因して遅延が発生するかもしれない。長期間の間、ユーザが要求した共有リンクを待機していることが起こらないことを保証するために、クライアントデバイス102は、コンテンツ管理システム106へ共有リクエストを送信すると、タイマーをセットするように構成されうる。コンテンツ管理システム106へ共有リクエストを送信した後に割り当てられた時間内に共有リンクが返されない場合、クライアントデバイス102じゃ、共有リンクが作成できなかったことをエラーメッセージでユーザに提示するように構成されうる。
割り当てられた時間が経過した後に共有リンクがクライアントデバイス102へ返された場合、クライアントデバイス102は、後のユーザのために、受信した共有リンクをクライアントデバイス102のローカルメモリに格納することができる。例えば、ユーザが後に同じコンテンツアイテムを公開して共有しようとする場合に、クライアントデバイス102は、ローカルメモリから共有リンクを取り出し、当該共有リンクをユーザへ利用可能とすることができる。したがって、クライアントデバイス102は、コンテンツ管理システム106へ共有リクエストを送信することなく、共有リンクをユーザに利用可能にすることができる。このタイプの実施形態において、クライアントデバイス102hs、コンテンツ管理システム106へ共有リクエストを送信する前に、コンテンツアイテムへの共有リンクについて、クライアントデバイス102上のローカルメモリを確認するように構成されうる。
図3は、コンテンツアイテムへの共有リンクを提供するクライアントデバイスの方法の一実施形態を示す。図3には特定のステップが示されるものの、他の実施形態では、より多いステップ、より少ないステップを有する方法であってもよい。図示するように、本方法は、ブロック305から開始され、共有入力がユーザから受信される。共有入力は、コンテンツアイテムを公開して共有するように要求する、ユーザから受信した入力であってもよい。例えば、共有入力は、ユーザにコンテンツアイテムを共有することを促す、コンテンツアイテムと提示される、ボタンなどのユーザインタフェース要素をユーザが選択した結果として受信されうる。
共有入力を受信すると、本方法は、ブロック31に進み、クライアントデバイスが、コンテンツアイテムの共有リンクがクライアントデバイスのローカルメモリに格納されているかどうかを判定する。例えば、ユーザがコンテンツアイテムを公開して共有するように前もって要求していてもよく、結果として、共有リンクがクライアントデバイスのローカルメモリに格納され、コンテンツアイテムと関連付けられる。クライアントデバイスは、コンテンツアイテムへの共有リンクがローカルメモリに格納されているかどうかを判定するためにローカルメモリを検索することができる。
ブロック310で、クライアントデバイスがコンテンツアイテムへの共有リンクがクライアントデバイスに格納されていると判定した場合、本方法はブロック330に進み、共有リンクがクライアントデバイス上のクリップボードなどのデータバッファへ格納される。その後、本方法は、ブロック335へ進み、共有リンクが作成された通知をユーザへ提示する。本方法はブロック350へ進み、受信した共有リンクがローカルメモリに格納され、コンテンツアイテムと関連付けられる。その後、本方法は終了する。
ブロック310で、クライアントデバイスがコンテンツアイテムへの共有リンクがローカルメモリに存在していないと判定した場合、本方法は、ブロック315に進み、クライアントデバイスは、コンテンツ管理システムへ共有リクエストを送信する。共有リクエストは、コンテンツアイテムのコンテンツパスを含むことができる。
ブロック320で、クライアントデバイスは、コンテンツ管理システムからの応答を受信するための、タイマーを開始することができる。例えば、クライアントデバイスは、コンテンツ管理システムからの共有リンクを含む応答を受信するために共有リクエストを送信した後に所定の時間を割り当てることができる。
ブロック325で、本方法は、コンテンツ管理システムからの応答を受信するために割り当てられた所定の時間内に共有リンクを受信したかどうかを判定する。ブロック325で共有リンクが所定の時間内に受信されたと判定した場合、本方法はブロック330に進み、クライアントデバイスは、受信した共有リンクをデータバッファに格納する。本方法はその後ブロック335に進み、クライアントデバイスは、共有リンクがデータバッファに格納されたことを示す通知をユーザへ提供する。その後、本方法はブロック350に進み、受信した共有リンクがローカルメモリに格納され、コンテンツアイテムと関連付けられる。本方法はその後終了する。
代替的に、ブロック325で、共有リンクが割り当てられた時間内に受信されなかった場合、本方法はブロック340に進み、エラーメッセージがユーザに提示される。例えば、クライアントデバイスは、共有リンクが作成されなかったことや、ユーザが後に共有リンクを作成することを試みることができることを示すメッセージを提示することができる。
共有リンクが割り当てられた時間内にコンテンツ管理システムから受信されなかったものの、コンテンツ管理システムはまだクライアントデバイスへ共有リンクを返すことができる。例えば、クライアントデバイスとコンテンツ管理システムとの間で発生するネットワーク接続などの問題は、共有リンクが割り当てられた時間が経過した後にクライアントデバイスへ送信される結果となる遅延の原因となる。したがって、ブロック345で、クライアントデバイスは、共有リンクがクライアントデバイスによって受信されたかどうかを判定する。ブロック345で共有リンクがコンテンツ管理システムから受信されなかった場合、本方法は終了する。
ブロック345で共有リンクがコンテンツ管理システムから受信された場合、本方法はブロック350へ進み、受信した共有リンクがクライアントデバイスのローカルリンクに格納され、コンテンツアイテムと関連付けられる。したがって、ユーザがその後にコンテンツアイテムを共有することを選択した場合、クライアントデバイスは、ローカルメモリに格納した共有リンクを提供することができ、共有リクエストをコンテンツ管理システムへ送信する必要はない。その後本方法は終了する。
図4は、クライアントデバイスから共有リクエストを受信した際に共有リンクを作成するコンテンツ管理システムの方法の一実施形態を示す。図4には特定のステップが示されるものの、他の実施形態では、より多いステップ、より少ないステップを有する方法であってもよい。図示するように、本方法はブロック405から開始され、共有リクエストはクライアントデバイスからコンテンツ管理システムによって受信される。共有リクエストは、識別したコンテンツアイテムに対する共有リンクを作成するリクエストであってもよい。共有リクエストは、コンテンツアイテムを位置づけるために使用されるコンテンツアイテムに対する、コンテンツパス又は他のコンテンツアイテム識別子を含むことができる。
共有リクエストを受信すると、本方法はブロック410に進み、コンテンツ管理システムは共有リンクを生成する。コンテンツ管理システムは、当分野で既知の種々の方法の何れかで共有リンクを生成することができるが、生成される共有リンクはそれぞれ固有であることが好ましい。
共有リンクを作成すると、本方法はブロック415に進み、コンテンツ管理システムは、共有インデックスの新たなエントリを作成する。共有インデックスは、コンテンツ管理システムによって作成される共有リンクのリストであってもよい。共有インデックスは、さらに、共有インデックスにリストされる各共有リンクへ対応するコンテンツパスをリストしてもよい。コンテンツ管理システムは、コンテンツ管理システムによって作成される共有リンクとともにクライアントデバイスから受信したコンテンツパスを含む共有インデックスに新たなエントリを追加することができる。
本方法はブロック420に進み、コンテンツ管理システムによって作成された共有リンクがクライアントデバイスへ送信され、その後ユーザへ提供される。その後本方法は終了する。
図1の開示に戻り、いくつかの実施形態において、共有リンクは、クライアントデバイス102ローカルメモリに予めキャッシュされ、共有入力を受信するとユーザへ提供される。クライアントデバイス102上での共有リンクを予めキャッシュすることは、共有入力を受信すると、コンテンツ管理システム106からの共有リンクを要求する上でいくつかの利点を提供する。例えば、クライアントデバイス102上で共有リンクを予めキャッシュすることによって、クライアントデバイス102は、コンテンツ管理システム106へリクエストを送信する必要なく、ほぼすぐにユーザへ共有リンクを利用可能とすることができる。したがって、クライアントデバイス102は、共有入力を受信するとほぼすぐにユーザに共有リンクを利用可能とすることができる。さらに、クライアントデバイス102は、クライアントデバイス102がオフラインである場合、即ち、クライアントデバイス102がコンテンツ管理システム106とネットワーク接続されていない間であってもユーザに共有リンクを利用可能とすることができる。
クライアントデバイス102上で共有リンクを予めキャッシュするために、共有モジュール130は、共有リンクを作成し、クライアントデバイス102へ共有リンクを送信することができる。クライアントデバイス102は、クライアントデバイス102上のローカルメモリに共有リンクを格納することができる。さらに、共有モジュール130は、クライアントデバイス102へ送信される作成した共有リンクのみを含む共有インデックスに新たなエントリを作成することができる。したがって、新たなエントリはコンテンツパスを含まない。
共有入力が受信されると、クライアントデバイス102は、ローカルメモリに格納された共有リンクをユーザに利用可能にすることができる。その後、クライアントデバイス102は、コンテンツアイテムのコンテンツパスとユーザへ提供される共有リンクとを含む、コンテンツ管理システム106への共有リクエストを送信することができる。共有リクエストを受信すると、共有モジュール130は、クライアントデバイス102から受信したコンテンツパスを含む共有リンクと関連付けられる共有インデックス入力を更新するために、コンテンツパスと共有リンクとを使用することができる。
図5A乃至図5Cは、予めキャッシュした共有リンクをユーザに利用可能にする一実施形態を示す。図示するように、図5Aにおいて、クライアントデバイス102は、ファイルパス”foo”とともにコンテンツアイテム”A”を含む、クライアントデバイス102は、共有リンクを含まないローカルストレージ505を含む。
さらに、コンテンツ管理システム106は、3つの共有リンク”X”、”Y”、及び”Z”を作成しており、共有インデックス510の3つの共有リンクのそれぞれに対するエントリも作成している。図示するように、共有インデックス510の各エントリは、共有リンクの値を含み、コンテンツパスの値は含まない。
図5Bは、コンテンツ管理システム106が3つの共有リンク”X”、”Y”、及び”Z”をメッセージ515を介してクライアントデバイス102へ送信する様子を示す。図示するように、送信された共有リンクは、クライアントデバイス102上のローカルストレージ505に格納される。コンテンツ管理システム106は、任意の時間でメッセージ515をクライアントデバイスへ送信することができる。例えば、いくつかの実施形態において、コンテンツ管理システム106は、クライアントデバイス102がコンテンツ管理システム106によって管理されるストレージアカウントで認証されると、クライアントデバイス102へメッセージ515を送信することができる。
図5Cは、クライアントデバイス102がユーザからの共有入力を受信すると、予めキャッシュされた共有リンクを利用可能にする様子を示す。クライアントデバイス102は、コンテンツアイテム”A”を共有するためにユーザから共有入力を受信することができる。共有入力を受信すると、クライアントデバイス102は、任意の利用可能な共有リンクを識別するために、ローカルメモリ505を検索することができる。図示するように、3つの共有リンク全てが利用可能であり、クライアントデバイス102は、ユーザに共有リンク”X”を提供することができる。
共有入力の受信に応じて、ユーザに共有リンク”X”を提供すると、クライアントデバイス102は、コンテンツ管理システム106へ共有リクエスト520を送信することができる。共有リクエスト520は、コンテンツアイテム”A”のコンテンツパス”foo”とともに、ユーザへ提供される共有リンク”X”を含むことができる。
コンテンツ管理システム106は、共有インデックス510を更新するために、共有リンク”X”と、コンテンツパス”foo”とを使用することができる。図示するように、コンテンツ管理システム106は、クライアントデバイス102から受信したコンテンツパス”foo”を含むように共有リンク”X”と関連付けられるエントリを更新している。
さらに、いくつかの実施形態において、コンテンツ管理システム106は、共有リクエスト520の受信に応じて、クライアントデバイス102上のローカルメモリ505に格納された共有リンク”X”を置き換えるために新たな共有リンクを送信することができる。代替的に、いくつかの実施形態において、クライアントデバイス102は、ローカルメモリ505に格納された共有リンクの数が少ない、例えば割り当てられていない共有リンクのみが利用可能であると判定すると、コンテンツ管理システムから新たな共有リンクを要求するように構成されうる。
図6は、ローカルメモリに格納された共有リンクをユーザに提供するクライアントデバイスの方法の一実施形態を示す。図6には特定のステップが示されるものの、他の実施形態では、より多いステップ、より少ないステップを有する方法であってもよい。図示するように、本方法はブロック605から開始され、クライアントデバイスが共有すべきコンテンツアイテムを識別するユーザからの共有入力を受信する。共有入力を受信すると、本方法は、ブロック610に進み、クライアントデバイスは、利用可能な共有リンクがクライアントデバイスのローカルメモリに格納されているかどうかを判定する。利用可能な共有リンクがコンテンツアイテムと関連付けられていない共有リンクであってもよく、即ち、共有リンクが共有入力に応じてユーザに提供されない。
ブロック610で、クライアントデバイスがローカルメモリに利用可能共有リンクがないと判定した場合、本方法は、ブロック635へ進み、エラーメッセージがユーザへ提示される。例えば、エラーメッセージは、ユーザに対して、共有リンクが当該時間で提供できず、ユーザは後に再度試みるべきであることを警告することができる。その後、本方法は終了する。
ブロック610で、クライアントデバイスがローカルストレージに格納された利用可能な共有リンクがあると判定した場合、本方法はブロック615に進み、クライアントデバイス利用可能な共有リンクをデータバッファに格納する。本方法はその後ブロック620に進み、クライアントデバイスは共有リンクがデータバッファに格納されたことをユーザに通知する。
ブロック625で、クライアントデバイスは、コンテンツ管理システムへ共有リクエストを送信する。共有リクエストは、共有リンクと、コンテンツアイテムと関連付けられたコンテンツパスとを含むことができる。本方法はその後ブロック630へ進み、新たな共有リンクがコンテンツ管理システムから受信されうる。新たな共有リンクは、ローカルストレージに格納され、他の共有入力の受信に応じてユーザに提供されうる。
図7は、クライアントデバイス上のローカルストレージに格納された共有リンクをユーザに提供するコンテンツ管理システムの方法の一実施形態を示す。図7には特定のステップが示されるものの、他の実施形態では、より多いステップ、より少ないステップを有する方法であってもよい。図示するように、本方法はブロック705から開始され、コンテンツ管理システムは、共有リンクを生成する。共有リンクは当分野の種々の既知の方法を用いてせいせいされるが、好適な実施形態において、生成された共有リンクのそれぞれは固有である。
共有リンクを生成すると、コンテンツ管理システムは、共有インデックスの新たなエントリを作成することができる。共有インデックスは、各共有リンクがアクセスを提供する、コンテンツアイテムのコンテンツパスとともに、コンテンツ管理システムによって生成された共有リンクをリストアップすることができる。コンテンツ管理システムによって生成された新たなコンテンツエントリは、生成した共有リンクを含むことができ、コンテンツパスに対する値は含まない。
共有インデックスのエントリが作成されると、コンテンツ管理システムは、共有リンクをクライアントデバイスへ送信することができ、それはクライアントデバイスのローカルメモリに格納されうる。
ブロック720で、コンテンツ管理システムは、クライアントデバイスから共有リクエストを受信することができる。共有リクエストは、コンテンツパスとともに共有リンクを含むことができる。その後、本方法はブロック725に進み、コンテンツ管理システムは、クライアントデバイスから受信したコンテンツパスを含む共有リンクに関連付けられた共有インデックスのエントリを更新する。その後本方法は終了するか、又は、繰り返される。
図1の説明に戻り、開示された技術の1つの利点は、コンテンツ管理システム106に格納されているコンテンツアイテムを必要とすることなく、共有リンクがユーザに提供されることである。例えば、ユーザは、コンテンツ管理システム106へコンテンツアイテムが更新される前に、クライアントデバイス102上にコンテンツアイテムを共有するように選択することができる。
共有リンクをユーザに利用可能とすることができるものの、共有リンクはコンテンツアイテムがコンテンツ管理システム106に更新されるまで、コンテンツへのアクセスを提供しないであろう。従って、共有モジュール130は、共有リンクを介して要求されたコンテンツアイテムがコンテンツ管理システム106に格納されているかどうかを判定し、コンテンツアイテムがコンテンツ管理システム106に格納されていなければユーザにエラーメッセージを返すように構成される。
いくつかの実施形態において、クライアントデバイス102は、当該クライアントデバイス102で作成されるように、コンテンツアイテムへの共有リンクを作成するように構成されうる。例えば、ユーザは、クライアントデバイス102のカメラで写真を撮ったり、或いは、クライアントデバイス102で提示される画面のスクリーンショットを撮ったりすることによって、クライアントデバイス102によって提供される機能を用いてクライアントデバイス102上でコンテンツアイテムを作成することができる。
クライアントデバイス102は、新たに作成されたコンテンツアイテムを共有する共有入力である場合にクライアントデバイス102のコンテンツアイテムの作成を考慮するように構成されうる。従って、例えばクライアントデバイス102のスクリーンショットを撮ることによってコンテンツアイテムをユーザが作成すると、クライアントデバイスは、ユーザへ新たに作成されたクライアントデバイスへの共有リンクを利用可能とするように攻勢される。例えば、いくつかの実施形態において、クライアントデバイス102は共有リンクに対する、コンテンツ管理システム106へ共有リクエストを送信することができる。或いは、いくつかの実施形態において、クライアントデバイス102は、クライアントデバイス102のユーザに利用可能とする、クライアントデバイス102上のローカルメモリに格納された、予めキャッシュされた共有リンクを作成することができる。
したがって、新たなコンテンツアイテムをユーザ作成すると、クライアントデバイス102は、例えばクライアントデバイス上のデータバッファに共有リンクを格納することによってコンテンツアイテムにアクセスする共有リンクを利用可能にすることができる。ユーザは、電子メール、ソーシャルネットワーキングホスト等へデータバッファに格納された共有リンクを貼り付けることによってコンテンツアイテムを共有することができる。
コンテンツ管理システム106が特定のコンポーネントで提示されている一方で、システム106のアーキテクチャ構成がただの1つの可能な構成であり、より多い構成又はより少ない構成での他の構成も可能であることを当業者には理解されるべきである。
図8は、共有リンクによって要求されるコンテンツアイテムを返す方法の一実施形態を示す。図8には特定のステップが示されるものの、他の実施形態では、より多いステップ、より少ないステップを有する方法であってもよい。図示するように、本方法はブロック805から開始され、コンテンツアイテムのリクエストが要求側のクライアントデバイスからコンテンツ管理システムで受信される。コンテンツアイテムのリクエストは、公開されている共有されたコンテンツアイテムにアクセスするリクエストであってもよい。
コンテンツアイテムのリクエストは、コンテンツアイテムを共有するように作成された共有リンクを用いて送信されうる。例えば、いくつかの実施形態において、コンテンツアイテムのリクエストは、共有リンクをユーザが選択すると、送信されうる。或いは、いくつかの実施形態において、コンテンツアイテムのリクエストは、ウェブブラウザアプリケーションのURLフィールドに共有リンクをユーザが入力すると送信されてもよい。
コンテンツアイテムのリクエストを受信すると、本方法はブロック810に進み、コンテンツ管理システムは、要求されたコンテンツアイテムに関連付けられた共有インデックスのエントリを識別する。例えば、コンテンツアイテムのリクエストは、共有リンクを含むことができ、コンテンツ管理システムは、対応するエントリに対する共有インデックスを検索するために共有リンクを使用することができる。
ブロック815で、コンテンツ管理システムは、識別された共有インデックスのエントリがデータパスを含むかどうかを判定する。例えば、実施形態において、共有リンクがクライアントデバイスのローカルメモリからユーザへ提供されものの、クライアントデバイスはコンテンツ管理システムへコンテンツアイテムのコンテンツパスをまだ送信していない。
ブロック815でコンテンツパスが共有インデックスのエントリに含まれていない場合、本方法はブロック835に進み、エラーメッセージが要求側のクライアントデバイスへ返される。エラーメッセージは要求されたコンテンツアイテムがまだ利用可能でないことを示してもよい。
ブロック815で共有インデックスのエントリがコンテンツパスに含まれている場合、本方法はブロック820に進み、コンテンツ管理システムはコンテンツパスを用いてコンテンツアイテムを位置付ける。ブロック825で、コンテンツ管理システムは、コンテンツアイテムがコンテンツ管理システムに格納されているかどうかを判定する。
ブロック825でコンテンツアイテムがコンテンツ管理システムに格納されていないと判定されると、本方法はブロック835に進み、エラーメッセージが要求側のユーザデバイスへ送信される。エラーメッセージは、コンテンツアイテムがコンテンツ管理システムにまだ格納されていないことを示してもよい。いくつかの実施形態において、エラーメッセージがコンテンツアイテムの更新状態を示すこともできる。例えば、エラーメッセージは、コンテンツアイテムが更新を開始しているかどうか、開始していればコンテンツ管理システムへの更新がどの程度完了しているかを示すことができる。さらに、エラーメッセージは更新の予測完了時間を含むことができる。
ブロック825でコンテンツアイテムがコンテンツアイテムに格納されているとコンテンツ管理システムが判定した場合、本方法はブロック830に進み、コンテンツ管理システムは要求側のクライアントデバイスへコンテンツアイテムを返すことができる、その後本方法は終了する。
図9A及び図9Bは可能なシステムの実施形態を示す。本技術を実施する際により好適な実施形態が当業者に明らかになるであろう。当業者はまた他のシステムの実施形態が可能であることを用意に理解するであろう。
図9Aは、従来のシステムバスのコンピュータシステムアーキテクチャ900を示し、システムのコンポーネントはバス905を用いてそれぞれ他のコンポーネントと電気的に通信される。例示のシステム900は、処理部(CPU又はプロセッサ)910と、読み取り専用メモリ(ROM)920、ランダムアクセスメモリ(RAM)925などのシステムメモリ915を含む種々のシステムコンポーネントをプロセッサ910へ連結するシステムバス905とを含む。システム900は、プロセッサ910に近接して直接的に接続されるか、又は、プロセッサ910の一部として実装される高速メモリのキャッシュを含むことができる。システム900は、プロセッサ910によって素早くアクセスするように、メモリ915及びストレージデバイス930の少なくとも1つからデータをキャッシュ912へコピーすることができる。本方法において、プロセッサ910がデータを待つ間の遅延を避けるように、キャッシュが性能の向上をもたらす。それらのモジュール及び他のモジュールが種々のアクションを実行するようにプロセッサ910を制御するか又は制御するように構成される。他のシステムメモリ915が使用可能であってもよい。メモリ915は異なる性能の特徴で複数の異なる種別のタイプを含むことができる。プロセッサ910は、一般用途のプロセッサと、ストレージデバイス930に格納された、プロセッサ910を制御するように構成されるモジュール1(932)、モジュール2(934)、モジュール3(936)などのハードウェアモジュール又はソフトウェアモジュールとともに、ソフトウェア命令が実際のプロセッサの設計に組み込まれた特定用途のプロセッサとを含むことができる。プロセッサ910は、基本的には、複数のコア若しくはプロセッサ、バス、メモリコントローラ、キャッシャなどを含む、完全に内蔵型のコンピュータシステムであってもよい。複数のコアプロセッサは対称又は非対称であってもよい。
ユーザがコンピュータデバイス900と情報をやり取りすることを可能とするために、入力デバイス945は、音声用のマイクロフォン、ジェスチャ又はグラフィカル入力用のタッチセンサー方式のスクリーン、キーボード、マウス、モーション入力、音声などの任意の数の入力機構であってもよい。出力デバイス935はまた、当業者にすでに知られている1つ以上の出力機構であってもよい。いくつかの例において、多様なシステムはコンピュータデバイス900と通信するために複数の種別の入力をユーザが提供することを可能とする。通信インタフェース940は、一般的にユーザ入力及びシステム出力を調節し、管理することができる。任意の特定のハードウェア構成での動作に制限することはなく、従って、ここでの基本的な特徴は、開発されて改善されたハードウェア又はファームウェア構成に容易に適合するであろう。
ストレージデバイス930は、不揮発性メモリであり、磁気カセット、フラッシュメモリカード、固体素子メモリデバイス、デジタル多用途ディスク、カートリッジ、ランダムアクセスメモリ(RAM)925、リードオンリメモリ(ROM)920及びそれらの組み合わせなどのコンピュータによってアクセス可能なデータを記憶する、ハードディスクや他のタイプのコンピュータで読み取り可能な媒体であってもよい。
ストレージデバイス930は、プロセッサ910を制御するためのソフトウェアモジュール932、934、936を含むことができる。他のハードウェア又はソフトウェアモジュールが考慮されてもよい。ストレージデバイス930は、システムバス905へ接続される。1つの形態において、特定の機能を実行するハードウェアモジュールは、機能を実行するために、プロセッサ910、バス905、ディスプレイ935などの必要なハードウェアコンポーネントと接続して、コンピュータで読み取り可能な媒体に格納されたソフトウェアコンポーネントを含むことができる。
図9Bは説明した方法を実行し、グラフィカルユーザインタフェース(GUI)を生成して表示するために使用されるチップセットアーキテクチャを含むコンピュータシステム950を示す。コンピュータシステム950は、本開示の技術を実行するために使用されうるコンピュータハードウェア、ソフトウェア、及びファームウェアの一例である。システム950は、特定したコンピュータの計算を実行するように構成されたソフトウェア、ファームウェア及びハードウェアを実行可能な物理的に又は論理的に区別された任意の数の資源の代表例であるプロセッサ955を含んでもよい。プロセッサ955は、プロセッサ955への入力及びプロセッサ955からの出力を制御することができるチップセット960と通信することができる。本実施例において、チップセット960は、ディスプレイなどの出力965へ情報を出力し、磁気媒体、固体素子媒体などを含むストレージデバイス970から情報を読み込んだり、ストレージデバイス970へ情報を書き込んだりすることができる。チップセット960はまた、RAM975からデータを読み込んだり、RAM975へデータを書き込んだりすることもできる。種々のインタフェースコンポーネント985と相互に接続するブリッジ980はチップセット960と相互に接続するために提供されうる。そのようなユーザインタフェースコンポーネント985は、キーボード、マイクロフォン、タッチ検出及び処理回路、マウスなどのポインティングデバイス、を含むことができる。一般的には、システム950への入力は、機械生成型及び人生成型の少なくとも一方の種々の発信源のいずれかから行われる。
チップセット960はまた、異なる物理的なインタフェースを有する1つ以上の通信インタフェース990と相互に接続することができる。そのような通信インタフェースは、有線及び無線のローカルエリアネットワーク、ブロードバンド無線ネットワークや、パーソナルエリアネットワークにおけるインタフェースを含むことができる。本開示のGUIを生成し、表示し、用いるための方法のいくつかのアプリケーションは、物理インタフェースを介してオーダしたデータセットを受信する工程、又は、ストレージ970、又は975に格納されたデータを解析するプロセッサ955によって機械自身で生成されたオーダしたデータセットを受信する工程を含む。さらに、機械はユーザインタフェースコンポーネント985を介したユーザからの入力を受信し、プロセッサ955を用いてそれらの入力を解釈することによる閲覧機能などの、適切な機能を実行することができる。
例示のシステム900、950が、1つのプロセッサ910以上を有してもとく、より高い処理性能を提供するネットワーク接続されたコンピュータデバイスのグループ又はクラスタの一部であってもよいことが明らかである。
明瞭な説明のため、いくつかの例において、本技術は、デバイス、デバイスコンポーネント、ソフトウェアに実装された方法のステップ若しくはルーチン、又はハードウェアとソフトウェアの組み合わせを備える機能ブロックを含む個々の機能ブロックを含むように提示されうる。
いくつかの実施形態において、コンピュータで読み取り可能なストレージデバイス、媒体、及びメモリは、ビットストリームなどを含むケーブル信号又は無線信号を含むことができる。しかしながら、言及すると、一時的でないコンピュータで読み取り可能な記憶媒体は、エネルギ、キャリア信号、電磁波及び信号自体などを明確に排除する。
上述した例示に係る方法は、コンピュータで読み取り可能な記憶媒体に格納され、又は、当該記憶媒体に格納されたコンピュータで実行可能な命令を用いて実装される。そのような命令は、例えば、所定の機能又は機能のグループを実行するために一般用途のコンピュータ、特定用途のコンピュータ又は特定用途の処理デバイスに実行させる或いは構成する命令及びデータを含むことができる。使用されるコンピュータ資源の部分がネットワーク上でアクセス可能である。コンピュータで実行可能な命令は、例えば、アセンブリ言語、ファームウェア、又はソースコードなどのバイナリ、中間フォーマット命令であってもよい。命令や上述した例示に係る方法の中で使用される情報及び作成される情報の少なくとも一方を格納するために使用されるコンピュータで読み取り可能な媒体の例は、磁気ディスク若しくは光学ディスク、フラッシュメモリ、不揮発性メモリで提供されるUSBデバイス、及びネットワーク接続されたストレージデバイスなどを含む。
本開示に従って方法を実行するデバイスは、ハードウェア、ファームウェア及びソフトウェアの少なくとも1つを含むことができ、種々のフォームファクタをとることができる。そのようなフォームファクタの典型的な例示は、ラップトップ、スマートフォン、スモールフォームファクタのパーソナルコンピュータ、携帯情報端末などを含むことができる。ここで開示の機能はまた、周辺機器又はアドインカードに実装されてもよい。そのような機能はまた、他の例示の方法によって、異なるチップ又は異なる単一のデバイスで実行する異なる処理から回路基板上に実装される。
命令、そのような目例を搬送する媒体、それらを実行するためのコンピュータ資源、及びそのようなコンピュータ資源をサポートするための他の構造は、上述した開示で説明した機能を提供するための手段である。
種々の例示及び他の情報が添付の特許請求の範囲の範囲内の態様を説明するために使用されたが、そのような例示の特定の特徴又は構成に基づき暗示されるべき請求項の限定はなく、当業者は広く種々の実現を導出するためにそれらの例示を使用することができる。さらに、いくつかの構成要件が例示の構造の特徴及び方法のステップに特有の言語で説明したが、添付の特許請求の範囲に定義した構成要件が説明した特徴又は動作に限定される必要がないことが理解されるべきである。例えば、そのような機能は、ここで特定したもの以外のコンポーネントで異なって分散されるか、或いは、実行されてもよい。むしろ、本開示の特徴及びステップは、添付の特許請求の範囲の中で、システム及び方法のコンポーネントの例として開示されている。
本出願は、2013年3月8日出願のUS仮出願第61,775,367号と、2014年3月10日出願のUS出願第14/203,442号の優先権を主張し、それら全体の記載において、ここでの参照により明示的に組み込まれるものである。

Claims (27)

  1. コンテンツ管理サーバによって、該コンテンツ管理サーバへ第1のコンテンツアイテムリクエストを送信するように構成される第1の共有リンクを生成する工程と、
    前記コンテンツ管理サーバによって、前記第1の共有リンクを識別する、共有インデックスの第1の新たなエントリを作成する工程と、
    前記コンテンツ管理サーバによって、第1のクライアントデバイスへ、前記第1の共有リンクを送信する工程と、
    前記コンテンツ管理サーバによって、前記第1のクライアントデバイスからの第1の共有リクエストであって、前記第1の共有リンクと、第1のコンテンツアイテムの位置を識別する第1のコンテンツパスとを識別する前記第1の共有リクエストを受信する工程と、
    前記コンテンツ管理サーバによって、前記第1のコンテンツアイテムの位置を識別する前記第1のコンテンツパスを含む、前記共有インデックスの前記第1の新たなエントリを更新する工程と
    を含むことを特徴とする方法。
  2. 前記第1の共有リクエストは、前記第1のクライアントデバイスが前記第1のコンテンツアイテムを共有する第1の共有入力を受信すると、前記第1のクライアントデバイスによって送信されることを特徴とする請求項1に記載の方法。
  3. 前記第1のコンテンツアイテムが前記コンテンツ管理サーバに格納されていない場合に、前記第1のクライアントデバイスへエラーメッセージを返す工程であって、前記エラーメッセージは前記第1のコンテンツアイテムが前記コンテンツ管理サーバに格納されていないことを示す、工程
    をさらに含むことを特徴とする請求項1に記載の方法。
  4. 前記第1の共有リンクを識別し、前記第1の共有リンクの選択に応じて第2のクライアントデバイスによって送信される前記第1のコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信する工程と、
    前記第1のコンテンツアイテムのリクエストによって識別される前記第1の共有リンクに基づき、前記共有インデックスを検索する工程と、
    前記第1の共有リンクを識別する前記第1の新たなエントリを識別する工程と、
    前記第1の新たなエントリに含まれる前記第1のコンテンツパスによって識別される前記位置に位置付けられる前記第1のコンテンツアイテムを、前記第2のクライアントデバイスへ返す工程と
    をさらに含むことを特徴とする請求項1に記載の方法。
  5. 前記コンテンツ管理サーバへ第2のコンテンツアイテムのリクエストを送信するように構成される第2の共有リンクを生成する工程と、
    前記第2の共有リンクを識別する、前記共有インデックスの第2の新たなエントリを作成する工程と、
    前記第1のクライアントデバイスへ前記第2の共有リンクを送信する工程と
    をさらに含むことを特徴とする請求項1に記載の方法。
  6. 第2の共有リンクを識別し、前記第2の共有リンクの選択に応じて第2のクライアントデバイスによって送信されるコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信する工程と、
    第2のコンテンツアイテムのリクエストによって識別される前記第2の共有リンクに基づき、前記共有インデックスを検索する工程と、
    前記第2の共有リンクを識別する第2の新たなエントリを識別する工程と、
    前記第2の共有リンクに関連付けられる第2のコンテンツアイテムの位置を識別する第2のコンテンツパスを前記第2の新たなエントリが含まないかを判定する工程と、
    前記第2のコンテンツアイテムが利用可能でないことを前記第2のクライアントデバイスへ通知する工程と
    をさらに含むことを特徴とする請求項1に記載の方法。
  7. 前記第2のコンテンツアイテムを前記第1のクライアントデバイスから受信する工程と、
    前記第2のコンテンツパスによって識別される前記位置に前記第2のコンテンツアイテムを格納する工程と、
    前記第2の共有リンクを識別し、前記第2の共有リンクの選択に応じて前記第2のクライアントデバイスによって送信される前記第2のコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信する工程と、
    前記第2のコンテンツアイテムのリクエストによって識別される前記第2の共有リンクに基づき、前記共有インデックスを検索する工程と、
    前記第2の共有リンクを識別する前記第2の新たなエントリを識別する工程と、
    前記第2の新たなエントリに含まれる前記第2のコンテンツパスによって識別される前記位置に位置付けられる前記第2のコンテンツアイテムを前記第2のクライアントデバイスへ返す工程と
    をさらに含むことを特徴とする請求項6に記載の方法。
  8. コンテンツ管理サーバであって、
    プロセッサと、
    実行されると前記プロセッサを動作させる命令を格納したメモリと
    を備え、
    前記プロセッサは、
    前記コンテンツ管理サーバへ第1のコンテンツアイテムのリクエストを送信するように構成される第1の共有リンクを生成し、
    前記第1の共有リンクを識別する、共有インデックスの第1の新たなエントリを作成し、
    第1のクライアントデバイスへ、前記第1の共有リンクを送信し、
    前記第1のクライアントデバイスからの第1の共有リクエストであって、前記第1の共有リンクと、第1のコンテンツアイテムの位置を識別する第1のコンテンツパスとを識別する前記第1の共有リクエストを受信し、
    前記第1のコンテンツアイテムの位置を識別する前記第1のコンテンツパスを含むように、前記共有インデックスの前記第1の新たなエントリを更新する
    ことを特徴とするコンテンツ管理サーバ。
  9. 前記第1の共有リクエストは、前記第1のクライアントデバイスが前記第1のコンテンツアイテムを共有する第1の共有入力を受信すると、前記第1のクライアントデバイスによって送信されることを特徴とする請求項8に記載のコンテンツ管理サーバ。
  10. 前記命令はさらに前記プロセッサを、
    前記第1のコンテンツアイテムが前記コンテンツ管理サーバに格納されていない場合に、前記第1のクライアントデバイスへエラーメッセージを送信し、前記エラーメッセージは前記第1のコンテンツアイテムが前記コンテンツ管理サーバに格納されていないことを示す、
    ように動作させることを特徴とする請求項8に記載のコンテンツ管理サーバ。
  11. 前記命令はさらに前記プロセッサを、
    前記第1の共有リンクを識別し、前記第1の共有リンクの選択に応じて第2のクライアントデバイスによって送信される前記第1のコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信し、
    前記第1のコンテンツアイテムのリクエストによって識別される前記第1の共有リンクに基づき、前記共有インデックスを検索し、
    前記第1の共有リンクを識別する前記第1の新たなエントリを識別し、
    前記第1の新たなエントリに含まれる前記第1のコンテンツパスによって識別される前記位置に位置付けられる前記第1のコンテンツアイテムを、前記第2のクライアントデバイスへ返す
    ように動作させることを特徴とする請求項8に記載のコンテンツ管理サーバ。
  12. 前記命令はさらに前記プロセッサを、
    前記コンテンツ管理サーバへ第2のコンテンツアイテムのリクエストを送信するように構成される第2の共有リンクを生成し、
    前記第2の共有リンクを識別する、前記共有インデックスの第2の新たなエントリを作成し、
    前記第1のクライアントデバイスへ前記第2の共有リンクを送信する
    ように動作させることを特徴とする請求項8に記載のコンテンツ管理サーバ。
  13. 前記命令はさらに前記プロセッサを、
    第2の共有リンクを識別し、前記第2の共有リンクの選択に応じて第2のクライアントデバイスによって送信されるコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信し、
    第2のコンテンツアイテムのリクエストによって識別される前記第2の共有リンクに基づき、前記共有インデックスを検索し、
    前記第2の共有リンクを識別する第2の新たなエントリを識別し、
    前記第2の共有リンクに関連付けられる第2のコンテンツアイテムの位置を識別する第2のコンテンツパスを前記第2の新たなエントリが含まないかを判定し、
    前記第2のコンテンツアイテムが利用可能でないことを前記第2のクライアントデバイスへ通知する
    ように動作させることを特徴とする請求項8に記載のコンテンツ管理サーバ。
  14. 前記命令はさらに前記プロセッサを、
    前記第2のコンテンツアイテムを前記第1のクライアントデバイスから受信し、
    前記第2のコンテンツパスによって識別される前記位置に前記第2のコンテンツアイテムを格納し、
    前記第2の共有リンクを識別し、前記第2の共有リンクの選択に応じて前記第2のクライアントデバイスによって送信される前記第2のコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信し、
    前記第2のコンテンツアイテムのリクエストによって識別される前記第2の共有リンクに基づき、前記共有インデックスを検索し、
    前記第2の共有リンクを識別する前記第2の新たなエントリを識別し、
    前記第2の新たなエントリに含まれる前記第2のコンテンツパスによって識別される前記位置に位置付けられる前記第2のコンテンツアイテムを前記第2のクライアントデバイスへ返す
    ように動作させることを特徴とする請求項13に記載のコンテンツ管理サーバ。
  15. コンテンツ管理サーバによって実行されると、前記コンテンツ管理サーバを動作させる命令を記憶した一時的でないコンピュータで読み取り可能な記憶媒体であって、
    前記コンテンツ管理サーバを、
    前記コンテンツ管理サーバへ第1のコンテンツアイテムのリクエストを送信するように構成される第1の共有リンクを生成し、
    前記第1の共有リンクを識別する、共有インデックスの第1の新たなエントリを作成し、
    第1のクライアントデバイスへ、前記第1の共有リンクを送信し、
    前記第1のクライアントデバイスからの第1の共有リクエストであって、前記第1の共有リンクと、第1のコンテンツアイテムの位置を識別する第1のコンテンツパスとを識別する前記第1の共有リクエストを受信し、
    前記第1のコンテンツアイテムの位置を識別する前記第1のコンテンツパスを含むように、前記共有インデックスの前記第1の新たなエントリを更新する
    ように動作させることを特徴とする記憶媒体。
  16. 前記第1の共有リクエストは、前記第1のクライアントデバイスが前記第1のコンテンツアイテムを共有する第1の共有入力を受信すると、前記第1のクライアントデバイスによって送信されることを特徴とする請求項15に記載の記憶媒体。
  17. 前記コンテンツ管理サーバを、
    前記第1のコンテンツアイテムが前記コンテンツ管理サーバに格納されていない場合に、前記第1のクライアントデバイスへエラーメッセージを送信し、前記エラーメッセージは前記第1のコンテンツアイテムが前記コンテンツ管理サーバに格納されていないことを示す、
    ように動作させることを特徴とする請求項15に記載の記憶媒体。
  18. 前記コンテンツ管理サーバを、
    前記第1の共有リンクを識別し、前記第1の共有リンクの選択に応じて第2のクライアントデバイスによって送信される前記第1のコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信し、
    前記第1のコンテンツアイテムのリクエストによって識別される前記第1の共有リンクに基づき、前記共有インデックスを検索し、
    前記第1の共有リンクを識別する前記第1の新たなエントリを識別し、
    前記第1の新たなエントリに含まれる前記第1のコンテンツパスによって識別される前記位置に位置付けられる前記第1のコンテンツアイテムを、前記第2のクライアントデバイスへ返す
    ように動作させることを特徴とする請求項15に記載の記憶媒体。
  19. 前記コンテンツ管理サーバを、
    前記コンテンツ管理サーバへ第2のコンテンツアイテムのリクエストを送信するように構成される第2の共有リンクを生成し、
    前記第2の共有リンクを識別する、前記共有インデックスの第2の新たなエントリを作成し、
    前記第1のクライアントデバイスへ前記第2の共有リンクを送信する
    ように動作させることを特徴とする請求項15に記載の記憶媒体。
  20. 前記コンテンツ管理サーバを、
    第2の共有リンクを識別し、前記第2の共有リンクの選択に応じて第2のクライアントデバイスによって送信されるコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信し、
    第2のコンテンツアイテムのリクエストによって識別される前記第2の共有リンクに基づき、前記共有インデックスを検索し、
    前記第2の共有リンクを識別する第2の新たなエントリを識別し、
    前記第2の共有リンクに関連付けられる第2のコンテンツアイテムの位置を識別する第2のコンテンツパスを前記第2の新たなエントリが含まないかを判定し、
    前記第2のコンテンツアイテムが利用可能でないことを前記第2のクライアントデバイスへ通知する
    ように動作させることを特徴とする請求項15に記載の記憶媒体。
  21. システムであって、
    第1のコンテンツアイテムのリクエストを送信するように構成される第1の共有リンクを生成する手段と、
    前記第1の共有リンクを識別する、共有インデックスの第1の新たなエントリを作成する手段と、
    第1のクライアントデバイスへ、前記第1の共有リンクを送信する手段と、
    前記第1のクライアントデバイスからの第1の共有リクエストであって、前記第1の共有リンクと、第1のコンテンツアイテムの位置を識別する第1のコンテンツパスとを識別する前記第1の共有リクエストを受信する手段と、
    前記第1のコンテンツアイテムの位置を識別する前記第1のコンテンツパスを含むように、前記共有インデックスの前記第1の新たなエントリを更新する手段と
    を備えることを特徴とするシステム。
  22. 前記第1の共有リクエストは、前記第1のクライアントデバイスが前記第1のコンテンツアイテムを共有する第1の共有入力を受信すると、前記第1のクライアントデバイスによって送信されることを特徴とする請求項21に記載のシステム。
  23. 前記第1のコンテンツアイテムが前記システムに格納されていない場合に、前記第1のクライアントデバイスへエラーメッセージを送信する手段であって、前記エラーメッセージは前記第1のコンテンツアイテムが前記システムに格納されていないことを示す、手段、
    をさらに含むことを特徴とする請求項21に記載のシステム。
  24. 前記第1の共有リンクを識別し、前記第1の共有リンクの選択に応じて第2のクライアントデバイスによって送信される前記第1のコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信する手段と、
    前記第1のコンテンツアイテムのリクエストによって識別される前記第1の共有リンクに基づき、前記共有インデックスを検索する手段と、
    前記第1の共有リンクを識別する前記第1の新たなエントリを識別する手段と、
    前記第1の新たなエントリに含まれる前記第1のコンテンツパスによって識別される前記位置に位置付けられる前記第1のコンテンツアイテムを、前記第2のクライアントデバイスへ返す手段と
    をさらに含むことを特徴とする請求項21に記載のシステム。
  25. 第2のコンテンツアイテムのリクエストを送信するように構成される第2の共有リンクを生成する手段と、
    前記第2の共有リンクを識別する、前記共有インデックスの第2の新たなエントリを作成する手段と、
    前記第1のクライアントデバイスへ前記第2の共有リンクを送信する手段と
    をさらに含むことを特徴とする請求項21に記載のシステム。
  26. 第2の共有リンクを識別し、前記第2の共有リンクの選択に応じて第2のクライアントデバイスによって送信されるコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信する手段と、
    第2のコンテンツアイテムのリクエストによって識別される前記第2の共有リンクに基づき、前記共有インデックスを検索する手段と、
    前記第2の共有リンクを識別する第2の新たなエントリを識別する手段と、
    前記第2の共有リンクに関連付けられる第2のコンテンツアイテムの位置を識別する第2のコンテンツパスを前記第2の新たなエントリが含まないかを判定する手段と、
    前記第2のコンテンツアイテムが利用可能でないことを前記第2のクライアントデバイスへ通知する手段と
    をさらに含むことを特徴とする請求項21に記載のシステム。
  27. 前記第2のコンテンツアイテムを前記第1のクライアントデバイスから受信する手段と、
    前記第2のコンテンツパスによって識別される前記位置に前記第2のコンテンツアイテムを格納する手段と、
    前記第2の共有リンクを識別し、前記第2の共有リンクの選択に応じて前記第2のクライアントデバイスによって送信される前記第2のコンテンツアイテムのリクエストを、前記第2のクライアントデバイスから受信する手段と、
    前記第2のコンテンツアイテムのリクエストによって識別される前記第2の共有リンクに基づき、前記共有インデックスを検索する手段と、
    前記第2の共有リンクを識別する前記第2の新たなエントリを識別する手段と、
    前記第2の新たなエントリに含まれる前記第2のコンテンツパスによって識別される前記位置に位置付けられる前記第2のコンテンツアイテムを前記第2のクライアントデバイスへ返す手段と
    をさらに含むことを特徴とする請求項26に記載のシステム。
JP2015561757A 2013-03-08 2014-03-10 コンテンツアイテムの共有 Active JP6186015B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201361775367P 2013-03-08 2013-03-08
US61/775,367 2013-03-08
US14/203,442 2014-03-10
US14/203,442 US9628560B2 (en) 2013-03-08 2014-03-10 Sharing a content item
PCT/US2014/022867 WO2014138747A1 (en) 2013-03-08 2014-03-10 Sharing a content item

Publications (2)

Publication Number Publication Date
JP2016516233A JP2016516233A (ja) 2016-06-02
JP6186015B2 true JP6186015B2 (ja) 2017-08-23

Family

ID=51489288

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015561757A Active JP6186015B2 (ja) 2013-03-08 2014-03-10 コンテンツアイテムの共有

Country Status (5)

Country Link
US (2) US9628560B2 (ja)
EP (1) EP2965234A1 (ja)
JP (1) JP6186015B2 (ja)
AU (1) AU2014225329B2 (ja)
WO (1) WO2014138747A1 (ja)

Families Citing this family (22)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10885264B2 (en) 2013-10-28 2021-01-05 Mixonium Group Holdings, Inc. Systems, methods, and media for managing and sharing digital content and services
US20150128014A1 (en) * 2013-10-28 2015-05-07 Mixonium Group Holdings, Inc. Systems, methods, and media for content management and sharing
JP6447030B2 (ja) 2013-11-27 2019-01-09 株式会社リコー 情報処理システムおよび情報処理方法
US20150163326A1 (en) * 2013-12-06 2015-06-11 Dropbox, Inc. Approaches for remotely unzipping content
JP6446952B2 (ja) * 2014-09-26 2019-01-09 株式会社リコー 情報処理システム、情報蓄積装置及びプログラム
WO2016075713A1 (en) * 2014-11-12 2016-05-19 Valerio Pastore Method and system for sharing multimedia contents through a telecommunication network
KR101623742B1 (ko) * 2015-01-23 2016-05-25 주식회사 악어스캔 파일 연관 메시지 공유 방법 및 메시지 공유 시스템
US20160316032A1 (en) * 2015-04-27 2016-10-27 International Business Machines Corporation Tracking content sharing across a variety of communications channels
CN106294450A (zh) 2015-05-28 2017-01-04 阿里巴巴集团控股有限公司 一种交互记录查询处理方法及设备
US11334852B2 (en) * 2016-12-08 2022-05-17 Airwatch Llc Secured attachment management
US10542045B2 (en) 2016-12-08 2020-01-21 Airwatch Llc Secured attachment management
CN106528886A (zh) * 2016-12-19 2017-03-22 深圳天珑无线科技有限公司 信息处理方法、装置及终端
US11347890B2 (en) 2017-03-24 2022-05-31 Open Text Sa Ulc Systems and methods for multi-region data center connectivity
US10944752B2 (en) * 2017-05-24 2021-03-09 Microsoft Technology Licensing, Llc Transfer of secure external sharing link
US10924931B2 (en) 2017-05-24 2021-02-16 Microsoft Technology Licensing, Llc External sharing with improved security
CN107315825B (zh) * 2017-07-05 2020-02-28 北京奇艺世纪科技有限公司 一种索引更新系统、方法及装置
US10783012B2 (en) 2018-04-20 2020-09-22 CopyBucket, Inc. Systems and methods for efficient inter-device data exchange
CN110110974B (zh) * 2019-04-17 2022-03-29 福建天泉教育科技有限公司 关键意见领袖的识别方法及计算机可读存储介质
US11340760B2 (en) * 2019-09-06 2022-05-24 Dropbox, Inc. Generating a customized organizational structure for uploading content to a cloud-based storage system
CN111078789B (zh) * 2019-11-25 2023-06-27 泰康保险集团股份有限公司 数据共享方法及装置、存储介质、电子设备
KR20210130583A (ko) * 2020-04-22 2021-11-01 라인플러스 주식회사 인스턴트 메시징 애플리케이션을 통해 콘텐츠를 공유하는 방법 및 시스템
CN111817944A (zh) * 2020-05-28 2020-10-23 维沃移动通信有限公司 图片分享的方法、装置及电子设备

Family Cites Families (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2007108905A (ja) * 2005-10-12 2007-04-26 Fuji Xerox Co Ltd ファイルサーバ、ファイル提供方法及びプログラム
CN101636739A (zh) * 2007-03-16 2010-01-27 皇家飞利浦电子股份有限公司 用于数字内容分发的装置和方法
US8898251B2 (en) * 2011-05-03 2014-11-25 Microsoft Corporation Client calculation of links to network locations of files to upload
US9049176B2 (en) * 2011-06-22 2015-06-02 Dropbox, Inc. File sharing via link generation

Also Published As

Publication number Publication date
US20140258473A1 (en) 2014-09-11
US10484456B2 (en) 2019-11-19
AU2014225329A1 (en) 2015-08-13
EP2965234A1 (en) 2016-01-13
WO2014138747A1 (en) 2014-09-12
US20170195402A1 (en) 2017-07-06
AU2014225329B2 (en) 2017-02-02
JP2016516233A (ja) 2016-06-02
US9628560B2 (en) 2017-04-18

Similar Documents

Publication Publication Date Title
JP6186015B2 (ja) コンテンツアイテムの共有
US20220283992A1 (en) Prioritizing content item synchronization based on sharing
US10277673B2 (en) Local server for synced online content management system
EP3235213B1 (en) No password user account access
JP6381776B2 (ja) コンテンツアイテムの共有のための未登録ユーザアカウントの生成
JP2016529599A (ja) コンテンツクリップボードの同期
JP2016535381A (ja) ファイルレベル・コメンティング
JP6178867B2 (ja) コンテンツプレビューの提供
US10348821B2 (en) Prioritizing structural operations and distributing changes in a synced online content management system
US20140304384A1 (en) Uploading large content items

Legal Events

Date Code Title Description
A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20161014

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20161028

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170126

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20170130

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: 20170630

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20170728

R150 Certificate of patent or registration of utility model

Ref document number: 6186015

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

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250

R250 Receipt of annual fees

Free format text: JAPANESE INTERMEDIATE CODE: R250