特許第6209670号(P6209670)IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ フェイスブック,インク.の特許一覧

特許6209670ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム
<>
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000002
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000003
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000004
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000005
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000006
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000007
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000008
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000009
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000010
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000011
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000012
  • 特許6209670-ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム 図000013
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】6209670
(24)【登録日】2017年9月15日
(45)【発行日】2017年10月4日
(54)【発明の名称】ネットワーク化されたコンピューティングのためのポータブル・プラットフォーム
(51)【国際特許分類】
   G06F 13/00 20060101AFI20170925BHJP
【FI】
   G06F13/00 353C
   G06F13/00 560A
   G06F13/00 358C
【請求項の数】20
【全頁数】40
(21)【出願番号】特願2016-501656(P2016-501656)
(86)(22)【出願日】2014年3月12日
(65)【公表番号】特表2016-520889(P2016-520889A)
(43)【公表日】2016年7月14日
(86)【国際出願番号】US2014024843
(87)【国際公開番号】WO2014151050
(87)【国際公開日】20140925
【審査請求日】2017年1月6日
(31)【優先権主張番号】13/914,576
(32)【優先日】2013年6月10日
(33)【優先権主張国】US
(31)【優先権主張番号】61/801,526
(32)【優先日】2013年3月15日
(33)【優先権主張国】US
【早期審査対象出願】
(73)【特許権者】
【識別番号】508178054
【氏名又は名称】フェイスブック,インク.
(74)【代理人】
【識別番号】100105957
【弁理士】
【氏名又は名称】恩田 誠
(74)【代理人】
【識別番号】100068755
【弁理士】
【氏名又は名称】恩田 博宣
(72)【発明者】
【氏名】マグワイア、ヤエル
(72)【発明者】
【氏名】コグリトーレ、ジョバンニ
(72)【発明者】
【氏名】カリノフスキー、ケイトリン イー.
【審査官】 佐々木 洋
(56)【参考文献】
【文献】 特表2016−514308(JP,A)
【文献】 特開2008−129860(JP,A)
【文献】 特開2014−032501(JP,A)
(58)【調査した分野】(Int.Cl.,DB名)
G06F 13/00
(57)【特許請求の範囲】
【請求項1】
コントロール・デバイスであって、
プロセッサと、
前記プロセッサに接続され、前記プロセッサによって実行可能な命令を含むメモリと
を備え、前記プロセッサは、前記命令の実行時に、
第1のユーザのPND(ポータブル・ネットワーク・デバイス)が前記コントロール・デバイスのしきい値の近傍内に存在する場合に、前記PNDと通信し、ここで、前記PNDは、第1のユーザの認証情報を格納するように構成され、
第2のユーザのデバイス・クラウド内の1つ以上のデバイスを識別し、ここで、識別されたデバイスの各々は、第1のユーザによってコントロール可能であり、
ここで、デバイス・クラウド内のデバイスが第1のユーザによってコントロール可能であるかどうかは、第1のユーザの認証と、第1のユーザと第2のユーザとの間のしきい値隔たり度合い内のつながりとに少なくとも部分的に基づいて決定され、第1のユーザを認証するために、第1のユーザの前記PNDは、第1のユーザのアイデンティティーに関連付けられたペアリング要求を、デバイス・クラウド内のデバイスに送信し、
ここで、デバイス・クラウド内のデバイスは、前記ペアリング要求を受信し、第1のユーザのアイデンティティーについて第2のユーザのソーシャル・グラフを検索し、前記ソーシャル・グラフから第1のユーザの前記アイデンティティーに関連するユーザ・プロフィールを検索し、前記ユーザ・プロフィールの少なくとも一部を表示し、第2のユーザに、第1のユーザのアイデンティティーを確認し、第1のユーザがデバイス・クラウド内のデバイスと第1のユーザのPNDをペアにすることを許可する入力を第2のユーザのPNDに提供するように要求し、
第1のユーザによってコントロール可能なデバイス・クラウド内の各デバイスに関して、第1のユーザに対して許可されたコントロールのレベルも隔たり度合いに従って決定され、
第1のユーザに、識別された1つ以上のデバイスをコントロールするためのコントロール・インターフェースを提示し、
前記コントロール・インターフェースを介して第1のユーザによって提供されたユーザ入力に基づいて、デバイス・クラウド内の1つ以上のデバイスにコマンドを送信するように動作可能である、コントロール・デバイス。
【請求項2】
前記メモリは、
コマンドが送信された1つ以上のデバイスのうちの少なくとも1つのデバイスからのフィードバックを受信し、
受信したフィードバックに従ってコントロール・インターフェースを更新するためのさらなる命令を含む、請求項1に記載のデバイス。
【請求項3】
前記メモリは、
デバイス・クラウド内の1つ以上のデバイスを選択するためのデバイス選択インターフェースを提示し、
1つ以上の識別されたデバイスを選択するユーザ入力を受信する命令を含む、請求項1に記載のデバイス。
【請求項4】
前記しきい値の近傍は、前記PNDとの関係で決定される、請求項1に記載のデバイス。
【請求項5】
前記デバイス・クラウド内の1つ以上のデバイスを識別する前記命令は、デバイス・クラウド内のデバイスのうちのどれがしきい値の近傍内にあるか、または利用可能であるかに関する情報をPNDから取り出すための命令を含む、請求項1に記載のデバイス。
【請求項6】
前記デバイス・クラウド内の1つ以上のデバイスを識別する前記命令は、デバイス・クラウド内の各デバイスに関して、デバイスがリモート対話インターフェースを提供するかどうか、またはPNDに対して認可が与えられたかどうかを決定するための命令を含む、請求項1に記載のデバイス。
【請求項7】
前記デバイス・クラウド内の1つ以上のデバイスを識別する前記命令は、デバイス・クラウド内のデバイスが、しきい値の近傍から離脱した際に、またはしきい値の近傍内に来た際に、識別されたデバイスを更新するための命令を含む、請求項1に記載のデバイス。
【請求項8】
方法であって、
第1のユーザのPND(ポータブル・ネットワーク・デバイス)とペアリングされるコントロール・デバイスが、前記PNDが前記コントロール・デバイスのしきい値の近傍内に存在する場合に、前記PNDと通信する工程であって、前記PNDは、第1のユーザの認証情報を格納するように構成されている、前記通信する工程と、
前記コントロール・デバイスが、第2のユーザのデバイス・クラウド内の1つ以上のデバイスを識別する工程であって、識別されたデバイスの各々は、第1のユーザによってコントロール可能である、前記識別する工程と、
ここで、デバイス・クラウド内のデバイスが第1のユーザによってコントロール可能であるかどうかは、第1のユーザの認証と、第1のユーザと第2のユーザとの間のしきい値隔たり度合い内のつながりとに少なくとも部分的に基づいて決定され、第1のユーザを認証するために、第1のユーザのPNDは、第1のユーザのアイデンティティーに関連付けられたペアリング要求を、デバイス・クラウド内のデバイスに送信し、
ここで、前記デバイス・クラウド内のデバイスは、前記ペアリング要求を受信し、第1のユーザのアイデンティティーについて第2のユーザのソーシャル・グラフを検索し、前記ソーシャル・グラフから第1のユーザの前記アイデンティティーに関連するユーザ・プロフィールを検索し、前記ユーザ・プロフィールの少なくとも一部を表示し、第2のユーザに、第1のユーザのアイデンティティーを確認し、第1のユーザがデバイス・クラウド内のデバイスと第1のユーザのPNDをペアにすることを許可する入力を第2のユーザのPNDに提供するように要求し、
第1のユーザによってコントロール可能なデバイス・クラウド内の各デバイスに関して、第1のユーザに対して許可されたコントロールのレベルも隔たり度合いに従って決定され、
前記コントロール・デバイスが、第1のユーザに、識別された1つ以上のデバイスをコントロールするためのコントロール・インターフェースを提示する工程と、
前記コントロール・デバイスが、前記コントロール・インターフェースを介して第1のユーザによって提供されたユーザ入力に基づいて、デバイス・クラウド内の1つ以上のデバイスにコマンドを送信する工程と
を含む方法。
【請求項9】
コマンドが送信された1つ以上のデバイスのうちの少なくとも1つのデバイスからのフィードバックを受信する工程と、
受信したフィードバックに従ってコントロール・インターフェースを更新する工程と
を含む請求項8に記載の方法。
【請求項10】
デバイス・クラウド内のデバイスの1つ以上のデバイスを選択するためのデバイス選択インターフェースを提示する工程と、
1つ以上の識別されたデバイスを選択するユーザ入力を受信する工程と
を含む請求項8に記載の方法。
【請求項11】
前記しきい値の近傍は、前記PNDとの関係で決定される、請求項8に記載の方法。
【請求項12】
前記デバイス・クラウド内の1つ以上のデバイスを識別する工程は、デバイス・クラウド内のデバイスのうちのどれがしきい値の近傍内にあるか、または利用可能であるかに関する情報をPNDから取り出すことを含む、請求項8に記載の方法。
【請求項13】
前記デバイス・クラウド内の1つ以上のデバイスを識別する工程は、デバイス・クラウド内の各デバイスに関して、デバイスがリモート対話インターフェースを提供するかどうか、またはPNDに対して認可が与えられたかどうかを決定することを含む、請求項8に記載の方法。
【請求項14】
前記デバイス・クラウド内の1つ以上のデバイスを識別する工程は、デバイス・クラウド内のデバイスがしきい値の近傍から離脱した際に、またはしきい値の範囲内に来た際に、識別されたデバイスを更新することを含む、請求項8に記載の方法。
【請求項15】
動作可能なソフトウェアを実装する1つ以上の非一時的なコンピュータ可読記憶媒体であって、前記ソフトウェアは、実行時に、
第1のユーザのPND(ポータブル・ネットワーク・デバイス)とペアリングされるコントロール・デバイスが、前記PNDが前記コントロール・デバイスのしきい値の近傍内に存在する場合、前記PNDと通信し、ここで、前記PNDは、第1のユーザの認証情報を格納するように構成され、
第2のユーザのデバイス・クラウド内の1つ以上のデバイスを識別し、ここで、識別されたデバイスの各々は、第1のユーザによってコントロール可能であり、
ここで、デバイス・クラウド内のデバイスが第1のユーザによってコントロール可能であるかどうかは、第1のユーザの認証と、第1のユーザと第2のユーザとの間のしきい値隔たり度合い内のつながりとに少なくとも部分的に基づいて決定され、第1のユーザを認証するために、第1のユーザの前記PNDは、第1のユーザのアイデンティティーに関連付けられたペアリング要求を、デバイス・クラウド内のデバイスに送信し、
ここで、デバイス・クラウド内のデバイスは、前記ペアリング要求を受信し、第1のユーザのアイデンティティーについて第2のユーザのソーシャル・グラフを検索し、前記ソーシャル・グラフから第1のユーザの前記アイデンティティーに関連するユーザ・プロフィールを検索し、前記ユーザ・プロフィールの少なくとも一部を表示し、第2のユーザに、第1のユーザのアイデンティティーを確認し、第1のユーザがデバイス・クラウド内のデバイスと第1のユーザのPNDをペアにすることを許可する入力を第2のユーザのPNDに提供するように第2のユーザに要求し、
第1のユーザによってコントロール可能なデバイス・クラウド内の各デバイスに関して、第1のユーザに対して許可されたコントロールのレベルも隔たり度合いに従って決定され、
前記コントロール・デバイスでの表示のために、第1のユーザに、識別された1つ以上のデバイスをコントロールするためのコントロール・インターフェースを提示し、
前記コントロール・インターフェースを介して第1のユーザによって提供されたユーザ入力に基づいて、デバイス・クラウド内の1つ以上のデバイスにコマンドを送信するように動作可能である、1つ以上の非一時的なコンピュータ可読記憶媒体。
【請求項16】
前記ソフトウェアは、実行時に、
コマンドが送信された1つ以上のデバイスの少なくとも1つのデバイスからのフィードバックを受信し、
受信したフィードバックに従ってコントロール・インターフェースを更新するようにさらに動作可能である、請求項15に記載の媒体。
【請求項17】
前記ソフトウェアは、実行時に、
デバイス・クラウド内の1つ以上のデバイスを選択するためのデバイス選択インターフェースを提示し、
1つ以上の識別されたデバイスを選択するユーザ入力を受信するようにさらに動作可能である、請求項15に記載の媒体。
【請求項18】
前記しきい値の近傍は、前記PNDとの関係で決定される、請求項15に記載の媒体。
【請求項19】
デバイス・クラウド内のデバイスは、電話、デスクトップ・コンピュータ、冷蔵庫、セキュリティ・システム、テレビ(TV)、自動車、タブレット、またはカメラを含む、請求項1に記載のデバイス。
【請求項20】
第1のユーザは、第2のユーザのソーシャル・グラフにおいて第2のユーザに接続される、請求項1に記載のデバイス。
【発明の詳細な説明】
【技術分野】
【0001】
本開示は一般に、ネットワーク化されたコンピューティング・デバイスに関する。
【背景技術】
【0002】
ソーシャルネットワーキング・システム(ソーシャルネットワーキング・ウェブサイトを含むことができる)は、そのソーシャルネットワーキング・システムのユーザ(人または組織など)がそのソーシャルネットワーキング・システムと、およびそのソーシャルネットワーキング・システムを通じて互いに対話することを可能にすることができる。ソーシャルネットワーキング・システムは、ユーザからの入力を用いて、そのユーザに関連付けられているユーザ・プロフィールを作成して、ソーシャルネットワーキング・システム内に格納することができる。ユーザ・プロフィールは、人口統計学的情報、通信チャネル情報、およびユーザの個人的な関心に関する情報を含むことができる。ソーシャルネットワーキング・システムは、ユーザからの入力を用いて、そのユーザと、ソーシャルネットワーキング・システムのその他のユーザとの関係のレコードを作成および格納すること、ならびにサービス(たとえば、ウォール・ポスト、写真共有、イベント編成、メッセージング、ゲーム、または広告)を提供して、ユーザ同士の間における社会的な交流を容易にすることも可能である。
【0003】
ソーシャルネットワーキング・システムは、そのサービスに関連したコンテンツまたはメッセージを、1つまたは複数のネットワークを介して、ユーザのモバイルまたはその他のコンピューティング・デバイスへ送信することができる。ユーザは、自分のユーザ・プロフィールおよびソーシャルネットワーキング・システム内のその他のデータにアクセスするためにソフトウェア・アプリケーションを自分のモバイルまたはその他のコンピューティング・デバイス上にインストールすることもできる。ソーシャルネットワーキング・システムは、ユーザにつながっているその他のユーザの集約されたストーリのニュースフィードなど、ユーザに表示するためのコンテンツ・オブジェクトのパーソナライズされたセットを生成することができる。
【0004】
スマートフォン、タブレット・コンピュータ、あるいはラップトップ・コンピュータなどのモバイル・コンピューティング・デバイスは、GPSレシーバ、コンパス、高度計、加速度計、あるいはジャイロスコープのような、そのロケーション、方向、あるいは配向を測定するための機能を備える。この装置は、ブルートゥース通信、ニアフィールド・コミュニケーション(NFC)、無線通信(例えば、RFID)、赤外線(IR)通信、Wi−Fi通信、ページャ通信、あるいはセルラー通信(例えば、2G、3G、4G)などの例であってそれには限定されない従来技術によって無線通信用の機能をさらに含む。この装置は、1つ以上のカメラ、スキャナ、タッチスクリーン、マイクロフォン、あるいはスピーカをさらに含む。モバイル・コンピューティング・デバイスは、ゲーム、ウェブ・ブラウザや、ソーシャルネットワーキング・アプリケーションなどのソフトウェア・アプリケーションの実行も行う。ソーシャルネットワーキング・アプリケーションにより、ユーザはソーシャル・ネットワークにおける他のユーザとつながり、情報を通信し、共有する。
【発明の概要】
【課題を解決するための手段】
【0005】
特定の実施形態においては、ポータブルな、ネットワーク化されたコンピューティング・デバイス(「PND」)が、デバイス・クラウド内のユーザのデバイスのためにシームレスでポータブルなネットワーク接続を提供する。特定の実施形態においては、PNDは、スタンドアロンの小型の(例えば、キーフォブサイズの)デバイスであり、その他の実施形態においては、PNDは、ユーザのデバイス(例えば、スマートフォンまたはタブレット・コンピューティング・デバイス)のうちの1つに組み込まれる。PNDは、同じ機能のうちのすべてを含んでいるとは限らない場合があるデバイス同士のためのネットワーク・アクセス・ポイントとして機能するために、任意の利用可能なネットワーク接続を利用するように設計される。PNDは、1つまたは複数のデバイスとペアリングされ、それらのPNDペア相手デバイスとしきい値の近傍内にある場合には、それらのデバイスと直接、ピアツーピア様式で、ローパワー無線機によって通信することができる。PNDそのものは、ネットワーク可用性およびリンク品質のうちの少なくとも一つをモニタして、必要に応じて自分自身のさらなる無線機のうちの1つまたは複数をオンにすることができる(パワーを節約し、コストを低減することができる)。例えば、PNDは、WiFi信号が弱くなっているということを検知した場合には、自分のセルラー無線機をアクティブ化して、そのPNDの近傍内のペア相手デバイスにネットワーク接続をシームレスに提供することができる。
【0006】
ユーザのデバイス・クラウド内に導入されるところである新品のデバイスは、ソーシャルネットワーキング情報を使用して、そのデバイスに伴うユーザの経験のカスタマイゼーションを迅速に開始するために、そのユーザに関連付けられているものとして既に登録されているデバイスへの接近を利用することができる。加えて、ある客人がPNDユーザの家に入るときに、その客人のPNDは、デバイス・クラウド内のそのユーザのデバイスのうちの1つとのピアツーピア接続を確立することを試みることになる。その客人は、ソーシャル・グラフ情報およびその他のソーシャルネットワーキング情報に従って認証される(例えば、第1度合いの友達は、そのユーザのデバイスにアクセスして使用することを自動的に認証される)。そのようなアクセスは、ユーザのソーシャル・グラフの要素に関連付けられている任意の特性または属性に従って許可/制限される(例えば、指定された「親友」グループ内のその他のソーシャルネットワーク・ユーザに対するアクセスのみが、ユーザの家に入った際に自動的に認証されることを可能にする)。
【0007】
ユーザのデバイス・クラウド内のモバイル/ポータブルPNDペア相手デバイスは、2G無線機または双方向ページャ無線機を含み、それによって、そのデバイスは、レンジ内でPNDを検知できないことに基づいて、自分が見失われていると決定した場合には、アラートを発信して自分のロケーションを伝えることができる。
【0008】
ユーザは、そのユーザのデバイス・クラウドを構成している1つまたは複数のモバイル/ポータブルPNDペア相手デバイス(例えば、PND、電話、タブレット、ラップトップ、自動車、時計、カメラ)をコントロールするために、デバイス・クラウド内のデバイスのうちの1つを使用できる。ある世帯のそれぞれのメンバーが、身につけて携帯されている自分自身の個々のPNDを有している場合など、グループの状況においては、それぞれのPNDは、その世帯のデバイス・クラウド内のデバイスに対してアクセスおよびコントロールのうちの少なくとも一方を行うための個々の認証および認可のレベル向けに構成される。その世帯のメンバーがソーシャル・グラフを介してつながり得るローミング・ユーザは、ソーシャル・グラフ情報およびその他のソーシャルネットワーキング情報に従って許可を与えられる。
【0009】
デバイス・クラウド内のその他のデバイスをコントロールするためのユーザ・インタフェースがコントロール・デバイス上に提供される。そのようなコントロール・インタフェースは、ユーザ経験を損なわないように好都合な様式で表示される。例えば、コントロール・デバイスがスマートフォンである場合には、その他のデバイスをコントロールするためのインタフェースは、ユーザがそのインタフェースを使用するために自分のスマートフォンをロック解除することを必要としないような方法で提供される。1つまたは複数のデバイスをコントロールするためのアイコンが、それらの1つまたは複数のデバイスへのそのスマートフォンの接近に基づいて、ロックされたスクリーン・インタフェース上に現れる。
【図面の簡単な説明】
【0010】
図1】ユーザに関連付けられている例示的なデバイス・クラウドを示す図。
図2】ユーザのデバイスのためにシームレスでポータブルなネットワーク接続を提供するための例示的な方法を示す図。
図3図1の例示的なデバイス・クラウドと、PNDを備えた客人ユーザとを示す図。
図4】ユーザに関連付けられているデバイスのPNDベースのエコシステムを構築するための例示的な方法400を示す図。
図5A】デバイス・クラウド内のデバイスをコントロールするための例示的なインタフェース500を示す図。
図5B】デバイス・クラウド内のデバイスをコントロールするための例示的なインタフェース500を示す図。
図5C】デバイス・クラウド内のデバイスをコントロールするための例示的なインタフェース500を示す図。
図5D】デバイス・クラウド内のデバイスをコントロールするための例示的なインタフェース500を示す図。
図6】デバイス・クラウド内のデバイスをコントロールするためのユーザ・インタフェースを提示するための例示的な方法600を示す図。
図7】ソーシャルネットワーキング・システムに関連付けられている例示的なネットワーク環境を示す図。
図8】例示的なソーシャル・グラフを示す図。
図9】例示的なコンピュータ・システムを示す図。
【発明を実施するための形態】
【0011】
ポータブルな、ネットワーク化されたコンピューティング・デバイス(「PND」:potable,networked,computing device)は、PNDがペアリングされた状態で1つまたは複数のデバイスのためのユニバーサル・コントロールおよびネットワーク・アクセス・ポイントとして機能することができる。特定の実施形態においては、PNDは、そのPNDがPNDペア相手デバイスとペアになることおよび通信することを可能にするためのネットワーク・コンポーネントを含むポータブル・デバイス(例えば、キーフォブサイズ(key−fob−sized)のデバイス)を含む。特定の実施形態においては、PNDは、無線機(例えば、ブルートゥース・ロー・エネルギー(BLE)標準を使用しているローパワー無線機、またはWI−FI DIRECT標準のソフト・アクセス・ポイント機能を使用している従来の無線機)を使用してデバイスとペアになり、その無線機は、そのような任意のペア相手デバイスがPNDへのしきい値の近傍内にあることを必要とする。
【0012】
図1は、ユーザ101に関連付けられているデバイスを含む例示的なデバイス・クラウド100を示している。ユーザのPND110は、デバイス・クラウド100内の1つまたは複数のデバイスとペアリングされ、PND110は、デバイス・クラウド100内の1つまたは複数のPNDペア相手デバイスに対してしきい値の近傍内にある場合には、そのデバイスと直接、ピアツーピア様式で、ローパワー無線機によって通信する。特定の実施形態においては、PNDペア相手デバイスは、少なくとも1つのプロセッサおよび少なくとも1つのモードのネットワーク接続を有する任意のデバイス(例えば、電話120、デスクトップ・コンピュータ130、冷蔵庫140、セキュリティー・システム150、テレビジョン(TV)160、自動車170、タブレット180、およびカメラ190)を含む。デバイスをPND110とペアリングすることによって、ユーザは、デバイス・クラウド内のデバイスをアクティブ化すること、コントロールすること、およびその他の形で使用することができる。それぞれのPNDペア相手デバイスに関して、PND110は、一意のデバイス識別子(例えば、UDID)、認証情報、またはユーザ識別子(例えば、デバイスの所有者/オペレータ/認可されたユーザに関する識別子)を格納する。
【0013】
PND110は、同じ機能のうちのすべてを含んでいるとは限らない場合があるデバイスに対するネットワーク・アクセス・ポイントとして機能しながら、任意の利用可能なネットワーク接続を利用可能となるように設計される。PNDペア相手デバイスは、その設計により、ローパワー無線機のみを含めることによって、ネットワーク接続を犠牲にすることなくパワーを節約することが可能であり、ローパワー無線機のみを含めることは、セルラー無線機およびアンテナをなくすこと、ならびにバッテリーのサイズを低減することの両方によって、デバイスのフォーム・ファクタを改善することもできる(よりスリムで、より軽量なデバイスを可能にする)。
【0014】
PND110は、例えば、セルラー(例えば、2G/3G/4G/4G LTE)、Wi−Fi(例えば、802.11n、802.11ac、802.11ad WiGig)、Wi−Fiベースのさらに高いレベルのプロトコル(例えば、インテル・ワイヤレス・ディスプレイ(WiDi)、Wi−Fiメッシュ(例えば、ITU−T G.hn))、TVホワイトスペース/メッシュ(TVWS、または802.11af)、GPS、ブルートゥース、ブルートゥース・ロー・エネルギー、ニアフィールド・コミュニケーション(NFC)、衛星、ページャ無線機などのさまざまなタイプのネットワーク接続用のアンテナならびに1つまたは複数のローパワー無線機およびハイパワー無線機を含む。
【0015】
特定の実施形態においては、PND110は、限定ではなく、例として、ボタン・インタフェース、ステータス・インジケータ、小型/ローパワー・スクリーン、メモリ・カード・スロット、および接続ポート(例えば、USB、イーサネット、光)などの外部の物理的機能を含む。特定の実施形態においては、PNDは、パワー・アダプタに接続すること、受信RF信号からパワーを引き出すこと、集積型圧電コンポーネントを使用してパワーを生み出すこと、または任意の従来のソースを使用してパワーをその他の形で利用する。
【0016】
それぞれのPNDペア相手デバイスは、常に(例えば、PND110を携帯しているユーザがPNDペア相手デバイスの近傍内にいるときはいつでも)、または必要に応じて(例えば、PNDペア相手デバイスのネットワーク接続が、ユーザにとっての金銭的コスト、またはPNDペア相手デバイスによるエネルギー/リソース消費に基づいて、散発的に/弱く/利用不能に、または高価になったときはいつでも)、ネットワーク接続のためにPND110を使用できる。
【0017】
例えば、PND110は、ユーザのキーホルダに取り付けられている小型デバイスを含み、その小型デバイスは、セルラーおよびWi−Fi接続を有しており、Wi−Fi、ブルートゥース、またはNFCを介してタブレット180および電話120とペアリングされている。PND110は常にインターネットにシームレスに接続されているため、ユーザ101がタブレット180および電話120をバッグに入れて携帯している場合には、PND110は、ユーザ101が(PND110およびそのユーザのPNDペア相手デバイスを携帯して)どこへ行こうとも、IPベースの電話機能およびメッセージング機能を電話120に、ならびにインターネット接続をタブレット180に提供するために、インターネットへのシームレスな接続をユーザ101に提供することができる。PND110は、その他のデバイスとペアリングされること、およびそれらのデバイスのためのネットワーク接続を提供することもでき、それによってユーザは、PND110がそのような任意のデバイスへのしきい値の近傍内にある限り、そのデバイス上でネットワーク対応機能を使用することができる。
【0018】
PND110は、アクセス・ポイントとして機能すること(およびそれによって、PND110とペアリングされているデバイスのためのローカル・プライベート・ネットワークを確立すること)が可能であるため、1つのPND110に接続されている複数のデバイスは、PND110が外部ネットワークに接続されていない場合でさえ、PND110を介して互いに通信することも可能である。
【0019】
特定の実施形態においては、1つまたは複数のPNDペア相手デバイスは、「ダム端末(dumb terminal)」デバイスとして機能し、それらのダム端末デバイスは、ユーザのPNDとペアになったときに、パーソナライズされたコンピューティング・デバイスになる。「ダム端末」デバイスは、ユーザ固有の情報を永続的に格納せずに、ユーザのためのパーソナライズされたコンピューティング・デバイスへと一時的に変換される(例えば、公用または共用の)任意のコンピューティング・デバイスを含む。PND110は、ありとあらゆる適切な目的のためにダム端末デバイスとペアになってダム端末デバイスを利用できる。いくつかの実施形態においては、PND110は、デバイスとワイヤレスにペアとなり、いくつかの実施形態においては、PND110は、デバイスに物理的に接続できる。
【0020】
例えば、ライブラリは、標準仕様のデスクトップ・コンピュータ130(すなわち、ダム端末デバイス)の数を提供することができ、そのライブラリのメンバーは、デスクトップ・コンピュータ130をメンバーのPND110とペアリングすることができ、PND110は、ユーザの好み(例えば、デスクトップ・テーマ、言語設定、およびタイム・ゾーン)を採用するように、ユーザのセキュリティー・ポリシー(例えば、認証、認可、およびスクリーンロック・タイムアウト・ポリシー)に準拠するように、ならびにユーザのコンテンツ(例えば、ソーシャルネットワーキング情報、ミュージック・ライブラリ、フォト・アルバム、サブスクライブされている定期刊行物)にアクセスしてロードするようにデスクトップ・コンピュータ130を構成する。
【0021】
別の例においては、ユーザ101は、車170(ロボットによって運転される自律的な「タクシー」)に乗り込み、車170は、PND110とペアになると、ユーザ101を認証し、ユーザ101のためのパーソナライズされた行き先の提案(例えば、そのユーザの家、職場、学校、または、そのユーザのカレンダーにおいて指定されている行き先)を提供し、(そのユーザの選択した行き先に基づいて)ユーザ101のための支払いを認可し、ユーザ101を、彼らの選択した行き先に、彼らの個人的な好みに従って(例えば、できるだけ速く、または抑制を効かせてゆったりと)移送し、その一方で乗車中には、ユーザ101のためにテレビ会議設備を提供する。
【0022】
PND110は、ユーザ固有の認証および認可クレデンシャル、支払いクレデンシャル(例えば、スマート・カード・チップ)、電話識別子(例えば、SIMカード)、構成設定、好み、お気に入りリスト/ブックマーク、アプリケーション、または、PND110がPNDペア相手デバイスとともに、パーソナライズされたセキュアなコンピューティングを容易にすることを可能にするためのその他の任意のデータを格納する。特定の実施形態においては、特定のPNDペア相手デバイス(例えば、ホーム・セキュリティー・システム、金庫、ガン・ロッカー、自転車用チェーン鍵、ラップトップ用セキュリティー・ケーブル)は、セキュリティー目的のためのさらなるコンポーネント(例えば、バイオメトリック認証を実行するためのセンサおよびロジック)を含む。
【0023】
特定の実施形態においては、PND110は、個人情報、使用ログ、またはその他のユーザ識別情報のいかなる痕跡もダム端末デバイス上に残すことなく、ダム端末デバイスとのペアリングを否認する。
【0024】
PND110そのものは、ネットワーク可用性およびリンク品質のうちの少なくとも一方をモニタすること、ならびにパワーを節約してコストを節減するために必要に応じて自分の無線機のうちの1つまたは複数をオンにすること(例えば、セルラー無線機などのハイパワー無線機をオンにすること、または帯域幅を使用するために支払いを必要とするネットワークへの接続を提供する無線機をオンにすること)が可能である。PND110によって検知された(例えば、受信信号強度表示(RSSI:received signal strength indication)によって特徴付けられるような)リンク品質が、特定のしきい値よりも下に劣化した(すなわち、ユーザがWi−Fiネットワークのゾーンを立ち去ろうとしていると思われるポイントに向けて低減し始めた)場合には、PND110は、セルラー無線機をオンにし、自分のWi−Fi上のアクセス・ポイント・モードに入って、PND110のしきい値の近傍内のペア相手デバイスにネットワーク接続をシームレスに提供する。そのしきい値は、信号の複数の異なる属性のうちのいずれかに従って特徴付けられ、それらの属性としては、信号強度、信号対雑音比、平均データ・スループット、平均データ待ち時間、または信号のその他の任意の属性、または属性同士の任意の組合せが含まれるが、それらには限定されない。そのしきい値はまた、待ち時間およびスループットのうちの少なくとも一つに関する既知のサイト(例えば、ソーシャルネットワーキング・ウェブサイト)への現在および過去のうちの少なくとも一方のスループットなどの1つまたは複数のデータ品質メトリックによっても特徴付けられる(例えば、待ち時間がしきい値を超えた場合、またはスループットがしきい値よりも下に劣化した場合には、PND110は、アクセス・ポイント・モードに入る)。特定の実施形態においては、PND110およびPNDペア相手デバイスのうちの少なくとも一方は、ネットワーク可用性およびリンク品質のうちの少なくとも一方を検知する。特定の実施形態においては、PND110は、そのような情報をPNDペア相手デバイスから入手することができ、その逆もまた同様である。
【0025】
特定の実施形態においては、PND110は、RSSIにおけるリアルタイムの劣化を単に検知すること以外のその他の要素または状況、例えば、特定のロケーションにおけるRSSIデータを記録している過去のデータ(例えば、PND110が、ユーザによって携帯されていて、RSSIが過去に何らかのしきい値よりも下に劣化した「デッド・スポット」の方向に向かっている)、低RSSIロケーションの指定(例えば、特定の帯域幅上のワイヤレス信号以外のすべてのワイヤレス信号をブロックするセキュアな軍事施設の内部)、または特定のロケーションにおける推定RSSIの指定(例えば、信号タイプおよび基地局ロケーション情報に基づいて計算されたネットワーク・カバレッジ・マップ)などに基づいて、しきい値を計算すること、およびこの判定のうちの少なくとも一方を行ってアクセス・ポイント・モードに入る。特定の実施形態においては、そのような要素は、ユーザ同士のネットワーク、例えば、登録されているPNDユーザ同士のネットワーク、組織に関連付けられているユーザ同士(例えば、会社の従業員同士、もしくはネットワーク・サービスに対して支払いを行う顧客同士のグループ)のネットワーク、またはソーシャル・グラフ内でつながっているユーザ同士のソーシャル・ネットワークなどにわたって共有されている情報に基づいて特定される。
【0026】
PNDペア相手デバイスは、ネットワーク接続を失った(例えば、ホームWi−Fiネットワークのレンジの外へ移動した)場合には、ネットワーク接続のためにPND110を利用することを自動的に開始することができる。PND110そのものは、身近なネットワークとの接続のレベルを継続的にモニタすること、および身近なネットワークからのいずれかの信号が減衰してきているということを検知した場合にはアクセス・ポイントとしてのみ機能する。
【0027】
特定の実施形態においては、PND110は、接続におけるいかなる途絶も回避するために別々のタイプのネットワーク同士の間においてシームレスなハンド・オフを実行する。PNDペア相手デバイスは、身近なネットワークのレンジ内に来ると、ネットワーク接続のためにPND110を使用することから、その身近なネットワークを使用することへシームレスに切り替えて戻る(例えば、ユーザが帰宅して、ホームWi−Fiネットワークのレンジ内にいる場合には、ユーザのタブレット180は、ホームWi−Fiネットワークに接続するように切り替わる)。
【0028】
図2は、ユーザのデバイスのためにシームレスでポータブルなネットワーク接続を提供するための例示的な方法200を示している。この方法は、工程210において開始し、工程210では、PNDが、身近なネットワーク接続を構成する。この最初の工程は、ユーザが初めてPNDに関連付けられるときに、ならびにユーザが新たなネットワークと接続して、そのネットワークを新たな身近なネットワークとして確立するときにはいつでも、実行される。上述したように、PNDは、ネットワーク接続情報をユーザのその他のデバイスから入手することができ、またはPNDは、ユーザに関するプロフィールにローカルに、またはソーシャル・ネットワークを通じてアクセスすることによって、そのような情報を入手することができる。
【0029】
工程220において、PNDは、1つまたは複数のデバイスとペアになる。例えば、ユーザが家にいて、電話120、デスクトップ・コンピュータ130、冷蔵庫140、セキュリティー・システム150、テレビジョン(TV)160、タブレット180、およびカメラ190のうちのいずれかまたはすべてへのしきい値の近傍内にいる間は、PNDは、そのようないずれかのデバイスとペアリングされたままでいる。特定の実施形態においては、PNDは、何らかのネットワーク接続を構成する前にネットワーク接続情報を取り出すためにデバイスとペアになる。特定の実施形態においては、PND110は、さらなるセキュリティーを提供するために、およびPND110をデバイスと不注意にペアリングすることを避ける上で役立つために、デバイスとの最初のペアリングが、NFCなど、非常に近い接近を必要とする無線機を使用して、または距離が最大RSSIしきい値によって決定されるWi−Fiまたはブルートゥース無線機によって行われることを必要とする。
【0030】
工程230において、PNDは、利用可能なネットワークをモニタして、身近なネットワーク(例えば、ホームWi−Fiネットワーク)を検知する。そのネットワークに関する検知された信号が十分な品質のものである限り、PNDは、自分自身でネットワーク接続のためにその身近なネットワークを利用し、いかなるPNDペア相手デバイスも同じようにするであろうと予想する。特定の実施形態においては、PNDは、検知されたネットワークが、ユーザ101に知られている別のユーザ(例えば、ユーザ101のソーシャルネットワーキングつながり)によって提供されているため、そのネットワークは「身近な」ネットワークであるということを自動的に決定する。PNDは、その他のユーザのPNDを検知して、そのPNDを識別および認証のうちの少なくとも一方を行うことによって、ネットワークのプロバイダを識別する。特定の実施形態においては、ユーザ101に属しているPNDは、検知されたネットワークの属性(例えば、そのネットワークは、オープンなネットワークであるか、もしくは保護されたネットワークであるか、またはその他のユーザは、ユーザ101の信頼されている友達であるか、もしくは単に友達の友達であるか)に基づいて、特定のセキュリティー対策を利用する。特定の実施形態においては、ユーザ101に属しているPNDは、検知されたネットワークの属性(例えば、検知されたネットワークは、帯域幅使用もしくはダウンロードされたデータの量に基づく支払いを必要としているか、または検知されたネットワークは、帯域幅制限を課しているか)に基づいて、ペア相手デバイスによる特定のタイプのネットワーク通信を制限または抑制する。
【0031】
特定の実施形態においては、PND110は、ある地理的領域内の十分な密度のユーザが、PND110が接続することができるワイヤレス・ネットワーク・アクセスを提供する場合に形成されるメッシュ・ネットワーク・グリッドにアクセスする。PNDを携帯しているユーザは、いかなるセルラー無線機(またはその他のハイパワー無線機)もアクティブ化することなく、単にワイヤレス・ネットワークからワイヤレス・ネットワークへと切り替えることによって、かなりの距離を(例えば、都市を横断して)移動できる。例えば、特定の領域においては、すべてではなくとも多くの居住者が、個々のWi−Fiおよびテレビジョン・ホワイトスペース(TVWS)ネットワークのうちの少なくとも一方をセットアップしている可能性があり、ユーザのPND110は、より遠くに及ぶネットワーク(例えば、商用のセルラー・ネットワーク)に加えて、いくつかのまたはすべてのそのようなネットワークにアクセスして、ユーザのPND110とペアリングされているデバイスのためにシームレスな接続を提供するように構成されている。
【0032】
そのような実施形態は、自分のワイヤレス・ネットワークに接続したいと望むローミング・ユーザに対して制限を課すルール、例えば、限定ではなく、例として、(1)(例えば、彼らが有効なユーザ識別子を有しているということを確認することによって)その他のソーシャルネットワーク・ユーザに対してアクセスを制限すること、(2)その他のソーシャルネットワーク・ユーザに対してアクセスを彼らのソーシャル・グラフ内に制限すること、(3)その他のソーシャルネットワーク・ユーザに対してアクセスをしきい値隔たり度合い内に制限すること、(4)ユーザのソーシャル・グラフの要素に関連付けられているその他の任意の特性もしくは属性に従ってアクセスを制限すること(例えば、指定されたグループ内のその他のソーシャルネットワーク・ユーザにのみアクセスを許可すること)、(5)アクセスを特定の日付もしくは時刻に制限すること、(6)特定のユーザ(例えば、ユーザのソーシャル・グラフ内にいないその他のソーシャルネットワーク・ユーザ)にのみ接続料金を課金することによってアクセスを許可すること、(7)アクセスをローミング・ユーザの最大数に制限すること、(8)アクセスをデバイスあたりの最大帯域幅に制限すること、(9)アクセスを特定のアプリケーション・タイプに制限すること、(10)接続タイムアウトによってアクセスを制限すること、(11)自分自身のワイヤレス・ネットワークを提供することによって自分もアクセス・グリッドに寄与しているローミング・ユーザによる接続のみを許可するようにアクセスを制限すること、またはそのようなルールの任意の組合せを確立することによって、メッシュ・ネットワークのユニット(例えば、個々のホームWi−Fiネットワーク)のためのセキュリティーコントロールおよび帯域幅消費コントロールのうちの少なくとも一方を容易にする。
【0033】
工程240において、PNDは、身近なネットワークのための信号がしきい値品質レベルよりも下に劣化しているか、または劣化した(例えば、信号が劣化している、不安定になっている、または減衰している)ということを検知し、(工程250において)自分のアクセス・ポイント・モードを有効にし、それによって任意のペア相手デバイスのためのネットワーク接続を提供する。ネットワーク信号のしきい値品質レベルは、さまざまな要素および状況のうちの少なくとも一方に基づいて、上述のように決定される。例えば、ユーザ101が、電話120、タブレット180、およびカメラ190を携帯して自宅から歩き出て、自動車170に乗り込んで、走り去り始めた場合には、PNDは、自分がもはやホームWi−Fiネットワークのレンジ内になく、ホームTVWSネットワークのレンジ内にあるだけとなったということを検知する。この時点で、PNDは、電話120、タブレット180、カメラ190、および自動車170のためにシームレスな接続を提供するために、自分のアクセス・ポイント・モードを有効にする。特定の実施形態においては、PNDは、ユーザ101が自動車170に入り込んでエンジンをかけたという事実に単に基づいて自分のアクセス・ポイント・モードを有効にする。なぜなら、その時点で、ユーザ101がじきにホームWi−Fiネットワークのレンジの外へ移動するであろうという可能性が非常に高いためである。特定の実施形態においては、PNDは、そのPNDへのしきい値の近傍内のPNDペア相手デバイスを検知した場合にのみアクセス・ポイント・モードを有効にする(それによって、ネットワーク接続のためにそのPNDを使用することを必要とする可能性があるデバイスがない場合には、パワーを節約する)。
【0034】
PNDは、そのような何らかのデバイスが身近なネットワークの代わりにPNDを介して通信を継続することができるように、それらのデバイスのためにネットワーク接続をスムーズに確立するためのオペレーションを実行すること、例えば、身近なネットワークおよびPNDアクセス・ポイントの両方を並行して一時的に利用することによってソフト・ハンド・オフを開始すること、または、ソフト・ハンド・オフを容易にすることなどを開始することもできる。PNDは、自分がアクセス・ポイント・モードを保持すること、および身近なネットワークの品質をテストすることを確実にするために、マルチ周波数無線機(2.4GHzおよび5GHz)を使用する。PNDは、元のWi−Fiの差し迫ったドロップアウトを決定するためにGPSまたは屋内ビーコンを使用する。PNDおよびユーザ・デバイスは、ネットワークの変化を互いに評価するためにピアツーピア様式で通信することもできる。
【0035】
特定の実施形態においては、ネットワーク同士の間において切り替えを行うことよりもむしろ、PNDは、(例えば、高解像度ビデオなど、特定のタイプのコンテンツの送信のための指定されたサービス品質標準または要件を満たすために)利用可能な帯域幅を複数のネットワークにわたって結合する。
【0036】
工程260において、PNDは、身近なネットワークのための信号が再び十分な品質のものになっているということ(または別の身近なネットワークが現在レンジ内にあるということ)を検知して、(工程270において)自分のアクセス・ポイント・モードを無効にする。特定の実施形態においては、PNDは、そのPNDを介して通信している何らかのペア相手デバイスがあるということを検知した場合には、そのような何らかのデバイスが代わりに身近なネットワークに接続されるようにそれらのデバイスのためにネットワーク接続をスムーズにハンド・オフするためのオペレーションを実行する。例えば、ユーザ101が職場に到着して、PND110がそのユーザの職場のWi−Fiネットワークを検知した場合、またはユーザ101が、TVWSネットワークを有する行きつけのカフェに到着した場合には、PNDは、新たに検知されたネットワークに接続し、ネットワーク接続のためにそのPNDを現在利用している何らかのデバイス(例えば、電話120およびタブレット180)のためのソフト・ハンド・オフを開始するか、または容易にし、次いで自分のアクセス・モードを無効にする。特定の実施形態においては、PND110は、ペア相手デバイスが、需要の高いアクティビティー(例えば、電話をかけること、または高い帯域幅のコンテンツをストリーミングすること)のためにPND110を利用しているということを検知して、そのアクティビティーが終了するまで、アクセス・ポイント・モードを無効にすることを延期する。
【0037】
複数のネットワークが利用可能である場合には、どの特定のネットワークに加わるかの選択は、どのネットワークが最適であるかの査定を含み、その分析は、任意の数のコスト要素に基づき、それらのコスト要素としては、技術的な要素、経済的な要素、セキュリティーの要素、およびユーザの好みの要素、例えば、利用可能な帯域幅、ネットワーク・タイプ(例えば、4Gセルラー対TVWS対802.11n)、信号強度、ノイズ、干渉のレベル、ネットワークとの接続を確立して保持するために必要とされるリソース消費(例えば、セルラー・ネットワークに接続するための無線機を利用することは、Wi−Fiネットワークに接続するための無線機よりも多くのパワーを必要とする場合がある)、特定のネットワークがPND110にとって身近なものであるかどうか(例えば、PND110は、そのネットワークに以前に成功裏に接続したか、またはそのネットワークにアクセスするための格納されたパスワードを有しているか)、そのネットワークに接続することによって生じる何らかのコストがあるか(例えば、無料のアクセスがあるか? アクセスは無料でも、そのネットワークは、広告を表示するソフトウェアをあなたが使用することを必要としているか? これは、そのネットワークへの通常のサブスクリプションに対してユーザが既に支払っているサンク・コストか? アクセスは、ペイパーユースか?)、そのネットワークは、既知の人またはエンティティーによって(例えば、あなたの雇用主によって、ソーシャルネットワーキング・システム内であなたがつながっている別のユーザによって、ユーザが入場権を購入したイベントのホストによって)運営されているかどうか、利用可能なセキュリティーのレベル(例えば、オープン対WEP対WPA2)等などが含まれるが、それらには限定されない。
【0038】
PNDペア相手デバイス(例えば、電話120)は、ユーザに関する特定の電話番号に関連付けられているネットワーク(例えば、「ホーム」ネットワークまたは「職場の」ネットワーク)のレンジ内に来ると、発呼者がその特定の電話番号に電話したことに応答して鳴る。例えば、ユーザが家に(自分の「ホーム」ネットワークのレンジ内に)いる場合には、PNDペア相手デバイスは、家の電話番号への着呼を検知して、自分を鳴らす。PND110は、国境を越えて、および(別々のテクノロジーに基づいて機能することができる)別々のネットワークにわたってトランスペアレントに稼働するIPベースの電話機能を提供することが可能であり、特定の実施形態においては、「電話番号」は、ユーザのソーシャルネットワーキング・ユーザ・アイデンティティーに関連付けられ、ソーシャル・ネットワークの第1のユーザは、ソーシャル・ネットワークの第2のユーザに、単に彼らのソーシャルネットワーキング識別子(例えば、ログイン・ユーザ名)を使用してその第2のユーザに「電話をかけること」によって、電話する。
【0039】
特定の実施形態は、適切な場合には、図2の方法の1つまたは複数の工程を繰り返すことができる。本開示は、図2の方法の特定の工程同士を、特定の順序で生じるものとして記述し、示しているが、本開示において任意の適切な順序で生じる図2の方法の任意の適切な工程同士を想定している。さらに、本開示は、図2の方法の特定の工程を実行する特定のコンポーネント、デバイス、またはシステムについて記述し、示しているが、本開示は、図2の方法の任意の適切な工程を実行する任意の適切なコンポーネント、デバイス、またはシステムの任意の適切な組合せを想定している。
【0040】
図3は、図1において示されているPND110とペアリングされているデバイス(例えば、電話120、デスクトップ・コンピュータ130、冷蔵庫140、セキュリティー・システム150、テレビジョン(TV)160、自動車170、タブレット180、およびカメラ190)からなる、ユーザ101の例示的なデバイス・クラウド100と、自分自身のPND310を備えていて、ユーザ101のデバイス・クラウド100内の1つまたは複数のデバイスと一時的にまたは永続的にペアになりたいと望む客人ユーザ301とを示している。
【0041】
典型的には、ユーザが、ANDROIDまたはAPPLE IOSデバイスなど、新たなパーソナライズされたデバイスをセットアップする場合には、そのユーザは、自分の既存のユーザIDを用いてそのデバイスにログインすることを必要とされる。このセットアップ工程は、ユーザが自分のパスワードを繰り返し入力することを必要とする場合があり、それは、ユーザにとって面倒である場合がある。そのデバイスが、ユーザに、彼らの既存のユーザ・ログインに関連付けられているプロフィール情報に基づいて、カスタマイズされた経験をそのデバイス上で提示できるようになるまでには、かなり時間がかかる場合が多い。加えて、買い物をするためにそのデバイスを使用する場合には、ユーザは、やはり自分のパスワードを繰り返し入力することが必要になる場合がある。
【0042】
図4は、ユーザに関連付けられているデバイスのPNDベースのエコシステムを構築するための例示的な方法400を示している。このエコシステムは、PNDそのもの、ならびにデバイス・クラウド内のデバイスを含む。工程410において、新たなPND110が、ユーザ101に関連付けられている構成情報を格納する。PND110は、(1)ユーザ識別情報および認証情報のうちの少なくとも一つをPND110に直接入力することによって(例えば、PND110にバイオメトリック認証を提供することによって、またはユーザ101のソーシャルネットワーキング・アカウントのためのユーザIDおよびパスワードを入力することによって)、(2)PND110を、PND110にユーザ・クレデンシャルを提供するために使用されるダム端末デバイスと(少なくとも一時的に)ペアリングすることによって、(3)販売時に店舗またはフルフィルメント倉庫においてユーザ識別情報でPND110をエンコードすることによって、(4)新品のPND110を、ユーザのホームWi−Fiネットワークと接続する際に(おそらくは、ユーザからの確認を受け取った後に)ユーザ識別情報でエンコードすることによって、といった具合に任意の従来の様式で構成情報を入手する。特定の実施形態においては、PND110は、(例えば、ソーシャルネットワーキング・システム上のユーザの識別子に基づいてソーシャルネットワーキング・システム上で)ユーザ101に関するユーザ・プロフィールにアクセスするように構成され、そのユーザ・プロフィールから、PND110は、ネットワーク接続設定、またはその他の任意のユーザ固有の情報を取り出す。
【0043】
工程420において、PND110(またはPND110と既にペアリングされているデバイス)が、しきい値の近傍内の新たな(ペアリングされていない)デバイスを感知する。特定の実施形態においては、その新たなデバイスそのものは、自分がPND110またはPNDペア相手デバイスのしきい値の近傍内にあるということを感知する。例えば、ユーザが、新たなタブレット・デバイスをオンラインで購入して、そのタブレット・デバイスを自宅に配送してもらう場合には、ユーザがそのタブレットを自宅内に持ち込んだときに、そのタブレットは、ユーザのPND、およびユーザに関連付けられているものとして登録されている1つもしくは複数のデバイスのうちの少なくとも一方のしきい値の近傍内に来る。その新たなタブレットは、自分がユーザのホームWi−Fiネットワークのレンジ内にあるということを感知し、その場合、ユーザのWi−Fiルータは、PND110とペアリングされている。しきい値の近傍は、新たなデバイスをペアリングするために使用されることになる特定の無線機の自然なレンジによって決定される。例えば、不注意なペアリング(またはデバイスをペアリングしようとする試み)を防止するために、いくつかの実施形態は、新たなデバイスをペアリングするためにニアフィールド・コミュニケーション(NFC)無線機が使用されることを必要とする。その他の実施形態においては(例えば、Wi−Fi DirectまたはBLEなど、より長い信号レンジを伴うネットワーク・テクノロジーを使用してペアリングが実行される場合には)、しきい値の近傍は、特定の距離で、例えば30.48cm(1フィート)以下、もしくは1m以下で、またはRSSIインジケータ(例えば、飽和に関する上限値)に従って構成される。
【0044】
特定の実施形態においては、ユーザのデバイス・クラウド内に導入されるところである新品のデバイスは、ソーシャルネットワーキング情報を使用することによって、そのデバイスに伴うユーザの経験のカスタマイゼーションを迅速に開始するために、そのユーザに関連付けられているものとして既に登録されているPNDまたはその他のデバイスへの接近を利用する。特定の実施形態においては、ユーザのプロフィールは、ユーザが、新たなデバイス上の購入/アクティブ化インタフェースにアクセスして、その新たなデバイスが、そのユーザに関連付けられているものとして既に登録されている1つまたは複数のその他のデバイスのしきい値の近傍内にある場合に、その新品のデバイスの購入/アクティブ化を許可するように事前に構成される。
【0045】
工程430において、特定の実施形態では、新たなデバイスが、ユーザのPNDとペアになり、ユーザのデバイス・クラウドに加わる。ペアリング工程の一環として、PND110は、初期情報をやり取りするためにそのデバイスとの直接のピアツーピアスタイルの接続を確立することを試みる。ユーザのPNDは、新たなデバイスに関連付けられている初期情報(例えば、デバイスID、MACアドレス)を格納し、その新たなデバイスは、そのPNDに関連付けられている初期情報(例えば、PND ID)を同様に格納する。特定の実施形態においては、新たなデバイスが、ユーザのホームWi−Fiネットワークのレンジ内にある場合には、その新たなデバイスは、そのデバイスに伴うユーザの経験のカスタマイゼーションを迅速に開始するために、たとえPND110のしきい値の近傍内になくても、ユーザのPND110とペアになることができる(例えば、たとえユーザ110がPND110を自分の職場に置き忘れたとしても、その新たなデバイスは、ホームWi−Fiネットワークを介してインターネットを経由してPND110に接続することによって、PND110と依然としてペアになることができる)。
【0046】
工程440において、新たなデバイスは、情報をPND110に提供する。例えば、ユーザ101に属しているデバイスが、PND110とのペアリングの前に、自分自身のネットワーク接続設定(例えば、Wi−Fiサービス・セット識別子(SSID)、暗号化構成設定、およびパスワード)を確立し、次いでそのネットワーク接続設定を、PND110とのペアリング時にPND110と共有する。
【0047】
工程450において、新たなデバイスは、PNDまたは別のPNDペア相手デバイスからユーザ情報を入手する。例えば、新品のデバイスとしてのそのタブレットの状態、および1つまたは複数のその他のデバイスとのそのタブレットの近傍およびユーザのホームWi−Fiネットワーク内のそのデバイスの存在のうちの少なくとも一方に基づいて、そのタブレットは、ユーザのソーシャルネットワーキング・ユーザ識別子など、ユーザに関する識別情報を入手する。
【0048】
工程460において、新たなデバイスは、そのユーザ情報を使用して、ユーザ101のためのカスタマイズされたユーザ経験を提供する。例えば、そのタブレットは、ユーザのソーシャルネットワーキング・ユーザ識別子を使用してソーシャル・ネットワークへの接続を確立し、(例えば、ロックされたスクリーン上にカバー・フォトを表示することによって、ユーザのホームWi−Fiネットワークにアクセスすることを許可されることによって、ユーザの好み、例えば、タイム・ゾーン、好みの言語などに従って基本的なデバイス設定およびメタデータのうちの少なくとも一方を設定することによって)すぐに利用できるソーシャルネットワークベースのユーザ経験を提示するために、さまざまなタイプのいくつかの情報をダウンロードすることを開始する。いくつかの実施形態においては、そのデバイスへの、および(そのデバイス上に提示される)ユーザのソーシャルネットワーキング情報へのフル・アクセスは、ユーザが自分のソーシャルネットワーキング・システム・クレデンシャルをそのデバイスに入力するまで、許可されない。特定の実施形態においては、新品のデバイスが、工場、倉庫、または、流通網におけるその他の何らかのポイントにおいて、集積チップ(例えば、RFID/NFCタグ)上でユーザのソーシャルネットワーキング・ユーザ識別子でエンコードされ、それによって、そのデバイスは、すぐに利用できるソーシャルネットワークベースのユーザ経験を提示するために、さまざまなタイプのいくつかの情報をダウンロードすることを開始し、このケースにおいては、ユーザは、その新たなデバイスが、そのユーザに関連付けられているものとして既に登録されている別のデバイスへのしきい値の近傍内に配置されている限り、自分のソーシャルネットワーキング・パスワードを入力することを必要とされない。
【0049】
ユーザ101は、1つまたは複数のPNDペア相手デバイスをセットアップすると、ユーザのデバイス・クラウド内のデバイス(例えば、冷蔵庫140、TV160、および自動車170)へのアクセスを客人301にセキュアに提供したいと望む場合がある。客人301は、ソーシャル・グラフ情報およびその他のソーシャルネットワーキング情報に従って認証される(例えば、第1度合いの友達は、そのユーザのデバイスにアクセスして使用することを自動的に認証される)。そのようなアクセスは、ユーザのソーシャル・グラフの要素に関連付けられている任意の特性または属性に従って許可/制限される(例えば、指定された「親友」グループ内のその他のソーシャルネットワーク・ユーザに対するアクセスのみが、ユーザの家に入った際に自動的に認証されることを可能にする)。
【0050】
工程470において、特定の実施形態では、客人301がユーザの家に入って、デバイス、例えばTV160のしきい値の近傍内に来たときに、客人301のPND310は、TV160との直接のピアツーピアスタイルの接続を確立することを試みる。PND310とユーザのデバイスとの間において直接の接続が確立されるという要件は、客人301がユーザの目の前にいるということを意味しており、したがって、スプーフィングを通じてアクセスを得る可能性は低減する。特定の実施形態においては、このタイプの認証ユース・ケースに関しては、PND310は、しきい値の近傍が非常に低いNFCまたは別のタイプのワイヤレス・テクノロジーを使用して直接の接続を確立することを必要とされる(それによって、客人301は、窓の外にいるのではなく、そのデバイスのすぐ近くにいることを必要とされる)。
【0051】
工程480において、直接の接続が確立されると、そのデバイスは、客人301のためにアクセスを認証および/または認可することを試みる。例えば、TV160は、客人301に関するソーシャルネットワーキング・ユーザIDをPND310から取り出し、ソーシャルネットワーキング・システムにアクセスし、客人301とユーザとがソーシャルネットワーキング・システムのソーシャル・グラフ内でつながっているかどうかを決定する。つながっている場合には、TV160は、客人301をユーザの友達として認識すること、およびユーザが客人301にクレデンシャルを与えるためのインタフェースを表示する。そのようなクレデンシャルは、有効期限のタイムスタンプが割り当てられるか、または取り消される。特定の実施形態においては、デバイスは、客人301がしきい値隔たり度合い内でユーザ101につながっているかどうかに基づいて、客人301が、ユーザによって指定された信頼されている友達のグループ(もしくはユーザによって指定された信頼されていない友達のブラック・リスト)に属しているかどうかに基づいて、または客人301に関連付けられているその他の何らかの情報に基づいて、認可レベルに従ってアクセスを許可する。
【0052】
特定の実施形態においては、PNDの使用は、ユーザがソーシャル・グラフを介してつながっている可能性がある客人の多要素認証をサポートする。所持要素は、客人301がPNDを身につけて携帯しているということによって満たされる。所持+(ある種の)固有性に依存する例においては、客人301がユーザの家に入って、自分のPNDをユーザのTVとペアリングすることを試みた場合に、PND310は、トークンをTVに送信し、TVは、そのトークンを用いて、ユーザのソーシャル・グラフ内で客人301を検索して、彼らのユーザ・プロフィールを取り出す。次いでTVは、客人301のプロフィールを表示すること、およびユーザに対して、自分自身のPND上のボタンをクリックして自分の客人のアイデンティティーを確認し、客人301が彼らのPNDをTVとペアリングすることを許可するよう求める。所持+知識に依存する例においては、TVは、ユーザのソーシャル・グラフ内で客人301を見つけた後に、(例えば、TVのリモコンを使用することによって、PND310を使用することによって、PND110とペアリングされている別のデバイスを使用することによって、またはPND310とペアリングされているデバイスを使用することによって)パスワードなどの認証クレデンシャルを入力するよう、またはジェスチャー・パターンをスワイプするよう客人301に求める要求を表示する。2つの所持度合いに依存する例においては、ユーザ自身のPND(または世帯内の他の誰かに属しているPND)が存在していることを必要とすることも可能である。特定の実施形態においては、認証は、PND310がユーザ101のデバイス・クラウド内の少なくとも最小数のデバイス(例えば、3つのPNDペア相手デバイス)のしきい値の近傍内にあることを必要とし、PND310は、少なくともそれらの最小数のユーザ101のデバイスのしきい値の近傍内にあると決定されて、客人301は認証される(招き入れられたのでなければ、客人301が、それだけ多くのユーザ101のデバイスのしきい値の近傍内にいることはありえないという前提である)。多要素認証のさらに厳格な要件が、選択的に(例えば、ソーシャル・グラフ内のユーザの第1度合いの友達ではない客人に関して)適用されることも可能である。
【0053】
特定の実施形態においては、PNDは、2013年3月15日に出願された「ソーシャル・ネットワークを通じて維持されるワイヤレス・データ・プライバシー(Wireless Data Privacy Maintained Through a Social Network)」という名称の米国特許出願第13/843,155号において記述されているようなトークンベースのピアツーピア技術を使用して認証される。特定の実施形態においては、認証が実行される。
【0054】
工程490において、そのデバイスは、客人301のPND310の検知された存在に基づいて、客人301に対してアクセスおよびコントロールのうちの少なくとも一方を許可する。いくつかの実施形態においては、PND310が検知されない場合には、そのデバイスは、アクセス/コントロールを一時的にもしくは永続的に(またはPND310が検知されるまで、および客人301が自分のアイデンティティーを再認証するまでのうちの少なくとも一方において、特定のタイプのアクセス/コントロールのみを)無効にする。特定の実施形態においては、この方法は、客人301がそのデバイスのさまざまな機能にアクセスすることを認可するための工程を含む。例えば、客人301が認証されるべきであるということをユーザが確認した瞬間に、ユーザは、そのデバイスに関する客人301のためのアクセス許可を手動で構成する。別の例においては、アクセス許可は、客人301のソーシャルネットワーキング・プロフィールおよびその他のソーシャルネットワーキング情報に従って自動的に構成される。例えば、客人301が子供である場合には、TVのチャネルのレンジは、子供たちにとって適切であるとみなされるチャネルに自動的に制限される。
【0055】
PND110は、単一のユーザに関連付けられているものとして記述されているが、特定の実施形態においては、PND110は、ユーザのグループ(例えば、家族または友達のグループ)によって使用されて、そのグループ内の任意のユーザに関連付けられているデバイスへの接続を提供すること、およびそのグループ内の任意のユーザがダム端末デバイスに接続できるようにすることのうちの少なくとも一方が行われる。特定の実施形態においては、そのようなPND110は、本明細書において記述されている任意の適切なタイプの情報(例えば、グループレベルの認可およびセキュリティー設定、グループの銀行口座に関する支払いクレデンシャル、共有されているグループ・コンテンツ)を含むグループ・プロフィールに関連付けられる。特定の実施形態においては、PND110は、ソーシャルネットワーキング・システムに関連付けて使用されて、PND110のユーザの「友達」を自動的に検知してそれらの「友達」にアクセスを許可し、そのようなアクセスは、ユーザのソーシャル・グラフ内の隔たり度合いによって制限される。
【0056】
特定の実施形態は、適切な場合には、図4の方法の1つまたは複数の工程を繰り返すことができる。本開示は、図4の方法の特定の工程同士を、特定の順序で生じるものとして記述し、示しているが、本開示は、任意の適切な順序で生じる図4の方法の任意の適切な工程同士を想定している。さらに、本開示は、図4の方法の特定の工程を実行する特定のコンポーネント、デバイス、またはシステムについて記述し、示しているが、本開示は、図4の方法の任意の適切な工程を実行する任意の適切なコンポーネント、デバイス、またはシステムの任意の適切な組合せを想定している。
【0057】
いくつかの実施形態においては、PNDペア相手デバイスが、自分がPNDのレンジ内になく、身近なネットワークのレンジ内にもないため、自分が見失われていると決定した場合には、そのデバイスは、2G無線機または双方向ページャ無線機を含み、それによって、そのデバイスは、アラートを発信して自分のロケーションを伝える。そのようなデバイスは、ジオロケートされるIPアドレスを利用することができ、またはWi−Fiのケースにおいては、信頼されているロケーション(自宅、職場、友達の家など)を指定するためにSSID/パスワードの組合せが使用される。
【0058】
とりわけ、ページャ無線機は、見失われているデバイス内に統合されている場合に使用するのにうってつけとなる理由で緊急事態において使用される場合が多く、(1)ページャ・ネットワークは、典型的には、多くの重なり合うページャ送信機を伴う、衛星によってコントロールされるネットワークによる同時放送配信に基づき、(2)ページャ無線機は、その他の無線機(例えば、セルラーまたはWi−Fi)よりもはるかに容易に硬い構造物を透過することができ、(3)ページャ無線機は、非常に少ないパワーしか引き出さない。
【0059】
いくつかの実施形態においては、デバイスが、信頼されているネットワーク(例えば、ホームWi−Fiネットワーク)のレンジ内に偶然いる場合、またはPND110とのピアツーピア接続を保持することができる場合には、アラートが生成されない。いくつかの実施形態においては、2G無線機またはページャ無線機は、PNDペア相手デバイスがPND110を検知しなくなるまで、および信頼されているネットワークのレンジ内にいなくなるまで、パワーをオフにされたままでいる。
【0060】
上述のように、デバイスをPND110とペアリングすることによって、ユーザは、デバイス・クラウド内のデバイスをアクティブ化すること、コントロールすること、およびその他の形で使用することができる。PNDと接続することによって、デバイス・クラウド内の1つまたは複数のデバイスは、デバイス・クラウド内の1つまたは複数のその他のデバイスと通信してそれらのデバイスを(能動的にまたは自動的に)コントロールするために使用される。1つのデバイス(「コントロール・デバイス」)上に、デバイス・クラウド内のその他のデバイスをコントロールするためのコントロール・インタフェースが提供される。特定の実施形態においては、コントロール・デバイスは、デバイス・クラウド内の特定の「コントロール可能な」デバイス、例えば、しきい値の近傍内で感知されているデバイス、リモート・コントロールのためのコマンドを受け取って処理することができるためのリモート対話インタフェースを含むデバイス、PND110のユーザがコントロールするための認可を与えられているデバイス、または利用可能である(例えば、パワーがオンにされている、ネットワークに接続されている、作動状態である、およびリモート・コントロールが有効にされているうちの少なくとも一つ)デバイスのためのコントロールを提供することのみが可能である。
【0061】
図5A図5Dは、デバイス・クラウド内のデバイスをコントロールするための例示的なユーザ・インタフェース(UI)500を示している。図5A図5Dに示されている例においては、UI500は、ユーザ101のスマートフォン120のスクリーン上に表示されている。特定の実施形態においては、UI500は、スマートフォン120のホーム・スクリーン上に、またはロックされたスクリーン・インタフェース内にさえ表示される(それによって、ユーザ101がスマートフォン120をロック解除することを必要としない使用のために利用可能となる)。
【0062】
スマートフォン120がデバイス・クラウド100内のさまざまなデバイスのしきい値の近傍内に来たときには、それぞれのデバイスを表すアイコンが、スマートフォン120のスクリーン上に現れる。例えば、図5Aにおいては、ユーザ101がスマートフォン120を携帯して居間に入ったときに、UI500は、しきい値の近傍内の4つのデバイス、すなわち、「メイン・テレビジョン」(居間にあるTV)、「カーテン」、「居間のライト」、および「階下のサーモスタット」を表すアイコンを表示する。しきい値の近傍内であるための基準は、PNDペア相手デバイスとの接続を確立するために使用される無線機のレンジ(例えば、Wi−Fi受信機を備えた大画面のTVは、ブルートゥース受信機を備えた時計よりも大きなレンジを有する)、PNDペア相手デバイスの使用プロフィール(例えば、大画面のTVの使用および操作のための通常の距離(視聴する距離)は、タッチスクリーン・タブレットの使用および操作のための通常の距離(快適な腕の長さの距離)よりも長い)等などの要素に基づいてPNDペア相手デバイスごとに異なる。ユーザ101が、特定のデバイスを表すアイコンを選択した場合には、スマートフォン120がその選択されたデバイスのためのリモコンとして機能することを可能にするインタフェースが表示される。図5Bにおいて示されているように、ユーザ101が「居間のライト」のアイコンを選択した場合には、ユーザ101がテレビジョンを見ている間に居間の2列の調光コントロール付き天井埋め込み型照明をコントロールすることを可能にするためのインタフェースが表示される。図5Cにおいて示されているように、ユーザ101が「階下のサーモスタット」のアイコンを選択した場合には、ユーザ101は、居間の空調および床下暖房をコントロールすることができる。
【0063】
別の例示的なシナリオにおいては、ユーザがTVで映画を見ているときに、(1)スマートフォン上にインタフェースが提供され、そのインタフェースを通じて、ユーザは、リモートコントロール・カーをコントロールすることができ、(2)ピクチャー・イン・ピクチャー(PiP)ディスプレイが、TV上に現れ、そのPiPディスプレイ上で、ユーザは、リモートコントロール・カー上に搭載されているビデオ・カメラをモニタして、ユーザの幼児または子犬を追尾し、別の部屋で彼らが何をしているかをモニタすることができる。
【0064】
別の例示的なシナリオにおいては、ユーザが自宅の階上のオフィスでドアを閉めて仕事をしている場合に、ユーザのラップトップは、玄関のドアが誰かによって鍵を用いて開けられているときに、第1の通知を表示し(その時点で、コントロール・インタフェースが、ラップトップのスクリーン上に現れて、玄関のドアに搭載されているセキュリティー・カメラによって取り込まれたユーザの子供の映像を表示する)、次いでユーザのラップトップは、階下のTVがオンにされて、アニメを見るためにチャネルが替えられたちょうどそのときに、第2の通知を表示する(その時点で、コントロール・インタフェースは、TVのコントロールを引き継ぐための機能を提供し、TVをオフにするか、チャネルを教育的なチャネルに替えるか、またはTVのスピーカを通じて音声を送信し、それによってユーザは、自分の子供に宿題をしに行くよう告げる)。
【0065】
別の例示的なシナリオにおいては、ユーザが就寝前に家の中を歩いている場合には、ユーザが廊下を歩いてさまざまな部屋を通り過ぎるにつれて、さまざまなインタフェースが、スマートフォンのスクリーン上にポップアップし、その場合、それぞれのインタフェースは、関連付けられている部屋の複数の側面をコントロールするための(例えば、ライトをオフにすること、ドアをロックすること、TVをオフにすること、電話の呼び出し音を消すこと、カーテンを閉めることなどを行うための)UIを表示する。図5Dにおいて示されているように、ユーザ101がテレビジョンを見終わって、就寝するために階上に行った後には、スマートフォン120は、主寝室内のデバイスを感知し、それらのデバイス、すなわち、「主寝室のテレビジョン」、「セキュリティー・システム」、「寝室のライト」、「階上のサーモスタット」をコントロールするためのアイコンを表示する。
【0066】
いくつかの実施形態においては、ユーザの身につけて物理的に携帯されている単一の指定されたコントロール・デバイスを有する代わりに、PND110は、(適切なコントロール・インタフェースを提供することができる)どのデバイスが、PND110への(そして、おそらくはユーザへの)最も接近する近傍内にあるかに基づいて、デバイス・クラウド内でデバイスからデバイスへ指定を移す。さまざまなタイプのコントロール・インタフェース(例えば、ディスプレイ・スクリーン、発話されたコマンドを検知するための内蔵マイクロフォン、ジェスチャー・コマンドを検知するための内蔵3Dモーション・センサなど)が、さまざまなタイプのデバイス内に組み込まれる。例えば、ユーザが、(ダッシュボードに内蔵マイクロフォンおよびタッチ・スクリーンを備えた)自分の車の中にいる場合に、その車が自宅の通りに入った際に(そしてPND110が、ユーザの家のWi−Fiレンジ内に来た際に)、ユーザは、ガレージのドアが開くよう、およびオーブンが予熱を開始するよう命令することができる。ユーザが自分の車をガレージにとめた後に、PND110は、ユーザが歩いて車から離れて台所へ向かっているということを検知し、コントロール・デバイスの指定を、車から、ドアにインタラクティブ・スクリーン、内蔵マイクロフォン、および内蔵3Dモーション・センサを備えた冷蔵庫へ移す。ユーザが台所で料理をしている間は、もう冷蔵庫が、指定されたコントロール・デバイスであるため、ユーザは、階上で眠っている赤ん坊に向けられたビデオ・カメラをモニタすること、ならびに手が汚れている間は、発話されたコマンドおよびモーション・ジェスチャー・コマンドのうちの少なくとも一つを冷蔵庫に与えて、スマートフォン120に送信されたテキスト・メッセージに返信する。
【0067】
特定の実施形態においては、自動的なコントロールおよび能動的なコントロールが同時にトリガーされ、例えば、多くの部屋を備えた大きな家に1人の人がいる場合に、その人が、夕食を作るために、TVを見るために、トイレを使うために、そして就寝するために、家の中のさまざまな部屋の中を歩くにつれて、それぞれの部屋は、ユーザがその部屋に出入りする際に、温度および照明を自動的に調整することができ、また、ユーザが新たな部屋に入った後の最初の20秒間にわたってユーザのスマートフォン上にインタフェースが手短にポップアップして、ユーザが温度および照明を能動的にコントロールすることを可能にすることもできる。
【0068】
ある世帯のそれぞれのメンバーが、身につけて携帯されている自分自身の個々のPNDを有している場合など、グループの状況においては、それぞれのPNDは、個々の認証および認可向けに構成される。この様式においては、それぞれのPNDに対してさまざまな許可が与えられる(例えば、親は、すべてのデバイスに対して管理レベルのコントロールを有することができ、その一方でティーンエイジャは、制限されたコントロールを有することができ、幼児/ペットは、コントロールを有することができない)。このシナリオにおいては、それぞれのPNDが家の中の1つまたは複数のデバイスとペアリングされている場合には、特定のデバイスの近傍内で検知される特定のPNDに基づいてそのデバイスをコントロールするために自動的なコントロールが実施される。
【0069】
例えば、幼児のPNDまたは子犬のPNDは、そのPNDが近づいている家の中のデバイスを知らせるトラッキング・デバイスとして機能するように構成される。そのPNDおよびPNDペア相手デバイスのうちの少なくとも一方が、幼児/子犬が近づいているということを検知した場合には、そのPNDは、大人または年上の子供向けに構成されているPNDによってトリガーされることはないであろう特定のアクション(例えば、機械化されたベビー・ゲートが自動的に閉じて、階段の吹き抜けへのアクセスを閉ざすこと)を起こすための信号をPNDペア相手デバイスに送信する。別の例においては、幼児が目を覚まして居間に近づいてきて、その居間では大人たちがホラー映画を見ている場合には、TVは、その映画を自動的に一時停止して、スクリーンセーバまたは子供に適したチャネルを表示する。別の例においては、薬/酒/清掃用補給品を収納しているセキュア・キャビネットが、近傍内に大人が誰もいない状態で子供がそのキャビネットに近づいているということを検知した場合には、そのセキュア・キャビネットは、自分のドアをロックする。
【0070】
世帯のメンバーではない(それぞれがPNDを身につけて携帯している)1人または複数のローミング・ユーザを含む状況においては、それらのローミング・ユーザに対して、ソーシャルネットワーキング情報またはその他の情報に基づいて、さまざまなレベルのコントロールが許可される。例えば、さまざまなサービス提供者に対して、彼らのさまざまな役割に応じて、さまざまなアクセス許可が与えられる(例えば、庭師は、裏庭への通用門へのアクセスを必要とするかもしれないが、家の中へのアクセスは不要であり、ベビーシッタは、家へのアクセスを必要とするかもしれないが、親の寝室またはホーム・オフィスへのアクセスは不要であり、家の掃除人は、家のほとんどすべてのエリアへのアクセスを必要とするかもしれず、世帯主の留守中に家に滞在している泊り客は、特定のクローゼットおよびリカー・キャビネット以外のすべてへのアクセスを得ることができ、オンデマンド映画を購入するためのアクセスを許可されることは不可能である)。
【0071】
世帯のメンバーがソーシャル・グラフを介してつながっているその他のローミング・ユーザは、ソーシャル・グラフ情報およびその他のソーシャルネットワーキング情報に従って許可が与えられる(例えば、第1度合いの友達は、ホームWi−Fiネットワークへのアクセスを自動的に許可される)。そのような許可は、限定ではなく、例として、(1)その他のソーシャルネットワーク・ユーザに対してアクセスを(例えば、彼らが有効なユーザ識別子を有しているということを確認することによって)制限すること、(2)その他のソーシャルネットワーク・ユーザに対してアクセスを彼らのソーシャル・グラフ内に制限すること、(3)その他のソーシャルネットワーク・ユーザに対してアクセスをしきい値隔たり度合い内に制限すること、または(4)ユーザのソーシャル・グラフの要素に関連付けられているその他の任意の特性もしくは属性に従ってアクセスを制限すること(例えば、指定されたグループ内のその他のソーシャルネットワーク・ユーザにのみアクセスを許可すること)によって、与えられるか、または制限される。
【0072】
図6は、ユーザのデバイスのためにシームレスでポータブルなネットワーク接続を提供するための例示的な方法600を示している。この方法は、工程610において開始し、工程610では、コントロール・デバイスとして指定されたデバイス・クラウド100内の特定のデバイス(例えば、スマートフォン120)が、しきい値の近傍内にあるデバイス・クラウド100内の1つまたは複数のその他のデバイスを感知する。しきい値の近傍は、コントロール・デバイスのロケーションに対して、またはPNDのロケーションに対して査定される。特定の実施形態においては、特定のユーザに関連付けられているデバイスのみが、コントロール・デバイスとして使用される。工程620において、コントロール・デバイスは、しきい値の近傍内のデバイスのうちのどれがコントロール可能であるかを決定する。この決定は、そのような情報をPNDから取り出すことによって、またはコントロール・デバイスそのものによって行われる。工程630において、コントロール・デバイスはUIを提示し、そのUIは、ユーザがそれぞれのデバイスを(いくつかの実施形態においては、そのデバイスに対してアクセスおよびコントロールのうちの少なくとも一方を行うための認可をユーザが有しているしきい値の近傍内のデバイスのみを)見て選択することを可能にする。工程640において、ユーザがアクセスまたはコントロールしたいと望むUI内に提示されている特定のデバイスを選択するユーザ入力を受け取ると、コントロール・デバイスは、その選択されたデバイスをコントロールするためのUIを提示する。工程650において、コントロール・デバイスは、UIを介して受け取られたユーザ入力に基づいて、選択されたデバイスに対してアクセスまたはコントロールを行うためのコマンドを送信する。特定の実施形態においては、ユーザ入力は、特定のオペレーションに関して、選択されたデバイスの進捗状況をモニタすること(例えば、オーブンのライトをオンにして、チョコレート・スフレの進捗状況を見ること)、または特定のイベントが発生したときに(例えば、オーブンの温度が華氏425°(摂氏218°)に達したときに)通知を受け取ることをユーザが望んでいるということを示す。それらのコマンドは、コントロール・デバイスから直接、またはPNDを介して、選択されたデバイスへ送信される。工程660において、コントロール・デバイスは、選択されたデバイスからのフィードバック(例えば、コマンドが成功裏に実行された旨の確認、またはそのデバイスの現在の状態を示すセンサ・データ)を受け取る。コマンドと同様に、フィードバックは、選択されたデバイスからコントロール・デバイスへ直接、またはPNDを介して送信される。工程670において、コントロール・デバイスは、ユーザが(そしてそれによって、コントロール・デバイスが)物理的な空間の中を移動し、それによってデバイス・クラウド100内のデバイスの方へ、またはそれらのデバイスから離れて移動するにつれて、UIを更新し、次いで(いずれかの新たに感知されたデバイスに対してアクセスおよびコントロールのうちの少なくとも一方を行うための認可をユーザが有しているかどうかを決定するために)工程620へ戻る。
【0073】
特定の実施形態においては、UI500は、ユーザ経験を損なわないように好都合な様式で表示される。例えば、スマートフォンおよびPNDが、TVの近傍内にあるものとして検知された場合には、TVをコントロールするためのインタフェースは、ユーザがそのインタフェースを使用するために自分のスマートフォンをロック解除することを必要としないような方法で提供されること(例えば、ユーザがやはり自分のスマートフォンをロック解除するよう促されるロックされたスクリーン・インタフェースの上にコントロールを表示すること)が可能である。別の例においては、通知がスマートフォンへ送信され、その通知をクリックすると、スマートフォンをロック解除することなく、デバイス・コントロール・インタフェースが開く。別の例においては、1つまたは複数のデバイスをコントロールするための1つまたは複数のアイコンが、それらの1つまたは複数のデバイスへのスマートフォンの接近に基づいて、ロックされたスクリーン・インタフェース上に現れる。
【0074】
図7は、ソーシャルネットワーキング・システムに関連付けられている例示的なネットワーク環境700を示している。ネットワーク環境700は、ネットワーク710によって互いにつながっているクライアント・システム730、ソーシャルネットワーキング・システム760、およびサードパーティ・システム770を含む。図7は、クライアント・システム730、ソーシャルネットワーキング・システム760、サードパーティ・システム770、およびネットワーク710の特定の構成を示しているが、本開示は、クライアント・システム730、ソーシャルネットワーキング・システム760、サードパーティ・システム770、およびネットワーク710の任意の適切な構成を想定している。限定ではなく、例として、クライアント・システム730、ソーシャルネットワーキング・システム760、およびサードパーティ・システム770のうちの複数は、ネットワーク710を迂回して、互いに直接つながることが可能である。別の例として、クライアント・システム730、ソーシャルネットワーキング・システム760、およびサードパーティ・システム770のうちの複数は、物理的にまたは論理的に、全体としてまたは部分的に互いに同一場所に配置されることが可能である。その上、図7は、特定の数のクライアント・システム730、ソーシャルネットワーキング・システム760、サードパーティ・システム770、およびネットワーク710を示しているが、本開示は、任意の適切な数のクライアント・システム730、ソーシャルネットワーキング・システム760、サードパーティ・システム770、およびネットワーク710を想定している。限定ではなく、例として、ネットワーク環境700は、複数のクライアント・システム730、ソーシャルネットワーキング・システム760、サードパーティ・システム770、およびネットワーク710を含むことができる。
【0075】
本開示は、任意の適切なネットワーク710を想定している。限定ではなく、例として、ネットワーク710の1つまたは複数の部分は、アド・ホック・ネットワーク、イントラネット、エクストラネット、仮想プライベート・ネットワーク(VPN)、ローカル・エリア・ネットワーク(LAN)、ワイヤレスLAN(WLAN)、ワイド・エリア・ネットワーク(WAN)、ワイヤレスWAN(WWAN)、メトロポリタン・エリア・ネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの複数の組合せを含むことができる。ネットワーク710は、1つまたは複数のネットワーク710を含むことができる。
【0076】
リンク750は、クライアント・システム730、ソーシャルネットワーキング・システム760、およびサードパーティ・システム770を通信ネットワーク710に、または互いに接続することができる。本開示は、任意の適切なリンク750を想定している。特定の実施形態においては、1つまたは複数のリンク750は、1つもしくは複数の有線リンク(たとえば、デジタル・サブスクライバ・ライン(DSL)もしくはデータ・オーバ・ケーブル・サービス・インタフェース仕様(DOCSIS)など)、ワイヤレス・リンク(たとえば、Wi−Fiもしくはワールドワイド・インターオペラビリティー・フォー・マイクロウェーブ・アクセス(WiMAX)など)、または光リンク(たとえば、同期光ネットワーク(SONET)もしくは同期デジタル階層(SDH)など)を含む。特定の実施形態においては、1つまたは複数のリンク750はそれぞれ、アド・ホック・ネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部分、PSTNの一部分、セルラー・テクノロジーベースのネットワーク、衛星通信テクノロジーベースのネットワーク、別のリンク750、または複数のそのようなリンク750の組合せを含む。リンク750は、ネットワーク環境700の全体を通じて必ずしも同じである必要はない。1つまたは複数の第1のリンク750は、1つまたは複数の点において1つまたは複数の第2のリンク750とは異なることが可能である。
【0077】
特定の実施形態においては、クライアント・システム730は、クライアント・システム730によって実装またはサポートされる適切な機能を実行することができる、ハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含む電子デバイスであることが可能である。限定ではなく、例として、クライアント・システム730は、デスクトップ・コンピュータ、ノートブック・コンピュータもしくはラップトップ・コンピュータ、ネットブック、タブレット・コンピュータなどのコンピュータ・システム、eブック・リーダ、GPSデバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含むことができる。本開示は、任意の適切なクライアント・システム730を想定している。クライアント・システム730は、クライアント・システム730のネットワーク・ユーザがネットワーク710にアクセスすることを可能にすることができる。クライアント・システム730は、自分のユーザがその他のクライアント・システム730のその他のユーザと通信することを可能にすることができる。
【0078】
特定の実施形態においては、クライアント730は、MICROSOFT INTERNET EXPLORER、GOOGLE CHROME、またはMOZILLA FIREFOX(いずれも登録商標)などのウェブ・ブラウザ772を含むことができ、1つまたは複数のアドオン、プラグイン、またはTOOLBARもしくはYAHOO TOOLBAR(登録商標)などのその他の拡張を有することができる。クライアント・システム730のユーザは、ウェブ・ブラウザ772を特定のサーバ(サーバ762、またはサードパーティ・システム770に関連付けられているサーバなど)へ導くユニフォーム・リソース・ロケータ(URL)またはその他のアドレスを入力することができ、ウェブ・ブラウザ772は、ハイパー・テキスト転送プロトコル(HTTP)要求を生成して、そのHTTP要求をサーバに通信することができる。サーバは、そのHTTP要求を受け入れて、そのHTTP要求に応答して1つまたは複数のハイパー・テキスト・マークアップ言語(HTML)ファイルをクライアント・システム730に通信することができる。クライアント・システム730は、ユーザに提示するためにサーバからのHTMLファイルに基づいてウェブページをレンダリングすることができる。本開示は、任意の適切なウェブページ・ファイルを想定している。限定ではなく、例として、ウェブページは、特定のニーズに従って、HTMLファイル、拡張可能ハイパー・テキスト・マークアップ言語(XHTML)ファイル、または拡張可能マークアップ言語(XML)ファイルからレンダリングすることができる。そのようなページは、限定ではなく、例として、JAVASCRIPT(登録商標)、JAVA(登録商標)、MICROSOFT SILVERLIGHTで書かれたスクリプトなどのスクリプト、AJAX(Asynchronous JAVASCRIPT(登録商標) and XML)などのマークアップ言語とスクリプトの組合せなどを実行することもできる。本明細書においては、ウェブページへの参照は、適切な場合には、(そのウェブページをレンダリングするためにブラウザが使用することができる)1つまたは複数の対応するウェブページ・ファイルを含み、その逆もまた同様である。
【0079】
特定の実施形態においては、ソーシャルネットワーキング・システム760は、オンライン・ソーシャル・ネットワークをホストすることができるネットワークアドレス可能なコンピューティング・システムであることが可能である。ソーシャルネットワーキング・システム760は、たとえば、ユーザプロフィール・データ、コンセプトプロフィール・データ、ソーシャルグラフ情報、またはオンライン・ソーシャル・ネットワークに関連したその他の適切なデータなどのソーシャルネットワーキング・データを生成すること、格納すること、受け取ること、および送信することが可能である。ソーシャルネットワーキング・システム760は、ネットワーク環境700のその他のコンポーネントによって直接、またはネットワーク710を介してアクセスされることが可能である。特定の実施形態においては、ソーシャルネットワーキング・システム760は、1つまたは複数のサーバ762を含むことができる。それぞれのサーバ762は、単一のサーバ、または複数のコンピュータもしくは複数のデータセンターにわたる分散サーバであることが可能である。サーバ762は、限定ではなく、例として、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、広告サーバ、ファイル・サーバ、アプリケーション・サーバ、Exchangeサーバ、データベース・サーバ、プロキシ・サーバ、本明細書において記述されている機能もしくはプロセスを実行するのに適している別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプのものであることが可能である。特定の実施形態においては、それぞれのサーバ762は、サーバ762によって実装またはサポートされる適切な機能を実行するためのハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム760は、1つまたは複数のデータ・ストア764を含むことができる。データ・ストア764は、さまざまなタイプの情報を格納するために使用されることが可能である。特定の実施形態においては、データ・ストア764内に格納されている情報は、特定のデータ構造に従って編成されることが可能である。特定の実施形態においては、それぞれのデータ・ストア764は、リレーショナル・データベース、行のデータベース、相関関係データベース、あるいはその他の適切なデータベースであることが可能である。本開示は特定のタイプのデータベースを記述し、例示するが、本開示においては、任意の適切なタイプのデータベースが考えられる。特定の実施形態は、クライアント・システム730、ソーシャルネットワーキング・システム760、またはサードパーティ・システム770が、データ・ストア764内に格納されている情報を管理すること、取り出すこと、修正すること、追加すること、または削除することを可能にするインタフェースを提供することができる。
【0080】
特定の実施形態においては、ソーシャルネットワーキング・システム760は、1つまたは複数のソーシャルグラフを1つまたは複数のデータ・ストア764内に格納することができる。特定の実施形態においては、ソーシャルグラフは、複数のノード(複数のユーザ・ノード(それぞれが、特定のユーザに対応している)、または複数のコンセプト・ノード(それぞれが、特定のコンセプトに対応している)を含むことができる)と、ノード同士をつなげる複数のエッジとを含むことができる。ソーシャルネットワーキング・システム760は、オンライン・ソーシャル・ネットワークのユーザに、その他のユーザと通信および対話する能力を提供することができる。特定の実施形態においては、ユーザたちは、ソーシャルネットワーキング・システム760を介してオンライン・ソーシャル・ネットワークに参加し、次いで、自分たちがつながりたいと望むソーシャルネットワーキング・システム760のその他の複数のユーザにつながり(すなわち、関係)を付加することができる。本明細書においては、「友達」という用語は、ユーザがソーシャルネットワーキング・システム760を介して、つながり、関連付け、または関係を形成しているソーシャルネットワーキング・システム760のその他の任意のユーザを指すことができる。
【0081】
特定の実施形態においては、ソーシャルネットワーキング・システム760は、ソーシャルネットワーキング・システム760によってサポートされるさまざまなタイプのアイテムまたはオブジェクトに関してアクションを取る能力をユーザに提供することができる。限定ではなく、例として、それらのアイテムおよびオブジェクトは、ソーシャルネットワーキング・システム760のユーザが属することが可能であるグループもしくはソーシャル・ネットワーク、ユーザが関心を抱く可能性があるイベントもしくはカレンダー・エントリー、ユーザが使用することができるコンピュータベースのアプリケーション、ユーザがサービスを介してアイテムを購入もしくは販売することを可能にするトランザクション、ユーザが実行することができる広告との対話、またはその他の適切なアイテムもしくはオブジェクトを含むことができる。ユーザは、ソーシャルネットワーキング・システム760において、またはサードパーティ・システム770の外部システム(ソーシャルネットワーキング・システム760とは別個のものであって、ネットワーク710を介してソーシャルネットワーキング・システム760に結合されている)によって表されることが可能である任意のものと対話することができる。
【0082】
特定の実施形態においては、ソーシャルネットワーキング・システム760は、さまざまなエンティティ同士をリンクできることが可能である。限定ではなく、例として、ソーシャルネットワーキング・システム760は、ユーザたちが互いに対話すること、ならびにサードパーティ・システム770もしくはその他のエンティティからのコンテンツを受け取ることを可能にすることができ、またはユーザたちがアプリケーション・プログラミング・インタフェース(API)もしくはその他の通信チャネルを通じてこれらのエンティティと対話することを可能にすることができる。
【0083】
特定の実施形態においては、サードパーティ・システム770は、1つもしくは複数のタイプのサーバ、1つもしくは複数のデータ・ストア、1つもしくは複数のインタフェース(APIを含むが、それには限定されない)、1つもしくは複数のウェブ・サービス、1つもしくは複数のコンテンツ・ソース、1つもしくは複数のネットワーク、または(たとえば、サーバが通信することができる)その他の任意の適切なコンポーネントを含むことができる。サードパーティ・システム770は、ソーシャルネットワーキング・システム760を運営しているエンティティとは異なるエンティティによって運営されることが可能である。しかしながら、特定の実施形態においては、ソーシャルネットワーキング・システム760およびサードパーティ・システム770は、ソーシャルネットワーキング・システム760またはサードパーティ・システム770のユーザにソーシャルネットワーキング・サービスを提供するために互いに連携して機能することができる。この意味において、ソーシャルネットワーキング・システム760は、サードパーティ・システム770などのその他のシステムがインターネットを介してソーシャルネットワーキング・サービスおよび機能をユーザに提供するために使用することができるプラットフォーム、またはバックボーンを提供することができる。
【0084】
特定の実施形態においては、サードパーティ・システム770は、サードパーティ・コンテンツ・オブジェクト・プロバイダを含むことができる。サードパーティ・コンテンツ・オブジェクト・プロバイダは、コンテンツ・オブジェクトの1つまたは複数のソースを含むことができ、それらのソースは、クライアント・システム730に通信されることが可能である。限定ではなく、例として、コンテンツ・オブジェクトは、ユーザにとって関心がある物またはアクティビティに関する情報、たとえば、映画の開始時刻、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、またはその他の適切な情報などを含むことができる。限定ではなく、別の例として、コンテンツ・オブジェクトは、インセンティブ・コンテンツ・オブジェクト、たとえば、クーポン、ディスカウント・チケット、ギフト券、またはその他の適切なインセンティブ・オブジェクトを含むことができる。
【0085】
特定の実施形態においては、ソーシャルネットワーキング・システム760はまた、ユーザによって生成されたコンテンツ・オブジェクトを含み、それらのコンテンツ・オブジェクトは、ソーシャルネットワーキング・システム760とのユーザの対話を高めることができる。ユーザによって生成されたコンテンツは、ユーザがソーシャルネットワーキング・システム760に付加、アップロード、送信、または「ポスト」することができる任意のものを含むことができる。限定ではなく、例として、ユーザは、クライアント・システム730からソーシャルネットワーキング・システム760へポストを通信する。ポストは、ステータス更新もしくはその他のテキスト・データ、ロケーション情報、写真、ビデオ、リンク、音楽、またはその他の類似したデータもしくはメディアなどのデータを含むことができる。コンテンツは、ニュースフィードまたはストリームなどの「通信チャネル」を通じてサードパーティによってソーシャルネットワーキング・システム760に付加されることも可能である。
【0086】
特定の実施形態においては、ソーシャルネットワーキング・システム760は、さまざまなサーバ、サブシステム、プログラム、モジュール、ログ、およびデータ・ストアを含むことができる。特定の実施形態においては、ソーシャルネットワーキング・システム760は、ウェブ・サーバ、アクション・ロガー、API要求サーバ、関連性およびランキング・エンジン、コンテンツ・オブジェクト分類子、通知コントローラ、アクション・ログ、サードパーティ・コンテンツ・オブジェクト露出ログ、推測モジュール、認可/プライバシー・サーバ、検索モジュール、広告ターゲティング・モジュール、ユーザインタフェース・モジュール、ユーザプロフィール・ストア、つながりストア、サードパーティ・コンテンツ・ストア、またはロケーション・ストアや、アプリケーション・ストアのうちの1つまたは複数を含むことができる。ソーシャルネットワーキング・システム760は、適切なコンポーネント、たとえば、ネットワーク・インタフェース、セキュリティー・メカニズム、ロード・バランサ、フェイルオーバ・サーバ、管理およびネットワークオペレーション・コンソール、その他の適切なコンポーネント、またはそれらの任意の適切な組合せを含むこともできる。特定の実施形態においては、ソーシャルネットワーキング・システム760は、ユーザ・プロフィールを格納するための1つまたは複数のユーザプロフィール・ストアを含むことができる。ユーザ・プロフィールは、たとえば、経歴情報、人口統計学的情報、挙動情報、ソーシャルな情報、またはその他のタイプの記述的情報、たとえば、職業経験、学歴、趣味もしくは好み、関心、親近感、またはロケーションを含むことができる。関心情報は、1つまたは複数のカテゴリに関連した関心を含むことができる。カテゴリは、一般的または具体的であることが可能である。限定ではなく、例として、ユーザが、あるブランドの靴に関する記事に対して「いいね!」を表明した場合には、カテゴリは、そのブランド、または「靴」もしくは「衣類」という一般的なカテゴリであることが可能である。ユーザに関するつながり情報を格納するために、つながりストアが使用されることが可能である。つながり情報は、類似のもしくは共通の職業経験、グループ・メンバーシップ、趣味、学歴を有しているか、または何らかの形で関連しているか、もしくは共通の属性を共有しているユーザ同士を示すことができる。つながり情報は、さまざまなユーザおよびコンテンツ(内部および外部の両方)の間におけるユーザ定義のつながりを含むこともできる。ネットワーク710を介してソーシャルネットワーキング・システム760を1つもしくは複数のクライアント・システム730または1つもしくは複数のサードパーティ・システム770にリンクさせるために、ウェブ・サーバが使用されることが可能である。限定ではなく、例として、ウェブ・サーバは、ソーシャルネットワーキング・システム760と、1つまたは複数のクライアント・システム730との間においてメッセージを受け取って回送するためにメール・サーバまたはその他のメッセージング機能を含むことができる。API要求サーバは、サードパーティ・システム770が、1つまたは複数のAPIを呼び出すことによってソーシャルネットワーキング・システム760からの情報にアクセスすることを可能にすることができる。ソーシャルネットワーキング・システム760の上のまたは外のユーザのアクションに関してウェブ・サーバから通信を受け取るために、アクション・ロガーが使用されることが可能である。アクション・ログとともに、サードパーティコンテンツ・オブジェクトへのユーザの露出についてのサードパーティコンテンツオブジェクト・ログが保持されることが可能である。通知コントローラは、コンテンツ・オブジェクトに関する情報をクライアント・システム730に提供することができる。情報は、通知としてクライアント・システム730へ押し出されることが可能であり、または情報は、クライアント・システム730から受け取られた要求に応答してクライアント・システム730から引き出されることが可能である。ソーシャルネットワーキング・システム760のユーザの1つまたは複数のプライバシー設定を実施するために、認可サーバが使用されることが可能である。ユーザのプライバシー設定は、ユーザに関連付けられている特定の情報がどのように共有されることが可能であるかを特定する。認可サーバは、ユーザが、たとえば、適切なプライバシー設定を設定することなどによって、自分のアクションをソーシャルネットワーキング・システム760によって記録されること、またはその他のシステム(たとえば、サードパーティ・システム770)と共有されることのオプトインまたはオプトアウトを行うことを可能にすることができる。サードパーティ・システム770などのサードパーティから受け取られたコンテンツ・オブジェクトを格納するために、サードパーティコンテンツオブジェクト・ストアが使用されることが可能である。ユーザに関連付けられているクライアント・システム730から受け取られたロケーション情報を格納するために、ロケーション・ストアが使用されることが可能である。広告価格設定モジュールが、ソーシャルな情報、現在時刻、ロケーション情報、またはその他の適切な情報を組み合わせて、関連がある広告を、通知の形式でユーザに提供することができる。
【0087】
図8は、例示的なソーシャルグラフ800を示している。特定の実施形態においては、ソーシャルネットワーキング・システム760は、1つまたは複数のソーシャルグラフ800を1つまたは複数のデータ・ストア内に格納することができる。特定の実施形態においては、ソーシャルグラフ800は、複数のノード(複数のユーザ・ノード802、または複数のコンセプト・ノード804を含むことができる)と、ノード同士をつなげる複数のエッジ806とを含むことができる。図8において示されている例示的なソーシャルグラフ800は、教示上の目的から、2次元のビジュアル・マップ表示で示されている。特定の実施形態においては、ソーシャルネットワーキング・システム760、クライアント・システム730、またはサードパーティ・システム770は、適切なアプリケーションに関してソーシャルグラフ800および関連したソーシャルグラフ情報にアクセスすることができる。ソーシャルグラフ800のノードおよびエッジは、データ・オブジェクトとして、たとえば(ソーシャルグラフ・データベースなどの)データ・ストア内に格納されることが可能である。そのようなデータ・ストアは、ソーシャルグラフ800のノードまたはエッジの1つまたは複数の検索可能なまたはクエリ可能なインデックスを含むことができる。
【0088】
特定の実施形態においては、ユーザ・ノード802は、ソーシャルネットワーキング・システム760のユーザに対応することができる。限定ではなく、例として、ユーザは、ソーシャルネットワーキング・システム760と、またはソーシャルネットワーキング・システム760を介して対話または通信する個人(人間のユーザ)、エンティティ(たとえば、企業、ビジネス、もしくはサードパーティ・アプリケーション)、または(たとえば、個人もしくはエンティティの)グループであることが可能である。特定の実施形態においては、あるユーザがソーシャルネットワーキング・システム760とのアカウントに登録した場合には、ソーシャルネットワーキング・システム760は、そのユーザに対応するユーザ・ノード802を作成し、そのユーザ・ノード802を1つまたは複数のデータ・ストア内に格納することができる。本明細書において記述されているユーザおよびユーザ・ノード802は、適切な場合には、登録されているユーザ、および登録されているユーザに関連付けられているユーザ・ノード802を指すことができる。追加として、または代替として、本明細書において記述されているユーザおよびユーザ・ノード802は、適切な場合には、ソーシャルネットワーキング・システム760に登録されていないユーザを指すことができる。特定の実施形態においては、ユーザ・ノード802は、ユーザによって提供された情報、またはソーシャルネットワーキング・システム760を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロフィール画像、連絡先情報、生年月日、性別、婚姻状況、家族状況、勤務先、学歴、好み、関心、またはその他の人口統計学的情報を提供することができる。特定の実施形態においては、ユーザ・ノード802は、ユーザに関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、ユーザ・ノード802は、1つまたは複数のウェブページに対応することができる。
【0089】
特定の実施形態においては、コンセプト・ノード804は、コンセプトに対応することができる。限定ではなく、例として、コンセプトは、場所(たとえば、映画館、レストラン、ランドマーク、もしくは都市など)、ウェブサイト(たとえば、ソーシャルネットワーク・システム760に関連付けられているウェブサイト、もしくはウェブアプリケーション・サーバに関連付けられているサードパーティ・ウェブサイトなど)、エンティティ(たとえば、人、企業、グループ、スポーツ・チーム、もしくは有名人など)、ソーシャルネットワーキング・システム760内に、もしくはウェブアプリケーション・サーバなどの外部サーバ上に配置されることが可能であるリソース(たとえば、オーディオ・ファイル、ビデオ・ファイル、デジタル写真、テキスト・ファイル、構造化されたドキュメント、もしくはアプリケーションなど)、物的もしくは知的財産(たとえば、彫塑、絵画、映画、ゲーム、曲、アイディア、写真、もしくは執筆作品など)、ゲーム、アクティビティ、アイディアもしくは理論、別の適切なコンセプト、または複数のそのようなコンセプトに対応することができる。コンセプト・ノード804は、ユーザによって提供されたコンセプトの情報、またはソーシャルネットワーキング・システム760を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、コンセプトの情報は、名前もしくはタイトル、1つもしくは複数のイメージ(たとえば、本の表紙のイメージ)、ロケーション(たとえば、住所もしくは地理的ロケーション)、(URLに関連付けられることが可能である)ウェブサイト、連絡先情報(たとえば、電話番号もしくはEメール・アドレス)、その他の適切なコンセプト情報、またはそのような情報の任意の適切な組合せを含むことができる。特定の実施形態においては、コンセプト・ノード804は、コンセプト・ノード804に関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、コンセプト・ノード804は、1つまたは複数のウェブページに対応することができる。
【0090】
特定の実施形態においては、ソーシャルグラフ800内のノードは、ウェブページ(「プロフィール・ページ」と呼ばれる場合もある)を表すこと、またはウェブページによって表されることが可能である。プロフィール・ページは、ソーシャルネットワーキング・システム760によってホストされること、またはソーシャルネットワーキング・システム760にとってアクセス可能であることが可能である。プロフィール・ページは、サードパーティ・サーバ770に関連付けられているサードパーティ・ウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロフィール・ページは、その特定の外部ウェブページであることが可能であり、そのプロフィール・ページは、特定のコンセプト・ノード804に対応することができる。プロフィール・ページは、その他のユーザのうちのすべてまたは選択されたサブセットによって閲覧できることが可能である。限定ではなく、例として、ユーザ・ノード802は、対応するユーザプロフィール・ページを有することができ、そのユーザプロフィール・ページにおいては、対応するユーザが、コンテンツを付加すること、言明を行うこと、またはその他の形で自分自身を表現することが可能である。限定ではなく、別の例として、コンセプト・ノード804は、対応するコンセプトプロフィール・ページを有することができ、そのコンセプトプロフィール・ページにおいては、1人または複数のユーザが、特にコンセプト・ノード804に対応するコンセプトに関連して、コンテンツを付加すること、言明を行うこと、または自分自身を表現することが可能である。
【0091】
特定の実施形態においては、コンセプト・ノード804は、サードパーティ・システム770によってホストされているサードパーティ・ウェブページまたはリソースを表すことができる。サードパーティ・ウェブページまたはリソースは、数ある要素の中でも、コンテンツ、選択可能なもしくはその他のアイコン、または、アクションもしくはアクティビティを表す(たとえば、JAVASCRIPT(登録商標)、AJAX、もしくはPHPコードで実装されることが可能である)その他の対話可能なオブジェクトを含むことができる。限定ではなく、例として、サードパーティ・ウェブページは、「いいね!」、「チェックイン」、「食べる」、「推奨する」、または別の適切なアクションもしくはアクティビティなどの選択可能なアイコンを含むことができる。サードパーティ・ウェブページを閲覧しているユーザは、それらのアイコンのうちの1つ(たとえば、「食べる」)を選択することによってアクションを実行して、クライアント・システム730に、そのユーザのアクションを示すメッセージをソーシャルネットワーキング・システム760へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキング・システム760は、ユーザに対応するユーザ・ノード802と、サードパーティ・ウェブページまたはリソースに対応するコンセプト・ノード804との間においてエッジ(たとえば、「食べる」エッジ)を作成して、エッジ806を1つまたは複数のデータ・ストア内に格納することができる。
【0092】
特定の実施形態においては、ソーシャルグラフ800内の1対のノードが、1つまたは複数のエッジ806によって互いにつながることが可能である。1対のノードをつなげるエッジ806は、それらの1対のノードの間における関係を表すことができる。特定の実施形態においては、エッジ806は、1対のノードの間における関係に対応する1つまたは複数のデータ・オブジェクトまたは属性を含むことまたは表すことが可能である。限定ではなく、例として、第1のユーザは、第2のユーザが第1のユーザの「友達」であるということを示すことができる。さらに、第1のユーザは、これを、第1のユーザのクライアント・システムのソーシャライズされたダッシュの対話要素を介して表示する。この表示に応答して、ソーシャルネットワーキング・システム760は、「友達要求」を第2のユーザに送信することができる。第2のユーザがその「友達要求」を承認した場合には、ソーシャルネットワーキング・システム760は、ソーシャルグラフ800内で第1のユーザのユーザ・ノード802を第2のユーザのユーザ・ノード802につなげるエッジ806を作成して、エッジ806をソーシャルグラフ情報としてデータ・ストア764のうちの1つまたは複数の中に格納することができる。図8の例においては、ソーシャルグラフ800は、ユーザ「A」のユーザ・ノード802と、ユーザ「B」のユーザ・ノード802との間における友達関係を示すエッジ806と、ユーザ「C」のユーザ・ノード802と、ユーザ「B」のユーザ・ノード802との間における友達関係を示すエッジとを含む。本開示は、特定のユーザ・ノード802同士をつなげる特定の属性を伴う特定のエッジ806を記述している、または示しているが、本開示は、ユーザ・ノード802同士をつなげる任意の適切な属性を伴う任意の適切なエッジ806を想定している。限定ではなく、例として、エッジ806は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係、フォロワー関係、ビジター関係、サブスクライバ関係、上下関係、互恵的関係、非互恵的関係、別の適切なタイプの関係、または複数のそのような関係を表すことができる。その上、本開示は一般に、ノード同士をつながっているものとして記述しているが、本開示はまた、ユーザ同士またはコンセプト同士をつながっているものとして記述している。本明細書においては、つながっているユーザ同士またはコンセプト同士への言及は、適切な場合には、1つまたは複数のエッジ806によってソーシャルグラフ800内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士を指すことができる。
【0093】
特定の実施形態においては、ユーザ・ノード802とコンセプト・ノード804との間におけるエッジ806は、ユーザ・ノード802に関連付けられているユーザによって、コンセプト・ノード804に関連付けられているコンセプトに対して実行された特定のアクションまたはアクティビティを表すことができる。限定ではなく、例として、図8において示されているように、ユーザは、コンセプトに対して「いいね!を表明すること」、「通うこと」、「プレイすること」、「聴くこと」、「料理すること」、「勤務すること」、または「観ること」を行った可能性があり、それらのそれぞれは、エッジタイプまたはサブタイプに対応することができる。コンセプト・ノード804に対応するコンセプトプロフィール・ページは、たとえば、選択可能な「チェックイン」アイコン(たとえば、クリック可能な「チェックイン」アイコンなど)、または選択可能な「いいね!」アイコンを含むことができる。別例として、クライアント・システムのソーシャライズされたダッシュは、選択可能な「チェックイン」アイコン(例えば、クリック可能な「チェックイン」アイコンなど)を含む。同様に、ユーザがこれらのアイコンをクリックした後に、ソーシャルネットワーキング・システム760は、それぞれのアクションに対応するユーザのアクションに応答して「お気に入り」エッジまたは「チェックイン」エッジを作成することができる。限定ではなく、別の例として、あるユーザ(例えば、ユーザ「C」)が、特定のアプリケーション(例えば、オンライン音楽アプリケーションであるSPOTIFY)を使用して特定の曲(例えば「ランブル・オン」)を聴く場合がある。このケースにおいては、ソーシャルネットワーキング・システム760は、そのユーザに対応するユーザ・ノード802と、その曲およびアプリケーションに対応するコンセプト・ノード804との間において、(図8に示されているような)「聴いた」エッジ806および「使用した」エッジを作成して、そのユーザがその曲を聴いてそのアプリケーションを使用したということを示すことができる。その上、ソーシャルネットワーキング・システム760は、その曲に対応するコンセプト・ノード804と、そのアプリケーションに対応するコンセプト・ノード804との間において、(図8に示されているような)「再生した」エッジ806を作成して、その特定の曲がその特定のアプリケーションによって再生されたということを示すことができる。このケースにおいては、「再生した」エッジ806は、外部アプリケーション(SPOTIFY)によって外部オーディオ・ファイル(「イマジン」という曲)に関して実行されたアクションに対応する。本開示は、ユーザ・ノード802とコンセプト・ノード804とをつなげる特定の属性を伴う特定のエッジ806について記述しているが、本開示は、ユーザ・ノード802とコンセプト・ノード804とをつなげる任意の適切な属性を伴う任意の適切なエッジ806を想定している。その上、本開示は、単一の関係を表すユーザ・ノード802とコンセプト・ノード804との間におけるエッジについて記述しているが、本開示は、1つまたは複数の関係を表すユーザ・ノード802とコンセプト・ノード804との間におけるエッジを想定している。限定ではなく、例として、エッジ806は、ユーザが特定のコンセプトに対して「いいね!」を表明しているということ、およびその特定のコンセプトを使用したということの両方を表すことができる。あるいは、別のエッジ806は、(図8において、ユーザ「E」を表すユーザ・ノード802と、「SPOTIFY」を表すコンセプト・ノード804との間において示されているような)ユーザ・ノード802とコンセプト・ノード804との間におけるそれぞれのタイプの関係(または、単一の関係が複数集まったもの)を表すことができる。
【0094】
特定の実施形態においては、ソーシャルネットワーキング・システム760は、ソーシャルグラフ800内でユーザ・ノード802とコンセプト・ノード804との間においてエッジ806を作成することができる。限定ではなく、例として、(たとえば、ユーザのクライアント・システム730によってホストされているウェブ・ブラウザまたは専用のアプリケーションを使用することなどによって)コンセプトプロフィール・ページを閲覧しているユーザは、「いいね!」アイコンをクリックまたは選択することにより、コンセプト・ノード804によって表されているコンセプトを自分が気に入っているということを示すことができ、その「いいね!」アイコンをクリックまたは選択することは、ユーザのクライアント・システム730に、そのコンセプトプロフィール・ページに関連付けられているそのコンセプトをそのユーザが気に入っているということを示すメッセージをソーシャルネットワーキング・システム760へ送信させることができる。そのメッセージに応答して、ソーシャルネットワーキング・システム760は、そのユーザとコンセプト・ノード804との間における「いいね!」エッジ806によって示されているように、そのユーザに関連付けられているユーザ・ノード802とコンセプト・ノード804との間においてエッジ806を作成することができる。特定の実施形態においては、ソーシャルネットワーキング・システム760は、エッジ806を1つまたは複数のデータ・ストア内に格納することができる。特定の実施形態においては、エッジ806は、特定のユーザ・アクションに応答してソーシャルネットワーキング・システム760によって自動的に形成されることが可能である。限定ではなく、例として、第1のユーザが、画像をアップロードすること、映画を観ること、または曲を聴くことを行った場合には、エッジ806は、第1のユーザに対応するユーザ・ノード802と、それらのコンセプトに対応するコンセプト・ノード804との間において形成されることが可能である。本開示は、特定の様式で特定のエッジ806を形成することについて記述しているが、本開示は、任意の適切な様式で任意の適切なエッジ806を形成することを想定している。
【0095】
図9は、例示的なコンピューティング・システム900を示している。特定の実施形態においては、1つまたは複数のコンピュータ・システム900が、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を実行する。特定の実施形態においては、1つまたは複数のコンピュータ・システム900が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、1つまたは複数のコンピュータ・システム900上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている1つもしくは複数の方法の1つもしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、1つまたは複数のコンピュータ・システム900の1つまたは複数の部分を含む。本明細書においては、コンピュータ・システムへの言及は、適切な場合には、コンピューティング・デバイスを包含することができる。その上、コンピュータ・システムへの言及は、適切な場合には、1つまたは複数のコンピュータ・システムを包含することができる。
【0096】
本開示は、任意の適切な数のコンピュータ・システム900を想定している。本開示は、任意の適切な物理的な形態を取るコンピュータ・システム900を想定している。限定ではなく、例として、コンピュータ・システム900は、組み込みコンピュータ・システム、システムオンチップ(SOC)、シングルボード・コンピュータ・システム(SBC)(たとえば、コンピュータオンモジュール(COM)もしくはシステムオンモジュール(SOM)など)、デスクトップ・コンピュータ・システム、ラップトップもしくはノートブック・コンピュータ・システム、インタラクティブ・キオスク、メインフレーム、コンピュータ・システムのメッシュ、モバイル電話、携帯情報端末(PDA)、サーバ、タブレット・コンピュータ・システム、またはこれらのうちの複数の組合せであることが可能である。適切な場合には、コンピュータ・システム900は、1つもしくは複数のコンピュータ・システム900を含むこと、単一型もしくは分散型であること、複数のロケーションにわたること、複数のマシンにわたること、複数のデータセンターにわたること、または、クラウド(1つもしくは複数のネットワーク内の1つもしくは複数のクラウド・コンポーネントを含むことができる)内に常駐することが可能である。適切な場合には、1つまたは複数のコンピュータ・システム900は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を、実質的な空間上のまたは時間上の制限を伴わずに実行することができる。限定ではなく、例として、1つまたは複数のコンピュータ・システム900は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程をリアル・タイムで、またはバッチ・モードで実行することができる。1つまたは複数のコンピュータ・システム900は、適切な場合には、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を別々の時点で、または別々のロケーションで実行することができる。
【0097】
特定の実施形態においては、コンピュータ・システム900は、プロセッサ902、メモリ904、ストレージ906、入力/出力(I/O)インターフェース908、通信インタフェース910、およびバス912を含む。本開示は、特定の数の特定のコンポーネントを特定の構成で有する特定のコンピュータ・システムについて記述し、示しているが、本開示は、任意の適切な数の任意の適切なコンポーネントを任意の適切な構成で有する任意の適切なコンピュータ・システムを想定している。
【0098】
特定の実施形態においては、プロセッサ902は、コンピュータ・プログラムを構成している命令などの命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ902は、内部レジスタ、内部キャッシュ、メモリ904、またはストレージ906から命令を取り出し(またはフェッチし)、それらの命令をデコードして実行し、次いで、1つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ904、またはストレージ906に書き込むことができる。特定の実施形態においては、プロセッサ902は、データ、命令、またはアドレスのための1つまたは複数の内部キャッシュを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ902を想定している。限定ではなく、例として、プロセッサ902は、1つまたは複数の命令キャッシュ、1つまたは複数のデータ・キャッシュ、および1つまたは複数の変換ルックアサイド・バッファ(TLB)を含むことができる。命令キャッシュ内の命令は、メモリ904またはストレージ906内の命令のコピーであることが可能であり、命令キャッシュは、プロセッサ902によるそれらの命令の取り出しをスピードアップすることができる。データ・キャッシュ内のデータは、プロセッサ902において実行される命令が機能する際に基づくメモリ904もしくはストレージ906内のデータのコピー、プロセッサ902において実行される後続の命令によるアクセスのための、もしくはメモリ904もしくはストレージ906への書き込みのためのプロセッサ902において実行された以前の命令の結果、またはその他の適切なデータであることが可能である。データ・キャッシュは、プロセッサ902による読み取りオペレーションまたは書き込みオペレーションをスピードアップすることができる。TLBは、プロセッサ902のための仮想アドレス変換をスピードアップすることができる。特定の実施形態においては、プロセッサ902は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ902を想定している。適切な場合には、プロセッサ902は、1つまたは複数の演算ロジック・ユニット(ALU)を含むこと、マルチコア・プロセッサであること、または1つもしくは複数のプロセッサ902を含むことが可能である。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
【0099】
特定の実施形態においては、メモリ904は、プロセッサ902が実行するための命令、またはプロセッサ902が機能する際に基づくデータを格納するためのメイン・メモリを含む。限定ではなく、例として、コンピュータ・システム900は、命令をストレージ906または別のソース(たとえば、別のコンピュータ・システム900など)からメモリ904にロードすることができる。次いでプロセッサ902は、命令をメモリ904から内部レジスタまたは内部キャッシュにロードすることができる。命令を実行するために、プロセッサ902は、命令を内部レジスタまたは内部キャッシュから取り出し、それらの命令をデコードすることができる。命令の実行中または実行後に、プロセッサ902は、1つまたは複数の結果(それらは、中間の結果または最終的な結果である場合がある)を内部レジスタまたは内部キャッシュに書き込むことができる。次いでプロセッサ902は、それらの結果のうちの1つまたは複数をメモリ904に書き込むことができる。特定の実施形態においては、プロセッサ902は、(ストレージ906またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ904内の命令のみを実行し、(ストレージ906またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ904内のデータ上でのみ機能する。1つまたは複数のメモリ・バス(それらはそれぞれ、アドレス・バスおよびデータ・バスを含むことができる)は、プロセッサ902をメモリ904に結合することができる。バス912は、以降で記述されているような1つまたは複数のメモリ・バスを含むことができる。特定の実施形態においては、1つまたは複数のメモリ管理ユニット(MMU)が、プロセッサ902とメモリ904との間に常駐し、プロセッサ902によって要求されるメモリ904へのアクセスを容易にする。特定の実施形態においては、メモリ904は、ランダム・アクセス・メモリ(RAM)を含む。このRAMは、適切な場合には、揮発性メモリであることが可能である。適切な場合には、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であることが可能である。その上、適切な場合には、このRAMは、シングルポートRAMまたはマルチポートRAMであることが可能である。本開示は、任意の適切なRAMを想定している。メモリ904は、適切な場合には、1つまたは複数のメモリ904を含むことができる。本開示は、特定のメモリについて記述し、示しているが、本開示は、任意の適切なメモリを想定している。
【0100】
特定の実施形態においては、ストレージ906は、データまたは命令のためのマス・ストレージを含む。限定ではなく、例として、ストレージ906は、ハード・ディスク・ドライブ(HDD)、フロッピー(登録商標)・ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサル・シリアル・バス(USB)ドライブ、またはこれらのうちの複数の組合せを含むことができる。ストレージ906は、適切な場合には、取り外し可能なまたは取り外し不能な(すなわち、固定された)媒体を含むことができる。ストレージ906は、適切な場合には、コンピュータ・システム900の内部または外部に存在することが可能である。特定の実施形態においては、ストレージ906は、不揮発性のソリッドステート・メモリである。特定の実施形態においては、ストレージ906は、読み取り専用メモリ(ROM)を含む。適切な場合には、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書替え可能ROM(EAROM)、またはフラッシュ・メモリ、またはこれらのうちの複数の組合せであることが可能である。本開示は、任意の適切な物理的な形態を取るマス・ストレージ906を想定している。ストレージ906は、適切な場合には、プロセッサ902とストレージ906との間における通信を容易にする1つまたは複数のストレージ・コントロール・ユニットを含むことができる。適切な場合には、ストレージ906は、1つまたは複数のストレージ906を含むことができる。本開示は、特定のストレージについて記述し、示しているが、本開示は、任意の適切なストレージを想定している。
【0101】
特定の実施形態においては、I/Oインタフェース908は、コンピュータ・システム900と1つまたは複数のI/Oデバイスとの間における通信のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータ・システム900は、適切な場合には、これらのI/Oデバイスのうちの1つまたは複数を含むことができる。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータ・システム900との間における通信を可能にすることができる。限定ではなく、例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチル・カメラ、スタイラス、タブレット、タッチ・スクリーン、トラックボール、ビデオ・カメラ、別の適切なI/Oデバイス、またはこれらのうちの複数の組合せを含むことができる。I/Oデバイスは、1つまたは複数のセンサを含むことができる。本開示は、任意の適切なI/Oデバイス、およびそれらのI/Oデバイスのための任意の適切なI/Oインタフェース908を想定している。適切な場合には、I/Oインタフェース908は、プロセッサ902がこれらのI/Oデバイスのうちの1つまたは複数を駆動することを可能にする1つまたは複数のデバイス・ドライバまたはソフトウェア・ドライバを含むことができる。I/Oインタフェース908は、適切な場合には、1つまたは複数のI/Oインタフェース908を含むことができる。本開示は、特定のI/Oインタフェースについて記述し、示しているが、本開示は、任意の適切なI/Oインタフェースを想定している。
【0102】
特定の実施形態においては、通信インタフェース910は、コンピュータ・システム900と、1つもしくは複数のその他のコンピュータ・システム900または1つもしくは複数のネットワークとの間における通信(たとえば、パケットベースの通信など)のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、通信インタフェース910は、イーサネット(登録商標)もしくはその他の有線ベースのネットワークと通信するためのネットワーク・インタフェース・コントローラ(NIC)もしくはネットワーク・アダプタ、またはWI−FIネットワークなどのワイヤレス・ネットワークと通信するためのワイヤレスNIC(WNIC)もしくはワイヤレス・アダプタを含むことができる。本開示は、任意の適切なネットワーク、およびそのネットワークのための任意の適切な通信インタフェース910を想定している。限定ではなく、例として、コンピュータ・システム900は、アド・ホック・ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、またはインターネットの1つまたは複数の部分、またはこれらのうちの複数の組合せと通信することができる。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、有線またはワイヤレスであることが可能である。例として、コンピュータ・システム900は、ワイヤレスPAN(WPAN)(たとえば、ブルートゥースWPANなど)、WI−FIネットワーク、WI−MAXネットワーク、セルラー電話ネットワーク(たとえば、グローバル・システム・フォー・モバイル・コミュニケーションズ(GSM(登録商標))ネットワークなど)、またはその他の適切なワイヤレス・ネットワーク、またはこれらのうちの複数の組合せと通信することができる。コンピュータ・システム900は、適切な場合には、これらのネットワークのうちの任意のネットワークのための任意の適切な通信インタフェース910を含むことができる。通信インタフェース910は、適切な場合には、1つまたは複数の通信インタフェース910を含むことができる。本開示は、特定の通信インタフェースについて記述し、示しているが、本開示は、任意の適切な通信インタフェースを想定している。
【0103】
特定の実施形態においては、バス912は、コンピュータ・システム900のコンポーネント同士を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、バス912は、アクセラレイティッド・グラフィックス・ポート(AGP)もしくはその他のグラフィックス・バス、エンハンスト・インダストリー・スタンダード・アーキテクチャ(EISA)バス、フロントサイド・バス(FSB)、ハイパートランスポート(HT)インターコネクト、インダストリー・スタンダード・アーキテクチャ(ISA)バス、インフィニバンド・インターコネクト、ローピンカウント(LPC)バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ(MCA)バス、ペリフェラル・コンポーネント・インターコネクト(PCI)バス、PCIエクスプレス(PCIe)バス、シリアル・アドバンスト・テクノロジー・アタッチメント(SATA)バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション・ローカル(VLB)バス、または別の適切なバス、またはこれらのうちの複数の組合せを含むことができる。バス912は、適切な場合には、1つまたは複数のバス912を含むことができる。本開示は、特定のバスについて記述し、示しているが、本開示は、任意の適切なバスまたはインターコネクトを想定している。
【0104】
本明細書においては、1つまたは複数の非一時的なコンピュータ可読記憶媒体は、適切な場合には、1つもしくは複数の半導体ベースのもしくはその他の集積回路(IC)(たとえば、フィールドプログラマブル・ゲート・アレイ(FPGA)もしくは特定用途向け集積回路(ASIC)など)、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスク・ドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)・ディスケット、フロッピー(登録商標)・ディスク・ドライブ(FDD)、磁気テープ、ソリッドステート・ドライブ(SSD)、RAMドライブ、セキュア・デジタル・カードもしくはドライブ、その他の任意の適切な非一時的なコンピュータ可読記憶媒体、またはこれらのうちの複数の組合せを含むことができる。非一時的なコンピュータ可読記憶媒体は、適切な場合には、揮発性、不揮発性、または揮発性と不揮発性の組合せであることが可能である。
【0105】
本明細書においては、「または(もしくは)」は、包含的であり、排他的ではない(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AまたはB」は、「A、B、またはその両方」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。その上、「および(ならびに)」は、包括的および個別的の両方である(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AおよびB」は、「まとめて、または個別に、AおよびB」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
【0106】
本開示の範囲は、当技術分野における標準的な技術者が理解するであろう、本明細書において記述されているまたは示されている例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において記述されているまたは示されている例示的な実施形態に限定されない。その上、本開示は、本明細書におけるそれぞれの実施形態を、特定のコンポーネント、要素、機能、オペレーション、または工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、機能、オペレーション、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。
図1
図2
図3
図4
図5A
図5B
図5C
図5D
図6
図7
図8
図9