システムの概要
図1は、ソーシャルネットワーキングシステムに関連付けられている例示的なネットワーク環境100を示している。ネットワーク環境100は、ネットワーク110によって互いにつながっているクライアントシステム130、ソーシャルネットワーキングシステム160、およびサードパーティシステム170を含む。図1は、クライアントシステム130、ソーシャルネットワーキングシステム160、サードパーティシステム170、およびネットワーク110の特定の構成を示しているが、本開示は、クライアントシステム130、ソーシャルネットワーキングシステム160、サードパーティシステム170、およびネットワーク110の任意の適切な構成を想定している。限定ではなく、例として、クライアントシステム130、ソーシャルネットワーキングシステム160、およびサードパーティシステム170のうちの複数は、ネットワーク110を迂回して、互いに直接つながることが可能である。別の例として、クライアントシステム130、ソーシャルネットワーキングシステム160、およびサードパーティシステム170のうちの複数は、物理的にまたは論理的に、全体としてまたは部分的に互いに同一場所に配置されることが可能である。その上、図1は、特定の数のクライアントシステム130、ソーシャルネットワーキングシステム160、サードパーティシステム170、およびネットワーク110を示しているが、本開示は、任意の適切な数のクライアントシステム130、ソーシャルネットワーキングシステム160、サードパーティシステム170、およびネットワーク110を想定している。限定ではなく、例として、ネットワーク環境100は、複数のクライアントシステム130、ソーシャルネットワーキングシステム160、サードパーティシステム170、およびネットワーク110を含むことができる。
本開示は、任意の適切なネットワーク110を想定している。限定ではなく、例として、ネットワーク110の1つまたは複数の部分は、アドホックネットワーク、イントラネット、エクストラネット、仮想プライベートネットワーク(VPN)、ローカルエリアネットワーク(LAN)、ワイヤレスLAN(WLAN)、ワイドエリアネットワーク(WAN)、ワイヤレスWAN(WWAN)、メトロポリタンエリアネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの複数の組合せを含むことができる。ネットワーク110は、1つまたは複数のネットワーク110を含むことができる。
リンク150は、クライアントシステム130、ソーシャルネットワーキングシステム160、およびサードパーティシステム170を通信ネットワーク110に、または互いに接続することができる。本開示は、任意の適切なリンク150を想定している。特定の実施形態においては、1つまたは複数のリンク150は、1つもしくは複数の有線リンク(たとえば、デジタルサブスクライバライン(DSL)もしくはデータオーバケーブルサービスインタフェース仕様(DOCSIS)など)、ワイヤレスリンク(たとえば、WiFiもしくはワールドワイドインターオペラビリティーフォーマイクロウェーブアクセス(WiMAX)など)、または光リンク(たとえば、同期光ネットワーク(SONET)もしくは同期デジタル階層(SDH)など)を含む。特定の実施形態においては、1つまたは複数のリンク150はそれぞれ、アドホックネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部分、PSTNの一部分、セルラーテクノロジーベースのネットワーク、衛星通信テクノロジーベースのネットワーク、別のリンク150、または複数のそのようなリンク150の組合せを含む。リンク150は、ネットワーク環境100の全体を通じて必ずしも同じである必要はない。1つまたは複数の第1のリンク150は、1つまたは複数の点において1つまたは複数の第2のリンク150とは異なることが可能である。
特定の実施形態においては、クライアントシステム130は、クライアントシステム130によって実装またはサポートされる適切な機能を実行することができる、ハードウェア、ソフトウェア、もしくは組み込みロジックコンポーネント、または複数のそのようなコンポーネントの組合せを含む電子デバイスであることが可能である。限定ではなく、例として、クライアントシステム130は、デスクトップコンピュータ、ノートブックコンピュータもしくはラップトップコンピュータ、ネットブック、タブレットコンピュータなどのコンピュータシステム、eブックリーダ、GPSデバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含むことができる。本開示は、任意の適切なクライアントシステム130を想定している。クライアントシステム130は、クライアントシステム130のネットワークユーザがネットワーク110にアクセスすることを可能にすることができる。クライアントシステム130は、自分のユーザがその他のクライアントシステム130のその他のユーザと通信することを可能にすることができる。
特定の実施形態においては、クライアント130は、MICROSOFT INTERNET EXPLORER、GOOGLE CHROME、またはMOZILLA FIREFOXなどのウェブブラウザ132を含むことができ、1つまたは複数のアドオン、プラグイン、またはTOOLBARもしくはYAHOO TOOLBARなどのその他の拡張を有することができる。クライアントシステム130のユーザは、ウェブブラウザ132を特定のサーバ(サーバ162、またはサードパーティシステム170に関連付けられているサーバなど)へ導くユニフォームリソースロケータ(URL)またはその他のアドレスを入力することができ、ウェブブラウザ132は、ハイパーテキスト転送プロトコル(HTTP)要求を生成して、そのHTTP要求をサーバに通信することができる。サーバは、そのHTTP要求を受け入れて、そのHTTP要求に応答して1つまたは複数のハイパーテキストマークアップ言語(HTML)ファイルをクライアントシステム130に通信することができる。クライアントシステム130は、ユーザに提示するためにサーバからのHTMLファイルに基づいてウェブページをレンダリングすることができる。本開示は、任意の適切なウェブページファイルを想定している。限定ではなく、例として、ウェブページは、特定のニーズに従って、HTMLファイル、拡張可能ハイパーテキストマークアップ言語(XHTML)ファイル、または拡張可能マークアップ言語(XML)ファイルからレンダリングすることができる。そのようなページは、限定ではなく、例として、JAVASCRIPT(登録商標)、JAVA(登録商標)、MICROSOFT SILVERLIGHTで書かれたスクリプトなどのスクリプト、AJAX(Asynchronous JAVASCRIPT(登録商標) and XML)などのマークアップ言語とスクリプトの組合せなどを実行することもできる。本明細書においては、ウェブページへの参照は、適切な場合には、1つまたは複数の対応するウェブページファイル(そのウェブページをレンダリングするためにブラウザが使用することができる)を含み、その逆もまた同様である。
特定の実施形態においては、ソーシャルネットワーキングシステム160は、オンラインソーシャルネットワークをホストすることができるネットワークアドレス可能なコンピューティングシステムであることが可能である。ソーシャルネットワーキングシステム160は、たとえば、ユーザプロフィールデータ、コンセプトプロフィールデータ、ソーシャルグラフ情報、またはオンラインソーシャルネットワークに関連したその他の適切なデータなどのソーシャルネットワーキングデータを生成すること、格納すること、受け取ること、および送信することが可能である。ソーシャルネットワーキングシステム160は、ネットワーク環境100のその他のコンポーネントによって直接、またはネットワーク110を介してアクセスされることが可能である。特定の実施形態においては、ソーシャルネットワーキングシステム160は、1つまたは複数のサーバ162を含むことができる。それぞれのサーバ162は、単一のサーバ、または複数のコンピュータもしくは複数のデータセンターにわたる分散サーバであることが可能である。サーバ162は、限定ではなく、例として、ウェブサーバ、ニュースサーバ、メールサーバ、メッセージサーバ、広告サーバ、ファイルサーバ、アプリケーションサーバ、Exchangeサーバ、データベースサーバ、プロキシサーバ、本明細書において記述されている機能もしくはプロセスを実行するのに適している別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプのものであることが可能である。特定の実施形態においては、それぞれのサーバ162は、サーバ162によって実装またはサポートされる適切な機能を実行するためのハードウェア、ソフトウェア、もしくは組み込みロジックコンポーネント、または複数のそのようなコンポーネントの組合せを含むことができる。特定の実施形態においては、ソーシャルネットワーキングシステム160は、1つまたは複数のデータストア164を含むことができる。データストア164は、さまざまなタイプの情報を格納するために使用されることが可能である。特定の実施形態においては、データストア164内に格納されている情報は、特定のデータ構造に従って編成されることが可能である。特定の実施形態においては、それぞれのデータストア164は、リレーショナル、コラム、相関関係、または他の好適なデータベースを含むことができる。この開示は、特定のタイプのデータベースを説明する、または図示するが、この開示は、任意の好適なタイプのデータベースを検討する。特定の実施形態は、クライアントシステム130、ソーシャルネットワーキングシステム160、またはサードパーティシステム170が、データストア164内に格納されている情報を管理すること、取り出すこと、変更すること、追加すること、または削除することを可能にするインタフェースを提供することができる。
特定の実施形態においては、ソーシャルネットワーキングシステム160は、1つまたは複数のソーシャルグラフを1つまたは複数のデータストア164内に格納することができる。特定の実施形態においては、ソーシャルグラフは、複数のノード(複数のユーザノード(それぞれが、特定のユーザに対応している)、または複数のコンセプトノード(それぞれが、特定のコンセプトに対応している)を含むことができる)と、ノード同士をつなげる複数のエッジとを含むことができる。ソーシャルネットワーキングシステム160は、オンラインソーシャルネットワークのユーザに、その他のユーザと通信および対話する能力を提供することができる。特定の実施形態においては、ユーザたちは、ソーシャルネットワーキングシステム160を介してオンラインソーシャルネットワークに参加し、次いで、自分たちがつながりたいと望むソーシャルネットワーキングシステム160のその他の複数のユーザにつながり(例えば、関係)を付加することができる。本明細書においては、「友達」という用語は、ユーザがソーシャルネットワーキングシステム160を介して、つながり、関連付け、または関係を形成しているソーシャルネットワーキングシステム160のその他の任意のユーザを指すことができる。
特定の実施形態においては、ソーシャルネットワーキングシステム160は、ソーシャルネットワーキングシステム160によってサポートされるさまざまなタイプのアイテムまたはオブジェクトに関してアクションを行う能力をユーザに提供することができる。限定ではなく、例として、それらのアイテムおよびオブジェクトは、ソーシャルネットワーキングシステム160のユーザが属することが可能であるグループもしくはソーシャルネットワーク、ユーザが関心を抱く可能性があるイベントもしくはカレンダーエントリー、ユーザが使用することができるコンピュータベースのアプリケーション、ユーザがサービスを介してアイテムを購入もしくは販売することを可能にするトランザクション、ユーザが実行することができる広告との対話、またはその他の適切なアイテムもしくはオブジェクトを含むことができる。ユーザは、ソーシャルネットワーキングシステム160において、またはサードパーティシステム170の外部システム(ソーシャルネットワーキングシステム160とは別個のものであって、ネットワーク110を介してソーシャルネットワーキングシステム160に結合されている)によって表されることが可能である任意のものと対話することができる。
特定の実施形態においては、ソーシャルネットワーキングシステム160は、さまざまなエンティティ同士をリンクできることが可能である。限定ではなく、例として、ソーシャルネットワーキングシステム160は、ユーザたちが互いに対話すること、ならびにサードパーティシステム170もしくはその他のエンティティからのコンテンツを受け取ることを可能にすることができ、またはユーザたちがアプリケーションプログラミングインタフェース(API)もしくはその他の通信チャネルを通じてこれらのエンティティと対話することを可能にすることができる。
特定の実施形態においては、サードパーティシステム170は、1つもしくは複数のタイプのサーバ、1つもしくは複数のデータストア、1つもしくは複数のインタフェース(APIを含むが、それには限定されない)、1つもしくは複数のウェブサービス、1つもしくは複数のコンテンツソース、1つもしくは複数のネットワーク、または(たとえば、サーバが通信することができる)その他の任意の適切なコンポーネントを含むことができる。サードパーティシステム170は、ソーシャルネットワーキングシステム160を運営しているエンティティとは異なるエンティティによって運営されることが可能である。しかしながら、特定の実施形態においては、ソーシャルネットワーキングシステム160およびサードパーティシステム170は、ソーシャルネットワーキングシステム160またはサードパーティシステム170のユーザにソーシャルネットワーキングサービスを提供するために互いに連携して機能することができる。この意味において、ソーシャルネットワーキングシステム160は、サードパーティシステム170などのその他のシステムがインターネットを介してソーシャルネットワーキングサービスおよび機能をユーザに提供するために使用することができるプラットフォーム、またはバックボーンを提供することができる。
特定の実施形態においては、サードパーティシステム170は、サードパーティコンテンツオブジェクトプロバイダを含むことができる。サードパーティコンテンツオブジェクトプロバイダは、コンテンツオブジェクトの1つまたは複数のソースを含むことができ、それらのソースは、クライアントシステム130に通信されることが可能である。限定ではなく、例として、コンテンツオブジェクトは、ユーザにとって関心がある物またはアクティビティに関する情報、たとえば、映画の開始時刻、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、またはその他の適切な情報などを含むことができる。限定ではなく、別の例として、コンテンツオブジェクトは、インセンティブコンテンツオブジェクト、たとえば、クーポン、ディスカウントチケット、ギフト券、またはその他の適切なインセンティブオブジェクトを含むことができる。
特定の実施形態においては、ソーシャルネットワーキングシステム160はまた、ユーザによって生成されたコンテンツオブジェクトを含み、それらのコンテンツオブジェクトは、ソーシャルネットワーキングシステム160とのユーザの対話を高めることができる。ユーザによって生成されたコンテンツは、ユーザがソーシャルネットワーキングシステム160に付加、アップロード、送信、または「ポスト(投稿)」することができる任意のものを含むことができる。限定ではなく、例として、ユーザは、クライアントシステム130からソーシャルネットワーキングシステム160へポストを通信する。ポストは、ステータス更新もしくはその他のテキストデータ、ロケーション情報、写真、ビデオ、リンク、音楽、またはその他の類似したデータもしくはメディアなどのデータを含むことができる。コンテンツは、ニュースフィードまたはストリームなどの「通信チャネル」を通じてサードパーティによってソーシャルネットワーキングシステム160に付加されることも可能である。
特定の実施形態においては、ソーシャルネットワーキングシステム160は、さまざまなサーバ、サブシステム、プログラム、モジュール、ログ、およびデータストアを含むことができる。特定の実施形態においては、ソーシャルネットワーキングシステム160は、ウェブサーバ、アクションロガー、API要求サーバ、関連性およびランキングエンジン、コンテンツオブジェクト分類子、通知コントローラ、アクションログ、サードパーティコンテンツオブジェクト露出ログ、推測モジュール、認可/プライバシーサーバ、検索モジュール、広告ターゲティングモジュール、ユーザインタフェースモジュール、ユーザプロフィールストア、つながりストア、サードパーティコンテンツストア、またはロケーションストアのうちの1つまたは複数を含むことができる。ソーシャルネットワーキングシステム160は、適切なコンポーネント、たとえば、ネットワークインタフェース、セキュリティーメカニズム、ロードバランサ、フェイルオーバサーバ、管理およびネットワークオペレーションコンソール、その他の適切なコンポーネント、またはそれらの任意の適切な組合せを含むこともできる。特定の実施形態においては、ソーシャルネットワーキングシステム160は、ユーザプロフィールを格納するための1つまたは複数のユーザプロフィールストアを含むことができる。ユーザプロフィールは、たとえば、経歴情報、人口統計学的情報、挙動情報、ソーシャルな情報、またはその他のタイプの記述的情報、たとえば、職業経験、学歴、趣味もしくは好み、関心、親近感、またはロケーションを含むことができる。関心情報は、1つまたは複数のカテゴリに関連した関心を含むことができる。カテゴリは、一般的または具体的であることが可能である。限定ではなく、例として、ユーザが、あるブランドの靴に関する記事に対して「いいね!」を表明した場合には、カテゴリは、そのブランド、または「靴」もしくは「衣類」という一般的なカテゴリであることが可能である。ユーザに関するつながり情報を格納するために、つながりストアが使用されることが可能である。つながり情報は、類似のもしくは共通の職業経験、グループメンバーシップ、趣味、学歴を有しているか、または何らかの形で関連しているか、もしくは共通の属性を共有しているユーザ同士を示すことができる。つながり情報は、さまざまなユーザおよびコンテンツ(内部および外部の両方)の間におけるユーザ定義のつながりを含むこともできる。ネットワーク110を介してソーシャルネットワーキングシステム160を1つもしくは複数のクライアントシステム130または1つもしくは複数のサードパーティシステム170にリンクさせるために、ウェブサーバが使用されることが可能である。ウェブサーバは、ソーシャルネットワーキングシステム160と、1つまたは複数のクライアントシステム130との間においてメッセージを受け取って回送するためにメールサーバまたはその他のメッセージング機能を含むことができる。API要求サーバは、サードパーティシステム170が、1つまたは複数のAPIを呼び出すことによってソーシャルネットワーキングシステム160からの情報にアクセスすることを可能にすることができる。ソーシャルネットワーキングシステム160の上のまたは外のユーザのアクションに関してウェブサーバから通信を受け取るために、アクションロガーが使用されることが可能である。アクションログとともに、サードパーティコンテンツオブジェクトへのユーザの露出についてのサードパーティコンテンツオブジェクトログが保持されることが可能である。通知コントローラは、コンテンツオブジェクトに関する情報をクライアントシステム130に提供することができる。情報は、通知としてクライアントシステム130へ押し出されることが可能であり、または情報は、クライアントシステム130から受け取られた要求に応答してクライアントシステム130から引き出されることが可能である。ソーシャルネットワーキングシステム160のユーザの1つまたは複数のプライバシー設定を実施するために、認可サーバが使用されることが可能である。ユーザのプライバシー設定は、ユーザに関連付けられている特定の情報がどのように共有されることが可能であるかを識別する。認可サーバは、ユーザが、たとえば、適切なプライバシー設定を設定することなどによって、自分のアクションをソーシャルネットワーキングシステム160によって記録されること、またはその他のシステム(たとえば、サードパーティシステム170)と共有されることのオプトインまたはオプトアウトを行うことを可能にすることができる。サードパーティシステム170などのサードパーティから受け取られたコンテンツオブジェクトを格納するために、サードパーティコンテンツオブジェクトストアが使用されることが可能である。ユーザに関連付けられているクライアントシステム130から受け取られたロケーション情報を格納するために、ロケーションストアが使用されることが可能である。広告価格設定モジュールが、ソーシャルな情報、現在時刻、ロケーション情報、またはその他の適切な情報を組み合わせて、関連がある広告を、通知の形式でユーザに提供することができる。
ソーシャルグラフ
図2は、例示的なソーシャルグラフ200を示している。特定の実施形態においては、ソーシャルネットワーキングシステム160は、1つまたは複数のソーシャルグラフ200を1つまたは複数のデータストア内に格納することができる。特定の実施形態においては、ソーシャルグラフ200は、複数のノード(複数のユーザノード202、または複数のコンセプトノード204を含むことができる)と、ノード同士をつなげる複数のエッジ206とを含むことができる。図2において示されている例示的なソーシャルグラフ200は、教示上の目的から、2次元のビジュアルマップ表示で示されている。特定の実施形態においては、ソーシャルネットワーキングシステム160、クライアントシステム130、またはサードパーティシステム170は、適切なアプリケーションに関してソーシャルグラフ200および関連したソーシャルグラフ情報にアクセスすることができる。ソーシャルグラフ200のノードおよびエッジは、データオブジェクトとして、たとえば(ソーシャルグラフデータベースなどの)データストア内に格納されることが可能である。そのようなデータストアは、ソーシャルグラフ200のノードまたはエッジの1つまたは複数の検索可能なまたはクエリ可能なインデックスを含むことができる。
特定の実施形態においては、ユーザノード202は、ソーシャルネットワーキングシステム160のユーザに対応することができる。限定ではなく、例として、ユーザは、ソーシャルネットワーキングシステム160と、またはソーシャルネットワーキングシステム160を介して対話または通信する個人(人間のユーザ)、エンティティ(たとえば、企業、ビジネス、もしくはサードパーティアプリケーション)、または(たとえば、個人もしくはエンティティの)グループであることが可能である。特定の実施形態においては、あるユーザがソーシャルネットワーキングシステム160とのアカウントに登録した場合には、ソーシャルネットワーキングシステム160は、そのユーザに対応するユーザノード202を作成し、そのユーザノード202を1つまたは複数のデータストア内に格納することができる。本明細書において記述されているユーザおよびユーザノード202は、適切な場合には、登録されているユーザ、および登録されているユーザに関連付けられているユーザノード202を指すことができる。追加として、または代替として、本明細書において記述されているユーザおよびユーザノード202は、適切な場合には、ソーシャルネットワーキングシステム160に登録されていないユーザを指すことができる。特定の実施形態においては、ユーザノード202は、ユーザによって提供された情報、またはソーシャルネットワーキングシステム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロフィール画像、連絡先情報、生年月日、性別、婚姻状況、家族状況、勤務先、学歴、好み、関心、またはその他の人口統計学的情報を提供することができる。特定の実施形態においては、ユーザノード202は、ユーザに関連付けられている情報に対応する1つまたは複数のデータオブジェクトに関連付けられることが可能である。特定の実施形態においては、ユーザノード202は、1つまたは複数のウェブページに対応することができる。
特定の実施形態においては、コンセプトノード204は、コンセプトに対応することができる。限定ではなく、例として、コンセプトは、場所(たとえば、映画館、レストラン、ランドマーク、もしくは都市など)、ウェブサイト(たとえば、ソーシャルネットワークシステム160に関連付けられているウェブサイト、もしくはウェブアプリケーションサーバに関連付けられているサードパーティウェブサイトなど)、エンティティ(たとえば、人、企業、グループ、スポーツチーム、もしくは有名人など)、ソーシャルネットワーキングシステム160内に、もしくはウェブアプリケーションサーバなどの外部サーバ上に配置されることが可能であるリソース(たとえば、オーディオファイル、ビデオファイル、デジタル写真、テキストファイル、構造化されたドキュメント、もしくはアプリケーションなど)、物的もしくは知的財産(たとえば、彫塑、絵画、映画、ゲーム、曲、アイディア、写真、もしくは執筆作品など)、ゲーム、アクティビティ、アイディアもしくは理論、別の適切なコンセプト、または複数のそのようなコンセプトに対応することができる。コンセプトノード204は、ユーザによって提供されたコンセプトの情報、またはソーシャルネットワーキングシステム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、コンセプトの情報は、名前もしくはタイトル、1つもしくは複数のイメージ(たとえば、本の表紙のイメージ)、ロケーション(たとえば、住所もしくは地理的ロケーション)、ウェブサイト(URLに関連付けられることが可能である)、連絡先情報(たとえば、電話番号もしくは電子メールアドレス)、その他の適切なコンセプト情報、またはそのような情報の任意の適切な組合せを含むことができる。特定の実施形態においては、コンセプトノード204は、コンセプトノード204に関連付けられている情報に対応する1つまたは複数のデータオブジェクトに関連付けられることが可能である。特定の実施形態においては、コンセプトノード204は、1つまたは複数のウェブページに対応することができる。
特定の実施形態においては、ソーシャルグラフ200内のノードは、ウェブページ(「プロフィールページ」と呼ばれる場合もある)を表すこと、またはウェブページによって表されることが可能である。プロフィールページは、ソーシャルネットワーキングシステム160によってホストされること、またはソーシャルネットワーキングシステム160にとってアクセス可能であることが可能である。プロフィールページは、サードパーティサーバ170に関連付けられているサードパーティウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロフィールページは、その特定の外部ウェブページであることが可能であり、そのプロフィールページは、特定のコンセプトノード204に対応することができる。プロフィールページは、その他のユーザのうちのすべてまたは選択されたサブセットによって閲覧できることが可能である。限定ではなく、例として、ユーザノード202は、対応するユーザプロフィールページを有することができ、そのユーザプロフィールページにおいては、対応するユーザが、コンテンツを付加すること、言明を行うこと、またはその他の形で自分自身を表現することが可能である。限定ではなく、別の例として、コンセプトノード204は、対応するコンセプトプロフィールページを有することができ、そのコンセプトプロフィールページにおいては、1人または複数のユーザが、特にコンセプトノード204に対応するコンセプトに関連して、コンテンツを付加すること、言明を行うこと、または自分自身を表現することが可能である。
特定の実施形態においては、コンセプトノード204は、サードパーティシステム170によってホストされているサードパーティウェブページまたはリソースを表すことができる。サードパーティウェブページまたはリソースは、数ある要素の中でも、コンテンツ、選択可能なもしくはその他のアイコン、または、アクションもしくはアクティビティを表す(たとえば、JAVASCRIPT(登録商標)、AJAX、もしくはPHPコードで実装されることが可能である)その他の対話可能なオブジェクトを含むことができる。限定ではなく、例として、サードパーティウェブページは、「いいね!」、「チェックイン」、「食べる」、「推奨する」、または別の適切なアクションもしくはアクティビティなどの選択可能なアイコンを含むことができる。サードパーティウェブページを閲覧しているユーザは、それらのアイコンのうちの1つ(たとえば、「チェックイン」)を選択することによってアクションを実行して、クライアントシステム130に、そのユーザのアクションを示すメッセージをソーシャルネットワーキングシステム160へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキングシステム160は、ユーザに対応するユーザノード202と、サードパーティウェブページまたはリソースに対応するコンセプトノード204との間においてエッジ(たとえば、「チェックインタイプ」エッジ)を作成して、エッジ206を1つまたは複数のデータストア内に格納することができる。
特定の実施形態においては、ソーシャルグラフ200内の1対のノードが、1つまたは複数のエッジ206によって互いにつながることが可能である。1対のノードをつなげるエッジ206は、それらの1対のノードの間における関係を表すことができる。特定の実施形態においては、エッジ206は、1対のノードの間における関係に対応する1つまたは複数のデータオブジェクトまたは属性を含むことまたは表すことが可能である。限定ではなく、例として、第1のユーザは、第2のユーザが第1のユーザの「友達」であることを示すことができる。この表示に応答して、ソーシャルネットワーキングシステム160は、「友達要求」を第2のユーザに送信することができる。第2のユーザがその「友達要求」を承認した場合には、ソーシャルネットワーキングシステム160は、ソーシャルグラフ200内で第1のユーザのユーザノード202を第2のユーザのユーザノード202につなげるエッジ206を作成して、エッジ206をソーシャルグラフ情報としてデータストア164のうちの1つまたは複数の中に格納することができる。図2の例においては、ソーシャルグラフ200は、ユーザ「A」のユーザノード202と、ユーザ「B」のユーザノード202との間における友達関係を示すエッジ206と、ユーザ「C」のユーザノード202と、ユーザ「B」のユーザノード202との間における友達関係を示すエッジとを含む。本開示は、特定のユーザノード202同士をつなげる特定の属性を伴う特定のエッジ206を記述している、または示しているが、本開示は、ユーザノード202同士をつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。限定ではなく、例として、エッジ206は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係(例えば、好みを表明すること等を含む)、フォロワー関係、ビジター関係(アクセスすること、視聴すること、チェックインすること、共有すること等を含む)、サブスクライバ関係、上下関係、互恵的関係、非互恵的関係、別の適切なタイプの関係、または複数のそのような関係を表すことができる。その上、本開示は一般に、ノード同士をつながっているものとして記述しているが、本開示はまた、ユーザ同士またはコンセプト同士をつながっているものとして記述している。本明細書においては、つながっているユーザ同士またはコンセプト同士への言及は、適切な場合には、1つまたは複数のエッジ206によってソーシャルグラフ200内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士を指すことができる。
特定の実施形態においては、ユーザノード202とコンセプトノード204との間におけるエッジ206は、ユーザノード202に関連付けられているユーザによって、コンセプトノード204に関連付けられているコンセプトに対して実行された特定のアクションまたはアクティビティを表すことができる。限定ではなく、例として、図2において示されているように、ユーザは、コンセプトに対して「いいね!を表明すること」、「通うこと」、「プレイすること」、「聴くこと」、「料理すること」、「勤務すること」、または「観ること」を行った可能性があり、それらのそれぞれは、エッジタイプまたはサブタイプに対応することができる。コンセプトノード204に対応するコンセプトプロフィールページは、たとえば、選択可能な「チェックイン」アイコン(たとえば、クリック可能な「チェックイン」アイコンなど)、または選択可能な「お気に入りに追加」アイコンを含むことができる。同様に、ユーザがこれらのアイコンをクリックした後に、ソーシャルネットワーキングシステム160は、それぞれのアクションに対応するユーザのアクションに応答して「お気に入り」エッジまたは「チェックイン」エッジを作成することができる。限定ではなく、別の例として、あるユーザ(ユーザ「C」)が、特定のアプリケーション(オンライン音楽アプリケーションであるSPOTIFY)を使用して特定の曲(「イマジン」)を聴く場合がある。このケースにおいては、ソーシャルネットワーキングシステム160は、そのユーザに対応するユーザノード202と、その曲およびアプリケーションに対応するコンセプトノード204との間において、「聴いた」エッジ206(図2に示されている)および「使用した」エッジを作成して、そのユーザがその曲を聴いてそのアプリケーションを使用したことを示すことができる。その上、ソーシャルネットワーキングシステム160は、その曲に対応するコンセプトノード204と、そのアプリケーションに対応するコンセプトノード204との間において、「再生した」エッジ206(図2に示されている)を作成して、その特定の曲がその特定のアプリケーションによって再生されたことを示すことができる。このケースにおいては、「再生した」エッジ206は、外部アプリケーション(SPOTIFY)によって外部オーディオファイル(「イマジン」という曲)に関して実行されたアクションに対応する。本開示は、ユーザノード202とコンセプトノード204とをつなげる特定の属性を伴う特定のエッジ206について記述しているが、本開示は、ユーザノード202とコンセプトノード204とをつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。その上、本開示は、単一の関係を表すユーザノード202とコンセプトノード204との間におけるエッジについて記述しているが、本開示は、1つまたは複数の関係を表すユーザノード202とコンセプトノード204との間におけるエッジを想定している。限定ではなく、例として、エッジ206は、ユーザが特定のコンセプトに対して「いいね!」を表明していること、およびその特定のコンセプトを使用したことの両方を表すことができる。あるいは、別のエッジ206は、ユーザノード202とコンセプトノード204との間におけるそれぞれのタイプの関係(または、単一の関係が複数集まったもの)を表すことができる(図2において、ユーザ「E」を表すユーザノード202と、「SPOTIFY」を表すコンセプトノード204との間において示されているように)。
特定の実施形態においては、ソーシャルネットワーキングシステム160は、ソーシャルグラフ200内でユーザノード202とコンセプトノード204との間においてエッジ206を作成することができる。限定ではなく、例として、(たとえば、ユーザのクライアントシステム130によってホストされているウェブブラウザまたは専用のアプリケーションを使用することなどによって)コンセプトプロフィールページを閲覧しているユーザは、「いいね!」アイコンをクリックまたは選択することにより、コンセプトノード204によって表されているコンセプトを自分が気に入っていることを示すことができ、その「いいね!」アイコンをクリックまたは選択することは、ユーザのクライアントシステム130に、そのコンセプトプロフィールページに関連付けられているそのコンセプトをそのユーザが気に入っていることを示すメッセージをソーシャルネットワーキングシステム160へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキングシステム160は、そのユーザとコンセプトノード204との間における「いいね!」エッジ206によって示されているように、そのユーザに関連付けられているユーザノード202とコンセプトノード204との間においてエッジ206を作成することができる。特定の実施形態においては、ソーシャルネットワーキングシステム160は、エッジ206を1つまたは複数のデータストア内に格納することができる。特定の実施形態においては、エッジ206は、特定のユーザアクションに応答してソーシャルネットワーキングシステム160によって自動的に形成されることが可能である。限定ではなく、例として、第1のユーザが、画像をアップロードすること、映画を観ること、または曲を聴くことを行った場合には、エッジ206は、第1のユーザに対応するユーザノード202と、それらのコンセプトに対応するコンセプトノード204との間において形成されることが可能である。本開示は、特定の様式で特定のエッジ206を形成することについて記述しているが、本開示は、任意の適切な様式で任意の適切なエッジ206を形成することを想定している。
カスタマイズされた通知およびディープリンク
図3は、ソーシャルネットワーキングシステム160に関連付けられた例示的なメディアプレーヤデバイス環境300を示す。メディアプレーヤデバイス環境300は、メディアプレーヤデバイス320、ディスプレイスクリーン310、クライアントシステム130、ソーシャルネットワーキングシステム160、およびサードパーティシステム170を含み、それぞれがネットワーク110に接続されている。メディアプレーヤデバイス320は、有線接続または無線接続によってディスプレイスクリーン310に通信可能に接続し得る。クライアントシステム130およびソーシャルネットワーキングシステム160は、メディアプレーヤデバイス320によって互いに接続されているように示されている。図3は、メディアプレーヤデバイス320、ディスプレイスクリーン310、クライアントシステム130、ソーシャルネットワーキングシステム160、サードパーティシステム170、およびネットワーク110の特定の構成を示すが、本開示は、メディアプレーヤデバイス320、ディスプレイスクリーン310、クライアントシステム130、ソーシャルネットワーキングシステム160、サードパーティシステム170、およびネットワーク110の任意の適切な構成を企図する。限定ではなく一例として、クライアントシステム130およびソーシャルネットワーキングシステム160は、メディアプレーヤデバイス320およびネットワーク110を回避して互いに直接接続されてもよい。別の例として、メディアプレーヤデバイス320およびディスプレイスクリーン310は、ネットワーク110を介して互いに接続されてもよい。図3は1つのクライアントシステム130を示しているが、任意の適切な数のクライアントシステム130がメディアプレーヤデバイス320に対して認証されてもよい。上述したように、図1に関連して、リンク150は、メディアプレーヤデバイス320、ディスプレイスクリーン310、クライアントシステム130、ソーシャルネットワーキングシステム160、およびサードパーティシステム170をネットワーク110に接続するか、または互いに接続し得る。
特定の実施形態は、ユーザのクライアントシステム130とメディアプレーヤデバイス320またはソーシャルネットワーキングシステム160に関連する他の適切なシステムとの間のディープリンキングを可能にする。本明細書で使用する場合、メディアプレーヤデバイス320は、メディアプレーヤデバイス320に近接する任意の数のクライアントシステムと無線通信するのに適した任意のデバイスであり得る。メディアプレーヤデバイス320は、無線接続または有線接続を介して少なくとも1つのディスプレイスクリーンに通信可能に接続され、かつソーシャルネットワーキングシステム160と無線通信することができる。メディアプレーヤデバイス320は、例えば、無線自動識別、近距離無線通信、超音波、ブルートゥース(登録商標)(BLUETOOTH(登録商標))(例えば、短距離無線周波数)、ブルートゥース低エネルギー(BLUETOOTH low energy(登録商標))、または任意の他の適切な無線通信方法、特に、短距離無線通信方法(例えば、約300フィート(91.44メートル)未満)を介して無線通信を送受信し得る。メディアプレーヤデバイスは、ユーザまたはクライアントシステムがメディアプレーヤデバイスの表面に接触したことを検出し、検出された接触に応答してメディアプレーヤデバイスに対してクライアントシステム130を認証するようなタッチセンス式であり得る。メディアプレーヤデバイスは、2014年8月15日に出願された「ブルートゥースクラウドソースの三角法(Bluetooth Crowd-Sourced Triangulation)」と題する米国特許出願第14/460,886号、2014年8月15日に出願された「ブルートゥース伝送セキュリティパターン(Bluetooth Transmission Security Pattern)」と題する米国特許出願第14/460,880号、2014年8月15日に出願された「ブルートゥースビーコンプロトコル(Bluetooth Beacon Protocol)」と題する米国特許出願第14/460,891号、2012年3月9日に出願された「地理的位置信号に基づく動的プロセッサデューティサイクルの決定(Dynamic Processor Duty Cycle Determination Based on Geographic Positioning Signals)」と題する米国特許出願第13/416,975号、2012年3月9日に出願された「地理的位置決め可能なデバイスのための位置追跡(Location Tracking for Geographic Positioning Capable Devices)」と題する米国特許出願第13/417,013号、および2012年3月27日に出願された「地理的位置決め可能なデバイスのための動的地理的ビーコン(Dynamic Geographic Beacons for Geographic Positioning Capable Devices)」と題する米国特許出願第13/431,842号に記載されているタイプのハードウェアまたはソフトウェア機能のいずれかを有し得る。メディアプレーヤデバイスは、1つまたは複数のサードパーティコンテンツプロバイダと無線で通信することが可能であり得る。サードパーティシステム170は、サードパーティコンテンツプロバイダのシステムであり得る。サードパーティコンテンツプロバイダは、限定ではなく一例として、メディアコンテンツ(例えば、音楽およびビジュアルメディアコンテンツ)の所有者および/または配信者であり得る。参照により本明細書に組み込まれる、2015年8月26日に出願された「オンラインソーシャルネットワーク上のメディアプレーヤデバイスに対するユーザの認証(Authenticating Users to Media-Player Devices on Online Social Networks)」と題する米国特許出願第14/836,206号に記載されているように、ユーザのクライアントシステム130が、メディアプレーヤデバイス320の範囲内に進入した場合(例えば、クライアントシステム130がメディアプレーヤデバイスの少なくとも1つのアンテナの範囲内に存在し、かつ少なくとも1つのアンテナから信号を受信することができる場合、クライアントシステム130はメディアプレーヤデバイスの範囲内に存在し得る)、またはメディアプレーヤデバイス320と接触した場合(例えば、ユーザが自身のクライアントシステム130でメディアプレーヤデバイス320をタップする)、クライアントシステム130とメディアプレーヤデバイス320との間の無線通信に基づいてメディアプレーヤデバイス320が認証され得る。
特定の実施形態では、メディアプレーヤデバイス320は、無線通信を送受信するための任意の適切な数のアンテナ(例えば、指向性アンテナ)を有し得る。クライアントシステム130上のアプリケーションが、クライアントシステム130においてメディアプレーヤデバイス320のアンテナから受信される信号の強度に基づいて各アンテナの範囲を定義するために使用されてもよい。本明細書に参照として組み込まれる、2015年8月26日に出願された「メディアプレーヤデバイスのユーザが定義したカバレッジ(User-Defined Coverage of Media-Player Devices on Online Social Networks)」と題する米国特許出願第14/836,245号に記載されているように、メディアプレーヤデバイス320は、1つまたは複数のアンテナを有することができ、カバレッジ範囲を定義するために各アンテナを調整することができる。
特定の実施形態では、クライアントシステム130は、クライアントシステム130が1つまたは複数のメディアプレーヤデバイス320のしきい値距離以内に存在する(即ち、それに近接している)と判断し得る。特定の実施形態では、クライアントシステム130が1つまたは複数のメディアプレーヤデバイス320の無線範囲内に存在する場合、クライアントシステム130は、クライアントシステム130が1つまたは複数のメディアプレーヤデバイス320のしきい値距離以内に存在すると判断する。特定の実施形態では、クライアントシステム130上で動作しているアプリケーション330は、クライアントシステム130が1つまたは複数のメディアプレーヤデバイス320のしきい値距離以内に存在すると判断し得る。限定ではなく一例として、アプリケーション330は、ソーシャルネットワーキングシステム160に関連付けられたネイティブアプリケーションであり得、ユーザはソーシャルネットワーキングシステム160にログインすることができる。限定ではなく一例として、クライアントシステム130上で動作しているアプリケーション330は、クライアントシステム130がローカルエリアネットワーク(LAN)に接続されていると判断し、メディアプレーヤデバイス320もLANに接続されていると判断し、従って、そのクライアントシステム130は、メディアプレーヤデバイス320に近接している(即ち、しきい値距離以内に存在する)と判断する。限定ではなく別の例として、クライアントシステム130上で動作しているアプリケーション330は、ブルートゥースを使用して、クライアントシステム130がメディアプレーヤデバイス320に近接している(即ち、しきい値距離以内に存在する)と判断し得る。限定ではなく一例として、ユーザは、自身のクライアントシステム130上でソーシャルネットワーキングシステム160にログインすることができ、ソーシャルネットワーキングシステム160は、ユーザが1つまたは複数のメディアデバイスに近接していることをクライアントシステム130上で動作しているソーシャルネットワーキングシステム160に関連付けられたアプリケーションを介して(例えば、WiFiまたはブルートゥース検出技術を使用して)判断し得る。クライアントシステム130は、クライアントシステム130と同じネットワークに接続されたデバイスまたはアプリケーションをスキャンするための他の任意の適切な技術を含む、クライアントシステム130がメディアプレーヤデバイス320のしきい値距離以内に存在すると判断するための任意の適切な技術を使用し得る。クライアントシステム130がメディアプレーヤデバイス320に近接しているとクライアントシステム130が判断すると、クライアントシステム130はソーシャルネットワーキングシステム160に表示を送信し得る。表示は、クライアントシステム130がメディアプレーヤデバイス320に近接していることを特定し得る。特定の実施形態では、クライアントシステム130上で動作しているアプリケーション330は、その表示をソーシャルネットワーキングシステム160に送信し得る。表示は、特定のメディアプレーヤデバイス320に関する情報を含み得る。限定ではなく一例として、クライアントシステム130がメディアプレーヤデバイス320に近接していることを検出すると、クライアントシステム130は、メディアプレーヤデバイス320のシリアル番号、デバイスID、または他の適切な一意の識別子、メディアプレーヤデバイス320のタイプ(例えば、APPLE TV(商標)、SKYSTREAM TVボックス、またはメディアプレーヤデバイス320のタイプの任意の他の適切な表示)、メディアプレーヤデバイス320の機能(例えば、高精細度マルチメディアインタフェース(HDMI)および/または赤外線互換性)、メディアプレーヤデバイス320に関連する任意の他の適切な情報、またはそれらの任意の組み合わせを検出し得る。クライアントシステム130は、次に、メディアプレーヤデバイス情報を(例えば、表示の一部として)ソーシャルネットワーキングシステム160に送信し得る。メディアプレーヤデバイス情報は、クライアントシステム130、ソーシャルネットワーキングシステム160、またはその両方が、メディアプレーヤデバイス320に関連付けられている少なくとも1つのサードパーティシステム170(例えば、サードパーティコンテンツプロバイダ)を決定することを可能にし得る。メディアプレーヤデバイス320に関連付けられた特定の1つまたは複数のサードパーティシステム170は、ユーザの1つまたは複数のサブスクリプション(例えば、サードパーティシステム170を用いたメディアコンテンツのサブスクリプション)に依存し得る。限定ではなく一例として、ユーザは、HBOおよびSHOWTIMEへのサブスクリプションを有するAPPLE TVを有し得る。サードパーティシステム170は、コンテンツプロバイダ(例えば、APPLE(登録商標)、HBO、およびSHOWTIME)であり得る。同じ例では、ソーシャルネットワーキングシステム160は、表示およびメディアプレーヤデバイス情報を受信したことに応答して、メディアプレーヤデバイス320がAPPLE、HBO、SHOWTIME、またはそれらの任意の組み合わせを含むサードパーティシステム170に関連付けられていると判断し得る。
特定の実施形態では、ソーシャルネットワーキングシステム160は、1つまたは複数のメディアコンテンツアイテムに関連するコンテンツ情報にアクセスし得る。メディアコンテンツアイテムは、限定ではなく一例として、オーディオビジュアルコンテンツ、ビデオコンテンツ、オーディオコンテンツ、画像、任意の他の適切なメディアコンテンツ、またはそれらの任意の組合せを含み得る。メディアコンテンツアイテムは、限定ではなく一例として、1つまたは複数のサードパーティシステム170からまたはソーシャルネットワーキングシステム160からメディアプレーヤデバイス320によって取得されるか、またはソーシャルネットワーキングシステム160の1人または複数のユーザによって生成されるか、またはソーシャルネットワーキングシステム160に対して公開され得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、クライアントシステム130が1つまたは複数のメディアプレーヤデバイス320に近接しているという表示の受信に応答して、1つまたは複数のメディアコンテンツアイテムに関連付けられたコンテンツ情報にアクセスし得る。メディアコンテンツアイテムに関するコンテンツ情報は、限定ではなく一例として、メディアコンテンツアイテムに関するバックグラウンド情報(例えば、要約、ジャンル、設定、評価、レビュー、出演者の情報、公開日、および任意の他の適切なバックグラウンド情報)、メディアコンテンツアイテムが放送される、ストリーミングされる、または他の方法でユーザに利用可能にされるときのスケジュール、メディアコンテンツアイテムにアクセスするためのディープリンク情報、個々のメディアコンテンツアイテムに関する任意の他の適切なバックグラウンド情報を含み得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、(例えば、ユーザは、メディアコンテンツアイテムをカバーするアクティブなサブスクリプションを有する)ユーザがアクセスしているメディアコンテンツアイテムについてのみコンテンツ情報にアクセスし得る。即ち、1つまたは複数のメディアコンテンツアイテムの各々は、メディアプレーヤデバイス320においてユーザに対してアクセス可能であり得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、特定のメディアプレーヤデバイス320上で利用可能なメディアコンテンツアイテム(例えば、現在再生中のテレビ番組のエピソード、メディアプレーヤデバイス320のデバイスIDに関連付けられたサブスクリプションに基づいてオンデマンドで利用可能な映画、または任意の他の適切なメディアコンテンツアイテム)を決定するために、メディアプレーヤデバイス320に関連付けられた識別情報を用いて1つまたは複数のサードパーティシステム170に問い合わせ得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、特定のメディアコンテンツアイテムに関連するサードパーティシステム170(例えば、特定のメディアコンテンツアイテムのサードパーティコンテンツプロバイダであるサードパーティシステム170)からメディアコンテンツアイテムに関するコンテンツ情報を取得し得る)。限定ではなく一例として、ソーシャルネットワーキングシステム160は、1つまたは複数のメディアコンテンツアイテムに関するコンテンツ情報を求める要求をサードパーティシステム170に送信し得、その要求は、メディアプレーヤデバイス320から受信したバックグラウンド情報(例えば、メディアプレーヤデバイス320のデバイスID、サブスクリプション情報、または任意の他の適切な情報)、ソーシャルネットワーキング情報(例えば、ユーザのプロファイルに格納されたユーザサブスクリプション情報、ユーザID、または任意の他の適切なソーシャルネットワーキング情報)、またはその両方を含み得る。限定ではなく一例として、ソーシャルネットワーキングシステム160は、(例えば、メディアプレーヤデバイス320から取得した情報に基づいて)ユーザがHBOおよびSHOWTIMEを使用するアクティブなサブスクリプションを有していると判断し、ソーシャルネットワーキングシステム160は、HBOおよびSHOWTIME(即ち、サードパーティシステム170)から、ゲーム・オブ・スローンズ(GAME OF THRONES)(即ち、HBOに関連するメディアコンテンツアイテム)およびホームランド(HOMELAND)(即ち、SHOWTIMEに関連するメディアコンテンツアイテム)に関するコンテンツ情報を取得し得る。限定ではなく別の例として、メディアプレーヤデバイス320は、APPLE TVデバイスであり得、ソーシャルネットワーキングシステム160は、APPLEに関連付けられたサードパーティシステム170からゲーム・オブ・スローンズおよびホームランドに関するコンテンツ情報を取得し得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、ユーザが現在アクセスを有していない(例えば、ユーザはメディアコンテンツアイテムをカバーするアクティブなサブスクリプションを有していない)が、ユーザが(例えば、サブスクリプションプランの一部として、またはアイテム単位で)アクセス権を購入するか、またはプロモーションオファーの一部としてアクセスすることができるメディアコンテンツアイテムに関するコンテンツ情報にアクセスし得る。
特定の実施形態では、ソーシャルネットワーキングシステム160は、ユーザ(即ち、1つまたは複数のメディアプレーヤデバイス320に近接しているクライアントシステム130に関連付けられたユーザ)のソーシャルネットワーキング情報にアクセスし得る。ソーシャルネットワーキングシステム160は、クライアントシステム130から受信した表示および1つまたは複数のメディアコンテンツアイテムのアクセスされたコンテンツ情報に応答して、ユーザのソーシャルネットワーキング情報にアクセスすることができる。ユーザのソーシャルネットワーキング情報は、限定ではなく一例として、人口統計学的情報(例えば、年齢、性別、国籍、人種、民族、および地域)、伝記的情報(例えば、名前、写真、誕生日、星座)、嗜好(例えば、音楽、本、映画、および食物の嗜好)、アフィニティ(affinity)情報(例えば、ユーザがアフィニティを表明したエンティティに関する情報)、視聴履歴情報(例えば、ユーザが視聴するか、他の場合、ユーザがインタラクションしたコンテンツ)、広告情報(例えば、表示されている広告や広告のコンバージョン)、支払い資格情報、購入履歴、ロイヤリティポイントまたはクレジット、ソーシャルグラフ情報(例えば、ソーシャルグラフ200におけるしきい値の隔たり度合(threshold degree of separation)内のソーシャルつながりおよびそれらのつながりのソーシャルネットワーキング情報)、ソーシャルネットワーキングシステム160上のユーザのプロファイルに格納された任意の他の情報、任意の他の適切なユーザに関連する情報、またはそれらの任意の組み合わせを、ユーザのプライバシーの優先傾向、またはソーシャルネットワーキングシステム160によって課される他の制限を条件として、含み得る。限定ではなく一例として、第1のユーザのソーシャルネットワーキング情報は、しきい値の隔たり度合を隔ててソーシャルグラフ200内のクライアントシステム130の第1のユーザに接続されている1人または複数人の他のユーザに関するアフィニティ情報を含み得る(例えば、1次つながりは、第1のユーザの「友達」であり得る)。アフィニティ情報は、各ユーザについて、限定ではなく一例として、(例えば、ソーシャルネットワーキングシステム160上のエンティティに関連付けられたページを「好みであることを表明する」ことによって)個々のユーザがアフィニティを表明した1つまたは複数のエンティティ(例えば、人、場所、トピック、テレビ番組、バンド、または任意の他の適切なエンティティ)を含み得る。限定ではなく別の例として、ユーザのソーシャルネットワーキング情報は、1人または複数人の他のユーザが現在視聴しているものに関する情報を含み得、ここで、他のユーザは、ソーシャルグラフ200内でしきい値の隔たり度合(例えば、1次つながり)を隔ててクライアントシステム130のユーザに接続されている。特定の実施形態では、ソーシャルネットワーキングシステム160は、クライアントシステム130の位置情報にアクセスし得る。限定ではなく一例として、ソーシャルネットワーキングシステム160は、クライアントシステム130からクライアントシステム130の位置情報を受信し得る。位置情報は、限定ではなく一例として、GPS機能または任意の他の適切な地理的測位機能を使用して決定された位置情報を含み得る。限定ではなく別の例として、位置情報は、ユーザによって行われたソーシャルネットワーキングアクション(例えば、メディアプレーヤが位置している場所に関連するページまたはイベントにおいてユーザがチェックインした)に基づいて、ソーシャルネットワーキングシステム160によって決定され得る。
特定の実施形態において、ソーシャルネットワーキングシステム160は、ソーシャルネットワーキングシステム160が関連するコンテンツ情報にアクセスした1つまたは複数のメディアコンテンツアイテムからメディアコンテンツアイテムを選択し得る。限定ではなく一例として、選択されたメディアコンテンツアイテムは、テレビ番組のエピソード、映画、歌、ビデオクリップ、任意の他の適切なメディアコンテンツ、またはそれらの任意の組み合わせであり得る。ソーシャルネットワーキングシステム160は、コンテンツ情報およびユーザのソーシャルネットワーキング情報に基づいてメディアコンテンツアイテムを選択し得る。限定ではなく一例として、ソーシャルネットワーキングシステム160は、メディアコンテンツアイテムに関するスケジューリング情報を含むコンテンツ情報(例えば、メディアコンテンツアイテムは、ユーザが加入しているサードパーティシステム160によって放送されようとしているテレビのエピソードである)に基づいて、およびユーザがテレビのエピソードの主題についてアフィニティを表明しているか、または潜在的にアフィニティを有し得るという表示を含むユーザのソーシャルネットワーキング情報(例えば、ユーザが他の殺人ミステリーメディアコンテンツに関して「好みであることを表明した」ページを有し、かつテレビシリーズの基になっている本を読んだことを示しているか、またはその本が「好みであることを表明している」)に基づいてユーザにとって関心があると予測されるメディアコンテンツアイテム(例えば、殺人ミステリーのテレビのエピソード)を選択し得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、クライアントシステム130の位置情報にさらに基づいてメディアコンテンツアイテムを選択し得る。ソーシャルネットワーキングシステム160は、ユーザの場所にいる他のユーザが現在何を視聴しているのか、または何の視聴に興味があり得るのかに基づいて、ユーザのための特定のメディアコンテンツアイテムを選択し得る。限定ではなく一例として、ソーシャルネットワーキングシステム160は、ユーザのスポーツに対して表現された関心に基づいて(例えば、ユーザがスポーツに関して好みであることを表明しているページを有する)、およびユーザがカリフォルニア州オークランドに居住していることを示すユーザの位置情報に基づいてウォリアーズのバスケットボールゲーム(即ち、メディアコンテンツアイテム)を選択し得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、ソーシャルネットワーキングシステム160が関連するコンテンツ情報にアクセスした1つまたは複数のメディアコンテンツアイテムから複数のメディアコンテンツアイテムを選択し得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、本明細書に参照として組み込まれる、2015年8月26日に出願された「オンラインソーシャルネットワーク上のメディアコンテンツのカスタマイズ(Customizing Media Content on Online Social Networks)」と題する米国特許出願第14/836,300号に記載されたように、1つまたは複数のメディアコンテンツアイテムを選択し得る。特定の実施形態では、ソーシャルネットワーキングシステム160はまた、複数のユーザのソーシャルネットワーキング情報に基づいてメディアコンテンツアイテムを識別し得る。限定ではなく一例として、第2のユーザのクライアントシステムもメディアプレーヤデバイス320に近接し得、そのユーザは自身のクライアントシステム130上で動作するアプリケーション330を介してソーシャルネットワーキングシステム160にログインし得る。ソーシャルネットワーキングシステム160は、第1のユーザのクライアントシステムが近接しているのと同じメディアプレーヤデバイス320に近接しているという表示を第2のユーザのクライアントシステム130から受信し得る。ソーシャルネットワーキングシステム160は、限定ではなく一例として、特定の映画を視聴することへの興味を表していることを示すソーシャルネットワーキングシステム160上のユーザ間の通信に基づいて特定の映画(即ち、メディアコンテンツアイテム)を引き続き選択し得る。特定の実施形態では、ソーシャルネットワーキングシステム160は、ソーシャルネットワーキングシステム160が(例えば、ユーザのクライアントシステム130から受信した表示によって)メディアプレーヤデバイス320に近接していることを認知している1人または複数人のユーザのソーシャルネットワーキング情報を分析して、1人または複数人のユーザ間の共通点を判定し得る。限定ではなく一例として、ソーシャルネットワーキングシステム160は、各ユーザのソーシャルネットワーキング情報が、各ユーザが特定のテレビ番組に対するアフィニティを表明していることを示しており、このテレビ番組で最近新しいエピソードが視聴可能になったと判断し得る。ソーシャルネットワーキングシステム160は、テレビ番組の新しいエピソードを引き続き選択し得る。ソーシャルネットワーキングシステム160は、一部の視聴者(即ち、存在するすべてのユーザより少ない)のソーシャルネットワーキング情報における共通性に基づいてメディアコンテンツアイテムを選択し得る。限定ではなく別の例として、メディアプレーヤデバイス320に近接している3人のユーザのうち2人のソーシャルネットワーキング情報は、2人のユーザが特定のスパイドラマ番組を頻繁に視聴したことを示し得、ソーシャルネットワーキングシステム160は、スパイドラマ番組を選択し得る。
特定の実施形態では、ソーシャルネットワーキングシステム160は、カスタマイズされた通知をクライアントシステムに送信し得、カスタマイズされた通知は、選択されたメディアコンテンツアイテムへの参照およびクライアントシステム130が近接しているメディアプレーヤデバイス320へのディープリンクを含み得る。ソーシャルネットワーキングシステム160は、ユーザのクライアントシステム130に近接していると判断したメディアプレーヤデバイス320のためのディープリンクを特定して生成し得る。ソーシャルネットワーキングシステム160は、メディアプレーヤデバイス320のバックグラウンド情報に基づいて(例えば、メディアプレーヤデバイス320の機能に基づいて)ディープリンクを生成し得る。限定ではなく一例として、メディアプレーヤデバイス320は、HDMI機能を有し得、ソーシャルネットワーキングシステム160は、ディープリンクに、HDMI機能に基づいてメディアプレーヤデバイス320、付属のディスプレイスクリーン310、またはその両方の電源を投入するための命令を含むようにすることができる。ソーシャルネットワーキングシステム160は、選択されたメディアコンテンツアイテムに関するコンテンツ情報に基づいて(例えば、メディアコンテンツアイテムが放送される時間およびメディアコンテンツアイテムが放送されるサードパーティコンテンツプロバイダアプリケーションまたはチャンネルに基づいて)ディープリンクを生成し得る。ソーシャルネットワーキングシステム160は、ユーザのクライアントシステム130へのディープリンクと共にカスタマイズされた通知を送信し得る。ディープリンクは、選択可能な要素(例えば、「今すぐ視聴する」ボタン)としてクライアントシステム130のインタフェースにおいて(即ち、カスタマイズされた通知で)ユーザに提示され得る。ディープリンクは、メディアプレーヤデバイス320を介して選択されたメディアコンテンツアイテムにアクセスするための命令を含み得る。(例えば、クライアントシステム130のインタフェースにおけるユーザ入力によって)選択されると、ディープリンクはクライアントシステム130に命令をメディアプレーヤデバイス320に送信させ得る。命令は、限定ではなく一例として、メディアプレーヤデバイス320、接続されたディスプレイスクリーン310、またはその両方の電源を投入するための命令を含み得る。命令は、限定ではなく一例として、メディアディスプレイデバイス320を特定のチャンネルに切り替えるか、またはメディアディスプレイデバイス320上で動作するアプリケーションを起動し、選択されたメディアコンテンツアイテムを表示するようにメディアディスプレイデバイス320に指示する命令を含み得る。限定ではなく一例として、ユーザは、ユーザのクライアントシステム130上の選択されたメディアコンテンツアイテムに関する通知(即ち、カスタマイズされた通知内のディープリンク)における「今すぐ視聴する」ボタンを選択し得、クライアントシステム130は、「今すぐ視聴する」ボタンの選択に応答して、命令を近接のメディアプレーヤデバイス320に送信して、メディアプレーヤデバイス320または接続されたディスプレイスクリーン310の視聴者に表示するために選択されたメディアコンテンツアイテムを起動しロードし得る。特定の実施形態では、ディープリンクは、本明細書に参照として組み込まれる2015年10月26日に出願された「ソーシャルプラグインのための検索インデックス(Search Indices for Social Plug-ins)」と題する米国特許出願第14/923,095号、2015年10月26日に出願された「ソーシャルプラグインのための検索インデックス(Search Indices for Social Plug-ins)」と題する米国特許出願第14/923,150号、2015年10月26日に出願された「ソーシャルプラグインを用いたアプリケーションコンテンツの検索(Searching for Application Content with Social Plug-ins)」と題する米国特許出願第14/923,191号、および2016年7月14日に出願された「メディアプレーヤデバイスのためのオンラインソーシャルネットワーク上のコンテンツ通知(Content Notification on Online Social Networks for Media-Player Devices)」と題する米国特許出願第15/210,681号に記載されている種類の機能を有し得る。
本開示は、ソーシャルネットワーキングシステム160によって実施されるものとして図3の特定の実施形態を説明および例示しているが、本開示は、任意の適切なインタフェース上で生じ、かつ任意の適切なプラットフォームまたはシステムによって実施されるような図3の任意の適切な実施形態を企図する。限定ではなく一例として、図3の特定の実施形態は、クライアントシステム130、サードパーティシステム170、またはメディアプレーヤデバイス320によって実施され得る。さらに、本開示は図3の方法の特定のステップを実行する特定の構成要素、デバイス、またはシステムを説明し例示しているが、本開示は図3の方法の任意の適切なステップを実行する任意の適切な構成要素、デバイス、またはシステムの任意の適切な組み合わせを企図する。
図4Aは、クライアントシステム130上の通知420およびディープリンク410の一例を示す図である。特定の実施形態では、ソーシャルネットワーキングシステム160は、カスタマイズされた通知420およびディープリンク410を生成し、ユーザに表示するためにクライアントシステム130に送信し得る。図4Aに示す例では、通知420は、クライアントシステム130上で動作しているアプリケーション330のフィード430に表示される。アプリケーション330は、ソーシャルネットワーキングシステム160に関連するネイティブアプリケーションであり得る。特定の実施形態では、通知420は、選択されたメディアコンテンツアイテムへの参照を含み得る。限定ではなく一例として、通知420は、選択されたメディアコンテンツアイテムの視覚的な説明、選択されたメディアコンテンツアイテムのテキストによる説明、またはその両方を含み得る。図4Aに示す例では、選択されたメディアコンテンツアイテムは、ドッグ(DOG)と称されるテレビ番組のエピソード1であり、通知420は、視覚的参照(即ち、エピソード1に関連付けられたドーナツを食べる犬の画像)およびテキストによる参照(即ち、選択された番組名「ドッグ」および特定のエピソードは両方ともディープリンク410のテキスト内で識別される)の両方を含む。特定の実施形態では、通知420は広告であり得る。図4Aには、「ドッグのエピソード1を今すぐ視聴する!」という対話型要素としてディープリンク410が示されている。ユーザは、クライアントシステム130においてディープリンク410とインタラクションする(即ち、選択する)ことができる。選択が受信されると、アプリケーション330はクライアントシステム130にディープリンク410に関連する命令をメディアプレーヤデバイス320に送信させ得る。命令は、限定ではなく一例として、クライアントシステム130およびメディアプレーヤデバイス320が同じWiFiネットワークに接続されている場合、WiFi接続を介してまたはブルートゥースを介してなど、任意の適切な技法を使用して送信され得る。
クライアントシステム130によって送信され、かつメディアプレーヤデバイス320によって受信される命令は、選択されたメディアコンテンツアイテムにメディアプレーヤデバイス320を介してアクセスするための命令であり得る。特定の実施形態では、メディアプレーヤデバイス320は、命令の受信に応答して、選択されたメディアコンテンツアイテム(即ち、ディープリンク410に関連付けられた選択されたメディアコンテンツアイテム)を取得し得る。限定ではなく一例として、メディアプレーヤデバイス320は、選択されたメディアコンテンツアイテムのコンテンツプロバイダであるサードパーティシステム170から選択されたメディアコンテンツアイテムを取得し得る。限定ではなく別の例として、選択されたメディアコンテンツアイテムは、メディアプレーヤデバイス320にローカルに格納され、メディアプレーヤデバイス320は、クライアントシステム130からの命令の受信に応答してローカルに格納されたメディアコンテンツアイテムにアクセスし得る。限定ではなく別の例として、選択されたメディアコンテンツアイテムは、特定のチャンネルで放送されてもよく、メディアプレーヤデバイス320は、選択されたメディアコンテンツアイテムにアクセスするために特定のチャンネルに同調し得る。特定の実施形態では、メディアプレーヤデバイス320は、クライアントシステム130から受信した命令に応答して、選択されたメディアコンテンツアイテムをユーザに提示し得る。限定ではなく一例として、メディアプレーヤデバイス320は、選択されたメディアコンテンツアイテムにアクセスし、そのメディアコンテンツアイテムをディスプレイスクリーン310上に表示するために提示し得る。特定の実施形態では、メディアプレーヤデバイス320は、ディスプレイスクリーン310を含み得る(即ち、メディアプレーヤデバイス320のハードウェアに統合される)。特定の実施形態では、ディープリンク410は、特定の時間に選択されたメディアコンテンツアイテムにアクセスし提示するためのメディアプレーヤデバイス320に対する命令を含み得る。限定ではなく一例として、ソーシャルネットワーキングシステム160は、選択されたメディアコンテンツアイテムのコンテンツ情報に基づいて、選択されたメディアコンテンツアイテムが5分後に放送されることを決定し得る。ソーシャルネットワーキングシステム160は、通知420をユーザのクライアントシステム130に送信し得、ディープリンクは「5分後に視聴する」と示し得る。ユーザがディープリンクを選択すると、ディープリンク410は、5分が経過した後にクライアントシステム130に命令を送信させ得るか、またはクライアントシステム130は、選択が受信されると直ちにメディアプレーヤデバイス320に命令を送信し、命令は、5分経過した後にメディアプレーヤデバイス320に選択されたメディアコンテンツアイテムをユーザに提示させ得る。
特定の実施形態では、ユーザおよびユーザのクライアントシステム130は、2つ以上のメディアプレーヤデバイス320に近接し得る(例えば、同じWiFiネットワークの無線範囲内または同じWiFiネットワークに接続されている)。この状況では、クライアントシステム130上のアプリケーション330は、(例えば、各メディアプレーヤデバイス320から受信した表示により)近接するメディアプレーヤデバイス320を決定し、近接するメディアプレーヤデバイス320のリストを生成し得る。アプリケーション330は、ユーザがディープリンク410を選択したことに応答して、クライアントシステム130においてユーザに近接するメディアプレーヤデバイス320のリストを提示し得る。クライアントシステム130は、近接するメディアプレーヤデバイス320のうちどれがクライアントシステム130に最も近いかを、限定ではなく一例として、ブルートゥースを使用して決定し得、クライアントシステム130は、最も近いメディアプレーヤデバイス320を(例えば、近接するメディアプレーヤデバイス320のリスト内の)好ましいメディアプレーヤデバイス320としてユーザに提示し得る。ユーザは、ディープリンクが接続する先として希望するメディアプレーヤデバイス320を選択し得る(例えば、ユーザは、リビングルームでメディアコンテンツアイテムを視聴することを希望し、リビングルームに位置するAPPLE TVデバイスを選択し得る)。クライアントシステム130は、続いてディープリンクに関連する命令を選択されたメディアプレーヤデバイス320に送信し得る。
図4Bは、クライアントシステム130上のプッシュ通知440およびディープリンク410の一例を示す図である。特定の実施形態では、ソーシャルネットワーキングシステム160は、ユーザへの表示のためにプッシュ通知440およびディープリンク410を生成してクライアントシステム130に送信し得る。図4Bに示す例では、プッシュ通知440は、クライアントシステム130上で動作するアプリケーション330のフィード430をオーバーレイするものとして表示されている。限定ではなく一例として、プッシュ通知440は、クライアントシステム130のロック画面上に提供されるか、またはクライアントシステム130の任意の適切な画面上にホバリングするプッシュ通知であり得る。限定するものではなく別の例として、プロンプト410は、本明細書に参照として組み込まれる、2014年8月22日に出願された「オンラインソーシャルネットワーク上のユーザアクションに応答したカードの生成(Generating Cards in Response to User Actions on Online Social Networks)」と題する米国特許出願第14/466,269号に記載されている種類のリアクションカードであり得る。特定の実施形態では、ユーザは、設定において、プッシュ通知440を表示するかどうか、およびどのように表示するかを指定することができる。
本開示はソーシャルネットワーキングシステム160によって実施されるものとして図4Aおよび図4Bの特定の実施形態を説明および例示するが、本開示は、任意の適切なインタフェース上で生じ、かつ任意の適切なプラットフォームまたはシステムによって実施されるような図4Aおよび4Bの任意の適切な実施形態を企図する。限定ではなく一例として、図4Aおよび図4Bの特定の実施形態は、クライアントシステム130、サードパーティシステム170、またはメディアプレーヤデバイス320によって実施され得る。さらに、本開示は図4Aおよび図4Bの方法の特定のステップを実行する特定の構成要素、デバイス、またはシステムを説明および例示しているが、本開示は図4Aおよび4Bの方法の任意の適切なステップを実行する任意の適切な構成要素、デバイス、またはシステムの任意の適切な組み合わせを企図する。
図5は、クライアントシステム130上のメッセージングアプリケーション510におけるディープリンク410の一例を示す図である。特定の実施形態では、通知およびディープリンク410は、メッセージングアプリケーションを介して第1のユーザまたは1人または複数人の第2のユーザによって送信され得る。図5に示す例では、2人のユーザが会話をしており、第1のユーザは第2のユーザであるジョンにゲーム・オブ・スローンズのシーズン6のエピソード10を視聴することを促す通知を送信する。特定の実施形態において、ユーザは、クライアントシステム130を介してソーシャルネットワーキングシステム160にメディアコンテンツアイテムに対する要求を送信し得る。限定ではなく一例として、ユーザは、自身のクライアントシステム130またはメディアプレーヤデバイス320上の利用可能なメディアコンテンツアイテムのリストにアクセスし、メディアコンテンツアイテム全体またはメディアコンテンツアイテムの選択されたクリップを要求するためのオプションを選択し得る。ソーシャルネットワーキングシステム160は、受信した要求に応答して通知およびディープリンク410を生成し、クライアントシステム130に送信し得る。特定の実施形態では、ユーザは、続いてディープリンクを利用し得る(即ち、ユーザへのメディアコンテンツアイテムの提示のために近接するメディアプレーヤデバイス320に送信され得るディープリンク410を選択する)。特定の実施形態では、ユーザは、通知およびディープリンク410を1人または複数人の他のユーザに、限定ではなく一例として、メッセージングアプリケーション510、電子メール、テキストメッセージ、または通知およびディープリンク410を1人または複数人の他のユーザに通信するための任意の他の適切な技法を介して送信し得る。受信側ユーザは、続いて自身のクライアントシステム130上のアプリケーション330におけるディープリンク410を選択し得る。アプリケーション330は、受信側ユーザのクライアントシステムに対する近接するメディアプレーヤデバイス320を検出し、送信側ユーザによって選択されたメディアコンテンツアイテムの受信側ユーザへの提示のためにディープリンク410の命令を近接するメディアプレーヤデバイス320に送信し得る。特定の実施形態では、受信側ユーザのメディアプレーヤデバイス320は、受信側ユーザがアクセス可能である場合、(例えば、関連するサードパーティシステム170とのアクティブなサブスクリプションにより)共有メディアコンテンツアイテムを提示することのみが可能となり得る。特定の実施形態では、メディアプレーヤデバイス320は、受信側ユーザが通常はアクセスできない場合であっても(例えば、送信側ユーザのサブスクリプションプランが所定数のディープリンク410がデモベースでメディアコンテンツアイテムを視聴するために他のユーザと共有することを許可し得る)、共有メディアコンテンツアイテムをユーザに提示することができる。
本開示は、ソーシャルネットワーキングシステム160によって実施されるものとして図5の特定の実施形態を説明および例示しているが、本開示は、任意の適切なインタフェース上で生じ、かつ任意の適切なプラットフォームまたはシステムによって実施されるような図5の任意の適切な実施形態を企図する。限定ではなく一例として、図5の特定の実施形態は、クライアントシステム130、サードパーティシステム170、またはメディアプレーヤデバイス320によって実施され得る。さらに、本開示は図5の方法の特定のステップを実行する特定の構成要素、デバイス、またはシステムを説明および例示しているが、本開示は図5の方法の任意の適切なステップを実行する任意の適切な構成要素、デバイス、またはシステムの任意の適切な組み合わせを企図する。
図6は、カスタマイズされた通知をクライアントシステム130に送信するための例示的な方法を示す。方法は、ソーシャルネットワーキングシステム160が、オンラインソーシャルネットワークの第1のユーザの第1のクライアントシステム130から、メディアプレーヤデバイス320が第1のクライアントシステム130に近接しているという表示を受信するステップ610で開始する。ステップ620において、ソーシャルネットワーキングシステム160は、1つまたは複数のメディアコンテンツアイテムに関連付けられたコンテンツ情報にアクセスする。1つまたは複数のメディアコンテンツアイテムは、メディアプレーヤデバイス320を介して第1のユーザにアクセス可能なものである。ステップ630において、ソーシャルネットワーキングシステム160は、受信した表示およびコンテンツ情報に応じて、第1のユーザのソーシャルネットワーキング情報にアクセスする。ステップ640において、ソーシャルネットワーキングシステム160は、コンテンツ情報および第1のユーザのソーシャルネットワーキング情報に基づいて、1つまたは複数のメディアコンテンツアイテムのうちの1つのメディアコンテンツアイテムを選択する。ステップ650において、ソーシャルネットワーキングシステム160は、カスタマイズされた通知を第1のクライアントシステム130に送信する。カスタマイズされた通知は、選択されたメディアコンテンツアイテムへの参照およびメディアプレーヤデバイス320へのディープリンクを含む。ディープリンクは、第1のユーザによって選択可能であり、ディープリンクは、メディアプレーヤデバイス320を介して選択されたメディアコンテンツアイテムにアクセスするための命令を含む。
本開示は図6の方法の特定のステップを特定の順序で生じるものとして説明および図示しているが、本開示は任意の適切な順序で生じる図6の方法の任意の適切なステップを企図する。さらに、本開示は、図6の方法の特定のステップを含む、カスタマイズされた通知をクライアントシステム130に送信するための例示的な方法を説明および例示しているが、本開示は、必要に応じて、図6の方法のステップの全部、一部を含むか、またはステップのどれも含まない任意の適切なステップを含む、クライアントシステム130にカスタマイズ通知を送信するための任意の適切な方法を企図する。さらに、本開示は図6の方法の特定のステップを実行する特定の構成要素、デバイス、またはシステムを説明および例示しているが、本開示は、図6の方法の任意の適切なステップを実行する任意の適切な構成要素、デバイス、またはシステムの任意の適切な組み合わせを企図する。限定ではなく一例として、図6の方法の特定のステップは、クライアントシステム130、サードパーティシステム170、またはメディアプレーヤデバイス320によって実行され得る。
図7は、クライアントシステム130上のディープリンクを使用してメディアプレーヤデバイス320を介してメディアコンテンツアイテムにアクセスするための例示的な方法を示す。方法はステップ710において開始し、オンラインソーシャルネットワークのユーザのクライアントシステム130は、クライアントシステム130のインタフェースにおいて、ディープリンクを選択するユーザ入力を受け取る。ディープリンクは、メディアプレーヤデバイス320を介してメディアコンテンツアイテムにアクセスするための命令を含む。ディープリンクは、メディアコンテンツアイテムを参照するオンラインソーシャルネットワークからの通知からユーザによって選択される。メディアプレーヤデバイス320は、クライアントシステム130に近接している。ステップ720において、クライアントシステム130は、ディープリンクの選択に応答して、メディアプレーヤデバイス320を介して選択されたメディアコンテンツアイテムにアクセスするための命令をメディアプレーヤデバイス320に送信する。
本開示は図7の方法の特定のステップを特定の順序で生じるものとして説明および図示しているが、本開示は任意の適切な順序で生じる図7の方法の任意の適切なステップを企図する。さらに、本開示は、図7の方法の特定のステップを含む、クライアントシステム130上のディープリンクを使用してメディアプレーヤデバイス320を介してメディアコンテンツアイテムにアクセスするための例示的な方法を説明および例示しているが、本開示は、必要に応じて図7の方法のステップの全部、一部を含むか、またはステップのどれも含まない任意の適切なステップを含む、クライアントシステム130上のディープリンクを使用してメディアプレーヤデバイス320を介してメディアコンテンツアイテムにアクセスするための任意の適切な方法を企図する。さらに、本開示は図7の方法の特定のステップを実行する特定の構成要素、デバイス、またはシステムを説明および例示しているが、本開示は、図7の方法の任意の適切なステップを実行する任意の適切な構成要素、デバイス、またはシステムの任意の適切な組み合わせを企図する。限定ではなく一例として、図7の方法の特定のステップは、ソーシャルネットワーキングシステム160、サードパーティシステム170、またはメディアプレーヤデバイス320によって実行され得る。
ソーシャルグラフアフィニティおよび係数
特定の実施形態において、ソーシャルネットワーキングシステム160は、互いに対するさまざまなソーシャルグラフのエンティティのソーシャルグラフアフィニティ(social−graph affinity)(本明細書においては「アフィニティ」と呼ばれることがある)を決定し得る。アフィニティは、ユーザ、コンセプト、コンテンツ、アクション、広告、オンラインソーシャルネットワークに関連付けられているその他のオブジェクト、またはこれらの任意の好適な組み合わせなどのオンラインソーシャルネットワークに関連付けられている特定のオブジェクトの間の関係の強さまたは関心のレベルを表し得る。また、アフィニティは、サードパーティシステム170またはその他の好適なシステムに関連付けられているオブジェクトに関連して決定され得る。各ユーザ、対象、またはコンテンツの種類に対するソーシャルグラフのエンティティに関する全体的なアフィニティが、確立されることが可能である。全体的なアフィニティは、ソーシャルグラフのエンティティに関連付けられているアクションまたは関係の継続的な監視に基づいて変わり得る。本開示は、特定のやり方で特定のアフィニティを決定することを説明するが、任意の好適なやり方で任意の好適なアフィニティを決定することを想定する。
特定の実施形態において、ソーシャルネットワーキングシステム160は、アフィニティ係数(affinity coefficient)(本明細書においては「係数」と呼ばれることがある)を使用してソーシャルグラフアフィニティを測定または定量化し得る。係数は、オンラインソーシャルネットワークに関連付けられている特定のオブジェクトの間の関係の強さを表すかまたは定量化し得る。また、係数は、ユーザがアクションに対するユーザの関心に基づいて特定のアクションを実行する予想された確率を測定する確率または関数を表すことが可能である。このようにして、ユーザの将来のアクションが、ユーザの以前のアクションに基づいて予想される可能性があり、係数が、ユーザのアクションの履歴に少なくとも部分的に基づいて計算され得る。係数は、オンラインソーシャルネットワークの中または外にある可能性がある任意の数のアクションを予想するために使用され得る。限定ではなく例として、これらのアクションは、メッセージを送信すること、コンテンツをポストすること、もしくはコンテンツにコメントすることなどのさまざまな種類の通信、プロファイルページ、メディア、もしくはその他の好適なコンテンツにアクセスするかもしくはそれを閲覧することなどのさまざまな種類の観測アクション、同じグループにいること、同じ写真にタグ付けされること、同じ位置にチェックインされること、もしくは同じイベントに参加することなどの2つ以上のソーシャルグラフのエンティティについてのさまざまな種類の一致情報、またはその他の好適なアクションを含み得る。本開示は、特定のやり方でアフィニティを測定することを説明するが、任意の好適なやり方でアフィニティを測定することを想定する。
特定の実施形態において、ソーシャルネットワーキングシステム160は、さまざまな因子を使用して係数を計算し得る。これらの因子は、たとえば、ユーザのアクション、オブジェクトの間の関係の種類、位置情報、その他の好適な因子、またはこれらの任意の組み合わせを含み得る。特定の実施形態においては、係数を計算するときに、異なる因子が異なるように重み付けされることが可能である。各因子に関する重みは、静的であることが可能であり、または重みは、たとえば、ユーザ、関係の種類、アクションの種類、ユーザの位置などに従って変わり得る。因子に関するレーティングが、ユーザに関する全体的な係数を決定するためにそれらの因子の重みに従って組み合わされ得る。限定ではなく例として、特定のユーザのアクションが、レーティングと重みとの両方を割り振られ得る一方、特定のユーザのアクションに関連付けられている関係は、レーティングおよび相関重み(correlating weight)を割り当てられる(たとえば、したがって、重みは合計で100%になる)。特定のオブジェクトに対するユーザの係数を計算するために、ユーザのアクションに割り振られるレーティングが、たとえば、全体的な係数の60%を含み得る一方、ユーザとオブジェクトとの間の関係は、全体的な係数の40%を含み得る。特定の実施形態において、ソーシャルネットワーキングシステム160は、係数を計算するために使用されるさまざまな因子に関する重みを決定するときに、たとえば、情報がアクセスされてからの時間、減衰因子、アクセスの頻度、情報との関係もしくは情報がアクセスされたオブジェクトとの関係、オブジェクトに接続されたソーシャルグラフのエンティティとの関係、ユーザのアクションの短期的もしくは長期的平均、ユーザのフィードバック、その他の好適な変数、またはこれらの任意の組み合わせなどのさまざまな変数を考える可能性がある。限定ではなく例として、係数は、係数を計算するときにより最近のアクションがより関連性を持つように、特定のアクションによって提供される信号の強度を時間とともに減衰させる減衰因子を含むことが可能である。レーティングおよび重みは、係数が基づくアクションの継続的な追跡に基づいて継続的に更新され得る。各因子に関するレーティングおよび因子に割り振られる重みの割り振り、組み合わせ、平均などのために任意の種類のプロセスまたはアルゴリズムが採用され得る。特定の実施形態において、ソーシャルネットワーキングシステム160は、履歴的アクションおよび過去のユーザの応答、またはユーザをさまざまなオプションに露出し、応答を測定することによってユーザから養われたデータで訓練された機械学習アルゴリズムを使用して係数を決定し得る。本開示は、特定のやり方で係数を計算することを説明するが、任意の好適なやり方で係数を計算することを想定する。
特定の実施形態において、ソーシャルネットワーキングシステム160は、ユーザのアクションに基づいて係数を計算し得る。ソーシャルネットワーキングシステム160は、オンラインソーシャルネットワーク、サードパーティシステム170、その他の好適なシステム、またはこれらの任意の組み合わせでそのようなアクションを監視し得る。任意の好適な種類のユーザのアクションが、追跡または監視され得る。典型的なユーザのアクションは、プロファイルページを閲覧すること、コンテンツを作成またはポストすること、コンテンツとインタラクションすること、画像をタグ付けすることまたは画像でタグ付けされること、グループに参加すること、イベントへの出席をリストに載せることおよび確認すること、位置にチェックインすること、特定のページに「いいね!」を表明すること、ページを作成すること、ならびにソーシャルアクションを容易にするその他のタスクを実行することを含む。特定の実施形態において、ソーシャルネットワーキングシステム160は、特定の種類のコンテンツとのユーザのアクションに基づいて係数を計算し得る。コンテンツは、オンラインソーシャルネットワーク、サードパーティシステム170、または別の好適なシステムに関連付けられることが可能である。コンテンツは、ユーザ、プロファイルページ、ポスト、ニュース記事、ヘッドライン、インスタントメッセージ、チャットルームの会話、電子メール、広告、ピクチャ、ビデオ、音楽、その他の好適なオブジェクト、またはこれらの任意の組み合わせを含み得る。ソーシャルネットワーキングシステム160は、ユーザのアクションを分析して、アクションのうちの1つまたは複数が対象、コンテンツ、その他のユーザなどに関するアフィニティを示すかどうかを決定し得る。限定ではなく例として、ユーザが「コーヒー」またはそれに類するものに関わりのあるコンテンツを頻繁にポストする可能性がある場合、ソーシャルネットワーキングシステム160は、ユーザがコンセプト「コーヒー」に関連する高い係数を有すると決定し得る。特定のアクションまたはアクションの種類が、その他のアクションよりも重い重みおよび/またはレーティングを割り振られる可能性があり、そのことが、全体的な計算される係数に影響を与える可能性がある。限定ではなく例として、第1のユーザが第2のユーザに電子メールを送る場合、アクションに関する重みまたはレーティングは、第1のユーザが単に第2のユーザに関するユーザプロファイルページを閲覧する場合よりも高いことが可能である。
特定の実施形態において、ソーシャルネットワーキングシステム160は、特定のオブジェクトの間の関係の種類に基づいて係数を計算し得る。ソーシャルグラフ200を参照すると、ソーシャルネットワーキングシステム160は、係数を計算するときに、特定のユーザノード202とコンセプトノード204とを接続するエッジ206の数および/または種類を分析し得る。限定ではなく例として、配偶者タイプのエッジ(2人のユーザが結婚していることを表す)によって接続されるユーザノード202は、友達タイプのエッジによって接続されるユーザノード202よりも高い係数を割り振られることが可能である。言い換えると、特定のユーザに関するアクションおよび関係に割り振られた重みに依存して、全体的なアフィニティが、ユーザの友達についてのコンテンツに関してよりもユーザの配偶者についてのコンテンツに関してより高いと決定されることが可能である。特定の実施形態においては、ユーザが有する別のオブジェクトとの関係が、そのオブジェクトに関する係数を計算することに関連するユーザのアクションの重みおよび/またはレーティングに影響を与えることが可能である。限定ではなく例として、ユーザが第1の写真にタグ付けされるが、第2の写真にしか「いいね!」を表明しない場合、ソーシャルネットワーキングシステム160は、コンテンツとタグ付けタイプの関係を有することがコンテンツと「いいね!」タイプの関係を有することよりも重い重みおよび/またはレーティングを割り振られる可能性があるので、ユーザが第2の写真よりも第1の写真に関連してより高い係数を有すると決定し得る。特定の実施形態において、ソーシャルネットワーキングシステム160は、1人または複数の第2のユーザが有する特定のオブジェクトとの関係に基づいて第1のユーザに関する係数を計算し得る。言い換えると、その他のユーザが有するオブジェクトとの接続および係数が、オブジェクトに関する第1のユーザの係数に影響を与えることが可能である。限定ではなく例として、第1のユーザが1人もしくは複数の第2のユーザに接続されるかまたは1人もしくは複数の第2のユーザに関する高い係数を有し、それらの第2のユーザが特定のオブジェクトに接続されるかまたは特定のオブジェクトに関する高い係数を有する場合、ソーシャルネットワーキングシステム160は、第1のユーザも特定のオブジェクトに関する比較的高い係数を有するべきであると決定し得る。特定の実施形態において、係数は、特定のオブジェクトの間の隔たり度合に基づくことが可能である。より低い係数は、第1のユーザがソーシャルグラフ200の第1のユーザに間接的に接続されるユーザのコンテンツオブジェクトへの関心を共有する減少する見込みを表し得る。限定ではなく例として、ソーシャルグラフ200内でより近いソーシャルグラフのエンティティ(つまり、より低い隔たり度合)は、ソーシャルグラフ200内でさらに離れているエンティティよりも高い係数を有することが可能である。
特定の実施形態において、ソーシャルネットワーキングシステム160は、位置情報に基づいて係数を計算し得る。地理的に互いにより近いオブジェクトは、より遠いオブジェクトよりも互いにより関わりがあるかまたはより関心があると考えられる可能性がある。特定の実施形態において、特定のオブジェクトに対するユーザの係数は、ユーザに関連付けられている現在位置(またはユーザのクライアントシステム130の位置)に対するオブジェクトの位置の近さに基づくことが可能性である。第1のユーザは、第1のユーザにより近いその他のユーザまたはコンセプトにより関心がある可能性がある。限定ではなく例として、ユーザが空港から1.6キロメートル(1マイル)およびガソリンスタンドから3.2キロメートル(2マイル)の距離にある場合、ソーシャルネットワーキングシステム160は、ユーザがユーザに対する空港の近さに基づいてガソリンスタンドよりも空港に関してより高い係数を有すると決定し得る。
特定の実施形態において、ソーシャルネットワーキングシステム160は、係数情報に基づいてユーザに関連する特定のアクションを実行し得る。係数は、アクションへのユーザの関心に基づいてユーザが特定のアクションを実行するかどうかを予想するために使用され得る。係数は、広告、検索リザルト、ニュース記事、メディア、メッセージ、通知、またはその他の好適なオブジェクトなどの任意の種類のオブジェクトを生じるかまたはユーザに提示するときに使用され得る。係数は、必要に応じてそのようなオブジェクトにランクを付け、順序付けするためにも利用され得る。このようにして、ソーシャルネットワーキングシステム160は、ユーザの関心および現在の事情に関連性を持っている情報を提供し、それらのユーザが関心のあるそのような情報を見つける見込みを増やすことが可能である。特定の実施形態において、ソーシャルネットワーキングシステム160は、係数情報に基づいてコンテンツを生じ得る。コンテンツオブジェクトは、ユーザに固有の係数に基づいて提供または選択されることが可能である。限定ではなく例として、係数は、ユーザのためのメディアを生じるために使用されることが可能であり、ユーザは、ユーザがメディアオブジェクトに関連する高い全体的な係数を有するメディアを提示されることが可能である。限定ではなく別の例として、係数は、ユーザのための広告を生じるために使用されることが可能であり、ユーザは、ユーザが広告されるオブジェクトに関連する高い全体的な係数を有する広告を提示されることが可能である。特定の実施形態において、ソーシャルネットワーキングシステム160は、係数情報に基づいて検索リザルトを生じ得る。特定のユーザのための検索リザルトが、第1の問い合わせしている第1のユーザに関連する検索リザルトに関連付けられている係数に基づいてスコアを付けられるかまたはランクを付けられることが可能である。限定ではなく例として、より高い係数を持つオブジェクトに対応する検索リザルトが、より低い係数を有するオブジェクトに対応するリザルトよりも検索リザルトページでより高くランクを付けられることが可能である。
特定の実施形態において、ソーシャルネットワーキングシステム160は、特定のシステムまたはプロセスからの係数のリクエストに応答して係数を計算し得る。所与の局面でユーザがとり得る(または対象になり得る)ありそうなアクションを予想するために、任意のプロセスが、ユーザに関する計算された係数をリクエストすることが可能である。このリクエストは、係数を計算するために使用されるさまざまな因子に関して使用する重みの集合を含むことが可能である。このリクエストは、オンラインソーシャルネットワークで実行されるプロセスから、(APIもしくはその他の通信チャネルを介して)サードパーティシステム170から、または別の好適なシステムから来ることが可能である。リクエストに応答して、ソーシャルネットワーキングシステム160は、係数を計算し得る(または係数情報が既に計算され、記憶されている場合、その係数情報にアクセスし得る)。特定の実施形態において、ソーシャルネットワーキングシステム160は、特定のプロセスに関連するアフィニティを測定し得る。異なるプロセス(オンラインソーシャルネットワークの内部と外部との両方)が、特定のオブジェクトまたはオブジェクト集合に関する係数をリクエストすることが可能である。ソーシャルネットワーキングシステム160は、アフィニティの測定値をリクエストした特定のプロセスと関連性を持っているアフィニティの測定値を提供し得る。このようにして、各プロセスは、プロセスがアフィニティの測定値を使用する異なるコンテキストのために仕立てられたアフィニティの測定値を受信する。
ソーシャルグラフアフィニティおよびアフィニティ係数に関係して、特定の実施形態は、2006年8月11日に出願された米国特許出願第11/503093号、2010年12月22日に出願された米国特許出願第12/977027号、2010年12月23日に出願された米国特許出願第12/978265号、および2012年10月1日に出願された米国特許出願第13/632869号で開示された1つまたは複数のシステム、構成要素、要素、機能、方法、動作、または工程を利用することが可能であり、これらの特許出願のそれぞれは、参照により援用される。
広告
特定の実施形態において、広告は、テキスト(HTMLのリンクが張られることが可能である)、1つもしくは複数の画像(HTMLのリンクが張られることが可能である)、1つもしくは複数のビデオ、音声、1つもしくは複数のADOBE FLASHファイル、これらの任意の組み合わせ、あるいは1つもしくは複数のウェブページで、1つもしくは複数の電子メールで、またはユーザによってリクエストされた検索リザルトに関係して示される任意の好適なデジタルフォーマットの任意のその他の好適な広告であることが可能である。加えてまたは代替として、広告は、1つまたは複数のスポンサー付きの記事(たとえば、ニュースフィード、またはソーシャルネットワーキングシステム160のティッカーアイテム)であることが可能である。スポンサー付きの記事は、たとえば、ソーシャルアクションをユーザのプロファイルページもしくはその他のページの予め決められた領域内に示されるか、広告主に関連付けられている追加の情報とともに示されるか、その他のユーザのニュースフィードもしくはティッカー内で大きくされる(bumped up)かもしくはその他の方法で強調されるか、またはその他の方法でプロモーションされるようにすることによって広告主がプロモーションするユーザによるソーシャルアクション(ページ「に対して『いいね!』を表明する」、ページのポスト「に対して『いいね!』を表明する」かもしくはコメントする、ページに関連するイベントへの出欠の返事をする(RSVP)、ページにポストされた質問に投票する、場所にチェックインする、アプリケーションを使用するかもしくはゲームをする、またはウェブサイト「に対して『いいね!』を表明する」かもしくはウェブサイトを共有するなど)であることが可能である。広告主は、ソーシャルアクションをプロモーションさせるために料金を支払う場合がある。限定ではなく例として、広告は、検索リザルトページの検索リザルトに含まれることが可能であり、スポンサー付きのコンテンツがスポンサー付きでないコンテンツの上でプロモーションされる。
特定の実施形態において、広告は、ソーシャルネットワーキングシステムのウェブページ、サードパーティのウェブページ、またはその他のページ内に表示するためにリクエストされることが可能である。広告は、ページの一番上のバナー領域内、ページの横のカラム内、ページのGUI内、ポップアップウィンドウ内、ドロップダウンメニュー内、ページの入力フィールド内、ページのコンテンツの上、またはページに関連する他の場所などのページの専用の部分に表示されることが可能である。加えてまたは代替として、広告は、アプリケーション内に表示されることが可能である。広告は、専用のページ内に表示され、ユーザがページにアクセスするかまたはアプリケーションを利用し得る前にユーザが広告とインタラクションするかまたは広告を見ることを要求することが可能である。ユーザは、たとえば、ウェブブラウザを通じて広告を閲覧し得る。
ユーザは、任意の好適なやり方で広告とインタラクションし得る。ユーザは、広告をクリックするかまたはその他の方法で選択することが可能である。広告を選択することによって、ユーザは、広告に関連付けられているページに導かれることが可能である(またはユーザによって使用されるブラウザもしくはその他のアプリケーション)。広告に関連付けられているページにおいて、ユーザは、広告に関連付けられ製品もしくはサービスを購入すること、広告に関連付けられ情報を受信すること、または広告に関連付けられているニューズレターを購読することなどの追加的なアクションを行うことが可能である。音声またはビデオによる広告が、(再生ボタンのような)広告の構成要素を選択することによって再生されることが可能である。代替的に、広告を選択することによって、ソーシャルネットワーキングシステム160が、ユーザの特定のアクションを実行または変更することが可能である。
広告は、ユーザがインタラクションし得るソーシャルネットワーキングシステムの機能を含むことが可能である。限定ではなく例として、広告は、ユーザが承認に関連付けられているアイコンまたはリンクを選択することによって広告「に対して『いいね!』を表明する」かまたはその他の方法で広告を承認することができるようにし得る。限定ではなく例として、広告は、ユーザが広告主に関わりがあるコンテンツを(たとえば、問い合わせを実行することによって)検索することができるようにし得る。同様に、ユーザは、(たとえば、ソーシャルネットワーキングシステム160を通じて)別のユーザと広告を共有するか、または(たとえば、ソーシャルネットワーキングシステム160を通じて)広告に関連付けられているイベントへの出欠の返事をし得る。加えてまたは代替として、広告は、ユーザを対象とするソーシャルネットワーキングシステムのコンテキストを含み得る。限定ではなく例として、広告は、広告の対象に関連付けられているアクションを行ったソーシャルネットワーキングシステム160におけるユーザの友達についての情報を表示し得る。
プライバシー
特定の実施形態では、オンラインソーシャルネットワークの1つまたは複数のコンテンツオブジェクトは、プライバシー設定と関連付けられてもよい。オブジェクトに関するプライバシー設定(または「アクセス設定」)は、例えば、オブジェクトと関連付けて、認証サーバ上のインデックス内に格納する、別の適切な方法で格納する、またはそれらの任意の組合せで格納するなど、任意の適切な方法で格納し得る。オブジェクトのプライバシー設定は、オンラインソーシャルネットワークを使用して、オブジェクト(またはオブジェクトに関連付けられた特定の情報)にアクセス(例えば表示または共有)する方法を指定し得る。オブジェクトのプライバシー設定が特定のユーザがそのオブジェクトにアクセスすることを可能にする場合、そのオブジェクトはそのユーザに関して「視認可能」であるとして記述され得る。限定ではなく一例として、オンラインソーシャルネットワークのユーザは、ユーザプロファイルページの職歴情報にアクセスし得る一組のユーザを特定するために、ユーザプロファイルページのプライバシー設定を指定して、他のユーザが情報にアクセスすることを排除し得る。特定の実施形態では、プライバシー設定は、オブジェクトに関連する特定の情報へのアクセスが許可されるべきではないユーザの「ブロックリスト」を指定し得る。換言すれば、ブロックリストは、オブジェクトが視認可能でない1人または複数人のユーザまたはエンティティを指定し得る。限定ではなく一例として、ユーザは、そのユーザに関連付けられた写真アルバムにアクセスし得ない一組のユーザを指定することができ、したがって、(一組のユーザ内にない特定のユーザが写真アルバムにアクセスすることを場合によっては許容しつつ)それらのユーザがその写真アルバムにアクセスすることを排除する。特定の実施形態では、プライバシー設定は特定のソーシャルグラフ要素に関連付けられてもよい。ノードまたはエッジなどのソーシャルグラフ要素のプライバシー設定は、オンラインソーシャルネットワークを使用してソーシャルグラフ要素、ソーシャルグラフ要素に関連付けられた情報、またはソーシャルグラフ要素に関連付けられたコンテンツオブジェクトへのアクセス方法を指定し得る。限定ではなく一例として、特定の写真に対応する特定のコンセプトノード204は、その写真がその写真内でタグ付けされたユーザおよびそのユーザの友達によってのみアクセスされ得ることを指定するプライバシー設定を有し得る。特定の実施形態では、プライバシー設定により、自身のアクションがソーシャルネットワーキングシステム160によってロギングされること、または他のシステム(例えば、サードパーティシステム170)と共有されることをユーザがオプトインまたはオプトアウトすることを可能にし得る。特定の実施形態では、オブジェクトに関連するプライバシー設定は、許可されたアクセスまたはアクセス拒否の適切な粒度を指定し得る。限定ではなく一例として、アクセスまたはアクセス拒否を、特定のユーザ(例えば、自身、自身のルームメート、および自身の上司のみ)、特定の隔たり度合内のユーザ(例えば、友達または友達の友達)、ユーザグループ(例えば、ゲームクラブ、自身の家族)、ユーザネットワーク(例えば、特定の雇用主の従業員、特定の大学の学生または卒業生)、すべてのユーザ(「パブリック」)、ユーザなし(「プライベート」)、サードパーティシステム170のユーザ、特定のアプリケーション(例えば、サードパーティアプリケーション、外部ウェブサイト)、他の適切なユーザまたはエンティティ、あるいはそれらの任意の組み合わせに対して指定し得る。本開示は特定の方法で特定のプライバシー設定を使用することを説明するが、本開示は任意の適切な方法で任意の適切なプライバシー設定を使用することを企図する。
特定の実施形態では、1つまたは複数のサーバ162は、プライバシー設定を実施するための認証サーバ/プライバシーサーバであり得る。データストア164に格納された特定のオブジェクトに対するユーザ(または他のエンティティ)からの要求に応答して、ソーシャルネットワーキングシステム160は、そのオブジェクトに関して要求をデータストア164に送信し得る。要求は、要求に関連するユーザを識別することができ、かつ認証サーバが、オブジェクトに関連付けられたプライバシー設定に基づいてユーザがオブジェクトにアクセスすることを認証されていると判断した場合にのみユーザ(またはユーザのクライアントシステム130)に送信され得る。要求側ユーザがオブジェクトにアクセスすることを認証されていない場合、認証サーバは、要求されたオブジェクトがデータストア164から取得されるのを防止し得、または要求されたオブジェクトがユーザに送信されるのを防止し得る。検索クエリのコンテキストでは、クエリを実行しているユーザがオブジェクトへのアクセスを認証されている場合にのみ、オブジェクトが検索結果として生成され得る。換言すれば、オブジェクトは、クエリを実行しているユーザには視認可能であるという可視性を有している必要がある。オブジェクトがユーザには視認可能でないという可視性を有する場合、そのオブジェクトは検索結果から除外され得る。本開示は特定の方法でプライバシー設定を実施することを説明しているが、本開示は任意の適切な方法でプライバシー設定を実施することを企図している。
システムおよび方法
図8は、例示的なコンピュータシステム800を示している。特定の実施形態においては、1つまたは複数のコンピュータシステム800が、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を実行する。特定の実施形態においては、1つまたは複数のコンピュータシステム800が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、1つまたは複数のコンピュータシステム800上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている1つもしくは複数の方法の1つもしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、1つまたは複数のコンピュータシステム800の1つまたは複数の部分を含む。本明細書においては、適切な場合には、コンピュータシステムへの言及はコンピューティングデバイスを包含することができ、反対に、コンピューティングデバイスへの言及はコンピュータシステムを包含することができる。その上、コンピュータシステムへの言及は、適切な場合には、1つまたは複数のコンピュータシステムを包含することができる。
本開示は、任意の適切な数のコンピュータシステム800を想定している。本開示は、任意の適切な物理的な形態を取るコンピュータシステム800を想定している。限定ではなく、例として、コンピュータシステム800は、組み込みコンピュータシステム、システムオンチップ(SOC)、シングルボードコンピュータシステム(SBC)(たとえば、コンピュータオンモジュール(COM)もしくはシステムオンモジュール(SOM)など)、デスクトップコンピュータシステム、ラップトップもしくはノートブックコンピュータシステム、インタラクティブキオスク、メインフレーム、コンピュータシステムのメッシュ、モバイル電話、携帯情報端末(PDA)、サーバ、タブレットコンピュータシステム、またはこれらのうちの複数の組合せであることが可能である。適切な場合には、コンピュータシステム800は、1つもしくは複数のコンピュータシステム800を含むこと、単一型もしくは分散型であること、複数のロケーションにわたること、複数のマシンにわたること、複数のデータセンターにわたること、または、クラウド(1つもしくは複数のネットワーク内の1つもしくは複数のクラウドコンポーネントを含むことができる)内に常駐することが可能である。適切な場合には、1つまたは複数のコンピュータシステム800は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を、実質的な空間上のまたは時間上の制限を伴わずに実行することができる。限定ではなく、例として、1つまたは複数のコンピュータシステム800は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程をリアルタイムで、またはバッチモードで実行することができる。1つまたは複数のコンピュータシステム800は、適切な場合には、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を別々の時点で、または別々のロケーションで実行することができる。
特定の実施形態においては、コンピュータシステム800は、プロセッサ802、メモリ804、ストレージ806、入力/出力(I/O)インタフェース808、通信インタフェース810、およびバス812を含む。本開示は、特定の数の特定のコンポーネントを特定の構成で有する特定のコンピュータシステムについて記述し、示しているが、本開示は、任意の適切な数の任意の適切なコンポーネントを任意の適切な構成で有する任意の適切なコンピュータシステムを想定している。
特定の実施形態においては、プロセッサ802は、コンピュータプログラムを構成している命令などの命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ802は、内部レジスタ、内部キャッシュ、メモリ804、またはストレージ806から命令を取り出し(またはフェッチし)、それらの命令をデコードして実行し、次いで、1つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ804、またはストレージ806に書き込むことができる。特定の実施形態においては、プロセッサ802は、データ、命令、またはアドレスのための1つまたは複数の内部キャッシュを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ802を想定している。限定ではなく、例として、プロセッサ802は、1つまたは複数の命令キャッシュ、1つまたは複数のデータキャッシュ、および1つまたは複数の変換ルックアサイドバッファ(TLB)を含むことができる。命令キャッシュ内の命令は、メモリ804またはストレージ806内の命令のコピーであることが可能であり、命令キャッシュは、プロセッサ802によるそれらの命令の取り出しを高速化することができる。データキャッシュ内のデータは、プロセッサ802において実行される命令が機能する際に基づくメモリ804もしくはストレージ806内のデータのコピー、プロセッサ802において実行される後続の命令によるアクセスのための、もしくはメモリ804もしくはストレージ806への書き込みのためのプロセッサ802において実行された以前の命令の結果、またはその他の適切なデータであることが可能である。データキャッシュは、プロセッサ802による読み取り動作または書き込み動作を高速化することができる。TLBは、プロセッサ802のための仮想アドレス変換を高速化することができる。特定の実施形態においては、プロセッサ802は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ802を想定している。適切な場合には、プロセッサ802は、1つまたは複数の演算ロジックユニット(ALU)を含むこと、マルチコアプロセッサであること、または1つもしくは複数のプロセッサ802を含むことが可能である。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
特定の実施形態においては、メモリ804は、プロセッサ802が実行するための命令、またはプロセッサ802が機能する際に基づくデータを格納するためのメインメモリを含む。限定ではなく、例として、コンピュータシステム800は、命令をストレージ806または別のソース(たとえば、別のコンピュータシステム800など)からメモリ804にロードすることができる。次いでプロセッサ802は、命令をメモリ804から内部レジスタまたは内部キャッシュにロードすることができる。命令を実行するために、プロセッサ802は、命令を内部レジスタまたは内部キャッシュから取り出し、それらの命令をデコードすることができる。命令の実行中または実行後に、プロセッサ802は、1つまたは複数の結果(それらは、中間の結果または最終的な結果である場合がある)を内部レジスタまたは内部キャッシュに書き込むことができる。次いでプロセッサ802は、それらの結果のうちの1つまたは複数をメモリ804に書き込むことができる。特定の実施形態においては、プロセッサ802は、(ストレージ806またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ804内の命令のみを実行し、(ストレージ806またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ804内のデータ上でのみ機能する。1つまたは複数のメモリバス(それらはそれぞれ、アドレスバスおよびデータバスを含むことができる)は、プロセッサ802をメモリ804に結合することができる。バス812は、以降で記述されているような1つまたは複数のメモリバスを含むことができる。特定の実施形態においては、1つまたは複数のメモリ管理ユニット(MMU)が、プロセッサ802とメモリ804との間に常駐し、プロセッサ802によって要求されるメモリ804へのアクセスを容易にする。特定の実施形態においては、メモリ804は、ランダムアクセスメモリ(RAM)を含む。このRAMは、適切な場合には、揮発性メモリであることが可能である。適切な場合には、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であることが可能である。その上、適切な場合には、このRAMは、シングルポートRAMまたはマルチポートRAMであることが可能である。本開示は、任意の適切なRAMを想定している。メモリ804は、適切な場合には、1つまたは複数のメモリ804を含むことができる。本開示は、特定のメモリについて記述し、示しているが、本開示は、任意の適切なメモリを想定している。
特定の実施形態においては、ストレージ806は、データまたは命令のためのマスストレージを含む。限定ではなく、例として、ストレージ806は、ハードディスクドライブ(HDD)、フロッピー(登録商標)ディスクドライブ、フラッシュメモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサルシリアルバス(USB)ドライブ、またはこれらのうちの複数の組合せを含むことができる。ストレージ806は、適切な場合には、取り外し可能なまたは取り外し不能な(すなわち、固定された)媒体を含むことができる。ストレージ806は、適切な場合には、コンピュータシステム800の内部または外部に存在することが可能である。特定の実施形態においては、ストレージ806は、不揮発性のソリッドステートメモリである。特定の実施形態においては、ストレージ806は、読み取り専用メモリ(ROM)を含む。適切な場合には、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書替え可能ROM(EAROM)、またはフラッシュメモリ、またはこれらのうちの複数の組合せであることが可能である。本開示は、任意の適切な物理的な形態を取るマスストレージ806を想定している。ストレージ806は、適切な場合には、プロセッサ802とストレージ806との間における通信を容易にする1つまたは複数のストレージコントロールユニットを含むことができる。適切な場合には、ストレージ806は、1つまたは複数のストレージ806を含むことができる。本開示は、特定のストレージについて記述し、示しているが、本開示は、任意の適切なストレージを想定している。
特定の実施形態においては、I/Oインタフェース808は、コンピュータシステム800と1つまたは複数のI/Oデバイスとの間における通信のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータシステム800は、適切な場合には、これらのI/Oデバイスのうちの1つまたは複数を含むことができる。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータシステム800との間における通信を可能にすることができる。限定ではなく、例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチルカメラ、スタイラス、タブレット、タッチスクリーン、トラックボール、ビデオカメラ、別の適切なI/Oデバイス、またはこれらのうちの複数の組合せを含むことができる。I/Oデバイスは、1つまたは複数のセンサを含むことができる。本開示は、任意の適切なI/Oデバイス、およびそれらのI/Oデバイスのための任意の適切なI/Oインタフェース808を想定している。適切な場合には、I/Oインタフェース808は、プロセッサ802がこれらのI/Oデバイスのうちの1つまたは複数を駆動することを可能にする1つまたは複数のデバイスドライバまたはソフトウェアドライバを含むことができる。I/Oインタフェース808は、適切な場合には、1つまたは複数のI/Oインタフェース808を含むことができる。本開示は、特定のI/Oインタフェースについて記述し、示しているが、本開示は、任意の適切なI/Oインタフェースを想定している。
特定の実施形態においては、通信インタフェース810は、コンピュータシステム800と、1つもしくは複数のその他のコンピュータシステム800または1つもしくは複数のネットワークとの間における通信(たとえば、パケットベースの通信など)のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、通信インタフェース810は、イーサネット(登録商標)もしくはその他の有線ベースのネットワークと通信するためのネットワークインタフェースコントローラ(NIC)もしくはネットワークアダプタ、またはWI−FIネットワークなどのワイヤレスネットワークと通信するためのワイヤレスNIC(WNIC)もしくはワイヤレスアダプタを含むことができる。本開示は、任意の適切なネットワーク、およびそのネットワークのための任意の適切な通信インタフェース810を想定している。限定ではなく、例として、コンピュータシステム800は、アドホックネットワーク、パーソナルエリアネットワーク(PAN)、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、メトロポリタンエリアネットワーク(MAN)、またはインターネットの1つまたは複数の部分、またはこれらのうちの複数の組合せと通信することができる。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、有線またはワイヤレスであることが可能である。例として、コンピュータシステム800は、ワイヤレスPAN(WPAN)(たとえば、ブルートゥースWPANなど)、WI−FIネットワーク、WI−MAXネットワーク、セルラー電話ネットワーク(たとえば、グローバルシステムフォーモバイルコミュニケーションズ(GSM(登録商標))ネットワークなど)、またはその他の適切なワイヤレスネットワーク、またはこれらのうちの複数の組合せと通信することができる。コンピュータシステム800は、適切な場合には、これらのネットワークのうちの任意のネットワークのための任意の適切な通信インタフェース810を含むことができる。通信インタフェース810は、適切な場合には、1つまたは複数の通信インタフェース810を含むことができる。本開示は、特定の通信インタフェースについて記述し、示しているが、本開示は、任意の適切な通信インタフェースを想定している。
特定の実施形態においては、バス812は、コンピュータシステム800のコンポーネント同士を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、バス812は、アクセラレイティッドグラフィックスポート(AGP)もしくはその他のグラフィックスバス、エンハンストインダストリースタンダードアーキテクチャ(EISA)バス、フロントサイドバス(FSB)、ハイパートランスポート(HT)インターコネクト、インダストリースタンダードアーキテクチャ(ISA)バス、インフィニバンドインターコネクト、ローピンカウント(LPC)バス、メモリバス、マイクロチャネルアーキテクチャ(MCA)バス、ペリフェラルコンポーネントインターコネクト(PCI)バス、PCIエクスプレス(PCIe)バス、シリアルアドバンストテクノロジーアタッチメント(SATA)バス、ビデオエレクトロニクススタンダーズアソシエーションローカル(VLB)バス、または別の適切なバス、またはこれらのうちの複数の組合せを含むことができる。バス812は、適切な場合には、1つまたは複数のバス812を含むことができる。本開示は、特定のバスについて記述し、示しているが、本開示は、任意の適切なバスまたはインターコネクトを想定している。
本明細書においては、1つまたは複数の非一時的なコンピュータ可読記憶媒体は、適切な場合には、1つもしくは複数の半導体ベースのもしくはその他の集積回路(IC)(たとえば、フィールドプログラマブルゲートアレイ(FPGA)もしくは特定用途向け集積回路(ASIC)など)、ハードディスクドライブ(HDD)、ハイブリッドハードドライブ(HHD)、光ディスク、光ディスクドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)ディスケット、フロッピー(登録商標)ディスクドライブ(FDD)、磁気テープ、ソリッドステートドライブ(SSD)、RAMドライブ、セキュアデジタルカードもしくはドライブ、その他の任意の適切な非一時的なコンピュータ可読記憶媒体、またはこれらのうちの複数の組合せを含むことができる。非一時的なコンピュータ可読記憶媒体は、適切な場合には、揮発性、不揮発性、または揮発性と不揮発性の組合せであることが可能である。
用例
本明細書においては、「または(もしくは)」は、包含的であり、排他的ではない(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AまたはB」は、「A、B、またはその両方」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。その上、「および(ならびに)」は、包括的および個別的の両方である(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AおよびB」は、「まとめて、または個別に、AおよびB」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
本開示の範囲は、当技術分野における標準的な技術者が理解するであろう、本明細書において記述されているまたは示されている例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において記述されているまたは示されている例示的な実施形態に限定されない。その上、本開示は、本明細書におけるそれぞれの実施形態を、特定のコンポーネント、要素、特徴、機能、動作、または工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、特徴、機能、動作、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。