JP6991128B2 - ポストに関連付けられたプライバシー設定のトリガーに基づく変更のためのシステムおよび方法 - Google Patents

ポストに関連付けられたプライバシー設定のトリガーに基づく変更のためのシステムおよび方法 Download PDF

Info

Publication number
JP6991128B2
JP6991128B2 JP2018513512A JP2018513512A JP6991128B2 JP 6991128 B2 JP6991128 B2 JP 6991128B2 JP 2018513512 A JP2018513512 A JP 2018513512A JP 2018513512 A JP2018513512 A JP 2018513512A JP 6991128 B2 JP6991128 B2 JP 6991128B2
Authority
JP
Japan
Prior art keywords
privacy
post
user
trigger
social networking
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Active
Application number
JP2018513512A
Other languages
English (en)
Other versions
JP2018530821A (ja
JP2018530821A5 (ja
Inventor
トゥン、イェン-ティン
Original Assignee
メタ プラットフォームズ, インク.
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by メタ プラットフォームズ, インク. filed Critical メタ プラットフォームズ, インク.
Publication of JP2018530821A publication Critical patent/JP2018530821A/ja
Publication of JP2018530821A5 publication Critical patent/JP2018530821A5/ja
Application granted granted Critical
Publication of JP6991128B2 publication Critical patent/JP6991128B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F21/00Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
    • G06F21/60Protecting data
    • G06F21/62Protecting access to data via a platform, e.g. using keys or access control rules
    • G06F21/6218Protecting access to data via a platform, e.g. using keys or access control rules to a system of files or objects, e.g. local or distributed file system or database
    • G06F21/6245Protecting personal data, e.g. for financial or medical purposes
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06QINFORMATION AND COMMUNICATION TECHNOLOGY [ICT] SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES; SYSTEMS OR METHODS SPECIALLY ADAPTED FOR ADMINISTRATIVE, COMMERCIAL, FINANCIAL, MANAGERIAL OR SUPERVISORY PURPOSES, NOT OTHERWISE PROVIDED FOR
    • G06Q50/00Information and communication technology [ICT] specially adapted for implementation of business processes of specific business sectors, e.g. utilities or tourism
    • G06Q50/01Social networking
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/10Network architectures or network communication protocols for network security for controlling access to devices or network resources
    • H04L63/101Access control lists [ACL]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/02Protecting privacy or anonymity, e.g. protecting personally identifiable information [PII]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/04Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks
    • H04L63/0407Network architectures or network communication protocols for network security for providing a confidential data exchange among entities communicating through data packet networks wherein the identity of one or more communicating identities is hidden

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Health & Medical Sciences (AREA)
  • General Health & Medical Sciences (AREA)
  • Theoretical Computer Science (AREA)
  • Computer Hardware Design (AREA)
  • General Engineering & Computer Science (AREA)
  • Bioethics (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Computing Systems (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Software Systems (AREA)
  • Databases & Information Systems (AREA)
  • Medical Informatics (AREA)
  • Business, Economics & Management (AREA)
  • Primary Health Care (AREA)
  • Human Resources & Organizations (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Strategic Management (AREA)
  • Tourism & Hospitality (AREA)
  • General Business, Economics & Management (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Telephonic Communication Services (AREA)
  • Information Transfer Between Computers (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Description

本技術は、コンテンツプライバシーの分野に関する。より詳細には、本技術は、ポストに関連するプライバシー設定のトリガーに基づく変更を提供するための技術に関する。
今日、人々は広範囲の目的のために多くの場合コンピューティングデバイス(またはシステム)を利用している。ユーザは、コンピューティングデバイスを使用して、例えば、相互にやりとりしたり、コンテンツにアクセスしたり、コンテンツを共有したり、コンテンツを作成したりすることができる。いくつかの例では、ソーシャルネットワーキングシステム(またはサービス)のユーザは、コンピューティングデバイスを使用して、ソーシャルネットワーキングプロファイル、タイムライン、ウォール、またはフィードにメディアコンテンツアイテムを公開するなどにより、ポストを作成、編集、および共有することができる。
コンピュータ技術に基づく従来の手法の下では、ユーザによって作成されたポストは、多くの場合、そのようなポストを閲覧またはアクセスすることができる者を決定するためのプライバシー設定と関連付けることができる。一例では、ユーザによって共有されるポストは、ポストを一般の人々がアクセスできるようにするプライバシー設定を有することができる。この例では、ユーザによって共有される別のポストは、この他のポストが1人または複数人の選択された視聴者メンバーのみにアクセス可能にする別のプライバシー設定を有することができる。しかしながら、ポストを共有または公開するこのような従来の手法の下では、ポストに対するプライバシー設定の利用は、非効率的であり、不必要に固定的であり、または所望とされないこともある。このように、従来の手法は、コンテンツの共有、公開、または配置に関連する全体的なユーザーエクスペリエンスの課題を生み出すか、またはユーザーエクスペリエンスを低減させる。
本発明による実施形態は、特に、方法、記憶媒体、システムおよびコンピュータプログラム製品を対象とする添付の特許請求の範囲に開示されており、1つの請求項のカテゴリー、例えば、方法に記載された任意の特徴は、他の請求項のカテゴリー、例えば、システムにおいても請求することができる。添付の請求項に記載された従属性または参照は、形式的な理由のためにのみ選択される。しかしながら、以前の請求項(特に多数項従属)を意図的に参照した結果生じる主題を請求して、添付された特許請求の範囲において選択された従属性に依存することなく、請求項およびその特徴の任意の組合せが開示され、かつ請求されるようにすることができる。特許請求することができる主題は、添付の特許請求の範囲に記載されている特徴の組み合わせだけでなく、特許請求の範囲内の特徴の他の組み合わせをも含み、特許請求の範囲に記載された各特徴は、特許請求の範囲に記載された請求項の他の特徴または他の特徴の組み合わせと組み合わせることができる。さらに、本明細書に記載または図示された実施形態および特徴のうちのいずれかは、別個の請求項および/または本明細書に記載または図示された任意の実施形態または添付の特許請求の範囲の任意の特徴との組み合わせにおいて請求することができる。
本開示の様々な実施形態は、ソーシャルネットワーキングシステムを介して公開されるポストを識別するように構成されたシステム、方法、および非一時的なコンピュータ可読媒体を含むことができる。ポストに関連するプライバシー設定を変更するためのプライバシースケジュールが決定される。ポストに関連するプライバシー設定を変更するトリガーが検出される。プライバシー設定は、トリガーが検出されたときに、プライバシースケジュールに基づいて変更される。
一実施形態では、ポストは、トリガーを検出する前にソーシャルネットワーキングシステムを介して公開することができる。ポストは、変更される前のプライバシー設定に基づいて、第1の組の1つまたは複数のエンティティによってアクセス可能となるように有効にされる。第1の組は、プライバシースケジュールに基づいて定義される。ポストは、変更された後のプライバシー設定に基づいて、第2の組の1つまたは複数のエンティティによってアクセス可能となるように有効にされる。第2の組は、プライバシースケジュールに基づいて定義される。
一実施形態では、第1の組は、第2の組よりも大きくすることができる。
一実施形態では、第2の組は、第1の組よりも大きくすることができる。
一実施形態では、第1の組または第2の組の少なくとも1つは、1つまたは複数のソーシャルつながり信号に基づいてさらに定義することができる。
一実施形態では、ポストに関連するプライバシー設定を変更する第2のトリガーを検出することができる。プライバシー設定は、第2のトリガーが検出されたときに、プライバシースケジュールに基づいて変更することができる。ポストは、変更された後のプライバシー設定に基づいて、第3の組の1つまたは複数のエンティティによってアクセス可能となるように有効にされることができる。第3の組は、プライバシースケジュールに基づいて定義することができる。
一実施形態では、ポストは、ソーシャルネットワーキングシステムのユーザによって作成することができる。第1の組は公衆の視聴者を含むことができる。第2の組は、ユーザに関連付けられた1組のソーシャルつながりを含むことができる。第3の組は、ユーザに関連付けられたソーシャルつながりの選択された一部を含むことができる。
一実施形態では、ポストは、ソーシャルネットワーキングシステムのユーザによって作成することができる。第1の組は、ユーザに関連付けられた1組のソーシャルつながりを含むことができる。第2の組は、ユーザに関連付けられたソーシャルつながりの選択された一部を含むことができる。第3の組は、ユーザを含むことができる。
一実施形態では、ポストは、ソーシャルネットワーキングシステムのユーザによって作成することができる。プライバシースケジュールは、1組のシステム設定またはユーザからの1組のコマンドのうちの少なくとも一方に基づいて決定することができる。
一実施形態では、トリガーは、経過時間の指定された期間またはイベントの発生のうちの少なくとも一方に関連付けることができる。
一実施形態では、1つまたは複数のコンピュータ可読の非一時的記憶媒体は、実行時に本発明による方法または上記の実施形態のいずれかを実行するように動作可能なソフトウェアを具体化する。
一実施形態では、システムは、1つまたは複数のプロセッサと、プロセッサによって実行可能な命令を含む少なくとも1つのメモリとを含み、プロセッサは、命令の実行時に本発明による方法または上述の実施形態のいずれかを実行するように動作可能である。
一実施形態では、好ましくはコンピュータ可読の非一時的記憶媒体を含むコンピュータプログラム製品は、データ処理システム上での実行時に、本発明による方法または上述の実施形態のいずれかを実行するように動作可能である。
開示された技術の多くの他の特徴、応用、実施形態、および/または変形は、添付の図面および以下の詳細な説明から明らかとなることを理解されたい。開示された技術の原理から逸脱することなく、本明細書に記載の構造、システム、非一時的なコンピュータ可読媒体、および方法の追加の実施形態および/または代替の実施形態を採用することができる。
本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することを可能にするように構成された例示的なトリガーに基づくプライバシー変更モジュールを含む例示的なシステムを示す図である。 本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することを可能にするように構成された例示的なプライバシースケジュールモジュールを示す図である。 本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することを可能にするように構成された例示的なトリガー検出モジュールを示す図である。 本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することに関連する例示的なシナリオを示す図である。 本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することに関連する例示的なシナリオを示す図である。 本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することに関連する例示的な方法を示す図である。 本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することに関連する例示的な方法を示す図である。 本開示の一実施形態による、様々なシナリオで利用することができる例示的なソーシャルネットワーキングシステムを含む例示的なシステムのネットワーク図を示す。 本開示の一実施形態による、様々なシナリオで利用することができるコンピュータシステムまたはコンピューティングデバイスの例を示す図である。
図面は、説明のみのための開示された技術の様々な実施形態を示しており、図面は同様の構成要素を識別するために同じ参照番号を使用する。当業者であれば、以下の説明から、本明細書に記載の開示された技術の原理から逸脱することなく、図面に示された構造および方法の代替の実施形態を使用できることを容易に認識するであろう。
ポストに関連するプライバシー設定のトリガーに基づく変更
様々な目的のために人々は、ソーシャルネットワーキングシステム(またはサービス)を使用している。ソーシャルネットワーキングシステムのユーザは、それらのコンピューティングデバイス(またはシステム)を利用して、ソーシャルネットワーキングシステムを介して、接続を確立し、通信し、相互にやりとりすることができる。ユーザは、写真、ビデオ、オーディオ、テキストなどのメディアコンテンツアイテムを提供、編集、共有、またはアクセスすることもできる。一例では、ユーザは、自分のコンピューティングデバイスを利用して、ソーシャルネットワーキングシステムを介して共有または公開されるポストを作成することができる。この場合、ユーザは、共有または公開されるポストに関連するプライバシー設定を選択、設定または指定することができる。プライバシー設定は、ポストがアクセス可能な対象の視聴者を指示または識別することができる。
コンピュータ技術に基づく従来の手法では、一般に、ポストの共有または公開は、ポストを作成し、ポストのプライバシー設定を設定または定義し、かつプライバシー設定に従って公開または共有されるようにポストを提出するようユーザに要求する。しかしながら、従来の手法によれば、ポストのプライバシー設定は、通常、永続的に同じままである。一例として、ユーザが自分のポストへのアクセスが許可される人を変えることを思いついた場合、そのユーザはポストを削除するか、またはポストに関するプライバシー設定を手動で編集する必要がある。いくつかの例では、一部のポストを削除したり、またはそのポストのプライバシー設定を変更したりすることを忘れることがある。そのため、ユーザがこれらのポストにアクセスすることを所望しないあるエンティティが引き続きこれらのポストにアクセスすることができることとなる。したがって、ポストを共有または公開する従来の手法は、非効率的または不便なものとなり得る。さらに、従来の手法では、多くの場合プライバシー問題のためにポストを共有したり公開したりすることを躊躇することがある。
これらのまたは他の懸案事項に起因して、従来の手法は不利または望ましくない可能性がある。したがって、改善された手法は、従来の手法に関連する様々な欠点に対処するか、または軽減するために有益であり得る。開示された技術は、コンピュータ技術に基づいて、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することができる。本開示の様々な実施形態は、ソーシャルネットワーキングシステムを介して公開されるポストを識別することができる。ポストに関連するプライバシー設定を変更するプライバシースケジュールを決定することができる。ポストに関連するプライバシー設定を変更するトリガーを検出することができる。プライバシー設定は、トリガーが検出されたとき、プライバシースケジュールに基づいて変更することができる。開示される技術には多くの変形および/または他の可能性があり得ることが企図される。
図1は、本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供するのを可能にするように構成された例示的なトリガーに基づくプライバシー変更モジュール102を含む例示的なシステム100を示す。図1の例に示すように、トリガーに基づくプライバシー変更モジュール102は、ポスト処理モジュール104、プライバシースケジュールモジュール106、およびトリガー検出モジュール108を含む。いくつかの事例では、例示的なシステム100は、少なくとも1つのデータストア120を含むことができる。この図およびすべての図に示される構成要素(例えば、モジュール、要素など)は、例示的なものにすぎず、他の実施形態は、追加の、より少ない、統合された、または異なる構成要素を含むことができる。いくつかの構成要素は、関連する詳細が不明瞭とならないように示されない場合がある。
いくつかの実施形態では、トリガーに基づくプライバシー変更モジュール102は、ソフトウェア、ハードウェア、またはそれらの任意の組み合わせとして、部分的または全体的に実施することができる。全般的に、本明細書で説明するモジュールは、ソフトウェア、ハードウェア、またはそれらの任意の組み合わせと関連付けることができる。いくつかの実施形態では、モジュールの1つまたは複数の機能、タスク、および/または動作を、ソフトウェアルーチン、ソフトウェアプロセス、ハードウェア、および/またはそれらの任意の組み合わせによって実行または行うことができる。いくつかの場合、トリガーに基づくプライバシー変更モジュール102は、ユーザコンピューティングデバイスまたはクライアントコンピューティングデバイス上など、1つまたは複数のコンピューティングデバイスまたはシステム上で実行されるソフトウェアとして、部分的または全体的に実施することができる。例えば、トリガーに基づくプライバシー変更モジュール102またはその少なくとも一部は、図7のユーザデバイス710などのユーザコンピューティングデバイスまたはクライアントコンピューティングシステム上で稼動するアプリケーション(例えば、app)、プログラム、アプレット、またはオペレーティングシステムなどとして実施するか、またはその中に実装することができる。別の例では、トリガーに基づくプライバシー変更モジュール102またはその少なくとも一部は、ネットワークサーバまたはクラウドサーバなどの1つまたは複数のサーバを含む1つまたは複数のコンピューティングデバイスまたはコンピューティングシステムを使用して実施することができる。いくつかの例では、トリガーに基づくプライバシー変更モジュール102は、図7のソーシャルネットワーキングシステム730のようなソーシャルネットワーキングシステム(またはソーシャルネットワーキングサービス)内で部分的または全体的に実施されるか、協働して部分的または全体的に動作するように構成される。多くの変形またはその他の可能性があることを理解されたい。
ポスト処理モジュール104は、ソーシャルネットワーキングシステム内で共有または公開されるポストに関連する様々なタスクを取り扱うか、または様々な処理を実行することを可能にするように構成することができる。いくつかの実施形態では、ポスト処理モジュール104は、ソーシャルネットワーキングシステムを介して公開(または共有)されるポストを識別することを可能にするように構成される。一例では、コンピューティングデバイス(またはシステム)のユーザは、ソーシャルネットワーキングシステムにアクセスし、メディアコンテンツアイテム(例えば、画像、ビデオ、オーディオ、テキストなど)をポストすることなどによりポストを共有または公開するためにコンピュータデバイスを利用することができる。この例では、ユーザは、コンポーザ要素、コメントボックス、またはコンテンツアップロードツールなどのポスト作成ツールを開始することができる。ポスト作成ツールは、ユーザがソーシャルネットワーキングシステムを介して共有、公開、またはポストされるように特定のポストを作成することができる。この例では、ポスト処理モジュール104は、ソーシャルネットワーキングシステムを介してユーザによって作成、共有、公開、またはポストされるべき特定のポストを識別するように構成される。別の例では、ポスト処理モジュール104は、ユーザによって以前にポストされた各ポストおよび/またはユーザによって作成された各新規なポストを識別することなどによって、システム設定またはデフォルト構成に基づいて選択されたポストを識別するように構成される。本明細書中のすべての例は、説明の目的のために提供され、開示された技術に関連する多くの変形が可能であることを理解されたい。
いくつかの実施形態では、ポスト処理モジュール104は、ソーシャルネットワーキングシステムを介してポストを公開することを可能にするように構成される。例えば、ユーザが特定のポストのためのコンテンツの作成または提供を終了したとき(例えば、テキストの入力が完了したり、アップロードされるべきメディアコンテンツを選択し終わったときなど)、ユーザは、「提出」ボタン、「ポスト」ボタン他等のユーザインターフェース要素をタップしたり、クリックしたり、また他の方法で活性化する。その結果、ポスト処理モジュール104は、ソーシャルネットワーキングシステムを介してポストを公開、共有、またはブロードキャストすることができ、それにより、そのポストがその意図された視聴者にアクセス可能になる。前述したように、開示された技術には多くの変形が存在し得ることを理解されたい。
プライバシースケジュールモジュール106は、ポストに関連するプライバシー設定を変更するためのプライバシースケジュールの決定を可能にするように構成される。例えば、プライバシースケジュールモジュール106は、所与のポストのプライバシースケジュールを定義、展開、取得、または受信等することができる。プライバシースケジュールは、所与のポストのプライバシー設定が時間の経過とともにどのように変化するか、または変更されるかを指示または指定することができる。プライバシースケジュールモジュール106に関するさらなる詳細は、図2Aを参照して以下に提供される。
さらに、トリガー検出モジュール108は、ポストに関連するプライバシー設定を変更するトリガーの検出を可能にするように構成される。いくつかの場合、トリガーは、ユーザ指定またはシステムに基づくか、またはその両方とすることができる。一例では、トリガーは、指定された期間が経過したときに生じさせることができる。別の例では、トリガーは、特定のイベントの発生が検出されたときに発生することができる。トリガー検出モジュール108については、図2Bを参照してより詳細に説明する。
さらに、プライバシー設定モジュール110は、トリガーが検出されたときにプライバシースケジュールに基づいてプライバシー設定を変更することを可能にするように構成される。例えば、トリガー検出モジュール108によってトリガーが検出されたことに応答して、プライバシー設定モジュール110は、特定のポストのプライバシースケジュールに従って、特定のポストのプライバシー設定を自動的に変化、編集、または変更することができる。
いくつかの実施形態では、プライバシー設定モジュール110は、変更される前のプライバシー設定に基づいて、第1の組の1つまたは複数のエンティティによってポストをアクセス可能にされるように構成される。第1の組は、プライバシースケジュールに基づいて、プライバシースケジュールモジュール106によって定義することができる。いくつかの実施形態では、プライバシー設定モジュール110は、変更された後のプライバシー設定に基づいて、第2の組の1つまたは複数のエンティティによってポストをアクセス可能になるように構成される。プライバシースケジュールモジュール106は、プライバシースケジュールに基づいて第2の組を定義することができる。
場合によっては、プライバシー設定モジュール110は、ポストのプライバシー設定を提示することも可能である。一例では、ポストを作成したユーザが、ポストに関連するプライバシー設定アイコンをタップしたり、クリックしたり、ホバリングしたり、他の方法で対話したりする場合、プライバシー設定モジュール110は、ポストを現在アクセス可能とされている意図された視聴者を指示または表示することができる。同様に、(現在ポストにアクセスしている)視聴者メンバーが、プライバシー設定アイコンをタップ、クリック、ホバリング、または他の方法で対話する場合、プライバシー設定モジュール110は、現在アクセス可能とされている意図された視聴者を指示または表示することができる。上述したように、本明細書中のすべての例は、説明のために提供されており、多くの変形が可能であることを理解されたい。
さらに、いくつかの実施形態では、例示的なシステム100に示すように、トリガーに基づくプライバシー変更モジュール102を、少なくとも1つのデータストア120と通信および/または動作するように構成することができる。少なくとも1つのデータストア120は、各種のデータを保存および維持するように構成されている。いくつかの実施形態では、少なくとも1つのデータストア110は、ソーシャルネットワーキングシステム(例えば、図7のソーシャルネットワーキングシステム730)に関連する情報を格納することができる。ソーシャルネットワーキングシステムに関連する情報には、ユーザ、ソーシャルつながり(social connections)、ソーシャル対話、位置、地理的区域、地図、場所、イベント、ページ、グループ、ポスト、通信、コンテンツ、フィード、アカウント設定、プライバシー設定、ソーシャルグラフ、およびその他の各種のデータが含まれる。いくつかの実施形態では、少なくとも1つのデータストア120は、ユーザ識別子、ユーザ情報、プロファイル情報、ユーザの場所、ユーザ指定設定、ユーザによって生成または投稿されたコンテンツ、および他の各種のユーザデータなどのユーザに関連する情報を格納することができる。いくつかの実施形態では、少なくとも1つのデータストア120は、トリガーに基づくプライバシー変更モジュール102によって利用される情報を格納することができる。再び、多くの変形または他の可能性があり得ることを理解されたい。
図2Aは、本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することを可能にするように構成された例示的なプライバシースケジュールモジュール202を示す。いくつかの実施形態では、図1のプライバシースケジュールモジュール106は、例示的なプライバシースケジュールモジュール202として実施することができる。図2Aに示すように、プライバシースケジュールモジュール202は、視聴者定義モジュール204およびトリガー定義モジュール206を含むことができる。
前述したように、プライバシースケジュールモジュール202は、ソーシャルネットワーキングシステムのユーザによって作成されたポストなどのポストに関連付けられたプライバシー設定を変更するためのプライバシースケジュールの決定を可能にするように構成される。プライバシースケジュールモジュール202は、例えば、ポストに関するプライバシースケジュールを定義、展開、取得、または受信するなどすることができる。プライバシースケジュールは、ポストのプライバシー設定が時間の経過とともにどのように変化するか、または変更されるかを指示または指定することができる。いくつかの場合において、プライバシースケジュールは、1)1組の1つまたは複数のシステム設定、または2)1組の1つまたは複数のユーザからのコマンドのうちの少なくとも1つに基づいて決定(例えば、定義、展開、取得、受信など)される。一例では、ポストに関するプライバシースケジュールは、1つまたは複数のデフォルト構成によって設定または定義することができる。別の例では、ユーザは、ポストに関するプライバシースケジュールを設定または定義することができる。多くの変形が可能である。
いくつかの実施形態では、プライバシースケジュールモジュール202は、視聴者定義モジュール204を利用して、ポストのプライバシー設定を介してポストにアクセス可能な視聴者メンバーを定義、指示、または指定することができる。いくつかの実施形態では、プライバシースケジュールモジュール202は、トリガー定義モジュール206を利用して、ポストに関するプライバシー設定がいつ変化するか、または変更されるかを定義、指示、または指定することができる。トリガー定義モジュール206は、例えば、1つまたは複数のトリガーを定義または設定するために利用することができる1つまたは複数のユーザ命令および/またはシステム設定を取得することができる。いくつかの場合、指定された期間が経過したときにトリガーが発生するように定義することができる。いくつかの例では、特定のイベント(例えば、関係ステータスの更新、学校の卒業、学校の申請期間、求職申請期間、ユーザのカスタマイズされたイベントなど)の発生が検出されたときにトリガーを発生させることができる。したがって、トリガー定義モジュール206によって定義されたトリガーの検出された発生に応答等して、ポストのプライバシー設定が変化または変更された場合、視聴者定義モジュール204は、変化した/変更されたプライバシー設定を介して、特定のポストにアクセスできる新規のまたは異なる視聴者グループを指示または特定することができる。
一例では、変更される前のプライバシー設定に基づいて、第1の組の1つまたは複数のエンティティ(例えば、ユーザ、組織、グループ、ページ管理者、代表者など)によってアクセス可能になるように、ポストが有効にされる。第1の組は、プライバシースケジュールに基づいて、視聴者定義モジュール204によって定義することができる。この例の続きでは、トリガーが検出された後にプライバシー設定を変更するか、または変化させることができる。次に、変更された後のプライバシー設定に基づいて、ポストが第2の組の1つまたは複数のエンティティによってアクセス可能となるように有効にされる。視聴者定義モジュール204は、プライバシースケジュールに基づいて第2の組を定義することもできる。
いくつかの場合、第1の組は、第2の組よりも大きくなるように定義することができる。ユーザは、対象の視聴者に対してコンテンツを共有またはポストすることを望んでいるが、時間の経過とともに対象の視聴者を狭くしたと思うことがあり得る。一例では、第1の組は一般大衆を含むことができ、第2の組は、ユーザの友人またはソーシャルつながりのみを含む(およびユーザも含む)ことができる。別の例では、第1の組はユーザの友人のみを含み、第2の組はユーザの選択された友人(例えば、親しい友人、選択されたグループの友人、家族など)のみを含むことができる。さらなる例では、第1の組は選択された友人のみを含み、第2の組はユーザのみを含むことができる。多くの変形が可能である。
さらに、いくつかの場合、第2の組は、第1の組よりも大きくなるように定義することができる。婚約、結婚式、出産などの多くの機会において、ユーザは、ポストされたコンテンツのアクセシビリティをより大きな視聴者に拡大する前に、ポストされたコンテンツを最初に小さな視聴者に開示したいことを望むことがある。一例では、第1の組はユーザのみを含み、第2の組はユーザの選択された友人のみを含むことができる。別の例では、第1の組は、ユーザの選択された友人のみを含み、第2の組は、ユーザのすべての友人を含むことができる。さらなる例では、第1の組はユーザの友人を含み、第2の組は一般大衆を含むことができる。ここでも、多くの変形が可能である。
いくつかの実施形態では、第1の組または第2の組の少なくとも1つは、1つまたは複数のソーシャルつながり信号に基づいてさらに定義することができる。例えば、エンティティがユーザに対してより高いソーシャル親近性(affinity)またはソーシャル係数メトリック(例えば、少なくとも特定の閾値を満たすもの)を有する場合、エンティティは少なくとも1つの組に含まれ得る。別の例では、エンティティが、ユーザによる他のポストの少なくとも指定された閾値量をお気に入りとしたり、コメントしたり、または共有したりした場合(または、ユーザがエンティティによるポストの少なくとも指定された閾値量をお気に入りとしたり、コメントしたり、または共有した場合)、少なくとも1つの組にエンティティを含めることができる。さらなる例では、エンティティがユーザとしばしば社会的に対話していないか、または社会的なつながりがない場合(例えば、ユーザに関するエンティティのソーシャルつながりレベルが特定の閾値を満たさない場合)、エンティティは1つまたは複数の組から除外される(例えば、両方の組から除外される、第2の組から除外されるが、第1の組には含まれるなど)。前述したように、本明細書のすべての例は、説明目的のために提供され、開示された技術に関連する多くの変形または他の可能性があり得る。
図2Bは、本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することを可能にするように構成された例示的なトリガー検出モジュール222を示す。いくつかの実施形態では、図1のトリガー検出モジュール108は、例示的なトリガー検出モジュール222として実施することができる。図2Bに示すように、トリガー検出モジュール222は、時間トリガーモジュール224およびイベントトリガーモジュール226を含むことができる。
上述したように、トリガー検出モジュール222は、ポストに関連するプライバシー設定を変更するトリガーの検出を可能にする。トリガーは、例えば、ユーザが指定することができ、かつ/または1つまたは複数のシステム設定に基づくものとすることができる。一例では、トリガーは、経過時間の指定された期間またはイベントの発生のうちの少なくとも1つに関連付けることができる。トリガー検出モジュール222は、時間トリガーモジュール224を利用して、1つまたは複数の時間ベースのトリガーを検出することができる。時間トリガーモジュール224は、特定の指定された期間が経過したとき、または通過したときに特定の指定された期間に関連する特定のトリガーが生じたことを検出することができる。トリガー検出モジュール222は、イベントトリガーモジュール226を利用して、1つまたは複数のイベントベースのトリガーを検出することもできる。イベントトリガーモジュール226は、特定の指定されたイベントが開始または発生したと判定された場合に、特定の指定されたイベントに関連付けられた特定のトリガーが発生したことを検出することができる。
さらに、トリガー検出モジュール222は、複数のトリガーを検出するように構成することができる。一例では、ユーザによって作成されたポストは、第1の組の1つまたは複数のエンティティによってアクセス可能である。第1の組は、プライバシースケジュールに基づいて定義することができる。次いで、トリガー検出モジュール222は、そのポストに関連するプライバシー設定を変更するための第1のトリガーを検出することができる。プライバシー設定は、第1のトリガーが検出されたとき、プライバシースケジュールに基づいて変更することができる。その後、変更された後のプライバシー設定に基づいて、ポストが第2の組の1つまたは複数のエンティティによってアクセス可能となるように有効にされる。第2の組は、プライバシースケジュールに基づいて定義することができる。この例の続きでは、トリガー検出モジュール222は、ポストに関連するプライバシー設定を(再度)変化させるか、または変更する第2のトリガーを検出することもできる。プライバシー設定は、第2のトリガーが検出されたとき、プライバシースケジュールに基づいて変更される。ポストは、変更された後のプライバシー設定に基づいて、第3の組の1つまたは複数のエンティティによってアクセス可能となるように有効にされる。第3の組は、プライバシースケジュールに基づいて定義することができる。いくつかの場合、このプロセスを第3のトリガーと第4の組のエンティティ等に対して繰り返すことができる。多くの変形が可能です。
一例では、第1の組は公衆の視聴者を含むことができる。第2の組は、ユーザに関連付けられた1組のソーシャルつながりを含むことができる。第3の組は、ユーザに関連付けられたソーシャルつながりの選択された一部を含むことができる。別の例では、第1の組は、ユーザに関連付けられた1組のソーシャルつながりを含むことができる。第2の組は、ユーザに関連付けられたソーシャルつながりの選択された一部を含むことができる。第3の組は、ユーザを含むことができる。前述したように、本明細書中のすべての例は説明のために提供されており、多くの変形が可能であることを理解されたい。
図3は、本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することに関連する例示的シナリオ300を示す。図3の例示的シナリオ300は、ユーザ304(ジェーン ドゥ)によって作成されたコンテンツアイテム等の例示的なポスト302を示す。ユーザ304は、ソーシャルネットワーキングシステムを介してポスト302を共有または公開することができる。
この例示的シナリオ300では、開示された技術は、ポスト302に関連するプライバシー設定を変更するためのプライバシースケジュールを決定する。この例では、プライバシースケジュールは、プライバシー設定がユーザの友人またはソーシャルつながりがポスト302を当初は閲覧またはアクセスすることを可能にするか、または許可することを指定することができる。しかしながら、プライバシースケジュールは、1ヶ月後に、プライバシー設定が変更されて、ユーザ304のみがポスト302を閲覧またはアクセスできるようにすることをさらに指定することができる。このように、例示的ポスト302は、対話したときに(例えば、クリックしたり、タップしたり、ホバリングしたりするなど)、ユーザの友人のみがポスト302を閲覧またはアクセスできることを示すプロンプトまたはメッセージ308を提供するプライバシー設定アイコン306を含むことができる。多くの変形が可能であることが企図される。
図4は、本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することに関連する例示的シナリオ400を示す。例示的シナリオ400は、図3のポスト302のような例示的なポスト402を示す。図4の例示的なポスト402は、図3のユーザ304のようなユーザ402(ジェーン ドゥ)によってポストされ、共有され、または公開される。
図4の例示的シナリオ400では、開示された技術は、ポスト402に関するプライバシースケジュールに基づいて定義されたトリガーを検出する。この例では、トリガーは、月の時間の経過に対応することができる。結果として、トリガーが検出されたため、ポスト402に関連するプライバシー設定は、プライバシースケジュールに基づいて変更される。この例では、プライバシースケジュールは、ユーザ404のみがポスト402を閲覧またはアクセスできるようにするか、または許可するようにプライバシー設定が変更されることを指定することができる。したがって、例示的ポスト402は、対話したときに、ユーザ404のみがポスト402を閲覧又はアクセスできることを示すプロンプト又はメッセージ408を提供するプライバシー設定アイコン406を含むことができる。多くの変形又は他の可能性があり得る。
図5は、本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することに関連する例示的な方法500を示す。別段の記載がない限り、様々な実施形態の範囲内で、同様のまたは代替の順序で、または並行して実行される、追加の、より少ない、または代替のステップが存在し得ることを理解されたい。
ブロック502において、例示的な方法500は、ソーシャルネットワーキングシステムを介して公開されるべきポストを識別する。ブロック504において、例示的な方法500は、ポストに関連するプライバシー設定を変更するためのプライバシースケジュールを決定する。ブロック506において、例示的な方法500は、ポストに関連するプライバシー設定を変更するトリガーを検出する。ブロック508において、例示的な方法500は、トリガーが検出されたときに、プライバシースケジュールに基づいてプライバシー設定を変更する。
図6は、本開示の一実施形態による、ポストに関連するプライバシー設定のトリガーに基づく変更を提供することに関連する例示的な方法600を示す。上述したように、別段の記載がない限り、様々な実施形態の範囲内で、同様のまたは代替の順序で、または並行して実行される、追加の、より少ない、または代替のステップが存在し得ることを理解されたい。
ブロック602において、例示的な方法600は、トリガーを検出する前に、ソーシャルネットワーキングシステムを介してポストを公開する。ブロック604において、例示的な方法600は、変更される前のプライバシー設定に基づいて、第1の組の1つまたは複数のエンティティによってアクセス可能となるようにポストを有効にする。第1の組は、プライバシースケジュールに基づいて定義される。ブロック606において、例示的な方法600は、変更された後のプライバシー設定に基づいて、第2の組の1つまたは複数のエンティティによってアクセス可能となるようにポストを有効にする。第2の組は、プライバシースケジュールに基づいて定義される。
本開示の様々な実施形態に関連する多くの他の用途、用途、特徴、可能性、および/または変形があり得ることが企図される。例えば、いくつかの例では、開示された技術を利用するのにオプトインするか否かをユーザが選択できる場合もある。開示された技術は、例えば、様々なプライバシー設定および嗜好が維持され、個人情報が開示されないようにすることもできる。別の例では、本開示の様々な実施形態は、時間とともに学習、改善、および/または洗練され得る。
ソーシャルネットワーキングシステム-例示的な実装形態
図7は、本開示の一実施形態による、向上したビデオ符号化のための様々な実施形態で利用され得る例示的なシステム700のネットワーク図を示す。システム700は、1つまたは複数のユーザデバイス710と、1つまたは複数の外部システム720と、ソーシャルネットワーキングシステム(ソーシャルネットワーキングサービス)730と、ネットワーク750とを含む。一実施形態では、前述の実施形態との関連で論じられたソーシャルネットワーキングサービス、プロバイダ、および/またはシステムは、ソーシャルネットワーキングシステム730として実装されてよい。例示の目的のために、図7によって示される、システム700の実施形態は、単一の外部システム720と、単一のユーザデバイス710とを含む。ただし、他の実施形態において、システム700は、より多くのユーザデバイス710、および/または、より多くの外部システム720を含んでもよい。特定の実施形態において、ソーシャルネットワーキングシステム730は、ソーシャルネットワークプロバイダによって運営されるのに対して、外部システム720は、異なるエンティティによって運営され得るという点で、ソーシャルネットワーキングシステム730とは別個のものである。しかしながら、様々な実施形態において、ソーシャルネットワーキングシステム730および外部システム720は、共に動作して、ソーシャルネットワーキングシステム730のユーザ(またはメンバー)に対してソーシャルネットワーキングサービスを提供する。この意味において、ソーシャルネットワーキングシステム730は、外部システム720などの他のシステムがインターネット上のユーザに対してソーシャルネットワーキングサービスおよび機能を提供するために使用し得るプラットフォームまたはバックボーンを提供する。
ユーザデバイス710は、ユーザから入力を受信し、ネットワーク750を通じてデータを送受信することができる1つまたは複数のコンピューティングデバイス(またはコンピューティングシステム)を備える。一実施形態において、ユーザデバイス710は、例えば、マイクロソフトウィンドウズ(登録商標)と互換性のあるオペレーティングシステム(OS)、Apple OS X、および/またはLinux(登録商標)ディストリビューションを実行する従来のコンピュータシステムである。別の実施形態において、ユーザデバイス710は、スマートフォン、タブレット、携帯情報端末(PDA:personal digital assistant)、携帯電話、ラップトップコンピュータ、ウェアラブルデバイス(例えば、眼鏡、腕時計、ブレスレット、その他)、カメラ、機器、その他などのコンピュータ機能を有するコンピューティングデバイスまたはデバイスであってもよい。ユーザデバイス710は、ネットワーク750を通じて通信するように構成される。ユーザデバイス710は、アプリケーション、例えば、ユーザデバイス710のユーザがソーシャルネットワーキングシステム730と対話することを可能にするブラウザアプリケーションを実行することができる。別の実施形態において、ユーザデバイス710は、iOSおよびANDROID(登録商標)などの、ユーザデバイス710のネイティブオペレーティングシステムによって提供されるアプリケーションプログラミングインタフェース(API)を通じてソーシャルネットワーキングシステム730を対話する。ユーザデバイス710は、ネットワーク750を通じて外部システム720およびソーシャルネットワーキングシステム730と通信するように構成される。ネットワーク750は、有線通信システムおよび/または無線通信システムを使用する、ローカルエリアネットワークおよび/または広域ネットワークの任意の組み合わせを備え得る。
1つの実施形態において、ネットワーク750は、標準的な通信技術およびプロトコルを使用する。したがって、ネットワーク750は、イーサネット(登録商標)、802.11、マイクロ波アクセスのための世界的相互運用性(WiMAX:worldwide
interoperability for microwave access)、3G、4G、CDMA、GSM(登録商標)、LTE、デジタル加入者線(DSL:digital subscriber line)等などの技術を使用するリンクを含み得る。同様に、ネットワーク750上で使用されるネットワーキングプロトコルは、マルチプロトコルラベルスイッチング(MPLS:multiprotocol label switching)、送信制御プロトコル/インターネットプロトコル(TCP/IP)、ユーザデータグラムプロトコル(UDP)、ハイパーテキスト転送プロトコル(HTTP)、簡易メール転送プロトコル(SMTP:simple mail transfer protocol)、ファイル転送プロトコル(FTP)などを含み得る。ネットワーク750上で交換されるデータは、ハイパーテキストマークアップ言語(HTML)および拡張マークアップ言語(XML)を含む技術および/またはフォーマットを使用して表現され得る。また、全部または一部のリンクは、セキュアソケットレイヤ(SSL)、トランスポートレイヤセキュリティ(TLS)、およびインターネットプロトコルセキュリティ(IPsec)などの従来の暗号化技術を使用して暗号化され得る。
1つの実施形態において、ユーザデバイス710は、外部システム720から、およびソーシャルネットワーキングシステム730から受信されるマークアップ言語文書714を、ブラウザアプリケーション712を使用して処理することによって、外部システム720からのコンテンツおよび/またはソーシャルネットワーキングシステム730からのコンテンツを表示し得る。マークアップ言語文書714は、コンテンツと、そのコンテンツのフォーマッティングまたは表示方法を記述する1つまたは複数の命令とを識別する。マークアップ言語文書714内に含まれる命令を実行することによって、ブラウザアプリケーション712は、マークアップ言語文書714によって記述されたフォーマットまたは表示方法を使用して、識別されたコンテンツを表示する。例えば、マークアップ言語文書714は、外部システム720およびソーシャルネットワーキングシステム730から得られたテキストおよび/または画像データを含む複数のフレームを有するウェブページを生成および表示するための命令を含む。様々な実施形態において、マークアップ言語文書714は、拡張マークアップ言語(XML)データ、拡張ハイパーテキストマークアップ言語(XHTML)データ、または、他のマークアップ言語データを含むデータファイルを備える。また、マークアップ言語文書714は、外部システム720とユーザデバイス710との間のデータ交換を容易にするためのジャバスクリプトオブジェクトノーテーション(JSON:JavaScript(登録商標)Object Notation)データ、パディング付きのJSON(JSONP:JSON with padding)データ、およびジャバスクリプトデータを含み得る。ユーザデバイス710上のブラウザアプリケーション712は、ジャバスクリプトコンパイラを使用して、マークアップ言語文書714を復号し得る。
マークアップ言語文書714は、FLASH(商標)アプリケーションまたはUnity(商標)アプリケーション、Silverlight(商標)アプリケーションフレームワーク等などの、アプリケーションまたはアプリケーションフレームワークも含み、または、これらに対してもリンクし得る。
1つの実施形態において、ユーザデバイス710は、ユーザデバイス710のユーザがソーシャルネットワーキングシステム730へログインしたかを示すデータを含む、1つまたは複数のクッキー716も含む。クッキー716は、ソーシャルネットワーキングシステム730からユーザデバイス710へ通信されるデータのカスタム化を可能にし得る。
外部システム720は、1つまたは複数のウェブページ722a、722bを含む、1つまたは複数のウェブサーバを含む。1つまたは複数のウェブページ722a、722bは、ネットワーク750を使用して、ユーザデバイス710へ通信される。外部システム720は、ソーシャルネットワーキングシステム730とは別個である。例えば、外部システム720は、第1のドメインに対して関連付けられるが、ソーシャルネットワーキングシステム730は、別個のソーシャルネットワーキングドメインに対して関連付けられる。外部システム720に含まれるウェブページ722a、722bは、コンテンツを識別し、識別されたコンテンツのフォーマッティングおよび表示方法を特定する命令を含むマークアップ言語文書714を備える。
ソーシャルネットワーキングシステム730は、複数のユーザを含み、ソーシャルネットワークのユーザに対して、ソーシャルネットワークの他のユーザと通信および対話するための能力を提供する、ソーシャルネットワークのための1つまたは複数のコンピューティングデバイスを含む。さらに詳細に説明されるように、ソーシャルネットワークは、グラフ、すなわち、エッジとノードとを含むデータ構造によって表現され得る。データベース、オブジェクト、クラス、メタ要素、ファイル、または任意の他のデータ構造を含むが、これらに限定されない、他のデータ構造も、ソーシャルネットワークを表現するために使用され得る。ソーシャルネットワーキングシステム730は、オペレータによって監督、管理、または制御されてよい。ソーシャルネットワーキングシステム730のオペレータは、ソーシャルネットワーキングシステム730内でコンテンツを管理し、ポリシを統制し、使用メトリクスを収集するための、人間、自動化されたアプリケーション、または一連のアプリケーションであってよい。任意のタイプのオペレータが使用されてよい。
ユーザは、ソーシャルネットワーキングシステム730に加入し、次いで、そのユーザがつなげられることを望む、ソーシャルネットワーキングシステム730の任意の数の他のユーザへのつながりを追加し得る。本明細書において、「友達」という用語は、ユーザがソーシャルネットワーキングシステム730を通じてつながり、関連、または関係を形成した、ソーシャルネットワーキングシステム730の任意の他のユーザに及ぶ。例えば、一実施形態において、ソーシャルネットワーキングシステム730内のユーザが、ソーシャルグラフ内のノードとして表現される場合、「友達」という用語は、2つのユーザノード間に形成され、かつ、2つのユーザノードを直接的に接続するエッジを指し得る。
つながりは、ユーザによって明示的に追加されても、または、ユーザの共通の特性(例えば、同じ教育機関の卒業生であるユーザ)に基づいて、ソーシャルネットワーキングシステム730によって自動的に作成されてもよい。例えば、第1のユーザは、友達になりたい特定の他のユーザを具体的に選択する。ソーシャルネットワーキングシステム730におけるつながりは、通常は双方向であるが、双方向である必要はなく、そのため、「ユーザ」および「友達」という用語は、枠組みに依存する。ソーシャルネットワーキングシステム730のユーザ間のつながりは、通常は、双務的(「二方向」)または「相互的」であるが、つながりは、片務的、または「一方向」であってもよい。例えば、ボブおよびジョーの両者が、ソーシャルネットワーキングシステム730のユーザであり、互いにつながっている場合、ボブおよびジョーは、互いのつながりである。他方で、ボブは、ジョーによってソーシャルネットワーキングシステム730へ通信されたデータを見るためにジョーとつながることを欲するが、ジョーは、相互的なつながりを形成することを欲しない場合、片務的なつながりが確立され得る。ユーザ間のつながりは、直接的なつながりであり得る。ただし、ソーシャルネットワーキングシステム730のいくつかの実施形態は、つながりが、1つまたは複数のつながりのレベルまたは分離度を通じた間接的なものとなることを可能にする。
ユーザ間のつながりを確立および維持し、ユーザ間の対話を可能にすることに加えて、ソーシャルネットワーキングシステム730は、ソーシャルネットワーキングシステム730によってサポートされる様々なタイプのアイテムに対してアクションを行うための能力をユーザに対して提供する。こうしたアイテムは、ソーシャルネットワーキングシステム730のユーザが所属し得るグループまたはネットワーク(すなわち、人々、エンティティ、およびコンセプトのソーシャルネットワーク)、ユーザが興味を持ち得るイベントまたはカレンダー入力、ユーザがソーシャルネットワーキングシステム730を通じて使用し得るコンピュータベースのアプリケーション、ソーシャルネットワーキングシステム730によって提供されるサービスを通じてまたはソーシャルネットワーキングシステム730を通じてユーザがアイテムを購入または販売することを可能にする取引、ならびにユーザがソーシャルネットワーキングシステム730内外で実行し得る広告との対話を含み得る。これらは、ユーザがソーシャルネットワーキングシステム730上で作用を与え得るアイテムのわずかな例にすぎず、多くの他の例が可能である。ユーザは、ソーシャルネットワーキングシステム730において、または、ソーシャルネットワーキングシステム730とは別個の外部システム720もしくはネットワーク750を通じてソーシャルネットワーキングシステム730に対して結合される外部システム720において表現されることが可能なありとあらゆるものと対話し得る。
ソーシャルネットワーキングシステム730は、多様なエンティティとリンクすることも可能である。例えば、ソーシャルネットワーキングシステム730は、ユーザが互いに対話すること、および、API、ウェブサービス、または他の通信チャネルを通じて外部システム720または他のエンティティと対話することを可能にする。ソーシャルネットワーキングシステム730は、複数のエッジによって相互接続された複数のノードを備える「ソーシャルグラフ」を生成および維持する。ソーシャルグラフ内の各ノードは、別のノードに対して作用を与え得るエンティティおよび/または別のノードによって作用を与えられ得るエンティティを表現し得る。ソーシャルグラフは、様々なタイプのノードを含み得る。ノードのタイプの例は、ユーザ、人間以外のエンティティ、コンテンツアイテム、ウェブページ、グループ、アクティビティ、メッセージ、コンセプト、およびソーシャルネットワーキングシステム730内のオブジェクトによって表現され得る任意の他のものを含む。ソーシャルグラフ内の2つのノード間のエッジは、ノード関係から、またはノードのうちの一方によって他方に対して実行されたアクションから生じ得る、2つのノード間の特定の種類のつながり、または関連を表現し得る。いくつかのケースでは、ノード間のエッジは、重み付けされ得る。エッジの重みは、ノード間のつながりまたは関連の強度などの、そのエッジに対して関連付けられている属性を表現し得る。異なるタイプのエッジが、異なる重みと共に提供され得る。例えば、あるユーザが別のユーザに対して「いいね」を表明するときに作成されるエッジには、ある重みが与えられてよく、ユーザが別のユーザと友達になるときに作成されるエッジには、異なる重みが与えられてよい。
例として、第1のユーザが第2のユーザを友達として識別した場合、第1のユーザを表すノードと、第2のユーザを表す第2のノードとを接続するソーシャルグラフ中のエッジが生成される。様々なノードが互いに関係するかまたは対話するのに伴い、ソーシャルネットワーキングシステム730は、関係および対話を反映するように、様々なノードを接続するエッジを修正する。
ソーシャルネットワーキングシステム730は、ユーザによるソーシャルネットワーキングシステム730との対話を高める、ユーザにより生成されたコンテンツも含む。ユーザにより生成されたコンテンツは、ユーザがソーシャルネットワーキングシステム730に対して追加し、アップロードし、送信し、または「投稿し」得るあらゆるものを含み得る。例えば、ユーザは、ユーザデバイス710からソーシャルネットワーキングシステム730への投稿を通信する。投稿は、ステータスアップデートもしくは他の文字情報などのデータ、位置情報、写真などの画像、映像、リンク、音楽、または、他の同様のデータおよび/もしくはメディアを含み得る。コンテンツも、第三者によってソーシャルネットワーキングシステム730に対して追加され得る。コンテンツ「アイテム」は、ソーシャルネットワーキングシステム730においてオブジェクトとして表現される。このようにして、ソーシャルネットワーキングシステム730のユーザは、様々な通信チャネルを通じて様々なタイプのテキストおよびコンテンツアイテムを投稿することによって、互いに通信することを促される。そのような通信は、ユーザ同士の対話を増加させ、ユーザがソーシャルネットワーキングシステム730と対話する頻度を増加させる。
ソーシャルネットワーキングシステム730は、ウェブサーバ732と、API要求サーバ734と、ユーザプロファイルストア736と、つながりストア738と、アクションロガー740と、アクティビティログ742と、認証サーバ744とを含む。本発明の一実施形態において、ソーシャルネットワーキングシステム730は、様々なアプリケーションのための追加的な構成要素、より少ない構成要素、または異なる構成要素を含み得る。ネットワークインタフェース、セキュリティ機構、負荷分散装置、フェイルオーバサーバ、管理およびネットワーク操作コンソールなどの他の構成要素は、本システムの詳細を曖昧にしないように、図示されていない。
ユーザプロファイルストア736は、ユーザによって申告され、またはソーシャルネットワーキングシステム730によって推測された職歴、学歴、趣味または嗜好、住所などの経歴的情報、人口学的情報、および他のタイプの記述的情報を含む、ユーザアカウントに関する情報を維持する。この情報は、各ユーザが一意に識別されるように、ユーザプロファイルストア736内に記憶される。ソーシャルネットワーキングシステム730は、異なるユーザ間の1つまたは複数のつながりを記述するデータも、つながりストア738内に記憶する。つながり情報は、同様または共通の職歴、グループメンバーシップ、趣味、または学歴を有するユーザを示し得る。また、ソーシャルネットワーキングシステム730は、ユーザの他のユーザとの関係をユーザが特定することを可能にする、異なるユーザ間におけるユーザによって定義されたつながりを含む。例えば、ユーザによって定義されたつながりは、友達、同僚、パートナー等などの、ユーザの実生活の関係と並行する、他のユーザとの関係をユーザが生成することを可能にする。ユーザは、予め定義されたタイプのつながりから選択しても、またはユーザ自身のつながりタイプを必要に応じて定義してもよい。非人間エンティティ、バケット、クラスタセンタ、画像、興味、ページ、外部システム、コンセプト等などの、ソーシャルネットワーキングシステム730内の他のノードとのつながりも、つながりストア738内に記憶される。
ソーシャルネットワーキングシステム730は、ユーザが対話し得るオブジェクトに関するデータを維持する。このデータを維持するために、ユーザプロファイルストア736およびつながりストア738は、ソーシャルネットワーキングシステム730によって維持されるオブジェクトの対応するタイプのインスタンスを記憶する。各オブジェクトタイプは、オブジェクトのタイプに適した情報を記憶するのに適した情報フィールドを有する。例えば、ユーザプロファイルストア736は、ユーザのアカウントおよびユーザのアカウントに関連した情報を記述するのに適したフィールドを有するデータ構造を含む。特定のタイプの新たなオブジェクトが作成される場合、ソーシャルネットワーキングシステム730は、対応するタイプの新たなデータ構造を初期化し、その新たなデータ構造に対して一意のオブジェクト識別子を割り当て、必要に応じて、そのオブジェクトに対してデータを追加することを開始する。これは、例えば、ユーザがソーシャルネットワーキングシステム730のユーザになった場合に発生し、ソーシャルネットワーキングシステム730は、ユーザプロファイルストア736内にユーザプロファイルの新たなインスタンスを生成し、ユーザアカウントに対して一意の識別子を割り当て、ユーザによって提供される情報をユーザアカウントのフィールドへ投入し始める。
つながりストア738は、他のユーザに対するユーザのつながり、外部システム720に対するつながり、または他のエンティティに対するつながりを記述するのに適したデータ構造を含む。つながりストア738は、つながりタイプもユーザのつながりと関連付け得る。つながりタイプは、ユーザのプライバシー設定と共に使用されて、ユーザに関する情報に対するアクセスを規制し得る。本発明の一実施形態において、ユーザプロファイルストア736およびつながりストア738は、連合データベースとして実装され得る。
つながりストア738、ユーザプロファイルストア736、およびアクティビティログ742内に記憶されるデータは、ノードを使用して、ノードを接続する様々なオブジェクトおよびエッジを識別して、異なるオブジェクト間の関係を識別するソーシャルグラフをソーシャルネットワーキングシステム730が生成することを可能にする。例えば、第1のユーザが、ソーシャルネットワーキングシステム730内で第2のユーザとのつながりを確立する場合、ユーザプロファイルストア736からの第1のユーザおよび第2のユーザのユーザアカウントは、ソーシャルグラフ内のノードとして動作し得る。つながりストア738によって記憶される、第1のユーザと第2のユーザとの間のつながりは、第1のユーザおよび第2のユーザに対して関連付けられるノード間のエッジである。この例を続けると、第2のユーザは、次いで、第1のユーザに対して、ソーシャルネットワーキングシステム730内でメッセージを送信し得る。メッセージを送信するアクションは、第1のユーザおよび第2のユーザを表現する、ソーシャルグラフ内の2つのノード間の別のエッジであり、メッセージを送信するアクションは、記憶され得る。また、メッセージ自体が、第1のユーザを表現するノードおよび第2のユーザを表現するノードに対して接続される別のノードとして、ソーシャルグラフにおいて識別され、ソーシャルグラフに含まれ得る。
別の例において、第1のユーザは、ソーシャルネットワーキングシステム730によって維持される画像において(または、代替的に、ソーシャルネットワーキングシステム730の外部の別のシステムによって維持される画像において)第2のユーザをタグ付けし得る。画像は、それ自体がソーシャルネットワーキングシステム730内のノードとして表現され得る。このタグ付けアクションは、ユーザの各々と画像との間にエッジを作成するだけでなく、第1のユーザと第2のユーザとの間のエッジも作成し得る。画像もソーシャルグラフ内のノードである。また別の例において、ユーザが、イベントへ参加することを確かめる場合、そのユーザおよびそのイベントは、ユーザプロファイルストア736から取得されるノードであり、そのイベントへの参加は、アクティビティログ742から得られ得るノード間のエッジである。ソーシャルグラフを生成および維持することによって、ソーシャルネットワーキングシステム730は、多くの異なるタイプのオブジェクトを記述するデータ、ならびに、それらのオブジェクト間の対話およびつながりを含み、社会的に関連する情報の豊富なソースを提供する。
ウェブサーバ732は、ソーシャルネットワーキングシステム730を、ネットワーク750を通じて、1つもしくは複数のユーザデバイス710および/または1つもしくは複数の外部システム720に対してリンクする。ウェブサーバ732は、ウェブページ、およびJava(登録商標)、JavaScript、Flash、XMLなどの他のウェブ関連コンテンツを供給する。ウェブサーバ732は、メールサーバを含み、または、ソーシャルネットワーキングシステム730と1つもしくは複数のユーザデバイス710との間のメッセージを受信およびルーティングするための他のメッセージング機能を含み得る。メッセージは、インスタントメッセージ、キューメッセージ(例えば、電子メール)、テキストおよびSMSメッセージ、または任意の他の適切なメッセージングフォーマットであり得る。
API要求サーバ734は、1つまたは複数の外部システム720およびユーザデバイス710が、1つまたは複数のAPI関数を呼び出すことによって、ソーシャルネットワーキングシステム730からのアクセス情報を呼び出すことを可能にする。API要求サーバ734は、外部システム720が、APIを呼び出すことによって、ソーシャルネットワーキングシステム730に対して情報を送信することも可能にし得る。外部システム720は、1つの実施形態において、ネットワーク750を通じてソーシャルネットワーキングシステム730へAPI要求を送信し、API要求サーバ734は、そのAPI要求を受信する。API要求サーバ734は、API要求に対して関連付けられているAPIを呼び出すことによって要求を処理して、適当な応答を生成する。API要求サーバ734は、その適当な応答を、ネットワーク750を通じて外部システム720へ通信する。例えば、API要求に応答して、API要求サーバ734は、外部システム720に対してログインしたユーザのつながりなどの、ユーザに対して関連付けられているデータを収集し、収集されたデータを外部システム720へ通信する。別の実施形態において、ユーザデバイス710は、外部システム720と同じ手法で、APIを通じてソーシャルネットワーキングシステム730と通信する。
アクションロガー740は、ソーシャルネットワーキングシステム730内での、および/またはソーシャルネットワーキングシステム730外でのユーザアクションに関する通信をウェブサーバ732から受信することが可能である。アクションロガー740は、ユーザアクションに関する情報をアクティビティログ742へ投入し、ソーシャルネットワーキングシステム730の内部で、およびソーシャルネットワーキングシステム730の外部で、そのユーザによって行われた様々なアクションをソーシャルネットワーキングシステム730が発見することを可能にする。特定のユーザが、ソーシャルネットワーキングシステム730上の別のノードに関して行う任意のアクションは、アクティビティログ742内または同様のデータベースもしくは他のデータレポジトリ内で維持される情報を通じて、各ユーザのアカウントに対して関連付けられ得る。識別および記憶される、ソーシャルネットワーキングシステム730内でユーザによって行われるアクションの例は、例えば、別のユーザに対するつながりを追加すること、別のユーザへメッセージを送信すること、別のユーザからのメッセージを読むこと、別のユーザに対して関連付けられるコンテンツを視聴すること、別のユーザによって投稿されたイベントに参加すること、画像を投稿すること、画像を投稿しようと試行すること、または、別のユーザもしくは別のオブジェクトと対話する他のアクションを含み得る。ユーザが、ソーシャルネットワーキングシステム730内でアクションを行う場合、そのアクションは、アクティビティログ742内に記録される。一実施形態において、ソーシャルネットワーキングシステム730は、アクティビティログ742をエントリのデータベースとして維持する。アクションが、ソーシャルネットワーキングシステム730内で行われる場合、そのアクションについてのエントリが、アクティビティログ742に対して追加される。アクティビティログ742は、アクションログと称され得る。
また、ユーザアクションは、ソーシャルネットワーキングシステム730とは別個の外部システム720などの、ソーシャルネットワーキングシステム730の外部のエンティティ内で発生するコンセプトおよびアクションに対して関連付けられ得る。例えば、アクションロガー740は、ユーザによる外部システム720との対話を記述するデータを、ウェブサーバ732から受信し得る。この例において、外部システム720は、ソーシャルグラフにおける構造化されたアクションおよびオブジェクトに従って、ユーザによる対話を報告する。
ユーザが外部システム720と対話するアクションの他の例は、ユーザが外部システム720もしくは別のエンティティにおいて興味を表現すること、外部システム720もしくは外部システム720内のウェブページ722aと議論するソーシャルネットワーキングシステム730に対してユーザがコメントを投稿すること、ユーザがソーシャルネットワーキングシステム730に対してユニフォームリソースロケータ(URL)もしくは外部システム720に対して関連付けられる他の識別子を投稿すること、ユーザが外部システム720に対して関連付けられるイベントへ参加すること、または、外部システム720に関連する、ユーザによる任意の他のアクションを含む。したがって、アクティビティログ742は、ソーシャルネットワーキングシステム730のユーザと、ソーシャルネットワーキングシステム730とは別個の外部システム720との間の対話を記述するアクションを含み得る。
認証サーバ744は、ソーシャルネットワーキングシステム730のユーザの1つまたは複数のプライバシー設定を強化する。ユーザのプライバシー設定は、ユーザに対して関連付けられる特定の情報がどのように共有され得るかを決定する。プライバシー設定は、ユーザに対して関連付けられる特定の情報の仕様、および情報が共有され得る1つまたは複数のエンティティの仕様を備える。情報が共有され得るエンティティの例は、他のユーザ、アプリケーション、外部システム720、または、その情報に潜在的にアクセスし得る任意のエンティティを含み得る。ユーザによって共有され得る情報は、プロフィール写真などのユーザアカウント情報、ユーザに対して関連付けられる電話番号、ユーザのつながり、つながりを追加すること、ユーザプロフィール情報を変更することなどのユーザによって行われるアクション等を備える。
プライバシー設定仕様は、異なるレベルの粒度で提供され得る。例えば、プライバシー設定は、他のユーザと共有されるべき具体的な情報を識別し得る。プライバシー設定は、職場電話番号、または、プロフィール写真、自宅電話番号、およびステータスを含む個人情報などの関連情報の具体的なセットを識別する。代替的に、プライバシー設定は、ユーザに対して関連付けられる全ての情報に対して適用されてもよい。特定の情報にアクセスすることができるエンティティのセットの仕様も、様々なレベルの粒度で特定され得る。情報が共有され得るエンティティの様々なセットは、例えば、ユーザの全ての友達、友達の全ての友達、全てのアプリケーション、または全ての外部システム720を含み得る。1つの実施形態は、エンティティのセットの仕様がエンティティの一覧表を備えることを可能にする。例えば、ユーザは、一定の情報に対してアクセスすることを許可される外部システム720のリストを提供し得る。別の実施形態は、情報に対してアクセスすることを許可されない例外と共にエンティティのセットを仕様が備えることを可能にする。例えば、ユーザは、全ての外部システム720がユーザの職場情報に対してアクセスすることを許可し得るが、職場情報に対してアクセスすることを許可されない外部システム720のリストを特定し得る。一定の実施形態は、一定の情報に対してアクセスすることを許可されない例外のリストを「ブロックリスト」と呼ぶ。ユーザによって特定されるブロックリストに所属する外部システム720は、プライバシー設定において特定される情報に対してアクセスすることをブロックされる。情報の仕様の粒度と、情報が共有されるエンティティの仕様の粒度との様々な組み合わせが可能である。例えば、全ての個人情報は、友達と共有され得るのに対して、全ての職場情報は、友達の友達と共有され得る。
認証サーバ744は、ユーザに対して関連付けられる一定の情報がユーザの友達、外部システム720、ならびに/または他のアプリケーションおよびエンティティによってアクセスされ得るかを決定するためのロジックを含む。外部システム720は、ユーザの職場電話番号などの、ユーザのより個人的かつ機密的な情報に対してアクセスするために、認証サーバ744からの認証を必要とし得る。ユーザのプライバシー設定に基づいて、認証サーバ744は、別のユーザ、外部システム720、アプリケーション、または別のエンティティが、ユーザによって行われるアクションに関する情報を含む、ユーザに対して関連付けられる情報に対してアクセスすることを許可されているかを決定する。
いくつかの実施形態では、ソーシャルネットワーキングシステム730は、トリガーに基づくプライバシー変更モジュール746を含むことができる。トリガーに基づくプライバシー変更モジュール746は、例えば、図1のトリガーに基づくプライバシー変更モジュール102として実施することができる。上述したように、多くの変形または他の可能性があることを理解されたい。例えば、いくつかの例では、トリガーに基づくプライバシー変更モジュール(または少なくともその一部)をユーザデバイス710に含めるか、または実装することができる。トリガーに基づくプライバシー変更モジュール746の他の特徴は、トリガーに基づくプライバシー変更モジュール102に関連して本明細書で説明される。
ハードウェア実装形態
前述のプロセスおよび特徴は、多種多様なマシンおよびコンピュータシステムアーキテクチャによって、ならびに、多種多様なネットワークおよびコンピューティング環境において実装され得る。図8は、本発明に応じて本明細書に記載された1つまたは複数の実施形態を実装するために使用され得るコンピュータシステム800の例を例示する。コンピュータシステム800は、コンピュータシステム800に対して、本明細書において議論されるプロセスおよび特徴を実行させるための命令のセットを含む。コンピュータシステム800は、他のマシンへ接続され(例えば、ネットワーク化され)得る。ネットワーク化された配置において、コンピュータシステム800は、クライアント/サーバネットワーク環境内のサーバマシンもしくはクライアントマシンの資格において動作し、または、ピアツーピア(もしくは分散)ネットワーク環境内のピアマシンとして動作し得る。本発明の一実施形態において、コンピュータシステム800は、ソーシャルネットワーキングシステム730、ユーザデバイス710、外部システム820、またはこれらの構成要素であってもよい。本発明の一実施形態において、コンピュータシステム800は、ソーシャルネットワーキングシステム730の全てまたは部分を構成する多くのサー間のうちの1つのサーバであってもよい。
コンピュータシステム800は、プロセッサ802と、キャッシュ804と、コンピュータ読取可能な媒体上に記憶され、本明細書において説明されるプロセスおよび特徴へ向けられた、1つまたは複数の実行可能なモジュールおよびドライバとを含む。また、コンピュータシステム800は、高性能入出力(I/O)バス806と、標準I/Oバス808とを含む。ホストブリッジ810は、プロセッサ802を高性能I/Oバス806に対して結合する一方で、I/Oバスブリッジ812は、2つのバス806および808を互いに結合する。システムメモリ814および1つまたは複数のネットワークインタフェース816は、高性能I/Oバス806へ結合される。コンピュータシステム800は、ビデオメモリと、ビデオメモリに対して結合される表示デバイスとをさらに含んでもよい(図示せず)。マスストレージ818およびI/Oポート820は、標準I/Oバス808へ結合される。コンピュータシステム800は、バス808に対して結合される、キーボードおよびポインティングデバイス、表示デバイス、または他の入出力デバイス(図示せず)を随意的に含んでもよい。全体的に、これらの要素は、カリフォルニア州サンタクララのインテルコーポレーション社(Intel Corporation)によって製造されるx86互換性のあるプロセッサ、カリフォルニア州サニーベルのアドバンストマイクロデバイス社(AMD:Advanced Micro Devices,Inc)によって製造されるx86互換性のあるプロセッサ、および任意の他の適切なプロセッサを含むが、これらに限定されない、広範なカテゴリーのコンピュータハードウェアシステムを表現することが意図される。
オペレーティングシステムは、ソフトウェアアプリケーション(図示せず)へのデータの入力およびソフトウェアアプリケーションからのデータの出力を含む、コンピュータシステム800の動作を管理および制御する。オペレーティングシステムは、システム上で実行されているソフトウェアアプリケーションと、システムのハードウェア構成要素との間のインタフェースを提供する。任意の適切なオペレーティングシステム、例えば、LINUXオペレーティングシステム、カリフォルニア州クパチーノのアップルコンピュータ社(Apple Computer,Inc.)から市販されているアップルマッキントッシュオペレーティングシステム、UNIX(登録商標)オペレーティングシステム、マイクロソフト(登録商標)ウィンドウズ(登録商標)オペレーティングシステム、BSDオペレーティングシステム等などが使用され得る。他の実装も可能である。
コンピュータシステム800の要素は、下記においてより詳細に説明される。具体的には、ネットワークインタフェース816は、コンピュータシステム800と、幅広いネットワークのうちの任意のもの、例えば、イーサネット(例えば、IEEE802.3)ネットワーク、バックプレーン等などとの間の通信を提供する。マスストレージ818は、上記に識別されたそれぞれのコンピューティングシステムによって実装される上述されたプロセスおよび特徴を実行するためのデータおよびプログラミング命令のための永続的なストレージを提供するのに対して、システムメモリ814(例えば、DRAM)は、プロセッサ802によって実行される場合のデータおよびプログラミング命令のための一時的なストレージを提供する。I/Oポート820は、コンピュータシステム800へ結合され得る付加的な周辺デバイス間の通信を提供する、1つまたは複数のシリアル通信ポートおよび/またはパラレル通信ポートであり得る。
コンピュータシステム800は、多様なシステムアーキテクチャを含むことができ、コンピュータシステム800の様々な構成要素は、再配置されてもよい。例えば、キャッシュ804は、プロセッサ802と共にチップ上に実装されてもよい。代替的に、キャッシュ804およびプロセッサ802は、「プロセッサモジュール」としてまとめられて、プロセッサ802が「プロセッサコア」と称されてもよい。さらに、本発明の一定の実施形態は、上記構成要素の全部を必要としなくても、または、含まなくてもよい。例えば、標準I/Oバス808へ結合される周辺デバイスは、高性能I/Oバス806へ結合されてもよい。また、いくつかの実施形態において、単一のバスのみが存在して、コンピュータシステム800の構成要素が、その単一のバスへ結合されてもよい。さらに、コンピュータシステム800は、付加的なプロセッサ、記憶デバイス、またはメモリなどの付加的な構成要素を含んでもよい。
一般に、本明細書において説明されるプロセスおよび特徴は、オペレーティングシステムの一部もしくは特定のアプリケーション、構成要素、プログラム、オブジェクト、モジュール、または「プログラム」と称される一連の命令として実装され得る。例えば、1つまたは複数のプログラムは、本明細書において説明される具体的なプロセスを実行するために使用され得る。プログラムは、典型的には、1つまたは複数のプロセッサによって読み出され、実行される場合に、コンピュータシステム800に対して、本明細書において説明されるプロセスおよび特徴を実行するための動作を実行させる、1つまたは複数の命令を、コンピュータシステム800内の様々なメモリおよび記憶デバイスにおいて備える。本明細書において説明されるプロセスおよび特徴は、ソフトウェア、ファームウェア、ハードウェア(例えば、特定用途向け集積回路)、または、これらの任意の組み合わせにおいて実装され得る。
1つの実施形態において、本明細書において説明されるプロセスおよび特徴は、分散コンピューティング環境において個々にまたはまとめて、コンピュータシステム800によって実行される一連の実行可能なモジュールとして実装される。前述のモジュールは、ハードウェア、コンピュータ読取可能な媒体(もしくはマシン読取可能な媒体)上に記憶される実行可能なモジュール、または、両者の組み合わせによって実現され得る。例えば、モジュールは、プロセッサ802などの、ハードウェアシステム内のプロセッサによって実行されるべき複数の命令または一連の命令を備え得る。まず、一連の命令は、マスストレージ818などの記憶デバイス上に記憶され得る。ただし、一連の命令は、任意の適切なコンピュータ読取可能な記憶媒体上に記憶されてもよい。さらに、一連の命令は、局所的に記憶される必要はなく、ネットワーク上のサーバなどの遠隔記憶デバイスからネットワークインタフェース816を通じて受信されてもよい。命令は、マスストレージ818などの記憶デバイスからシステムメモリ814内へコピーされ、次いで、プロセッサ802によってアクセスされ、実行される。様々な実施形態において、1つまたは複数のモジュールは、並列処理環境内の複数のサーバなどの、1つまたは複数の位置における、1つまたは複数のプロセッサによって実行され得る。
コンピュータ読取可能な媒体の例は、揮発性メモリデバイスおよび不揮発性メモリデバイスなどの記録可能なタイプの媒体、ソリッドステートメモリ、フロッピー(登録商標)ディスクおよび他の取り外し可能なディスク、ハードディスクドライブ、磁気媒体、光ディスク(例えば、コンパクトディスク読取専用メモリ(CD ROMS)、デジタル多用途ディスク(DVD))、他の同様の非一時的で(もしくは一時的で)、有形の(もしくは無形の)記憶媒体、または、本明細書において説明されるプロセスおよび特徴のうちの任意の1つもしくは複数を実行すべく、コンピュータシステム800による実行のために一連の命令を記憶し、符号化し、もしくは担持するのに適切な任意のタイプの媒体を含むが、これらに限定されない。
説明の目的のために、多くの具体的な詳細が、本説明の完全な理解を提供するために述べられている。しかしながら、こうした具体的な詳細なしに本開示の実施形態が実施され得ることは、当業者には明らかであろう。いくつかの例において、モジュール、構造、プロセス、特徴、およびデバイスは、本説明を曖昧にすることを回避するために、ブロック図の形式で示される。他の例において、機能ブロック図およびフロー図は、データおよび論理フローを表現するために示される。ブロック図およびフロー図の構成要素(例えば、モジュール、ブロック、構造、デバイス、特徴等)は、本明細書において明示的に説明および図示されたような手法以外の手法で、様々に組み合わされ、分離され、除去され、順序を並べ替えられ、置換されてもよい。
この明細書における、「1つの実施形態」、「一実施形態」、「他の実施形態」、「一連の実施形態」、「いくつかの実施形態」、「様々な実施形態」等への言及は、実施形態に関連して説明される特定の特徴、設計、構造、または特性が本開示の少なくとも1つの実施形態に含まれることを意味する。本明細書内の様々な部分における「1つの実施形態において」または「別の実施形態」という句の出現は、必ずしも全て同じ実施形態に言及するものとは限らず、別個の実施形態または代替的な実施形態は、他の実施形態と相互排他的ではない。さらに、「実施形態」等への明示的な言及が存在しても存在しなくても、様々な特徴が説明され、様々な特徴は、いくつかの実施形態において様々に組み合わされ、含まれ得るが、他の実施形態においては様々に省略され得る。同様に、いくつかの実施形態にとっては選好事項または要件であり得るが、他の実施形態にとっては選好事項または要件ではない、様々な特徴が説明される。さらに、本明細書において、「~に基づく」とは、「少なくとも部分的に基づいて」、「少なくとも一部に基づいて/一部に基づいて」、「その少なくとも一部が基づいている/一部が基づいている」、および/またはそれらの任意の組み合わせを含む。
本明細書において使用される文言は、主に、読みやすさと教育的目的のために選択されており、発明の主題の輪郭を描くため、または境界線を描くために選択されたものではない。そのため、本発明の範囲は、この詳細な説明によって限定されるのではなく、むしろ、本明細書に基づく出願について発行される任意の請求項によって限定されることが意図される。したがって、本発明の実施形態の開示は、本発明の範囲の例示とはなるが、限定とはならないことが意図され、本発明の範囲は、下記の特許請求の範囲において述べられる。

Claims (11)

  1. コンピュータが実行する方法であって、
    コンピューティングシステムが、ソーシャルネットワーキングシステムを介して公開されるポストを識別するステップと、
    前記コンピューティングシステムが、前記ポストに関連するプライバシー設定を変更するためのプライバシースケジュールを決定するステップと、ここで、前記プライバシースケジュールは、少なくとも1つの時間ベースのトリガーの検出時に前記ポストの前記プライバシー設定に適用される1つまたは複数の変更を指定し、
    前記コンピューティングシステムが、前記トリガーを検出する前に前記ソーシャルネットワーキングシステムを介して前記ポストを公開するステップと、
    前記コンピューティングシステムが、前記ポストを、前記プライバシースケジュールに基づいて定義される第1の組の1つまたは複数のエンティティによってアクセス可能となるように、変更される前の前記プライバシー設定に基づいて有効にするステップと、
    前記コンピューティングシステムが、前記ポストに関連する前記プライバシー設定を変更するトリガーを検出するステップと、
    前記コンピューティングシステムが、前記トリガーが検出されたときに、前記プライバシースケジュールに基づいて前記プライバシー設定を変更するステップと
    前記コンピューティングシステムが、前記ポストを、前記プライバシースケジュールに基づいて定義される第2の組の1つまたは複数のエンティティによってアクセス可能となるように、変更された後の前記プライバシー設定に基づいて有効にするステップと、
    を含み、
    前記第1の組および前記第2の組の少なくとも1つにエンティティを含めることは、当該エンティティと前記ポストの投稿ユーザとの間の1つまたは複数のつながり信号が閾値を満たすことに基づく、
    コンピュータが実行する方法。
  2. 前記第1の組は、前記第2の組よりも大きい、請求項に記載のコンピュータが実行する方法。
  3. 前記第2の組は、前記第1の組よりも大きい、請求項に記載のコンピュータが実行する方法。
  4. 前記ポストに関連する前記プライバシー設定を変更する第2のトリガーを検出するステップと、
    前記第2のトリガーが検出されたときに、前記プライバシースケジュールに基づいて前記プライバシー設定を変更するステップと、
    前記ポストを、前記プライバシースケジュールに基づいて定義される第3の組の1つまたは複数のエンティティによってアクセス可能となるように、変更された後の前記プライバシー設定に基づいて有効にするステップとを更に含む、請求項に記載のコンピュータが実行する方法。
  5. 前記ポストは、前記ソーシャルネットワーキングシステムのユーザによって作成され、前記第1の組は公衆の視聴者を含み、前記第2の組は、前記ユーザに関連付けられた1組のソーシャルつながりを含み、前記第3の組は、前記ユーザに関連付けられたソーシャルつながりの選択された一部を含む、請求項に記載のコンピュータが実行する方法。
  6. 前記ポストは、前記ソーシャルネットワーキングシステムのユーザによって作成され、前記第1の組は、前記ユーザに関連付けられた1組のソーシャルつながりを含み、前記第2の組は、前記ユーザに関連付けられたソーシャルつながりの選択された一部を含み、前記第3の組は、前記ユーザを含む、請求項に記載のコンピュータが実行する方法。
  7. 前記ポストは、前記ソーシャルネットワーキングシステムのユーザによって作成され、前記プライバシースケジュールは、1組のシステム設定および前記ユーザからの1組のコマンドのうちの少なくとも一方に基づいて決定される、請求項1に記載のコンピュータが実行する方法。
  8. システムであって、
    少なくとも1つのプロセッサと、
    命令を格納するメモリと
    を備え、前記命令は、前記少なくとも1つのプロセッサによる実行時に、前記システムに
    ソーシャルネットワーキングシステムを介して公開されるポストを識別すること、
    前記ポストに関連するプライバシー設定を変更するためのプライバシースケジュールを決定すること、ここで、前記プライバシースケジュールは、少なくとも1つの時間ベースのトリガーの検出時に前記ポストの前記プライバシー設定に適用される1つまたは複数の変更を指定し、
    前記トリガーを検出する前に前記ソーシャルネットワーキングシステムを介して前記ポストを公開すること、
    前記ポストを、前記プライバシースケジュールに基づいて定義される第1の組の1つまたは複数のエンティティによってアクセス可能となるように、変更される前の前記プライバシー設定に基づいて有効にすること、
    前記ポストに関連する前記プライバシー設定を変更するトリガーを検出すること、
    前記トリガーが検出されたときに、前記プライバシースケジュールに基づいて前記プライバシー設定を変更すること、および
    前記ポストを、前記プライバシースケジュールに基づいて定義される第2の組の1つまたは複数のエンティティによってアクセス可能となるように、変更された後の前記プライバシー設定に基づいて有効にすること
    を行わせ、
    前記第1の組および前記第2の組の少なくとも1つにエンティティを含めることは、当該エンティティと前記ポストの投稿ユーザとの間の1つまたは複数のつながり信号が閾値を満たすことに基づく、システム。
  9. 前記命令は前記システムに、
    前記ポストに関連する前記プライバシー設定を変更する第2のトリガーを検出すること、
    前記第2のトリガーが検出されたときに、前記プライバシースケジュールに基づいて前記プライバシー設定を変更すること、
    前記ポストを、前記プライバシースケジュールに基づいて定義される第3の組の1つまたは複数のエンティティによってアクセス可能となるように、変更された後の前記プライバシー設定に基づいて有効にすることを更に行わせる、請求項に記載のシステム。
  10. 命令を含む非一時的なコンピュータ可読の記憶媒体であって、コンピューティングシステムの少なくとも1つのプロセッサによる実行時に、前記コンピューティングシステムに、
    ソーシャルネットワーキングシステムを介して公開されるポストを識別するステップと、
    前記ポストに関連するプライバシー設定を変更するためのプライバシースケジュールを決定するステップと、ここで、前記プライバシースケジュールは、少なくとも1つの時間ベースのトリガーの検出時に前記ポストの前記プライバシー設定に適用される1つまたは複数の変更を指定し、
    前記トリガーを検出する前に前記ソーシャルネットワーキングシステムを介して前記ポストを公開するステップと、
    前記ポストを、前記プライバシースケジュールに基づいて定義される第1の組の1つまたは複数のエンティティによってアクセス可能となるように、変更される前の前記プライバシー設定に基づいて有効にするステップと、
    前記ポストに関連する前記プライバシー設定を変更するトリガーを検出するステップと、
    前記トリガーが検出されたときに、前記プライバシースケジュールに基づいて前記プライバシー設定を変更するステップと
    前記ポストを、前記プライバシースケジュールに基づいて定義される第2の組の1つまたは複数のエンティティによってアクセス可能となるように、変更された後の前記プライバシー設定に基づいて有効にするステップと
    を含む方法を行わせ、
    前記第1の組および前記第2の組の少なくとも1つにエンティティを含めることは、当該エンティティと前記ポストの投稿ユーザとの間の1つまたは複数のつながり信号が閾値を満たすことに基づく、非一時的なコンピュータ可読の記憶媒体。
  11. 前記命令は、前記コンピューティングシステムに、
    前記ポストに関連するプライバシー設定を変更する第2のトリガーを検出するステップと、
    前記第2のトリガーが検出されたときに、前記プライバシースケジュールに基づいて前記プライバシー設定を変更するステップと、
    前記ポストを、前記プライバシースケジュールに基づいて定義される第3の組の1つまたは複数のエンティティによってアクセス可能となるように、変更された後の前記プライバシー設定に基づいて有効にするステップとを更に行わせる、請求項10に記載の非一時的なコンピュータ可読の記憶媒体。
JP2018513512A 2015-09-14 2015-09-15 ポストに関連付けられたプライバシー設定のトリガーに基づく変更のためのシステムおよび方法 Active JP6991128B2 (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US14/853,800 2015-09-14
US14/853,800 US9792457B2 (en) 2015-09-14 2015-09-14 Systems and methods for trigger-based modification of privacy settings associated with posts
PCT/US2015/050290 WO2017048242A1 (en) 2015-09-14 2015-09-15 Systems and methods for trigger-based modification of privacy settings associated with posts

Publications (3)

Publication Number Publication Date
JP2018530821A JP2018530821A (ja) 2018-10-18
JP2018530821A5 JP2018530821A5 (ja) 2018-11-29
JP6991128B2 true JP6991128B2 (ja) 2022-01-12

Family

ID=58236965

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018513512A Active JP6991128B2 (ja) 2015-09-14 2015-09-15 ポストに関連付けられたプライバシー設定のトリガーに基づく変更のためのシステムおよび方法

Country Status (9)

Country Link
US (2) US9792457B2 (ja)
JP (1) JP6991128B2 (ja)
KR (1) KR102365226B1 (ja)
CN (1) CN108292422A (ja)
AU (1) AU2015409260A1 (ja)
CA (1) CA2998590A1 (ja)
IL (1) IL258023A (ja)
MX (1) MX2018003139A (ja)
WO (1) WO2017048242A1 (ja)

Families Citing this family (6)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9792457B2 (en) * 2015-09-14 2017-10-17 Facebook, Inc. Systems and methods for trigger-based modification of privacy settings associated with posts
US9818031B2 (en) * 2016-01-06 2017-11-14 Orcam Technologies Ltd. Crowd-sourced vision-based information collection
US10257128B2 (en) * 2016-11-28 2019-04-09 Microsoft Technology Licensing, Llc Presenting messages to participants based on neighborhoods
WO2022195530A1 (en) * 2021-03-17 2022-09-22 Kodidala Mallikarjunarao Open hidden likes, open hidden favourites provides privacy in social media
US11677842B2 (en) * 2021-05-28 2023-06-13 Salesforce, Inc. Enhanced user profiles within a communication platform
US11954159B2 (en) * 2021-11-09 2024-04-09 Adp, Inc. System and method for using graph theory to rank characteristics

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005267071A (ja) 2004-03-17 2005-09-29 Toshiba Solutions Corp データベースサーバ
JP2008262280A (ja) 2007-04-10 2008-10-30 Sony Corp 情報処理システム、情報処理装置、サーバ装置、情報処理方法、プログラム
JP2012530321A (ja) 2009-06-16 2012-11-29 フェイスブック,インク. ソーシャルネットワークにおける選択的コンテンツアクセス性

Family Cites Families (21)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US8646095B2 (en) * 2006-11-30 2014-02-04 Microsoft Corporation Personal site privacy policy
JP5401461B2 (ja) 2007-09-07 2014-01-29 フェイスブック,インク. ソーシャルネットワークにおけるプライバシー設定の動的更新
US8234688B2 (en) * 2009-04-03 2012-07-31 International Business Machines Corporation Managing privacy settings for a social network
US20110004922A1 (en) * 2009-07-01 2011-01-06 Microsoft Corporation User Specified Privacy Settings
US8752186B2 (en) 2009-07-23 2014-06-10 Facebook, Inc. Dynamic enforcement of privacy settings by a social networking system on information shared with an external system
JP5519792B2 (ja) * 2009-08-12 2014-06-11 テルコーディア テクノロジーズ インコーポレイテッド アクセス制御を開発する方法によるソーシャルネットワークのプライバシー
US9177346B2 (en) 2010-07-01 2015-11-03 Facebook, Inc. Facilitating interaction among users of a social network
US9154564B2 (en) * 2010-11-18 2015-10-06 Qualcomm Incorporated Interacting with a subscriber to a social networking service based on passive behavior of the subscriber
US8738705B2 (en) * 2010-12-21 2014-05-27 Facebook, Inc. Categorizing social network objects based on user affiliations
KR101780744B1 (ko) * 2011-05-23 2017-09-21 엘지전자 주식회사 전자 기기 및 전자 기기에서의 소셜 네트워킹 서비스 방법
US9313210B2 (en) 2011-06-27 2016-04-12 International Business Machines Corporation Automated privacy level suggestions for social networking
US8832567B1 (en) 2012-02-15 2014-09-09 Google Inc. Using visualization techniques for adjustment of privacy settings in social networks
US8925104B2 (en) 2012-04-13 2014-12-30 At&T Mobility Ii Llc Event driven permissive sharing of information
US20140007255A1 (en) 2012-06-28 2014-01-02 International Business Machines Corporation Privacy Control in a Social Network
US9699485B2 (en) * 2012-08-31 2017-07-04 Facebook, Inc. Sharing television and video programming through social networking
US9817997B2 (en) * 2014-12-18 2017-11-14 Banjo, Inc. User-generated content permissions status analysis system and method
JP6323334B2 (ja) * 2012-10-10 2018-05-16 日本電気株式会社 情報開示システム、情報開示サーバ、通信端末、情報開示方法及びプログラム
US9450907B2 (en) 2013-03-14 2016-09-20 Facebook, Inc. Bundled event memories
US9369471B2 (en) * 2013-10-09 2016-06-14 Foxwordy Inc. Interaction privacy in a default network
CN103595818B (zh) * 2013-11-26 2017-04-12 广州网易计算机系统有限公司 一种朋友圈分享方法及装置
US9792457B2 (en) * 2015-09-14 2017-10-17 Facebook, Inc. Systems and methods for trigger-based modification of privacy settings associated with posts

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP2005267071A (ja) 2004-03-17 2005-09-29 Toshiba Solutions Corp データベースサーバ
JP2008262280A (ja) 2007-04-10 2008-10-30 Sony Corp 情報処理システム、情報処理装置、サーバ装置、情報処理方法、プログラム
JP2012530321A (ja) 2009-06-16 2012-11-29 フェイスブック,インク. ソーシャルネットワークにおける選択的コンテンツアクセス性

Also Published As

Publication number Publication date
JP2018530821A (ja) 2018-10-18
IL258023A (en) 2018-05-31
US20180025178A1 (en) 2018-01-25
KR20180053683A (ko) 2018-05-23
KR102365226B1 (ko) 2022-02-22
US11023611B2 (en) 2021-06-01
AU2015409260A1 (en) 2018-04-05
US9792457B2 (en) 2017-10-17
CA2998590A1 (en) 2017-03-23
US20170076110A1 (en) 2017-03-16
CN108292422A (zh) 2018-07-17
MX2018003139A (es) 2018-06-27
WO2017048242A1 (en) 2017-03-23

Similar Documents

Publication Publication Date Title
US20190138951A1 (en) Systems and methods for generating multi-contributor content posts for events
JP2022070856A (ja) メディア・コンテンツ・アイテムを管理するためのシステムおよび方法
JP6991128B2 (ja) ポストに関連付けられたプライバシー設定のトリガーに基づく変更のためのシステムおよび方法
US20190139150A1 (en) Systems and methods for generating multi-contributor content posts for events
US10984183B1 (en) Systems and methods for sharing content
JP2019526987A (ja) 宣言命令に基づいてビデオコンテンツを動的に提供するためのシステムおよび方法
US11126344B2 (en) Systems and methods for sharing content
JP6705897B2 (ja) コンテンツを共有するためのシステムおよび方法
US11704008B2 (en) Systems and methods for augmenting content
US20170169375A1 (en) Systems and methods for managing resource reservations
US10686745B2 (en) Systems and methods for providing messages based on preconfigured messages templates
US11340758B1 (en) Systems and methods for distributing content
US10102225B2 (en) Systems and methods for time-based association of content and profile information
US20160182526A1 (en) Social network privacy management systems and methods
JP2018536246A (ja) 複数の地図データ・ソースからの複数の地図部分を利用するためのシステムおよび方法
US11163843B1 (en) Systems and methods for recommending content
US10826853B1 (en) Systems and methods for content distribution
US20190005424A1 (en) Systems and methods for providing actionable data insights
JP6687752B2 (ja) 階層アーキテクチャに基づきビデオのデータ分析を提供するためのシステムおよび方法
US10855787B2 (en) Systems and methods for generating content
US10904345B2 (en) Systems and methods for providing page information
US20170373993A1 (en) Systems and methods for generating and processing action-based links
US10698972B2 (en) Systems and methods for generating page stories
EP3142063A1 (en) Systems and methods for trigger-based modification of privacy settings associated with posts
US20220237637A1 (en) Systems and methods for real time crowdsourcing

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20180914

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20180914

RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190517

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20190628

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20190709

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20191009

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20191023

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20200225

C60 Trial request (containing other claim documents, opposition documents)

Free format text: JAPANESE INTERMEDIATE CODE: C60

Effective date: 20200225

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

Free format text: JAPANESE INTERMEDIATE CODE: A911

Effective date: 20200304

C21 Notice of transfer of a case for reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C21

Effective date: 20200310

A912 Re-examination (zenchi) completed and case transferred to appeal board

Free format text: JAPANESE INTERMEDIATE CODE: A912

Effective date: 20200605

C211 Notice of termination of reconsideration by examiners before appeal proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C211

Effective date: 20200609

C22 Notice of designation (change) of administrative judge

Free format text: JAPANESE INTERMEDIATE CODE: C22

Effective date: 20201110

C13 Notice of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: C13

Effective date: 20210511

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20210810

C23 Notice of termination of proceedings

Free format text: JAPANESE INTERMEDIATE CODE: C23

Effective date: 20211005

C03 Trial/appeal decision taken

Free format text: JAPANESE INTERMEDIATE CODE: C03

Effective date: 20211116

C30A Notification sent

Free format text: JAPANESE INTERMEDIATE CODE: C3012

Effective date: 20211116

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20211207

R150 Certificate of patent or registration of utility model

Ref document number: 6991128

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150

S533 Written request for registration of change of name

Free format text: JAPANESE INTERMEDIATE CODE: R313533

R350 Written notification of registration of transfer

Free format text: JAPANESE INTERMEDIATE CODE: R350