IP Force 特許公報掲載プロジェクト 2022.1.31 β版

知財求人 - 知財ポータルサイト「IP Force」

▶ ドロップボックス, インコーポレイテッドの特許一覧

特許7543444コンテキストハブ内のサードパーティソースのインテリジェントな生成及び管理
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2024-08-23
(45)【発行日】2024-09-02
(54)【発明の名称】コンテキストハブ内のサードパーティソースのインテリジェントな生成及び管理
(51)【国際特許分類】
   G06F 3/0482 20130101AFI20240826BHJP
   H04L 67/02 20220101ALI20240826BHJP
【FI】
G06F3/0482
H04L67/02
【請求項の数】 20
(21)【出願番号】P 2022575281
(86)(22)【出願日】2021-01-25
(65)【公表番号】
(43)【公表日】2023-07-11
(86)【国際出願番号】 US2021014909
(87)【国際公開番号】W WO2021252023
(87)【国際公開日】2021-12-16
【審査請求日】2023-02-06
(31)【優先権主張番号】16/937,208
(32)【優先日】2020-07-23
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/937,195
(32)【優先日】2020-07-23
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】63/036,402
(32)【優先日】2020-06-08
(33)【優先権主張国・地域又は機関】US
(31)【優先権主張番号】16/937,092
(32)【優先日】2020-07-23
(33)【優先権主張国・地域又は機関】US
(73)【特許権者】
【識別番号】509117964
【氏名又は名称】ドロップボックス, インコーポレイテッド
(74)【代理人】
【識別番号】110003281
【氏名又は名称】弁理士法人大塚国際特許事務所
(72)【発明者】
【氏名】アーノルド, ハドソン
(72)【発明者】
【氏名】クラインペッター, トーマス
(72)【発明者】
【氏名】マカードル, テレンス
(72)【発明者】
【氏名】メンドーサ, クリストファー
【審査官】塩屋 雅弘
(56)【参考文献】
【文献】米国特許出願公開第2019/0222672(US,A1)
【文献】米国特許第09141590(US,B1)
【文献】米国特許出願公開第2014/0173399(US,A1)
【文献】特表2014-529149(JP,A)
【文献】特表2017-510867(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 3/0482
H04L 67/02
(57)【特許請求の範囲】
【請求項1】
システムであって、
少なくとも1つのプロセッサと、
前記少なくとも1つのプロセッサによって実行される場合に、前記システムに、
グラフィカルユーザインタフェース内に、複数のサードパーティソースに関連付けられたコンテンツを含むコンテキストハブを表示することであって、前記コンテキストハブは、コンテキスト的に関連するウェブアクセス可能なソースおよびコンテンツに関連付けられたデジタル空間を指す、ことと、
トレーニングされた機械学習モデルを利用することによって、前記複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、前記コンテキストハブに対応するコンテキストモデルを取得することと、
前記コンテキストモデルを利用して、前記複数のサードパーティソースのサードパーティソースに対応するサードパーティソースコンテンツを解析することと、
前記サードパーティソースコンテンツを解析することに基づいて、前記サードパーティソースからの関連情報を識別することであって、前記関連情報は、前記コンテキストハブにコンテキスト的に関連する前記サードパーティソースからのコンテンツである、ことと、
前記コンテキストハブの前記グラフィカルユーザインタフェース内に前記関連情報へのリンクを追加することと、
を行わせる命令を含む非一時的コンピュータ可読媒体と、
を備えるシステム。
【請求項2】
前記複数のサードパーティソースは、
デジタルメッセージングシステム、
デジタルメディア管理システム、または
カレンダーシステム、
のうちの少なくとも1つを含む、請求項1に記載のシステム。
【請求項3】
前記複数のサードパーティソースは、複数のユーザによってアクセス可能である、請求項1に記載のシステム。
【請求項4】
前記少なくとも1つのプロセッサによって実行される場合に、前記システムに、
トレーニングされた機械学習モデルへの入力として、前記複数のサードパーティソースに関連付けられた前記コンテキスト情報を利用し、
前記トレーニングされた機械学習モデルからの出力として前記コンテキストモデルを受信する
ことによって、前記コンテキストモデルを生成させる命令をさらに含む、請求項1に記載のシステム。
【請求項5】
前記少なくとも1つのプロセッサによって実行される場合に、前記システムに、
前記関連情報が前記コンテキストハブに関連するかどうかを示すユーザ入力を受信し、
前記ユーザ入力に基づいて前記コンテキストモデルのパラメータを修正する
ことによって、前記コンテキストモデルを更新させる命令をさらに含む、請求項1に記載のシステム。
【請求項6】
方法であって、
グラフィカルユーザインタフェース内に、複数のサードパーティソースに関連付けられたコンテンツを含むコンテキストハブを表示することであって、前記コンテキストハブは、コンテキスト的に関連するウェブアクセス可能なソースおよびコンテンツに関連付けられたデジタル空間を指す、ことと、
前記複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、前記コンテキストハブに対応するコンテキストモデルを取得することと、
前記コンテキストモデルを利用して、前記複数のサードパーティソースのサードパーティソースに対応するサードパーティソースコンテンツを解析することと、
前記サードパーティソースコンテンツを解析することに基づいて、前記サードパーティソースからの関連情報を識別することであって、前記関連情報は、前記コンテキストハブにコンテキスト的に関連する前記サードパーティソースからのコンテンツである、ことと、
前記コンテキストハブの前記グラフィカルユーザインタフェース内に前記関連情報へのリンクを追加することと、
を含む方法。
【請求項7】
前記複数のサードパーティソースは、
デジタルメッセージングソース、
デジタルウェブソース、
デジタルメディア管理ソース、または
カレンダーソース、
のうちの少なくとも1つを含む、請求項6に記載の方法。
【請求項8】
前記コンテキストハブを複数のユーザに関連付けることをさらに含む、請求項6に記載の方法。
【請求項9】
前記複数のサードパーティソースに関連付けられた前記コンテキスト情報は、
前記複数のユーザの各々と前記複数のサードパーティソースの各々との間の関連付け、または
前記複数のサードパーティソースのコンテンツに関連する情報
を含む、請求項8に記載の方法。
【請求項10】
トレーニングされた機械学習モデルへの入力として、前記複数のサードパーティソースに関連付けられた前記コンテキスト情報を利用し、
前記トレーニングされた機械学習モデルからの出力として前記コンテキストモデルを受信する
ことによって、前記コンテキストモデルを取得することをさらに含む、請求項6に記載の方法。
【請求項11】
事前に生成されたコンテキストモデルのリポジトリ内のコンテキストモデルの特性を解析し、
前記事前に生成されたコンテキストモデルの前記特性および前記コンテキスト情報に基づいて、最も近い一致する事前に生成されたコンテキストモデルを決定する、
ことによって、前記コンテキストモデルを取得することをさらに含む、請求項6に記載の方法。
【請求項12】
前記コンテキストハブに関連付けられたユーザ定義ルールに基づいて前記コンテキストモデルを取得することをさらに含む、請求項6に記載の方法。
【請求項13】
前記関連情報を識別することは、前記コンテキストモデルを使用して、前記コンテキストハブに関連付けられた前記複数のサードパーティソースからサードパーティメッセージングソースにおいて受信されたメッセージが前記関連情報を含むことを判定することを含み、
前記関連情報に前記リンクを追加することは、前記サードパーティソース内の前記メッセージを指すリンクを追加することを含む、
請求項6に記載の方法。
【請求項14】
前記関連情報を識別することは、前記コンテキストモデルを使用して、前記コンテキストハブに現在関連付けられていないウェブページ内のテキストが前記関連情報を含むことを判定することを含み、
前記関連情報に前記リンクを追加することは、前記ウェブページを指すリンクを追加することを含む、
請求項6に記載の方法。
【請求項15】
前記ウェブページが前記コンテキストハブに関連するという前記コンテキストハブに関連付けられたユーザからのインディケーションを受信することに基づいて、前記ウェブページを前記コンテキストハブに関連付けることをさらに含む、請求項14に記載の方法。
【請求項16】
少なくとも1つのプロセッサによって実行される場合に、コンピューティングデバイスに、
グラフィカルユーザインタフェース内に、ユーザに関連付けられたクライアントデバイスにおいて、複数のサードパーティソースに関連付けられたコンテンツを含むコンテキストハブを表示することであって、前記コンテキストハブは、コンテキスト的に関連するウェブアクセス可能なソースおよびコンテンツに関連付けられたデジタル空間を指す、ことと、
前記複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、前記コンテキストハブに対応するコンテキストモデルを取得することと、
前記コンテキストモデルを利用して、前記複数のサードパーティソースのサードパーティソースに対応するサードパーティソースコンテンツを解析することと、
前記サードパーティソースのアクセスを示す通知を前記クライアントデバイスから受信することと、
前記サードパーティソースコンテンツを解析することに基づいて、前記サードパーティソースからの関連情報を識別することであって、前記関連情報は、前記コンテキストハブにコンテキスト的に関連する前記サードパーティソースからのコンテンツである、ことと、
前記コンテキストハブの前記グラフィカルユーザインタフェース内に前記関連情報へのリンクを追加することと、
を行わせる命令を含む非一時的コンピュータ可読媒体。
【請求項17】
前記少なくとも1つのプロセッサによって実行される場合に、前記コンピューティングデバイスに、
前記コンテキストハブに関連付けられたユーザ定義ルールに基づいて前記コンテキストモデルを生成することによって前記コンテキストモデルを取得させる命令をさらに含む、請求項16に記載の非一時的コンピュータ可読媒体。
【請求項18】
前記少なくとも1つのプロセッサによって実行される場合に、前記コンピューティングデバイスに、
前記コンテキストモデルを使用して、前記コンテキストハブに関連付けられた前記複数のサードパーティソースからサードパーティメッセージングソースにおいて受信されたメッセージが前記関連情報を含むことを判定することによって前記関連情報を識別することと、
前記サードパーティソース内に前記メッセージを指すリンクを追加することによって、前記関連情報への前記リンクを追加することと、
を行わせる命令をさらに含む、請求項16に記載の非一時的コンピュータ可読媒体。
【請求項19】
前記少なくとも1つのプロセッサによって実行される場合に、前記コンピューティングデバイスに、
前記コンテキストモデルを使用して、前記コンテキストハブに現在関連付けられていないウェブページ内のテキストが前記関連情報を含むことを判定することによって前記関連情報を識別することと、
前記ウェブページを指すリンクを追加することによって、前記関連情報への前記リンクを追加することと、
を行わせる命令をさらに含む、請求項16に記載の非一時的コンピュータ可読媒体。
【請求項20】
前記少なくとも1つのプロセッサによって実行される場合に、前記コンピューティングデバイスに、
ウェブページが前記コンテキストハブに関連するというインディケーションを前記ユーザから受信することに基づいて、前記ウェブページを前記コンテキストハブに関連付けさせる命令をさらに含む、請求項16に記載の非一時的コンピュータ可読媒体。
【発明の詳細な説明】
【背景技術】
【0001】
近年、ウェブ検索、閲覧、および通信を改善するハードウェアおよびソフトウェアプラットフォームの著しい進歩が見られている。メッセージング、コンテンツ共有、閲覧、および検索などのウェブベースの機能が増加し続けるにつれて、多くの従来のウェブ閲覧システムは、ウェブコンテンツを編成する方法を提供する。例えば、多くの従来のウェブ閲覧システムは、ユーザが単一のウィンドウ内の異なるタブに対応するウェブページ間で切り替えることができるタブ付き閲覧を提供する。
【0002】
しかしながら、これらの進歩にもかかわらず、従来のシステムは、不正確で、非効率的で、柔軟性のない動作をもたらすいくつかの技術的欠点を抱えている。例えば、従来のシステムは、ウェブ閲覧ウィンドウおよびタブを偶然かつ不正確に編成することが多い。特に、従来のシステムはしばしばタブ付き閲覧機能を提供するが、多くの従来のシステムはウェブ閲覧タブおよびウィンドウを管理するためにユーザに依存し、ユーザが新しいタブを手動で開くこと、もはや必要とされないタブを閉じること、または異なるブラウザウィンドウ内のグループタブを必要とする。しかしながら、ウェブ閲覧の性質と、ユーザが典型的にアクセスし得る多数のウェブソースとによって、ユーザが自身のタブを管理する結果は多くの場合、ナビゲートすることが困難であり、ユーザが特定のウェブソースおよびコンテンツを見つけることを困難にする多数のランダムに順序付けられたタブを含む単一のブラウザウィンドウである。したがって、ウェブソースとのユーザのインタラクション(対話)を管理する従来のシステムは、有意義な編成を曖昧にするので、しばしば不正確である。
【0003】
上述の欠点と同様に、従来のシステムは、非効率的であることが多い。従来のシステムは、多くの場合、有意義な方法でウェブ閲覧タブを表面化することができないので、従来のシステムはしばしば、重複タブおよび/またはそうでなければ不要なタブを提示する。例えば、ユーザは従来のシステムの非効率性により、ユーザがアクセスしたいコンテンツを含む以前に開かれたタブを試して見つけるのではなく、新しいタブおよびウィンドウを開き続けることが容易になることが多いので、ウェブ閲覧タブおよびウィンドウ内のコンテンツの追跡を失うことが多い。したがって、従来のウェブ閲覧システムは、タブの多くが複製または無関係なコンテンツを含む場合であっても、複数のタブを開いてアクティブに保つことに関連する計算リソースを専用にしなければならないことが多い。
【0004】
さらに、従来のウェブ閲覧システムは、多くの場合、ウェブ閲覧タブおよびウィンドウを非効率的に表示する。特に、1つ以上のウェブ閲覧ウィンドウが複数のタブを含む場合、従来のシステムは所望のウェブコンテンツを識別するために、ユーザが複数のタブおよび/またはウィンドウをクリックすることをしばしば必要とする。例えば、ウィンドウ内により多くのタブを適合(フィット)させるために、従来のウェブ閲覧システムは、特定のタブにどのコンテンツが関連付けられているかを知るために、ユーザが個々のタブのコンテンツを選択および閲覧しなければならないポイントまでタブラベルを短縮することが多く、その結果、ユーザは、所望のコンテンツを見つけるために複数のタブを選択しなければならないことが多い。また、従来のウェブ閲覧システムは、ウィンドウ及びタブ上でアクションを実行するための厄介なユーザインタフェースを提示することが多い。例えば、あるウィンドウから別のウィンドウにタブを移動するために、従来のシステムは、ユーザが第1のウィンドウを開き、タブを選択し、第2のウィンドウを開き、タブを第2のウィンドウに移動することをしばしば要求する。したがって、従来のウェブ閲覧システムは、多くの場合、ウェブ閲覧タブおよびウィンドウ上で動作を表示および実行するための非効率的なユーザインタフェースを提示する。
【0005】
さらに、従来のウェブ閲覧システムは、柔軟性に欠けることが多い。従来のウェブ閲覧システムは、多くの場合、ウェブベースのソースの複雑さ及びウェブベースのソース間のインタラクションの増加に対応することができない。例えば、従来のウェブ閲覧システムは、多くの場合、単一のタブ内の単一のウェブソースの能力(ケイパビリティ)にアクセスすることを制約される。したがって、従来のシステムは、現在、ユーザが効率的な方法で複数のウェブベースのソースに関して閲覧および/またはアクションを実行することを可能にしている。むしろ、従来のシステムは、各個々のウェブソースを他のウェブソースから隔離するように特別に設計された閲覧構造を含んでいた。例えば、単一の検索条件について複数のウェブソースを検索するために、従来のシステムはユーザに、各個々のタブ内で別々にアクセスし、別々の検索を開始させることが多い。
【0006】
加えて、従来のウェブ閲覧システムがユーザのための個々のウェブソースを隔離するのと同様に、従来のウェブ閲覧システムは、多くの場合、ウェブ閲覧体験に関して個々のユーザを互いに隔離する。従来のシステムは、ユーザがインターネットを介して通信するために特定のウェブソース(例えば、オンライン電子メールまたはメッセージングシステム)にアクセスすることを可能にし得るが、従来の閲覧システムは、他のウェブソースにわたるユーザ共同(コラボレーション)を可能にする際に制限される。実際、従来のシステムはユーザ中心であり、ユーザに、別個の通信アプリケーションまたはシステムにアクセスさせて、ウェブソースへのリンクを別個のユーザと共有することさえもさせる。このユーザ中心の欠点は、ウェブコンテンツに関して他のユーザと共同する(コラボレーションする)ことを試みるために、複数のアプリケーションと、または複数のステップを有する複数のタブとの間で、ユーザを絶えず切り替えさせる非効率的なユーザ体験をもたらす。
【0007】
これらが、追加の課題および問題と共に、従来のウェブ閲覧システムに関して存在する。
【発明の概要】
【0008】
本明細書で説明される1つ以上の実施形態は、特定のチーム、プロジェクト、またはテーマに専用の1つ以上のコンテキストハブ内でサードパーティソース(たとえば、ウェブアクセス可能なコンテンツ)を編成および管理するシステム、方法、および非一時的コンピュータ可読記憶媒体を用いて、当技術分野における前述のまたは他の問題のうちの1つ以上の利益を提供し、かつ/または解決する。例えば、コンテキストハブは、前記コンテキストハブに関連付けられたウェブアクセス可能なソースにアクセスし、編成し、管理するためのグラフィカルユーザインタフェースおよびグラフィカルユーザ体験を含むデジタル空間である(例えば、専用のウェブ閲覧アプリケーションまたはウェブブラウザ上で実行される拡張プログラムが、コンテキストハブを提供することができる)。
【0009】
特に、開示されるシステムは、特定のサードパーティソースに対して実行すべきアクションを決定するために、サードパーティソースに関連付けられた使用信号を監視および解析することによって、コンテキストハブに関連付けられた前記サードパーティソースを管理する。たとえば、1つ以上の実施形態では、開示されるシステムは、コンテキストハブ内の異なるサードパーティソースに対応するタブを編成および管理することができる。例示するために、開示されるシステムは、コンテキストハブ内のタブに関連付けられた使用信号を監視および解析して、前記タブに関して自動的に実行するアクション(たとえば、コンテキストハブ内のタブを閉じること、またはコンテキストハブにタブを追加することなど)を決定することができる。
【0010】
開示されるシステムはまた、1つ以上のコンテキストハブ内の別個のサードパーティソースからのコンテンツをインテリジェントに編成することができる。例えば、開示されたシステムは、特定のコンテキストハブに関連する選択サードパーティソースコンテンツを自動的に提供するためのスマートフィルタのように振る舞うことができる。より具体的には、開示されるシステムは、複数のウェブアクセス可能なサードパーティソースに関連付けられたコンテキストハブを提供することができる。開示されるシステムは、前記サードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、前記コンテキストハブのコンテキストモデルを生成することができる。開示されるシステムは、前記生成されたコンテキストモデルを使用して、サードパーティソースからの関連情報を識別し、前記関連情報へのリンクを前記コンテキストハブに追加することができる(たとえば、サードパーティ電子メールシステムからの関連電子メールまたはインスタントメッセージへのリンク)。したがって、開示されるシステムは、前記コンテキストハブのプロジェクト、チーム、またはテーマに関連するサードパーティソースから特定の情報を選択し、前記コンテキストハブインタフェース内で直接前記特定の情報へのリンクを提供する。
【0011】
さらに、開示されるシステムは、複数のユーザが、前記ソースにかかわらず、ウェブアクセス可能なサードパーティコンテンツ上で共同(コラボレート、協調)することを可能にする。特に、開示されるシステムは、複数のユーザを、様々なサードパーティソースを含むコンテキストハブに関連付けることができる。前記コンテキストハブは、前記ユーザがサードパーティコンテンツ上で共同することを可能にする。例えば、前記コンテキストハブは、ユーザがコンテキストハブのメンバーに見えるサードパーティウェブソース上にコメントを残すことを可能にする。別の例として、あるユーザがサードパーティコンテンツ(例えば、サードパーティウェブページ)と対話したことを判定することに基づいて、開示されるシステムは、前記コンテキストハブに関連付けられた共同ユーザのクライアントデバイスに、前記サードパーティコンテンツとの前記ユーザのインタラクションを示す通知を送信することができる。例えば、開示されたシステムは、前記コンテキストハブ内での表示のために、特定のユーザが特定のサードパーティコンテンツを視聴したかどうかを示す「視聴状態」を示す通知を提供することができる。さらに、前記コンテキストハブは、2人の異なるユーザの前記閲覧体験をリンクする共有閲覧体験を提供して、前記ユーザが共同的にサードパーティコンテンツをリモートで閲覧することを可能にすることができる。
【0012】
本開示の1つ以上の実施形態のさらなる特徴および利点は以下の内容において概説され、一部はその内容から明らかになるか、またはそのような例示的な実施形態の実施によって学習され得る。
【図面の簡単な説明】
【0013】
本開示は、添付の図面を参照することによって、さらなる特異性および詳細を伴って、本発明の1つ以上の実施形態を説明する。以下の段落は、これらの図面を簡単に説明する。
図1図1は、コンテキストハブシステムが1つ以上の実施形態に従って動作することができる例示的な環境を示す図である。
図2A】、
図2B図2A図2Bは、1つ以上の実施形態による、コンテキストハブ内のタブ編成の一例を示す図である。
図3A】、
図3B】、
図3C】、
図3D】、
図3E】、
図3F図3A図3Fは、1つ以上の実施形態による、1つ以上のコンテキストハブ内でタブを編成および管理するための例示的な一連のコンテキストハブ管理グラフィカルユーザインタフェースを示す図である。
図4図4は、1つ以上の実施形態による、タブに関してアクションを実行することを示すフロー図を図示する。
図5図5は、1つ以上の実施形態による、タブに関してアクションを決定し、実行するための一連の動作の例を図示する。
図6図6は、1つ以上の実施形態による、タブに関してアクションを決定し、実行するための一連の動作のフローチャートを示す。
図7図7は、1つ以上の実施形態による、例示的なサードパーティソースおよびウェブアクセス可能コンテンツを示す。
図8図8は、1つ以上の実施形態による、コンテキストモデルをトレーニングおよび適用するための例示的な一連の動作を図示する。
図9図9は、1つ以上の実施形態による、例示的なコンテキストハブフィルタを示す。
図10図10は、1つ以上の実施形態による、予測コンテキストモデルを生成するためのコンテキスト機械学習モデルのトレーニングを示す。
図11図11は、1つ以上の実施形態による、関連情報をコンテキストハブに追加するためにコンテキスト機械学習モデルを適用することを図示する。
図12図12は、1つ以上の実施形態による、コンテキストモデルとしての例示的なソーシャルグラフを図示する。
図13A】、
図13B図13A図13Bは、1つ以上の実施形態による、コンテキストモデルを提案するためのハブ提案機械学習モデルのトレーニングおよび適用を示す。
図14A】、
図14B図14A図14Bは、1つ以上の実施形態による、様々なサードパーティソースからのウェブアクセス可能コンテンツを編成および管理するための一連の例示的なコンテキストハブ管理グラフィカルユーザインタフェースを示す。
図15図15は、1つ以上の実施形態による、関連情報へのリンクをコンテキストハブに追加するための一連の動作のフローチャートを示す。
図16図16は、1つ以上の実施形態による、サードパーティソースからのコンテンツのためのコンテキストハブ内の視聴状態を更新することに関与するプロセスのシーケンス図を図示する。
図17A】、
図17B図17A図17Bは、1つ以上の実施形態による、コンテキストハブを介して接続されたユーザ間で共同するための一連の例示的なコンテキストハブ管理グラフィカルユーザインタフェースを図示する。
図18図18は、1つ以上の実施形態による、コンテキストハブに関連付けられたクライアントデバイス間で閲覧イベントを検出および複製することに関与するプロセスのシーケンス図を図示する。
図19A】、
図19B図19A図19Bは、1つ以上の実施形態による、一連の例示的な共有閲覧グラフィカルユーザインタフェースを図示する。
図20図20は、1つ以上の実施形態による、共同するユーザにウェブアクセス可能なコンテンツに対する注釈を提供するための一連の動作を図示する。
図21図21は、1つ以上の実施形態による、ウェブアクセス可能コンテンツ上でユーザ注釈を受信および提示するための例示的な注釈グラフィカルユーザインタフェースを図示する。
図22A】、
図22B図22A図22Bは、1つ以上の実施形態による、例示的なプレゼンテーション作成グラフィカルユーザインタフェースおよび例示的なプレゼンテーションビューグラフィカルユーザインタフェースを図示する。
図23図23は、1つ以上の実施形態による、コンテキストハブシステムがプライベートウェブインデックスを生成することができる様々な編成レベルを示す。
図24図24は、1つ以上の実施形態による、コンテキストハブ内の表示のために、コンテンツとのユーザインタラクションを示す通知を提供するための一連の動作のフローチャートを図示する。
図25A】、
図25B図25A図25Bは、1つ以上の実施形態による、例示的なコンテキストハブシステムを示す。
図26図26は、1つ以上の実施形態による、例示的なコンピューティングデバイスのブロック図を図示する。
図27図27は、1つ以上の実施形態による、コンテキストハブシステムのネットワーキング環境を図示する。
【発明を実施するための形態】
【0014】
本明細書で説明する1つ以上の実施形態は、特定のユーザグループ、特定のプロジェクト、および/または特定のテーマに専用のコンテキストハブインタフェース内の様々なソースからのウェブアクセス可能なサードパーティコンテンツを編成および管理することができるコンテキストハブシステムを含む。例えば、コンテキストハブシステムは、単一のデジタルインタフェース内で異なるサードパーティソースからの関連コンテンツを編成することができる。さらに、コンテキストハブシステムは、使用信号を解析することによってデジタル空間内のコンテンツを編成および管理することができ、使用信号に基づいてコンテンツに関するアクションを実行することができる。さらに、コンテキストハブシステムは、様々なサードパーティソースにアクセスし、サードパーティソースから選択コンテンツを取り出し、コンテキストハブ管理インタフェース内で選択コンテンツをインテリジェントに編成することができる。さらに、コンテキストハブシステムは、デジタル空間内のサードパーティコンテンツに関して、ユーザ間の効率的かつ直感的な共同(コラボレーション)を可能にする。
【0015】
コンテキストハブ内のタブの構成と管理の概略
ウェブアクセス可能なサードパーティソースの編成および管理を容易にすることの一部として、コンテキストハブシステムは、コンテキストハブに関連付けられた各サードパーティソースに関連付けられたタブを含むコンテキストハブ管理グラフィカルユーザインタフェースを生成し、提示することができる。コンテキストハブ管理グラフィカルユーザインタフェースは、ユーザがコンテキストハブ内の異なるサードパーティソースへ迅速かつ効率的にナビゲートすることを可能にするために、コンテキストハブ内のタブに対応する編成されたリンクのセットを含むことができる。さらに、コンテキストハブ管理グラフィカルユーザインタフェースは、異なるチーム、プロジェクト、および/またはテーマに関連付けられた異なるコンテキストハブへのリンクを含むことができ、ユーザが、異なるチーム、プロジェクト、および/またはテーマに対応するサードパーティソースの異なるセットまたはグループへ迅速かつ効率的にナビゲートすることを可能にする。
【0016】
加えて、直前に述べたように、コンテキストハブは、サードパーティソースにそれぞれ関連付けられた多数の(いくつかの)タブを含む。コンテキストハブとのサードパーティソースの関連付けによって、コンテキストハブシステムは、コンテキストハブに関連付けられたサードパーティソース内でのターゲット検索を容易にすることができる。例えば、コンテキストハブシステムは、ユーザが検索語を入力することができる検索バーをコンテキストハブ管理グラフィカルユーザインタフェース内に提供することができる。検索語の受信(受付)に応答して、コンテキストハブシステムは、コンテキストハブに関連付けられたサードパーティソースのフォーカスされた検索(集中検索)を実行して、コンテキストハブに関連付けられたサードパーティソースから1つ以上のフォーカスされた検索結果を提供する。したがって、コンテキストハブシステムは、関連するウェブアクセス可能なサードパーティソースのみを検索する(たとえば、一般的なウェブ検索と比較して、コンテキストハブに関連付けられた限られた数のウェブアクセス可能なソースのフォーカスされた検索)、固有の、新規の、効率的なシステムを提供する。
【0017】
ユーザがコンテキストハブおよび関連するサードパーティソースに対して検索を実行することを可能にすることに加えて、コンテキストハブシステムは、コンテキストハブ管理グラフィカルユーザインタフェースを介してコンテキストハブの管理を容易にすることができる。例えば、様々なグラフィカルユーザインタフェース要素とのユーザインタラクションに基づいて、コンテキストハブシステムは、第1のコンテキストハブから第2のコンテキストハブに関連付けられたアイコンにリンクを単にドラッグすることによって、コンテンツを第1のコンテキストハブから第2のコンテキストハブに移動することができる。したがって、コンテキストハブシステムは、様々なコンテキストハブ内のタブに関連付けられたサードパーティソースの視聴、アクセス、および管理を容易にすることができる。
【0018】
ユーザがコンテキストハブを作成および編成することを可能にするツールを提供することに加えて、コンテキストハブシステムは、タブに関連付けられた使用信号に基づいて、コンテキストハブ内のタブ上でアクションを自動的に実行することもできる。例示するために、コンテキストハブシステムは、コンテキストハブ内のタブに関連付けられた使用信号を監視することができる。例えば、コンテキストハブシステムは、ユーザの視聴頻度、最後にアクセスされた時間、視聴に費やされた平均時間、および他のタイプの使用信号を監視することができる。コンテキストハブシステムは、使用信号を解析して、タブおよび関連するサードパーティソースに関して実行すべきアクションを決定することができる。使用信号を解析することに基づいて、コンテキストハブシステムは、タブに関して決定されたアクションを実行することができる。例えば、コンテキストハブシステムは、以下でより詳細に説明されるように、タブを自動的に閉じるか、またはタブを閉じることを提案すること、タブを追加するか、またはタブをコンテキストハブに追加することを提案すること、タブを移動するか、またはタブを第1のコンテキストハブから第2のコンテキストハブに移動することを提案することを決定し得る。
【0019】
コンテンツキュレータとしてのコンテキストハブの概略
1つ以上の実施形態では、コンテキストハブシステムはまた、コンテキストハブ内の表示のために様々なサードパーティソースからコンテンツをインテリジェントに選択し、提供することができる。例えば、コンテキストハブシステムは、複数のサードパーティソースに関連付けられたコンテキストハブを提供することができる。たとえば、サードパーティソースは、電子メールソース、メッセージングソース、デジタルコンテンツアイテムソース、および様々な他のソースを含むことができる。コンテキストハブシステムは、コンテキストハブに関連付けられた複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、コンテキストハブに対応するコンテキストモデルを生成し得る。コンテキストモデルを使用して、コンテキストハブシステムは、サードパーティソースから関連情報を識別することができる。関連情報を識別することに基づいて、コンテキストハブシステムは、ユーザが識別された関連情報に迅速かつ効率的にアクセスすることを可能にするために、関連情報へのリンクをコンテキストハブ管理インタフェースに追加することができる。
【0020】
例えば、コンテキストハブシステムは、サードパーティソースからのコンテンツがコンテキストハブにコンテキスト的に関連するかどうかを決定するために、コンテキストモデルを利用することができる。1つ以上の実施形態では、コンテキストモデルは、サードパーティソースのコンテンツを解析して、サードパーティソースからのコンテキスト関連情報を識別することができる。例えば、ユーザが特定のプロジェクトに関連付けられた電子メール、メッセージ、およびデジタルコンテンツを検索するためにいくつかの異なるウェブサイトを開くことを要求する代わりに、コンテキストハブシステムは、異なるサードパーティソース(例えば、電子メールソース、メッセージソース、デジタルコンテンツソース)の各々にアクセスして、それらのソースからの関連コンテンツを単一の場所に提供することができる。
【0021】
たとえば、コンテキストハブシステムは、電子メッセージソース(たとえば、電子メール、インスタントメッセージングなど)にアクセスして、コンテキストハブに関連付けられたユーザからの特定のメッセージ、またはコンテキストハブに関連するコンテンツを有するメッセージを識別することができる。さらに、コンテキストハブシステムは、ウェブアクセス可能なカレンダーにアクセスして、コンテキストハブに関連付けられた特定のイベントまたはミーティングを識別することができる。加えて、コンテキストハブシステムは、コンテキストハブに関連するデジタルメディアアイテム(例えば、文書、画像、ビデオなど)を識別するためにコンテンツ管理システムにアクセスすることができる。したがって、コンテキストモデルを使用することに基づいて、コンテキストハブシステムは、複数のサードパーティソースから関連コンテンツを識別し、単一のコンテキストハブ管理グラフィカルユーザインタフェース内の関連コンテンツへのリンクを提供することができる。
【0022】
コンテキストハブシステムはまた、コンテキストモデルのパラメータを迅速かつインテリジェントに調整し得る。例えば、いくつかの実施形態では、コンテキストモデルは、コンテンツフィルタとして動作することによって、サードパーティソースコンテンツをキュレートする。コンテキストハブシステムは、コンテキストハブ管理グラフィカルユーザインタフェースを介してコンテンツフィルタのパラメータを提示することができる。コンテキストハブシステムは、コンテンツフィルタのユーザ修正パラメータに基づいて、コンテキストハブ内のコンテンツを自動的に更新することができる。加えて、または代替として、いくつかの実施形態では、コンテキストモデルは、機械学習モデルを含む。コンテキストハブシステムは、ユーザ入力および/またはトレーニングデータを使用して機械学習モデルのパラメータをトレーニングすることができる。したがって、機械学習モデルは、様々なサードパーティソースからのデジタルコンテンツをインテリジェントに選択し、コンテキスト関連コンテキストハブにソートすることができる。
【0023】
共同(コラボレーション)ツールとしてのコンテキストハブの概略
前述のように、コンテキストハブシステムは、複数のユーザ間のサードパーティソースにわたる共同(コラボレーション)を容易にし得る。例示するために、コンテキストハブシステムは、コンテキストハブをユーザのグループおよびウェブアクセス可能ソースのセット(たとえば、サードパーティソース)に関連付け得る。コンテキストハブシステムは、ユーザのグループからの第1のユーザによるサードパーティソースのセットからのサードパーティソースとのユーザインタラクションを検出することができる。例えば、コンテキストハブシステムは、第1のユーザがコンテキストハブ内のソースに注釈(アノテーション)(例えば、コメントまたはハイライト)を追加したことを検出することができる。コンテキストハブシステムは、ユーザインタラクションを示す、コンテキストハブ内の表示のための通知を提供することができる。
【0024】
さらに、コンテキストハブシステムは、コンテキストハブ内のサードパーティソースに関するユーザの存在/見られる機能を提供することができる。例えば、コンテキストハブシステムは、共同ユーザが現在、コンテキストハブ内のサードパーティソースを視聴している(見ている)というインディケーションを、コンテキストハブ内に提供することができる。コンテキストハブシステムはまた、特定のユーザがサードパーティソースを視聴した(見た)ことがないか、または以前に視聴した(見た)ことがあるという通知をコンテキストハブ内に提供することができる。したがって、コンテキストハブシステムは、サードパーティソースに関するユーザ活動のコンテキストハブに関連付けられたユーザの共同グループをリアルタイムで更新することができる。
【0025】
さらに、コンテキストハブシステムは、コンテキストハブ内の共同者(コラボレータ)間の通信を容易にすることができる。コンテキストハブシステムは、コンテキストハブを介して様々なAPIを使用してデジタルメッセージを送信することができる。一例では、ユーザがコンテキストハブ内の共同ユーザのアバターへのリンクをドラッグアンドドロップしたことを検出したことに基づいて、コンテキストハブシステムは、コンテキストハブシステムが共同ユーザにリンクを送ることができるオプションを提示することができる。例示するために、コンテキストハブシステムは、サードパーティ電子メッセージングシステム、サードパーティインスタントメッセージングシステムを介して、またはコンテキストハブ内で、共同ユーザにリンクを送信することができる。
【0026】
さらに、コンテキストハブシステムは、サードパーティソースおよびコンテンツに関連付けられたリアルタイム共有ウェブ閲覧セッションを提供することができる。特に、コンテキストハブシステムは、2人以上の共同ユーザが同じサードパーティソースコンテンツを同時に体験して対話する共有閲覧セッションを作成することができる。例えば、コンテキストハブシステムは、第1のユーザのウェブブラウザから報告されたイベントを監視し、共同するユーザのブラウザにおいてこれらのイベントを複製することができる。コンテキストハブシステムは、複数の共同ユーザがリアルタイムで、他のユーザが視聴および注釈付けしているコンテンツを視聴することができるように、この機能をスケーリングすることができる。
【0027】
さらに、コンテキストハブシステムは、プライベートウェブインデックスのインデックス付け(索引付け)を容易にすることができる。一般に、ウェブインデックス付けは、閲覧中にアクセスされるコンテンツを記憶し、編成することを含む。コンテキストハブシステムは、関連するクエリに応答してインデックス付けされたコンテンツを検索し、識別することができる。コンテキストハブシステムは、特定のユーザのために、また、指定された共同ユーザのグループのために、ウェブにインデックスを付けることができる。例えば、コンテキストハブシステムがコンテキストハブにコンテンツを追加すると、コンテキストハブシステムは、コンテンツを検索し、リスト化し、ランク付けすることができる。さらに、コンテキストハブシステムは、個々のユーザ、共同ユーザのグループ、および/または編成全体のために、サードパーティソースからのコンテンツをインデックス付けすることができる。
【0028】
コンテキストハブシステムは、従来のシステムに勝るいくつかの利点を提供する。例えば、コンテキストハブシステムは、従来のシステムと比較して、精度、効率、および柔軟性を改善する。コンテキストハブシステムは、コンテキスト関連情報を含むコンテキストハブをより正確に生成することができる。コンテキストハブシステムは、コンテキストハブに関するサードパーティソースからの情報をインテリジェントに識別するためにコンテキストモデルを利用することができる。例えば、コンテキストハブシステムは、インターネット上で別個のサードパーティソースからコンテンツを編成するためにコンテキストモデルを利用することができる。さらに、様々なサードパーティソースからのコンテンツをまとめることによって、コンテキストハブシステムは、従来のシステムにおいて以前にフラグメント化されたデータを相互参照することによって、追加のコンテキスト特徴および利点を活用することができる。情報が特定のコンテキストハブに関連すると判定すると、コンテキストハブシステムは、関連情報への効率的かつ直接的なアクセスを提供するURLリンクを介して、コンテキストハブに情報を追加することができる。したがって、コンテキストハブシステムは、サードパーティソースコンテンツをより正確に管理および編成して、関連情報にアクセスするためにユーザが取る必要があるステップの数を大幅に低減する単一のグラフィカルユーザインタフェースにおいて関連情報を提供することができる。
【0029】
さらに、コンテキストハブシステムは、従来のシステムと比較してより効率的に動作する。特に、多くの従来のシステムは、閲覧ウィンドウ内の複製タブまたはそうでなければ不要なタブのために、コンピューティングリソースを、ウェブページを更新して表面化させるのに費やすが、コンテキストハブシステムは、アイドルタブを自動的に閉じるか、または移動させることができる。より具体的には、コンテキストハブシステムは、コンテキストハブ内のタブに関連付けられた使用信号を解析することができる。使用信号に基づいて、コンテキストハブシステムは、タブを閉じるまたは移動するなどのアクションを実行することができる。したがって、コンテキストハブシステムは、従来のシステムと比較して効率を改善し、従来のシステムと比較してメモリ、処理、および通信使用を低減するために、コンテキストハブ内のタブを再編成または閉じることができる。
【0030】
さらに、コンテキストハブシステムは、様々なサードパーティソースからコンテンツを提供する、より効率的なグラフィカルユーザインタフェースを提供する。特に、コンテキストハブシステムは、1つ以上のコンテキストハブ内でコンテンツを編成する単一のグラフィカルユーザインタフェースを生成し、ユーザデバイスにおける表示のために提供することができる。より具体的には、グラフィカルユーザインタフェースは、単一のグラフィカルユーザインタフェースにおいて、メッセージングサービス、ウェブページ、メディアアイテムを含む様々なサードパーティソースからのコンテンツを含むことができる。したがって、コンテキストハブシステムは、サードパーティソースの所有権または制御権にかかわらず、インターネットにわたって別個のサードパーティソースから、これまで分離されていて編成することが困難であったコンテンツを、単一のグラフィカルユーザインタフェース内で、マージすることができる。
【0031】
コンテキストハブシステムはまた、従来のシステムと比較して柔軟性を改善することができる。特に、コンテキストハブシステムは、コンテキストハブ内から様々なサードパーティソース機能へのアクセスを提供することができる。特に、コンテキストハブシステムは、対応するサードパーティソースAPIと併せてコンテキストモデルを利用して、単一の場所内のサードパーティソースからの特定のデジタルコンテンツへのリンクおよび/またはそのプレビューを提供することができる。さらに、コンテキストハブシステムは、サードパーティソースAPIを利用して、ユーザがコンテキストハブ内からサードパーティソースを介してメッセージを送信することを可能にすることができ、それによって、ユーザがコンピュータインタフェース内で、メッセージを送信し、コンテンツを共有し、コンテンツについてコメントし、そうでなければ、異なるサードパーティソースに関して他のユーザと共同するために取るステップの数を大幅に低減する。
【0032】
前述の説明によって示されるように、本開示は、コンテキストハブシステムの特徴および利点を説明するために様々な用語を利用する。ここで、これらの用語の意味に関して、さらなる詳細が提供される。例えば、本明細書で使用するとき、用語「ウェブアクセス可能なソース」又は「ウェブアクセス可能なコンテンツ」(又は単に「コンテンツ」)は、インターネットを介してアクセス可能なデジタルソース又はコンテンツを指す。ウェブアクセス可能なコンテンツは、サードパーティソースと内部ソースとの両方を指すことができる。例えば、用語「ウェブアクセス可能なサードパーティソース」または単に「サードパーティソース」は、コンテキストハブシステムとは別個のデジタルソースを指す。サードパーティのソースの例には、サードパーティのウェブサイト、電子メールシステム、メッセージングシステム、カレンダーシステム、コンテンツ管理システム、データ管理システム、ウェブアプリケーション、デジタルメディア管理システム、またはインターネットを介してアクセス可能な任意の他のタイプのソースまたはコンテンツが含まれる。一般に、サードパーティソースは、サードパーティコンテンツに関連付けられ、またはサードパーティコンテンツを提供し、その例は、ウェブページ、電子メール、他の電子メッセージ、カレンダーイベント、写真、ビデオ、文書、および他のデジタルマルチメディアなどのデジタルコンテンツ、ならびに特定のサードパーティソースに関連付けられた他のデジタルデータである。サードパーティソースおよびコンテンツとは対照的に、「内部ソース」または「内部コンテンツ」という用語は、コンテキストハブシステムと統合されたデジタルソースを指す。たとえば、1つ以上の実施形態では、コンテキストハブシステムは、コンテンツ管理システム内に統合され、コンテキストハブシステムは、コンテキストハブ内のコンテンツ管理システムからデジタルコンテンツにアクセスし、それを提供することができる。
【0033】
本明細書で使用するとき、用語「コンテキストハブ」は、コンテキストに関連するウェブアクセス可能なソースを含むデジタル空間を指す。特に、コンテキストハブという用語は、コンテキストに関連するウェブアクセス可能なソースおよびコンテンツに関連付けられたデジタル空間を指す。上述のように、1つ以上の実施形態では、ウェブアクセス可能なコンテンツは、ウェブアクセス可能なサードパーティソースと、内部ソースとを含み、デジタルコンテンツのサードパーティソースおよび内部ソースの両方を組み合わせる一体的な管理センターを提供する。上記で簡単に述べたように、コンテキストハブは、専用のウェブブラウザの一部であってもよく、またはウェブブラウザ上で実行される拡張であってもよい。したがって、コンテキストハブシステムは、関連するサードパーティソース(および/または内部ソース)に対応するタブを記憶および表示するウェブブラウザのウィンドウ内にコンテキストハブを提供することができる。コンテキストハブシステムはまた、単一のユーザのために複数のコンテキストハブを生成することができ、したがって、複数の異なるブラウザウィンドウ内に複数のコンテキストハブを提供することができる。他の実施形態では、コンテキストハブは、本明細書で説明する機能およびグラフィカルユーザインタフェースを提供するクライアントデバイス上のネイティブスタンドアロンアプリケーションを介して提供される。
【0034】
本明細書で使用するとき、用語「タブ」は、ウェブアクセス可能なソースを表すコンテキストハブ内のグラフィック要素を指す。例えば、「タブ」という用語は、ウェブアクセス可能なソースに対応するコンテキストハブ内のグラフィカル制御要素を指す。いくつかの実施形態では、タブは、ウェブ閲覧ウィンドウ内のタブを指す。タブはまた、デジタルメッセージングソースからのメッセージ、または文書もしくは画像などのデジタルメディアアイテムなどの他のデジタルコンテンツに対応するコンテンツコンテナを備えることができる。例えば、コンテキストハブ内のタブの選択を検出することに基づいて、コンテキストハブシステムは、対応するソースまたはコンテンツを提示することができる。加えて、コンテキストハブは、ユーザがウェブアクセス可能なソース間をナビゲートすることを選択することができる複数のタブを含むことができる。
【0035】
本明細書で使用するとき、用語「使用信号」は、オブジェクト又は同様のオブジェクトの使用を示す情報を指す。特に、「使用信号」という用語は、コンテキストハブ内のオブジェクト、ソース、またはコンテンツに対するユーザインタラクションに関する情報を指す。たとえば、使用信号は、平均視聴頻度、最後にアクセスされた時間、視聴に費やされた平均時間、およびコンテキストハブ内のサードパーティソースに関する他の情報を含む。上述のように、使用信号は、コンテキストハブ内のサードパーティソースとのユーザインタラクションを反映する情報を指すこともできる。さらに、使用信号は、コンテキストハブ内のタブに関する使用情報を指すことができる。
【0036】
本明細書で使用するとき、用語「コンテキストモデル」は、オブジェクトのコンテキストデータを解析することができるモデルを指す。特に、コンテキストモデルは、ウェブアクセス可能なソースからデジタルコンテンツアイテム内のコンテキスト関連情報を識別することができる。例えば、コンテキストモデルは、サードパーティソースからのデジタルコンテンツアイテムがコンテキストハブにコンテキスト的に関連する情報を含むかどうかを決定(判定)するようにトレーニングされた機械学習モデルを備えることができる。いくつかの実施形態では、コンテキストモデルはまた、コンテキストグラフ(例えば、ソース、ユーザ、およびコンテンツがどのように関連するかのマッピング)、コンテンツフィルタ、またはコンテキスト解析を実行する他のタイプの構造を含むことができる。
【0037】
本明細書で使用される場合、「コンテキスト情報」という用語は、オブジェクト、コンテンツ、またはソースのコンテキストを反映するデータを指す。特に、コンテキスト情報は、コンテンツのコンテキストを示すソースにまたはソース内のコンテンツに関連付けられたデータに関する。たとえば、コンテキスト情報は、サードパーティソースからのコンテンツのメタデータから、またはコンテンツのコンテキスト特徴を解析することによって導出することができる。少なくとも1つの実施形態では、コンテキストハブに関連付けられたコンテキスト情報は、コンテキストハブに対応する各ウェブアクセス可能ソースまたはコンテンツアイテムからのコンテキストデータに関連する。
【0038】
本明細書で使用するとき、用語「関連情報」は、コンテキストハブに関連するデータを指す。特に、関連情報という用語は、コンテキストハブにコンテキスト的に関連するウェブアクセス可能なソース(例えば、サードパーティソース)からのコンテンツを指す。例えば、関連情報は、コンテキストハブのトピック、チーム、プロジェクト、または目的に、コンテキスト的に関連するコンテンツを含む電子メールメッセージを含むことができる。関連情報はまた、例えば、カレンダーソースからのカレンダーイベント、またはコンテンツ管理システムからの特定の文書を含むことができる。以下の議論は、1つ以上の実施形態による関連情報の追加の例を提供する。
【0039】
本明細書で使用される場合、用語「リンク」は、データへの参照を指す。特に、「リンク」は、ウェブアクセス可能なソース(例えば、サードパーティソース)のデジタル位置、またはウェブアクセス可能なソース内の特定のコンテンツアイテムもしくはオブジェクトのデジタル位置を指し示す選択可能なオブジェクトを指すことができる。リンクは、固有リソースロケータに関連付けることができ、選択されるとウェブアクセス可能なソースまたはウェブアクセス可能なコンテンツにナビゲートする、単語、フレーズ、画像、または他のグラフィカルオブジェクトなどの選択可能要素を含むことができる。加えて、リンクは、コンテキストハブリンクの単一の選択で、ユーザがコンテキストハブ、およびすべての対応するウェブアクセス可能ソースにアクセスできるように、コンテキストハブを参照することができる。
【0040】
本明細書で使用するとき、用語「通知」は、任意の種類のデジタル通信を指す。特に、「通知」という用語は、コンテキストハブ内の情報を示すデジタルメッセージ、警告、または視覚的要素を指すことができる。たとえば、通知は、第1のユーザのコンテキストハブ内で、第2のユーザがコンテキストハブに関連付けられたサードパーティソースを見た、または現在視聴していることを示す視覚的要素を含むことができる。例えば、通知は、サードパーティソースと共に表示される第2のユーザのアバターを含むことができる。一般に、通知は、電子メール、インスタントメッセージ、テキストメッセージなどの電子メッセージとは異なる。しかしながら、通知は例えば、電子メッセージの受信のインディケーションを含むことができる。
【0041】
コンテキストハブシステム概略
次に、図面を参照して、コンテキストハブシステムに関する追加の詳細を提供する。たとえば、図1は、コンテキストハブシステムが実装され得る例示的なシステム環境(「環境」)100の概略図を示す。図1に示すように、環境100は、ネットワーク112によって接続されたサーバ102、クライアントデバイス108a~108n、サードパーティシステム118、およびコンテキストハブシステム116を含むことができる。
【0042】
図1の環境100は、特定の数の構成要素を有するものとして示されているが、環境100は、任意の数の追加のまたは代替の構成要素(たとえば、ネットワーク112を介してコンテキストハブシステム116と通信している任意の数のサーバ、サードパーティシステム、クライアントデバイス、または他の構成要素)を有することができる。同様に、図1は、サーバ102、サードパーティシステム118、ネットワーク112、およびクライアントデバイス108a~108nの特定の構成を示しているが、様々な追加の構成が可能である。
【0043】
サーバ102、サードパーティシステム118、クライアントデバイス108a~108n、およびネットワーク112は直接的または間接的に(たとえば、図27に関して以下でより詳細に説明するネットワーク112を通して)互いに通信可能に結合され得る。さらに、サーバ102、サードパーティシステム118、およびクライアントデバイス108a~108nは、コンピューティングデバイス(図26に関して以下でより詳細に説明するような1つ以上のコンピューティングデバイスなど)を備えてもよい。
【0044】
図1に示すように、環境100は、コンテキストハブシステム116を含む。一般に、コンテキストハブシステム116は、コンテキストハブに関連するデータを生成し、管理し、格納する。たとえば、コンテキストハブシステム116は、コンテキストハブを作成し、コンテキストハブに関連付けられたウェブアクセス可能ソース(たとえば、サードパーティソース)のためのデータを格納することができる。コンテキストハブシステム116はまた、ユーザの個々のグループおよび共同グループの両方のためのユーザデータを管理することができる。より具体的には、コンテキストハブシステム116は、コンテキストハブおよびコンテキストハブ内のオブジェクトに対応する使用信号にアクセスし、監視し、解析することができる。
【0045】
図1は、サーバ102のコンテキストハブマネージャ106およびクライアントデバイス108a~108nのクライアントアプリケーション110の両方に位置するコンテキストハブシステム116を示す。いくつかの実施形態では、コンテキストハブシステム116は、環境100の1つ以上の構成要素上に実装され得る(たとえば、全体的にまたは部分的に位置する)。たとえば、コンテキストハブシステム116は、クライアントデバイス108a~108n上に完全に(または部分的に)実装され得る。代替的に、コンテキストハブシステム116は、サーバ102上に完全に(または部分的に)実装され得る。
【0046】
さらに、いくつかの実施形態では、コンテキストハブシステム116は、図1に示すように、コンテンツ管理システム103内に組み込まれる。コンテンツ管理システムは、デジタルファイル、ウェブ文書などのデジタルコンテンツへのアクセスを格納および管理するコンテンツ管理システムデータベース107を含むことができる。コンテキストハブシステム116に関するさらなる詳細は、図25A図25Bに関して以下で説明される。コンテキストハブシステム116がコンテンツ管理システム103内に組み込まれる実施形態では、コンテンツ管理システムデータベース107内のデジタルコンテンツは、上記で定義された内部ソースまたは内部コンテンツと見なされる。したがって、コンテキストハブシステム116がコンテンツ管理システム内のユーザに関連付けられたデジタルコンテンツにアクセスできるように、ユーザに関連付けられたコンテキストハブを、コンテンツ管理システム103内のユーザアカウントにさらに関連付けることができる。
【0047】
上述のように、環境100は、サーバ102を含む。サーバ102は、コンテキストハブに関連するデータを生成、記憶、受信、および/または送信することができる。より具体的には、サーバ102は、ウェブ関連コンテンツを記憶し、処理し、送信することができる。さらに、サーバ102は、ユーザ識別情報(ユーザID)、連絡先、検索履歴、および他のデータを含むユーザデータを生成し、記憶することができる。さらに、サーバ102は、サードパーティソースにアクセスすることができる。1つ以上の実施形態では、サーバ102はデータサーバを含む。サーバ102はまた、通信サーバまたはウェブホスティングサーバを含むことができる。
【0048】
図1に示すように、サーバ102は、コンテキストハブマネージャ106を含む。一般に、コンテキストハブマネージャ106は、コンテキストハブに関連するデータを生成、管理、共有、および/または格納する機能を提供する。例えば、コンテキストハブマネージャ106は、各コンテキストハブのためのコンテキストハブデータベースを作成し、コンテキストハブデータベース内の各コンテキストハブに関連付けるためにサードパーティソースおよびユーザのグループを受信することができる。さらに、コンテキストハブマネージャ106は、ユーザデータをリンク付けすることによって、コンテキストハブを介して様々なユーザを接続することができる。より具体的には、コンテキストハブマネージャ106は、共同ユーザが単一の共有コンテキストハブにアクセスし、それを修正することができるように、共有コンテキストハブを格納し、更新する。
【0049】
図1に示す環境100は、クライアントデバイス108a~108nも含む。クライアントデバイス108a~108nは、デジタルデータを生成、記憶、受信、および送信することができる。例えば、クライアントデバイス108a~108nは、ネットワーク112を介してサーバ102と通信する。クライアントデバイス108a~108nは、様々なタイプのクライアントデバイスを含み得る。たとえば、クライアントデバイス108a~108nは、ラップトップ、タブレット、移動電話、スマートフォンなどのモバイルデバイスと、デスクトップコンピュータまたは他のタイプのクライアントデバイスなどの非モバイルデバイスとを含み得る。上述のように、クライアントデバイス108a~108nは、デジタルコンテンツアイテムを記憶することができる。たとえば、クライアントデバイス108a~108nは、メディアファイルおよび他のデータなどのデジタルコンテンツアイテムを生成、管理、および記憶することができるハードウェアおよびソフトウェアを含む。クライアントデバイス108a~108nは、クライアントアプリケーション110を介してデジタルコンテンツアイテムをコンテキストハブシステム116に送信することができる。
【0050】
図1にさらに示されるように、クライアントデバイス108a~108nは、クライアントアプリケーション110を含む。クライアントアプリケーション110は、ユーザクライアントデバイス108上のウェブアプリケーションまたはネイティブアプリケーション(たとえば、モバイルアプリケーション、デスクトップアプリケーションなど)であり得る。クライアントアプリケーション110は、コンテキストハブシステム116と通信して、グラフィカルユーザインタフェース、ユーザインタラクション、コンテキストハブを含むデジタルデータを提供し、ユーザ入力を受信し、本明細書で説明するように他の動作を実行することができる。いくつかの実施形態では、クライアントアプリケーション110は、ウェブアクセス可能なコンテンツにアクセスして表示するウェブ閲覧アプリケーションを含んでもよい。クライアントアプリケーション110は、クライアントデバイス108a~108n上のネイティブアプリケーションの一部としてコンテキストハブシステム116を実装し得る。コンテキストハブシステム116は、クライアントアプリケーション110内の拡張上で(部分的にまたは全体的に)動作し得る。他の実施形態では、クライアントアプリケーション110は、本明細書で説明するように、ユーザがコンテキストハブにアクセスすることができるコンテンツ管理システムアプリケーションの一部である。
【0051】
さらに、クライアントデバイス108a~108nは、ネットワーク112をバイパスして、サーバ102および/またはサードパーティシステム118と直接通信することができる。さらに、コンテキストハブシステム116は、サーバ102または環境100内の他の場所に収容された1つ以上のデータベースにアクセスすることができる。さらに、コンテキストハブシステム116は、サーバ102、ネットワーク112、およびクライアントデバイス108a~108nにわたって様々な異なる方法で実装され得る、1つ以上の機械学習モデル(たとえば、ニューラルネットワーク)を含み得る。
【0052】
図1に示すように、環境100は、サードパーティソースおよびコンテンツを含むサードパーティシステム118も含む。たとえば、コンテキストハブシステム116は、サーバ102またはクライアントデバイス108a~108n内に位置せず、サードパーティシステム118上に位置するサードパーティソースおよびアイテムにアクセスすることができる。1つ以上の実施形態では、サードパーティシステム118は、ウェブサーバ、ファイルサーバ、または任意のタイプの遠隔アクセス可能コンピューティングデバイスであり得る。図1に示すように、コンテキストハブシステム116は、ネットワーク112を介してサードパーティシステム118と通信することができる。
【0053】
サードパーティシステム118は、様々なタイプのデータを記憶および管理することができる。図1に示すように、サードパーティシステム118は、サードパーティウェブソース114a、サードパーティメッセージングソース114b、サードパーティコンテンツストレージソース114c、サードパーティカレンダーソース114d、およびサードパーティソース114n(まとめて「サードパーティソース114」)を含む。以下の段落は、サードパーティソース114によって記憶される様々なタイプのデータの簡単な概要を提供する。図1はサードパーティシステム118内にサードパーティソース114を一緒に示しているが、サードパーティソース114は様々な別個のサードパーティシステム118上に配置することができる。
【0054】
図1に示すように、サードパーティシステム118は、サードパーティウェブソース114aを含むことができる。一般に、サードパーティウェブソース114aは、ウェブサイトのコンテンツを表示するためのハードウェアおよび/またはソフトウェアを備えることができる。サードパーティウェブソース114aは、ネットワーク112を介してクライアントデバイス108a~108nにウェブページを格納し、処理し、配信する。例えば、サードパーティウェブソース114aは、ハイパーテキスト転送プロトコル(HTTP)を使用して通信することができる。サードパーティウェブソース114aは、HTML文書、画像、スタイルシートなどの静的コンテンツを含むウェブページを伝達することができる。さらに、サードパーティウェブソース114aは、ウェブアプリケーション、データベース、またはウェブサーバ上でホストされる他のタイプのソースを含むことができる。
【0055】
サードパーティシステム118はまた、サードパーティメッセージングソース114bを含むことができる。サードパーティメッセージングソース114bは、任意の種類のメッセージングサービスを含む。たとえば、サードパーティメッセージングソース114bは、電子メールサービスおよび他のインスタントメッセージングサービスなどのウェブベースのメッセージングサービスを含むことができる。いくつかの実施形態では、サードパーティメッセージングソース114bは、SMS、ページングなどのウェブ独立メッセージングサービスを含む。
【0056】
図1にさらに示すように、環境100は、サードパーティコンテンツストレージソース114cも含む。サードパーティコンテンツストレージソース114cは、デジタルコンテンツアイテムを生成し、管理し、記憶することができる。サードパーティコンテンツストレージソース114cは、ファイルベースのデジタルコンテンツアイテムを記憶、編成、発見、管理、配信、および解析することができる。たとえば、サードパーティコンテンツストレージソース114cは、画像、オーディオ、ビデオ、およびドキュメントを含むデジタルメディアファイルを記憶することができる。サードパーティコンテンツ記憶ソース114cは、(例えば、クラウドストレージを使用して)ファイルベースのデジタルコンテンツアイテムまたはウェブドキュメントを記憶することができ、または(例えば、ローカルストレージを使用して)物理的ハードウェア上に記憶することができる。
【0057】
サードパーティシステム118は、サードパーティカレンダーソース114dも含む。サードパーティカレンダーソース114dは、カレンダーを生成し、格納し、管理する。例えば、サードパーティカレンダーソース114dは、カレンダーおよびイベントを格納するウェブベースのカレンダーシステムを含むことができる。サードパーティカレンダーソース114dは、ユーザまたは接続されたユーザのグループにカレンダーを提供することができる。サードパーティカレンダーソース114dは、イベント、招待、および他のデータを記憶および管理し、インターネットを介してアクセス可能なデジタルカレンダー上でそのようなデータを提供することができる。図1はサードパーティソース114の様々な例を示すが、サードパーティシステム118は、任意の数またはタイプのサードパーティソースを含むことができる。たとえば、サードパーティソース114nは、本明細書で定義される任意の数および任意のタイプのサードパーティソースを表すことができる。
【0058】
本明細書の開示に基づいて理解されるように、コンテキストハブシステム116の様々な機能およびプロセスは、サーバ102およびクライアントデバイス108a~108n上に位置し得る。いくつかの実施形態では、コンテキストハブシステム116は、クライアントデバイス108a~108n上のクライアントアプリケーション110と協働して、本明細書で説明する機能および特徴を提供する。代替的に、機能および特徴は、コンテキストハブシステム116の特定のアプリケーションが必要とするように、クライアントデバイス108a~108n上でのみ実行され得る。
【0059】
概して、コンテキストハブシステム116は、1人以上のユーザに関連付けられたコンテキストハブ内のウェブアクセス可能なソースおよびコンテンツを生成および編成する。コンテキストハブシステム116は、タブ編成および管理、コンテンツキュレーション、およびグループ共同(コラボレーション)の少なくとも3つの機能を実行することができる。以下の図および対応する説明は、これらの機能のそれぞれに関するさらなる詳細を提供する。具体的には、図2図6およびそれに伴う説明は、1つ以上の実施形態による、コンテキストハブシステム116がタブ編成および管理のためのコンテキストハブをどのように生成するかに関するさらなる詳細を提供する。図7図15は、コンテキストハブシステム116が、1つ以上の実施形態に従って、どのようにコンテンツをキュレートすることができるかを示す。図16図24は、コンテキストハブシステム116が、コンテキストハブを利用することによってグループ共同(コラボレーション)をどのように容易にするかに関する追加の詳細を提供する。
【0060】
コンテキストハブ内のタブ編成と管理
一般に、コンテキストハブシステム116は、インターネット上の様々なウェブアクセス可能なソースからのコンテンツを編成し、管理することができる。コンテキストハブシステム116は、過度の個数のタブを有する混み合うウェブ閲覧ウィンドウの問題を解決するのに役立つ。コンテキストハブシステム116は、コンテキストによってタブを編成するコンテキストハブを生成することができる。したがって、コンテキストハブシステム116は、関連するタブを一緒に保持し、コンテキストハブ内からのタブの迅速なアクセスを可能にし、コンテキストハブ間でタブを移動させるなどの動作を効率的に実行することができる。
【0061】
図2A図2Bは、少なくとも1つの実施形態による、コンテキストハブシステム116が1つ以上のコンテキストハブ内でタブをどのように編成することができるかの一例を示す。図2Aは、従来のシステムによるブラウザのウィンドウ201を示す。ウィンドウ201は、ウィンドウ201に関連付けられたウィンドウ構造204に従って編成されたタブ202a~202kを含む。例えば、ウィンドウ構造204は、ウィンドウ201内のタブ202a~202kのタブラベルを表す。図示のように、ウィンドウ201のサイズが制限されるので、ウィンドウ201は、タブ202a~202kのタブラベルを曖昧にする。
【0062】
コンテキストハブシステム116は、ウィンドウ内または複数のウィンドウ内でタブを編成するコンテキストハブを作成することによって、ウィンドウ内で開いているタブが多すぎるという問題を解決する。たとえば、コンテキストハブシステム116は、1つ以上のコンテキストハブ内でタブを編成することができる。少なくとも1つの実施形態では、コンテキストハブは、ウェブ閲覧ウィンドウに関連付けられる。図2Bは、コンテキストハブ206a~206cを示す。コンテキストハブ206a~206cは、基礎構造208に関連付けられる。図2Bに示すように、コンテキストハブ206a~206cは、ウェブ閲覧タブを含むウェブ閲覧ウィンドウを備えることができる。より具体的には、コンテキストハブ206aは、タブ202a、202d、および202eを含む。コンテキストハブ206bは、タブ202bおよび202hを含む。コンテキストハブ206aは、タブ202d、202f、202i、および202gを含む。少なくとも1つの実施形態では、図示のように、コンテキストハブ206a~206cは、ウェブ閲覧ウィンドウを備える。少なくとも1つの他の実施形態では、以下でさらに詳細に説明するように、コンテキストハブ206a~206cは、他の編成ユニットを備えることができる。例えば、コンテキストハブ206a~206cは、ウェブアクセス可能なソース及びコンテンツの集合、及び/又は、ウェブアクセス可能なソース及びコンテンツへのリンクを含む任意の種類のデジタル空間を含むことができる。
【0063】
図2Bはまた、基礎構造208を示す。基礎構造208は、ウィンドウ内のタブの編成を表す。例えば、コンテキストハブ206aは、基礎構造208内のウィンドウ1に対応し、コンテキストハブ206bは、基礎構造208内のウィンドウ2に対応し、コンテキストハブ206cは、基礎構造208内のウィンドウ3に対応する。コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェースの一部として、基礎構造208を提示することを決定し得る。例えば、図示されていないが、コンテキストハブシステム116は、異なるコンテキストハブの各々と、各コンテキストハブに関連付けられた任意の関連するウェブアクセス可能なソースおよびコンテンツとへのリンクを提供する、基礎構造208に対応するコンテキストハブ206a~206cの各々における追加のタブを生成することができる。
【0064】
コンテキストハブシステム116は、表示された基礎構造またはコンテキストハブ206a~206cとのユーザインタラクションに基づいて、新しいコンテキストハブを作成し、コンテキストハブ内に新しいタブを作成し、1つのコンテキストハブから別のコンテキストハブにタブを移動し、コンテキストハブからタブを除去または削除し、またはコンテキストハブを除去し得る。例えば、ユーザは、コンテキストハブ間でタブをドラッグアンドドロップすることによって、コンテキストハブ間でタブを効率的に移動することができる。加えて、または代替として、コンテキストハブシステム116は、ユーザが基礎構造208内でタブを移動したと決定することができる。図3A図3Fおよび対応する説明は、1つ以上の実施形態による、例示的なコンテキストハブ管理グラフィカルユーザインタフェースに関する追加の詳細を提供する。
【0065】
図2Bにさらに示されるように、コンテキストハブシステム116は、コンテキストハブ206a~206c内でタブを編成するために多数の(いくつかの)アクションを実行することができる。たとえば、コンテキストハブシステム116は、新しいコンテキストハブを作成し、コンテキストハブに1つ以上のタブを追加することができる。図2Bに示すように、コンテキストハブシステム116は、コンテキストハブ206a~206cを作成し、タブをコンテキストハブ206a~206cの各々に移動させる。コンテキストハブシステム116は、関連するタブを同じコンテキストハブに移動させることによってタブを編成する。新しい別個のコンテキストハブを作成し、各タブのコンテキストに基づいて新しいコンテキストハブにタブを追加することによって、コンテキストハブシステム116は、任意の1つのコンテキストハブを過密にすることを回避することができる。例えば、図2Aのウィンドウ201内のタブ202a~202kは圧縮され、混雑しているが、コンテキストハブ206a内のタブ202a、202d、および202eは、より広く離間されており、ナビゲーション目的のために選択することが容易である。
【0066】
さらに、図2Bに示すように、コンテキストハブシステム116は、コンテキストハブ206a~206c内のタブを除去または閉じることができる。例えば、図2に示されるように、コンテキストハブシステム116は、基礎構造208内のタブc、g、およびkに対応するタブ202c、202h、および202kを閉じた。コンテキストハブ206a~206c内からタブを閉じるかまたは除去することは、コンテキストハブ206a~206c内の残りのタブの可視性および間隔をさらに改善する。以下でさらに詳細に説明するように、コンテキストハブシステム116は、選択タブ(およびコンテキストハブ)を自動的に、および/またはユーザ入力に基づいて閉じることができる。加えて、ユーザが、閉じたコンテキストハブに関連付けられた閉じたタブにアクセスすることを望む場合、ユーザは、閉じたコンテキストハブに関連付けられたリンクを単に選択することができ、コンテキストハブシステム116は、閉じたタブを開き、それぞれの以前に閉じられたタブに関連付けられたウェブアクセス可能なソースを用いてそれらを再入力する。したがって、ユーザは必要に応じて、1つのコンテキストハブから別のコンテキストハブにナビゲートし、コンテキストハブを開閉することができ、コンテキストハブシステム116は、場合によっては、関連するサードパーティソースまたは内部ソースに、再び開かれたタブを自動的に再入力することができる。このシステムは、コンテキストハブシステムが、タブのグループが閉じられているときでさえも迅速なアクセスのためにタブのグループを編成して利用可能に保つので、ユーザが多数のタブを開いたままにする必要性をなくす。実際、ユーザは、以下でさらに説明するように、コンテキストハブに関連付けられたリンクの単一の入力選択で、複数のウェブアクセス可能なソースに関連付けられた複数のタブを開くことができる。
【0067】
ウィンドウ内でタブを編成することに加えて、コンテキストハブシステム116は、コンテキストハブに対応するコンテキストハブ管理グラフィカルユーザインタフェースを介して、選択可能なリンクを提供することができ、ここで、リンクは、他のコンテキストハブを参照する。コンテキストハブ管理グラフィカルユーザインタフェースは、ユーザがコンテキストハブ間を容易にナビゲートし、コンテンツ(例えば、タブ)を1つのコンテキストハブから別のコンテキストハブに移動することを可能にすることができる。図3A図3Fおよび以下の説明は、上述の特徴および機能に従った、コンテキストハブ管理グラフィカルユーザインタフェースおよび特徴の様々な例示的な実施形態を示す。
【0068】
1つ以上の実施形態では、コンテキストハブシステム116は、クライアントデバイスにグラフィカルユーザインタフェースを、そこにインストールされたクライアントアプリケーションを介して提供することができる。例えば、図3Aは、画面302を介してコンテキストハブ管理グラフィカルユーザインタフェース304を表示するクライアントデバイス300を示す。コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース304の一部として、様々な表示領域および表示要素を提供する。1つ以上の実施形態では、コンテキストハブ管理グラフィカルユーザインタフェース304は、コンテキストハブ308内にタブ306a~306dを含む。さらに、コンテキストハブ管理グラフィカルユーザインタフェース304は、コンテキストハブ要素320a~320bを表示するコンテキストハブメニュー314と、タブ要素338a~338dを表示するタブメニュー340とを含む。
【0069】
少なくとも1つの実施形態では、図3Aに示すように、コンテキストハブシステム116は、ウェブブラウザ内の拡張として動作することができる。本明細書で使用するとき、用語「拡張(エクステンション)」は、サードパーティによって提供され且つウェブブラウザのユーザインタフェースに統合することができるアドオンソフトウェアモジュールなどの、ウェブブラウザに適用されるソフトウェアモジュールを指す。特に、拡張は、ウェブブラウザに容量または機能を追加するソフトウェアアプリケーションを含むことができる。さらに、拡張は、拡張の独自のAPIとともに、ウェブブラウザを介して利用可能なアプリケーションプログラムインタフェース(API)の機能にアクセスすることができる。図3Aは、ウェブブラウザの拡張内で動作するコンテキストハブシステム116を示すが、コンテキストハブシステム116はまた、ウェブブラウザアプリケーションの一部であってもよく、または別のネイティブアプリケーション(たとえば、コンテンツ管理システムアプリケーション)の一部であってもよく、またはその拡張であってもよい。
【0070】
コンテキストハブシステム116は、様々なユーザインタラクションを検出することに基づいて、表示のためのコンテキストハブ管理グラフィカルユーザインタフェース304を提供することができる。たとえば、図3Aに示すように、コンテキストハブシステム116は、コンテキストハブマネージャアイコン342のユーザ選択の検出に基づいて、コンテキストハブ管理グラフィカルユーザインタフェース304を表示することができる。例えば、コンテキストハブマネージャアイコン342は、拡張アイコンを含む。加えて、または代替として、コンテキストハブシステム116は、ウィンドウ内で新しいウェブ閲覧タブを開くことの一部として、コンテキストハブ管理グラフィカルユーザインタフェース304を提示することができる。例えば、図3Aに示されるように、コンテキストハブシステム116は、コンテキストハブ308内でタブ306dを開くことの一部として、画面302内にコンテキストハブ管理グラフィカルユーザインタフェース304を自動的に提示する。たとえば、クライアントデバイス300は、新しいタブまたはブラウザウィンドウを開くことの一部として、コンテキストハブ管理グラフィカルユーザインタフェース304を提示し得る。
【0071】
図3Aは、タブ306d内のコンテキストハブ管理グラフィカルユーザインタフェース304の構成要素を示すが、コンテキストハブシステム116は、他のグラフィカル要素内のコンテキストハブ管理グラフィカルユーザインタフェース304の構成要素を提供することができる。たとえば、コンテキストハブシステム116は、別個のウィンドウ、サイドナビゲーションバー、トレイ、タスクバー、または他の要素内にコンテキストハブ管理グラフィカルユーザインタフェース304の構成要素を提示することができる。
【0072】
概して、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース304を介して、それらのコンテキストハブ内の既存のコンテキストハブおよびタブの概要を提供する。コンテキストハブ管理グラフィカルユーザインタフェース304は、ユーザがタブおよびコンテキストハブを効率的にナビゲートおよび管理することができる中央ユーザインタフェースとして動作する。たとえば、図3Aに示すように、コンテキストハブ管理グラフィカルユーザインタフェース304は、コンテキストハブ要素320a~320bを表示するコンテキストハブメニュー314と、コンテキストハブラベル322に関連付けられたタブ要素338a~338d(たとえば、旅行(トラベル)のためのコンテキストハブ)を表示するタブメニュー340とを含む。図3Aには示されていないが、コンテキストハブシステム116はまた、コンテキストハブ要素320a~320bのためのリンクの下のサブリンクとして、コンテキストハブメニュー314内のコンテキストハブ要素320a~320bに対応するタブをリストし得る。
【0073】
上述のように、コンテキストハブシステム116は、コンテキストハブをウェブブラウザウィンドウに関連付けることができる。いくつかの実施形態では、例えば、コンテキストハブシステム116は、コンテキストハブ要素320a~320bの各々を別個のウィンドウに関連付ける。さらに、コンテキストハブシステム116は、アクティブコンテキストハブを示すことができる。図3Aに示すように、コンテキストハブシステム116は、ユーザが現在どのコンテキストハブを動作しているかを示すアクティブコンテキストハブアイコン348を提示することができる。例えば、コンテキストハブシステム116は、ユーザが、コンテキストハブ要素320aに関連付けられたコンテキストハブ308内で現在動作していることを示すために、アクティブコンテキストハブアイコン348を表示する。したがって、ウェブ検索要素310内の検索またはURLのユーザ入力に基づいて、コンテキストハブシステム116は、対応する新しい検索またはURLを有するタブを、アクティブコンテキストハブに追加する(すなわち、コンテキストハブ要素320aに関連付けられる)だろう。さらに、コンテキストハブシステム116は、タブ306a~306cのユーザ選択および移動の検出に基づいて、コンテキストハブ要素320aに関連付けられたコンテキストハブ308内にタブ306a~306cを編成することができる。
【0074】
上述のように、コンテキストハブシステム116は、特定のコンテキストハブ内に、タブ管理を容易にするための他のコンテキストハブへの参照を含めることができる。概して、コンテキストハブシステム116は、アクティブコンテキストハブ内の第2のコンテキストハブのタブへの参照を表示し、それを管理することができる。図3Aに示すように、コンテキストハブシステム116は、コンテキストハブメニュー314内にコンテキストハブ要素320a~320bを提示する。コンテキストハブシステム116は、コンテキストハブ要素320a~320bとのユーザインタラクションに基づいて、コンテキストハブ要素320a~320bのいずれかに関する詳細を提供するために、タブメニュー340に表示される情報を更新することができる。例えば、図3Aに示すように、コンテキストハブシステム116は、「旅行(トラベル)(Travel)」に対応するコンテキストハブ要素320bのユーザ選択を検出する。したがって、コンテキストハブ308は、「ニュース(News)」に関するコンテキストハブ要素320aに関連付けられているが、コンテキストハブシステム116は、タブ要素338a~338dおよび(コンテキストハブラベル322により示されるような)「旅行(トラベル)(Travel)」に関するコンテキストハブに関連付けられた情報をタブメニュー340内に提示する。
【0075】
上述のように、コンテキストハブ管理グラフィカルユーザインタフェース304は、コンテキストハブ間のナビゲーションを可能にするいくつかの要素を提供する。図3Aに示すように、コンテキストハブシステム116は、コンテキストハブおよびその構成要素タブ(コンポーネントタブ)に関連付けられたウィンドウを表示することによって、コンテキストハブをアクティブ化することができる。コンテキストハブシステム116は、特定のコンテキストハブをアクティブ化するための要素の選択を検出すること、および/または構成要素タブをアクティブ化することに基づいて、コンテキストハブをアクティブ化する。たとえば、コンテキストハブリンク328および/またはコンテキストハブリンク350のユーザ選択を検出することに基づいて、コンテキストハブシステム116は、(コンテキストハブ要素320bに関連付けられた))「旅行(トラベル)(Travel)」コンテキストハブをアクティブ化することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、クライアントデバイス300の画面302上でコンテキストハブラベル322に関連付けられたウィンドウを表示するか、またはそうでなければアクティブ化することによって、)「旅行(トラベル)(Travel)」コンテキストハブをアクティブ化する。さらに、コンテキストハブシステム116は、タブリンク352のユーザ選択を検出することに基づいて、)「旅行(トラベル)(Travel)」コンテキストハブをアクティブ化する。例えば、タブリンク352の選択に基づいて、コンテキストハブシステム116は、対応するコンテキストハブウィンドウ内のタブ要素338aにリンクされたコンテンツを表示する。1つ以上の実施形態では、コンテキストハブシステム116は、コンテキストハブ要素320a~320cの2次選択に基づいてコンテキストハブをアクティブ化する。例えば、ユーザがコンテキストハブ要素320a~320cの1つをダブルクリックしたことを検出することに基づいて、コンテキストハブシステム116は、対応するコンテキストハブをアクティブ化する。
【0076】
コンテキストハブ管理グラフィカルユーザインタフェース304はまた、コンテキストハブ内のタブ間のナビゲーションを可能にする要素を含む。概して、コンテキストハブ管理グラフィカルユーザインタフェース304は、アクティブウィンドウおよび非アクティブウィンドウの両方のタブ間をナビゲートするための要素を含む。例えば、図3Aに示すように、コンテキストハブシステム116は、タブ306a~306dのユーザ選択の検出に基づいて、コンテキストハブ308のタブ306a~306dに関連付けられたコンテンツを表面化する。さらに、コンテキストハブシステム116は、タブ要素338a~338dの選択を検出することに基づいて、タブ要素338a~338dに関連付けられたコンテンツをアクティブ化または表面化する。例えば、ユーザは、タブ要素338a~338dをダブルクリックし、および/またはタブリンク352を選択することができる。図3Aに示すように、コンテキストハブシステム116は、ユーザポインタがタブ要素338aの上にホバリングしていることを検出することに基づいて、タブリンク352を表示する。1つ以上の実施形態では、コンテキストハブシステム116は、タブ要素338a~338dの各々について永続的なタブリンクを表示する。
【0077】
さらに、コンテキストハブ管理グラフィカルユーザインタフェース304は、コンテキストハブ内のタブをナビゲートし、編成し、管理するための要素を含む。図3Aに示すように、タブメニュー340は、コンテキストハブラベル322によって表されるコンテキストハブに固有(特有)の情報を含む。例えば、タブメニュー340は、コンテキストハブラベル322、タブ要素338a~338d、コンテキストハブディスクリプション324、オープンタブ要素332、および最近閉じたタブ要素336を表示する。概して、コンテキストハブディスクリプション324は、コンテキストハブラベル322にリンクされたコンテキストハブ内のソースおよび/またはコンテンツを説明する簡潔なサマリを含む。図示のように、オープンタブ要素332または最近閉じたタブ要素336のユーザ選択に基づいて、コンテキストハブシステム116は、それぞれ、コンテキストハブラベル322に関連付けられた現在開いているタブまたは最近閉じたタブを提示することができる。
【0078】
コンテキストハブシステム116は、コンテキストハブ内のタブの編成を容易にする。特に、コンテキストハブシステム116は、ハブ内のタブを並べ替え、タブを異なるコンテキストハブに移動させ、タブを新しいコンテキストハブに移動させ、新しいタブをハブに追加し、ハブからタブを削除し、タブの名前または他のプロパティを編集し、他の動作を実行することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、コンテキストハブのウィンドウ内に表示されるタブを並べ替える。図3Aに示すように、コンテキストハブシステム116は、タブ306a~306dを並べ替えることができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、ユーザがタブ306a~306dのうちの1つを選択し、それを元の位置から新しい位置にドラッグしたことを検出することに基づいて、タブ306a~306dを並べ替える。さらに、コンテキストハブシステム116は、ユーザがタブ要素338a~338dのうちの1つを選択し、元の最初の位置から新しい位置にドラッグしたことを検出することに基づいて、タブ306a~306dを並べ替えることができる。例えば、ユーザはタブ要素338cを選択し、それをタブ要素338aの上の新しい位置にドラッグすることができる。これに応答して、コンテキストハブシステム116は、タブメニュー340内のタブ要素338a~338dを並べ替えて、まずタブ要素338cを表示する。したがって、コンテキストハブシステム116がコンテキストハブラベル322に関連付けられたコンテキストハブをアクティブ化するとき、タブ要素338cに関連付けられたタブは、更新されたウィンドウ内のタブ要素338aに関連付けられたタブの前に現れる。
【0079】
加えて、上述のように、コンテキストハブシステム116は、タブを異なるコンテキストハブに効率的に移動させることができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、ドラッグアンドドロップジェスチャに基づいて、タブを異なるコンテキストハブに移動させる。例えば、ユーザは、タブ306a~306dおよび/またはタブ要素338a~338dの何れかを選択し、任意のコンテキストハブにドラッグすることができる。図3Aに示すように、コンテキストハブシステム116は、ユーザがコンテキストハブ要素320a~320bのいずれか1つにタブをドラッグアンドドロップしたことを検出することに基づいて、タブをコンテキストハブ要素320a~320bのいずれかに移動させることができる。たとえば、ユーザは、タブ306cを選択し、タブ306cをコンテキストハブ要素320bの周りの領域にドラッグし、その領域内にタブ306cをドロップすることができる。このユーザのドラッグアンドドロップに基づいて、コンテキストハブシステムは、タブ306cを、コンテキストハブ308に関連付けられたコンテキストハブから、コンテキストハブ要素320bによって表されるコンテキストハブに移動させる。加えて、または代替として、コンテキストハブシステム116は、選択されたタブのタブメニュー340の領域へのユーザドラッグアンドドロップジェスチャを検出することによって、コンテキストハブ要素320bに対応するコンテキストハブにタブ306a~306dのいずれかを移動させることができる。
【0080】
さらに、コンテキストハブシステム116は、ユーザがタグを選択し、ドラッグし、別のコンテキストハブにドロップしたことを検出することによって、タブメニュー340内にリストされたタブを別のコンテキストハブに移動することができる。たとえば、図3Aに示すように、ユーザは、タブ要素338a~338dのうちの1つをコンテキストハブ要素320aの周りの領域にドラッグすることによって、タブ要素338a~338dによって表されるタブのいずれかをコンテキストハブ308に移動させることができる。加えて、または代替的に、ユーザは、タブ要素338a~338dのうちの1つを、タブ306a~306dの前、間、または後ろの領域にドラッグすることができる。したがって、コンテキストハブシステム116は、直感的なユーザ選択およびジェスチャに基づいて、ウィンドウ内のタブを再編成することができる。
【0081】
上述のように、コンテキストハブシステム116は、既存のタブを使用して新しいコンテキストハブを作成することができる。例えば、図3Aは、コンテキストハブ管理グラフィカルユーザインタフェース304内の新しいコンテキストハブ要素316を示す。ユーザは、タブ306a~306dおよび/またはタブ要素338a~338dのいずれかを選択することができる。ユーザが選択されたタブをドラッグし、選択されたタブを新しいコンテキストハブ要素316の周りの領域上または領域内にドロップしたことを検出することに基づいて、コンテキストハブシステム116は、選択されたタブを新しいコンテキストハブに追加する。さらに、図3Bに関して以下でより詳細に説明するように、コンテキストハブシステム116は、新しいコンテキストハブ要素316のユーザ選択に基づいて、新しい空(カラ)の(すなわち、既存のタブを含まない)コンテキストハブを作成することもできる。
【0082】
コンテキストハブシステム116はまた、1つ以上のコンテキストハブ内で検索を実行するための要素および特徴を提供する。例えば、図3Aに示すように、コンテキストハブシステム116は、コンテキストハブ検索要素312を提示する。図3Fおよび以下の対応する議論は、コンテキストハブ検索要素312に関するさらなる詳細を提供する。
【0083】
図3Aおよび対応する議論は、コンテキストハブ管理グラフィカルユーザインタフェース304内の様々な要素および特徴の概要を提供する。図3B図3Fおよびそれに伴う開示は、図3Aに関して言及された特定の要素および当該要素の特徴に関する追加の詳細を提供する。たとえば、図3Aに示すように、コンテキストハブ管理グラフィカルユーザインタフェース304は、新しいコンテキストハブを作成および開くための様々な要素を含む。例えば、コンテキストハブ管理グラフィカルユーザインタフェース304は、新しいコンテキストハブ要素316を含む。新しいコンテキストハブ要素316とのユーザインタラクションを検出することに基づいて、コンテキストハブシステム116は、図3Bに示すような要素を表示するために、コンテキストハブ管理グラフィカルユーザインタフェース304を更新する。
【0084】
図3Bは、新しいコンテキストハブ内の新しいタブの生成に対応する例示的なコンテキストハブ管理グラフィカルユーザインタフェース304を示す。特に、図3Bは、クライアントデバイス300の画面302上のコンテキストハブ管理グラフィカルユーザインタフェース304を示す。より詳細には、コンテキストハブ管理グラフィカルユーザインタフェース304は、タブ354を含むコンテキストハブ360を表示する。さらに図示されるように、コンテキストハブシステム116は、コンテキストハブ360およびコンテキストハブ要素358に対応するコンテキストハブ要素320dを含むようにコンテキストハブメニュー314を更新する。
【0085】
図3Aは、タブメニュー340がアクティブウィンドウ(すなわち、「ニュース(News)」に関する)とは異なるコンテキストハブ(すなわち、「旅行(トラベル)(Travel)」に関する)に関する情報を表示した例示的なグラフィカルユーザインタフェースを示している。対照的に、図3Bは、タブメニュー340が、例えば、タブ354を含むコンテキストハブ360に関する情報を表示する、コンテキストハブ管理グラフィカルユーザインタフェース304を示す。図3Bに示すように、コンテキストハブシステム116は、コンテキストハブ360が、アクティブウィンドウインジケータ356を提示することによってタブメニュー340内に表示されるコンテキストハブインジケータ358に対応することを示す。例えば、コンテキストハブ360内に表示されたタブ354は、タブメニュー340内にリストされたタブ要素361に対応する。
【0086】
図3Bに示すように、コンテキストハブ管理グラフィカルユーザインタフェース304は、ユーザがコンテキストハブにタブを追加することができる様々な要素を提供する。例えば、(コンテキストハブ要素358に関連付けられた)コンテキストハブ360にタブを追加するために、ユーザは、新しいタブ要素362を選択することができる。さらに、図3Bには示されていないが、コンテキストハブシステム116は、タブメニュー340内にリストされた新しいタブ要素を表示することができる。例えば、コンテキストハブシステム116は、タブ要素361の下に新しいタブ要素を含むことができる。
【0087】
コンテキストハブシステム116は、コンテキストハブ、コンテキストハブディスクリプション、およびタブの名前を変更することによって、コンテキストハブおよびタブのカスタマイズを可能にする。図3Bにさらに示されるように、コンテキストハブシステム116は、コンテキストハブ要素358およびコンテキストハブディスクリプション324のユーザ選択に基づいて、コンテキストハブ要素358および/またはコンテキストハブディスクリプション324内に表示されるコンテキストハブ360のコンテキストハブラベル359を変更することができる。少なくとも1つの実施形態では、コンテキストハブ要素358のコンテキストハブラベル359は、対話型インタフェース要素を含む。ユーザは、コンテキストハブラベル359を選択し、コンテキストハブ要素358に所望のラベルを入力することができる。同様に、ユーザは、コンテキストハブディスクリプション324を選択および編集することができる。少なくとも1つの実施形態では、タブメニュー340内にリストされたタブはまた、選択されると、ユーザがタブの名前を更新することを可能にする選択可能要素を含む。1つ以上の実施形態では、コンテキストハブシステム116は、コンテキストハブメニュー314内にリストされたコンテキストハブ320a~320dとのユーザインタラクションに基づいて、コンテキストハブの名前を更新する。
【0088】
図3Bに示すように、コンテキストハブシステム116は、ユーザ入力に基づいて、コンテキストハブ、説明(ディスクリプション)、およびタブ、の名前およびラベルを更新することができるが、コンテキストハブシステム116は、たとえば、タブのコンテンツに基づいて、コンテキストハブ、コンテキストハブディスクリプション、およびタブの予測ラベルを生成することができる。図3Cは、予測コンテキストハブラベル364、予測コンテキストハブディスクリプション366、および予測タブラベル372a~372cを含むコンテキストハブ管理グラフィカルユーザインタフェース304を示す。さらに示されるように、図3Cに示されるコンテキストハブ360は、タブ370a~370dを表示する。
【0089】
図3Cに示すように、コンテキストハブシステム116は、コンテキストハブのソースおよびコンテンツに関連付けられたコンテキストデータに基づいて、予測コンテキストハブラベル364を生成することができる。特に、コンテキストハブシステム116は、コンテキストハブ内のタブのコンテンツに基づいて予測コンテキストハブラベル364を生成するために命名アルゴリズムを利用することができる。例えば、コンテキストハブシステム116は、コンテキストハブシステム116がコンテキストハブにタブを追加することにつれて、コンテキストデータの収集を開始する。図示のように、コンテキストハブシステム116は、タブ368a~368cをコンテキストハブ360に追加する。コンテキストハブシステム116は、タブ368a~368c内のドメイン名またはコンテンツに基づいて、予測コンテキストハブラベル364を決定することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、タブ368a~368dに関連付けられた実際のコンテンツを解析して、コンテキストハブラベル364を予測する。例えば、コンテキストハブシステム116は、サードパーティソースからのURLアドレス、テキスト、画像、および他のデータから特徴ベクトルを抽出することができる。コンテキストハブシステム116は、サードパーティソースからの特徴ベクトルを比較して共通のテーマを識別することができ、コンテキストハブシステム116は、共通のテーマに基づいてコンテキストハブラベル364を生成することができる。
【0090】
いくつかの実施形態では、予測コンテキストハブラベル364を絶えず変更および更新する代わりに、コンテキストハブシステム116は、予測コンテキストハブラベル364を生成し、予測コンテキストハブラベル364をフィックス(固定)する。一実施形態では、コンテキストハブシステム116は、コンテキストハブに関連付けられた1つ以上のタブからのコンテンツを解析することに基づいて、予測コンテキストハブラベル364をフィックス(固定)する。例えば、コンテキストハブシステム116は、コンテキストハブ内で開かれた最初の3つのタブに基づいて、固定ラベル「レシピ(Recipes)」を決定することができる。
【0091】
さらに、いくつかの実施形態では、コンテキストハブシステム116は、コンテキストハブシステム116が新しいタブを追加するときに、コンテキストハブラベル364を更新するための提案を自動的に更新または提供する。たとえば、コンテキストハブに、閾値数の新しい無関係または接点なく関連付けられたタブを追加することに基づいて、または1つ以上の以前に関連付けられたタブを除去することに基づいて、コンテキストハブシステム116は、予測コンテキストハブラベル364を自動的に更新し、かつ/または更新されたラベルを提案する通知を提供することができる。例えば、コンテキストハブシステム116は、サードパーティコンテンツの更新されたセットからの更新された特徴ベクトルを、サードパーティコンテンツの元のセットから作成された以前の特徴ベクトルと比較することによって、現在のコンテキストハブラベルがもはや正確ではないタブを追加または除去することのいずれかに基づいて決定することができる。更新された特徴ベクトルが、以前の特徴ベクトルとは設定された閾値量だけ異なる場合、コンテキストハブシステム116は、新しいハブラベルを生成し、および/またはラベルを変更するための通知を提供することができる。1つ以上の実施形態では、コンテキストハブシステム116は、タブが除去または追加されると、コンテキストハブラベル364を自動的に更新するための設定を提供することができ、それにより、ユーザは、固定コンテキストハブラベルを作成するか、またはコンテキストハブ内のコンテンツが経時的に発展することにつれて、システムにラベルを更新させるかのいずれかを行うために、設定と対話することができる。
【0092】
少なくとも1つの実施形態では、図3Cに示すように、コンテキストハブシステム116は、予測タブラベル372a~372cを生成する。概して、予測タブラベル372a~372cは、タブ368a~368cによってリンクされたコンテンツを示す。コンテキストハブシステム116は、タブ368a~368c内に予測タブラベル372a~372cを提示する。コンテキストハブシステム116は、リンクされたウェブページまたはサードパーティソースのURLまたはコンテンツからタイトルを抽出することによって、予測タブラベル372a~372cを生成することができる。いくつかの実施形態では、コンテキストハブシステム116は、予測タブラベル372a~372cとしてサードパーティソースアドレスを単に使用する。さらに、1つ以上の実施形態では、コンテキストハブシステム116は、特定のタブにリンクされたコンテンツを、コンテキストハブ内の他のタブによってリンクされたコンテンツと比較することによって、予測タブラベルを生成する。コンテンツを比較することに基づいて、コンテキストハブシステム116は、特定のタブに固有のコンテンツおよび/またはトピックを識別し、固有のコンテンツおよび/またはトピックに基づいて予測タブ名を生成し得る。
【0093】
コンテキストハブシステム116はまた、コンテキストハブを閉じるためのグラフィカルユーザインタフェース要素を提示する。より具体的には、コンテキストハブシステム116は、アクティブおよび非アクティブのコンテキストハブの両方を閉じるための要素を提供する。図3Cに示されるように、コンテキストハブ管理グラフィカルユーザインタフェース304はまた、ユーザがアクティブコンテキストハブを閉じることができる、クローズウィンドウ要素374およびクローズハブ要素330を含む。クローズウィンドウ要素374のユーザ選択の検出に基づいて、コンテキストハブシステム116は、アクティブコンテキストハブアイコンによって示される現在アクティブなウィンドウまたはコンテキストハブを閉じる。同様に、クローズハブ要素330のユーザ選択の検出に基づいて、コンテキストハブシステム116は、タブメニュー340内に提示されたコンテキストハブを閉じる。図3Cに示すように、コンテキストハブシステム116は、クローズウィンドウ要素374またはクローズハブ要素330のいずれかの選択検出に基づいて、「レシピ(Recipies)」と題されるコンテキストハブを閉じる。
【0094】
上述のように、コンテキストハブシステム116は、非アクティブなコンテキストハブを閉じることができる。図3Cに示すように、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース304を介して、クローズコンテキストハブ要素371およびクローズハブ要素330を提示する。コンテキストハブシステム116は、コンテキストハブメニュー314に表示されるコンテキストハブ要素320a~320dのいずれかの隣に、クローズコンテキストハブ要素371を表示することができる。図3Cに示すように、コンテキストハブシステム116は、ユーザのカーソルがコンテキストハブ要素320aの上にホバリングしていることを検出することに基づいて、クローズコンテキストハブ要素371を提示する。クローズコンテキストハブ要素371の選択の検出に基づいて、コンテキストハブシステム116は、コンテキストハブ要素320aに対応するコンテキストハブ308を閉じる。図3Cには示されていないが、コンテキストハブシステム116は、クローズハブ要素330のユーザ選択を検出することに基づいて、非アクティブコンテキストハブを閉じることができる。例えば、コンテキストハブシステム116は、タブメニュー340内の非アクティブコンテキストハブに対応するデータを提示することができる。提示された非アクティブコンテキストハブに関連付けられたクローズハブ要素330の選択の検出に基づいて、コンテキストハブシステム116は、コンテキストハブのウィンドウを閉じる。
【0095】
コンテキストハブシステム116は、クライアントデバイスを介して表示するために、クローズドコンテキストハブを記憶し、提示することができる。コンテキストハブシステム116は、クローズドコンテキストハブへのアクセスを提供し、クローズドコンテキストハブに対する動作(たとえば、検索)を実行することができる。図3Dは、「レシピ(Recipes)」コンテキストハブを閉じることに基づく、更新されたコンテキストハブ管理グラフィカルユーザインタフェース304を示す。例えば、図3Dに示すように、コンテキストハブ管理グラフィカルユーザインタフェース304は、コンテキストハブメニュー314内に、オープンコンテキストハブ要素318およびクローズドコンテキストハブ要素380を提示する。オープンコンテキストハブ要素318は、別々のウィンドウに対応するコンテキストハブをリストするが、クローズドコンテキストハブ要素380は、クローズドコンテキストハブをリストする。例えば、クローズドコンテキストハブ要素380は、閉じた「レシピ」コンテキストハブに対応するクローズドコンテキストハブ要素378をリストする。
【0096】
コンテキストハブシステム116は、クローズドコンテキストハブを再び開くまたは再アクティブ化することができる。図3Dに示すように、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース304内に、クローズドハブリンク377を提示する。クローズドハブリンク377のユーザ選択の検出に基づいて、コンテキストハブシステム116は、新しいウィンドウ内でクローズドコンテキストハブ要素378を再び開き、クローズドコンテキストハブ要素378を表示し、コンテキストハブに関連付けられたタブを投入することによって、クローズドコンテキストハブ要素378をアクティブ化する。したがって、クローズドハブリンク377の単一の選択を受信することに基づいて、コンテキストハブリンクシステム116は、コンテキストハブ要素378に関連するすべてのサードパーティソースコンテンツをユーザに提供し、ユーザが、サードパーティソースの編成されたセットを検索、閲覧、アクセス、および閲覧することを可能にする。
【0097】
さらに、コンテキストハブシステム116は、クローズドコンテキストハブを削除することができる。図3Dに示すように、コンテキストハブシステム116は、削除ハブ要素379bを提示する。削除ハブ要素379bのユーザ選択の検出に基づいて、コンテキストハブシステム116は、コンテキストハブ要素378に対応するクローズドコンテキストハブを削除する。
【0098】
図3Dは、クローズドコンテキストハブを削除するためのグラフィカルユーザインタフェース要素および特徴を示すことに加えて、オープンコンテキストハブを削除するための要素および特徴も示す。コンテキストハブシステム116は、非アクティブおよびアクティブコンテキストハブの両方を削除することができる。たとえば、図3Dに示すように、コンテキストハブ管理グラフィカルユーザインタフェース304は、コンテキストハブ要素320aに対応する非アクティブコンテキストハブを削除するための削除ハブ要素379aを含むことができる。コンテキストハブシステム116は、ユーザカーソルがコンテキストハブ要素320aの領域の上にホバリングしていることを検出することに基づいて、コンテキストハブリンク350とともに削除ハブ要素379aを提示することができる。コンテキストハブシステム116は、コンテキストハブ要素320b~320cとともに同様の削除ハブ要素(永続的または一時的)を提示することができる。
【0099】
図3Dはまた、コンテキストハブ管理グラフィカルユーザインタフェース304のタブメニュー340内の削除ハブ要素382を示す。例えば、少なくとも1つの実施形態では、追加オプション要素326のユーザ選択の検出に基づいて、コンテキストハブシステム116は、選択タブ要素376および削除ハブ要素382を提示する。検出された削除ハブ要素382のユーザ選択に基づいて、コンテキストハブシステム116は、タブメニュー340内に表示されたコンテキストハブ(すなわち、「旅行(トラベル)(Travel)」コンテキストハブ)を削除する。
【0100】
コンテキストハブシステム116は、コンテキストハブ内のタブ上で動作を実行することができる。例えば、図3Dに示される選択タブ要素376の選択の検出に基づいて、コンテキストハブシステム116は、タブメニュー340内に表示される複数のタブの選択を開始することができる。さらに、コンテキストハブシステム116は、1つ以上の選択されたタブ上で動作を実行するための要素を提示する。図3Eおよび対応する説明は、コンテキストハブシステム116がコンテキストハブ内の1つ以上のタブ上で実行することができる動作の例を提供する。
【0101】
選択タブ要素376(図3Dに示す)の選択および1つ以上のタブの選択の検出に応答して、コンテキストハブシステム116は、選択された1つ以上のタブに対して動作を実行するためのオプションを提示する。図3Eに示すように、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース304内に、クローズタブ要素390、移動タブ要素392、およびエンド選択要素394を提示する。さらに、図3Eは、タブ要素386a~386dに対応するタブ384a~384dを示す。
【0102】
コンテキストハブシステム116は、1つ以上のタブの選択を示す。たとえば、図3Eに示すように、コンテキストハブシステム116は、タブ要素386aおよび386cの色を修正することによって、タブ要素386aおよび386cのユーザ選択を示す。他の実施形態では、コンテキストハブシステム116は、選択されたタブの隣にチェックマークを表示することなどによって、異なるインタフェース要素を使用してユーザ選択を示す。さらに、コンテキストハブシステム116は、タブ384a~384dを介して複数のタブ選択を示す。例えば、図3Eに示されるように、コンテキストハブシステム116は、タブ384a(選択されたタブ要素386aに対応する)およびタブ384c(選択されたタブ386cに対応する)の色を変更する。
【0103】
コンテキストハブシステム116は、複数の選択されたタブを異なるコンテキストハブに同時に移動することができる。たとえば、図3Eに示すように、ユーザは選択されたタブ(たとえば、タブ要素386aおよび386c、および/または、タブ384aおよび384c)を、コンテキストハブ要素320a~320bまたはクローズドコンテキストハブ要素378の周囲の領域上またはその領域にドラッグすることができる。加えて、または代替として、コンテキストハブシステムは、移動タブ要素392とのユーザインタラクションに基づいて、選択されたタブを異なるコンテキストハブに移動することができる。例えば、ユーザが移動タブ要素392を選択した、またはそうでなければそれと対話した(例えば、その上にホバリングした)ことを検出することに基づいて、コンテキストハブシステム116は、移動タブメニュー393を提示する。移動タブメニュー393は、コンテキストハブシステム116が選択されたタブを移動することができるコンテキストハブを提示する。図3Eに示すように、移動タブメニュー393は、コンテキストハブ要素396a(コンテキストハブ要素320aに対応する)および396b(コンテキストハブ要素320cに対応する)を含む。コンテキストハブ要素396a~396bのいずれかのユーザ選択を検出することに基づいて、コンテキストハブシステム116は、選択されたタブ(384aおよび384c)を対応するコンテキストハブに移動させる。
【0104】
コンテキストハブシステム116は、選択された複数のタブを使用して新しいコンテキストハブを作成することもできる。たとえば、図3Eに示すように、コンテキストハブシステム116は、ユーザが選択された複数のタブを新しいコンテキストハブ要素316にまたはその周りにドラッグアンドドロップしたことを検出することに基づいて、タブ要素386aおよび386cを使用して新しいコンテキストハブを作成する。加えて、または代替として、コンテキストハブシステム116は、移動タブメニュー393内の新しいハブ要素398のユーザ選択に基づいて、選択された複数のタブを使用して新しいコンテキストハブを作成する。
【0105】
図3Eにさらに示されるように、コンテキストハブシステム116は、エンド選択要素394のユーザ選択に基づいて、選択された複数のタブに関連する動作を選択解除するか、またはそうでなければ完了することができる。さらに、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース304内のブランクスペースのユーザ選択を検出することによって、選択された複数のタブを選択解除することができる。
【0106】
図3Aに関して前述したように、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース304内にコンテキストハブ検索要素312を提示する。コンテキストハブシステム116は、コンテキストハブ内にタブのインデックスを作成する。コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース304を介して、タブのインデックスを検索するための要素を提供する。図3Fは、入力検索語を有するコンテキストハブ検索要素312を含むコンテキストハブ管理グラフィカルユーザインタフェース304を示す。例えば、図3Fは、結果タイトル381、結果位置383、結果起点385、および結果日付387を示す予測結果391を含む、コンテキストハブ管理グラフィカルユーザインタフェース304を示す。
【0107】
図3Fに示すように、コンテキストハブシステム116は、コンテキストハブ検索要素312内で検索語389を受信している。コンテキストハブシステム116は、検索語389に関連するタブについてコンテキストハブインデックスを検索する。コンテキストハブシステム116は、検索語389に関連するタブを識別し、予測結果391内の識別されたタブおよび識別されたタブの対応する位置を提示することができる。図3Fに示すように、コンテキストハブシステム116は、予測結果391内に識別されたタブラベル375a~375bを提示する。コンテキストハブシステム116は、予測結果391内に、任意のおよびすべての潜在的な結果を提示することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、予測結果391内に特定の個数の識別されたタブをリストし、特定の個数の最も関連するタブを提示する。
【0108】
コンテキストハブシステム116は、予測結果391に関連する情報を提示して、関連するタブデータを提供し、所望のタブの選択を容易にする。図3Fに示すように、コンテキストハブシステム116は、結果タイトル381を提示する。少なくとも1つの実施形態では、結果タイトル381は、タブ名またはラベルに対応する。例えば、結果タイトル381は、識別されたタブに対応するユーザ定義または予測ラベルを含むことができる。結果タイトル381の選択に基づいて、コンテキストハブシステム116は、識別されたタブラベル375a~375bをアルファベット順序または逆アルファベット順序に並べ替える。さらに、少なくとも1つの実施形態では、コンテキストハブシステム116は、タブタイトルまたはラベルの関連性に基づいて、識別されたタブラベル375a~375bをリストする。
【0109】
コンテキストハブシステム116はまた、予測結果391内に、識別されたタブの位置を提示することができる。図3Fに示すように、コンテキストハブシステムは、結果位置383を提示する。少なくとも1つの実施形態では、結果位置383は、識別されたタブが位置するコンテキストハブを反映する。例えば、図3Fに示すように、識別されたタブラベル375a~375bの両方は、ワークエッセンシャルコンテキストハブ内に位置する。結果位置383のユーザ選択に基づいて、コンテキストハブシステム116は、コンテキストハブによってグループ化された識別されたタブラベル375a~375bをリストすることができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、特定のコンテキストハブ内に位置する検索結果を最初にリストすることができる。例えば、コンテキストハブシステム116は、トラベルコンテキストハブがタブメニュー340内に現在表示されているので、トラベルコンテキストハブ内に最初に位置する識別されたタブをリストすることができる。図示されていないが、コンテキストハブシステム116は、クローズドコンテキストハブ内に位置する識別されたタブを含むこともできる。
【0110】
コンテキストハブシステム116は、識別されたタブの起点(オリジン)を提示することができる。例えば、図3Fに示すように、コンテキストハブシステム116は、予測結果391内に、結果起点385を提示する。結果起点385は、対応する識別されたタブを送信または作成した共同ユーザの名前を含むことができる。例えば、図3Fに示すように、識別されたタブラベル375は、「TK」として識別された共同ユーザによって送信された。特定のユーザ識別子(例えば、識別子「TK」)のユーザ選択に基づいて、コンテキストハブシステム116は、予測結果391内に、特定のユーザによって最初に送信された識別されたタブを提示することができる。
【0111】
コンテキストハブシステム116は、日付に基づいて、予測結果391内の識別されたタブをソートすることもできる。例えば、図3Fに示されるように、コンテキストハブシステムは、識別されたタブラベル375a~375bの作成日に基づいて、識別されたタブラベル375a~375bを提示することができる。検出された結果日付387の選択に基づいて、コンテキストハブシステム116は、最新または最も古い作成日付の順序で、識別されたタブラベル375a~375bをリストすることができる。さらに、図3Fには示されていないが、コンテキストハブシステム116は、特定の日付の選択を検出することに基づいて、特定の日付に最も近いタブを最初にリストすることができる。例えば、識別されたタブラベル375aに関連付けられた日付「6月4日(Jun 4)」の選択を検出することに基づいて、コンテキストハブシステム116は、6月4日に近い順に、以下の識別されたタブをリストすることができる。
【0112】
図3Fは、コンテキストハブおよびタブのインデックスを検索するための基本的な検索機能を示すが、コンテキストハブシステム116は、コンテキストハブのインデックスのより洗練された検索を提供することもできる。たとえば、すべての利用可能なコンテキストハブにわたって広範な検索を行う代わりに、コンテキストハブシステム116は、指定されたコンテキストハブ内で検索を行うことができる。例えば、コンテキストハブシステム116は、単一のコンテキストハブ、例えば、現在アクティブなコンテキストハブを検索することができる。コンテキストハブシステム116はまた、2つ以上の特定のハブのユーザ選択に基づいて、2つ以上の特定のコンテキストハブを検索することができる。さらに、コンテキストハブシステム116は、ユーザがサードパーティウェブソース、サードパーティメッセージングソース、サードパーティコンテンツストレージソース、サードパーティカレンダーソース、または他のサードパーティソースなどの1つ以上の特定のサードパーティソースタイプ内で検索を指定することを可能にすることができる。さらに、図3Fはタブラベルまたは名前内の検索語を識別するコンテキストハブシステム116を示すが、コンテキストハブシステム116は、ソースコンテンツが検索語を含む識別されたタブを提示することもできる。さらに、コンテキストハブシステム116は、検索を関連するウェブソースに限定することができる。たとえば、コンテキストハブシステム116は、特定のウェブサイト(たとえば、youtube.com)または領域(たとえば、「.com」、「.org」、「.gov」など)からのソースコンテンツを含む、識別されたタブを提示することができる。
【0113】
いくつかの実施形態では、コンテキストハブシステム116は、更新されたコンテンツに対して検索機能を自動的に実行する。特に、検索語を受信することに基づいて、コンテキストハブシステム116は、検索を実行する前に、コンテキストハブおよび/またはすべてのコンテキストハブのコンテンツを更新する。たとえば、(たとえば、「旅行(トラベル)(Travel)」によって示される)特定のコンテキストハブを検索するための検索語389を受信することに基づいて、コンテキストハブシステム116は、特定のコンテキストハブ内のタブの各々によって参照されるコンテンツにアクセスし、それを更新する。したがって、コンテキストハブシステム116は、コンテキストハブ内から参照された最新のコンテンツに対して検索を実行する。
【0114】
他の実施形態では、コンテキストハブシステム116は、キャッシュされたまたは記憶されたコンテンツに対して検索機能を実行する。特に、コンテキストハブシステム116は、1つ以上のコンテキストハブに対応するコンテンツの最後にアクセスされたバージョンを記憶することができる。例えば、コンテキストハブシステム116は、タブがアクティブであるとき(すなわち、ユーザが現在タブ内のコンテンツを視聴しているとき)、タブのためのデータを含むキャッシュを生成し、更新する。コンテキストハブシステム116は、関連データを識別するためにキャッシュ上で検索機能を実行する。例えば、コンテキストハブシステム116は、キャッシュにアクセスし、閉じられたタブの最後にアクセスされたバージョンを検索することによって、最近閉じられたタブを検索することができる。
【0115】
図3A図3Fは、コンテキストハブシステム116がコンテキストハブ内でタブを編成するためのユーザ入力を受信することができる例示的なコンテキストハブ管理グラフィカルユーザインタフェースを提供する。前述のように、コンテキストハブシステム116はまた、ユーザ入力なしに、コンテキストハブ内のタブ上でアクションを決定し、自動的に実行し得る。図4は、コンテキストハブのタブに対して決定されたアクションを実行するコンテキストハブシステム116の一般的な概要を示す。図4は、コンテキストハブシステム116がタブに対して決定されたアクションを実行する一連の動作400を示す。特に、一連の動作400は、タブに関連付けられた使用信号を監視する動作402と、タブに関して実行すべきアクションを決定する動作404と、決定されたアクションを実行する動作406とを含む。
【0116】
一連の動作400は、タブに関連付けられた使用信号を監視する動作402を含む。一般に、コンテキストハブシステム116は、どのタブがコンテキストハブ内で開いたままであるべきか、およびどのタブがコンテキストハブから閉じられるべきか、またはそうでなければ削除されるべきかを示す信号を受信し、解析する。たとえば、コンテキストハブシステム116は、コンテキストハブからイベントレポートを受信し、視聴頻度、最後にアクセスされた時間、コンテンツのタイプ、視聴に費やされた時間、および他の信号など、イベントレポート内の信号を解析することができる。さらに、コンテキストハブシステム116は、特定のタブに関するユーザプリファレンス(嗜好)にアクセスすることができる。
【0117】
加えて、または代替として、コンテキストハブシステム116は、タブに関して実行すべきアクションを決定する際に、コンテキストハブ特徴を監視することができる。特に、コンテキストハブシステム116は、コンテキストハブ内のタブの数、コンテキストハブ内のコンテンツ、および他の特徴などのコンテキストハブ特徴を解析することができる。上述のように、コンテキストハブシステム116は、コンテキストハブ内のタブの数を解析することができる。たとえば、コンテキストハブが閾値数未満のタブを含むと決定することに基づいて、コンテキストハブシステム116は、コンテキストハブを開いた状態に保つことを決定することができる。対照的に、コンテキストハブが閾値数を超えるタブを含むと決定することに基づいて、コンテキストハブシステム116は、コンテキストハブ内のタブを自動的に閉じるか、または閉じることを提案することができる。コンテキストハブシステムは、コンテキストハブ内のコンテンツを解析することもできる。たとえば、コンテキストハブシステム116は、コンテキストハブ内のタブの関連性、またはタブ内のコンテンツが繰り返される(すなわち、ウェブページを複製する)かどうかを決定することができる。
【0118】
図4に示すように、コンテキストハブ408は、タブ410a~410dを含む。コンテキストハブシステム116は、タブ410a~410dの各々に関連付けられた使用信号を監視することができる。図4にさらに示すように、一連の動作400は、タブ410dに対して実行すべきアクションを決定する動作404を含む。概して、コンテキストハブシステム116は、タブに関連付けられた使用信号に基づいてアクションを決定する。例えば、少なくとも1つの実施形態では、コンテキストハブシステム116は、コンテキストハブ408内のタブの各々に使用スコアを割り当てる。コンテキストハブシステム116は、タブ410dの使用スコアに基づいて適切なアクションを識別することができる。例えば、図4に示すように、コンテキストハブシステム116は、閾値を下回る使用スコアに基づいてタブを閉じるアクションを決定する。アクションのさらなる例は、ユーザに、タブを閉じること、タブを異なるコンテキストハブに移動させること、またはタブを新しいコンテキストハブに移動させることを提案することを含む。図5および対応する議論は、コンテキストハブシステム116が実行すべきアクションをどのように決定するかに関するさらなる詳細を提供する。
【0119】
一連の動作400は、決定されたアクションを実行する動作406も含む。一般に、コンテキストハブシステム116は、前の動作で決定されたアクションを実行する。例えば、図4に示すように、コンテキストハブシステム116は、タブ410dを閉じるという決定されたアクションを実行する。コンテキストハブシステム116がタブ410dを閉じた後、コンテキストハブ408は、タブ410a~410cのみを含む。
【0120】
図4は、コンテキストハブシステム116がコンテキストハブ内のタブ上でアクションをどのように実行するかの広範な概略を提供するが、図5は、コンテキストハブシステム116がアクションを決定し、実行するために使用信号をどのように解析するかに関するさらなる詳細を提供する。図5は、信号を監視する動作502と、信号を解析する動作504と、アクションを決定する動作506と、アクションを実行する動作508とを含む一連の動作500を示す。
【0121】
図5の動作502に示すように、コンテキストハブシステム116は、使用信号を監視する。一般に、使用信号は、コンテキストハブ内のタブまたは関連タブに対するユーザインタラクションに関する情報を指す。コンテキストハブシステム116は、異なるタイプの使用信号を解析することができる。たとえば、図示のように、コンテキストハブシステム116は、使用信号を監視することの一部として、タブ固有信号510およびソース固有信号520を監視することができる。一般に、タブ固有信号510は、特定のタブに関する使用信号を含む。例えば、コンテキストハブシステム116は、コンテキストハブシステム116がコンテキストハブ内にタブを作成した時点から現在までのタブとのユーザインタラクションを監視する。ソース固有信号520は、タブ内でリンクされたソースに関連する。たとえば、タブが特定のウェブサイトを表すか、またはそれに関連付けられている場合、コンテキストハブシステム116は、特定のウェブサイトに関連付けられた使用信号にアクセスし、それを監視することができる。
【0122】
図示されるように、タブ固有信号510は、アクセス回数、最後にアクセスされた時間、および視聴に費やされた合計時間を含む。アクセス回数は、タブが作成されてから、ユーザが特定のタブを選択して開いた回数を指す。最後にアクセスされた時間は、ユーザが特定のタブを最後に選択して開いた時間を指す。コンテキストハブシステム116は、ユーザが特定のタブを最後に開いてから経過した時間を決定することによって、最後にアクセスされた時間を測定することができる。視聴に費やされた合計時間は、ユーザが特定のタブのコンテンツを視聴するのに費やされた時間を指す。図示されていないが、タブ固有信号510は、タブ特有(固有)の使用パターンなどの追加の信号を含むこともできる。より具体的には、コンテキストハブシステム116は、ユーザが特定のタブと対話する時刻、曜日、または月の何週間を監視することができる。
【0123】
上述のように、使用信号は、ソース固有信号520も参照する。ソース固有信号は、タブのソースに関連する使用情報を含む。図5に示すように、ソース固有信号520は、平均視聴頻度、コンテンツタイプ、視聴に費やされた時間、複製状態、コンテンツタイプ、およびユーザ定義アクションを含む。コンテキストハブシステム116は、定義された期間にわたってユーザがウェブページを訪問する回数にアクセスすることによって、平均視聴頻度を監視する。例えば、コンテキストハブシステム116は、1日、1週間、1ヶ月等の間にユーザが特定のウェブページを訪問する平均回数を決定することができる。視聴に費やされる時間は、ユーザが特定のウェブページに費やす時間を反映する。一実施形態では、コンテキストハブシステム116は、ユーザが特定のウェブページの視聴に費やした総時間を監視する。別の実施形態では、コンテキストハブシステム116は、1日、1週間、1ヶ月などの間にウェブページ上で費やされた平均時間を監視する。複製状態は、タブが、現在別のタブで開いているソースを含むかどうかを示す。例えば、コンテキストハブシステム116は、タブ内のソースのURLまたはアドレスを他のタブのURLまたはソースアドレスと比較して、同じソースを有するタブがすでに開いているかどうかを判定することができる。
【0124】
上述のように、ソース固有信号520を監視することの一部として、コンテキストハブシステム116は、コンテンツタイプを監視することができる。コンテンツタイプは一般に、ウェブページ内のコンテンツのタイプを指す。たとえば、コンテキストハブシステム116は、ウェブページがニュースソース、デジタルメッセージングソース、電子商取引ソース、または任意の他のタイプのソースであると決定するために、URLにアクセスし得る。コンテンツタイプを決定するために、コンテキストハブシステム116は、様々なウェブアドレスを所定のコンテンツタイプに関連付けるマトリクスを生成することができる。加えて、または代替として、コンテキストハブシステム116は、コンテンツタイプを監視することの一部として、ウェブページのコンテンツにアクセスすることができる。
【0125】
さらに、ソース固有信号520を監視する際にコンテンツタイプを監視することの一部として、コンテキストハブシステム116は、ウェブページのソースを監視することができる。例えば、コンテキストハブシステム116は、ウェブページが中間ウェブページであるかどうかを判定することができる。例えば、ユーザはリンクを選択することができ、コンテキストハブシステム116は、中間ウェブページを有するタブを作成することができる。中間ウェブページは、ユーザを別のウェブサイトにリダイレクトするか、またはクライアントデバイス上でアプリケーションを開くことができる。したがって、コンテキストハブシステム116は、中間ウェブページがユーザによってアクセスされる情報をほとんど含まないことを決定することができる。さらに、コンテキストハブシステム116は、タブ内のウェブページがランディングページである(たとえば、リンクのユーザ選択に応答してコンテキストハブシステム116がタブを開いた)かホームページであるかを監視することができる。
【0126】
加えて、上述のように、コンテキストハブシステム116は、ソース固有信号520を監視することの一部として、ユーザ定義アクションに基づいて使用信号を監視することができる。コンテキストハブシステム116は、クライアントデバイスから、特定のウェブページまたはウェブページのカテゴリに関連付けられたルールを受信することができる。例えば、コンテキストハブシステム116は、コンテキストハブシステム116が決して自動的に閉じない特定のウェブページをホワイトリスト化することができる。さらに、コンテキストハブシステム116は、自動的に閉じられるべきウェブページまたはウェブページタイプを指示するルールを受信することができる。
【0127】
説明したように、コンテキストハブシステム116は、タブに関連付けられた特定のウェブページまたはソースのためのソース固有信号を監視することができる。少なくとも1つの実施形態では、コンテキストハブシステム116はまた、関連するウェブページまたはソースに関連付けられたソース固有信号を監視することができる。例えば、コンテキストハブシステム116は、タブ付きウェブページの特定のURLに関連付けられた信号を監視するか、さもなければアクセスする。少なくとも1つの実施形態では、コンテキストハブシステム116は、リンクされたウェブページに関連するウェブページの信号にアクセスする。例えば、コンテキストハブシステム116は、タブ付きウェブページと同じドメイン名を共有するURLに関連付けられた使用信号を監視することができる。
【0128】
図5にさらに示すように、コンテキストハブシステム116は、使用信号を解析する動作504を実行する。少なくとも1つの実施形態では、コンテキストハブシステム116は、タブの監視された信号の各々についてメトリックをコンパイルする。例えば、図示のように、コンテキストハブシステム116は、ウェブページの平均視聴頻度が1日に12.6回であると判定する。コンテキストハブシステム116は、ユーザが3日前にウェブページに最後にアクセスしたと判定し、コンテンツタイプがニュースウェブサイトであると判定する。さらに、コンテキストハブシステム116は、ユーザが特定のウェブページ上で1日当たり平均2.6時間を費やし、ウェブページに284回アクセスし、ウェブページ上で89時間を費やしたことを判定する。
【0129】
コンテキストハブシステム116は、使用信号を解析する動作504の一部として信号処理アルゴリズムを利用することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、信号処理アルゴリズムを利用して、タブのスコアを生成する。信号処理アルゴリズムを使用して、コンテキストハブシステム116は、タブのスコアを決定するために、異なる使用信号に異なる重みを適用することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、最後にアクセスされた時間よりも大きい重みを平均視聴頻度に適用する。例えば、コンテキストハブシステム116は特に、ユーザが単に週末であるために作業(ワーク)関連ソースにアクセスしない場合、最後にアクセスされた時間があまり重要でない可能性があると決定し得る。少なくとも1つの実施形態において、コンテキストハブシステム116は、ユーザ定義アクションが存在する場合、ユーザ定義アクションのみを解析する。例えば、コンテキストハブシステム116が、特定のウェブページがホワイトリストに登録されていると判定した場合、コンテキストハブシステム116は、その使用信号解析を完了し、アクションの決定に進むことができる。
【0130】
少なくとも1つの実施形態では、タブ信号を解析する動作504の一部として、コンテキストハブシステム116は、タブスコアを生成する。例えば、より高いタブスコアは、ユーザが特定のタブを再開し、アクセスする、より高い確率に対応する。より低いタブスコアは、ユーザが特定のタブにアクセスするために戻る可能性がより低いことに対応する。たとえば、図5に示すように、コンテキストハブシステム116は、タブ信号に基づいて、ユーザがタブ1にアクセスする可能性がより高いことを示すタブ1に86という比較的(相対的に)高いタブスコアを割り当てる。対照的に、コンテキストハブシステム116は、ユーザがタブ4に戻らない可能性が高いことを示す、12というより低いタブスコアをタブ4に割り当てる。
【0131】
図5に示すように、コンテキストハブシステム116は、アクションを決定する動作506を実行する。特に、動作506は、コンテキストハブに関して実行すべきアクションを決定することを含む。コンテキストハブシステム116は、タブを閉じること、タブを開いたままにすること、タブを新しいまたは異なるコンテキストハブに移動させること、および同じコンテキストハブ内でタブを並べ替えることのうち、タブに対する少なくとも1つのアクションを実行することを決定することができる。加えて、または代替として、コンテキストハブシステム116は、アクション方針を提案する通知を送信するアクションを決定することができる。例えば、コンテキストハブシステム116は、クライアントデバイスにおける表示のために、ユーザがタブを閉じることを提案する通知を提供することができ、またはユーザがタブを移動することができる異なるコンテキストハブを提案することができる。
【0132】
図5に示されるように、コンテキストハブシステム116は、前の動作で決定されたタブスコアに基づいてアクションを決定する。例えば、コンテキストハブシステム116は、閾値オープンタブスコアおよび閾値クローズタブスコアを決定または受信することができる。特定のタブスコアが閾値オープンタブスコアを満たすと判定することに基づいて、コンテキストハブシステム116は、タブを開いたまま保つと決定する。例えば、コンテキストハブシステム116は、70の閾値オープンスコアを決定または受信することができる。したがって、タブ1のスコアが閾値オープンスコアを上回る(すなわち、86>70)と判定することに基づいて、コンテキストハブシステム116は、タブ1を開いたまま保つことを決定する。
【0133】
上述のように、コンテキストハブシステム116は、閾値オープンスコアを受信または決定することができる。特定のタブスコアが閾値クローズタブスコアを下回ると判定することに基づいて、コンテキストハブシステム116は、特定のタブを自動的に閉じることができ、またはタブを閉じることを提案する通知をユーザに提供することができる。例えば、図5に示すように、コンテキストハブシステムは、タブ4のタブスコア(すなわち、スコア=12)が閾値クローズタブスコア20を下回ることを決定する。したがって、コンテキストハブシステム116は、自動的にタブ4を閉じるか、またはタブ4を閉じることを提案する。
【0134】
さらに、コンテキストハブシステム116は、特定のアクションをタブスコアの範囲に関連付けることができる。一実施形態では、図5に示すように、コンテキストハブシステム116は、同様のスコアを有するタブをグループ化することを決定する。特に、コンテキストハブシステム116は、タブ2および3のタブスコアが40~70の所定の範囲内にあると判定することに基づいて、同じコンテキストハブ内にタブ2および3を移動させることを決定する。加えて、または代替として、コンテキストハブシステム116は、既存のコンテキストハブ内のタブのタブスコアに基づいて、タブスコアの範囲を決定することができる。例えば、ルーズ(loose)タブ(すなわち、それ自体のコンテキストハブまたはウィンドウ内の単一のタブ)がタブスコアの範囲内にタブスコアを有すると判定することに基づいて、コンテキストハブは、ルーズタブを既存のコンテキストハブに自動的に移動させるか、またはユーザがルーズタブを既存のコンテキストハブに移動させることを提案する通知を提供することができる。
【0135】
1つ以上の実施形態では、コンテキストハブシステム116は、タブに関連付けられた使用パターンに基づいてアクションを実行することを決定する。特に、コンテキストハブシステム116は、1つ以上のタブにアクセスするユーザのパターンを判定して、2つのタブが関連すること判定することができる。例えば、コンテキストハブシステムは、ユーザがタブにアクセスする時刻を判定することができ、より具体的には、ユーザがタブと最もアクティブに(積極的に)対話する時刻(時間)を決定することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、決定された期間(たとえば、日、週、月、年など)の1日の各時間の平均使用セッションの長さを判定することによって、使用パターンを計算する。
【0136】
コンテキストハブシステム116は、使用パターンに基づいて、1つのコンテキストハブから別のコンテキストハブにタブを移動することを決定することができる。一般に、コンテキストハブシステム116は、ユーザが同時にアクセスする可能性が高いタブを統合するために、コンテキストハブ内のタブをグループ化することができる。特に、コンテキストハブシステム116は、使用頻度に基づいてタブをグループ化することを決定することができる。たとえば、コンテキストハブシステム116は、毎日使用されるタブの第1のセットと、あまり頻繁には使用されないタブの第2のセットとをグループ化し得る。さらに、コンテキストハブシステム116は、共通アクセス時間に基づいてタブをグループ化することを決定することができる。例えば、コンテキストハブシステムは、労働(ワーク)時間中(例えば、午前9時から午後5時)に通常アクセスされるタブを含む第1のコンテキストハブと、休業時間中に通常アクセスされるタブを含む第2のコンテキストハブとを作成することができる。同様に、コンテキストハブシステム116は、コンテキストハブ内のタブが通常週末中にアクセスされること、およびタブに関連付けられた使用パターンが週末中にタブがアクセスされることを示唆することを決定することに基づいて、タブをコンテキストハブに移動させる。
【0137】
さらに、コンテキストハブシステム116は、ユーザが使用パターンとして2つ以上のタブ間で前後タブナビゲーションを実行していることを検出することができる。言い換えれば、ユーザが第1のタブ、次いで第2のタブ、次いで再び1のタブを閾値期間(例えば、10分)内にアクセスしていることを検出することによって、コンテキストハブシステム116は、ユーザが同じプロジェクトの両方のタブにアクセスしている可能性が高いと判定し、タブを単一のコンテキストハブに結合することをユーザに提案することができる。さらに、コンテキストハブシステム116は、タブを提案または結合することを決定する前に、ユーザが前後タブナビゲーションを実行しなければならない閾値回数を検出することができる。いくつかの実施形態では、コンテキストハブシステムは、タブを自動的に結合し、タブが結合されたことをユーザに通知することができる。コンテキストハブシステム116は、他のナビゲーションパターンまたは使用パターンを検出することができる。他の使用パターンは、ソースから1つ以上の他のソースへのコピーアンドペースト使用パターンを検出することを含む。さらに、使用パターンは、特定のナビゲーションシーケンス(たとえば、ソースA、次いでソースB、次いでソースC)を閾値回数検出して、ソースA、ソースB、およびソースCの間の関係を識別して、ソースをコンテキストハブに結合することを提案するかどうか、または自動的に結合するかどうかを決定することを含むことができる。
【0138】
使用パターンに加えて、コンテキストハブシステム116は、タブ内のコンテンツとコンテキストハブに関連するコンテキスト情報との間のコンテンツ類似度スコアに基づいて、特定のコンテキストハブ内の2つのタブを結合することを提案すること、または自動的に結合することを決定することができる。例えば、コンテキストハブシステム116は、コンテンツ類似度スコアを生成するために、ウェブアクセス可能なソース内のコンテンツ(例えば、サードパーティウェブサイト内のコンテンツ又はコンテンツ管理システム内の文書内のコンテンツ)をコンテキストハブのコンテキスト情報と比較することができる。例えば、ウェブアクセス可能なソースとコンテキストハブとの間のコンテンツ類似度スコアが定義(規定)された閾値(ユーザまたはシステムによって定義(規定)され得る)と一致する場合、コンテキストハブシステム116は、ウェブアクセス可能なソースをコンテキストハブに追加することを提案することができる。1つ以上の実施形態では、コンテキストハブシステム116は、ソースに関連付けられたキーワードを識別して、ソースのためのワードベクトルを生成する。同様に、コンテキストハブシステム116はコンテキストハブに関連付けられたキーワードを識別し、コンテキストハブのための単語ベクトルを生成することができる。同様に、コンテキストハブシステム116は、2つの単語ベクトルを比較して、単語ベクトル間の差を判定することができ、その結果、コンテンツ類似度スコアが得られる。したがって、差が小さいほど、ソースおよびコンテキストハブはより類似している。キーワードの計数および/または比較を含む他のスコアリングシステムも同様に使用することができる。
【0139】
コンテキストハブシステム116はまた、解析された使用信号、使用パターン、および/またはコンテンツ類似度に基づいて、コンテキストハブ内でアクションを実行することを決定し得る。例えば、図示のように、コンテキストハブシステム116は、スコアが高い順に(降順で)コンテキストハブ内のタブをリストすることができる。特定の実施形態では、コンテキストハブシステム116は、昇順でタブをリストする。タブスコアに基づいてタブに関して実行するアクションを決定することに加えて、コンテキストハブシステム116は、ユーザによって提出されたコンテキストハブプリファレンスに基づいてアクションを実行することを決定することもできる。特に、コンテキストハブシステム116は、ユーザからコンテキストハブプリファレンスを受信することができる。タブおよびコンテキストハブプリファレンスは、使用信号ベースまたはコンテンツベースであり得る。ユーザは、一定の非活動期間(例えば、時間、日など)の後にタブを閉じるための使用信号ベースのコンテキストハブプリファレンスを提出することができる。同様に、ユーザは、ベースアクティビティレベルに基づいてタブを開いたままにするための信号ベースのコンテキストハブプリファレンスを提出することができる。例えば、コンテキストハブシステム116は、1日に1回アクセスされる限り、タブを開いたままにしてもよい。さらに、コンテキストハブシステム116は、コンテンツベースのコンテキストハブプリファレンスを受信することができる。
【0140】
さらに、コンテキストハブシステム116は、ユーザによって提出されたコンテキストハブプリファレンス対する時間制約を受信することができる。特に、コンテキストハブシステム116は、ユーザによって提出されたコンテキストハブプリファレンスをいつ適用するか、または無視するかを決定することができる。例えば、コンテキストハブシステム116は、ユーザによって提出された、通常の労働時間外のコンテキストハブプリファレンスを無視してもよい。
【0141】
前述の説明は、コンテキストハブシステム116がタブ使用信号を解析することに基づいてアクションを決定する動作506をどのように実行するかのいくつかの例を提供する。他の実施形態では、コンテキストハブシステム116は、アクションを決定するために他の方法を利用することができる。特に、少なくとも1つの実施形態では、コンテキストハブシステム116は、トレーニングされたアクション予測機械学習モデルを利用して、タブ信号を受信し、解析して、タブに関するアクションを予測することができる。コンテキストハブシステム116は、トレーニングタブ信号を含むトレーニングデータを入力することによって、アクション予測機械学習モデルをトレーニングする。機械学習モデルは、トレーニングデータに基づいて予測アクションを生成する。コンテキストハブシステムは、予測アクションをグラウンドトゥルースアクションと比較することによって、損失関数を実行する。コンテキストハブシステム116は、アクション予測機械学習モデルのパラメータを修正して、損失を低減する。アプリケーション中、コンテキストハブシステム116は、クライアントデバイスからのタブ使用信号にアクション予測機械学習モデルを適用する。コンテキストハブシステム116は、ユーザが予測アクションを受け入れるか拒否するかを含むユーザフィードバックに基づいて、アクション予測機械学習モデルのパラメータをさらに修正することができる。したがって、コンテキストハブシステム116は、アクションを決定する動作506をインテリジェントに実行することができる。
【0142】
図5に示すように、一連の動作500は、アクションを実行する動作508を含む。一般に、コンテキストハブシステム116は、前の動作で決定されたアクションを実行する。例えば、コンテキストハブシステム116は、タブを閉じ、タブを開いたままにし、タブを新しいまたは異なるコンテキストハブに移動させ、タブを同じコンテキストハブ内で並べ替えることができる。
【0143】
図1図5、対応するテキスト、および実施例は、タブ上でアクションを実行するためのいくつかの異なるシステムおよびデバイスを提供する。前述に加えて、本開示の実施形態は、特定の結果を達成するための方法における動作を含むフローチャートに関しても説明することができる。例えば、図6は、本開示の1つ以上の実施形態による例示的な方法のフローチャートを示す。図6に関連して説明される方法は、より少ないまたはより多い動作/複数動作で実行されてもよく、または動作/複数動作は異なる順序で実行されてもよい。さらに、本明細書に記載される動作/複数動作は、互いに並行して、または同じもしくは同様の動作/複数動作の異なるインスタンスと並行して、繰り返されるか、または実行され得る。
【0144】
図6は、コンテキストハブ内のタブに対してアクションを実行する1つの例示的な方法600のフローチャートを示す。方法600は、タブに関連付けられた過去の使用信号を監視する動作610を含む。特に、動作610は、コンテキストハブ内の複数のタブの1つのタブに関連付けられた過去の使用信号を監視することを含み、複数のタブは、複数のサードパーティソースからのコンテンツを含む。少なくとも1つの実施形態では、複数のタブは、サードパーティソースに関連付けられる。さらに、少なくとも1つの実施形態では、過去の使用信号は、視聴頻度、最後にアクセスされた時間、コンテンツタイプ、視聴された時間、またはユーザ定義の特性のうちの少なくとも1つを含む。少なくとも1つの実施形態では、サードパーティソースは、サードパーティウェブサイトを含む。
【0145】
図6に示すように、方法600は、アクションを決定するために使用信号を定期的に解析する動作620を含む。特に、動作620は、少なくとも1つのプロセッサによって、過去の使用信号を定期的に解析して、タブに関して実行すべきアクションを決定することを含む。少なくとも1つの実施形態では、動作620は、少なくとも1つのプロセッサによって、過去の使用信号を定期的に解析して、タブに関する使用スコアを生成することによって、タブに関して実行すべきアクションを決定することを含む。少なくとも1つの実施形態では、動作620において過去の使用信号を解析することは、タブに関連付けられた過去の使用信号を、複数のタブに関連付けられた過去の使用信号と比較することを含む。少なくとも1つの実施形態において、アクションは、タブを自動的に閉じること、またはタブを閉じるための通知を提示することを含む。少なくとも1つの実施形態では、動作620は、ユーザ定義のタブ管理プリファレンスに基づいて、タブに関して実行すべきアクションを決定することを含む。
【0146】
図6に示すように、方法600は、アクションを実行させる動作630を含む。具体的には、動作630は、少なくとも1つのプロセッサによって、タブに関して実行されるべきアクションを行わせることを含む。さらに、少なくとも1つの実施形態では、動作630は、タブの使用スコアに基づいて、少なくとも1つのプロセッサによって、タブに対するアクションを実行させることを含む。
【0147】
方法600は、タブと、第2のコンテキストハブからの少なくとも1つのタブとに関連付けられた使用パターンを監視する追加の動作と、使用パターンに基づいて、第1のコンテキストハブから第2のコンテキストハブにタブを移動させる追加の動作とを含むことができる。
【0148】
方法600は、コンテンツ類似度スコアを生成するために、第2のコンテキストハブからの少なくとも1つのタブに関連付けられたコンテキスト情報とタブに関連付けられたコンテンツとを比較する追加の動作と、コンテンツ類似度スコアに基づいて、第1のコンテキストハブから第2のコンテキストハブにタブを移動させる追加の動作とをさらに含むことができる。
【0149】
1つ以上の実施形態では、方法600は、少なくとも1つのプロセッサによって、過去の使用信号に基づいてタブの使用スコアを生成する追加の動作と、少なくとも1つのプロセッサによって、使用スコアを、複数のタブに関連付けられた複数の使用スコアと比較する動作と、比較に基づいて、少なくとも1つのプロセッサによって、タブに関して実行されるべきアクションを行わせる動作とをさらに含む。
【0150】
少なくとも1つの例では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、コンテキストハブ内の複数のタブのうちのタブに関連付けられた過去の使用信号を監視させ、ここで複数のタブはサードパーティソースに関連付けられており、少なくとも1つのプロセッサによって、過去の使用信号に基づいて、タブの使用スコアを生成させ、少なくとも1つのプロセッサによって、使用スコアを、複数のタブに関連付けられた複数の使用スコアと比較させ、比較に基づいて、少なくとも1つのプロセッサによって、タブに関して実行されるべきアクションを行わせる命令を含む。さらに、少なくとも1つの実施形態では、過去の使用信号は、視聴頻度、最後にアクセスされた時間、コンテンツタイプ、視聴された時間、またはユーザ定義の特性のうちの少なくとも1つを含む。同じまたは追加の実施形態では、アクションは、タブを自動的に閉じること、またはタブを閉じるための通知を提示することを含む。同じまたは追加の実施形態では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、タブと、第2のコンテキストハブからの少なくとも1つのタブとに関連付けられた使用パターンを監視させ、使用パターンに基づいて、タブをコンテキストハブから第2のコンテキストハブに移動させる命令をさらに含む。同じまたは追加の実施形態では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、コンテンツ類似度スコアを生成するために第2のコンテキストハブからの少なくとも1つのタブに関連付けられたコンテキスト情報とタブに関連付けられたコンテンツとを比較させ、コンテンツ類似度スコアに基づいてコンテキストハブから第2のコンテキストハブにタブを移動させる命令をさらに含む。同じまたは追加の実施形態では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、ユーザ定義のタブ管理プリファレンスに基づいて、タブに関して実行する動作を決定させる命令をさらに含む。
【0151】
別の例示的な実施形態では、方法は、コンテキストハブ内の複数のタブのタブに関連付けられた過去の使用信号を監視することであって、複数のタブは複数のサードパーティソースからのコンテンツを含む、監視することと、少なくとも1つのプロセッサによって、過去の使用信号を定期的に解析して、タブに関して実行すべきアクションを決定することと、少なくとも1つのプロセッサによって、タブに関して実行すべきアクションを行わせることとを含む。同じまたは追加の実施形態では、過去の使用信号は、視聴頻度、最後にアクセスされた時間、コンテンツタイプ、視聴された時間、またはユーザ定義の特性のうちの少なくとも1つを含む。同じまたは追加の実施形態では、過去の使用信号を解析することは、タブに関連付けられた過去の使用信号を、複数のタブに関連付けられた過去の使用信号と比較することを含む。同じまたは追加の実施形態では、アクションは、タブを自動的に閉じること、またはタブを閉じるための通知を提示することを含む。同じまたは追加の実施形態では、方法は、タブと、第2のコンテキストハブからの少なくとも1つのタブとに関連付けられた使用パターンを監視することと、使用パターンに基づいて、タブをコンテキストハブから第2のコンテキストハブに移動させることとをさらに含む。同じまたは追加の実施形態では、方法は、コンテンツ類似度スコアを生成するために、第2のコンテキストハブからの少なくとも1つのタブに関連付けられたコンテキスト情報とタブに関連付けられたコンテンツとを比較することと、コンテンツ類似度スコアに基づいて、コンテキストハブから第2のコンテキストハブにタブを移動させることとをさらに含む。同じまたは追加の実施形態では、方法は、ユーザ定義のタブ管理プリファレンスに基づいて、タブに関して実行すべきアクションを決定することをさらに含む。同じまたは追加の実施形態では、サードパーティソースは、サードパーティウェブサイトを含む。
【0152】
別の例示的な実施形態では、システムは、少なくとも1つのプロセッサと、少なくとも1つのプロセッサによって実行されると、システムに、コンテキストハブ内の複数のタブのうちのタブに関連付けられた過去の使用信号を監視することであって、複数のタブはサードパーティソースに関連付けられている、監視することと、少なくとも1つのプロセッサによって、タブについての使用スコアを生成することによって、タブに関して実行するアクションを決定するために過去の使用信号を定期的に解析することと、少なくとも1つのプロセッサによって、タブの使用スコアに基づいて、タブに対するアクションを実行させることと、を行わせる命令を含む非一時的コンピュータ可読媒体とを備える。同じまたは追加の実施形態では、過去の使用信号は、視聴頻度、最後にアクセスされた時間、コンテンツタイプ、視聴された時間、またはユーザ定義の特性のうちの少なくとも1つを含む。同じまたは追加の実施形態では、アクションは、タブを自動的に閉じること、またはタブを閉じるための通知を提示することを含む。同じまたは追加の実施形態では、システムは、少なくとも1つのプロセッサによって実行されると、システムに、タブと第2のコンテキストハブからの少なくとも1つのタブとに関連付けられた使用パターンを監視させ、使用パターンに基づいて、タブをコンテキストハブから第2のコンテキストハブに移動させる命令をさらに含む。同じまたは追加の実施形態では、システムは、少なくとも1つのプロセッサによって実行されると、システムに、コンテンツ類似度スコアを生成するために、第2のコンテキストハブからの少なくとも1つのタブに関連付けられたコンテキスト情報とタブに関連付けられたコンテンツとを比較することと、コンテンツ類似度スコアに基づいて、コンテキストハブから第2のコンテキストハブにタブを移動させることとを行わせる命令をさらに含む。同じまたは追加の実施形態では、システムは、少なくとも1つのプロセッサによって実行されると、システムに、ユーザ定義のタブ管理プリファレンスに基づいて、タブに関して実行するアクションを決定させる命令をさらに含む。
【0153】
コンテンツキュレータとしてのコンテキストハブ
コンテキストハブ内でタブを編成および管理することに加えて、コンテキストハブシステム116はまた、コンテキストハブ内の表示のためにコンテンツをインテリジェントにキュレートすることができる。図7図15および対応する説明は、コンテキストハブシステム116がコンテキストハブ内のコンテンツをどのようにキュレートすることができるかに関する詳細を提供する。例えば、上述のように、コンテキストハブは、コンテンツをキュレートし、単一のインタフェースにおいて様々なサードパーティソースにわたって関連するウェブアクセス可能なコンテンツを提供することができる。この機能を提供するために、コンテキストハブシステム116は、単一のコンテキストハブ内の関連コンテンツをグループ化するために、関連するウェブアクセス可能コンテンツを識別するコンテキストモデルを生成することができる。例えば、サードパーティソースAPIおよびコンテキストモデルを利用することによって、コンテキストハブシステム116は、デジタルメッセージ、ウェブサイト、カレンダーアイテム、および、コンテキストハブトピックに関連する様々なサードパーティソースからの他のコンテンツを識別することができる。
【0154】
例示するために、コンテキストハブシステム116は、デジタルメッセージングソース、デジタルメディアソース、カレンダーソースなどの様々なサードパーティソースにコンテキストハブを関連付け得る。前述のように、コンテキストハブシステム116は、コンテキストハブ内の複数のサードパーティソースに関連付けられたコンテキスト情報に基づいて、特定のコンテキストハブに対応するコンテキストモデルを生成することができる。たとえば、コンテキストハブシステム116は、共通のテーマ、プロジェクト、ユーザのセット、または特定のハブ内のコンテンツの他の特性を識別することができる。コンテキストハブシステム116は、コンテキストハブを利用して、サードパーティソース(または内部ソース)からの関連情報を識別し、関連情報へのリンクをコンテキストハブに追加することができる。
【0155】
図7は、コンテキストハブシステム116がコンテキストハブと関連付けることができるサードパーティソースからのウェブアクセス可能コンテンツのタイプのいくつかの例を示す。図7に示すように、コンテキストハブシステム116は、単一のコンテキストハブ内の複数のサードパーティソースからの情報を含むことができる。サードパーティソースの例は、デジタルメッセージングソース716、デジタルウェブソース718、デジタルメディア管理ソース720、およびカレンダーソース722を含む。以下の段落では、これらのソースのそれぞれと、これらのソースからのウェブアクセス可能なコンテンツについて説明する。識別された情報がコンテキストハブ714に関連すると判定することに基づいて、コンテキストハブシステム116は、関連情報へのリンクをコンテキストハブ714に追加することができる。
【0156】
図7に示されるように、サードパーティソースの例は、デジタルメッセージングソース716を含む。一般に、デジタルメッセージングソース716は、任意の種類のデジタルメッセージングシステムを含むことができる。特に、デジタルメッセージングソース716は、ネットワークを介してあるユーザから別のユーザにデジタルメッセージを送信するデジタルメッセージングシステムを含むことができる。例えば、デジタルメッセージングソース716は、電子メールシステム、インスタントメッセージングシステム、テキストメッセージングシステム、または他のタイプのメッセージングシステムを含むことができる。
【0157】
一般に、デジタルメッセージングソース716は、デジタルメッセージ702を含む通信情報を格納および管理する。特に、デジタルメッセージ702は、デジタルメッセージングソース716内のあるユーザから別のユーザに送信されるデータを含む。例えば、デジタルメッセージ702は、電子メール、インスタントメッセージ、テキストメッセージ、およびテキストデータ、画像データ、オーディオデータ、ビデオデータ、および他のタイプのメディアファイルを含む他のものを含むことができる。コンテキストハブシステム116は、コンテキストハブ714内に、一連のデジタルメッセージを含む個々のデジタルメッセージ、アタッチメント、および/または会話へのリンクを含めることを決定することができる。さらに、デジタルメッセージ702は、デジタルメッセージングソース716を介して送信された他のウェブアクセス可能なソースへのリンクも含む。
【0158】
図7にさらに示されるように、サードパーティソースの別の例は、デジタルウェブソース718を含む。一般に、デジタルウェブソース718は、任意のタイプのウェブ記憶および管理システムを備える。特に、デジタルウェブソース718は、ウェブサーバソフトウェアおよびウェブサイトのための構成要素ファイルを格納する1つ又は複数のウェブサーバを含む。例えば、デジタルウェブソース718は、ウェブサイト、ウェブページ、ウェブドキュメント、および/またはウェブアプリケーションを記憶、処理、および、クライアントデバイスに配信する1つ以上のウェブサーバを備えることができる。コンテキストハブシステム116は、デジタルウェブソース718からウェブページ704にアクセスすることができる。特に、コンテキストハブシステム116は、個々のウェブページへのリンク、および/またはコンテキストハブ714内のデジタルウェブページの抜粋を含めることを決定することができる。例えば、ウェブページ704は、ユーザがウェブブラウザ及び/又はコンテキストハブ714を介して訪問したウェブページを含むことができる。
【0159】
図7にさらに示すように、サードパーティソースは、デジタルメディア管理ソース720を含むこともできる。一般に、デジタルメディア管理ソース720は、デジタルコンテンツを記憶し管理するシステムを含む。特に、デジタルメディア管理ソース720は、デジタルメディアアイテム706の記憶、管理、および/または編集を容易にするクラウドストレージシステムを含むことができる。例えば、デジタルメディア管理ソース720は、画像、文書、ビデオ、オーディオ、および他のファイルタイプ管理システムを含むことができる。1つ以上の実施形態では、デジタルメディア管理ソース720は、図1に示すコンテンツ管理システムとすることができる。したがって、いくつかの実施形態では、デジタルメディア管理ソース720は、図1に関して上述したように、サードパーティソースまたは内部ソースのいずれかとすることができる。
【0160】
図示のように、コンテキストハブシステム116は、デジタルメディア管理ソース720からデジタルメディアアイテム706にアクセスすることができる。一般に、デジタルメディアアイテム706は、ファイルとして利用可能な任意のタイプのデジタルコンテンツを含む。特に、デジタルメディアアイテムは、オンラインクラウドストレージドキュメント、ポータブルドキュメントフォーマット(例えば、「PDF」)ドキュメント、又はデジタルメディアファイル(例えば、デジタルビデオファイル、デジタル画像ファイル、デジタルオーディオファイル)、又は他のタイプのデジタルメディアコンテンツを含むことができる。上述のように、コンテキストハブシステム116は、コンテキストハブ714内のデジタルメディアアイテム706へのリンクを提供することができる。コンテキストハブシステム116は、コンテキストハブ714内に、単一のデジタルメディアコンテンツアイテム(たとえば、写真、文書、ビデオ、オーディオファイルなど)および/またはデジタルメディアコンテンツアイテムのグループ(たとえば、フォルダ)のためのリンクを提供することができる。
【0161】
サードパーティソースは、カレンダーソース722を含むこともできる。一般に、カレンダーソース722は、任意の種類のカレンダー管理システムを含む。特に、カレンダーソース722は、1人以上のユーザが編集し、任意選択でオンラインカレンダーへのアクセスを共有することを可能にするカレンダーシステムを含むことができる。例えば、カレンダーソース722は、カレンダーを生成し、格納し、管理し、1人以上のユーザと関連付けるウェブアプリケーションを含むことができる。
【0162】
コンテキストハブシステム116は、カレンダーソース722からカレンダーアイテム710にアクセスし、カレンダーアイテム710へのリンクをコンテキストハブ714に追加することができる。特に、カレンダーアイテム710は、オンラインカレンダーに関連付けられたデジタルコンテンツアイテムを含む。例えば、カレンダーアイテム710は、個々のイベント、イベントのグループ、又はカレンダー全体さえも含むことができる。
【0163】
図7はサードパーティソースのいくつかの例を示すが、コンテキストハブシステム116は、図示されていない他のサードパーティソースにアクセスすることができる。特に、サードパーティソースは、本明細書で説明されるように、ウェブアクセス可能なコンテンツを管理および提供する任意のタイプのサードパーティシステムを含むことができる。
【0164】
図7に示すように、コンテキストハブシステム116は、コンテキストモデル712を利用して、サードパーティソースからの関連コンテンツを識別する。コンテキストハブシステム116は、ユーザ定義ルールに基づいて、および/またはコンテキストハブ714の特性に基づいて、コンテキストモデル712を生成することができる。以下でさらに詳細に説明するように、コンテキストモデル712は、機械学習モデル、(たとえば、コンテンツおよびユーザ関係を示すノードおよびエッジを有する)コンテキストグラフ、またはコンテキストフィルタを備えることができる。概して、コンテキストモデル712は、共通のテーマ、ユーザ、および他のコンテンツを決定するために、コンテキストハブ内の複数のソースに関連付けられたコンテキスト情報を解析する。共通コンテンツを決定することに基づいて、コンテキストモデル712は、サードパーティソースから関連情報を識別する。
【0165】
いくつかの実施形態では、コンテキストハブシステム116は、コンテキストモデルのリポジトリにアクセスして、事前生成されたコンテキストモデルを識別し、選択する。特に、コンテキストハブシステム116は、コンテキストハブシステム116がそれらを生成するときに、コンテキストモデルを記憶することができる。さらに、コンテキストハブシステム116は、事前生成されたコンテキストモデルの特性を記憶することができる。例えば、コンテキストハブシステム116は、事前に生成されたコンテキストモデルを、対応するコンテキストハブのコンテキスト情報と関連付けることができる。したがって、コンテキストハブシステム116は、コンテキストハブのコンテキスト情報を、事前生成されたコンテキストモデルの特性と単純に比較して、最も近い一致する事前生成されたコンテキストモデルをコンテキストモデル712として指定することができる。
【0166】
図7にさらに示すように、コンテキストモデル712は、コンテキストハブ714内の様々なサードパーティソースからの関連情報へのリンクを追加する。概して、コンテキストハブ714は、様々なウェブアクセス可能なソース(たとえば、サードパーティソースおよび/または内部ソース)からのコンテキスト関連コンテンツへのアクセスを提供する単一の空間(スペース)を備える。前述のように、コンテキストハブ714は、様々なソースに対応するタブを提示する。コンテキストハブ714内でタブを編成および提示することに加えて、コンテキストハブシステム116は、他のサードパーティソースからのコンテンツおよび情報を編成および提示することができる。したがって、ユーザがプロジェクト固有チャネルまたはメッセージを識別するために、電子メール、デジタルメディアアイテム、インスタントメッセージングシステムなどにアクセスするためにいくつかの異なるウェブサイトを開くことを要求する代わりに、コンテキストハブ714は、関連情報およびコンテンツへのリンクを表面化する単一のユーザインタフェースとして動作する。例えば、コンテキストハブシステム116は、ウェブページ、電子メール、メッセージング会話、および電子カレンダー内のコンテキストハブ714に関連する情報を識別することができ、コンテキストハブシステムは、コンテキストハブインタフェース内での提示のために、関連情報アイテムの各々へのリンクを提供することができる。
【0167】
上述のように、コンテキストハブ714は、コンテキスト関連情報およびコンテンツを含む。特に、コンテキストハブ714内のコンテンツは、特定のトピック、事柄、目標、プロジェクト、タスク、人々、および他のカテゴリに関連することができる。さらに、コンテキストハブシステム116は、それぞれが異なるテーマを強調する複数のコンテキストハブを生成し、管理することができる。図7に示すように、コンテキストハブ714は、トピック「Work(ワーク、仕事、労働)」および「Social(ソーシャル)」に向けられた様々なアクセス可能なコンテキストハブを表示する。以下でさらに詳細に説明するように、コンテキストハブ714は、履歴、関連リンク、および他の情報などの追加の情報を表示することができる。
【0168】
前述のように、コンテキストモデルは、機械学習コンテキストモデルをトレーニングすることができる。図8は、1つ以上の実施形態による、機械学習コンテキストモデルをトレーニングし、適用するための一連の動作800を示す。図示のように、一連の動作800は、コンテキスト情報を受信する動作802と、コンテキストモデルをトレーニングする動作804と、コンテキストモデルをサードパーティソースからの情報に適用する動作810とを含む。
【0169】
図8に示すように、一連の動作800は、コンテキスト情報を受信する動作802を含む。特に、前述のように、コンテキスト情報は、コンテキストハブ内のコンテンツからのデータを指す。少なくとも1つの実施形態では、コンテキストハブ内のコンテンツは、ユーザがコンテキストハブに手動で入力したコンテンツを含む。たとえば、コンテキストハブ内のコンテンツは、様々なサードパーティソースからのコンテンツ、コンテキストハブに送信されたリンク、コンテキストハブ内のオープンタブ、コンテキストハブ内の履歴的閲覧履歴、コンテキストハブから送信されたリンク、および他の信号を含むことができる。コンテキストハブシステム116がアクセスすることができる情報は、コンテキストハブ内のコンテンツのメタデータ、コンテンツに関連付けられたキーワード、および他のコンテキスト情報を含むが、これらに限定されない。さらに、コンテキストハブシステム116は、コンテキストハブに関連付けられた情報にアクセスすることができるが、必ずしもコンテキストハブ内にアクセスする必要はない。例えば、コンテキストハブシステム116は、ユーザ定義ルール、コンテキストハブに関連付けられたユーザ、ユーザ定義ラベル、および他の関連情報を解析することができる。
【0170】
一連の動作800はまた、コンテキストモデルをトレーニングする動作804を含む。少なくとも1つの実施形態では、図示のように、コンテキストモデルは、コンテキスト機械学習モデルを含む。図10および対応する議論は、コンテキスト機械学習モデルのトレーニングに関する追加の詳細を提供する。少なくとも1つの実施形態では、コンテキストモデルは、動的フィルタを含む。図9および付随する説明は、フィルタとしてのコンテキストモデルに関する追加の詳細を提供する。
【0171】
図8に示すように、コンテキストハブシステム116は、トレーニングデータ806を利用することによってコンテキストモデルをトレーニングする動作804を実行する。一般に、トレーニングデータ806は、トレーニングコンテキスト情報とトレーニングコンテキストモデルパラメータとを含むデータの初期セットを含む。いくつかの実施形態では、コンテキストハブシステム116は、コンテキストハブに関連付けられた特定のユーザまたはユーザのグループに固有のトレーニングデータを利用する。例えば、コンテキストハブシステム116は、トレーニングデータとして、ユーザまたはユーザのグループおよびコンテキストハブ内のコンテンツによって指示されるパラメータを利用する。他の実施形態では、コンテキストハブシステム116は、関連するコンテキストハブからのトレーニングデータを利用する。たとえば、少なくとも1つの実施形態では、コンテキストハブシステム116は、コンテキストハブシステム116にアクセス可能なすべてのコンテキストハブ、および/または、同じまたは同様のサードパーティソースからのコンテンツアイテムを含むコンテキストハブ、のパラメータおよびコンテンツにアクセスする。例示するために、コンテキストハブシステム116は、様々なコンテキストハブおよび関連するユーザにわたって、特定のサードパーティソース(たとえば、特定の電子メールシステム、特定のインスタントメッセージングシステムなど)からのトレーニングデータ806にアクセスすることによって、より固有で正確なコンテキストモデルを生成することができる。
【0172】
コンテキストモデルをトレーニングする動作804を実行することの一部として、コンテキストハブシステム116はまた、ユーザ入力808を利用し得る。概して、コンテキストハブシステム116は、ユーザ入力808を受信することによって、特定のユーザのニーズにより良く適合するようにコンテキストモデルのパラメータをさらに修正することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、コンテキストモデルをトレーニングし、コンテキストモデルに基づいて、コンテキストハブにコンテンツを追加することを提案する。コンテキストハブシステム116は、コンテンツがコンテキストハブに関連するかどうかを示すユーザ入力808を受信することができる。コンテキストハブシステム116は、ユーザ入力808を利用して、コンテキストモデルのパラメータをさらに修正して、より正確でよりパーソナライズされた結果をユーザに配信することができる。加えて、または代替として、コンテキストハブシステム116は、コンテキストモデルの初期トレーニングにおいてユーザ入力808を利用することができる。例えば、コンテキストハブシステム116は、コンテキストハブの明示的なユーザ定義プリファレンスを受信することができる。
【0173】
図8に示すように、コンテキストハブシステム116は、サードパーティソースからの情報にコンテキストモデルを適用する動作810を実行する。概して、コンテキストハブシステム116は、コンテキストモデルを使用して関連情報を識別する。少なくとも1つの実施形態では、コンテキストハブシステム116は、ユーザが現在コンテキストハブを介してアクセスしている情報にコンテキストモデルを適用する。例えば、ユーザがウェブページにアクセスする場合、コンテキストハブシステム116は、特定のコンテキストハブに関連するコンテンツを識別するために、コンテキストモデルをウェブページに適用する。異なるコンテキストハブに関連するコンテンツをウェブページが含むことを検出することに基づいて、コンテキストハブシステム116は、異なるコンテキストハブに対応するウィンドウ内でウェブページを開くことができる。したがって、コンテキストハブシステム116は、コンテキストハブ内のタブをアクティブに管理して、コンテキストハブ内のタブがすべて共通のトピックまたはテーマに関連することを確実にすることができる。
【0174】
さらに、または代替として、コンテキストハブシステム116は、送信され、アクセスされ、またはその他の方法でユーザに関連付けられた情報に、コンテキストモデルを遡及的に適用することができる。特に、少なくとも1つの実施形態では、コンテキストハブシステム116は、過去にユーザに関連付けられたリンクにコンテキストモデルを適用する。より具体的には、コンテキストハブシステム116は、様々なサードパーティソース(たとえば、デジタルメッセージングシステム、インスタントメッセージングシステムなど)を介してユーザとの間で送信されるリンクを含むリンクのリポジトリを作成することができる。したがって、コンテキストハブシステム116は、ユーザによって特定のコンテキストハブと通信またはそれに送信されたリンクを提案または自動的に追加することができる。さらに、いくつかの実施形態では、リンクのリポジトリは、ユーザに関連付けられたウェブ閲覧履歴内のすべてのリンクをさらに含む。例えば、リンクのリポジトリは、ユーザによって訪問されたウェブページのすべてのURLを含むことができる。したがって、リンクのリポジトリにコンテキストモデルを適用することに基づいて、コンテキストハブシステム116は、ソートされたフォーカスされたウェブ閲覧履歴を、コンテキストハブを介してユーザに提供することもできる。
【0175】
前述のように、コンテキストハブシステム116は、様々なタイプのコンテキストモデルを生成し、トレーニングすることができる。例えば、コンテキストモデルは、図9に示すようなフィルタを含むことができる。さらに、コンテキストモデルは、コンテキスト機械学習モデルを含むことができる。図10~11および対応する議論は、トレーニングおよびコンテキスト機械学習モデルの適用に関するさらなる詳細を提供する。
【0176】
図9は、コンテキストハブシステム116がグラフィカルユーザインタフェースを介してユーザに提示することができる例示的なコンテキストハブフィルタ要素900を示す。コンテキストハブフィルタ要素900は、コンテキストハブシステム116が関連情報を識別してコンテキストハブに追加するために使用することができる様々なコンテキストハブ特性を示すことができる。コンテキストハブフィルタ要素900は、コンテキストハブシステム116がコンテキストハブのフォーカスに関連する情報をフィルタリングするために利用することができる様々なコンテキストハブ特性を含む。例えば、コンテキストハブフィルタ要素900は、ハブラベル要素902と、キーワード要素904と、関連ユーザ要素906と、URL要素908と、リンクソース要素910とを含む。
【0177】
上述のように、コンテキストハブシステム116は、ユーザ定義プリファレンスに少なくとも部分的に基づいてコンテキストモデルを生成することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、コンテキストハブを作成するときに、コンテキストハブフィルタ要素900をユーザに提示する。コンテキストハブシステム116は、コンテキストハブフィルタ要素900へのユーザ入力を利用して、コンテキストハブシステム116がコンテキストハブに追加する情報を定義することができる。例えば、コンテキストハブシステム116は、空のフィールドを有するコンテキストハブフィルタ要素900を提示することができる。コンテキストハブシステム116は、入力として、ハブラベル要素902、キーワード要素904、関連ユーザ要素906、URL要素908、およびリンクソース要素910内の、ユーザ応答を受信することができる。
【0178】
他の実施形態では、ユーザがコンテキストハブフィルタの制約を明示的に指示することを要求する代わりに、コンテキストハブシステム116は、ユーザがコンテキストハブ内で既にアクセスしたコンテンツを解析し、コンテキストハブの特性を決定し、コンテキストハブフィルタの制約を予測することができる。コンテキストハブシステム116は、予測されたコンテキストハブフィルタに従ってコンテンツを自動的にフィルタリングし始めることができる。たとえば、コンテキストハブシステム116は、コンテキストハブラベル、キーワード、ユーザ、URL、リンクソース、およびコンテキストハブの他の特性を予測することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、ユーザ要求を受信することに基づいて、ユーザクライアントデバイスを介して表示するために予測コンテキストハブフィルタを表面化することができる。コンテキストハブフィルタ要素900のコンポーネント要素は、ユーザが個々のフィルタ制約を選択および修正することができるように、対話型(インタラクティブ)要素を含むことができる。
【0179】
以下の議論は、図9に示される例示的なコンテキストハブフィルタ制約の各々を説明する。一般に、コンテキストハブフィルタ制約は、コンテキストハブコンテンツの特性に基づいて決定される。コンテキストハブシステム116は、サードパーティソースからの関連情報を識別するために、以下の制約のうちのいずれか1つまたは組合せを利用し得る。例えば、ハブラベル要素902によって示されるように、コンテキストハブシステム116は、コンテキストハブラベルに基づいて関連情報を識別することができる。前述のように、コンテキストハブシステム116は、コンテキストハブラベルを自動的に決定するか、または入力としてコンテキストハブラベルを受信することができる。コンテキストハブフィルタは、サードパーティソースのコンテンツがコンテキストハブラベルに著しく関連すると判定することに基づいて、サードパーティソースからの関連情報を識別し得る。例えば、コンテキストハブシステム116は、サードパーティソースからのコンテンツのセマンティック解析を実行して、コンテンツがコンテキストハブラベルに著しく関連しているかどうかを判定することができる。
【0180】
同様に、キーワード要素904によって示されるように、コンテキストハブシステム116は、コンテキストハブ内で識別されたキーワードを利用して、サードパーティソースからの関連情報を識別することができる。概して、コンテキストハブシステム116は、コンテキストハブに関連付けられた1つ以上のキーワードを識別することができる。例えば、コンテキストハブシステム116は、コンテキストハブのコンテンツ内のキーワードを、キーワードがコンテンツ内で少なくとも閾値回数発生したと判定することによって、自動的に識別することができる。他の実施形態では、コンテキストハブシステム116は、コンテキストハブ内のコンテンツのメタデータを解析して、共通のテーマまたはキーワードを決定することができる。新しいサードパーティソースからの情報が、識別されたキーワード(および/または関連ワード)を含むと判定することに基づいて、コンテキストハブシステム116は、その情報がコンテキストハブに関連すると判定することができる。
【0181】
図9の関連ユーザ要素906によってさらに示されるように、コンテキストハブシステム116は、コンテキストハブに関連付けられたユーザに基づいて関連情報を識別することができる。一般に、コンテキストハブシステム116は、コンテキストハブへアクセスする共同ユーザを判定することによって、および/またはコンテキストハブに含まれる情報を送信または受信したユーザを識別することによって、コンテキストハブに関連付けられたユーザを識別することができる。コンテキストハブに関連付けられた関連ユーザまたはユーザを識別することに基づいて、コンテキストハブシステム116は、関連ユーザとの関連付けに基づいて、サードパーティソースからの情報を含むように決定することができる。例えば、コンテキストハブシステム116は、コンテンツへのリンクがコンテキストハブの共同ユーザによって送信されたか、または共同ユーザに送信されたと判定することに基づいて、サードパーティソースからのコンテンツを含むことができる。別の例では、コンテキストハブシステム116は、ユーザがコンテキストハブに追加した電子メールに関連付けられた連絡先を識別する。コンテキストハブシステム116は、コンテンツに関連付けられたサードパーティソースからコンテンツを識別し、例えば、コンテキストシステムは、電子メール、インスタントメッセージ、文書、リンク、または、連絡先がユーザに送信した、ユーザから受信した、またはユーザと共同した他のコンテンツへのリンクを識別することができる。
【0182】
図9のURL要素908によって示されるように、コンテキストハブシステム116は、コンテキストハブ内のコンテンツのURLまたは他のアドレスに基づいて関連情報を識別することができる。コンテキストハブシステム116は、URLまたはアドレスがコンテキストハブに関連付けられていると判定することができる。たとえば、コンテキストハブシステム116は、URLがコンテキストハブ内で少なくとも閾値回数発生することを判定することに基づいて、URLまたは他のアドレスを、コンテキストハブに関連付けることができる。いくつかの実施形態では、コンテキストハブシステム116は、情報が特定のURLまたは他のアドレスからのものであることを検出することに基づいて、コンテキストハブに情報を追加する。例えば、図示されるように、コンテキストハブシステム116は、surevey.com、happycompany.com、およびhappybuyer.comというURLを有するサードパーティソースからの情報が、「Survey Project(調査プロジェクト)」とラベル付けされたコンテキストハブに関連し、それに含まれるべきであると判定する。少なくとも1つの実施形態では、コンテキストハブシステム116は、コンテキストハブシステム116が情報をコンテキストハブシステムに追加するURLまたは他のアドレスを含むホワイトリストを決定する。例えば、コンテキストハブシステムは、コンテキストハブ内のコンテンツのURLおよびアドレスを識別することができ、コンテキストハブに追加される新しい情報が、識別されたURLからのものであるか、または識別されたURLに関連することを要求することができる。
【0183】
図9のリンクソース要素910によってさらに示されるように、コンテキストモデルは、リンクのソースに基づいて、リンクをコンテキストハブに追加することを決定することができる。一般に、コンテキストハブシステム116は、コンテキストハブ内の特定のリンクソースからのリンクを識別することに基づいて、特定のリンクソースをコンテキストハブに関連付けることができる。コンテキストモデルは、同じソースからコンテキストハブへの追加のリンクを識別することを決定することができる。例えば、ユーザは、サードパーティソース(メッセージングシステム、共有メディアシステムなど)内のリンクをクリックすることができ、コンテキストハブシステム116は、コンテキストハブ内のリンクに対応するウェブページを開くことに進む。コンテキストハブシステム116は、リンクソースとコンテキストハブとの間の関連付けを判定することに基づいて、特定のコンテキストハブにおいてリンクを開くことを決定することができる。例えば、コンテキストハブシステム116は、特定のコンテキストハブ内の特定のインスタントメッセージングまたは電子メーリングシステム内で送信されたリンクを開くことを決定することができる。
【0184】
より具体的には、コンテキストハブシステム116は、サードパーティシステム構造および/またはグループ化を、特定のコンテキストハブに関連付けることができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、特定のサードパーティシステム内の編成構造にアクセスし、サードパーティシステム内のユニットを特定のコンテキストハブと関連付けることができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、サードパーティシステムのAPIにアクセスすることによって、サードパーティシステム内の編成構造またはユニットを識別することができる。コンテキストハブシステム116は、次いで、編成構造またはユニットがコンテキストハブと同じトピックまたはフォーカスに向けられていると判定することに基づいて、編成構造またはユニットを特定のコンテキストハブと関連付け得る。例えば、コンテキストハブシステム116は、サードパーティインスタントメッセージングシステムが「Work Chat(ワークチャット)」会話(すなわち、編成ユニット)を含むと判定することができる。コンテキストハブが「Work Chat(ワークチャット)」会話からのいくつかのチャットメッセージ、リンク、および/または交換を含むと判定することに基づいて、コンテキストハブシステム116は、「Work Chat(ワークチャット)」会話をコンテキストハブと関連付け得る。したがって、コンテキストハブシステム116は、「Work Chat(ワークチャット)」からの将来のリンク、メッセージ、および/または会話がコンテキストハブに追加されるべきであることを提案し得る。
【0185】
図9は、コンテキストハブフィルタがコンテキストハブに追加すべき関連情報を識別することができる、いくつかの例示的なコンテキストハブ特性を示す。他の実施形態では、コンテキストハブシステム116は、コンテキストハブフィルタを定義するための他の特性を識別することができる。例えば、コンテキストハブシステム116は、機械学習モデルを利用して、コンテキストハブフィルタが関連コンテンツをより正確に識別することができる潜在的な特徴および特性を決定することができる。
【0186】
上述のように、コンテキストハブシステム116は、コンテキストハブに対するサードパーティソースコンテンツの関連性を判定するためにコンテキスト機械学習モデルを利用することができる。特に、コンテキストハブシステム116は、サードパーティソースからのコンテンツがコンテキストハブに関連するかどうかを予測するために、コンテキスト機械学習モデルをトレーニングすることができる。図10は、1つ以上の実施形態による、コンテキスト機械学習モデル1004のトレーニングを示す。
【0187】
図10に示すように、コンテキストハブシステム116は、トレーニングデータ1010からコンテキストハブのコンテキスト情報1002にアクセスする。さらに、コンテキストハブシステム116は、コンテキストハブのグラウンドトゥルース関連データ1012にアクセスする。グラウンドトゥルース関連データ1012は、情報(すなわち、トレーニングサードパーティソースコンテンツ1016)がコンテキストハブに関連するか否かを示す。いくつかの実施形態(たとえば、コンテキスト学習モデル1004が、バイナリ分類ニューラルネットワークではなく確率決定ニューラルネットワークである実施形態)では、グラウンドトゥルース関連情報は、トレーニングサードパーティソースコンテンツ1016のためのグラウンドトゥルース関連スコア(コンテンツがコンテキストハブに関連する確率として表される)を含む。
【0188】
さらに、コンテキストハブシステム116は、コンテキスト情報1002およびトレーニングサードパーティソースコンテンツ1016を、コンテキスト機械学習モデル1004(たとえば、バイナリ分類ニューラルネットワークまたは確率決定ニューラルネットワーク)に入力する。コンテキスト機械学習モデル1004は、コンテキスト情報1002を解析して、潜在的な特徴および他のデータを生成し、様々なニューロンとレイヤとの間で渡して、コンテキスト情報1002およびトレーニングサードパーティソースコンテンツ1016に基づいて予測関連データ1006を最終的に生成する。予測関連データ1006は、トレーニングサードパーティソースコンテンツ1016が、コンテキスト情報1002に関連付けられたコンテキストハブに関連するか否かを示すためのバイナリ分類(例えば、関連する又は関連しない)の予測を含む。いくつかの実施形態では、予測関連データ1006は、バイナリ分類ではなく、むしろ、トレーニングサードパーティソースコンテンツ1016がコンテキストハブに関連するかどうかの確率である。
【0189】
コンテキスト機械学習モデル1004に関連付けられた損失または誤差の尺度(測定値)を決定するために、コンテキストハブシステム116は、比較1008をさらに実行する。特に、コンテキストハブシステム116は、グラウンドトゥルース予測関連データ1006をグラウンドトゥルース関連データ1012と比較する。たとえば、コンテキストハブシステム116は、クロスエントロピー損失関数または平均二乗誤差損失関数などの損失関数を実装することによって比較1008を実行する。いずれにしても、コンテキストハブシステム116は、損失関数を利用して、予測関連データ1006をグラウンドトゥルース関連データ1012と比較することによって、コンテキスト機械学習モデル1004に関連付けられた損失の誤差または尺度(測定値)を決定する。
【0190】
図10にさらに示されるように、コンテキストハブシステム116は、逆伝播1014を実行する。特に、コンテキストハブシステム116は、コンテキスト機械学習モデル1004の様々な内部パラメータを調整または修正するために逆伝播する。例えば、コンテキストハブシステム116は、重み、関係、および他のパラメータを修正して、ニューロンおよびレイヤが情報を生成および渡す方法を変更し、それによって、コンテキスト機械学習モデル1004が入力から特徴を決定し、最終的に出力を生成する方法を変更する。したがって、コンテキストハブシステム116は、内部パラメータを修正して、その後、より正確な予測を生成することによって、コンテキスト機械学習モデル1004に関連付けられた損失または誤差の尺度(測定値)を最小化または低減することを試みる。
【0191】
様々なパラメータを修正するために逆伝播すると、コンテキストハブシステム116は、図10に示すトレーニングプロセスをさらに繰り返す。実際、コンテキストハブシステム116は、特定の個数の反復またはエポックについて、および/またはコンテキスト機械学習モデル1004が損失の閾値測度を満たすまで(または予測関連データ1006がグラウンドトゥルース関連データ1012の閾値類似度内に入るまで)、トレーニングを繰り返す。
【0192】
例えば、コンテキストハブシステム116は、トレーニングデータ1010から、新たなグラウンドトゥルース関連データに対応する、新たな関連コンテキスト情報および新たなトレーニングサードパーティソースコンテンツを識別する。コンテキストハブシステム116はさらに、新しい予測関連データを生成するために、新しい関連コンテキスト情報および新しいトレーニングサードパーティソースコンテンツをコンテキスト機械学習モデル1004に入力する。さらに、コンテキストハブシステム116は、損失関数を利用して、新しい予測関連データを、新しいグラウンドトゥルース関連データと比較する。さらに、コンテキストハブシステム116は、コンテキストハブのコンテキスト情報に基づいて正確な予測関連データを生成するために、コンテキスト機械学習モデル1004の重みおよびパラメータをさらに修正するために逆伝播する。
【0193】
上述のように、コンテキストハブシステム116は、トレーニングされたコンテキスト機械学習モデル(たとえば、コンテキスト機械学習モデル1004)を適用して、サードパーティソースコンテンツの予測関連情報(たとえば、予測関連データ)を決定することができる。図11は、1つ以上の実施形態による、サードパーティソースコンテンツ1102の予測関連データ1106を生成するために、トレーニングされたコンテキスト機械学習モデル1004を適用することを示す。
【0194】
図11に示すように、コンテキストハブシステム116は、サードパーティソースコンテンツ1102を識別する。上述のように、サードパーティソースコンテンツ1102は、ユーザが現在アクセスを要求している、または既にアクセスしているサードパーティソースからのコンテンツを含むことができる。コンテキストハブシステム116は、サードパーティソースコンテンツ1102をコンテキスト機械学習モデル1004に入力する。コンテキスト機械学習モデル1004は、サードパーティソースコンテンツ1102に対応する予測関連データ1106を生成する。実際、コンテキスト機械学習モデル1004は、サードパーティソースコンテンツ1102が予測関連データ1106(例えば、関連性の分類)に基づいて関連情報を含むか否かの予測を生成する。いくつかの実施形態では、コンテキスト機械学習モデル1004は、サードパーティソースコンテンツ1102が関連情報を含む確率の形態で予測関連データ1106を生成する。これらの実施形態では、確率は、サードパーティソースコンテンツ1102の関連スコアを示すことができる。
【0195】
図10図11は、コンテキストハブシステム116がコンテキストハブに対応するコンテキストモデルを生成することができる様々な方法を示す。図10図11に説明される主要な実施形態では、コンテキストハブシステム116は、コンテキストハブ内の関連コンテンツの特性を識別して、コンテキストモデルを作成する。そのような実施形態では、コンテキストハブシステム116は、部分的に、ユーザがコンテキスト関連情報をコンテキストハブに手動で入力することに依存する。しかしながら、他の実施形態では、コンテキストハブシステム116は、コンテキストハブにコンテンツを追加することをユーザに要求することなく、コンテキストモデルを生成することに基づいてコンテキストハブを提案することができる。例えば、コンテキストハブシステム116は、ユーザがコンテキストハブを介してコンテンツにアクセスし始める前に、コンテキストモデルを生成することができる。加えて、または代替として、コンテキストハブシステム116は、ユーザアクセスコンテンツを有意義な方法で編成する1つ以上のコンテキストモデルを生成し得る。図12は、コンテキストハブシステム116が、コンテキストグラフを使用して、提案されたコンテキストハブをどのように生成し得るかの例を提供する。
【0196】
図12は、1つ以上の実施形態による、コンテキストハブ提案を生成するために、コンテキストハブシステム116がサードパーティソース1208のコンテキストグラフ1200をどのように利用し得るかを示す。コンテキストグラフ1200は、ユーザ1210および共同ユーザ(co-user)1204a~1204dを含む。ユーザ1210は、ソーシャルリレーション(社会的関係)を表すエッジによって共同ユーザ1204b~1204dに接続される。コンテキストグラフ1200は、共同ユーザ1204a~1204cを含むグループ1202と、ユーザ1210および共同ユーザ1204dを含むグループ1206と、ユーザ1210および共同ユーザ1204bおよび1204cを含むグループ1212とを含む様々なグループを含む。
【0197】
サードパーティソース1208は、図7に関連して説明したサードパーティソースの1つまたは組合せを備え得る。たとえば、サードパーティソース1208は、デジタルメッセージングソース、デジタルウェブソース、デジタルメディア管理ソース、および/またはカレンダーソースを含み得る。特に、サードパーティソース1208は、ユーザ間の何らかのソーシャルリレーションを管理および記憶するサードパーティソースを含む。コンテキストハブシステム116は、サードパーティソース1208のためのAPIを介してサードパーティソース1208からコンテキストグラフ1200にアクセスすることができる。コンテキストハブシステム116は、1つ以上のサードパーティソース1208からのコンパイルされたソーシャル情報に基づいてコンテキストグラフ1200を生成することができる。
【0198】
コンテキストハブシステム116は、サードパーティソース1208のユーザ間のソーシャルリレーションを識別することができる。例えば、コンテキストハブシステム116は、エッジを使用して、コンテキストグラフ1200内のソーシャルリレーションを表すことができる。一般に、ソーシャルリレーションは、任意の種類のソーシャルリレーションを指す。特に、ソーシャルリレーションは、サードパーティソースのユーザ間の接続を指す。例えば、互いに連絡先情報を共有する、デジタルメッセージングソース、デジタルメディア管理ソース、および/またはカレンダーソースのユーザは、ソーシャルリレーションを共有することができる。さらに、ユーザは、デジタルウェブソース(たとえば、ソーシャルメディアソース)上で接続されることによって(たとえば、友人または接続)、ソーシャルリレーションシップによって接続され得る。図示のように、ユーザ1210は、ソーシャルリレーションを介して共同ユーザ1204b~1204dに接続される。コンテキストハブシステム116は、コンテキストグラフ1200を生成することの一部として、様々なサードパーティソース1208内のソーシャルリレーションを識別することができる。たとえば、ユーザ1210は、第1のサードパーティソース内の共同ユーザ1204dに接続され、第2のサードパーティソース内の共同ユーザ1204bおよび1204cに接続され得る。
【0199】
ソーシャルリレーションを識別することに加えて、コンテキストハブシステム116は、サードパーティソース1208からのソーシャルグループを識別することができる。一般に、サードパーティソース1208内のグループは、サードパーティソース1208内で積極的にデータを共同し、共有し、または互いに通信しているユーザを含む。例えば、グループ1202は、デジタルメッセージングソース(例えば、電子メールスレッド、インスタントメッセージングチャネルなど)内のデジタルメッセージンググループ会話内に接続されたユーザを含むことができ、グループ1212は、デジタルメディア管理ソース内の共有ドキュメント上で共同するユーザを含むことができ、グループ1206は、カレンダーソース内の共有イベントにアクセスするユーザを含むことができる。サードパーティソース1208内のグループは、サードパーティソース1208内のユーザの任意の数のグループを含むことができる。
【0200】
コンテキストハブシステム116は、コンテキストグラフ1200に基づいてコンテキストハブ提案を生成することができる。特に、コンテキストハブシステム116は、ソーシャルリレーションシップデータおよび/またはグループを利用して、コンテキストハブを提案することができる。コンテキストハブシステム116は、ユーザの特定のセットがコンテキスト的に類似するコンテンツに対応することを判定することができる。一実施形態では、コンテキストハブシステム116は、グループ内の共同ユーザに基づいて、提案されるコンテキストハブを生成することができる。例えば、コンテキストハブシステム116は、ユーザ1210と、グループ1212内の共同ユーザ1204bおよび1204cとの間で送信されるリンクを格納および提示するコンテキストハブを生成することができる。ユーザ1210はまた、同じサードパーティソース内の共同ユーザ1204dと接続され得るが、コンテキストハブシステム116は、グループ1206がグループ1212とは異なると判定することに基づいて、共同ユーザ1204dに関連付けられた情報を除外すると決定し得る。
【0201】
コンテキストハブシステム116はまた、共同ユーザがユーザ1210と接続されていない場合でも、共同ユーザ接続に基づいてユーザ1210のためのコンテキストハブ提案を生成することができる。概して、コンテキストハブシステム116は、共同ユーザ間の接続を解析して、共同ユーザの有意なセットを識別することができる。たとえば、コンテキストハブシステム116は、ユーザのセットが複数のグループ内で接続されていると判定することに基づいて、共同ユーザのセットが閾値有意性を満たすと判定することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、コンテキストグラフ1200内のユーザのセットに関連スコアを割り当てる。図12に示されるように、ユーザ1210は、グループ1212内の共同ユーザ1204bおよび1204cと接続される。コンテキストハブシステム116はまた、共同ユーザ1204bおよび1204cが、グループ1202内の共同ユーザ1204aと接続されていることを識別する。コンテキストハブシステム116は、共同ユーザ1204bおよび1204cが複数のグループ内で接続されていると判定することに基づいて、共同ユーザ1204bおよび1204cを含むユーザのセットに、より高い関連スコアを割り当てることができる。したがって、より高い関連スコアに基づいて、コンテキストハブシステム116は、共同ユーザ1204b~1204cに送信され、そこから受信されるコンテンツにフォーカスする、ユーザ1210のための提案されたコンテキストハブを生成し得る。
【0202】
図12および対応する議論は、コンテキストハブシステム116がコンテキストグラフ1200を生成および利用して、1つ以上のコンテキストハブをユーザに提案する方法の特定の例を提供する。コンテキストハブシステム116は、コンテキストハブをユーザに提案するために、他の方法でコンテキストグラフ1200を利用し得る。さらに、コンテキストハブシステム116は、コンテキストハブを生成および提案する際にハブ提案機械学習モデルを実装することができる。図13A~13Bは、1つ以上の実施形態による、ハブ提案機械学習モデルのトレーニングおよび適用を図示する。
【0203】
図13Aに示すように、コンテキストハブシステム116は、トレーニングデータ1310からのトレーニングユーザ情報1302およびグラウンドトゥルースコンテキストモデルにアクセスする。トレーニングユーザ情報1302は、サードパーティソースからのユーザ情報を含む。例えば、トレーニングユーザ情報1302は、ユーザと共有されるリンク、ユーザと接続された共同ユーザ、ユーザによってアクセスされたウェブページの履歴、および他のコンテンツを含む。少なくとも1つの実施形態では、トレーニングユーザ情報1302は、時間的に制限され、特定の期間内のユーザ情報を含む。グラウンドトゥルースコンテキストモデル1312は、グラウンドトゥルースコンテキストハブに対応するコンテキストモデルを含む。
【0204】
コンテキストハブシステム116は、トレーニングユーザ情報1302をハブ提案機械学習モデル1304(例えば、バイナリ分類ニューラルネットワークまたは確率決定ニューラルネットワーク)に入力する。ハブ提案機械学習モデル1304は、トレーニングユーザ情報1302を解析して、潜在的な特徴および他のデータを生成し、様々なニューロンとレイヤとの間で渡して、予測コンテキストモデル1306を生成する。
【0205】
コンテキストハブシステム116は、比較1308を実行する。特に、コンテキストハブシステム116は、グラウンドトゥルースコンテキストモデル1312を予測コンテキストモデル1306と比較する。たとえば、コンテキストハブシステム116は、予測コンテキストモデル1306をグラウンドトゥルースコンテキストモデル1312と比較することによって、ハブ提案機械学習モデル1304に関連付けられた損失の誤差または尺度(測定値)を決定するための損失関数を実装することによって、比較1308を実行する。
【0206】
コンテキストハブシステム116はさらに、逆伝播1314を実行する。特に、コンテキストハブシステム116は、ハブ提案機械学習モデル1304の様々な内部パラメータを調整または修正するために逆伝播する。例えば、コンテキストハブシステム116は、重み、関係、および他のパラメータを変更して、ニューロンおよびレイヤが情報を生成および渡す方法を変更し、それによって、ハブ提案機械学習モデル1304が入力から特徴を決定し、最終的に出力を生成する方法を変更する。したがって、コンテキストハブシステム116は、ハブ提案機械学習モデル1304に関連付けられた損失または誤差の尺度(測定値)を最小化または低減することを試みる。
【0207】
コンテキストハブシステム116は、図13Aに示すトレーニングプロセスをさらに繰り返すことができる。特に、コンテキストハブシステム116は、特定の個数の反復またはエポックについて、および/またはハブ提案機械学習モデル1304が損失の閾値尺度(測定値)を満たすまで(または予測コンテキストモデル1306がグラウンドトゥルースコンテキストモデル1312の閾値類似度内に入るまで)、トレーニングを繰り返す。
【0208】
コンテキストハブシステム116は、トレーニングされたハブ提案機械学習モデル(例えば、ハブ提案機械学習モデル1304)を適用して、提案されたコンテキストモデルを決定することができる。図13Bは、提案されたコンテキストモデル1322を生成するためにハブ提案機械学習モデル1304をユーザ情報1320に適用するコンテキストハブシステム116を示す。
【0209】
図13Bに示すように、コンテキストハブシステム116は、ユーザ情報1320にアクセスする。上述のように、ユーザ情報1320は、ユーザに関連付けられた任意の情報を含むことができる。特に、ユーザ情報1320は、ユーザが履歴的にアクセスしたコンテンツを含むサードパーティソースに関連付けられたユーザ情報を含む。コンテキストハブシステム116は、ユーザ情報1320をハブ提案機械学習モデル1304に入力する。ハブ提案機械学習モデル1304は、提案されたコンテキストモデル1322を生成する。コンテキストハブシステム116は、提案されたコンテキストモデル1322をそれらの制約と共にユーザに提示することができる。ユーザは、提案されたコンテキストモデル1322を受け入れる、修正する、または拒否することを選択することができる。
【0210】
図7図13Bは、コンテキストハブシステム116がコンテキストハブ内の様々なサードパーティソースからのコンテンツにどのようにフォーカスすることができるかを示す。前述のように、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェースを介して、コンテキストハブ内のサードパーティソースへの参照を提供することができる。コンテキストハブ管理グラフィカルユーザインタフェースは、ユーザが様々なサードパーティソースからのコンテキスト関連コンテンツを視聴することを可能にする。図14A~14Bおよび以下の説明は、上述の特徴および機能に従った、コンテキストハブ管理グラフィカルユーザインタフェースおよび特徴の様々な例示的な実施形態を示す。
【0211】
図14Aは、様々なサードパーティソースからのコンテキスト関連コンテンツを含む例示的なコンテキストハブ管理グラフィカルユーザインタフェースを示す。さらに、コンテキストハブ管理グラフィカルユーザインタフェースにおける1つ以上のサードパーティソース要素の検出されたユーザ選択に基づいて、コンテキストハブシステム116は、サードパーティソース要素に固有の追加の詳細を提供する。図14Bは、追加のインスタントメッセージングデータを提供する例を示す。図14Bは、インスタントメッセージングシステムに特有の追加の詳細を示すが、コンテキストハブシステム116は、他のサードパーティソースからのコンテンツを表示する同様のインタフェースを提供することができる。
【0212】
1つ以上の実施形態では、コンテキストハブシステム116が、クライアントデバイスに、そこにインストールされたクライアントアプリケーションを介して、グラフィカルユーザインタフェースを提供することができる。例えば、図14Aは、クライアントデバイス1400の画面1402上に表示されるコンテキストハブ管理グラフィカルユーザインタフェース1404を示す。図示のように、コンテキストハブ管理グラフィカルユーザインタフェース1404は、関連コンテンツ1426a~1462c、コンテキストハブ履歴1420、最近閉じられたコンテンツ1422、および関連リンク1424とともに、コンテキストハブ1416を含む様々な表示領域および表示要素を含む。
【0213】
前述のように、コンテキストハブシステム116は、関連コンテンツをコンテキストハブ内に編成することができる。コンテキストハブ内の関連コンテンツは、サードパーティソースからの任意のコンテンツ(関連情報へのリンクを含む)を含むことができる。図14Aに示すように、コンテキストハブ管理グラフィカルユーザインタフェース1404は、「Survey Project(調査プロジェクト)」にフォーカスしたコンテキストハブ1416を表示する。特に、コンテキストハブ1416は、関連コンテンツ1426a~1426cを含む。関連コンテンツ1426a~1426cは、異なるサードパーティソースに由来する。例えば、関連コンテンツ1426aは、「Team Survey(チーム調査)」と題されたウェブページを含み、関連コンテンツ1426bは、「Survey doc(調査文書)」と題されたドロップボックスに記憶されたデジタル文書を含み、関連コンテンツ1426cは、共同ユーザからの電子メールへのリンクを含む。コンテキストハブシステム116は、様々なサードパーティソースから図14Aに示すものへの追加の関連コンテンツへのリンクを提供することができる。
【0214】
コンテキストモデルを生成することの一部として、コンテキストハブシステム116は、コンテキストハブ内の共同ユーザを識別することができる。図14Aに示すように、コンテキストハブ管理グラフィカルユーザインタフェース1404は、共同ユーザ要素1414を含む。共同ユーザ要素1414は、コンテキストハブ1416内の共同ユーザを示す。コンテキストハブ管理グラフィカルユーザインタフェース1404は、共同ユーザインジケータ1418を介して共同ユーザをさらに示し得る。上述のように、コンテキストハブシステム116は、共同ユーザ要素1414内にリストされた共同ユーザに基づいて、関連コンテンツを識別することができる。
【0215】
前述のように、コンテキストハブシステム116は、コンテキストハブ1416内のコンテンツの効率的かつユーザフレンドリな管理を可能にする。たとえば、コンテキストハブシステム116は、コンテンツを異なるコンテキストハブに移動し、コンテンツを特定のハブに追加し、コンテキストハブ1416内のコンテンツに対して他のアクションを実行し得る。たとえば、図14Aに示すように、コンテキストハブシステム116は、コンテキストハブメニュー要素1412内のコンテキストハブ上で関連コンテンツ1426aをユーザがドラッグアンドドロップすることを検出することに基づいて、コンテキストハブメニュー要素1412内にリストされた他のコンテキストハブのいずれかに、関連コンテンツ1426aを移動させ得る。
【0216】
コンテキストハブシステム116はまた、コンテキスト関連コンテンツの検索を可能にする。図14Aに示すように、コンテキストハブ管理グラフィカルユーザインタフェース1404は、検索要素1406および高度検索要素1408を含む。コンテキストハブシステム116は、コンテキストハブメニュー要素1412内またはコンテキストハブ1416内にリストされたすべてのコンテキストハブにわたってコンテンツを検索することができる。例えば、コンテキストハブシステム116は、高度検索要素1408を介して入力された高度検索要件に基づいて、検索の要件を指定することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、検索を特定のコンテキストハブに制限することができる。さらに、コンテキストハブシステム116は、検索要件を利用して、検索をコンテキストハブ内の特定のサードパーティソースに制限することができる。例えば、コンテキストハブシステム116は、サードパーティインスタントメッセージングサービスからコンテンツを検索することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、検索を、コンテキストハブ1416と共同するユーザに制限することができる。例えば、コンテキストハブシステムは、特定の共同ユーザ(例えば、Timmy)に関連付けられたコンテンツの検索を実行することができる。コンテキストハブシステム116はまた、時間期間に基づいて検索制限を定義し得る。コンテキストハブシステム116は、1つ以上の実施形態において、これらのおよび他の検索制限を実装し得る。
【0217】
図14Aに示されるコンテキストハブ管理グラフィカルユーザインタフェース1404はまた、フォーカスモード要素1410を含む。コンテキストハブシステム116は、コンテキストハブ内でフォーカスモードを起動(アクティブ化)することができる。特に、コンテキストハブシステム116は、コンテキストハブ1416内でアクセスされるコンテンツを、コンテキストハブのトピックに関連付けられたコンテンツに制限することができる。一実施形態では、コンテキストハブシステム116は、関連リンクおよび/または関連リンクソースを含むホワイトリストを生成することができる。加えて、または代替として、コンテキストハブシステム116は、対応するコンテキストモデルに基づいて、コンテキストハブの関連コンテンツを決定する。図14Aに示すように、ユーザがフォーカスモード要素1410を選択したことを検出することに基づいて、コンテキストハブシステム116は、コンテキストハブ1416内からの無関係なコンテンツへのアクセスを制限する。いくつかの実施形態では、コンテキストハブシステム116は、コンテキストハブに無関係であるか、または異なるコンテキストハブに関連付けられたサードパーティソースからのコンテンツへのアクセスをブロックする。例えば、ユーザが「パーソナル」コンテキストハブに関連するウェブソースに対応するURLを入力したと判定することに基づいて、コンテキストハブシステム116は、ウェブページをブロックすることができる。加えて、または代替として、コンテキストハブシステム116は、ユーザが無関係なコンテンツへのアクセスを要求していることを示す通知を生成し、提示することができる。通知は、無関係なコンテンツを継続するか、またはコンテキストハブ1416に戻るためのオプションを提示することができる。
【0218】
図14Aに示すように、コンテキストハブ管理グラフィカルユーザインタフェース1404は、コンテキストハブ履歴1420を含む。概して、コンテキストハブ履歴1420は、コンテキストハブ1416内でアクセスされた履歴コンテンツをリストする。例えば、ウェブ閲覧履歴と同様に、コンテキストハブ履歴1420は、アクセスされたコンテンツに関するデータを収集する。たとえば、コンテキストハブ履歴1420は、コンテンツタイトルおよび訪問時間などの関連データを記憶および表示することができる。少なくとも1つの実施形態では、コンテキストハブ履歴1420は、コンテキストハブ1416を介してアクセスされたが、コンテキストハブ1416からナビゲートされた、閉じられた、または別のコンテキストハブに移動されたコンテンツを含む。図14Aに示すように、コンテキストハブ履歴1420は、履歴ウェブページ及びメディアコンテンツアイテム(例えば、文書)を含む。
【0219】
図14Aに示すコンテキストハブ管理グラフィカルユーザインタフェース1404は、最近閉じられたコンテンツ1422も含む。最近閉じられたコンテンツ1422は、コンテキストハブ1416において閉じられたコンテンツを表示する。コンテキストハブシステム116は、最近閉じられたコンテンツ1422内のコンテンツを追加または再び開くことができる。例えば、ユーザは、最近閉じられたコンテンツ1422内からコンテキストハブ1416へコンテンツを選択および/またはドラッグアンドドロップすることができる。さらに、コンテキストハブシステム116は、ユーザが最近閉じられたコンテンツをコンテキストハブメニュー要素1412内のコンテキストハブにドラッグアンドドロップすることに基づいて、最近閉じられたコンテンツを、異なるコンテキストハブに直接移動することができる。
【0220】
図14Aに示すコンテキストハブ管理グラフィカルユーザインタフェース1404は、関連リンク1424も含む。関連リンク1424は、コンテキストハブシステム116がコンテキストハブ1416にコンテキスト的に関連すると決定するリンクを表示する。関連リンク1424は、ユーザがサードパーティソースを介して送信または受信したリンクを含むことができる。たとえば、コンテキストハブシステム116は、関連リンク1424内に、ユーザが電子メールメッセージングシステム、インスタントメッセージングシステム、または任意の他のサードパーティソースを介して受信したコンテキスト関連データへのリンクをリストし得る。さらに、関連リンク1424は、ユーザが電子メールメッセージングシステム、インスタントメッセージングシステム、または他のサードパーティソースを介して送信したリンクを含むことができる。
【0221】
コンテキストハブシステム116は、サードパーティソースからのコンテンツをコンテキストハブに追加することに加えて、コンテキストハブ管理グラフィカルユーザインタフェース1404を介したサードパーティソースへのアクセスを容易にすることができる。特に、コンテキストハブ管理グラフィカルユーザインタフェース1404は、コンテキストハブに関連する、サードパーティソースによって編成されたコンテンツを提示する様々な要素および特徴を含む。例えば、コンテキストハブ管理グラフィカルユーザインタフェース1404は、カレンダー要素1428と、インスタントメッセージング要素1429と、電子メッセージング要素1430とを含む。少なくとも1つの実施形態では、カレンダー要素1428、インスタントメッセージング要素1429、および電子メッセージング要素1430は、コンテキストハブに追加されるコンテンツを含む(例えば、図14Aに示される電子メール1426c)。たとえば、コンテキストハブシステム116は、ユーザが1つ以上のサードパーティメッセージングシステム内で3つの新しいメッセージを受信したと判定することができる。3つの新しいメッセージがコンテキストハブ1416に関連すると判定することに基づいて、コンテキストハブシステム116は、メッセージをコンテキストハブ1416に追加し、インスタントメッセージング要素1429を介して3つの新しいメッセージをユーザに通知する。
【0222】
加えて、または代替として、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース1404内に、コンテキストハブ1416に追加されていないサードパーティソースからのコンテンツを提示する要素を含む。例えば、少なくとも1つの実施形態では、カレンダー要素1428、インスタントメッセージング要素1429、及び電子メッセージング要素1430は、コンテキストハブ1416に関連するがまだ追加されていないコンテンツを含む。たとえば、カレンダー要素1428は、コンテキストハブシステム116がコンテキストハブ1416に関連する可能性が高いと判定するカレンダーイベントについての通知を含むことができる。カレンダー要素1428の選択の検出に基づいて、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース1404を介してカレンダーイベントを提示することができる。ユーザは、カレンダーイベントをコンテキストハブ1416に追加することを決定することができる。
【0223】
コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース1404を更新して、サードパーティソースアクセス要素を提示することができる。たとえば、カレンダー要素1428、インスタントメッセージング要素1429、または電子メッセージング要素1430のうちのいずれか1つのユーザ選択を検出することに基づいて、コンテキストハブシステム116は、対応するサードパーティソースアクセス要素を提示することができる。たとえば、コンテキストハブシステム116は、図14Aに示されるインスタントメッセージング要素1429のユーザ選択に基づいて、サードパーティソースアクセス要素を提示することができる。図14Bは、インスタントメッセージング要素1429の選択に基づいて提示される例示的なサードパーティソースアクセス要素を示す。特に、図14Bは、1つ以上の実施形態による、1つ以上のサードパーティインスタントメッセージングシステムに関連するコンテンツを表示するサードパーティソースアクセス要素1432を示す。
【0224】
一般に、サードパーティソースアクセス要素1432は、1つ以上のサードパーティソース内のコンテンツへのユーザアクセスを提供する。たとえば、サードパーティソースアクセス要素1432は、特定のコンテキストハブに固有の、またはコンテキストハブに関係しないコンテンツを表示することができる。図14Bに示すサードパーティソースアクセス要素1432は、特定のコンテキストハブに関するコンテンツを提示する。
【0225】
上述のように、サードパーティソースアクセス要素1432は、1つ以上のサードパーティソースからの情報を含むことができる。少なくとも1つの実施形態では、サードパーティソースアクセス要素1432は、サードパーティソースのタイプに固有の情報(例えば、インスタントメッセージングソース、電子メールソースなど)を提示し、したがって、ユーザが同じタイプの複数のサードパーティソース内にアカウントを維持する場合、コンテキストハブシステム116は、サードパーティソースアクセス要素1432内の複数のサードパーティソースからのコンテンツを提示することができる。少なくとも1つの他の実施形態では、サードパーティソースアクセス要素1432は、単一のサードパーティソースからのコンテンツを提示する。いずれにしても、コンテキストハブシステム116は、サードパーティソースアクセス要素1432内に、複数のユーザアカウントに関連付けられたコンテンツを提示することができる。たとえば、図14Bに示すように、サードパーティソースアクセス要素1432は、ユーザアカウント1436a~1436bに関連付けられたコンテンツを含む。コンテキストハブシステム116は、ユーザアカウント1436a~1436bのうちの1つのユーザ選択に基づいて、ユーザアカウント1436a~1436bのうちのどれに対してサードパーティソースアクセス要素1432がコンテンツを表示するかを指定することができる。
【0226】
図14Bに示すように、サードパーティソースアクセス要素1432は、インスタントメッセージプレビュー要素1434とリンクプレビュー要素1442とを含む。一般に、インスタントメッセージプレビュー要素1434は、インスタントメッセージングサードパーティソース内で送信されるインスタントメッセージなどのコンテンツを表示する。リンクプレビュー要素1442は、インスタントメッセージングサードパーティソース内で送信されたリンクに関する情報を表示する。図14Bは、1つ以上のサードパーティインスタントメッセージングシステムに固有のコンテンツを表示するサードパーティソースアクセス要素1432を示すが、コンテキストハブシステム116は、任意のタイプのサードパーティソースに固有のサードパーティソースアクセス要素を生成することができる。
【0227】
インスタントメッセージプレビュー要素1434は、会話1440a~1440cを含む。会話1440a~1440cは、1つ以上の指定されたユーザとのインスタントメッセージの交換を含む。例えば、会話1440aは、ユーザTimmy Kleinとのインスタントメッセージの交換を含む。会話1440bは、調査チームチャット内のユーザ間のインスタントメッセージの交換を含む。会話1440cは、ユーザMelindaおよびBradを含む。図14Bにさらに示されるように、インスタントメッセージプレビュー要素1434は、未読メッセージを示すことができる。たとえば、コンテキストハブシステム116は、未読メッセージを示す通知1438a~1438cを提示することができる。インスタントメッセージプレビュー要素1434はまた、拡張チャットプレビュー要素1446を含み得る。拡張チャットプレビュー要素1446のユーザ選択の検出に基づいて、コンテキストハブシステム116は、サードパーティインスタントメッセージングシステムからの追加の会話を提示することができる。1つ以上の実施形態では、コンテキストハブシステム116は、ユーザが選択されたメッセージまたは会話をコンテキストハブに選択し、ドラッグし、ドロップしたことを検出することに基づいて、コンテキストハブ内の個々のメッセージまたは会話全体を含むことができる。
【0228】
図14Bに示すように、サードパーティソースアクセス要素1432は、リンクプレビュー要素1442を含むこともできる。上述のように、リンクプレビュー要素1442は、サードパーティソース内で送信されたリンクに関連するデータを表示する。例えば、リンクプレビュー要素1442は、リンク1444a~1444bについて、送信ユーザ、受信者、対応する会話、およびリンクURLを含むデータを含む。コンテキストハブシステム116はまた、ユーザが追加のリンクのためのデータを視聴することができる拡張リンクプレビュー要素1448を提供することができる。リンク1444a~1444bの1つの選択を検出することに基づいて、コンテキストハブシステム116は、選択されたリンクをコンテキストハブに追加することができる。
【0229】
図7図14B、対応するテキスト、および実施例は、コンテキストハブに情報を追加するためのいくつかの異なるシステムおよびデバイスを提供する。前述に加えて、本開示の実施形態は、特定の結果を達成するための方法における動作を含むフローチャートに関しても説明することができる。たとえば、図15は、本開示の1つ以上の実施形態による例示的な方法のフローチャートを示す。図15に関連して説明される方法は、より少ないまたはより多い動作で実行されてもよく、または動作は異なる順序で実行されてもよい。加えて、本明細書に記載される動作は、互いに並行して、または同じもしくは同様の動作の異なるインスタンスと並行して、繰り返され得るか、または実行され得る。
【0230】
図15は、関連情報へのリンクをコンテキストハブに追加するための1つの例示的な方法1500のフローチャートを示す。方法1500は、コンテキストハブを提供する動作1502を含む。特に、動作1502は、グラフィカルユーザインタフェース内に、複数のサードパーティソースに関連付けられたコンテンツを含むコンテキストハブを提供することを含む。1つ以上の実施形態では、動作1506は、グラフィカルユーザインタフェース内で、ユーザに関連付けられたクライアントデバイスにおいて、複数のサードパーティソースに関連付けられたコンテンツを含むコンテキストハブを提供することを含む。少なくとも1つの実施形態では、複数のサードパーティソースは、デジタルメッセージングソース、デジタルウェブソース、デジタルメディア管理ソース、またはカレンダーソースのうちの少なくとも1つを含む。
【0231】
方法1500はまた、コンテキストハブに対応するコンテキストモデルを取得する動作1504を含む。特に、動作1504は、複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、コンテキストハブに対応するコンテキストモデルを取得することを含む。少なくとも1つの実施形態では、動作1504は、トレーニングされた機械学習モデルを利用することによって、複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、コンテキストハブに対応するコンテキストモデルを取得することを含む。1つ以上の実施形態では、複数のサードパーティソースに関連付けられたコンテキスト情報は、複数のユーザの各々と複数のサードパーティソースの各々との間の関連付け、または複数のサードパーティソースのコンテンツに関連する情報を含む。さらに、動作1504は、トレーニングされた機械学習モデルへの入力として、複数のサードパーティソースに関連付けられたコンテキスト情報を利用することと、トレーニングされた機械学習モデルからの出力として、コンテキストモデルを受信することとをさらに含み得る。
【0232】
動作1504は、事前生成されたコンテキストモデルのリポジトリ内のコンテキストモデルの特性を解析することと、事前生成されたコンテキストモデルの特性およびコンテキスト情報に基づいて、最も近い一致する事前生成されたコンテキストモデルを決定することとを含む追加の動作を含み得る。
【0233】
方法1500は、サードパーティソースから関連情報を識別する動作1506を含む。特に、動作1506は、取得されたコンテキストモデルを使用して、複数のサードパーティソース以外のサードパーティソースからの関連情報を識別することを含む。1つ以上の実施形態では、動作1506は、クライアントデバイスから、サードパーティソースのアクセスを示す通知を受信することと、コンテキストモデルを使用して、サードパーティソースから関連情報を識別することとを含む。
【0234】
方法1500は、関連情報へのリンクをコンテキストハブに追加する動作1508を含む。特に、動作1508は、コンテキストハブのグラフィカルユーザインタフェース内の関連情報へのリンクを追加することを含む。
【0235】
方法1500は、コンテキストハブを複数のユーザに関連付ける追加の動作を含むことができる。さらに、方法1500は、コンテキストハブに関連付けられたユーザ定義ルールに基づいてコンテキストモデルを取得する追加の動作を含むことができる。少なくとも1つの実施形態では、方法1500は、コンテキストハブに関連付けられたユーザ定義ルールに基づいてコンテキストモデルを生成することによってコンテキストモデルを取得する動作を含む。さらに、方法1500は、ウェブページがコンテキストハブに関連するというユーザからのインディケーションを受信することに基づいて、ウェブページをコンテキストハブに関連付ける追加の動作を含むことができる。
【0236】
さらに、方法1500は、関連情報がコンテキストハブに関連するかどうかを示すユーザ入力を受信することと、ユーザ入力に基づいて、生成されたコンテキストモデルのパラメータを修正することとによって、生成されたコンテキストモデルを更新する追加の動作を含むことができる。
【0237】
方法1500は、関連情報がコンテキストハブに関連するかどうかを示すユーザ入力を受信することと、ユーザ入力に基づいてコンテキストモデルのパラメータを修正することとによって、コンテキストモデルを更新する追加の動作を含むことができる。
【0238】
1つ以上の実施形態では、関連情報を識別することは、コンテキストモデルを使用して、コンテキストハブに関連付けられた複数のサードパーティソースからサードパーティメッセージングソースにおいて受信されたメッセージが、関連情報を含むことを判定することを含み、関連情報にリンクを追加することは、サードパーティソース内のメッセージを指すリンクを追加することを含む。
【0239】
さらに、1つ以上の実施形態では、関連情報を識別することは、コンテキストモデルを使用して、コンテキストハブに現在関連付けられていないウェブページ内のテキストが関連情報を含むことを判定することを含み、関連情報にリンクを追加することは、ウェブページを指すリンクを追加することを含む。
【0240】
例示的な実施形態では、システムは、少なくとも1つのプロセッサと、少なくとも1つのプロセッサによって実行されると、システムに、グラフィカルユーザインタフェース内に、複数のサードパーティソースに関連付けられたコンテンツを含むコンテキストハブを提供することと、トレーニングされた機械学習モデルを利用することによって、複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、コンテキストハブに対応するコンテキストモデルを取得することと、コンテキストモデルを使用して、複数のサードパーティソース以外のサードパーティソースからの関連情報を識別することと、コンテキストハブのグラフィカルユーザインタフェース内の関連情報へのリンクを追加することとを行わせる命令を含む非一時的コンピュータ可読媒体とを含む。同じまたは追加の実施形態では、複数のサードパーティソースは、デジタルメッセージングソース、デジタルウェブソース、デジタルメディア管理ソース、またはカレンダーソースのうちの少なくとも1つを含む。同じまたは追加の実施形態では、システムは、少なくとも1つのプロセッサによって実行されると、システムに、コンテキストハブを複数のユーザに関連付けさせる命令をさらに含む。同じまたは追加の実施形態では、システムは、少なくとも1つのプロセッサによって実行されると、複数のサードパーティソースに関連付けられたコンテキスト情報を、トレーニングされた機械学習モデルへの入力として利用することと、トレーニングされた機械学習モデルからの出力としてコンテキストモデルを受信することとによって、システムにコンテキストモデルを生成させる命令をさらに含む。同じまたは追加の実施形態では、システムは、少なくとも1つのプロセッサによって実行されると、関連情報がコンテキストハブに関連するかどうかを示すユーザ入力を受信することと、ユーザ入力に基づいてコンテキストモデルのパラメータを修正することとによって、システムにコンテキストモデルを更新させる命令をさらに含む。
【0241】
別の例示的な実施形態では、方法は、グラフィカルユーザインタフェース内に、複数のサードパーティソースに関連付けられたコンテンツを含むコンテキストハブを提供することと、複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、コンテキストハブに対応するコンテキストモデルを取得することと、取得されたコンテキストモデルを使用して、複数のサードパーティソース以外のサードパーティソースからの関連情報を識別することと、コンテキストハブのグラフィカルユーザインタフェース内の関連情報にリンクを追加することとを含む。同じまたは追加の実施形態では、複数のサードパーティソースは、デジタルメッセージングソース、デジタルウェブソース、デジタルメディア管理ソース、またはカレンダーソースのうちの少なくとも1つを含む。同じまたは追加の実施形態では、方法は、コンテキストハブを複数のユーザに関連付けることをさらに含む。同じまたは追加の実施形態では、複数のサードパーティソースに関連付けられたコンテキスト情報は、複数のユーザの各々と複数のサードパーティソースの各々との間の関連付け、または複数のサードパーティソースのコンテンツに関連する情報を含む。同じまたは追加の実施形態では、方法は、トレーニングされた機械学習モデルへの入力として、複数のサードパーティソースに関連付けられたコンテキスト情報を利用することと、トレーニングされた機械学習モデルからの出力としてコンテキストモデルを受信することとによって、コンテキストモデルを取得することをさらに含む。同じまたは追加の実施形態では、方法は、事前生成されたコンテキストモデルのリポジトリ内のコンテキストモデルの特性を解析することと、事前生成されたコンテキストモデルの特性およびコンテキスト情報に基づいて、最も近い一致する事前生成されたコンテキストモデルを決定することとによって、コンテキストモデルを取得することをさらに含む。同じまたは追加の実施形態では、方法は、コンテキストハブに関連付けられたユーザ定義ルールに基づいてコンテキストモデルを取得することをさらに含む。同じまたは追加の実施形態では、関連情報を識別することは、コンテキストモデルを使用して、コンテキストハブに関連付けられた複数のサードパーティソースからサードパーティメッセージングソースにおいて受信されたメッセージが関連情報を含むことを決定することを含み、関連情報にリンクを追加することは、サードパーティソース内のメッセージを指すリンクを追加することを含む。同じまたは追加の実施形態では、関連情報を識別することは、コンテキストモデルを使用して、コンテキストハブに現在関連付けられていないウェブページ内のテキストが関連情報を含むことを判定することを含み、関連情報にリンクを追加することは、ウェブページを指すリンクを追加することを含む。同じまたは追加の実施形態では、方法は、ユーザから、ウェブページがコンテキストハブに関連するというインディケーションを受信することに基づいて、ウェブページをコンテキストハブに関連付けることをさらに含む。
【0242】
別の例示的な実施形態では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、グラフィカルユーザインタフェース内に、およびユーザに関連付けられたクライアントデバイスにおいて、複数のサードパーティソースに関連付けられたコンテンツを含むコンテキストハブを提供することと、複数のサードパーティソースに関連付けられたコンテキスト情報に少なくとも部分的に基づいて、コンテキストハブに対応するコンテキストモデルを取得することと、クライアントデバイスから、サードパーティソースのアクセスを示す通知を受信することと、コンテキストモデルを使用して、サードパーティソースからの関連情報を識別することと、コンテキストハブのグラフィカルユーザインタフェース内の関連情報へのリンクを追加することと、を行わせる命令を含む。同じまたは追加の実施形態では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、コンテキストハブに関連付けられたユーザ定義ルールに基づいてコンテキストモデルを生成することによってコンテキストモデルを取得させる命令をさらに含む。同じまたは追加の実施形態では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、コンテキストモデルを使用して、コンテキストハブに関連付けられた複数のサードパーティソースからサードパーティメッセージングソースにおいて受信されたメッセージが関連情報を含むと判定することによって関連情報を識別させることと、サードパーティソース内のメッセージを指すリンクを追加することによって関連情報にリンクを追加させることとを行わせる命令をさらに含む。同じまたは追加の実施形態では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、コンテキストモデルを使用して、コンテキストハブに現在関連付けられていないウェブページ内のテキストが関連情報を含むと判定することによって関連情報を識別させることと、ウェブページを指すリンクを追加することによって関連情報にリンクを追加させることとを行わせる命令をさらに含む。同じまたは追加の実施形態では、非一時的コンピュータ可読媒体は、少なくとも1つのプロセッサによって実行されると、コンピューティングデバイスに、ウェブページがコンテキストハブに関連するというインディケーションをユーザから受信することに基づいて、ウェブページをコンテキストハブに関連付けさせる命令をさらに含む。
【0243】
共同ツールとしてのコンテキストハブ
コンテキストハブシステム116は、コンテキストハブ内に接続されたユーザ間の共同(コラボレーション)を容易にすることができる。例えば、コンテキストハブシステム116は、コンテキストハブ内の共同ユーザをリンクすることができる。コンテキストハブシステム116は、コンテキストハブ内のコンテンツアイテムの視聴状態を提供して、特定の共同ユーザがウェブアクセス可能なコンテンツを見ていないか、現在視聴しているか、または見たかを示すことができる。グループ内のサードパーティソースからのコンテンツの共有を容易にすることに加えて、コンテキストハブシステム116は、コンテキストハブ内から個々のユーザにコンテンツを効率的に送信することができる。
【0244】
コンテキストハブシステム116はまた、共同するユーザがウェブアクセス可能なコンテンツを同時に視聴し、それと対話する、リアルタイム共有閲覧体験を作成し得る。特に、サードパーティソースから報告されたイベントを監視することによって、コンテキストハブシステム116は、共同ユーザのブラウザ上でイベントを複製することができる。したがって、コンテキストハブシステム116は、事前に記録されたスクリーン共有ビデオではなく、実際のウェブコンテンツを、共有された閲覧体験に参加するユーザに提示する。
【0245】
コンテキストハブシステム116は、コンテキストハブを介して追加の機能を提供する。例えば、コンテキストハブシステム116は、ウェブアクセス可能なコンテンツの順序付けられたシーケンスを含むプレゼンテーションを生成することができる。さらに、コンテキストハブシステム116は、プライベートウェブのインデックス付けも可能にする。例えば、コンテキストハブシステム116は、個々のユーザ、共同ユーザのグループ、さらには編成全体に固有(特有)のインデックスを生成することができる。コンテキストハブシステム116はさらに、ウェブ検索におけるプライベートウェブインデックス付けを活用し、コンテキストモデルを構築することができる。
【0246】
上述のように、コンテキストハブシステム116は、共同ユーザが様々なサードパーティソースからのコンテンツを見たか、または現在視聴しているかを示すことによって、ユーザ間の共同を容易にすることができる。図16は、コンテキストハブに関連付けられた動作を実行するコンテキストハブシステム116のシーケンス図を示す。より具体的には、図16は、1つ以上の実施形態による、視聴状態を更新するコンテキストハブシステム116を示す。
【0247】
図16に示すように、コンテキストハブシステム116は、コンテキストハブをクライアントデバイスに関連付けられたユーザアカウントに関連付ける(1602)。特に、コンテキストハブシステム116は、コンテキストハブを作成し、それをクライアントデバイス108aおよびクライアントデバイス108bに関連付けられたユーザアカウントにリンクすることができる。たとえば、コンテキストハブシステム116は、クライアントデバイス108aおよびクライアントデバイス108bに関連付けられたユーザアカウントがコンテキストハブ内のコンテンツにアクセスし、編集し、そうでなければ修正することを可能にする一組の許可(許可のセット)をコンテキストハブに関連付けることができる。例えば、コンテキストハブシステム116は、クライアントデバイス108aに関連付けられたユーザアカウントがコンテキストハブにコンテンツを追加することを可能にすることができる。
【0248】
クライアントデバイス108aは、コンテンツにアクセスする要求(1604)をサードパーティソース1620に送信することができる。コンテンツにアクセスするための要求(1604)は、サードパーティソース1620によってホストされるコンテンツにアクセスするための要求を含むことができる。例えば、上述のように、クライアントデバイス108aは、クライアントデバイス108a上にインストールされたクライアントアプリケーション110を介して、サードパーティソースにアクセスするための選択可能なオプションを提供することができる。例えば、クライアントアプリケーション110は、インターネットブラウザを含むことができる。クライアントアプリケーション110を介したウェブページのユーザアクセスの検出に基づいて、クライアントデバイス108aは、ウェブアクセス可能コンテンツにアクセスする要求を送信する。
【0249】
クライアントデバイス108aはまた、イベント通知1606をコンテキストハブシステム116に送信し得る。本明細書で使用される場合、「イベント通知」という用語は、イベントの通知を提供するオブジェクトを指す。特に、イベント通知は、イベント(例えば、状態変化またはソース状態変化)が発生したことをクライアントデバイスが識別したことを示すことができる。たとえば、イベント通知は、クライアントデバイス108aがアクションを実行したこと、または状態の変化を識別したことを示すことができる。例えば、図16に示すように、イベント通知1606は、クライアントデバイス108aがサードパーティソース1620へのアクセスを要求したことを示す。コンテキストハブシステム116は、イベント通知1606を記録することができる。
【0250】
図16に示すように、サードパーティソース1620は、ウェブアクセス可能コンテンツ(1608)をクライアントデバイス108aに提供することができる。特に、サードパーティソース1620は、要求されたコンテンツを送信することによって、クライアントデバイス108aからサードパーティソースにアクセスする要求に応答する。例えば、サードパーティソース1620がウェブサーバを備える実施形態では、サードパーティソース1620は、クライアントデバイス108aのクライアントアプリケーション110にウェブページデータを送信することができる。
【0251】
クライアントデバイス108aは、コンテキストハブにコンテンツを追加することを要求する(1610)。特に、クライアントデバイス108aは、サードパーティソースからのウェブアクセス可能なコンテンツをコンテキストハブに追加する。例えば、上述のように、クライアントデバイス108aのクライアントアプリケーション110は、クライアントデバイス106aのユーザがコンテキストハブ内でコンテンツを管理および編成することを可能にするための選択可能なツールおよびオプションを含む1つ以上のグラフィカルユーザインタフェースを提示することができる。クライアントデバイス108aは、グラフィカルユーザインタフェースとのユーザインタラクションに基づいて、コンテキストハブにコンテンツを追加する要求を判定することができる。クライアントデバイス108aは、次いで、要求をコンテキストハブシステム116に送信し得る。
【0252】
コンテキストハブにコンテンツを追加する要求を受信した後、コンテキストハブシステム116は、コンテキストハブにコンテンツを追加する(1612)。特に、コンテキストハブシステム116は、コンテキストハブに対応するデータ構造内にウェブアクセス可能コンテンツを記憶することができる。コンテキストハブ(1612)にコンテンツを追加することによって、コンテキストハブシステム116は、コンテキストハブを介して、クライアントデバイス108aおよびクライアントデバイス108bの両方に関連付けられたユーザアカウントへのコンテンツへのアクセスを許可する。
【0253】
図16にさらに示すように、クライアントデバイス108bは、コンテンツに対するユーザ操作を検出する(1614)。一般に、クライアントデバイス108b上に位置するクライアントアプリケーション110は、コンテキストハブ内にコンテンツを表示する一連のグラフィカルユーザインタフェースを提示することができる。上述のように、一連のグラフィカルユーザインタフェース(例えば、コンテキストハブ管理グラフィカルユーザインタフェース)は、ユーザがコンテキストハブシステム116の機能にアクセスすることを可能にする様々な要素および特徴を提示する。本明細書で使用される場合、「ユーザ操作」という用語は、所与のタスクを達成するために実行される任意のアクションを指す。具体的には、ユーザ操作は、ウェブアクセス可能なコンテンツに向けられたユーザ開始アクションを含む。例えば、ユーザ操作は、ユーザがコンテンツにアクセスまたは視聴すること、ユーザが注釈(例えば、ハイライトまたはコメント)を追加すること、またはユーザがコンテンツのアクセスを閉じるもしくは終了すること、またはユーザがコンテキストハブからコンテンツを除去することを含むことができる。
【0254】
コンテンツに対するユーザ操作を検出することに基づいて、クライアントデバイス108bは、イベント通知1616をコンテキストハブシステム116に送信する。具体的には、イベント通知1616は、クライアントデバイス108bによって検出された特定のユーザ操作を示す。たとえば、クライアントデバイス108bは、コンテキストハブシステム116に、ユーザがコンテンツにアクセスしたこと、コンテンツに注釈を追加したこと、コンテンツを閉じたこと、またはそうでなければコンテキストハブ内のウェブアクセス可能コンテンツと対話したことを示すイベント通知を送信することができる。
【0255】
図16に示すように、コンテキストハブシステム116は、ウェブアクセス可能コンテンツの視聴状態(1618)を更新する。特に、コンテキストハブシステム116は、ユーザ操作を反映するように視聴状態を更新する。例えば、コンテキストハブシステム116は、特定のユーザがコンテンツを視聴していないこと、コンテンツを現在視聴していること、またはコンテンツを見たが現在視聴していないことを示す要素を提供することができる(この場合、要素は、ユーザがコンテンツを最後に視聴した日時を示すことができる)。さらに、コンテキストハブシステム116は、様々なグラフィカルユーザインタフェース要素を提示して、更新された視聴状態を共同ユーザに通知することができる。図示されていないが、コンテキストハブシステム116は、視聴状態以外の他のユーザ操作を反映するようにコンテキストハブ内のコンテンツを更新することができる。たとえば、コンテキストハブシステム116は、ユーザが注釈を残したこと、コンテンツを移動したこと、コンテンツを削除したこと、または何らかの他の動作を実行したことを示すことができる。
【0256】
重要なことに、上記の説明は、コンテキストハブシステム116は、ユーザがサードパーティコンテンツ上で共同することを可能にする方法およびシステムを提供することを例証する。実際、いくつかの従来のシステムは、例えば、内部システムが同じエンティティによって開発され、制御された場合、内部ソース上のいくつかの共同を可能にする。しかしながら、従来のシステムは、独立したサードパーティソースに関して、これらのタイプの共同ツールを提供することに失敗した。したがって、コンテキストハブシステム116は、上記で論じられ、以下でより完全に説明される原理に基づいて、表示状態、注釈、および他の説明される共同機能の特徴をサードパーティソースに提供することに留意されたい。
【0257】
コンテキストハブシステム116は、コンテキストハブマネージャグラフィカルユーザインタフェースを介してグループ共同を容易にすることができる。上述のように、コンテキストハブシステム116は、特定のユーザがコンテキストハブ内のコンテンツにアクセスしていない、現在アクセスしている、または見たが現在アクセスしていないことを共同ユーザに通知するためのグラフィカルユーザインタフェース要素および機能を提供することができる。さらに、コンテキストハブシステム116は、コンテキストハブ内の共同ユーザ間の通信を容易にする。図17A~17Bは、コンテキストハブ内に接続されたユーザ間の共同を容易にするコンテキストハブ管理グラフィカルユーザインタフェースの様々な要素、領域、および特徴を示す。例えば、図17Aは、共同ユーザの活動(アクティビティ)を通信する様々な視聴状態要素を表示するコンテキストハブ管理グラフィカルユーザインタフェースを示す。図17Bは、ユーザが個々の共同ユーザに直接コンテンツを送信することができる通信要素を示す。
【0258】
図17Aは、コンテキストハブ内でリンクされたユーザ間の共同を容易にするコンテキストハブ管理グラフィカルユーザインタフェース1704内の様々な要素および領域を示す。図17Aは、クライアントデバイス1700の画面1702上に表示されるコンテキストハブ管理グラフィカルユーザインタフェース1704を示す。コンテキストハブ管理グラフィカルユーザインタフェース1704は、コンテキストハブ1710に関する情報を表示する。例えば、コンテキストハブ管理グラフィカルユーザインタフェース1704は、グループ空間2261と、プライベート空間1714と、グループ履歴1706と、プライベート履歴1708とを含む。コンテキストハブシステム116はまた、共同ユーザ要素1716を提示して、コンテキストハブ内の共同ユーザの識別情報を示す。
【0259】
図17Aに示すように、コンテキストハブシステム116は、共同ユーザ要素1716およびリストされた共同ユーザ要素1726を介して、コンテキストハブ内の共同ユーザの識別情報を提供する。前述のように、コンテキストハブシステム116は、コンテキストハブを1人以上のユーザに関連付けることができる。より具体的には、コンテキストハブシステム116は、1人以上の追加のユーザを、コンテキストハブ内の共同ユーザとして指定することができる。コンテキストハブ管理グラフィカルユーザインタフェース1704は、共同ユーザを示すために共同ユーザ要素1716を表示する。さらに、図17Bに関して以下でさらに詳細に説明するように、共同ユーザ要素1716内のユーザアイコンは、対話型(インタラクティブ)要素を含むことができる。例えば、共同ユーザ要素1716内のユーザアイコンのユーザ選択を検出することに基づいて、コンテキストハブシステム116は、ユーザプロフィールまたはユーザと選択された共同ユーザとの間の通信などのユーザ情報を提示することができる。共同ユーザ要素1716を提示することに加えて、コンテキストハブシステム116は、リストされた共同ユーザ要素1726を提示することができる。
【0260】
コンテキストハブシステム116は、コンテキストハブの共同ユーザに付与された許可を管理することができる。たとえば、コンテキストハブシステム116は、特定のユーザがコンテキストハブ内のコンテンツを視聴、注釈付け、および/または編集し得ることを決定することができる。コンテキストハブシステム116は、共同ユーザのための許可を割り当て、管理する権限を有する管理ユーザを指定することができる。コンテキストハブシステム116は、ユーザがコンテキストハブ内のコンテンツを視聴してもよいが、注釈付けまたは編集することはできない視聴権限にユーザを制限することができる。コンテキストハブシステム116はまた、ユーザがコンテキストハブ内のコンテンツを視聴し、注釈を付けることを可能にする注釈権限にユーザを制限することができるが、ユーザは、コンテキストハブ内のコンテンツを移動、追加、または削除することができない。少なくとも1つの実施形態では、コンテキストハブシステム116は、ユーザがコンテキストハブ内のコンテンツを追加、削除、または他の方法で編集することができる1人以上の共同ユーザに編集権限を付与することができる。
【0261】
概して、コンテキストハブシステム116は、コンテンツをサブカテゴリに編成することができる。特に、コンテキストハブシステム116は、コンテキストハブをグループ共有空間と個々のプライベート空間とに分割することができる。コンテキストハブシステム116は、特定のユーザ(例えば、作成ユーザ)へのアクセスが制限されているプライベートコンテンツのために、共同ユーザとサブカテゴリとの間の共有コンテンツのためのサブカテゴリを生成することができる。図17Aに示すように、コンテキストハブシステム116は、コンテキストハブ1710をグループ空間1712とプライベート空間1714とに分割する。一般に、グループ空間1712は、すべての共同ユーザがアクセス可能な共有コンテンツリンク1722a~1722bを表示する。一方、プライベート空間1714は、ユーザ(例えば、「Johnny Duke」)のみがアクセス可能であり、共同ユーザに隠されているプライベートコンテンツリンク1724a~1724bを表示する。共有コンテンツリンク1722a~1722bおよびプライベートコンテンツリンク1724a~1724bの両方は、コンテキストハブ1710内に記憶され、コンテキストに関連することができる。
【0262】
加えて、または代替として、コンテキストハブシステム116は、コンテンツをコンテンツに基づいてサブカテゴリに編成することができる。特に、コンテキストハブシステム116は、グループ共有空間および個々のプライベート空間内のコンテンツをサブカテゴリにさらに編成することができる。代替的に、コンテキストハブシステム116はコンテキストハブがグループ共有空間および個々のプライベート空間を含まないとき、コンテキストハブのためのサブカテゴリを生成することができる。特に、コンテキストハブシステム116は、コンテキストモデルを利用して、コンテキストハブ内のコンテンツをコンテキスト関連サブカテゴリに編成することができる。例えば、コンテキストハブシステム116は、「survey project(調査プロジェクト)」コンテキストハブ内のコンテンツを、調査例、一般的な調査アウトライン、または任意の他のタイプの検出されたサブカテゴリを含むサブカテゴリに編成することができる。
【0263】
コンテキストハブ管理グラフィカルユーザインタフェース1704は、ユーザが共同ユーザとコンテンツを迅速かつ効率的に共有することを可能にする。特に、コンテキストハブシステム116は、プライベートコンテンツを共有コンテンツに変換することができ、その逆も可能である。例えば、ユーザがプライベートコンテンツリンク1724aをプライベート空間1714からグループ空間1712に選択し、ドラッグし、ドロップしたことを検出することに基づいて、コンテキストハブシステム116は、プライベートコンテンツリンク1724aをグループ空間1712に追加し、プライベートコンテンツリンク1724aを共同するユーザと共有する。
【0264】
コンテキストハブシステム116は、プライベート空間1714および/またはグループ空間1712にコンテンツを追加するための他の方法を提供する。少なくとも1つの実施形態では、コンテキストハブシステム116は、URL検索要素1728とのユーザインタラクションから生じる新しいコンテンツを、デフォルトでプライベート空間1714に追加する。一実施形態では、コンテキストハブシステム116は、グループ空間閲覧要素(例えば、URL検索要素1728の隣に配置されたアイコン)を提供することができる。グループ空間閲覧要素のユーザ選択に基づいて、コンテキストハブシステム116は、URL検索要素1728とのユーザインタラクションから生じるコンテンツを切り替えて、グループ空間1712に自動的に追加してもよい。
【0265】
少なくとも1つの実施形態では、コンテキストハブシステム116は、共有閲覧に基づいてグループ空間1712にコンテンツを追加する。例えば、図17Aに示すように、コンテキストハブシステム116は、共有閲覧要素1732を提示する。共有閲覧要素1732の検出された選択に基づいて、コンテキストハブシステム116は、共同ユーザがウェブアクセス可能コンテンツを同時に視聴および対話することができる共有閲覧体験を生成および共有する。図18および図19、ならびに対応する説明は、共有閲覧に関する追加の詳細を提供する。
【0266】
図17Aに示すように、コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェース1704を介して視聴状態を示す視聴通知を提示することができる。例えば、コンテキストハブシステム116は、視聴通知を、コンテキストハブ内の特定のコンテンツと共に提示することができる。少なくとも1つの実施形態では、視聴通知は、「見られていない(not seen)」アイコン、「現在(present)」アイコン、および「見られた(seen)」アイコンを含む。「見られない」アイコンは、ユーザがまだコンテンツにアクセスしていないことを反映する。「現在」アイコンは、ユーザが現在コンテンツを視聴またはアクセスしていることを反映する。「見られた」アイコンは、ユーザがアクセスしたが、現在コンテンツを視聴していないことを反映する。
【0267】
例示するために、図17Aでは、コンテキストハブシステム116は、ユーザアイコンを太い境界で提示することによって、ユーザが現在コンテンツを視聴していることを示すことができる。例えば、コンテキストハブ管理グラフィカルユーザインタフェース1704は、ユーザ「TK」および「KS」が現在対応する共有コンテンツを視聴またはアクセスしていることを示すために、共有コンテンツリンク1722aの隣に現在のアイコン1718a~1718bを表示する。同様に、共有コンテンツリンク1722bの隣の現在のアイコン1718eは、ユーザ「ML」が対応する共有コンテンツを現在視聴していることを示す。
【0268】
図17Aに示すように、コンテキストハブシステム116は、ユーザがコンテンツを見たが現在は視聴していないことを示すために、見られた(seen)アイコン1720a~1720dを提示する。例えば、見られたアイコン1720a~1720dは、破線の境界を有するユーザアイコンを含むことができる。図示のように、コンテキストハブシステム116は、ユーザ「ML」が共有コンテンツリンク1722aに対応する共有コンテンツを見たが、現在は視聴していないことを示し、ユーザ「KS」、「ML」、および「BE」は、共有コンテンツリンク1722bに対応する共有コンテンツを見たが、現在は視聴していないことを示す。
【0269】
上述のように、コンテキストハブシステム116は、ユーザがコンテキストハブ内のコンテンツにまだアクセスしていないことを示すこともできる。いくつかの実施形態では、コンテキストハブシステム116は、「見られていない」アイコンを提示する。他の実施形態では、図17Aに示すように、コンテキストハブシステム116は、ユーザのアイコンをコンテンツに関連付けないことによって、ユーザがまだコンテンツにアクセスしていない(たとえば、「見られていない」)ことを示す。例えば、コンテキストハブシステム116は、ユーザ「BE」が共有コンテンツリンク1722aと連動して「BE」ユーザアイコンを除外することによって、共有コンテンツリンク1722aを選択していないことを示す。
【0270】
コンテキストハブシステム116は、グループ履歴とプライベート履歴とを別々に記録することができる。図17Aに示すように、コンテキストハブシステム116は、グループ履歴1706およびプライベート履歴1708を提示する。少なくとも1つの実施形態では、コンテキストハブシステム116は、共同ユーザがグループ空間1712内からコンテンツをナビゲートまたは閉じたことを検出することに基づいて、コンテンツをグループ履歴1706に追加する。同様に、コンテキストハブシステム116は、ユーザがプライベート空間1714内からコンテンツをナビゲートまたは閉じたことを検出することに基づいて、コンテンツをプライベート履歴1708に追加する。
【0271】
図17Aにさらに示すように、コンテキストハブシステム116は、検索要素1730とのユーザインタラクションに基づいて検索を実行することができる。特に、コンテキストハブシステム116は、コンテキストハブのコンテンツを検索することができる。さらに、コンテキストハブシステム116は、グループ空間1712および/またはプライベート空間1714内のコンテンツへの検索を制限することができる。コンテキストハブシステム116はまた、グループおよび/またはプライベート履歴の検索を行うことができる。
【0272】
図17Aには示されていないが、コンテキストハブシステム116は、様々な他のサブカテゴリを使用してコンテキストハブ内のコンテンツを編成することができる。たとえば、グループおよびプライベートサブカテゴリの代わりに、またはそれに加えて、コンテキストハブシステム116は、コンテンツをコンテンツベースのサブカテゴリに編成することができる。例示するために、コンテキストハブシステム116は、コンテキストハブ1710を、調査研究に関するコンテンツのためのサブカテゴリと、調査例に関するコンテンツのための追加のサブカテゴリとに分割し得る。コンテキストハブシステム116は、共有可能なグループコンテンツまたは個々のプライベートコンテンツを含むものとして、サブカテゴリをさらに指定することができる。前述のように、コンテキストハブシステム116は、異なる共同ユーザおよび許可をサブカテゴリの各々に関連付けることができる。例えば、コンテキストハブシステム116は、共同ユーザTimmyに、および調査プロジェクトコンテキストハブ1710内で、「調査研究」サブカテゴリ内の視聴許可、「調査例」サブカテゴリ内の編集許可、および「模擬調査(mock surveys)」サブカテゴリからの許可なし(すなわち、共同ユーザとしてのTimmyを完全に除外する)を付与することができる。
【0273】
共同ユーザのグループへのコンテンツの共有を容易にすることに加えて、コンテキストハブシステム116は、個々のユーザにコンテンツを送信することもできる。図17Bは、直接メッセージを個々の共同ユーザに送信するためにコンテキストハブシステム116によって提示される例示的な通信要素1740を示す。特に、コンテキストハブシステムは、通信要素1740とのインタラクションに基づいて個々のユーザにコンテンツを送信することができる。図示のように、通信要素1740は、メッセージコンテンツ要素1742と、サードパーティメッセージングソースアイコン1746a~1746bと、コンテキストハブアイコン1748と、追加のソースアイコン1750とを含む。
【0274】
コンテキストハブシステム116は、コンテキストハブ管理グラフィカルユーザインタフェースの共同ユーザ要素1716内にリストアップされた共同ユーザアイコン1744a~1744dとのユーザインタラクションに基づいて、通信要素1740を提示し得る。少なくとも1つの実施形態では、コンテキストハブシステム116は、ユーザが共同ユーザ要素内の共同ユーザアイコン1744a~1744dの1つにコンテンツをドラッグしたことを検出することに基づいて、通信要素1740を提示する。例えば、図17Bに示すように、コンテキストハブシステム116は、ユーザがコンテキストハブから共同ユーザアイコン1744dにコンテンツをドラッグしたことを検出することに基づいて、通信要素1740を提示する。したがって、コンテキストハブシステム116は、共同ユーザアイコン1744dに対応するユーザアカウントにコンテンツを送信することができる。
【0275】
コンテキストハブシステム116は、コンテキストハブ内の共同ユーザにコンテンツを送信することができる。たとえば、図17Bに示すように、コンテキストハブシステム116は、コンテキストハブアイコン1748を提示する。コンテキストハブアイコン1748の選択の検出に基づいて、コンテキストハブシステム116は、共同ユーザアイコン1744dに対応する共同ユーザにコンテンツを送信する。コンテキストハブシステム116は、共同ユーザに関連付けられたクライアントデバイスにおいて、受信されたコンテンツの通知を提供することができる。例えば、図17Bに示すように、共同ユーザアイコン1744aは、共同ユーザ「TK」がユーザにメッセージを送信したことを示す通知を含む。
【0276】
さらに、コンテキストハブシステム116は、サードパーティソースを介して共同ユーザにコンテンツを送信することができる。特に、コンテキストハブシステム116は、サードパーティ電子メッセージングソースおよびサードパーティインスタントメッセージングソースを介してメッセージにアクセスし、メッセージを送信することができる。たとえば、図17Bに示すように、コンテキストハブシステム116は、サードパーティメッセージングソースアイコン1746aのユーザ選択に基づいてサードパーティ電子メッセージングシステムを介して、および/またはサードパーティメッセージングソースアイコン1746bのユーザ選択に基づいてサードパーティインスタントメッセージングシステムを介して、コンテンツを送信することができる。
【0277】
コンテキストハブシステム116はまた、様々な他のタイプのサードパーティソースを介して共同ユーザにコンテンツを送信することができる。例えば、コンテキストハブシステム116は、メッセージング機能(能力)を有するサードパーティのコンテキストグラフ化ソースまたは別のサードパーティのソースを介してコンテンツを送信することができる。図17Bに示すように、追加のソースアイコン1750のユーザ選択に基づいて、コンテキストハブシステム116は、サードパーティソースを介してコンテンツを送信するための追加のオプションを提示する。
【0278】
図17Bにさらに示されるように、コンテキストハブシステム116は、ユーザがコンテンツを含むメッセージをカスタマイズすることを可能にする。例えば、通信要素1740は、メッセージコンテンツ要素1742を含む。コンテキストハブシステム116は、メッセージコンテンツ要素1742にメッセージを自動的に入力(投入)することができる。ユーザは、メッセージコンテンツ要素1742内で自動的に生成されたメッセージを変更することができる。さらに、図17Bは、メッセージコンテンツ要素1742内にコンテンツへのリンクを含めることを示しているが、コンテキストハブシステム116は、コンテンツを通信するための様々な他の方法を利用することができる。例えば、コンテキストハブシステム116は、コンテキストハブ内のコンテンツへのリンクを生成することができる。したがって、リンクの選択は、選択するユーザをコンテキストハブ管理グラフィカルユーザインタフェースにもたらし、選択されたコンテンツは、強調表示(ハイライト)されるか、または他の方法で強調される。
【0279】
上述のように、コンテキストハブシステム116は、2人以上のユーザがウェブアクセス可能なコンテンツに同時にアクセスし、それと対話することができる共有閲覧セッションを作成することができる。図18および図19は、コンテキストハブシステム116によって提供される共有閲覧セッションに関する追加の詳細を提供する。特に、図18は、1つ以上の実施形態による動作を実行するコンテキストハブシステム116のシーケンス図を示す。図19は、1つ以上の実施形態による、例示的な共有閲覧グラフィカルユーザインタフェースを示す。
【0280】
図18および対応する開示は、共有閲覧体験を作成するための詳細を提供する。一般に、コンテキストハブシステム116は、共有閲覧体験を作成し、単一の閲覧体験内で複数のユーザを接続する。より詳細には、コンテキストシステムは、個々のクライアントデバイスから報告された閲覧イベントすることを監視し、他のユーザのブラウザ内でそれらのイベントを複製する。
【0281】
図18に示すように、クライアントデバイス108aは、共有閲覧体験の選択を検出する(1802)。特に、クライアントデバイス108aは、クライアントアプリケーション110を介して共有閲覧要素(例えば、図17Aの共有閲覧要素1732)の選択を受信することができる。共有閲覧体験(1802)の選択を検出する一部として、クライアントデバイス108aはまた、1つ以上のユーザの選択を受信する。例えば、図18に示すように、クライアントデバイス108aは、クライアントデバイス108bに関連付けられたユーザアカウントの選択を受信する。したがって、クライアントデバイス108aは、検出された選択を示す通知をコンテキストハブシステム116に送信する。
【0282】
共有閲覧体験の検出された選択の通知を受信することに基づいて、コンテキストハブシステム116は、閲覧体験をリンクする(1804)。特に、コンテキストハブシステム116は、グループ閲覧体験を生成し、クライアントデバイス108aに関連付けられた第1のユーザと、クライアントデバイス108bに関連付けられた第2のユーザとを追加する。閲覧体験(1804)をリンクすることの一部として、コンテキストハブシステム116は、クライアントデバイス108bに関連付けられたユーザが共有閲覧体験に参加したいことを確認するために、確認要求をクライアントデバイス108bに送信することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、参加クライアントデバイス(例えば、クライアントデバイス108aおよび108b)に共有閲覧グラフィカルユーザインタフェースを生成し、送信することによって、閲覧体験(1804)をリンクする。
【0283】
クライアントデバイス108aは、閲覧イベントを検出することができる(1806)。本明細書で使用するとき、用語「閲覧イベント」は、ウェブブラウザ内のアクション又は発生を指す。特に、閲覧イベントは、クライアントデバイスおよび/またはコンテキストハブシステム116が応答し得る、クライアントデバイスによって認識される共有閲覧体験中に記録されたユーザ生成イベントを含む。例えば、閲覧イベントは、スクロール、マウス移動(距離及び方向を含む)、マウス選択(例えば、左クリック及び右クリック)、又は組合せなどのマウス(又はトラックパッド)イベントを含むことができる。さらに、閲覧イベントは、キーまたは個々のキーの組み合わせを含むキーストロークの記録などのキーボードイベントを含むこともできる。
【0284】
クライアントデバイス108aは、クライアントアプリケーション110を介して閲覧イベントを検出する(1806)。特に、クライアントデバイス108aは、閲覧イベントがウェブブラウザおよび/またはコンテキストハブグラフィカルユーザインタフェースのウィンドウ内で発生することを判定することができる。たとえば、クライアントデバイス108aは、クライアントデバイス108aに関連付けられたユーザがウェブページ内でスクロールしていること、ウェブページ上の情報を選択すること、注釈を追加すること、さらには異なるウェブページにナビゲートしていることを判定することができる。図18にさらに示すように、クライアントデバイス108aは、閲覧イベントの通知1808をコンテキストハブシステム116に送信する。
【0285】
コンテキストハブシステム116は、クライアントデバイス108aから閲覧イベントの通知1808を受信する。通知1808を受信することに基づいて、コンテキストハブシステム116は、閲覧イベント(1810)をコピーするための命令をクライアントデバイス108bに送信する。たとえば、クライアントデバイス108aに関連付けられたユーザが、ウェブページ内の第1の位置からウェブページ内の第2の位置にスクロールした閲覧イベントをクライアントデバイス108aが検出したという通知を受信することに基づいて、コンテキストハブシステム116は、ウェブページ内の第1の位置からウェブページ内の第2の位置に自動的にスクロールするための命令をクライアントデバイス108aに送信する。
【0286】
同様に、クライアントデバイス108bは、閲覧イベントを検出し得る(1812)。特に、クライアントデバイス108bは、閲覧イベントを検出し(1812)、検出された閲覧イベントを示す通知1814をコンテキストハブシステム116に送信する。例えば、クライアントデバイス108bは、ウェブページ内のコンテンツのユーザ選択を含む閲覧イベントを検出することができる。
【0287】
クライアントデバイス108bから検出された閲覧イベントを示す通知1814を受信することに基づいて、コンテキストハブシステム116は、閲覧イベントをコピーする命令(1816)をクライアントデバイス108bに送信する。たとえば、コンテキストハブシステム116は、ウェブページ内の同じコンテンツを選択するための命令をクライアントデバイス108aに送信することができる。
【0288】
図18は、2つのクライアントデバイス(たとえば、クライアントデバイス108aおよびクライアントデバイス108b)を伴うコンテキストハブシステム116のシーケンス図を示すが、コンテキストハブシステム116は、複数の追加のユーザを伴う共有閲覧体験を生成し得る。しかしながら、コンテキストハブシステム116は、共有閲覧体験に、より多くのユーザを追加するので、コンテキストハブシステム116は、より多くのコンフリクトする閲覧イベントを受信することもできる。特に、コンテキストハブシステム116は、コンフリクトするおよび/または競合する閲覧イベントを解決することができる。たとえば、クライアントデバイス108aは、第1のユーザがスクロールダウンすることを検出し得、クライアントデバイス108bは、第2のユーザがスクロールアップすること、または異なるウェブページにナビゲートすることを検出し得る。少なくとも1つの実施形態では、コンテキストハブシステム116は、特定のクライアントデバイスから受信された閲覧イベント通知に、より高い優先順位を割り当てることによって、競合する閲覧イベントを解決する。例えば、コンテキストハブシステム116は、任意の他のクライアントデバイスからの閲覧イベントの上に、クライアントデバイス108aによる閲覧イベントを複製することを決定することができる。他の実施形態では、コンテキストハブシステム116は、特定のタイプの閲覧イベントに、より高い優先順位を割り当てる。例えば、コンテキストハブシステム116は、スクロールイベントよりもクリックイベントを優先する(例えば、パッセージを選択する)ことができる。加えて、または代替として、コンテキストハブシステム116は、ユーザの第1のグループを制御ユーザとして指定し、ユーザの第2のグループを視聴ユーザとして指定することができる。たとえば、コンテキストハブシステム116は、最初の5つの(または選択された5つの)クライアントデバイスのための閲覧信号を受信し、複製し得、共有閲覧体験内の任意の追加のクライアントデバイスから閲覧信号を受信しなくてもよい。コンテキストハブシステム116は、1つ以上の実施形態において、これらの競合する信号解決方法および他の競合する信号解決方法を実装し得る。
【0289】
図19は、クライアントデバイス108aの画面1902a上に表示された共有閲覧グラフィカルユーザインタフェース1904aと、クライアントデバイス108bの画面1902b上に表示された共有閲覧グラフィカルユーザインタフェース1904bとの並列比較を示す。特に、クライアントデバイス108aは、第1のユーザに関連付けられ(例えば、識別子「FS」に関連付けられ)、クライアントデバイス108bは、第2のユーザに関連付けられる(例えば、識別子「BC」に関連付けられる)。
【0290】
上述のように、コンテキストハブシステム116は、ユーザマウスの動きを含む閲覧イベントを複製することができる。例えば、図19に示すように、共有閲覧グラフィカルユーザインタフェース1904aは、第1の位置に第1のユーザポインタ1922を表示する。コンテキストハブシステム116は、第1の位置に第2のユーザポインタインジケータ1924を表示することによって、クライアントデバイス108bの共有閲覧グラフィカルユーザインタフェース1904bにおいて第1のユーザポインタ1922の閲覧イベントを複製する。
【0291】
コンテキストハブシステム116は、ユーザスクロールイベントを含む閲覧イベントを複製することもできる。たとえば、図19に示すように、コンテキストハブシステム116は、クライアントデバイス108aにおける共有閲覧グラフィカルユーザインタフェース1904aを介して、下方スクロールイベントを検出することができる。共有閲覧グラフィカルユーザインタフェース1904aは、スクロール要素1914aを下向きの動きで提示することによって、下向きのスクロールイベントを示す。コンテキストハブシステム116は、クライアントデバイス108b上の共有閲覧グラフィカルユーザインタフェース1904bにおいて、下方スクロール閲覧イベントを複製する。具体的には、共有閲覧グラフィカルユーザインタフェース1904bは、ミラー化された下向きの動きでスクロール要素1914bを自動的に含む。
【0292】
さらに、コンテキストハブシステム116は、注釈の追加を含む閲覧イベントを複製することができる。図19に示すように、注釈の追加は、ハイライトの追加を含む。クライアントデバイス108aは、共有閲覧グラフィカルユーザインタフェース1904aを介して、第1のユーザポインタ1922によってハイライト1920aを受信する。コンテキストハブシステム116は、ハイライト1920bおよび第2のユーザポインタインジケータ1924の位置を自動的に提示することによって、クライアントデバイス108b上の共有閲覧グラフィカルユーザインタフェース1904bにおいて閲覧イベントを複製する。
【0293】
1つ以上の実施形態では、コンテキストハブシステム116は、共有閲覧グラフィカルユーザインタフェース1904a~1904b内にメッセージング要素を提供する。特に、コンテキストハブシステム116は、ユーザがリアルタイム共有閲覧体験を共有するときに、ユーザが互いに通信することを可能にする。例えば、クライアントデバイス108aにおける共有閲覧グラフィカルユーザインタフェース1904は、チャット通知1910とともにユーザチャットアイコン1908を表示する。特に、第1のユーザのクライアントデバイス108aに表示されるユーザチャットアイコン1908は、クライアントデバイス108bに関連付けられた第2のユーザから受信されたメッセージを示す。ユーザチャットアイコン1908のユーザ選択に基づいて、コンテキストハブシステム116は、メッセージング要素を提示することができる。例えば、共有ブラウザグラフィカルユーザインタフェース1904bは、メッセージング要素1912およびユーザチャットアイコン1908を表示する。メッセージング要素1912は、共有閲覧体験内のアクティブユーザから送信されたメッセージを含む。
【0294】
共同ユーザにリアルタイム共有閲覧体験を提供することに加えて、コンテキストハブシステム116は、サードパーティソースからのコンテンツに注釈を付けることによって共同を容易にする。特に、コンテキストハブシステム116は、ウェブアクセス可能コンテンツ上の第1のユーザからの注釈を追加し、第2のユーザがウェブアクセス可能コンテンツにアクセスするときに、その注釈を第2のユーザに提示することができる。コンテキストハブシステム116は、リアルタイム共有閲覧セッション中にも、リアルタイム共有閲覧セッション外にも注釈を提示することができる。例えば、コンテキストハブシステム116は、第1のユーザからの注釈を作成し、後で(例えば、第2のユーザがコンテキストハブにアクセスするときはいつでも)第2のユーザのクライアントデバイスに注釈を提示することができる。図20は、1人のユーザから注釈を受信し、共同ユーザに注釈を提供するための一連の動作2000の概要を示す。具体的には、一連の動作2000は、注釈通知を受信する動作2002と、ピクセル位置を決定する動作2004と、注釈を生成する動作2006と、共同ユーザにオーバーレイとして注釈を提供する動作2008とを含む。
【0295】
図20に示すように、一連の動作2000は、注釈通知を受信する動作2002を含む。特に、注釈は、ユーザによるサードパーティソースのコンテンツ上またはコンテンツ内に配置された、ユーザのハイライト、コメント、または任意の種類のマーカを含むことができる。例えば、クライアントデバイスは、注釈イベントを受信し、注釈イベントの通知をコンテキストハブシステム116に送信することができる。少なくとも1つの実施形態では、クライアントデバイスは、ユーザがコンテンツを右クリックしたことを検出することに基づいて、ウェブアクセス可能なコンテンツに注釈(例えば、ハイライトまたはコメント)を追加するためのオプションを提示する。クライアントデバイスは、注釈イベントの通知とともに、注釈ユーザを識別する情報、注釈の位置、注釈に関連付けられたコンテンツ(たとえば、コメント内のテキスト)、および他のデータを含む注釈イベントに関するデータ送信してもよい。
【0296】
一連の動作2000は、ピクセル位置を決定する動作2004を含む。特に、コンテキストハブシステム116は、注釈イベントのピクセル位置を決定する。コンテキストハブシステム116は、共同ユーザのためのウェブアクセス可能コンテンツに対する注釈イベントの位置を正確に複製することができるように、ピクセル位置を決定する。少なくとも1つの実施形態では、コンテキストハブシステム116は、注釈イベントに関するデータを解析して、注釈イベントのピクセル位置を決定する。例えば、コンテキストハブシステム116は、注釈付けユーザが注釈付けイベントに関与したときに、注釈付けユーザのスクロール位置およびポインタ位置を含むデータを監視することができる。スクロール位置およびポインタ位置を解析することによって、コンテキストハブシステム116は、注釈の座標を識別することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、サードパーティコンテキストとは別個で独立した注釈レイヤ上の注釈イベントのピクセル位置を識別する。
【0297】
図20に示すように、コンテキストハブシステム116は、注釈を生成する動作2006を実行する。動作2006を実行することの一部として、コンテキストハブシステム116は、注釈データを生成し、ウェブアクセス可能コンテンツとともに注釈データを記憶することによって、選択された注釈を作成する。たとえば、注釈データは、注釈のピクセル位置、注釈タイプ(たとえば、コメント、ハイライトなど)、注釈コンテンツを含むことができる。一実施形態では、コンテキストハブシステム116は、注釈レイヤ上のピクセル位置に注釈を生成する。
【0298】
一連の動作2000の一部として、コンテキストハブシステム116は、共同ユーザにオーバーレイとして注釈を提供する動作2008を実行する。特に、1人以上の共同ユーザが注釈付きウェブアクセス可能コンテンツにアクセスしたことを検出することに基づいて、コンテキストハブシステム116は、ウェブアクセス可能コンテンツに関連付けられた注釈データにアクセスする。少なくとも1つの実施形態では、ウェブアクセス可能なコンテンツの共同ユーザ選択を検出することに基づいて、コンテキストハブシステム116は、ウェブアクセス可能なコンテンツに関連付けられた注釈データを識別し、共同ユーザに表示するためにピクセル位置に注釈を提示する。例えば、コンテキストハブシステム116は、サードパーティソースからのコンテンツをレンダリングし、注釈をピクセル位置に重畳(オーバーレイ)することができる。例えば、少なくとも1つの実施形態では、コンテキストハブシステム116は、コンテキストハブシステムからのコンテンツの上に注釈レイヤを重ねることによって注釈を提供する。
【0299】
説明したように、コンテキストハブシステム116は、ウェブアクセス可能コンテンツ上のオーバーレイとしてユーザ注釈を提示することができる。たとえば、コンテキストハブ管理グラフィカルユーザインタフェース(たとえば、図17のコンテキストハブ管理グラフィカルユーザインタフェース1704)における共有コンテンツ(たとえば、図17の共有コンテンツリンク1722a~1722b)のユーザ選択を検出することに基づいて、コンテキストハブシステム116は、注釈グラフィカルユーザインタフェースを生成し、提示することができる。図21は、ユーザデバイス2100の画面2102上に提示される例示的な注釈グラフィカルユーザインタフェース2104を示す。特に、コンテキストハブシステム116は、注釈グラフィカルユーザインタフェース2104上の要素とのユーザインタラクションに基づいて注釈を追加することと、注釈グラフィカルユーザインタフェース2104に注釈を提示することとの両方を行うことができる。
【0300】
コンテキストハブシステム116は、注釈グラフィカルユーザインタフェース2104を介してユーザ注釈を受信することができる。特に、注釈グラフィカルユーザインタフェース2104は、ウェブアクセス可能なコンテンツに注釈を追加するための選択可能な要素を提示する。特に、注釈グラフィカルユーザインタフェース2104は、ウェブアクセス可能なコンテンツを含む。コンテキストハブシステム116は、注釈グラフィカルユーザインタフェース2104を介して注釈イベントを受信することができる。たとえば、図21に示すように、コンテキストハブシステム116は、注釈グラフィカルユーザインタフェース2104を介してユーザ選択2118(たとえば、ユーザクリックアンドドラッグジェスチャ)を受信する。さらに、コンテキストハブシステム116は、注釈グラフィカルユーザインタフェース2104を介してユーザに注釈オプションを提示することができる。例えば、コンテキストハブシステム116は、ユーザが右クリックしたことを検出することに基づいて、注釈メニュー2110を提示する。図示のように、注釈メニュー2110は、ユーザ選択2118に関するコメントを追加するか、またはユーザ選択2118を強調表示(ハイライト)するためのオプションを提示する。
【0301】
コンテキストハブシステム116は、注釈グラフィカルユーザインタフェース2104を介してユーザ注釈を提示することもできる。例えば、図21に示されるように、注釈グラフィカルユーザインタフェース2104は、コメントインジケータ2116を含む。コメントインジケータ2116のユーザ選択の検出に基づいて、コンテキストハブシステム116は、コメントダイアログ要素2108を提示する。コメントダイアログ要素2108は、コメントインジケータ2116によって示されるピクセル位置でなされたユーザコメントを提示する。さらに、コンテキストハブシステム116は、コメントダイアログ要素2108を介して追加のユーザ注釈を受信して、共同ユーザ間のダイアログまたは会話を作成することができる。コメントダイアログ要素2108は、共同ユーザコメント2112と、ユーザコメント入力要素2114とを含む。共同ユーザコメント2112は、共同ユーザによって以前に追加されたコメントを含む。コンテキストハブシステム116は、ユーザがユーザコメント入力要素を選択してテキストを入力することに基づいて、コメントダイアログ要素に新しいコメントを追加することができる。
【0302】
少なくとも1つの実施形態では、コンテキストハブシステム116は、注釈グラフィカルユーザインタフェース2104内で、表示されたコンテンツへアクセスする共同ユーザを示す。例えば、図21に示すように、注釈グラフィカルユーザインタフェース2104は、表示されたコンテンツにアクセスする共同ユーザの識別情報を表示する共同ユーザインジケータ2106を含む。より詳細には、共同ユーザインジケータ2106は、どの共同ユーザがウェブアクセス可能コンテンツに追加された注釈を追加および/または視聴することができるかを表示する。
【0303】
前述のように、コンテキストハブシステム116は、ウェブアクセス可能なコンテンツの順序付けられたシーケンスを含むプレゼンテーションを生成することができる。一般に、コンテキストハブシステム116は、ウェブアクセス可能なコンテンツの順序、個々のコンテンツアイテムに関連付けられた注釈、プレゼンテーション要件、および/または他の添付データを格納するプレゼンテーションデータ構造を生成することによって、プレゼンテーションを作成する。図22A図22Bは、1つ以上の実施形態による、例示的なプレゼンテーション作成グラフィカルユーザインタフェースおよびプレゼンテーションビューグラフィカルユーザインタフェースを図示する。特に、図22Aは、例示的なプレゼンテーション作成グラフィカルユーザインタフェースと、プレゼンテーションを作成するために作成ユーザに提示される対応するプレゼンテーションデータ構造とを示す。図22Bは、視聴ユーザに提示される例示的なプレゼンテーションビューを示す。
【0304】
図22Aは、作成ユーザ(すなわち、プレゼンテーションを管理し、順序付けるユーザ)に関連付けられたクライアントデバイス2200の画面2202上のプレゼンテーション作成グラフィカルユーザインタフェース2204を示す。概して、プレゼンテーション作成グラフィカルユーザインタフェース2204は、コンテキストハブ2213内のウェブアクセス可能コンテンツ2216a~2216cと、プレビュー要素2212と、公開要素2214とを含む。図示のように、コンテキストハブシステム116は、プレゼンテーションモードインジケータ2210を提示することによって、プレゼンテーションモードオプションがコンテキストハブ2213に適用可能であることを示す。コンテキストハブシステム116はまた、コンテキストハブ2213が現在プレゼンテーションモード内にあることを示すために、コンテキストハブメニュー2215内にプレゼンテーションモードアイコン2211を提示し得る。
【0305】
コンテキストハブシステム116は、追加のオプション要素2208のユーザ選択に基づいて、プレゼンテーション作成グラフィカルユーザインタフェース2204を提示することができる。例えば、コンテキストハブシステム116は、追加のオプション要素2208の選択に基づいて、選択可能なプレゼンテーションモードオプションを提示することができる。したがって、コンテキストハブシステム116は、コンテキストハブ2213内のウェブアクセス可能コンテンツ2216a~2216cにプレゼンテーションモードオプションを効率的に適用することができる。同様に、コンテキストハブシステム116はまた、コンテキストハブ2213からプレゼンテーションモードオプションを効率的に除去し得る。
【0306】
図22Aに示すように、コンテキストハブシステム116は、ウェブアクセス可能コンテンツ2216a~2216cを順序付けられたシーケンスで提示する。特に、コンテキストハブシステム116は、順序インジケータ2220a~2220cを表示することによって、ウェブアクセス可能コンテンツ2216a~2216cの提示シーケンスを示す。少なくとも1つの実施形態では、コンテキストハブシステムは、作成ユーザがウェブアクセス可能コンテンツ2216a~2216cのいずれかを新しい位置にドラッグアンドドロップすることを検出することに基づいて、ウェブアクセス可能コンテンツ2216a~2216cを並べ替える。
【0307】
コンテキストハブシステム116は、ウェブアクセス可能なコンテンツをコンテキストハブ2213に追加し、その後、プレゼンテーションを行うことができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、ウェブアクセス可能なコンテンツ追加要素2228のユーザ選択に基づいて、ウェブアクセス可能コンテンツをコンテキストハブ2213に追加することができる。例えば、ウェブアクセス可能な追加コンテンツ要素2228の選択を検出することに基づいて、コンテキストハブシステム116は、ウェブアクセス可能なソースにナビゲートするか、ウェブアクセス可能なソースのアドレスを入力するか、または所望のウェブアクセス可能なソースにアクセスするためのオプションを作成ユーザに提示する。加えて、または代替として、コンテキストハブシステム116は、ユーザが別のコンテキストハブからコンテキストハブメニュー内のコンテキストハブアイコン2232の上または周囲にウェブアクセス可能コンテンツをドラッグアンドドロップするときに、ウェブアクセス可能コンテンツをコンテキストハブ2213に追加する。
【0308】
ウェブアクセス可能なコンテンツの順序付けられたシーケンスを有するプレゼンテーションを作成することに加えて、コンテキストハブシステム116は、ウェブアクセス可能なコンテンツ2216a~2216cにデータを関連付けることができる。特に、コンテキストハブシステムは、ウェブアクセス可能コンテンツ2216a~2216cと共に視聴ユーザに提示するために、注釈、メディアアイテム、要件、および他のデータを関連付けることができる。コンテキストハブシステム116は、ウェブアクセス可能コンテンツ2216a~2216cにコメントおよびハイライトを含む注釈を追加することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、図20図21に関して上述したように、ウェブアクセス可能なコンテンツ2216a~2216cに注釈を追加する。例えば、図22Aに示すように、コンテキストハブシステム116は、コメント追加要素2222aのユーザ選択を検出することに基づいて、ウェブアクセス可能コンテンツ2216aにコメントを追加することができる。コンテキストハブシステム116は、ウェブアクセス可能コンテンツ2216aに、一般に、またはウェブアクセス可能コンテンツ内の特定の部分に、コメントを追加することができる。
【0309】
注釈を関連付けることに加えて、コンテキストハブシステム116は、メディアアイテムをウェブアクセス可能コンテンツ2216a~2216cに関連付けることもできる。上述のように、メディアアイテムは、オーディオファイル、ドキュメントファイル、画像ファイル、および他のタイプのファイルを含む。図22Aに示すように、コンテキストハブシステム116は、メディア追加要素2224のユーザ選択に基づいてメディアアイテムを関連付ける。例えば、コンテキストハブシステム116は、ウェブアクセス可能コンテンツ2216bにオーディオ記録を追加することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、記録(ウェブアクセス可能なコンテンツを記述するユーザなど)を、識別されたウェブアクセス可能なコンテンツに関連付ける。
【0310】
コンテキストハブシステム116は、ウェブアクセス可能コンテンツ2216a~2216cに要件を関連付けることもできる。特に、要件は、コンテキストハブシステム116が第2のウェブアクセス可能コンテンツを提示する前に、コンテキストハブシステム116が第1のウェブアクセス可能コンテンツを提示するときに満たされなければならない、または完了されなければならない条件を含む。例えば、要件は、視聴ユーザが閾値時間の間にウェブアクセス可能コンテンツを視聴すること、ウェブアクセス可能コンテンツの特定のセクションにアクセスすること、ウェブアクセス可能コンテンツの閾値割合にアクセスすること(例えば、スクロールイベントに基づいて決定される)、または何らかの他の条件を満たすことを規定することができる。図22Aに示すように、追加要件要素2226のユーザ選択に基づいて、コンテキストハブシステム116は、ユーザ規定要件のためのオプションを提供する。
【0311】
図22Aにさらに示されるように、コンテキストハブシステム116は、プレゼンテーションデータ構造2230内にすべてのウェブアクセス可能コンテンツおよび関連データを格納する。例えば、プレゼンテーションデータ構造2230は、プレゼンテーション内のウェブアクセス可能コンテンツ2216a~2216cの順序を反映する。さらに、コンテキストハブシステム116は、プレゼンテーションデータ構造2230内に、ウェブアクセス可能コンテンツ2216a~2216cの各々に関連付けられたデータを格納する。例えば、図示されるように、コンテキストハブシステム116は、視聴ユーザがウェブアクセス可能コンテンツ2216b(すなわち、「リンク2」)に進む前に少なくとも10秒間、ウェブアクセス可能コンテンツ2216a(すなわち、「リンク1」)にアクセスするという時間要件を関連付ける。さらに、コンテキストハブシステム116は、オーディオファイル2234、コメント2236、およびハイライト2238をウェブアクセス可能コンテンツ2216aに関連付ける。少なくとも1つの実施形態では、コンテキストハブシステム116は、プレゼンテーション作成グラフィカルユーザインタフェース2204を介して、プレゼンテーションデータ構造2230を作成ユーザに表示することができる。
【0312】
さらに、コンテキストハブシステム116は、作成ユーザに表示するためのプレビューを生成することができる。図22Aに示すように、プレゼンテーション作成グラフィカルユーザインタフェース2204は、プレビュー要素2212を含む。プレビュー要素2212のユーザ選択の検出に基づいて、コンテキストハブシステム116は、プレゼンテーションを作成し、作成ユーザに提示する。
【0313】
コンテキストハブシステム116は、視聴ユーザにプレゼンテーションを公開することができる。図22Aに示すように、プレゼンテーション作成グラフィカルユーザインタフェース2204は、公開要素2214を含む。公開要素2214のユーザ選択に基づいて、コンテキストハブシステム116は、作成ユーザが視聴ユーザを選択することができるオプションを提示する。例えば、コンテキストハブシステム116は、特定の共同ユーザを提案し、作成ユーザに提示することができる。視聴ユーザの選択を検出することに基づいて、コンテキストハブシステム116は、ユーザを共同者(コラボれーた)としてコンテキストハブ2213に追加することができる。より具体的には、コンテキストハブシステム116は、視聴ユーザの許可を、プレゼンテーションを視聴することに制限することができる。
【0314】
公開要素2214のユーザ選択に基づいて、コンテキストハブシステム116は、視聴ユーザに関連付けられたクライアントデバイスにおいてプレゼンテーションビューグラフィカルユーザインタフェースを提示することができる。図22Bは、視聴ユーザに関連付けられたクライアントデバイス2240の画面2242上のプレゼンテーションビューグラフィカルユーザインタフェース2244を示す。プレゼンテーションビューグラフィカルユーザインタフェース2244は、コンテキストハブ内のウェブアクセス可能なコンテンツを表示する。さらに、プレゼンテーションビューグラフィカルユーザインタフェース2244は、プレゼンテーションビュー要素2248を含む。
【0315】
図22Bに示すように、プレゼンテーションビューグラフィカルユーザインタフェース2244は、プレゼンテーションビュー内にウェブアクセス可能なコンテンツを表示する。特に、少なくとも1つの実施形態では、プレゼンテーションビューグラフィカルユーザインタフェース2244は、視聴ユーザがウェブアクセス可能コンテンツと対話することを可能にする。少なくとも1つの実施形態では、固定コンテンツのビデオまたは画像を提示するキャプチャされた画面共有ファイルとは対照的に、視聴ユーザは、プレゼンテーションビューグラフィカルユーザインタフェース2244を介して提示されたウェブアクセス可能コンテンツと対話することができる。少なくとも1つの実施形態では、コンテキストハブシステム116は、視聴ユーザがプレゼンテーションから逸脱することを制限する。例えば、コンテキストハブシステム116は、視聴ユーザが、規定されたプレゼンテーションシーケンスにおいてウェブアクセス可能なコンテンツを視聴することを要求し、視聴ユーザがプレゼンテーションから除外された他のウェブページまたはウェブアクセス可能なコンテンツにナビゲートすることを制限する。
【0316】
さらに他の実施形態では、コンテキストハブシステム116は、作成ユーザに関連付けられたクライアントデバイスからの閲覧イベントを監視し、閲覧ユーザに関連付けられたクライアントデバイスで閲覧イベントを複製することによって、プレゼンテーションを生成することができる。そのような実施形態では、プレゼンテーションビューグラフィカルユーザインタフェース2244は、ウェブアクセス可能なコンテンツを閲覧ユーザに提示する一方で、作成ユーザのクライアントデバイスによって監視および記録された閲覧要素も複製する。例えば、コンテキストハブシステム116は、プレゼンテーションビューグラフィカルユーザインタフェース2244内で自動的にスクロールして、ウェブアクセス可能コンテンツの特定の部分を表示することができる。
【0317】
プレゼンテーションビューグラフィカルユーザインタフェース2244は、ウェブアクセス可能なコンテンツに関連付けられたデータを含む。具体的には、プレゼンテーションビューグラフィカルユーザインタフェース2244は、ウェブアクセス可能コンテンツに関連付けられた注釈を表示する。例えば、図22Bに示すように、プレゼンテーションビューグラフィカルユーザインタフェース2244は、ハイライト2246を表示する。図示されていないが、プレゼンテーションビューグラフィカルユーザインタフェース2244は、作成ユーザによって追加されたコメントを含むこともできる。
【0318】
さらに、プレゼンテーションビューグラフィカルユーザインタフェース2244は、プレゼンテーションビュー要素2248を介してウェブアクセス可能コンテンツに関連付けられたデータを示し得る。例えば、図22Bに示されるプレゼンテーションビュー要素2248は、要件インジケータ2254を含む。要件インジケータ2254は、現在視聴されているウェブアクセス可能なコンテンツにどの要件が関連付けられているかを示す。図示のように、コンテキストハブシステム116は、視聴ユーザが現在視聴されているウェブアクセス可能なコンテンツに少なくともさらに30秒間アクセスすることを要求する。要件インジケータ2254は、図22Aに関して上述した要件などの任意の他のタイプの要件を反映することができる。
【0319】
プレゼンテーションビュー要素2248はまた、視聴ユーザに様々な対話型(インタラクティブ)要素を提供する。図22Bに示すように、プレゼンテーションビュー要素2248は、プレゼンテーションナビゲーション要素2252a~2252cと、出口要素2250とを含む。コンテキストハブシステムは、プレゼンテーションナビゲーション要素2252aのユーザ選択に基づいてプレゼンテーション内で後方にナビゲートし、プレゼンテーションナビゲーション要素2252bのユーザ選択に基づいてプレゼンテーションを一時停止し、プレゼンテーションナビゲーション要素2252cのユーザ選択に基づいてプレゼンテーション内で前方にナビゲートすることができる。さらに、出口要素2250のユーザ選択に基づいて、コンテキストハブシステム116は、プレゼンテーションを終了し、ユーザがウェブアクセス可能コンテンツを自由にナビゲートし、それと対話することを可能にすることができる。図示されていないが、コンテキストハブシステム116はその後、視聴ユーザが対話してプレゼンテーションを継続することができる再開プレゼンテーション要素を提示することができる。
【0320】
視聴状態の更新、共有閲覧体験の作成、ユーザ注釈の生成、およびプレゼンテーションモードの利用などの共同機能を提供することに加えて、コンテキストハブシステム116は、プライベートウェブのインデックス付けを可能にすることができる。図23は、コンテキストハブシステム116がプライベートウェブインデックスを生成することができる様々な編成レベルを示す。一般に、コンテキストハブシステム116は、プライベートウェブインデックスを活用して、ウェブ検索をパーソナライズし、より正確なコンテキストモデルを構築することができる。特に、ウェブインデックスは、ユーザまたは特定のユーザグループがアクセスしたウェブアクセス可能なコンテンツを含む。ウェブインデックスにアクセスし、それを解析することに基づいて、コンテキストハブシステム116は、過去にアクセスされたソースに類似する、または関連するウェブアクセス可能コンテンツに優先順位を付けることによって、将来の検索をパーソナライズすることができる。
【0321】
同様に、コンテキストハブシステム116は、プライベートウェブインデックスに基づいてコンテキストモデルをパーソナライズすることができる。例えば、コンテキストハブシステム116は、プライベートウェブインデックス内のウェブアクセス可能なコンテンツに類似又は関連するウェブアクセス可能なコンテンツを識別するために、コンテキストモデルのパラメータを変更することができる。したがって、コンテキストハブシステム116は、コンテキストハブに追加するために、コンテキスト関連情報およびコンテンツをより正確に識別することができる。
【0322】
上述のように、図23は、コンテキストハブシステム116がプライベートウェブインデックスを生成することができる様々な編成レベルを示す。概して、コンテキストハブシステム116は、個々のユーザ2302a~2302c、グループ2306a~2306b、および編成2310のためのウェブアクセス可能コンテンツを監視し、インデックス付けすることができる。特に、コンテキストハブシステム116は、個々のユーザ2302a~2302cの各々に対応する個々のウェブインデックス2304a~2304cを生成することができる。例えば、コンテキストハブシステム116は、個々のウェブインデックス2304a内の個々のユーザ2302aによってアクセスされるウェブアクセス可能なコンテンツをカタログ化する。したがって、コンテキストハブシステム116は、個々のユーザ2302aのためのウェブ検索およびコンテキストモデルをパーソナライズすることができる。
【0323】
さらに、図23に示すように、コンテキストハブシステム116は、グループ2306a~2306bのためのグループウェブインデックス2308a~2308bを生成することができる。グループ2306a~2306bは、コンテキストハブ内の共同ユーザのグループを含みうる。いくつかの実施形態では、グループウェブインデックス2308a~2308bは、個々のウェブインデックスの組合せを含む。例えば、グループウェブインデックス2308aは、個々のウェブインデックス2304a~2304cの組合せを含むことができる。加えて、または代替として、グループウェブインデックス2308aは、共有コンテキストハブを介してアクセスされるウェブアクセス可能コンテンツのカタログを含む。たとえば、コンテキストハブシステムは、グループウェブインデックス2308aから、個々のユーザ2302a~2302cに関連付けられたプライベートウェブ閲覧結果を除外し、グループ2306aによって全体としてアクセスされるウェブアクセス可能コンテンツのみを含むことができる。
【0324】
コンテキストハブシステム116はまた、編成2310のための編成ウェブインデックス2312を生成し得る。編成2310は、グループ2306a~2306bを含む。例えば、編成2310は、会社またはグループの任意の他の有意義な集合を含むことができる。コンテキストハブシステム116は、コンテキストハブシステム116をコンパイルすることによって編成ウェブインデックス2312を生成することができ、グループウェブインデックス2308a~2308bを組み合わせて、編成ウェブインデックス2312を生成することができる。
【0325】
図16図23、対応するテキスト、および実施例は、ユーザ間の共同を容易にするためのいくつかの異なるシステムおよびデバイスを提供する。前述に加えて、本開示の実施形態は、特定の結果を達成するための方法における動作を含むフローチャートに関して説明することもできる。たとえば、図24は、本開示の1つ以上の実施形態による例示的な方法のフローチャートを示す。図24に関連して説明される方法は、より少ないまたはより多い動作で実行されてもよく、または動作は異なる順序で実行されてもよい。加えて、本明細書に記載される動作は、互いに並行して、または同じもしくは同様の動作の異なるインスタンスと並行して、繰り返され得るか、または実行され得る。
【0326】
図24は、ユーザインタラクションを示す通知を提供する1つの例示的な方法2400のフローチャートを示す。方法2400は、コンテキストハブを複数のユーザに関連付ける動作2402を含む。特に、動作2402は、コンテキストハブを複数のユーザおよび複数のサードパーティウェブサイトに関連付けることを含む。少なくとも1つの実施形態では、コンテキストハブに関連付けられた複数のサードパーティウェブサイトは、サードパーティウェブサイトのコンテキストグループ化を含む。
【0327】
方法2400は、サードパーティウェブサイトとのユーザインタラクションを検出する動作2404をさらに含む。特に、動作2404は、複数のユーザのうちの第1のユーザに関連付けられた第1のクライアントデバイスから、第1のユーザによる複数のサードパーティウェブサイトからのサードパーティウェブサイトとのユーザインタラクションを検出することを含む。少なくとも1つの実施形態では、第1のユーザのユーザインタラクションは、サードパーティウェブサイトを視聴すること、またはサードパーティウェブサイトに注釈を追加することのうちの少なくとも1つを含む。1つ以上の実施形態では、動作2404は、複数のユーザのうちの第1のユーザに関連付けられた第1のクライアントデバイスから、複数のサードパーティウェブサイトからのサードパーティウェブサイトに対応する注釈を受信することを含む。
【0328】
1つ以上の実施形態では、動作2404は、複数のユーザのうちの第1のユーザに関連付けられた第1のクライアントデバイスから、第1のユーザが複数のサードパーティウェブサイトからのサードパーティウェブサイトを視聴したことを検出することを含む。
【0329】
方法2400はまた、ユーザインタラクションを示す通知を提供する動作2406を含む。特に、動作2406は、複数のユーザのうちの第2のユーザに関連付けられた第2のクライアントデバイスにおける表示のために、コンテキストハブに対応するグラフィカルユーザインタフェース内に、第1のユーザとサードパーティウェブサイトとのユーザインタラクションを示す通知を提供することを含む。少なくとも1つの実施形態では、ユーザインタラクションを示す通知は、第1のユーザがサードパーティウェブサイトを見たが現在は視聴していないことを示す。1つ以上の実施形態では、動作2406は、コンテキストハブに対応するグラフィカルユーザインタフェース内での表示のために、複数のユーザのうちの第2のユーザに関連付けられた第2のクライアントデバイスに、サードパーティウェブサイトに対応する注釈を示す通知を提供することを含む。
【0330】
1つ以上の実施形態では、動作2406は、コンテキストハブに対応するグラフィカルユーザインタフェース内での表示のために、複数のユーザのうちの第2のユーザに関連付けられた第2のクライアントデバイスに、第1のユーザがサードパーティウェブサイトを視聴したことを示す通知を提供することを含む。少なくとも1つの実施形態では、第1のユーザがサードパーティウェブサイトを視聴したことを示す通知は、第1のユーザが現在サードパーティウェブサイトを視聴していることをさらに示す。
【0331】
方法2400は、第1のユーザに関連付けられた第1のクライアントデバイスから、サードパーティウェブサイトにおける注釈を受信する動作と、第2のユーザに関連付けられた第2のクライアントデバイスにおける表示のために注釈を提供する動作とをさらに含むことができる。
【0332】
方法2400は、複数のユーザのうちの第1のユーザに関連付けられた第1のクライアントデバイスから第1のウェブサイトを追加するための第1のインディケーションを受信することに基づいて第1のウェブサイトをコンテキストハブに関連付ける動作と、複数のユーザのうちの第2のユーザに関連付けられた第2のクライアントデバイスから第2のウェブサイトを追加するための第2のインディケーションを受信することに基づいて第2のウェブサイトをコンテキストハブに関連付ける動作とをさらに含むことができる。
【0333】
方法2400は、コンテキストハブに関連付けられた複数のユーザによってアクセスされたウェブサイトの履歴を含むグループ履歴インデックスを生成する追加の動作をさらに含むことができる。追加の動作は、検索要求を受信することと、グループ履歴インデックスに基づいて複数の検索結果を生成することとをさらに含むことができる。
【0334】
方法2400は、複数のユーザを含む共有閲覧体験オプションの選択を受信することと、複数のユーザのうちの第1のユーザに関連付けられた第1のクライアントデバイスから、閲覧イベントの通知を受信することと、複数のユーザに関連付けられた複数のクライアントデバイスに閲覧イベントを複製するための命令を送信することとの追加の動作を含みうる。
【0335】
方法2400は、第1のユーザに関連付けられた第1のクライアントデバイスから、リアルタイム共有閲覧体験の選択のインディケーションを受信することと、第2のユーザに関連付けられた第2のクライアントデバイスにおいて、および第1のクライアントデバイスにおいて、ウェブサイトを含む共有閲覧グラフィカルユーザインタフェースを表示することと、第1のクライアントデバイスから、閲覧イベントを受信することと、第2のクライアントデバイスにおいて表示するための閲覧イベントを提供することと、という追加の動作を含みうる。方法2400は、第2のユーザに関連付けられた第2のクライアントデバイスがサードパーティウェブサイトにアクセスしたことを検出することと、サードパーティウェブサイトと併せて表示するための注釈を提供することとの追加の動作をさらに含むことができる。少なくとも1つの実施形態では、サードパーティウェブサイトと併せて表示するための注釈を提供することは、サードパーティウェブサイト内のコンテンツに関して定義された位置でサードパーティウェブサイト上に注釈を重畳(オーバーレイ)することを含む。
【0336】
方法2400は、第1のユーザに関連付けられた第1のクライアントデバイスから、サードパーティウェブサイト上のコンテンツに対応する注釈を受信し、サードパーティウェブサイト上のコンテンツのピクセル位置を決定し、注釈およびピクセル位置に基づいて、第2のユーザに関連付けられた第2のクライアントデバイスにおける表示のために、注釈をサードパーティウェブサイト上のオーバーレイとして提供する追加の動作を含みうる。
【0337】
図25A図25Bは、コンピューティングデバイス2500(例えば、クライアントデバイス108a~108nおよび/またはサーバ102のうちの1つ以上)上に位置するコンテキストハブシステム116の概略図を示す。特に、図25Aに示されるように、コンテキストハブシステム116は、コンテキストハブタブマネージャ2502およびコンテキストモデルマネージャ2510を含む。図25Bにさらに示されるように、コンテキストハブシステム116は、ユーザ共同マネージャ2524を含み得る。
【0338】
図25Aに示すように、コンテキストハブシステム116は、コンテキストハブタブマネージャ2502を含む。コンテキストハブタブマネージャ2502は、使用信号マネージャ2504と、使用信号アナライザ2506と、アクションマネージャ2508とを含む。概して、コンテキストハブタブマネージャ2502は、コンテキストハブ内のタブを編成および管理する。例えば、コンテキストハブタブマネージャ2502は、個々のコンテキストハブに対応するウィンドウ間で、ウェブアクセス可能なコンテンツを含むタブを移動させることができる。
【0339】
図示のように、コンテキストハブタブマネージャ2502は、使用信号マネージャ2504を含む。特に、使用信号マネージャ2504は、コンテキストハブのタブに関連付けられた使用信号にアクセスし、監視する。より具体的には、使用信号マネージャ2504は、視聴頻度、最後にアクセスされた時間、コンテンツタイプ、視聴された時間、または他のユーザ定義信号を含む使用信号にアクセスする。
【0340】
コンテキストハブタブマネージャ2502は、使用信号アナライザ2506を含む。特に、使用信号アナライザ2506は、使用信号を解析し、使用信号に基づいて実行すべきアクションを決定する。例えば、使用信号アナライザ2506は、特定の使用信号を特定のアクションに関連付けることができる。したがって、使用信号のセットを識別することに基づいて、使用信号アナライザ2506は、コンテキストハブのタブに関して1つ以上のアクションを実行することを決定することができる。
【0341】
コンテキストハブタブマネージャ2502は、アクションマネージャ2508も含む。アクションマネージャ2508は、コンテキストハブのタブに関して決定されたアクションを実行する。特に、コンテキストハブタブマネージャ2502は、決定されたアクションを識別するために使用信号アナライザ2506と通信することができる。アクションマネージャ2508は、コンテキストハブのタブ上でアクションを実行し得る。
【0342】
図25Aにさらに示されるように、コンテキストハブシステム116はまた、コンテキストモデルマネージャ2510を含む。特に、コンテキストモデルマネージャ2510は、コンテキストモデルジェネレータ2512と、関連情報マネージャ2514と、リンクジェネレータ2516と、ストレージマネージャ2518とを含む。
【0343】
図25Aに示すように、コンテキストモデルマネージャ2510は、コンテキストモデルジェネレータ2512を含む。コンテキストモデルジェネレータ2512は、コンテキストハブに対応するコンテキストモデルをトレーニングおよび/または他の方法で生成する。特に、コンテキストモデルジェネレータ2512は、コンテキストハブ内のコンテンツのコンテキスト情報を解析することができる。加えて、または代替として、コンテキストモデルジェネレータ2512は、予測コンテキストモデルを生成するためにユーザ情報を解析することができる。
【0344】
コンテキストモデルマネージャ2510は、関連情報マネージャ2514も含む。関連情報マネージャ2514は、コンテキストハブ内のコンテンツに関連する、ウェブアクセス可能なソースからの情報またはコンテンツを識別する。関連情報マネージャ2514は、関連情報をコンテキストハブに追加することをさらに決定することができる。一実施形態では、関連情報マネージャ2514は、コンテキストハブ内に存在する関連情報を識別することができる。さらに、関連情報マネージャ2514は、コンテキストハブにまだ追加されていない関連情報を識別することもできる。
【0345】
図25Aにさらに示されるように、コンテキストモデルマネージャ2510は、リンクジェネレータ2516を含む。具体的には、リンクジェネレータ2516は、関連情報に対するリンクを生成する。より具体的には、リンクジェネレータ2516は、生成したリンクをコンテキストハブに追加する。
【0346】
コンテキストモデルマネージャ2510は、ストレージマネージャ2518も含む。ストレージマネージャ2518は、トレーニングデータ2520およびコンテキストモデル2522をさらに含むことができる。トレーニングデータ2520は、コンテキストハブシステム116によって実装される機械学習モデルをトレーニングするために必要とされるすべてのトレーニングデータを含む。例えば、トレーニングデータ2520は、トレーニングコンテキスト情報、トレーニングウェブアクセス可能コンテンツ、およびコンテキスト機械学習モデルをトレーニングするために必要とされるグラウンドトゥルース関連データを含む。さらに、トレーニングデータ2520は、トレーニングハブ提案機械学習モデルにおいて使用されるトレーニングユーザ方法およびグラウンドトゥルースコンテキストモデルを含む。
【0347】
図25Aにさらに示すように、ストレージマネージャ2518は、コンテキストモデル2522を含む。特に、コンテキストモデル2522は、コンテキストハブシステム116によって利用される機械学習モデルを含む。例えば、コンテキストモデル2522は、コンテキスト機械学習モデルならびにトレーニングハブ提案機械学習モデルを格納する。より具体的には、コンテキストモデル2522はまた、モデルパラメータを含む機械学習モデルに関連するデータを記憶する。
【0348】
図25Bは、コンテキストハブシステム116の一部であり得る追加の構成要素を示す。特に、コンテキストハブシステム116は、ユーザ共同マネージャ2524を含む。一般に、ユーザ共同マネージャ2524は、コンテキストハブを介してユーザ間の共同を容易にするための機能を管理する。図25Bに示すように、ユーザ共同マネージャ2524は、視聴状態マネージャ2526、共有閲覧体験マネージャ2528、注釈マネージャ2530、プレゼンテーションマネージャ2532、およびプライベートウェブインデックス作成マネージャ2534を含む。
【0349】
図25Bに示すように、ユーザ共同マネージャ2524は、視聴状態マネージャ2526を含む。概して、視聴状態マネージャ2526は、コンテキストハブ内に接続されたユーザアカウントに関連付けられたクライアントデバイスからのイベント通知を監視および受信する。イベント通知を受信することに基づいて、状態マネージャ2526は、ウェブアクセス可能なコンテンツをユーザが見ていない、存在している(すなわち、現在アクセスしている)、または見ているかどうかを反映するように、ウェブアクセス可能なコンテンツの視聴状態を更新する。
【0350】
ユーザ共同マネージャ2524は、共有閲覧体験マネージャ2528を含む。共有閲覧体験マネージャ2528は、共同ユーザに関連付けられたクライアントデバイス間で閲覧体験をリンクする。さらに、共有閲覧体験マネージャ2528は、クライアントデバイスによって報告された閲覧イベントを監視する。共有閲覧体験マネージャ2528は、閲覧イベントをコピーするための命令を送信することによって、閲覧イベントをクライアントデバイスに複製する。
【0351】
ユーザ共同マネージャ2524は、注釈マネージャ2530を含む。一般に、注釈マネージャ2530は、ウェブアクセス可能なコンテンツに関連付けられた注釈を管理および生成する。少なくとも1つの実施形態では、注釈マネージャ2530は、決定されたピクセル位置における注釈(例えば、ハイライトおよびコメント)を含む注釈レイヤを生成する。注釈マネージャ2530は、ウェブアクセス可能コンテンツ上に注釈レイヤを重ね合わせて、コンテキストハブ内の共同するユーザに関連付けられたクライアントデバイスにユーザ注釈を提示することができる。
【0352】
ユーザ共同マネージャ2524は、プレゼンテーションマネージャ2532を含む。一般に、プレゼンテーションマネージャ2532は、プレゼンテーションモードを生成し、管理する。具体的には、プレゼンテーションマネージャ2532は、作成ユーザに関連付けられたクライアントデバイスを介して入力を受信する。プレゼンテーションマネージャ2532は、ユーザ入力に基づいて、コンテンツを逐次的な順序で編成する。さらに、プレゼンテーションマネージャ2532は、プレゼンテーションデータ構造内のプレゼンテーションデータにコンテンツを関連付ける。プレゼンテーションマネージャ2532は、プレゼンテーショングラフィカルユーザインタフェースおよびプレゼンテーションビューグラフィカルユーザインタフェースを含むグラフィカルユーザインタフェースを管理および提示することができる。
【0353】
ユーザ共同マネージャ2524は、プライベートウェブインデックス作成マネージャ2534を含む。プライベートウェブインデックス作成マネージャ2534は、個人、グループ、さらには編成のためのコンテキストハブ内でアクセスされるコンテンツを格納する。より具体的には、プライベートウェブインデックス作成マネージャ2534は、様々な個人およびグループのためのプライベートウェブインデックスを作成することができる。さらに、ユーザ共同マネージャ2524は、コンテキストモデルを生成し、個人、グループ、および/または編成のためのウェブ検索を最適化する際に使用するために、プライベートウェブインデックスを通信する。
【0354】
1つ以上の実施形態では、コンテキストハブシステム116の構成要素の各々は、任意の適切な通信技術を使用して互いに通信している。加えて、コンテキストハブシステム116の構成要素は、上述の1つ以上のクライアントデバイスを含む1つ以上の他のデバイスと通信することができる。コンテキストハブシステム116の構成要素は、図25A図25Bでは別個であるように示されているが、サブ構成要素のいずれも、単一の構成要素になど、より少ない構成要素に組み合わされ得るか、または特定の実施形態の役割を果たし得るように、より多くの構成要素に分割され得ることが認識されよう。さらに、図25A図25Bの構成要素は、コンテキストハブシステム116に関連して説明されるが、本明細書で説明されるコンテキストハブシステム116と連携して動作を実行するための構成要素の少なくともいくつかは環境内の他のデバイス上で実装され得る。
【0355】
コンテキストハブシステム116の構成要素は、ソフトウェア、ハードウェア、またはその両方を含むことができる。たとえば、コンテキストハブシステム116の構成要素は、コンピュータ可読記憶媒体上に記憶され、1つ以上のコンピューティングデバイス(たとえば、コンピューティングデバイス2500)のプロセッサによって実行可能な1つ以上の命令を含み得る。1つ以上のプロセッサによって実行されると、コンテキストハブシステム116のコンピュータ実行可能命令は、コンピューティングデバイス2500に、本明細書で説明する方法を実行させ得る。代替として、コンテキストハブシステム116の構成要素は、特定の機能または機能グループを実行するための専用処理デバイスなどのハードウェアを備えることができる。加えて、または代替として、コンテキストハブシステム116の構成要素は、コンピュータ実行可能命令とハードウェアとの組合せを含むことができる。
【0356】
さらに、本明細書で説明する機能を実行するコンテキストハブシステム116の構成要素はたとえば、スタンドアロンアプリケーションの一部として、アプリケーションのモジュールとして、コンテンツ管理アプリケーションを含むアプリケーションのプラグインとして、ライブラリ機能または他のアプリケーションによって呼び出され得る機能として、および/またはクラウドコンピューティングモデルとして実装され得る。したがって、コンテキストハブシステム116の構成要素は、パーソナルコンピューティングデバイスまたはモバイルデバイス上のスタンドアロンアプリケーションの一部として実装され得る。
【0357】
本開示の実施形態は、以下でより詳細に説明するように、たとえば、1つ以上のプロセッサおよびシステムメモリなどのコンピュータハードウェアを含む専用または汎用コンピュータを備えるか、または利用することができる。本開示の範囲内の実施形態はまた、コンピュータ実行可能命令および/またはデータ構造を搬送または記憶するための物理的および他のコンピュータ可読媒体を含む。特に、本明細書で説明されるプロセスのうちの1つまたは複数は少なくとも部分的に、非一時的コンピュータ可読媒体において具現化され、1つ以上のコンピューティングデバイス(たとえば、本明細書で説明されるメディアコンテンツアクセスデバイスのいずれか)によって実行可能な命令として実装され得る。一般に、プロセッサ(たとえば、マイクロプロセッサ)は非一時的コンピュータ可読媒体(たとえば、メモリなど)から命令を受信し、それらの命令を実行し、それによって、本明細書で説明するプロセスのうちの1つまたは複数を含む、1つ以上のプロセスを実行する。
【0358】
コンピュータ可読媒体は、汎用または専用コンピュータシステムによってアクセスされ得る任意の利用可能な媒体であり得る。コンピュータ実行可能命令を格納するコンピュータ可読媒体は、非一時的コンピュータ可読格納媒体(デバイス)である。コンピュータ実行可能命令を搬送するコンピュータ可読媒体は伝送媒体である。したがって、限定ではなく例として、本開示の実施形態は、少なくとも2つの明確に異なる種類のコンピュータ可読媒体、すなわち、非一時的コンピュータ可読記憶媒体(デバイス)および伝送媒体を含むことができる。
【0359】
非一時的コンピュータ可読記憶媒体(デバイス)は、RAM、ROM、EEPROM、CD-ROM、ソリッドステートドライブ(「SSD」)(たとえば、RAMに基づく)、フラッシュメモリ、相変化メモリ(「PCM」)、他のタイプのメモリ、他の光ディスク記憶装置、磁気ディスク記憶装置、または他の磁気記憶デバイス、あるいは、コンピュータ実行可能命令またはデータ構造の形態で、所望のプログラムコード手段を記憶するために使用され得、汎用または専用コンピュータによってアクセスされ得る任意の他の媒体を含む。
【0360】
「ネットワーク」は、コンピュータシステムおよび/またはモジュールおよび/または他の電子デバイス間の電子データの転送を可能にする1つ以上のデータリンクとして定義される。ネットワークまたは別の通信接続(有線、無線、または有線もしくは無線の組合せ)を介してコンピュータに情報が転送または提供されるとき、コンピュータは、その接続を伝送媒体として適切に見る。伝送媒体は、コンピュータ実行可能命令またはデータ構造の形態で所望のプログラムコード手段を搬送するために使用することができ、汎用または専用コンピュータによってアクセスすることができるネットワークリンクおよび/またはデータリンクを含むことができる。上記の組合せも、コンピュータ可読媒体の範囲内に含まれるべきである。
【0361】
さらに、様々なコンピュータシステム構成要素に到達すると、コンピュータ実行可能命令またはデータストラクチャの形態のプログラムコード手段は、伝送媒体から非一時的コンピュータ可読記憶媒体(装置)に自動的に転送され得る(またはその逆)。例えば、ネットワークまたはデータリンクを介して受信されたコンピュータ実行可能命令またはデータ構造は、ネットワークインタフェースモジュール(例えば、「ネットワークインタフェースカード」)内のRAMにバッファリングされ、次いで、最終的に、コンピュータシステムRAMおよび/またはコンピュータシステムにおける揮発性の低いコンピュータ記憶媒体(デバイス)に転送され得る。したがって、非一時的コンピュータ可読記憶媒体(デバイス)は、伝送媒体も(または主に)利用するコンピュータシステム構成要素に含まれ得ることを理解されたい。
【0362】
コンピュータ実行可能命令は例えば、プロセッサによって実行されると、汎用コンピュータ、専用コンピュータ、または専用処理デバイスに特定の機能または機能グループを実行させる命令およびデータを含む。いくつかの実施形態では、コンピュータ実行可能命令は、汎用コンピュータ上で実行され、汎用コンピュータを本開示の要素を実装する専用コンピュータに変える。コンピュータ実行可能命令は例えば、バイナリ、アセンブリ言語などの中間フォーマット命令、またはソースコードであってもよい。主題は構造的特徴および/または方法論的動作に特有の言語で説明されてきたが、添付の特許請求の範囲で定義される主題は必ずしも上述の特徴または動作に限定されないことを理解されたい。むしろ、説明される特徴および動作は、特許請求の範囲を実施する例示的な形態として開示される。
【0363】
本開示は、パーソナルコンピュータ、デスクトップコンピュータ、ラップトップコンピュータ、メッセージプロセッサ、ハンドヘルドデバイス、マルチプロセッサシステム、マイクロプロセッサベースまたはプログラマブル家電、ネットワークPC、ミニコンピュータ、メインフレームコンピュータ、移動電話、PDA、タブレット、ページャ、ルータ、スイッチなどを含む、多くのタイプのコンピュータシステム構成を有するネットワークコンピューティング環境において実施され得ることを、当業者は理解されよう。本開示はまた、ネットワークを介して(有線データリンク、無線データリンク、または有線データリンクと無線データリンクの組合せのいずれかによって)リンクされるローカルおよびリモートコンピュータシステムが両方ともタスクを実行する分散システム環境において実施され得る。分散システム環境では、プログラムモジュールは、ローカルメモリ記憶デバイスとリモートメモリ記憶デバイスとの両方に配置することができる。
【0364】
本開示の実施形態はまた、クラウドコンピューティング環境において実装され得る。本明細書では、「クラウドコンピューティング」が構成可能なコンピューティングリソースの共有プールへのオンデマンドネットワークアクセスを可能にするためのモデルとして定義される。例えば、クラウドコンピューティングは、構成可能なコンピューティングリソースの共有プールへのユビキタスで便利なオンデマンドアクセスを提供するために、市場で使用され得る。構成可能なコンピューティングリソースの共有プールは、仮想化を介して迅速にプロビジョニングされ、少ない管理努力またはサービスプロバイダのインタラクションで解放され、次いで、それに応じてスケーリングされ得る。
【0365】
クラウドコンピューティングモデルは例えば、オンデマンドセルフサービス、ブロードネットワークアクセス、リソースプーリング、迅速な弾力性、測定サービスなどの様々な特性から構成され得る。クラウドコンピューティングモデルは例えば、クラウドコンピューティングモデルは、たとえば、サービスとしてのソフトウェア(「SaaS」)、サービスとしてのプラットフォーム(「PaaS」)、サービスとしてのインフラストラクチャ(「IaaS」)など、様々なサービスモデルを公開することもできる。クラウドコンピューティングモデルは、プライベートクラウド、コミュニティクラウド、パブリッククラウド、ハイブリッドクラウドなどの異なる展開モデルを使用して展開することもできる。本明細書および特許請求の範囲では、「クラウドコンピューティング環境」は、クラウドコンピューティングが採用される環境である。
【0366】
図26は、上記で説明したプロセスのうちの1つまたは複数を実行するように構成され得る例示的なコンピューティングデバイス2600のブロック図を示す。サーバ104、クライアントデバイス108a~108n、および/またはコンピューティングデバイスは、コンピューティングデバイス2600などの1つ以上のコンピューティングデバイスを備えることができることを理解されたい。図26に示すように、コンピューティングデバイス2600は、プロセッサ2602と、メモリ2604と、ストレージデバイス2606と、I/Oインタフェース2608と、通信インフラストラクチャ2612によって通信可能に結合され得る通信インタフェース2610とを備えることができる。例示的なコンピューティングデバイス2600が図26に示されているが、図26に示される構成要素は、限定することを意図するものではない。他の実施形態では、追加のまたは代替の構成要素が使用され得る。さらに、いくつかの実施形態では、コンピューティングデバイス2600は、図26に示す構成要素よりも少ない構成要素を含むことができる。次に、図26に示されるコンピューティングデバイス2600の構成要素について、さらに詳細に説明する。
【0367】
特定の実施形態では、プロセッサ2602は、コンピュータプログラムを構成する命令などの命令を実行するためのハードウェアを含む。限定ではなく例として、命令を実行するために、プロセッサ2602は、内部レジスタ、内部キャッシュ、メモリ2604、またはストレージデバイス2606から命令を取り出し(またはフェッチし)、それらをデコードし、実行することができる。特定の実施形態では、プロセッサ2602は、データ、命令、またはアドレスのための1つ以上の内部キャッシュを含み得る。限定ではなく例として、プロセッサ2602は、1つ以上の命令キャッシュ、1つ以上のデータキャッシュ、および1つ以上の変換ルックアサイドバッファ(TLB)を含み得る。命令キャッシュ内の命令は、メモリ2604またはストレージデバイス2606内の命令のコピーであり得る。
【0368】
メモリ2604は、データ、メタデータ、およびプロセッサによる実行のためのプログラムを記憶するために使用され得る。メモリ2604は、ランダムアクセスメモリ(「RAM」)、読み出し専用メモリ(「ROM」)、ソリッドステートディスク(「SSD」)、フラッシュ、相変化メモリ(「PCM」)、または他のタイプのデータ記憶装置など、揮発性および不揮発性メモリのうちの1つまたは複数を含み得る。メモリ2604は、内部または分散メモリであってもよい。
【0369】
ストレージデバイス2606は、データまたは命令を記憶するための記憶装置を含む。限定ではなく例として、ストレージデバイス2606は、上述の非一時的記憶媒体を備えることができる。ストレージデバイス2606は、ハードディスクドライブ(HDD)、フロッピーディスク(登録商標)ドライブ、フラッシュメモリ、光ディスク、光磁気ディスク、磁気テープ、もしくはユニバーサルシリアルバス(USB)ドライブ、またはこれらのうちの2つ以上の組合せを含み得る。ストレージデバイス2606は、必要に応じて、取り外し可能または取り外し不可能な(または固定された)媒体を含むことができる。ストレージデバイス2606は、コンピューティングデバイス2600の内部または外部にあり得る。特定の実施形態では、ストレージデバイス2606は、不揮発性ソリッドステートメモリである。他の実施形態では、ストレージデバイス2606は、読取り専用メモリ(ROM)を含む。適切な場合、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的に変更可能なROM(EAROM)、またはフラッシュメモリ、またはこれらのうちの2つ以上の組合せであってもよい。
【0370】
I/Oインタフェース2608は、ユーザがコンピューティングデバイス2600への入力を提供し、そこから出力を受信し、そうでなければそこからデータを転送し、そこからデータを受信することを可能にする。I/Oインタフェース2608は、マウス、キーパッドもしくはキーボード、タッチスクリーン、カメラ、光スキャナ、ネットワークインタフェース、モデム、他の既知のI/Oデバイス、またはそのようなI/Oインタフェースの組合せを含み得る。I/Oインタフェース2608は、グラフィックスエンジン、ディスプレイ(例えば、ディスプレイ画面)、1つ以上の出力ドライバ(例えば、ディスプレイドライバ)、1つ以上のオーディオスピーカ、および1つ以上のオーディオドライバを含むが、これらに限定されない、出力をユーザに提示するための1つ以上のデバイスを含み得る。いくつかの実施形態では、I/Oインタフェース2608は、ユーザに提示するためにディスプレイにグラフィカルデータを提供するように構成される。グラフィカルデータは、1つ以上のグラフィカルユーザインタフェースおよび/または任意の他のグラフィカルコンテンツを表すことができ、特定の実装を果たすことができる。
【0371】
通信インタフェース2610は、ハードウェア、ソフトウェア、または両方を含むことができる。いずれにしても、通信インタフェース2610は、コンピューティングデバイス2600と1つ以上の他のコンピューティングデバイスまたはネットワークとの間の通信(たとえば、パケットベースの通信など)のための1つ以上のインタフェースを提供することができる。限定ではなく例として、通信インタフェース2610は、イーサネット(登録商標)または他の有線ベースのネットワークと通信するためのネットワークインタフェースコントローラ(NIC)またはネットワークアダプタ、またはWI-FIなどの無線ネットワークと通信するためのワイヤレスNIC(WNIC)またはワイヤレスアダプタを含み得る。
【0372】
追加または代替として、通信インタフェース2610は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、またはインターネットの1つもしくは複数の部分、またはこれらのうちの2つ以上の組合せとの通信を容易にし得る。これらのネットワークのうちの1つ以上の部分は、有線または無線であり得る。一例として、通信インタフェース2610はワイヤレスPAN(WPAN)(たとえば、BLUETOOTH WPANなど)、WI-FIネットワーク、WI-MAXネットワーク、セルラー電話ネットワーク(たとえば、移動通信のためのグローバルシステム(GSM)ネットワークなど)、または他の適切なワイヤレスネットワーク、またはそれらの組合せとの通信を可能にし得る。
【0373】
さらに、通信インタフェース2610は、様々な通信プロトコルの通信を容易にすることができる。使用される通信プロトコルの例は、データ伝送メディア、伝送制御プロトコル(「TCP」)、インターネットプロトコル(「FTP」)、ハイパーテキスト転送プロトコル(「HTTP」)、セッション開始プロトコル(「SIP」)、シンプルオブジェクトアクセスプロトコル(「SOAP」)、拡張可能マークアップ言語(「XML」)、シンプルメール転送プロトコル(「RTP」)、リアルタイム転送プロトコル(「UDP」)、モバイル通信用グローバルシステム(「GSM」)技術、符号分割多元接続(「CDMA」)技術、時分割多元接続(「TDMA」)技術、ショートメッセージサービス(「SMS」)、マルチメディアメッセージサービス(「MMS」)、無線周波数(「RF」)シグナリング技術、ロングタームエボリューション(LTE)技術、無線通信技術、インバンドおよびアウトオブバンドシグナリング技術、ならびに他の適切な通信ネットワークおよび技術を含むが、これらに限定されない。
【0374】
通信インフラストラクチャ2612は、コンピューティングデバイス2600の構成要素を互いに結合するハードウェア、ソフトウェア、またはその両方を含み得る。限定ではなく例として、通信インフラストラクチャ2612は、加速グラフィックスポート(AGP)または他のグラフィックスバス、拡張業界標準アーキテクチャ(EISA)バス、フロントサイドバス(FSB)、HYPERTRANSPORT(HT)インターコネクト、業界標準アーキテクチャ(ISA)バス、INFINIBANDインターコネクト、低ピンカウント(LPC)バス、メモリバス、マイクロチャネルアーキテクチャ(MCA)バス、周辺構成要素インターコネクト(PCI)バス、PCI-Express(PCIe)バス、シリアルアドバンストテクノロジーアタッチメント(SATA)バス、ビデオエレクトロニクス規格関連ローカル(VLB)バス、または別の適切なバス、またはそれらの組合せを含み得る。
【0375】
図27は、コンテキストハブシステム116の1つ以上の実装が実施され得る環境2700を示す概略図である。図1に関して上述したように、いくつかの実施形態では、コンテキストハブシステムは、コンテンツ管理システムの一部とすることができる。そのような場合、コンテキストハブシステムは、以下で説明するように、コンテンツ管理システムの様々な機能を実行することができる。コンテキストハブシステム2702は、デジタルコンテンツ(デジタルビデオなど)を生成、記憶、管理、受信、および送信することができる。例えば、コンテキストハブシステム2702は、ネットワーク2704を介してクライアントデバイス2706との間でデジタルコンテンツを送受信することができる。特に、コンテキストハブシステム2702は、デジタルコンテンツの集合を記憶し、管理することができる。コンテキストハブシステム2702は、複数のユーザに関連付けられたコンピューティングデバイス間のデジタルコンテンツの共有を管理することができる。例えば、コンテキストハブシステム2702は、ユーザがデジタルコンテンツをコンテキストハブシステム2702の別のユーザと共有することを容易にすることができる。
【0376】
特に、コンテキストハブシステム2702は、1人または複数のユーザに関連付けられた複数のクライアントデバイス2706にわたってデジタルコンテンツを同期させることを管理することができる。例えば、ユーザは、クライアントデバイス2706を使用してデジタルコンテンツを編集することができる。コンテキストハブシステム2702は、クライアントデバイス2706に、編集されたデジタルコンテンツをコンテキストハブシステム2702に送信させることができる。コンテキストハブシステム2702は、次いで、編集されたデジタルコンテンツを1つ以上の追加のコンピューティングデバイス上で同期させる。
【0377】
複数のデバイスにわたってデジタルコンテンツを同期させることに加えて、コンテキストハブシステム2702の1つ以上の実施形態は、デジタルコンテンツの大きな集合を有するユーザのための効率的な記憶オプションを提供することができる。例えば、コンテキストハブシステム2702は、デジタルコンテンツの集合をコンテキストハブシステム2702上に格納することができ、一方、クライアントデバイス2706は、デジタルコンテンツの縮小されたサイズのバージョンのみを格納する。ユーザは、クライアントデバイス2706上のデジタルコンテンツの縮小バージョン(例えば、デジタル画像のサムネイル)をナビゲートし、閲覧することができる。特に、ユーザがデジタルコンテンツを体験することができる1つの方法は、クライアントデバイス2706上でデジタルコンテンツの縮小されたバージョンを閲覧することである。
【0378】
ユーザがデジタルコンテンツを体験することができる別の方法は、デジタルコンテンツの縮小バージョンを選択して、コンテキストハブシステム2702からデジタルコンテンツのフルサイズまたは高解像度バージョンを要求することである。特に、ユーザがデジタルコンテンツの縮小バージョンを選択すると、クライアントデバイス2706は、デジタルコンテンツの縮小バージョンに関連付けられたデジタルコンテンツを要求する要求をコンテキストハブシステム2702に送信する。コンテキストハブシステム2702は、デジタルコンテンツをクライアントデバイス2706に送信することによって要求に応答することができる。次いで、クライアントデバイス2706は、デジタルコンテンツを受信すると、デジタルコンテンツをユーザに提示することができる。このようにして、ユーザは、クライアントデバイス2706上で使用されるリソースの量を最小限に抑えながら、デジタルコンテンツの大きな集合にアクセスすることができる。
【0379】
クライアントデバイス2706は、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、携帯情報端末(PDA)、インまたはアウトオブカーナビゲーションシステム、ハンドヘルドデバイス、スマートフォンもしくは他のセルラーもしくはモバイルフォン、またはモバイルゲームデバイス、他のモバイルデバイス、または他の適切なコンピューティングデバイスであり得る。クライアントデバイス2706は、ネットワーク2704を介してコンテンツにアクセスし、閲覧するために、ウェブブラウザ(例えば、Microsoft Windows Internet Explorer、Mozilla Firefox、Apple Safari、Google Chrome、Operaなど)、またはネイティブもしくは専用クライアントアプリケーション(例えば、iPhoneもしくはiPad用のドロップボックスペーパー、Android用のドロップボックスペーパーなど)などの1つ以上のクライアントアプリケーションを実行し得る。
【0380】
ネットワーク2704は、ネットワーク(インターネット、企業イントラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、ワイヤレスローカルエリアネットワーク(WLAN)、セルラーネットワーク、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、または2つ以上のそのようなネットワークの組合せなど)のネットワークまたは集合を表し得、クライアントデバイス2706は、そのネットワークを介してコンテキストハブシステム2702にアクセスし得る。
【0381】
前述の明細書では、本開示は、その特定の例示的な実施形態を参照して説明されてきた。本開示(複数可)の様々な実施形態および態様が本明細書で論じられる詳細を参照して説明され、添付の図面は、様々な実施形態を図示する。上記の説明および図面は本開示を例示するものであり、本開示を限定するものとして解釈されるべきではない。本開示の様々な実施形態の完全な理解を提供するために、多数の具体的な詳細が説明される。
【0382】
本開示は、その趣旨または本質的な特徴から逸脱することなく、他の特定の形態で実施され得る。説明された実装は、すべての点で、例示的なものにすぎず、限定的なものではないと見なされるべきである。たとえば、本明細書で説明する方法は、より少ないまたはより多いステップ/動作で実行され得るか、またはステップ/動作は異なる順序で実行され得る。さらに、本明細書に記載されるステップ/動作は、互いに並行して、または同じもしくは同様のステップ/動作の異なるインスタンスと並行して、繰り返されるか、または実行され得る。したがって、本出願の範囲は、前述の説明によってではなく、添付の特許請求の範囲によって示される。特許請求の範囲の均等物の意味および範囲内に入るすべての変更は、それらの範囲内に包含されるべきである。
【0383】
前述の明細書は、その特定の例示的な実施形態を参照して説明される。本開示の様々な実施形態および態様は本明細書で論じられる詳細を参照して説明され、添付の図面は様々な実施形態を図示する。上記の説明および図面は例示的なものであり、限定として解釈されるべきではない。様々な実装の完全な理解を提供するために、多数の具体的な詳細が説明される。
【0384】
追加または代替の実施形態は、その趣旨または本質的な特徴から逸脱することなく、他の特定の形態で実施され得る。説明された実装は、すべての点で、例示的なものにすぎず、限定的なものではないと見なされるべきである。したがって、本発明の範囲は、前述の説明によってではなく、添付の特許請求の範囲によって示される。特許請求の範囲の均等物の意味および範囲内に入るすべての変更は、それらの範囲内に包含されるべきである。
図1
図2A
図2B
図3A
図3B
図3C
図3D
図3E
図3F
図4
図5
図6
図7
図8
図9
図10
図11
図12
図13A
図13B
図14A
図14B
図15
図16
図17A
図17B
図18
図19A
図19B
図20
図21
図22A
図22B
図23
図24
図25A
図25B
図26
図27