JP6909204B2 - デバイス・クラウドの管理 - Google Patents

デバイス・クラウドの管理 Download PDF

Info

Publication number
JP6909204B2
JP6909204B2 JP2018505735A JP2018505735A JP6909204B2 JP 6909204 B2 JP6909204 B2 JP 6909204B2 JP 2018505735 A JP2018505735 A JP 2018505735A JP 2018505735 A JP2018505735 A JP 2018505735A JP 6909204 B2 JP6909204 B2 JP 6909204B2
Authority
JP
Japan
Prior art keywords
user
client device
certain embodiments
social networking
network
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
JP2018505735A
Other languages
English (en)
Other versions
JP2018530038A (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 JP2018530038A publication Critical patent/JP2018530038A/ja
Application granted granted Critical
Publication of JP6909204B2 publication Critical patent/JP6909204B2/ja
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/06Network architectures or network communication protocols for network security for supporting key management in a packet data network
    • H04L63/062Network architectures or network communication protocols for network security for supporting key management in a packet data network for key distribution, e.g. centrally by trusted party
    • 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
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F1/00Details not covered by groups G06F3/00 - G06F13/00 and G06F21/00
    • G06F1/26Power supply means, e.g. regulation thereof
    • G06F1/32Means for saving power
    • 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
    • G06Q10/00Administration; Management
    • G06Q10/10Office automation; Time management
    • 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
    • H04L12/00Data switching networks
    • H04L12/66Arrangements for connecting between networks having differing types of switching systems, e.g. gateways
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L41/00Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
    • H04L41/08Configuration management of networks or network elements
    • H04L41/0876Aspects of the degree of configuration automation
    • H04L41/0886Fully automatic configuration
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/08Network architectures or network communication protocols for network security for authentication of entities
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/53Network services using third party service providers
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L67/00Network arrangements or protocols for supporting network services or applications
    • H04L67/50Network services
    • H04L67/60Scheduling or organising the servicing of application requests, e.g. requests for application data transmissions using the analysis and optimisation of the required network resources
    • H04L67/63Routing a service request depending on the request content or context
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/08Access security
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/50Secure pairing of devices
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W12/00Security arrangements; Authentication; Protecting privacy or anonymity
    • H04W12/06Authentication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W4/00Services specially adapted for wireless communication networks; Facilities therefor
    • H04W4/80Services using short range communication, e.g. near-field communication [NFC], radio-frequency identification [RFID] or low energy communication
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W84/00Network topologies
    • H04W84/02Hierarchically pre-organised networks, e.g. paging networks, cellular networks, WLAN [Wireless Local Area Network] or WLL [Wireless Local Loop]
    • H04W84/10Small scale networks; Flat hierarchical networks
    • H04W84/12WLAN [Wireless Local Area Networks]
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04WWIRELESS COMMUNICATION NETWORKS
    • H04W88/00Devices specially adapted for wireless communication networks, e.g. terminals, base stations or access point devices
    • H04W88/16Gateway arrangements

Landscapes

  • Engineering & Computer Science (AREA)
  • Signal Processing (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Computer Security & Cryptography (AREA)
  • Business, Economics & Management (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Human Resources & Organizations (AREA)
  • Strategic Management (AREA)
  • Computer Hardware Design (AREA)
  • General Physics & Mathematics (AREA)
  • Physics & Mathematics (AREA)
  • Tourism & Hospitality (AREA)
  • Marketing (AREA)
  • Economics (AREA)
  • Entrepreneurship & Innovation (AREA)
  • General Business, Economics & Management (AREA)
  • General Health & Medical Sciences (AREA)
  • Quality & Reliability (AREA)
  • Operations Research (AREA)
  • Data Mining & Analysis (AREA)
  • Primary Health Care (AREA)
  • Health & Medical Sciences (AREA)
  • Automation & Control Theory (AREA)
  • Information Transfer Between Computers (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)
  • Management, Administration, Business Operations System, And Electronic Commerce (AREA)
  • Computer And Data Communications (AREA)

Description

本開示は一般に、オブジェクトがシステムとデータを交換できるようにするための電子機器とソフトウェアとが埋め込まれているオブジェクトのネットワークに関する。
ソーシャル・ネットワーキング・システム(ソーシャルネットワーキング・ウェブサイトを含むことができる)は、そのソーシャル・ネットワーキング・システムのユーザ(人または組織など)がそのソーシャル・ネットワーキング・システムと、およびそのソーシャル・ネットワーキング・システムを通じて互いに対話することを可能にすることができる。ソーシャル・ネットワーキング・システムは、ユーザからの入力を用いて、そのユーザに関連付けられているユーザ・プロフィールを作成して、ソーシャル・ネットワーキング・システム内に記憶することができる。ユーザ・プロフィールは、人口統計学的情報、通信チャネル情報、およびユーザの個人的な関心に関する情報を含むことができる。ソーシャル・ネットワーキング・システムは、ユーザからの入力を用いて、そのユーザと、ソーシャル・ネットワーキング・システムのその他のユーザとの関係のレコードを作成および記憶すること、ならびにサービス(たとえば、ウォール投稿、写真共有、イベント編成、メッセージング、ゲーム、または広告)を提供して、ユーザ同士の間における社会的な交流を容易にすることも可能である。
ソーシャル・ネットワーキング・システムは、そのサービスに関連したコンテンツまたはメッセージを、1つまたは複数のネットワークを通じて、ユーザのモバイルまたはその他のコンピューティング・デバイスへ送信することができる。ユーザは、自分のユーザ・プロフィールおよびソーシャル・ネットワーキング・システム内のその他のデータにアクセスするためにソフトウェア・アプリケーションを自分のモバイルまたはその他のコンピューティング・デバイス上にインストールすることもできる。ソーシャル・ネットワーキング・システムは、ユーザにつながっているその他のユーザの集約されたストーリのニュース・フィードなど、ユーザに表示するためのコンテンツ・オブジェクトのパーソナライズされたセットを生成することができる。
スマートフォン、タブレット・コンピュータ、またはラップトップ・コンピュータなどのモバイル・コンピューティング・デバイスは、GPS受信機、コンパス、ジャイロスコープ、または加速度計など、そのロケーション、方向または向きを決定するための機能を含むことができる。このようなデバイスは、BLUETOOTH(登録商標)(「BT」)通信、近距離無線通信(NFC)、もしくは赤外線(IR)通信などの無線通信、または無線ローカル・エリア・ネットワーク(WLAN)もしくはセルラー電話ネットワークとの通信のための機能も含むことができる。このようなデバイスは、1つまたは複数のカメラ、スキャナ、タッチ・スクリーン、マイクロフォン、またはスピーカも含むことができる。モバイル・コンピューティング・デバイスは、ゲーム、ウェブ・ブラウザ、またはソーシャル・ネットワーキング・アプリケーションなどのソフトウェア・アプリケーションも実行することができる。ソーシャル・ネットワーキング・アプリケーションを用いて、ユーザは、そのソーシャル・ネットワーク内の他のユーザと、つながり、通信し、また、情報を共有することができる。
ソーシャル・ネットワーキング・システムに関連付けられている例示的ネットワーク環境を示す図。 例示的ソーシャル・グラフを示す図。 デバイス・クラウドを管理するための例示的アーキテクチャを示す図。 アクセス・クレデンシャルを必要とする制限されたネットワークへの、新たなデバイスのアクセスを確立するためのデータ・フローの例示的相関図を示す図。 例示的コンピュータ・システムを示す図。
アクセス・クレデンシャルを必要とする制限されたネットワークに対する自動構成を可能にするために、本発明の実施形態は、制限されたネットワークにデバイスを自動的に接続するためのシステム、方法、およびコンピュータ可読媒体を含む。従来、WIFIネットワークなどのアクセス・クレデンシャルを必要とする制限されたネットワークにデバイスを接続するには、ユーザは、利用できるネットワークをスキャンし、利用できるネットワークへの接続要求をしてから、(プロンプトに応答して)ネットワークに接続するためのクレデンシャルを手動で入力することができる。本発明は、ネットワークに対するデバイスの自動構成を可能にする。
特定の実施形態においては、自動構成のための適切なシステムは、制限されたネットワークにアクセスするためのクレデンシャルをコネクテッド・デバイスに提供するゲートウェイ・デバイスを備えることができる。特定の実施形態においては、ゲートウェイ・デバイスは、任意のコネクテッド・デバイスが利用できるサービスをブロードキャストすることができる。各サービスは、固有識別子(UUID:unique identifier)によって定義することができ、異なる読み取り/書き込み特性を有することができる。特定の実施形態においては、コネクテッド・デバイスは、ゲートウェイ・デバイスに対して接続要求を送信することができる。ゲートウェイ・デバイスおよびコネクテッド・デバイスは、接続を確立することができる。
デバイスが接続を確立したら、ゲートウェイ・デバイスは、制限されたネットワークへの接続をコネクテッド・デバイスが認可されているかどうかを決定することができる。特定の実施形態においては、ゲートウェイ・デバイスは、コネクテッド・デバイスに関する識別情報を含む認可検証要求をバックエンド・システムに送信し、そのバックエンド・システムはさらに、制限されたネットワークへのアクセスを、識別されたデバイスに対して付与するべきかどうかを決定し、次いで、ゲートウェイ・デバイスに応答を返すことができる。さらなる実施形態においては、ゲートウェイ・デバイスは、1つまたは複数のコネクテッド・デバイスに関して以前に受信してキャッシュした認可情報を有することができ、そのコネクテッド・デバイスうちの1つが要求側のデバイスである可能性がある。ゲートウェイ・デバイスによって、制限されたネットワークへのアクセスをコネクテッド・デバイスが認可されたら、ゲートウェイ・デバイスは、制限されたネットワークにアクセスするためのクレデンシャルをコネクテッド・デバイスに送信することができる。コネクテッド・デバイスは、制限されたネットワークに対して自動的に構成することができる。
以下に開示する実施形態は単なる例であり、本開示の範囲はこれに限定されるものではない。特定の実施形態は、上記開示した実施形態のコンポーネント、要素、特徴、機能、動作、または工程の全部もしくは一部を含んでもよく、または含まなくてもよい。本発明による実施形態は、方法、記憶媒体、システムおよびコンピュータ・プログラム製品に向けられた添付の請求項で特に開示され、ある請求項のカテゴリ、たとえば方法、で述べられた任意の特徴は、別の請求項のカテゴリ、たとえばシステム、でも同様に請求されることができる。添付の請求項の従属性または後方参照は、形式上の理由でのみ選択されている。しかし、任意の先行請求項への意図的な後方参照から生じる任意の主題(特に多項従属)は同様に請求されることができるので、添付の請求項で選ばれた従属性に関係なく、請求項およびその特徴の任意の組合せが開示され、請求されることができる。請求することのできる主題は、添付の請求項に記載される特徴の組合せだけでなく、請求項の特徴の任意の他の組合せも含み、請求項で述べられる各特徴は請求項の任意の他の特徴または他の特徴の組合せと組み合わせることができる。さらに、本明細書で記述または示される実施形態および特徴のいずれも、個別の請求項で、および/または、本明細書で記述もしくは示される任意の実施形態もしくは特徴または添付の請求項の特徴のいずれかとの任意の組合せで請求することができる。
特定の実施形態は、メッセンジャーを通じて通信するユーザが、ユーザのスマート・デバイスを制御、管理、または起動することを可能にする。さらなる実施形態では、ユーザがユーザのスマート・デバイスを制御、管理または起動するときに、自然言語を使用できるように、人間のような知能をメッセンジャー内に実装することができる。特定の実施形態では、ユーザが特定の照明を点灯するよう頼むと、メッセンジャーは、厳密にどの照明を点灯しなければならないのかを伝えられる必要なく、周囲の因子に基づいてどの照明を点灯するべきかを推測することができる。たとえば、活動のために台所の照明が点灯されていることをメッセンジャーがユーザに通知すると、ユーザが消灯したかったのが台所の照明であると示さなくても、ユーザは「照明を消して」と答えるだけでよい。メッセンジャーは、ユーザのメッセージを受信したことに応答して、台所の照明を消灯すべきだと分かることができる。
特定の実施形態においては、ユーザは、メッセージング・アプリケーションの入力により、コネクテッド・デバイスにクエリを送り、プログラミングし、および管理する能力を有することができる。限定ではなく、例として、メッセージング・インフラストラクチャは、コネクテッド・デバイスのコンテキストの中で自然言語のコマンド・メッセージを理解する能力を有することができる。特定の実施形態では、バックエンド・システムは、自然言語のコマンド・メッセージのテキストを構文解析することができる。バックエンド・システムは、過去のデバイスの対話からコンテキストを判断することができる。
特定の実施形態においては、ユーザは、メッセージング・アプリケーションを通じてコネクテッド・デバイスへの一時的なアクセスを得ることができる。限定ではなく、例として、ユーザは、他のユーザとコネクテッド・デバイスとを識別する自然言語メッセージを送信することにより、コネクテッド・デバイスへのアクセスを付与することができる。特定の実施形態では、バックエンド・システムは、2名のユーザ間のアフィニティ・スコアが所定の閾値を満たしていると決定することができ、その場合、他方のユーザは、コネクテッド・デバイスへの一時的なアクセスを認められることができる。
以下に開示する実施形態は単なる例であり、本開示の範囲はこれに限定されるものではない。特定の実施形態は、上記開示した実施形態のコンポーネント、要素、特徴、機能、動作、または工程の全部もしくは一部を含んでもよく、または含まなくてもよい。本発明による実施形態は、方法、記憶媒体、システムおよびコンピュータ・プログラム製品に向けられた添付の請求項で特に開示され、ある請求項のカテゴリ、たとえば方法、で述べられた任意の特徴は、別の請求項のカテゴリ、たとえばシステム、でも同様に請求されることができる。添付の請求項の従属性または後方参照は、形式上の理由でのみ選択されている。しかし、任意の先行請求項への意図的な後方参照から生じる任意の主題(特に多項従属)は同様に請求されることができるので、添付の請求項で選ばれた従属性に関係なく、請求項およびその特徴の任意の組合せが開示され、請求されることができる。請求することのできる主題は、添付の請求項に記載される特徴の組合せだけでなく、請求項の特徴の任意の他の組合せも含み、請求項で述べられる各特徴は請求項の任意の他の特徴または他の特徴の組合せと組み合わせることができる。さらに、本明細書で記述または示される実施形態および特徴のいずれも、個別の請求項で、および/または、本明細書で記述もしくは示される任意の実施形態もしくは特徴または添付の請求項の特徴のいずれかとの任意の組合せで請求することができる。
図1は、ソーシャル・ネットワーキング・システムに関連付けられている例示的なネットワーク環境100を示している。ネットワーク環境100は、ネットワーク110によって互いにつながっているクライアント・システム130、ソーシャル・ネットワーキング・システム160、およびサードパーティ・システム170を含む。図1は、クライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110の特定の構成を示しているが、本開示は、クライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110の任意の適切な構成を想定している。限定ではなく、例として、クライアント・システム130、ソーシャル・ネットワーキング・システム160、およびサードパーティ・システム170のうちの複数は、ネットワーク110を迂回して、互いに直接つながることが可能である。別の例として、クライアント・システム130、ソーシャル・ネットワーキング・システム160、およびサードパーティ・システム170のうちの複数は、物理的にまたは論理的に、全体としてまたは部分的に互いに同一場所に配置されることが可能である。その上、図1は、特定の数のクライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を示しているが、本開示は、任意の適切な数のクライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を想定している。限定ではなく、例として、ネットワーク環境100は、複数のクライアント・システム130、ソーシャル・ネットワーキング・システム160、サードパーティ・システム170、およびネットワーク110を含むことができる。
本開示は、任意の適切なネットワーク110を想定している。限定ではなく、例として、ネットワーク110の1つまたは複数の部分は、アド・ホック・ネットワーク、イントラネット、エクストラネット、仮想プライベート・ネットワーク(VPN)、ローカル・エリア・ネットワーク(LAN)、無線LAN(WLAN)、ワイド・エリア・ネットワーク(WAN)、無線WAN(WWAN)、メトロポリタン・エリア・ネットワーク(MAN)、インターネットの一部分、公衆交換電話網(PSTN)の一部分、セルラー電話ネットワーク、またはこれらのうちの複数の組合せを含むことができる。ネットワーク110は、1つまたは複数のネットワーク110を含むことができる。
リンク150は、クライアント・システム130、ソーシャル・ネットワーキング・システム160、およびサードパーティ・システム170を通信ネットワーク110に、または互いに接続することができる。本開示は、任意の適切なリンク150を想定している。特定の実施形態においては、1つまたは複数のリンク150は、1つもしくは複数の有線リンク(たとえば、デジタル・サブスクライバ・ライン(DSL)もしくはデータ・オーバ・ケーブル・サービス・インタフェース仕様(DOCSIS)など)、無線リンク(たとえば、Wi−Fiもしくはワールドワイド・インターオペラビリティー・フォー・マイクロウェーブ・アクセス(WiMAX)など)、または光リンク(たとえば、同期光ネットワーク(SONET)もしくは同期デジタル階層(SDH)など)を含む。特定の実施形態においては、1つまたは複数のリンク150はそれぞれ、アド・ホック・ネットワーク、イントラネット、エクストラネット、VPN、LAN、WLAN、WAN、WWAN、MAN、インターネットの一部分、PSTNの一部分、セルラー・テクノロジーベースのネットワーク、衛星通信テクノロジーベースのネットワーク、別のリンク150、または複数のそのようなリンク150の組合せを含む。リンク150は、ネットワーク環境100の全体を通じて必ずしも同じである必要はない。1つまたは複数の第1のリンク150は、1つまたは複数の点において1つまたは複数の第2のリンク150とは異なることが可能である。
特定の実施形態においては、クライアント・システム130は、クライアント・システム130によって実装またはサポートされる適切な機能を実行することができる、ハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含む電子デバイスであることが可能である。限定ではなく、例として、クライアント・システム130は、デスクトップ・コンピュータ、ノートブック・コンピュータもしくはラップトップ・コンピュータ、ネットブック、タブレット・コンピュータなどのコンピュータ・システム、eブック・リーダ、GPSデバイス、カメラ、携帯情報端末(PDA)、ハンドヘルド電子デバイス、セルラー電話、スマートフォン、強化された/仮想現実デバイス、その他の適切な電子デバイス、またはそれらの任意の適切な組合せを含むことができる。本開示は、任意の適切なクライアント・システム130を想定している。クライアント・システム130は、クライアント・システム130のネットワーク・ユーザがネットワーク110にアクセスすることを可能にすることができる。クライアント・システム130は、自分のユーザがその他のクライアント・システム130のその他のユーザと通信することを可能にすることができる。
特定の実施形態においては、クライアント130は、MICROSOFT INTERNET EXPLORER、GOOGLE CHROME、またはMOZILLA FIREFOXなどのウェブ・ブラウザ132を含むことができ、1つまたは複数のアドオン、プラグイン、またはTOOLBARもしくはYAHOO TOOLBARなどのその他の拡張を有することができる。クライアント・システム130のユーザは、ウェブ・ブラウザ132を特定のサーバ(サーバ162、またはサードパーティ・システム170に関連付けられているサーバなど)へ導くユニフォーム・リソース・ロケータ(URL)またはその他のアドレスを入力することができ、ウェブ・ブラウザ132は、ハイパー・テキスト転送プロトコル(HTTP)要求を生成して、そのHTTP要求をサーバに通信することができる。サーバは、そのHTTP要求を受け入れて、そのHTTP要求に応答して1つまたは複数のハイパー・テキスト・マークアップ言語(HTML)ファイルをクライアント・システム130に通信することができる。クライアント・システム130は、ユーザに提示するためにサーバからのHTMLファイルに基づいてウェブページをレンダリングすることができる。本開示は、任意の適切なウェブページ・ファイルを想定している。限定ではなく、例として、ウェブページは、特定のニーズに従って、HTMLファイル、拡張可能ハイパー・テキスト・マークアップ言語(XHTML)ファイル、または拡張可能マークアップ言語(XML)ファイルからレンダリングすることができる。そのようなページは、限定ではなく、例として、JAVASCRIPT(登録商標)、JAVA(登録商標)、MICROSOFT SILVERLIGHTで書かれたスクリプトなどのスクリプト、AJAX(Asynchronous JAVASCRIPT(登録商標)and XML)などのマークアップ言語とスクリプトの組合せなどを実行することもできる。本明細書においては、ウェブページへの参照は、適切な場合には、(そのウェブページをレンダリングするためにブラウザが使用することができる)1つまたは複数の対応するウェブページ・ファイルを含み、その逆もまた同様である。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、オンライン・ソーシャル・ネットワークをホストすることができるネットワークアドレス可能なコンピューティング・システムであることが可能である。ソーシャル・ネットワーキング・システム160は、たとえば、ユーザプロフィール・データ、コンセプトプロフィール・データ、ソーシャル・グラフ情報、またはオンライン・ソーシャル・ネットワークに関連したその他の適切なデータなどのソーシャルネットワーキング・データを生成すること、記憶すること、受け取ること、および送信することが可能である。ソーシャル・ネットワーキング・システム160は、ネットワーク環境100のその他のコンポーネントによって直接、またはネットワーク110を通じてアクセスされることが可能である。限定するものではないが例として、クライアント・システム130は、直接的またはネットワーク110を通じて、ウェブ・ブラウザ132またはソーシャル・ネットワーキング・システム160に関連付けられているネイティブ・アプリケーション(たとえば、モバイル・ソーシャル・ネットワーキング・アプリケーション、メッセージング・アプリケーション、別の適切なアプリケーション、またはこれらの組み合わせ)を使用してソーシャル・ネットワーキング・システム160にアクセスしてもよい。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、1つまたは複数のサーバ162を含むことができる。それぞれのサーバ162は、単一のサーバ、または複数のコンピュータもしくは複数のデータセンターにわたる分散サーバであることが可能である。サーバ162は、限定ではなく、例として、ウェブ・サーバ、ニュース・サーバ、メール・サーバ、メッセージ・サーバ、広告サーバ、ファイル・サーバ、アプリケーション・サーバ、Exchangeサーバ、データベース・サーバ、プロキシ・サーバ、本明細書において記述されている機能もしくはプロセスを実行するのに適している別のサーバ、またはそれらの任意の組合せなど、さまざまなタイプのものであることが可能である。特定の実施形態においては、それぞれのサーバ162は、サーバ162によって実装またはサポートされる適切な機能を実行するためのハードウェア、ソフトウェア、もしくは組み込みロジック・コンポーネント、または複数のそのようなコンポーネントの組合せを含むことができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、1つまたは複数のデータ・ストア164を含むことができる。データ・ストア164は、さまざまなタイプの情報を記憶するために使用されることが可能である。特定の実施形態においては、データ・ストア164内に記憶されている情報は、特定のデータ構造に従って編成されることが可能である。特定の実施形態においては、それぞれのデータ・ストア164は、リレーショナル・データベースであることが可能である。特定の実施形態は、クライアント・システム130、ソーシャル・ネットワーキング・システム160、またはサードパーティ・システム170が、データ・ストア164内に記憶されている情報を管理すること、取り出すこと、修正すること、追加すること、または削除することを可能にするインタフェースを提供することができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、1つまたは複数のソーシャル・グラフを1つまたは複数のデータ・ストア164内に記憶することができる。特定の実施形態においては、ソーシャル・グラフは、複数のノード(複数のユーザ・ノード(それぞれが、特定のユーザに対応している)、または複数のコンセプト・ノード(それぞれが、特定のコンセプトに対応している)を含むことができる)と、ノード同士をつなげる複数のエッジとを含むことができる。ソーシャル・ネットワーキング・システム160は、オンライン・ソーシャル・ネットワークのユーザに、その他のユーザと通信および対話する能力を提供することができる。特定の実施形態においては、ユーザたちは、ソーシャル・ネットワーキング・システム160を通じてオンライン・ソーシャル・ネットワークに参加し、次いで、自分たちがつながりたいと望むソーシャル・ネットワーキング・システム160のその他の複数のユーザにつながり(すなわち、関係)を付加することができる。本明細書においては、「友達」という用語は、ユーザがソーシャル・ネットワーキング・システム160を通じて、つながり、関連付け、または関係を形成しているソーシャル・ネットワーキング・システム160のその他の任意のユーザを示すことができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、ソーシャル・ネットワーキング・システム160によってサポートされるさまざまなタイプのアイテムまたはオブジェクトに関してアクションを取る能力をユーザに提供することができる。限定ではなく、例として、それらのアイテムおよびオブジェクトは、ソーシャル・ネットワーキング・システム160のユーザが属することが可能であるグループもしくはソーシャル・ネットワーク、ユーザが関心を抱く可能性があるイベントもしくはカレンダー・エントリー、ユーザが使用することができるコンピュータベースのアプリケーション、ユーザがサービスを通じてアイテムを購入もしくは販売することを可能にするトランザクション、ユーザが実行することができる広告との対話、またはその他の適切なアイテムもしくはオブジェクトを含むことができる。ユーザは、ソーシャル・ネットワーキング・システム160において、またはサードパーティ・システム170の外部システム(ソーシャル・ネットワーキング・システム160とは別個のものであって、ネットワーク110を通じてソーシャル・ネットワーキング・システム160に結合されている)によって表されることが可能である任意のものと対話することができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、さまざまなエンティティ同士をリンクできることが可能である。限定ではなく、例として、ソーシャル・ネットワーキング・システム160は、ユーザたちが互いに対話すること、ならびにサードパーティ・システム170もしくはその他のエンティティからのコンテンツを受け取ることを可能にすることができ、またはユーザたちがアプリケーション・プログラミング・インタフェース(API)もしくはその他の通信チャネルを通じてこれらのエンティティと対話することを可能にすることができる。
特定の実施形態においては、サードパーティ・システム170は、1つもしくは複数のタイプのサーバ、1つもしくは複数のデータ・ストア、1つもしくは複数のインタフェース(APIを含むが、それには限定されない)、1つもしくは複数のウェブ・サービス、1つもしくは複数のコンテンツ・ソース、1つもしくは複数のネットワーク、またはその他の任意の適切なコンポーネントを含むことができる。サードパーティ・システム170は、ソーシャル・ネットワーキング・システム160を運営しているエンティティとは異なるエンティティによって運営されることが可能である。しかしながら、特定の実施形態においては、ソーシャル・ネットワーキング・システム160およびサードパーティ・システム170は、ソーシャル・ネットワーキング・システム160またはサードパーティ・システム170のユーザにソーシャル・ネットワーキング・サービスを提供するために互いに連携して機能することができる。この意味において、ソーシャル・ネットワーキング・システム160は、サードパーティ・システム170などのその他のシステムがインターネットを通じてソーシャル・ネットワーキング・サービスおよび機能をユーザに提供するために使用することができるプラットフォーム、またはバックボーンを提供することができる。
特定の実施形態においては、サードパーティ・システム170は、サードパーティ・コンテンツ・オブジェクト・プロバイダを含むことができる。サードパーティ・コンテンツ・オブジェクト・プロバイダは、コンテンツ・オブジェクトの1つまたは複数のソースを含むことができ、それらのソースは、クライアント・システム130に通信されることが可能である。限定ではなく、例として、コンテンツ・オブジェクトは、ユーザにとって関心がある物またはアクティビティに関する情報、たとえば、映画の開始時刻、映画のレビュー、レストランのレビュー、レストランのメニュー、製品の情報およびレビュー、またはその他の適切な情報などを含むことができる。限定ではなく、別の例として、コンテンツ・オブジェクトは、インセンティブ・コンテンツ・オブジェクト、たとえば、クーポン、ディスカウント・チケット、ギフト券、またはその他の適切なインセンティブ・オブジェクトを含むことができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160はまた、ユーザによって生成されたコンテンツ・オブジェクトを含み、それらのコンテンツ・オブジェクトは、ソーシャル・ネットワーキング・システム160とのユーザの対話を高めることができる。ユーザによって生成されたコンテンツは、ユーザがソーシャル・ネットワーキング・システム160に付加、アップロード、送信、または「投稿」することができる任意のものを含むことができる。限定ではなく、例として、ユーザは、クライアント・システム130からソーシャル・ネットワーキング・システム160へ投稿を通信する。投稿は、ステータス更新もしくはその他のテキスト・データ、ロケーション情報、写真、映像、リンク、音楽、またはその他の類似したデータもしくはメディアなどのデータを含むことができる。コンテンツは、ニュース・フィードまたはストリームなどの「通信チャネル」を通じてサードパーティによってソーシャル・ネットワーキング・システム160に付加されることも可能である。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、さまざまなサーバ、サブシステム、プログラム、モジュール、ログ、およびデータ・ストアを含むことができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、ウェブ・サーバ、アクション・ロガー、API要求サーバ、関連性およびランキング・エンジン、コンテンツ・オブジェクト分類子、通知コントローラ、アクション・ログ、サードパーティ・コンテンツ・オブジェクト露出ログ、推測モジュール、認可/プライバシ・サーバ、検索モジュール、広告ターゲティング・モジュール、ユーザインタフェース・モジュール、ユーザプロフィール・ストア、つながりストア、サードパーティ・コンテンツ・ストア、またはロケーション・ストアのうちの1つまたは複数を含むことができる。ソーシャル・ネットワーキング・システム160は、適切なコンポーネント、たとえば、ネットワーク・インタフェース、セキュリティー・メカニズム、ロード・バランサ、フェイルオーバ・サーバ、管理およびネットワークオペレーション・コンソール、その他の適切なコンポーネント、またはそれらの任意の適切な組合せを含むこともできる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、ユーザ・プロフィールを記憶するための1つまたは複数のユーザプロフィール・ストアを含むことができる。ユーザ・プロフィールは、たとえば、経歴情報、人口統計学的情報、挙動情報、ソーシャルな情報、またはその他のタイプの記述的情報、たとえば、職業経験、学歴、趣味もしくは好み、関心、親近感、またはロケーションを含むことができる。関心情報は、1つまたは複数のカテゴリに関連した関心を含むことができる。カテゴリは、一般的または具体的であることが可能である。限定ではなく、例として、ユーザが、あるブランドの靴に関する記事に対して「いいね!」の表明をした場合には、カテゴリは、そのブランド、または「靴」もしくは「衣類」という一般的なカテゴリであることが可能である。ユーザに関するつながり情報を記憶するために、つながりストアが使用されることが可能である。つながり情報は、類似のもしくは共通の職業経験、グループ・メンバーシップ、趣味、学歴を有しているか、または何らかの形で関連しているか、もしくは共通の属性を共有しているユーザ同士を示すことができる。つながり情報は、さまざまなユーザおよびコンテンツ(内部および外部の両方)の間におけるユーザ定義のつながりを含むこともできる。ネットワーク110を通じてソーシャル・ネットワーキング・システム160を1つもしくは複数のクライアント・システム130または1つもしくは複数のサードパーティ・システム170にリンクさせるために、ウェブ・サーバが使用されることが可能である。ウェブ・サーバは、ソーシャル・ネットワーキング・システム160と、1つまたは複数のクライアント・システム130との間においてメッセージを受け取って回送するためにメール・サーバまたはその他のメッセージング機能を含むことができる。API要求サーバは、サードパーティ・システム170が、1つまたは複数のAPIを呼び出すことによってソーシャル・ネットワーキング・システム160からの情報にアクセスすることを可能にすることができる。ソーシャル・ネットワーキング・システム160の上のまたは外のユーザのアクションに関してウェブ・サーバから通信を受け取るために、アクション・ロガーが使用されることが可能である。アクション・ログとともに、サードパーティコンテンツ・オブジェクトへのユーザの露出についてのサードパーティコンテンツオブジェクト・ログが保持されることが可能である。通知コントローラは、コンテンツ・オブジェクトに関する情報をクライアント・システム130に提供することができる。情報は、通知としてクライアント・システム130へプッシュされることが可能であり、または情報は、クライアント・システム130から受け取られた要求に応答してクライアント・システム130からプルされることが可能である。ソーシャル・ネットワーキング・システム160のユーザの1つまたは複数のプライバシ設定を実装するために、認可サーバが使用されることが可能である。ユーザのプライバシ設定は、ユーザに関連付けられている特定の情報がどのように共有されることが可能であるかを特定する。認可サーバは、ユーザが、たとえば、適切なプライバシ設定を設定することなどによって、自分のアクションをソーシャル・ネットワーキング・システム160によって記録されること、またはその他のシステム(たとえば、サードパーティ・システム170)と共有されることのオプト・インまたはオプト・アウトを行うことを可能にすることができる。サードパーティ・システム170などのサードパーティから受け取られたコンテンツ・オブジェクトを記憶するために、サードパーティコンテンツオブジェクト・ストアが使用されることが可能である。ユーザに関連付けられているクライアント・システム130から受け取られたロケーション情報を記憶するために、ロケーション・ストアが使用されることが可能である。広告価格設定モジュールが、ソーシャルな情報、現在時刻、ロケーション情報、またはその他の適切な情報を組み合わせて、関連がある広告を、通知の形式でユーザに提供することができる。
図2は、例示的なソーシャル・グラフ200を示している。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、1つまたは複数のソーシャル・グラフ200を1つまたは複数のデータ・ストア内に記憶することができる。特定の実施形態においては、ソーシャル・グラフ200は、複数のノード(複数のユーザ・ノード202、または複数のコンセプト・ノード204を含むことができる)と、ノード同士をつなげる複数のエッジ206とを含むことができる。図2において示されている例示的なソーシャル・グラフ200は、教示上の目的から、二次元の視覚的マップ表示で示されている。特定の実施形態においては、ソーシャル・ネットワーキング・システム160、クライアント・システム130、またはサードパーティ・システム170は、適切なアプリケーションに関してソーシャル・グラフ200および関連したソーシャル・グラフ情報にアクセスすることができる。ソーシャル・グラフ200のノードおよびエッジは、データ・オブジェクトとして、たとえば(ソーシャル・グラフ・データベースなどの)データ・ストア内に記憶されることが可能である。そのようなデータ・ストアは、ソーシャル・グラフ200のノードまたはエッジの1つまたは複数の検索可能なまたはクエリ可能なインデックスを含むことができる。
特定の実施形態においては、ユーザ・ノード202は、ソーシャル・ネットワーキング・システム160のユーザに対応することができる。限定ではなく、例として、ユーザは、ソーシャル・ネットワーキング・システム160と、またはソーシャル・ネットワーキング・システム160を通じて対話または通信する個人(人間のユーザ)、エンティティ(たとえば、企業、ビジネス、もしくはサードパーティ・アプリケーション)、または(たとえば、個人もしくはエンティティの)グループであることが可能である。特定の実施形態においては、あるユーザがソーシャル・ネットワーキング・システム160とのアカウントに登録した場合には、ソーシャル・ネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202を作成し、そのユーザ・ノード202を1つまたは複数のデータ・ストア内に記憶することができる。本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、登録されているユーザ、および登録されているユーザに関連付けられているユーザ・ノード202を示すことができる。追加として、または代替として、本明細書において記述されているユーザおよびユーザ・ノード202は、適切な場合には、ソーシャル・ネットワーキング・システム160に登録されていないユーザを示すことができる。特定の実施形態においては、ユーザ・ノード202は、ユーザによって提供された情報、またはソーシャル・ネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、ユーザは、自分の名前、プロフィール画像、連絡先情報、生年月日、性別、婚姻状況、家族状況、勤務先、学歴、好み、関心、またはその他の人口統計学的情報を提供することができる。特定の実施形態においては、ユーザ・ノード202は、ユーザに関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、ユーザ・ノード202は、1つまたは複数のウェブページに対応することができる。
特定の実施形態においては、コンセプト・ノード204は、コンセプトに対応することができる。限定ではなく、例として、コンセプトは、場所(たとえば、映画館、レストラン、ランドマーク、もしくは都市など)、ウェブサイト(たとえば、ソーシャルネットワーク・システム160に関連付けられているウェブサイト、もしくはウェブアプリケーション・サーバに関連付けられているサードパーティ・ウェブサイトなど)、エンティティ(たとえば、人、企業、グループ、スポーツ・チーム、もしくは有名人など)、ソーシャル・ネットワーキング・システム160内に、もしくはウェブアプリケーション・サーバなどの外部サーバ上に配置されることが可能であるリソース(たとえば、オーディオ・ファイル、営業ファイル、デジタル写真、テキスト・ファイル、構造化文書、もしくはアプリケーションなど)、物的もしくは知的財産(たとえば、彫塑、絵画、映画、ゲーム、曲、着想、写真、もしくは執筆作品など)、ゲーム、アクティビティ、着想もしくは理論、強化された/仮想現実環境におけるオブジェクト、別の適切なコンセプト、または複数のそのようなコンセプトに対応することができる。コンセプト・ノード204は、ユーザによって提供されたコンセプトの情報、またはソーシャル・ネットワーキング・システム160を含むさまざまなシステムによって収集された情報に関連付けられることが可能である。限定ではなく、例として、コンセプトの情報は、名前もしくはタイトル、1つもしくは複数のイメージ(たとえば、本の表紙のイメージ)、ロケーション(たとえば、住所もしくは地理的ロケーション)、(URLに関連付けられることが可能である)ウェブサイト、連絡先情報(たとえば、電話番号もしくはEメール・アドレス)、その他の適切なコンセプト情報、またはそのような情報の任意の適切な組合せを含むことができる。特定の実施形態においては、コンセプト・ノード204は、コンセプト・ノード204に関連付けられている情報に対応する1つまたは複数のデータ・オブジェクトに関連付けられることが可能である。特定の実施形態においては、コンセプト・ノード204は、1つまたは複数のウェブページに対応することができる。
特定の実施形態においては、ソーシャル・グラフ200内のノードは、ウェブページ(「プロフィール・ページ」と呼ばれる場合もある)を表すこと、またはウェブページによって表されることが可能である。プロフィール・ページは、ソーシャル・ネットワーキング・システム160によってホストされること、またはソーシャル・ネットワーキング・システム160にとってアクセス可能であることが可能である。プロフィール・ページは、サードパーティ・サーバ170に関連付けられているサードパーティ・ウェブサイト上にホストされることも可能である。限定ではなく、例として、特定の外部ウェブページに対応するプロフィール・ページは、その特定の外部ウェブページであることが可能であり、そのプロフィール・ページは、特定のコンセプト・ノード204に対応することができる。プロフィール・ページは、その他のユーザのうちのすべてまたは選択されたサブセットによって閲覧できることが可能である。限定ではなく、例として、ユーザ・ノード202は、対応するユーザ・プロフィール・ページを有することができ、そのユーザ・プロフィール・ページにおいては、対応するユーザが、コンテンツを付加すること、言明を行うこと、またはその他の形で自分自身を表現することが可能である。限定ではなく、別の例として、コンセプト・ノード204は、対応するコンセプトプロフィール・ページを有することができ、そのコンセプトプロフィール・ページにおいては、1人または複数のユーザが、特にコンセプト・ノード204に対応するコンセプトに関連して、コンテンツを付加すること、言明を行うこと、または自分自身を表現することが可能である。
特定の実施形態においては、コンセプト・ノード204は、サードパーティ・システム170によってホストされているサードパーティ・ウェブページまたはリソースを表すことができる。サードパーティ・ウェブページまたはリソースは、数ある要素の中でも、コンテンツ、選択可能なもしくはその他のアイコン、または、アクションもしくはアクティビティを表す(たとえば、JAVASCRIPT(登録商標)、AJAX、もしくはPHPコードで実装されることが可能である)その他の対話可能なオブジェクトを含むことができる。限定ではなく、例として、サードパーティ・ウェブページは、「いいね!」、「チェックイン」、「食べる」、「推奨する」、または別の適切なアクションもしくはアクティビティなどの選択可能なアイコンを含むことができる。サードパーティ・ウェブページを閲覧しているユーザは、それらのアイコンのうちの1つ(たとえば、「チェックイン」)を選択することによってアクションを実行して、クライアント・システム130に、そのユーザのアクションを示すメッセージをソーシャル・ネットワーキング・システム160へ送信させることができる。そのメッセージに応答して、ソーシャル・ネットワーキング・システム160は、ユーザに対応するユーザ・ノード202と、サードパーティ・ウェブページまたはリソースに対応するコンセプト・ノード204との間においてエッジ(たとえば、「チェックイン」のタイプのエッジ)を作成して、エッジ206を1つまたは複数のデータ・ストア内に記憶することができる。
特定の実施形態においては、ソーシャル・グラフ200内の1対のノードが、1つまたは複数のエッジ206によって互いにつながることが可能である。1対のノードをつなげるエッジ206は、それらの1対のノードの間における関係を表すことができる。特定の実施形態においては、エッジ206は、1対のノードの間における関係に対応する1つまたは複数のデータ・オブジェクトまたは属性を含むことまたは表すことが可能である。限定ではなく、例として、第1のユーザは、第2のユーザが第1のユーザの「友達」であるということを示すことができる。この表示に応答して、ソーシャル・ネットワーキング・システム160は、「友達要求」を第2のユーザに送信することができる。第2のユーザがその「友達要求」を承認した場合には、ソーシャル・ネットワーキング・システム160は、ソーシャル・グラフ200内で第1のユーザのユーザ・ノード202を第2のユーザのユーザ・ノード202につなげるエッジ206を作成して、エッジ206をソーシャル・グラフ情報としてデータ・ストア164のうちの1つまたは複数の中に記憶することができる。図2の例においては、ソーシャル・グラフ200は、ユーザ「A」のユーザ・ノード202と、ユーザ「B」のユーザ・ノード202との間における友達関係を示すエッジ206と、ユーザ「C」のユーザ・ノード202と、ユーザ「B」のユーザ・ノード202との間における友達関係を示すエッジとを含む。本開示は、特定のユーザ・ノード202同士をつなげる特定の属性を伴う特定のエッジ206を記述している、または示しているが、本開示は、ユーザ・ノード202同士をつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。限定ではなく、例として、エッジ206は、友達関係、家族関係、ビジネスもしくは雇用関係、ファン関係(たとえば、「いいね」と表明することなどを含む)、フォロワー関係、ビジター関係(たとえば、アクセスすること、閲覧すること、チェックインをすること、共有することなどを含む)、サブスクライバ関係、上下関係、互恵的関係、非互恵的関係、別の適切なタイプの関係、または複数のそのような関係を表すことができる。その上、本開示は一般に、ノード同士をつながっているものとして記述しているが、本開示はまた、ユーザ同士またはコンセプト同士をつながっているものとして記述している。本明細書においては、つながっているユーザ同士またはコンセプト同士への言及は、適切な場合には、1つまたは複数のエッジ206によってソーシャル・グラフ200内でつながっているそれらのユーザ同士またはコンセプト同士に対応するノード同士を示すことができる。
特定の実施形態においては、ユーザ・ノード202とコンセプト・ノード204との間におけるエッジ206は、ユーザ・ノード202に関連付けられているユーザによって、コンセプト・ノード204に関連付けられているコンセプトに対して実行された特定のアクションまたはアクティビティを表すことができる。限定ではなく、例として、図2において示されているように、ユーザは、コンセプトに対して「いいね!を表明すること」、「通うこと」、「プレイすること」、「聴くこと」、「料理すること」、「勤務すること」、または「観ること」を行った可能性があり、それらの各々は、エッジ・タイプまたはサブタイプに対応することができる。コンセプト・ノード204に対応するコンセプトプロフィール・ページは、たとえば、選択可能な「チェックイン」アイコン(たとえば、クリック可能な「チェックイン」アイコンなど)、または選択可能な「お気に入りに追加」アイコンを含むことができる。同様に、ユーザがこれらのアイコンをクリックした後に、ソーシャル・ネットワーキング・システム160は、それぞれのアクションに対応するユーザのアクションに応答して「お気に入り」エッジまたは「チェックイン」エッジを作成することができる。限定ではなく、別の例として、あるユーザ(ユーザ「C」)が、特定のアプリケーション(オンライン音楽アプリケーションであるSPOTIFY)を使用して特定の曲(「イマジン」)を聴く場合がある。このケースにおいては、ソーシャル・ネットワーキング・システム160は、そのユーザに対応するユーザ・ノード202と、その曲およびアプリケーションに対応するコンセプト・ノード204との間において、(図2に示されているような)「聴いた」エッジ206および「使用した」エッジを作成して、そのユーザがその曲を聴いてそのアプリケーションを使用したということを示すことができる。その上、ソーシャル・ネットワーキング・システム160は、その曲に対応するコンセプト・ノード204と、そのアプリケーションに対応するコンセプト・ノード204との間において、(図2に示されているような)「再生した」エッジ206を作成して、その特定の曲がその特定のアプリケーションによって再生されたということを示すことができる。このケースにおいては、「再生した」エッジ206は、外部アプリケーション(SPOTIFY)によって外部オーディオ・ファイル(「イマジン」という曲)に関して実行されたアクションに対応する。本開示は、ユーザ・ノード202とコンセプト・ノード204とをつなげる特定の属性を伴う特定のエッジ206について記述しているが、本開示は、ユーザ・ノード202とコンセプト・ノード204とをつなげる任意の適切な属性を伴う任意の適切なエッジ206を想定している。その上、本開示は、単一の関係を表すユーザ・ノード202とコンセプト・ノード204との間におけるエッジについて記述しているが、本開示は、1つまたは複数の関係を表すユーザ・ノード202とコンセプト・ノード204との間におけるエッジを想定している。限定ではなく、例として、エッジ206は、ユーザが特定のコンセプトに対して「いいね!」の表明をしているということ、およびその特定のコンセプトを使用したということの両方を表すことができる。あるいは、別のエッジ206は、(図2において、ユーザ「E」を表すユーザ・ノード202と、「SPOTIFY」を表すコンセプト・ノード204との間において示されているような)ユーザ・ノード202とコンセプト・ノード204との間におけるそれぞれのタイプの関係(または、単一の関係が複数集まったもの)を表すことができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、ソーシャル・グラフ200内でユーザ・ノード202とコンセプト・ノード204との間においてエッジ206を作成することができる。限定ではなく、例として、(たとえば、ユーザのクライアント・システム130によってホストされているウェブ・ブラウザまたは専用のアプリケーションを使用することなどによって)コンセプトプロフィール・ページを閲覧しているユーザは、「いいね!」アイコンをクリックまたは選択することにより、コンセプト・ノード204によって表されているコンセプトを自分が気に入っているということを示すことができ、その「いいね!」アイコンをクリックまたは選択することは、ユーザのクライアント・システム130に、そのコンセプトプロフィール・ページに関連付けられているそのコンセプトをそのユーザが気に入っているということを示すメッセージをソーシャル・ネットワーキング・システム160へ送信させることができる。そのメッセージに応答して、ソーシャル・ネットワーキング・システム160は、そのユーザとコンセプト・ノード204との間における「いいね!」エッジ206によって示されているように、そのユーザに関連付けられているユーザ・ノード202とコンセプト・ノード204との間においてエッジ206を作成することができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、エッジ206を1つまたは複数のデータ・ストア内に記憶することができる。特定の実施形態においては、エッジ206は、特定のユーザ・アクションに応答してソーシャル・ネットワーキング・システム160によって自動的に形成されることが可能である。限定ではなく、例として、第1のユーザが、画像をアップロードすること、映画を観ること、または曲を聴くことを行った場合には、エッジ206は、第1のユーザに対応するユーザ・ノード202と、それらのコンセプトに対応するコンセプト・ノード204との間において形成されることが可能である。本開示は、特定の様式で特定のエッジ206を形成することについて記述しているが、本開示は、任意の適切な様式で任意の適切なエッジ206を形成することを想定している。
特定の実施形態においては、広告は、1つもしくは複数のウェブページ上に提示されるか、1つもしくは複数のEメールに提示されるか、またはユーザが要求した検索結果に関係して提示される、テキスト(HTMLリンク付けすることができる)、1つもしくは複数の画像(HTMLリンク付けすることができる)、1つもしくは複数の動画、音声、他の適切なデジタル・オブジェクト・ファイル、これらの適切な組合せ、または任意の適切なデジタル・フォーマットの任意の他の適切な広告とすることができる。追加として、または代替として、広告は、1つもしくは複数のスポンサー付きストーリ(たとえば、ソーシャル・ネットワーキング・システム160上のニュース・フィードまたはティッカ・アイテム)とすることができる。スポンサー付きストーリは、たとえば、社会的活動をユーザのプロフィール・ページもしくは他のページの所定の領域内に提示させ、広告主に関連付けられている追加情報とともに提示させ、他のユーザのニュース・フィードもしくはティッカ内で上方に移動もしくはその他の形で強調表示させるか、またはその他の形で促進させることによって、広告主が促進する、ユーザによる社会的活動とすることができる(あるページに「いいね!」を表明すること、もしくはあるページ上の投稿にコメントすること、あるページに関連付けられているイベントに出欠の返事をすること、あるページに投稿されている質問に投票すること、ある場所にチェックインすること、アプリケーションを使用するかもしくはゲームをすること、またはウェブサイトに「いいね!」を表明するかもしくは共有すること)。広告主は代金を払って社会的活動を促進してもらうことができる。社会的活動は、ソーシャル・ネットワーキング・システム160内またはその上で促進することができる。追加として、または代替として、社会的活動は、適切な場合、ソーシャル・ネットワーキング・システム160の外部、つまりその外で促進することができる。特定の実施形態においては、ページは、ストーリの共有および人々とのつながりを促進する企業、組織またはブランドのオンライン・プレゼンス(ソーシャル・ネットワーキング・システム160内または外のウェブページまたはウェブサイトなど)とすることができる。ページは、たとえば、アプリケーションを追加するか、ストーリを投稿するか、またはイベントを主催することによってカスタマイズすることができる。
スポンサー付きストーリは、ユーザのニュース・フィード内のストーリから生成され、ソーシャル・ネットワーキング・システム160に関連付けられているウェブページを閲覧するときに、ユーザのウェブ・ブラウザのディスプレイ内の特定の領域に促進することができる。スポンサー付きストーリは、少なくとも部分的には、スポンサー付きストーリが一般にユーザの友達、ファン・ページまたは他のつながりによる対話または提案を伴うため、ユーザから閲覧される可能性がより高い。スポンサー付きストーリに関連して、特定の実施形態は、「有機的アクティビティ・ストリームからのスポンサー付きストーリユニット生成(Sponsored Stories Unit Creation from Organic Activity Stream)」と題され、2011年12月15日に出願された米国特許出願第13/327557号明細書、「有機的アクティビティ・ストリームからのスポンサー付きストーリユニット生成(Sponsored Stories Unit Creation from Organic Activity Stream)」と題され、2012年2月3日に米国特許出願第13/020745号として出願された米国特許出願公開第2012/0203831号明細書、または「スポンサー付きストーリの推薦購読(Endorsement Subscriptions for Sponsored Stories)」と題され、2011年3月9日に米国特許出願第13/044506号として出願された米国特許出願公開第2012/0233009号明細書に開示される1つもしくは複数のシステム、コンポーネント、要素、機能、方法、動作または工程を利用することができ、これらはすべて限定ではなく例として本願明細書に援用される。特定の実施形態においては、スポンサー付きストーリは、「スポンサー付きストーリのためのコンピュータ・ビジョン・コンテンツ検知(Computer‐Vision Content Detection for Sponsored Stories)」と題され、2011年8月18日に出願された米国特許出願第13/212356号明細書に開示されるように、アップロードされた画像または写真内の、広告主と明示的なつながりのない製品を検知するために、コンピュータ・ビジョン・アルゴリズムを利用することができ、これは限定ではなく例として本願明細書に援用される。
前述したように、広告は、テキスト(HTMLリンク付けすることができる)、1つもしくは複数の画像(HTMLリンク付けすることができる)、1つもしくは複数の動画、音声、1つもしくは複数のADOBE FLASHファイル、これらの適切な組合せ、または任意の適切なデジタル・フォーマットの任意の他の適切な広告とすることができる。特定の実施形態においては、広告は、サードパーティのウェブページ、ソーシャル・ネットワーキング・システムのウェブページ、または他のページ内への表示を要求することができる。広告は、ページ最上部のバナー領域、ページのサイドの欄、ページのGUI、ポップアップ・ウィンドウ、ページのコンテンツの上に重ねて、またはページに関する他の場所など、ページの専用部分に表示することができる。追加として、または代替として、広告は、アプリケーション内またはゲーム内に表示することができる。広告は、専用ページ内に表示することができ、ユーザがページにアクセスするか、アプリケーションを利用するか、またはゲームをする前に、ユーザに、広告と対話するかまたは広告を見ることを要求する。ユーザは、たとえば、ウェブ・ブラウザを通じて広告を閲覧することができる。
ユーザは、任意の適切な様式で広告と対話することができる。ユーザは、広告をクリックするかまたはその他の形で選択することができ、広告は、ユーザ(またはユーザが使用しているブラウザもしくは他のアプリケーション)を、広告に関連付けられているページに導くことができる。広告に関連付けられているページで、ユーザは、広告に関連付けられている製品もしくはサービスを購入するか、広告に関連付けられている情報を受け取るか、または広告に関連付けられているニュースレターを購読するなど、追加のアクションを取ることができる。音声または動画付きの広告は、広告の構成要素(「再生ボタン」など)を選択することによって再生することができる。特定の実施形態においては、広告は、1つまたは複数のゲームを含むことができ、ユーザまたは他のアプリケーションは、そのゲームを、広告に関連してプレイすることができる。広告は、広告内に世論調査または質問に応答する機能を含むことができる。
広告は、ユーザが対話できるソーシャル・ネットワーキング・システム機能を含むことができる。たとえば、広告は、推薦に関連付けられているアイコンまたはリンクを選択することによって、ユーザが広告に「いいね!」を表明するか、またはその他の形で広告を推薦できるようにすることができる。同様に、ユーザは、別のユーザと(たとえば、ソーシャル・ネットワーキング・システム160を通じて)広告を共有するか、または広告に関連付けられているイベントへの出欠の返事をすることができる(たとえば、ソーシャル・ネットワーキング・システム160を通じて)。追加として、または代替として、広告は、ユーザに向けられるソーシャル・ネットワーキング・システムのコンテンツを含むことができる。たとえば、広告は、ユーザの、広告の主題に関連付けられているアクションを取ったことのあるソーシャル・ネットワーキング・システム160内の友達に関する情報を表示することができる。
ソーシャル・ネットワーキング・システムの機能またはコンテンツは、任意の適切な様式で広告に関連付けることができる。たとえば、(広告の入札を受け取り、応答して広告を選択するためのハードウェア、ソフトウェア、またはその両方を含むことができる)広告システムは、広告をユーザに配信する前に、ソーシャル・ネットワーキング・システム160からソーシャル・ネットワーキングの機能またはコンテンツを引き出して、引き出したソーシャル・ネットワーキングの機能またはコンテンツを広告に組み込むことができる。ソーシャル・ネットワーキング・システムの機能またはコンテンツを選択し、広告とともに提供する例は、「オンライン広告と共にソーシャル・エンドースメントを提供すること(Providing Social Endorsements with Online Advertising)」と題され、2010年10月5日に米国特許出願第12/898662号として出願された米国特許出願公開第2012/0084160号明細書、および「視聴ユーザに表示する広告のためのソーシャル・エンドースメント情報の選択(Selecting Social Endorsement Information for an Advertisement for Display to a Viewing User)」と題され、2011年3月8日に米国特許出願第13/043424号として出願された米国特許出願公開第2012/0232998号明細書に開示されており、これらはともに限定ではなく例としてのみ本願明細書に援用される。ソーシャル・ネットワーキング・システムの機能またはコンテンツに関連付けられている広告との対話は、対話に関する情報をソーシャル・ネットワーキング・システム160のユーザのプロフィール・ページに表示させることができる。
特定の実施形態は、広告をより関連性があるかまたは有用だと思う可能性のより高いユーザへの広告の配信を促進することができる。たとえば、広告主は、自社広告がより関連性があるかまたは有用だと思う可能性のより高いユーザを識別してターゲットにすることによって、より高い転換率(そのため、より高い投資利益率(ROI))を実現することができる。広告主は、ソーシャル・ネットワーキング・システム160内のユーザ・プロフィール情報を使用して、ユーザを識別することができる。追加として、または代替として、ソーシャル・ネットワーキング・システム160は、ソーシャル・ネットワーキング・システム160内のユーザ・プロフィール情報を使用して、広告主のためのユーザを識別することができる。限定ではなく例として、特定の実施形態は、イベントの招待状もしくは提案、クーポンに関する提案、取引、または欲しいものリストの品物、友達のライフ・イベントに関する提案、グループに関する提案、広告、またはソーシャル広告を用いて、ユーザをターゲットにすることができる。このようなターゲティングは、適切な場合、ソーシャル・ネットワーキング・システム160上もしくは内、ソーシャル・ネットワーキング・システム160の外もしくは外部、またはユーザのモバイル・コンピューティング・デバイス上で発生することができる。ソーシャル・ネットワーキング・システム160上または内の場合、該ターゲティングは、ユーザのニュース・フィード、検索結果、Eメールもしくは他の受信トレイ、もしくは通知チャネルに向けることができ、またはコンシェルジュもしくはグルーパ領域(これは同じコンセプト、ノードもしくはオブジェクトに関連付けられている広告を右側のレールに沿ってグループ化することができる)またはネットワーク・エゴ領域(ユーザがウェブページで閲覧しているものとユーザの現在のニュース・フィードに基づくことができる)のウェブページの右側サイドなど、ソーシャル・ネットワーキング・システム160のウェブページの特定の領域に現れることができる。ソーシャル・ネットワーキング・システム160の外または外部の場合、該ターゲティングは、サードパーティ・ウェブサイトを通じて、たとえばアド・エクスチェンジまたはソーシャル・プラグインを含むことによって、提供することができる。ユーザのモバイル・コンピューティング・デバイス上にあるとき、該ターゲティングは、モバイル・コンピューティング・デバイスへのプッシュ通知を通じて提供することができる。
ユーザを識別してターゲットにするために使用されるターゲティング基準は、ソーシャル・ネットワーキング・システム160上で明示的に述べられたユーザの関心、またはソーシャル・ネットワーキング・システム160上でのノード、オブジェクト、エンティティ、ブランドもしくはページとのユーザの明示的なつながりを含むことができる。追加として、または代替として、該ターゲティング基準は、暗黙的または推定されたユーザの関心またはつながりを含むことができる(これは、ユーザの経歴、人口統計学的情報、社会的もしくは他の活動、友達の社会的もしくは他の活動、購読、またはユーザに似た他のユーザの前記事項のいずれか(たとえば、共有される関心、つながり、またはイベントに基づく)を含むことができる)。特定の実施形態は、プラットフォーム・ターゲティングを利用することができ、これには、プラットフォームおよび「いいね!」インプレッション・データ、コンテキスト信号(たとえば、「コカ・コーラのページを誰が今閲覧しているか、または最近閲覧したか」)、弱いつながり(たとえば、「チェックイン」)、つながりの似たもの、ファン、抽出されたキーワード、EMU広告、推定による広告、係数、アフィニティもしくは他のソーシャル・グラフ情報、友達の友達つながり、ピン留めもしくはブースティング、取引、世論調査、世帯所得、ソーシャル・クラスタもしくはグループ、画像もしくは他の媒体で検知された製品、ソーシャル・グラフもしくはオープン・グラフのエッジ・タイプ、地理的な予測、プロフィールもしくはページの閲覧数、ステータスの更新もしくは他のユーザの投稿(その分析は自然言語処理もしくはキーワード抽出に関わる)、イベント情報、または協調フィルタリングを含むことができる。ユーザを識別してターゲットにすることは、適切な場合、プライバシ設定(ユーザのオプト・アウトなど)、データ・ハッシング、またはデータ匿名化も含むことができる。
ユーザを広告のターゲットにするために、特定の実施形態は、以下に開示される1つまたは複数のシステム、コンポーネント、要素、機能、方法、動作または工程を利用することができ、これらはすべて限定ではなく例として本願明細書に援用される。すなわち、「ソーシャル・ネットワーキング・ウェブサイト上の社交的広告および他の情報メッセージ、ならびにその広告モデル(Social Advertisements and Other Informational Messages on a Social Networking Website and Advertising Model for Same)」と題され、2008年8月18日に米国特許出願第12/193702号として出願された米国特許出願公開第2009/0119167号明細書、「ソーシャル・ネットワークにおける広告のターゲット設定(Targeting Advertisements in a Social Network)」と題され、2008年8月20日に米国特許出願第12/195321号として出願された米国特許出願公開第2009/0070219号明細書、「広告に関連付けられたオブジェクトとやり取りしたユーザの友達に対するターゲット型ソーシャル広告(Targeting Social Advertising to Friends of Users Who Have Interacted With an Object Associated with the Advertising)」と題され、2010年12月15日に米国特許出願第12/968786号として出願された米国特許出願公開第2012/0158501号明細書、または「ソーシャル・ネットワーキング・システムにおけるコンテキスト上関連のあるアフィニティ予測(Contextually Relevant Affinity Prediction in a Social‐Networking System)」と題され、2010年12月23日に米国特許出願第12/978265号として出願された米国特許出願公開第2012/0166532号明細書である。
広告は、ウェブ・ブラウザもしくは他のアプリケーションのプラグイン、インラインフレーム要素、ニュース・フィード、ティッカ、通知(たとえば、Eメール、ショート・メッセージ・サービス(SMS)メッセージ、もしくは通知を含むことができる)、または他の手段を使用して提示またはその他の形で配信することができる。広告は、ユーザのモバイル・コンピューティング・デバイスまたは他のコンピューティング・デバイス上で、ユーザに提示またはその他の形で配信することができる。広告の配信に関連して、特定の実施形態は、以下に開示される1つまたは複数のシステム、コンポーネント、要素、機能、方法、動作または工程を利用することができ、これらはすべて限定ではなく例として本願明細書に援用される。すなわち、「サードパーティ・システムのためのコメント・プラグイン(Comment Plug‐In for Third‐Party System)」と題され、2010年12月15日に米国特許出願第12/969368号として出願された米国特許出願公開第2012/0159635号明細書、「コメント・オーダリング・システム(Comment Ordering System)」と題され、2010年12月15日に米国特許出願第12/969408号として出願された米国特許出願公開第2012/0158753号明細書、「ソーシャル・ネットワークのユーザについてのニュース・フィードを動的に提供すること(Dynamically Providing a News Feed About a User of a Social Network)」と題され、2006年8月11日に米国特許出願第11/503242号として出願された米国特許第7669123号明細書、「ソーシャル・ネットワーク環境においてエンティティに対するユーザのアフィニティおよび監視されるアクションに基づいてニュース・フィードを提供すること(Providing a Newsfeed Based on User Affinity for Entities and Monitored Actions in a Social Network Environment)」と題され、2006年8月11日に米国特許出願第11/503093号として出願された米国特許第8402094号明細書、「ニュース・フィードのためのアクション・クラスタリング(Action Clustering for News Feeds)」と題され、2010年9月16日に米国特許出願第12/884010号として出願された米国特許出願公開第2012/0072428号明細書、「ソーシャル・ネットワーキング・サービスにおけるつながりについての情報の収集(Gathering Information about Connections in a Social Networking Service)」と題され、2009年7月1日に米国特許出願第12/496606号として出願された米国特許出願公開第2011/0004692号明細書、「オンライン・ソーシャル・ネットワークにおけるユーザ・コンテンツの変更を追跡するための方法およびシステム(Method and System for Tracking Changes to User Content in an Online Social Network)」と題され、2006年9月12日に米国特許出願第11/531154号として出願された米国特許出願公開第2008/0065701号明細書、「外部ソースからオンライン・ソーシャル・ネットワークのユーザのランディング・ページに対して更新を配信すること(Feeding Updates to Landing Pages of Users of an Online Social Network from External Sources)」と題され、2007年1月17日に米国特許出願第11/624088号として出願された米国特許出願公開第2008/0065604号明細書、「統合型ソーシャル・ネットワーク環境(Integrated Social‐Network Environment)」と題され、2010年4月19日に米国特許出願第12/763171号として出願された米国特許第8244848号明細書、「ソーシャル・ネットワーキング・サービスにおけるロケーションベースのコンテンツ・アイテムの共有(Sharing of Location‐Based Content Item in Social‐Networking Service)」と題され、2009年10月6日に米国特許出願第12/574614号として出願された米国特許出願公開第2011/0083101号明細書、「ソーシャル・グラフ情報を用いるロケーション・ランキング(Location Ranking Using Social‐Graph Information)」と題され、2010年8月18日に米国特許出願第12/858718号として出願された米国特許第8150844号明細書、「ユーザの通知許容レベルに基づいたユーザへの通知の送信(Sending Notifications to Users Based on Users’ Notification Tolerance Levels)」と題され、2011年3月18日に出願された米国特許出願第13/051286号明細書、「ユーザ・デバイスにプッシュされる通知の管理(Managing Notifications Pushed to User Devices)」と題され、2011年4月28日に出願された米国特許出願第13/096184号明細書、「プラットフォーム固有の通知配信チャネル(Platform‐Specific Notification Delivery Channel)」と題され、2011年10月18日に出願された米国特許出願第13/276248号明細書、または「ジオソーシャル・ネットワーキング・システムにおけるソーシャル要素を用いるモバイル広告(Mobile Advertisement with Social Component for Geo‐Social Networking System)」と題され、2011年2月1日に米国特許出願第13/019061号として出願された米国特許出願公開第2012/0197709号明細書である。本開示は、特定の広告が特定の方法で、特定のコンテンツに関連して配信されることを説明し、または示しているが、本開示は、任意の適切な広告が任意の適切な方法で、任意の適切なコンテンツに関連して配信されることを企図する。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、様々なソーシャル・グラフ・エンティティの互いに対するソーシャル・グラフ・アフィニティ(本明細書では「アフィニティ」ということもある)を決定することができる。アフィニティは、オンライン・ソーシャル・ネットワークに関連付けられているユーザ、コンセプト、コンテンツ、アクション、広告、他のオブジェクト、またはその任意の適切な組合せなど、オンライン・ソーシャル・ネットワークに関連付けられている特定のオブジェクト間の関係の強度または関心レベルを表すことができる。アフィニティは、サードパーティ・システム170または他の適切なシステムに関連付けられているオブジェクトに関しても決定されることができる。各ユーザ、主題またはコンテンツのタイプについて、ソーシャル・グラフ・エンティティの総合アフィニティが確立されることができる。総合アフィニティは、ソーシャル・グラフ・エンティティに関連付けられているアクションまたは関係の継続的な監視に基づいて変わることがある。本開示は、特定の様式で特定のアフィニティを決定することを説明しているが、本開示は、任意の適切な様式で任意の適切なアフィニティを決定することを企図する。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、アフィニティ係数(本明細書では「係数」ということもある)を使用して、ソーシャル・グラフ・アフィニティを測定または定量化することができる。係数は、オンライン・ソーシャル・ネットワークに関連付けられている特定のオブジェクト間の関係の強度を表すか、または定量化することができる。係数は、また、ユーザの特定のアクションへの関心に基づいて、ユーザがそのアクションを実行する確率を表すか、または予測される確率を測定する関数を表すことができる。このように、ユーザの将来のアクションはユーザの過去のアクションに基づいて予測されることができ、その係数は少なくとも部分的にユーザのアクションの履歴で計算されることができる。係数を使用して、オンライン・ソーシャル・ネットワーク内または外の任意の数のアクションを予測することができる。限定ではなく、例として、これらのアクションは、メッセージの送信、コンテンツの投稿もしくはコンテンツに対するコメントなどの様々なタイプの通信、プロフィール・ページ、メディアもしくは他の適切なコンテンツへのアクセスもしくはそれらの視聴などの様々なタイプの観察アクション、同じグループであること、同じ写真にタグ付けされること、同じロケーションにチェックインすること、もしくは同じイベントに出席することなど、2つ以上のソーシャル・グラフ・エンティティに関する様々なタイプの同時発生情報、または他の適切なアクションを含むことができる。本開示は、特定の様式でアフィニティを測定することを説明しているが、本開示は、任意の適切な様式でアフィニティを測定することを企図する。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、係数を計算するために多様な因子を使用することができる。これらの因子には、たとえば、ユーザ・アクション、オブジェクト間の関係のタイプ、ロケーション情報、他の適切な因子、またはその任意の組合せを含むことができる。特定の実施形態においては、係数を計算するときに、異なる因子に異なる重みを付けることができる。各因子の重みは静的であってもよく、または、たとえば、ユーザ、関係のタイプ、アクションのタイプ、ユーザのロケーションなどに応じて、重みを変えてもよい。ユーザの総合的な係数を決定するために、因子のレーティングをその重みに応じて組み合わせることができる。限定ではなく、例として、特定のユーザ・アクションには、レーティングおよび重みの両方を割り当てることができるが、特定のユーザ・アクションに関連付けられている関係には、レーティングおよび相関する重み(たとえば、そのため、重みの合計は100%)が割り当てられる。特定のオブジェクトに対するユーザの係数を計算するには、ユーザのアクションに割り当てられるレーティングが、たとえば、総合的な係数の60%を占めることができ、ユーザとオブジェクトとの関係が、総合的な係数の40%を占めることができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、係数を計算するために使用される様々な因子の重みを決定するとき、たとえば、情報にアクセスされてからの時間、減衰因子、アクセスの頻度、情報との関係もしくは情報がアクセスされたオブジェクトとの関係、オブジェクトとつながりのあるソーシャル・グラフ・エンティティとの関係、ユーザ・アクションの短期的もしくは長期的な平均、ユーザ・フィードバック、他の適切な変数、またはその任意の組合せなど、多様な変数を考慮することができる。限定ではなく、例として、係数は、特定のアクションが提供する信号の強度を時間の経過とともに減衰させる減衰因子を含むことができ、係数を計算するときに、より最近のアクションをより関連性があるようにする。レーティングおよび重みは、係数が根拠とするアクションの継続的な追跡に基づいて、継続的に更新することができる。各因子のレーティングと因子に割り当てられる重みとの割当て、組合せ、平均化などを行うために、任意のタイプのプロセスまたはアルゴリズムを採用することができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、履歴アクションおよび過去のユーザの応答に基づいて訓練された機械学習アルゴリズム、またはユーザに様々なオプションを提示して応答を測定することによってユーザから集められたデータを使用して、係数を決定することができる。本開示は、特定の様式で係数を計算することを説明しているが、本開示は、任意の適切な様式で係数を計算することを企図する。
特定の実施形態では、ソーシャル・ネットワーキング・システム160は、ユーザのアクションに基づいて係数を計算することができる。ソーシャル・ネットワーキング・システム160は、オンライン・ソーシャル・ネットワーク、サードパーティ・システム170、他の適切なシステム、またはその任意の組合せ上で、該アクションを監視することができる。任意の適切なタイプのユーザ・アクションを追跡または監視することができる。典型的なユーザ・アクションは、プロフィール・ページを閲覧すること、コンテンツを作成もしくは投稿すること、コンテンツと対話すること、画像をタグ付けするもしくは画像にタグ付けされること、グループに参加すること、イベントへの参加をリスト化し確認すること、ロケーションでチェックインすること、特定のページに「いいね!」を表明すること、ページを作成すること、および社会的活動を促す他のタスクを行うことを含む。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、特定のタイプのコンテンツを伴うユーザのアクションに基づいて係数を計算することができる。コンテンツは、オンライン・ソーシャル・ネットワーク、サードパーティ・システム170、または別の適切なシステムに関連付けられてもよい。コンテンツは、ユーザ、プロフィール・ページ、投稿、ニュース・ストーリ、ヘッドライン、インスタント・メッセージ、チャットルームの会話、Eメール、広告、写真、動画、音楽、他の適切なオブジェクト、またはその任意の組合せを含むことができる。ソーシャル・ネットワーキング・システム160はユーザのアクションを分析して、アクションのうちの1つまたは複数が、主題、コンテンツ、他のユーザなどに関するアフィニティを示すかどうかを決定することができる。限定ではなく、例として、ユーザが「コーヒー」またはその変異形に関係するコンテンツを頻繁に投稿する場合、ソーシャル・ネットワーキング・システム160は、ユーザが「コーヒー」コンセプトに対して高い係数を有すると決定することができる。特定のアクションまたは特定のタイプのアクションに、他のアクションよりも高い重みおよび/またはレーティングを割り当てることができ、それで総合的な係数の算出値に影響を与えることができる。限定ではなく、例として、第1のユーザが第2のユーザにEメールを送信する場合、そのアクションに関する重みまたはレーティングは、第1のユーザが第2のユーザのユーザ・プロフィール・ページを単に閲覧するだけの場合よりも高くすることができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、特定のオブジェクト間の関係のタイプに基づいて、係数を計算することができる。ソーシャル・グラフ200を参照して、ソーシャル・ネットワーキング・システム160は、係数を計算するときに、特定のユーザ・ノード202とコンセプト・ノード204とをつなげるエッジ206の数および/またはタイプを分析することができる。限定ではなく、例として、配偶者タイプのエッジ(2名のユーザが結婚していることを表す)によってつながっているユーザ・ノード202には、友達タイプのエッジによってつながっているユーザ・ノード202よりも高い係数を割り当てることができる。言い換えれば、特定のユーザのアクションと関係とに割り当てられる重みに応じて、総合アフィニティは、ユーザの友達に関するコンテンツよりもユーザの配偶者に関するコンテンツに対して高いと決定されることができる。特定の実施形態においては、ユーザが他のオブジェクトに対して有する関係が、そのオブジェクトの係数を計算することに関して、ユーザのアクションの重みおよび/またはレーティングに影響することができる。限定ではなく、例として、ユーザが第1の写真でタグ付けされるが、第2の写真には「いいね!」を表明しただけの場合、コンテンツに対してタグ付けタイプの関係を有することは、コンテンツに対して「いいね!」表明タイプの関係をもつよりも、高い重みおよび/またはレーティングを割り当てられることができるので、ソーシャル・ネットワーキング・システム160は、ユーザが第2の写真よりも第1の写真に関して高い係数を有すると決定することができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、1人または複数の第2のユーザが特定のオブジェクトに対して有する関係に基づいて、第1のユーザの係数を計算することができる。言い換えれば、他のユーザがオブジェクトに対して有するつながりおよび係数が、そのオブジェクトに関する第1のユーザの係数に影響することができる。限定ではなく、例として、第1のユーザが1人または複数の第2のユーザとつながりがあるかまたはそれに関する係数が高く、その第2のユーザが特定のオブジェクトとつながりがあるかまたはそれに関する係数が高い場合、ソーシャル・ネットワーキング・システム160は、第1のユーザもその特定のオブジェクトに関して比較的高い係数を有するはずだと決定することができる。特定の実施形態においては、係数は、特定のオブジェクト間の分離度に基づくことができる。係数が低いほど、ソーシャル・グラフ200において第1のユーザと間接的につながりのあるユーザのコンテンツ・オブジェクトに対して、第1のユーザが関心を共有する見込みが低いことを表すことができる。限定ではなく、例として、ソーシャル・グラフ200においてより近くにある(たとえば、分離度が小さい)ソーシャル・グラフ・エンティティ同士は、ソーシャル・グラフ200でより離れたエンティティ同士よりも、高い係数を有することができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、ロケーション情報に基づいて係数を計算することができる。互いに地理的により近くにあるオブジェクトは、より遠くにあるオブジェクトよりも、互いにより関係があるかまたはより関心があると考えることができる。特定の実施形態において、特定のオブジェクトに対するユーザの係数は、ユーザに関連付けられている現在のロケーション(またはユーザのクライアント・システム130のロケーション)とオブジェクトのロケーションとの近さに基づくことができる。第1のユーザは、第1のユーザのより近くにある他のユーザまたはコンセプトに、より関心を抱くかもしれない。限定ではなく、例として、ユーザが空港から1.61km(1マイル)、給油所から3.22km(2マイル)のところにいる場合、ソーシャル・ネットワーキング・システム160は、ユーザに対する空港の近さに基づいて、ユーザは給油所よりも空港に関する係数が高いと決定することができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、係数情報に基づいてユーザに関して特定のアクションを実行することができる。係数を使用して、ユーザが特定のアクションを行うかどうかを、ユーザのそのアクションへの関心に基づいて予測することができる。広告、検索結果、ニュース・ストーリ、メディア、メッセージ、通知、または他の適切なオブジェクトなど、任意のタイプのオブジェクトを生成するかまたはユーザに提示するときに、係数を使用することができる。係数はまた、該オブジェクトを、適切な場合、ランク付けまたは順位付けするために利用することができる。このように、ソーシャル・ネットワーキング・システム160は、ユーザの関心および現在の状況に関連する情報を提供することができるので、ユーザがそのように関心をもつ情報を見つける見込みが高まる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、係数情報に基づいてコンテンツを生成することができる。コンテンツ・オブジェクトは、ユーザに固有の係数に基づいて提供または選択されることができる。限定ではなく、例として、ユーザのためのメディアを生成するために係数を使用することができ、その場合、メディア・オブジェクトに関してユーザが高い総合的な係数を有するメディアをユーザに提示することができる。限定ではなく、別の例として、ユーザのための広告を生成するために係数を使用することができ、その場合、広告されるオブジェクトに関してユーザが高い総合的な係数を有する広告をユーザに提示することができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、係数情報に基づいて検索結果を生成することができる。特定のユーザのための検索結果は、クエリ・ユーザに関する検索結果に関連付けられている係数に基づいて、スコアまたはランク付けすることができる。限定ではなく、例として、より高い係数を有するオブジェクトに対応する検索結果は、より低い係数を有するオブジェクトに対応する結果よりも、検索結果のページ上で高いランク付けをすることができる。
特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、特定のシステムまたはプロセスからの係数の要求に応答して、係数を計算することができる。ある所与の状況でユーザが取り得る(または対象になり得る)可能性の高いアクションを予測するために、任意のプロセスが、ユーザについての算出係数を要求することができる。要求は、係数を計算するために使用される様々な因子について使用する、1セットの重みも含むことができる。この要求は、オンライン・ソーシャル・ネットワーク上で実行しているプロセスから、サードパーティ・システム170(たとえば、APIもしくは他の通信チャネルを経由して)から、または別の適切なシステムから来ることができる。要求に応答して、ソーシャル・ネットワーキング・システム160は係数を計算する(または、以前に計算されて記憶されている場合には、係数情報にアクセスする)ことができる。特定の実施形態においては、ソーシャル・ネットワーキング・システム160は、特定のプロセスに関するアフィニティを測定することができる。異なるプロセス(オンライン・ソーシャル・ネットワーク内および外の両方)が、特定のオブジェクトまたはオブジェクトのセットに関する係数を要求することができる。ソーシャル・ネットワーキング・システム160は、アフィニティの尺度を要求したその特定のプロセスに関連するアフィニティの尺度を提供することができる。このように、各プロセスは、プロセスがアフィニティの尺度を使用する異なる状況に合わせられたアフィニティの尺度を受け取る。
ソーシャル・グラフ・アフィニティおよびアフィニティ係数に関連して、特定の実施形態では、それぞれを本願明細書に援用する2006年8月11日に出願された米国特許出願第11/503093号明細書、2010年12月22日に出願された米国特許出願第12/977027号明細書、2010年12月23日に出願された米国特許出願第12/978265号明細書、および2012年10月1日に出願された米国特許出願第13/632869号明細書に開示された1つまたは複数のシステム、コンポーネント、要素、機能、方法、動作、または工程を利用することができる。
特定の実施形態では、オンライン・ソーシャル・ネットワークのコンテンツ・オブジェクトのうちの1つまたは複数が、プライバシ設定に関連付けられ得る。オブジェクトに対するプライバシ設定(または「アクセス設定」)は、任意の適切な様式で、たとえば、オブジェクトに関連付けて、認可サーバ上のインデックスで、別の適切な様式で、または任意のそれらの組合せなどで、記憶され得る。オブジェクトのプライバシ設定は、オブジェクトまたはオブジェクトに関連付けられている特定の情報がオンライン・ソーシャル・ネットワークを使用してどのようにアクセス(たとえば、閲覧、または共有)され得るかを指定することができる。オブジェクトに対するプライバシ設定により、そのオブジェクトについて特定のユーザがアクセス、閲覧、または共有することが可能になる場合、オブジェクトは、そのユーザに対して「可視」であると説明され得る。一例として、限定としてではなく、オンライン・ソーシャル・ネットワークのユーザは、ユーザ・プロフィール・ページ上の職務経験情報にアクセスすることができるユーザのセットを識別する、ユーザ・プロフィール・ページに対するプライバシ設定を指定することができ、したがって、他のユーザがその情報にアクセスすることを排除することができる。特定の実施形態では、プライバシ設定は、オブジェクトに関連付けられている特定の情報についてアクセスを許可されるべきでないユーザの「ブロック・リスト(blocked list)」を指定することができる。言い換えれば、ブロック・リストは、オブジェクトが可視にされない1つまたは複数のユーザまたはエンティティを指定することができる。一例として、限定としてではなく、ユーザは、ユーザに関連付けられているフォト・アルバムにアクセスできないユーザのセットを指定することができ、したがって、それらのユーザがフォト・アルバムにアクセスすることを排除する(それとともに、場合によっては、そのユーザのセットの範囲外の特定のユーザがフォト・アルバムにアクセスすることを可能にする)。特定の実施形態では、プライバシ設定が特定のソーシャル・グラフ要素に関連付けられてよい。ノードまたはエッジのようなソーシャル・グラフ要素のプライバシ設定は、ソーシャル・グラフ要素、ソーシャル・グラフ要素に関連付けられている情報、またはソーシャル・グラフ要素に関連付けられているコンテンツ・オブジェクトが、オンライン・ソーシャル・ネットワークを使用してどのようにアクセス可能とされ得るかを指定することができる。一例として、限定としてではなく、特定の写真に対応する特定のコンセプト・ノード204は、写真においてタグ付けされたユーザおよびその友達によってのみ写真がアクセスされてよいことを指定する、プライバシ設定を有することができる。特定の実施形態では、プライバシ設定は、ユーザのアクションをソーシャル・ネットワーキング・システム160によってログを記録させること、または他のシステム(たとえばサードパーティ・システム170)によって共有させることに関して、ユーザがオプト・インまたはオプト・アウトすることを可能にすることができる。特定の実施形態では、オブジェクトに関連付けられているプライバシ設定は、許可されるアクセスまたはアクセスの拒否の任意の適切な粒度を指定することができる。一例として、限定としてではなく、アクセス、またはアクセスの拒否は、特定のユーザ(たとえば、私のみ(only me)、私のルームメイト、および私の上司)、特定の分離度の範囲内のユーザ(たとえば、友達(friends)、友達の友達(friends_of_friends))、ユーザ・グループ(たとえば、ゲーム・クラブ、私の家族)、ユーザ・ネットワーク(たとえば、特定の雇用主の従業員、特定の大学の学生もしくは卒業生)、すべてのユーザ(「パブリック(public)」)、ユーザ無し(「プライベート(private)」)、サードパーティ・システム170のユーザ、特定のアプリケーション(たとえば、サードパーティ・アプリケーション、外部ウェブサイト)、他の適切なユーザもしくはエンティティ、またはこれらの組合せに対して指定されてよい。本開示では特定のプライバシ設定を特定の様式で使用して説明しているが、本開示は任意の適切なプライバシ設定を任意の適切な様式で使用することを企図する。
特定の実施形態では、1つまたは複数の認可/プライバシ・サーバが、オンライン・ソーシャル・ネットワークに関連付けられているオブジェクトに対する1つまたは複数のプライバシ設定を実装するために使用されてよい。認可サーバは、ソーシャル・ネットワーキング・システム160の1つまたは複数のサーバ162であってよい。データ・ストア164に記憶された特定のオブジェクトを求めるユーザから(または他のエンティティ)の要求に応答して、ソーシャル・ネットワーキング・システム160は、データ・ストア164にオブジェクトを求める要求を送ることができる。要求は、要求に関連付けられているユーザを識別することができ、認可サーバが、オブジェクトに関連付けられているプライバシ設定に基づいて、ユーザがオブジェクトにアクセスすることを認可されることを決定した場合、そのユーザ(またはユーザのクライアント・システム130)にのみ送られることが可能である。要求しているユーザがオブジェクトにアクセスすることを認可されない場合、認可サーバは、要求されたオブジェクトがデータ・ストア164から取り出されるのを防止することができ、または要求されたオブジェクトがユーザに送られるのを防止することができる。検索クエリのコンテキストにおいて、クエリ・ユーザがオブジェクトを閲覧またはアクセスすることを認可されない場合、オブジェクトは単に検索結果として生成されることが可能である。言い換えれば、オブジェクトは、クエリ・ユーザに可視である可視性を有しなければならない。オブジェクトがユーザに可視でない可視性を有する場合、オブジェクトは検索結果から除外されることが可能である。特定の実施形態では、ソーシャル・グラフ要素に対するプライバシ設定は、いくつかのノードおよびエッジを有するプライバシ・グラフとして表され得るデータ構造で記憶されてよい。プライバシ・グラフは、特定のソーシャル・グラフ要素の互いに対する可視性を、互いに対するそれらのつながりに基づいて表すことができる。データ・ストア164に記憶された特定の情報をユーザが要求したとき、プライバシ・グラフに関して動的に(たとえばリアルタイムで)フィルタリングを行うことにより、ソーシャル・グラフ要素のアクセス・コントロールが、要求しているユーザまたはエンティティに対して検証され認証され得る。本開示ではプライバシ設定を特定の様式で実装することを説明しているが、本開示はプライバシ設定を任意の適切な様式で実装することを企図する。
特定の実施形態では、1つまたは複数のサーバ162は、プライバシ設定を実装する認可/プライバシ・サーバであってもよい。データ・ストア164に記憶された特定のオブジェクトを求めるユーザから(または他のエンティティ)の要求に応答して、ソーシャル・ネットワーキング・システム160は、データ・ストア164にオブジェクトを求める要求を送ることができる。要求は、要求に関連付けられているユーザを識別することができ、認可サーバが、オブジェクトに関連付けられているプライバシ設定に基づいて、ユーザがオブジェクトにアクセスすることを認可されることを決定した場合、そのユーザ(またはユーザのクライアント・システム130)にのみ送られることが可能である。要求しているユーザがオブジェクトにアクセスすることを認可されない場合、認可サーバは、要求されたオブジェクトがデータ・ストア164から取り出されるのを防止することができ、または要求されたオブジェクトがユーザに送られるのを防止することができる。検索クエリのコンテキストにおいて、クエリ・ユーザがオブジェクトをアクセスすることを認可されない場合、オブジェクトは単に検索結果として生成されることが可能である。言い換えれば、オブジェクトは、クエリ・ユーザに可視である可視性を有してもよい。オブジェクトがユーザに可視でない可視性を有する場合、オブジェクトは検索結果から除外されることが可能である。本開示ではプライバシ設定を特定の様式で実装することを説明しているが、本開示はプライバシ設定を任意の適切な様式で実装することを企図する。
コネクテッド・デバイス管理およびゲートウェイベース・システムの概要
特定の実施形態においては、システムは、消費者/サプライヤ/小売業者/などに際限なき便益を与えることができる。特定の実施形態においては、システムは、潜在的には、ローカル(必ずしもクラウドではない)・ストレージを使用して、ホーム・モニタリングおよび家族との通信用に写真および/または動画を提供することができ、接続されている場合は、オンライン・システムに記憶されている写真および動画にアクセスすることができる。さらなる実施形態においては、システムは、ソーシャルWi‐Fiを提供することができ、そこで、システムは、ユーザの友達がログインの必要なく特定のWiFiに参加するのを認可することができる。さらなる実施形態においては、システムはロバストなプライバシ・コントロールを提供することができ、そこで、システムは、人々が理解でき、データ共有の便益を感じられ、同意を与えることができる状況で、人々がデータを(ソーシャル・ネットワーキング・システム/パートナー/サードパーティ・アプリケーションに)共有することを可能にすることができる。さらなる実施形態においては、システムは、誰が自宅にいて、特定の人がいつ出かけたかに関する情報を提供することができる。これは、近所の友達にも適用することができる。さらなる実施形態においては、システムは仮想セキュリティを提供することができ、それによってシステムはウイルス、マルウェア、フィッシング等に対する防護のために、ゲートウェイ(「GW」)に定期的な更新を提供することができる。さらなる実施形態においては、システムは、任意のタイプの自宅のイベントに基づいて更新するために通知を使用し、また遠隔でサイレンをトリガし、および/または(たとえば、911をダイヤルして)救急サービスに連絡する能力も利用することができる。
完全な自宅体験:特定の実施形態では、製品の任意の組み合わせがよりシームレスな自宅にいる体験を提供できる。特定の実施形態では、自宅にいるユーザの注意力や労力を必要とする代わりに、位置認識を提供し、複数の個人を識別し、ユーザのコマンドに応答するだけでなく、ユーザが自身の家を構成させ、適応させることができるようにする機械学習サポートを組み込むシステムを提供することができる。たとえば、システムは、カメラ、ドア・センサ、ドア・ロックおよびモーション・センサなどのセキュリティ関連デバイスの機能を使用し、構成し、自動化するための、よりシームレスな体験を提供することができる。
特定の実施形態においては、システムは、自宅をシームレスな無線体験に接続するためのオープンなプラットフォームを作成することができる。特定の実施形態においては、システムは、自宅およびその自宅と対話する家族の体験を改善するために、ソーシャル・ネットワークの重要な資産(たとえば、アイデンティティ、ソーシャル・グラフ、セキュリティ、オープンで手ごろな価格のリファレンス・デザインを推進する専門技術)を利用するソリューションを提供することができる。特定の実施形態においては、システムは、オープンなプラットフォームがインターネット・オブ・シングス(IoT)デバイス・プロバイダをサポートし、それに価値を提供することを可能にすることができる。
図3は、1セットのデバイスを含むデバイス・クラウドを管理するための例示的アーキテクチャを示す。特定の実施形態においては、システム300はいくつかのコネクテッド・デバイス305および制御デバイス315と通信状態にあるゲートウェイ・デバイス310(特定の物理的ロケーションに内在する)を含むことができる。コネクテッド・デバイス305は、複雑な埋込型コンピューティング・デバイスから、スイッチ、単純なセンサまでのいずれも含むことができる。たとえば、図3に図示されるコネクテッド・デバイスは、デスクトップ・コンピュータ、ラップトップ、冷蔵庫、ホーム・セキュリティ・システム、テレビ、自動車、および一眼レフ(SLR:single‐lens reflex)カメラを含む。これらは単に例として提供されているにすぎず、当業者であれば、多くの他の適切なタイプのデバイスについて理解するであろう。制御デバイス315は、ゲートウェイ・デバイス310および(ゲートウェイ・デバイス310によって)コネクテッド・デバイス305と対話するために、ユーザ・インタフェース(たとえば、インストールされた制御アプリケーション、ブラウザ、ショート・メッセージング・サービス(SMS)・テキスティング・インタフェース、またはデバイスのオペレーティング・システムが提供するインタフェースによって)を提示することができる。特定の実施形態においては、システム300は、互いに通信する複数のゲートウェイ・デバイス310を備える。特定の実施形態においては、制御デバイス315は、システム300との主なユーザ体験(UX:user experience)ポイントとして作用する1つまたは複数のUIクライアント(たとえば、メッセージング・サービスまたは制御アプリケーション)を含む。制御デバイス315は、ソーシャル・ネットワーキング・アプリケーションまたは他のモバイル・アプリケーション(初期プロビジョニング、BLUETOOTH(登録商標)および位置検出、ならびに一般的に、メッセージング・アプリケーション、サービス・アプリケーションができないあらゆる許可関連の任意のことに使用されるヘルパー・アプリケーション)を含むことができる。
ゲートウェイ・デバイス310はバックエンド・システム320とインタフェースを取ることができ、そのバックエンド・システム320はリモート・サーバまたはサーバ群にホストされることができる。バックエンド・システム320は、メッセージング・インフラストラクチャ325(たとえば、制御デバイス315と通信するため)と、バックエンド・システム320の要素とゲートウェイ・デバイス310(および/または制御デバイス315および/または直接コネクテッド・デバイス305)とのインタフェースを取るための統合層330(たとえば、PARSEなど、多種多様なコネクテッド・デバイスとインタフェースを取るためのプラットフォームおよび/またはAPI)とを含むことができる。バックエンド・システム320は、ゲートウェイ・デバイス310および各コネクテッド・デバイス・デバイス305から受信したデータ、ならびにそれから派生したデータを含め、デバイス・イベントのデータ・ストア332を維持することができる。バックエンド・システム320は、以下に説明する1つまたは複数のデバイス・グラフについて、データ・ストア334も維持することができ、そこで、ゲートウェイ・デバイス310およびコネクテッド・デバイス305のそれぞれをデバイス・ノードによって表すことができ、デバイス・エッジがデバイス・ノードをつなげる。バックエンド・システム320は、デバイス・イベントを処理して分析し、デバイス・グラフを更新し、コネクテッド・デバイス305および/または制御デバイス315にフィードバックおよび/または命令を提供するための、デバイス・グラフ・インテリジェンス・インフラストラクチャ335を含むことができる。バックエンド・システム320は、ソーシャル・ネットワーキング・システム160とも通信することができる。特定の実施形態においては、一定の機能は、ゲートウェイ・デバイス310、バックエンド・システム320、またはその組合せによって提供されることができる。特定の実施形態では、特定の機能がゲートウェイ・デバイス310、バックエンド・システム320、または、これらの組み合わせによって提供されてもよい。
このようなアーキテクチャを、画定された物理的空間(たとえば、家、オフィスビル、もしくは公園)内に存在するデバイスのために、または特定のユーザもしくはエンティティに関わる1セットのデバイス(たとえば、ユーザの自宅、自動車、および/もしくは小規模小売店舗内にコネクテッド・デバイスを有するユーザに関連付けられているもの、またはビル群のためのドア・ロックおよびアラーム・セキュリティ・システムを管理する不動産管理会社に属するもの)とともに使用することができる。この後者のシナリオでは、物理的なロケーションのそれぞれ(たとえば、家、自動車、および店舗)にそれ自体のゲートウェイ・デバイスが必要であろう。
特定の実施形態においては、システム300はゲートウェイ・デバイスの機能を拡張して、中央ホーム・コンピュータおよびIoTハブとして機能させることができる。さらなる実施形態においては、システムは、優れた品質での外部世界へのブロードバンド・アクセスと自宅内のコネクテッド・デバイス間の通信とのために、重要なすべての有線および無線プロトコルのためのローカル・ストレージおよびサポートを提供することができる。さらなる実施形態においては、システムは、コネクテッド・サードパーティ・デバイスおよびブロードバンド・デバイス用の分析ツールを開発することができる。さらなる実施形態においては、システムは、オープン原則を確立し、標準プロトコル、汎用ハードウェア、オープンソース・オペレーティング・システム、オープンAPIなどで稼働することができる。さらなる実施形態においては、システムは、ハードウェアおよびファームウェアの無線技術の潜在的な改良をハードウェア・ビルダにもたらすことができる。
特定の実施形態においては、ゲートウェイ・デバイスは、必要な機能をサポートすることのできる任意のコンピューティング・デバイスを参照してスマート/コネクテッド・デバイスのローカル・ネットワーク制御を容易にし、クラウドで稼働することができるサービスのローカル・ゲートウェイとして機能する。特定の実施形態においては、サービスは、ユーザとの通信を促進することができる。特定の実施形態においては、システムおよびユーザは、自然言語を使用して通信することができる(これは、その後、構文解析することができる)。特定の実施形態においては、ユーザは、メッセージング・アプリケーションを使用して、ゲートウェイ・デバイスおよび/または(ゲートウェイ・デバイスによって)コネクテッド・デバイスのいずれかと通信することができる。
特定の実施形態において、制御デバイス315上で稼働する制御アプリケーションとは、制御デバイス315にインストールされているブラウザベースのアプリケーションまたは別のアプリケーションをいう。特定の実施形態においては、制御アプリケーションは、ユーザがデバイスをプロビジョニングするために使用することができる。さらなる実施形態においては、アプリケーションは、特定のシナリオに基づいて固有の電話のユーザ体験をユーザに提供することができる。
特定の実施形態においては、デバイスは、BLUETOOTH(登録商標)、NFC、またはコネクテッド・デバイス305とゲートウェイ・デバイス310との間の任意の他の適切な形態の通信を使用してプロビジョニングすることができる。
ゲートウェイベースのシステムを使用したコネクテッド・デバイス管理の特徴
通信−ソーシャル・ネットワーキング・グラフを活用して、家の中のまたは世界中の任意の場所の人とつながる(VOIP、ビデオ通話)こと、また、着信の発信者識別写真をソーシャル・ネットワーキング・グラフから引き出すことも可能である(ソーシャル・ネットワーキング・アプリケーションを電話の連絡先情報に同期させることができる)。
エネルギー効率:サーモスタット、通気口、照明の調光、ブラインド制御、選択的通電時間(自動車の充電、洗濯、食洗機)およびモニタリング。
オーディオおよびビデオ−任意のデバイスから任意のデバイスにユニキャストまたはマルチキャストする。
パーソナル・アシスタント−自然言語処理技術を活用して、口頭で自宅と通信することができる。
気候センサ−温度、湿度、空気の質等を追跡し、問題があれば警報を送信することができる。
ハウスフィード−家の中のディスプレイを備える各サーフェスについて、時刻に基づいて、最も関連のあるソーシャル・ネットワーキング・システムまたはサードパーティの情報/ストーリ(天候、誕生日、関連ニュース/公共コンテンツ、オファー/取引、広告等)を表に表す(surfaceする)。単なる広告の枠を超えて拡張し、すべての関連あるサーフェスに情報を表示する、事実上のオーディエンス・ネットワークのコンセプト。
共有しやすさ−ソーシャル・ネットワーキング・アプリケーション、ソーシャル・メディア写真共有アプリケーション、メッセージング・アプリケーションなどにより、家の中の任意のディスプレイの表に表される任意のコンテンツを共有しやすくすることができる。
特定の実施形態においては、システムは、自動化されたショッピング体験を提供することができ、そこで、システムは購買および消費習慣を追跡して、消耗品の繰り返し購入の自動化を支援することができる。
特定の実施形態においては、システムは、優れたホーム・コネクティビティをすべてのIoTデバイスにもたらすことができる(製品としてのプラットフォーム)。さらなる実施形態においては、様々なホーム制御デバイスに対して専用のハブは必要なくてもよい。
特定の実施形態においては、システムは、ユーザの購入決定にインサイトを与えることができる。さらなる実施形態においては、自宅およびその居住者の認識は、誰かが購入決定を具体的にどのようにするかに関して詳細なインサイトを提供することができる。購入決定を行ってデジタル広告の情報が実際の購入につながる(広告費ROIの測定に重要である)ときに人々がたどるステップについてのより深い理解を得る際に、自宅内の物理的なロケーション、使用するデバイス、品物を見る家族構成員の人数、会話、閲覧間の時間などを、すべて感知し、使用することができるであろう。
さらなる実施形態においては、システムは、システム内で起こっている活動に基づいて、広告およびコンテンツを最適化する方法を提供することができる。たとえば、自宅内の現在の環境を把握することが、(FACEBOOK(登録商標)または家庭内のメディア・コンテンツを通じて)より適切な消費コンテンツを家族構成員に提供するときにも、または広告を提示する最も適切なタイミングを決定するときにも役立つことができる。自宅内で見つからない物または壊れた物を宣伝するような単純なことから、両親が忙しく動き回っていて子供に食事をさせてから寝かしつけるまでの間にしか通知をチェックできないときではなく、どちらかの親だけが熱心に見るテレビ番組の放送中に、ゆったりとニュース・フィードをスクロールしているときにかっこいい自動車の宣伝を提示することまでを行う。
特定の実施形態においては、システムは、ソーシャル・ネットワーキング・システム、ソーシャル・ネットワーキング・システムに関連付けられているソーシャル・グラフ、ソーシャル・グラフ内の特定のアイデンティティ、ユーザに与えられた通知、および「オープン・プラットフォーム」アプローチを活用することができる。
特定の実施形態においては、ゲートウェイ・デバイスは、ユーザのホーム・ネットワークに接続されているローカル・ゲートウェイ・デバイス上で稼働するアプリケーションとすることができる。その役割は、「物理的」レベルでの、ユーザが所有する様々なスマート/コネクテッド・デバイスの理解と取り扱いからなり、限定ではないが、BLUETOOTH(登録商標)、ZIGBEE(登録商標)、ZWAVE、WIFI(アクセスポイントおよび直接)上での新たなデバイスの検出とプロビジョニング、デバイス・タイプおよびデバイスIDへの物理的デバイスのマッピング、利用できる機能へのデバイス・タイプのマッピング、「バーティカル」でのデバイスのグループ化/関連付け(たとえば、「照明」または「ドア・ロック」などの同じ機能)、様々な業界プロトコル、たとえば、ALLJOYN、THREAD、WEAVE、またはZIGBEE(登録商標)などの理解のサポート、バックエンド・システム320から渡される特定の意思(たとえば、固有のデバイスIDに関連付けられているもの)の直接制御およびクエリ・メッセージへの翻訳(たとえば、ゲートウェイ・デバイスから渡される「デバイスID XXXオン」→「Phillips HUEデバイスID XXX点灯」)、特定のデバイスの通知を、バックエンド・システム320が解釈できる論理的な通知に翻訳すること(たとえば、「August SmartLockデバイスID XXX解錠」→「デバイスID XXX解錠」)を含む。特定の実施形態においては、ゲートウェイ・デバイスは、物理的デバイスと論理的デバイスとの間のマッピングをある程度行う一方で、さらにこれらをマシン可読構造化フォーマットに変換する。
特定の実施形態において、ゲートウェイ・デバイス(たとえば、RASPIAN LINUX(登録商標)を稼働し、WIFI、BLUETOOTH(登録商標)、ZWAVEおよびZIGBEE(登録商標)ドングルをサポートするRASPBERRY PIプラットフォームに基づく)は、ゲートウェイ・アプリケーションをホストするために使用することができる。特定の実施形態においては、ゲートウェイ・アプリケーションは限られた数のデバイスによってサポートされることができ、特に、複数のベンダ(たとえば、PHILLIPS HUE、BELKIN WEMO WIFIスイッチ、ZIGBEE(登録商標)またはZWAVEスマート・スイッチ)の2つ以上のコネクテッド照明の検出およびプロビジョニングのサポート、1つまたは複数のあらかじめプロビジョニングされているスマート・ロック(たとえば、LOCKITRON、AUGUST)の制御、音楽および/または動画の制御と、WIFI接続されたスピーカおよび/またはスマートTVによる複数のターゲットへの、ならびにゲートウェイ・デバイス自体(たとえば、HDMI(登録商標)ポート)へのストリーミングとをサポートするが、これだけに限らない。
特定の実施形態においては、バックエンド・システム320は、クラウドで稼働し、ゲートウェイ・デバイス310と通信するアプリケーション/サービスを含む。これは、メッセージング・アプリケーションおよび自然言語処理システム(NLP:natural language processing)との統合、ユーザの意思の、特定の論理デバイスの制御意思への翻訳(たとえば、NLPおよびコンテキスト・アウェアネスを使用して)、複数のデバイスが関わる複雑な挙動ルールを推測する機械学習(ML:machine learning)を処理することができる。特定の実施形態においては、バックエンド・システム320は、ゲートウェイ・デバイス310によって、コネクテッド・デバイス305の個々のものとのみインタフェースを取ることができる。特定の実施形態においては、バックエンド・システム320は、論理デバイス(たとえば、「照明」対「PHILLIPS HUE」)、ユーザによって割り当てられたエイリアス(たとえば、「玄関ポーチの照明」)、およびデバイスグループ(たとえば、「全照明」)を処理することができる。このように、バックエンド・システム320は、以下のインタフェースおよび能力のうちの1つまたは複数を提供することができる。
・人が付けたデバイスの名称とホーム・ゲートウェイが提供する論理IDとの関連付け(たとえば、ユーザはデバイスIDに「玄関ドアの照明」という名称を選択する)、水平に沿ったデバイスのグループ化/関連付け(同じロケーション、たとえば「リビング・ルーム」または「玄関ドア」)
・人による入出力コマンドへのデバイスの能力のマッピング
・ユーザがデバイスに割り当てた特定の名称に関連付けられているユーザから渡される特定の意思を、デバイスIDベースのアクションに翻訳すること(たとえば、「玄関ポーチの照明を点灯」→「デバイスID XXXオン」)
・ホーム・ゲートウェイが転送する特定のデバイスの通知を人が読めるフォーマットに翻訳すること(たとえば、「デバイスID XXX解錠」→「玄関ドア解錠」)
特定の実施形態においては、システム300が提供する追加の特徴は、メッセージング・アプリケーションによる1つまたは複数のデバイスのNLP制御および通知、ユーザによるデバイスの明示的なグループ化、ならびにマルチデバイス命令の作成と実行(たとえば、「玄関ドアが解錠されたら、そこの照明を点灯する」)を含むことができる。
特定の実施形態においては、コンテキスト・アウェアでコマンドを解釈できるようになるために、論理は、ユーザID(アクションを行いたいユーザ)および/または(たとえば、GPS座標による強局在に加えて、周辺のモバイル・ネットワークの基地局ID、WIFIジオロケーション、表示されるSSID等のような信号に基づく)ロケーション情報に基づいたデバイス・グラフの視点に依拠する。たとえば、ユーザは、複数のホーム・ゲートウェイ(たとえば、本宅、週末用マンション、別宅)に関連付けられているかもしれないが、その場合、ロケーション情報は、特定のコマンドが適用されるべき特定のデバイスを決定することができる。特定の実施形態においては、システムは、デバイス・グラフにユーザ役割設定(ユーザ、コマンドおよびロケーションベース)の構成を提供することができる(たとえば、許可モデルは、完全制御のための管理者の役割と、許可が制限された限定ユーザ役割との構成を可能にすることができる)。たとえば、ユーザは、ホームオフィスで働いている間にユーザが現在楽しんでいる音楽を、(ステレオ・システムが置かれているリビング・ルームで遊んでいる)子供に変更してほしくないかもしれない。
オブジェクト・タイプ:特定の実施形態においては、様々なオブジェクト・タイプ(そのうちの1つもしくは複数は、デバイス・グラフにおいてノードによって、またはノードの属性として表すことができる)は、デバイス、デバイス・グループ、ホーム・ゲートウェイ、ユーザ、ゾーン(オブジェクトではないかもしれないが、ホーム・ゲートウェイにおいて属性としてシリアル化されたデータであり、ゾーンIDは、デバイスとゲートウェイとの関連付けにおいて使用される)、デバイス機能セットを含むことができる。
関連付け(その一部はデバイス・グラフにおいてエッジとして表すことができる):
・デバイス⇔ゲートウェイ:n:1、あるいは、1つのデバイスを複数のゲートウェイで制御することを可能にするn:m。上記のようにオプションでゾーンIDを伝えるかもしれない。
・ユーザ⇔ホーム・ゲートウェイ:n:m、管理者、主ユーザ、ゲストなどの役割について考える必要がある。
・ユーザ⇔デバイス:n:m、関連付けは、データのように許可を伝えられるであろう。
・デバイス⇔デバイス・グループ。データモデルでの永続的な関連付けとしてこれが必要かどうか、またはコマンド・テキスト解釈エンジンにおいて動的にグループを生成するかどうかはまだ定かではない。
・デバイス⇔デバイス機能セット。
例示的プロビジョニング・フロー:制御デバイス315に制御アプリをインストールした後、スマート・デバイスの電源を入れると、モバイル・アプリケーション上で通知を生成するためのトリガを誘発することができる。(特定の実施形態においては、アプリケーションは、ブルートゥース(登録商標)ロー・エナジー(BTLE:BLUETOOTH(登録商標)LOW ENERGY)(明示的/手動でのペアリング(ユーザ・アクション)なく、データの転送を可能にする「BTLE」サービス)を提供することができる。制御アプリは、さらに、シングルクリック・プロビジョニング工程をユーザに提示することができ、固有のセッション・トークンを生成するWIFIクレデンシャルの入力を要求する(バックエンド・システムに接続されているオンライン・アプリケーションにユーザがログインされている場合には、WIFIクレデンシャルは自動的に提供されることができる)。認証後、デバイスはゲートウェイ・デバイス310に接続することができる。一定のデバイスの場合、サードパーティ・アプリへのディープ・リンクを提示することができる。最後に、(サーバに記憶されている)どのタイプの情報をユーザがアプリに露出するつもりかを選択するようユーザに促すことができる。
例示的制御アプリ:特定の実施形態においては、アプリケーションは、コネクテッド・デバイスを見ること、ルールのセットアップ、およびコネクテッド・デバイスから制御デバイス上のメッセージング・アプリケーションへのステータス更新のプッシュを可能にすることができる。
ログインおよびプロビジョニング:特定の実施形態においては、ユーザのログインを実装するための複数のオプションが存在することができる。特定の実施形態においては、システムは、ユーザのオンライン・プロフィール・ページから関連のユーザ情報を転送することができる。さらなる実施形態においては、システムは、プロフィールを作成することができ、たとえば、プロフィールが以前にシステム上に存在しなかった場合、ユーザは、プロフィールの作成を一通り行わなければならないかもしれない。さらなる実施形態においては、システムは、デベロッパ自身のユーザ・サインイン・プロセスを作成するために、プロフィール・フレームワークを独自に使用する権利を得ることができる。
個人情報の転送:特定の実施形態においては、システムは、個人情報の転送を可能にすることができる。さらなる実施形態においては、システムは、ユーザ認証トークンを含むことができる。さらなる実施形態においては、識別されたアカウント情報は、ユーザ・トークンを使ってインターネットに一度接続されたデバイスによって、フェッチすることができる。特定の実施形態においては、ユーザは、氏名、プロフィール名、Eメール、電話番号、または身内の者によって認証されることができるが、これだけに限定されない。さらなる実施形態においては、情報は、WIFIネットワーク、BLUETOOTH(登録商標) MAC、または他の関連IoTデバイスによって転送されることができる。
IoTデバイスの関連付け:特定の実施形態においては、システムは、購入時(販売時点)に、特定の製品にユーザおよびコネクティビティ情報を関連付けることにより、事前プロビジョニングを可能にすることができる。さらなる実施形態においては、システムは、異なるインタフェース間の関連付けを可能にすることのできるパッケージを含むことができる。限定ではないが、たとえば、WIFIネットワーク−IoTデバイスとオプションのユーザ・トークンとにネットワーキング・ログイン情報を渡すこと、BLUETOOTH(登録商標)−IoTデバイスとオプションのユーザ・トークンとをモバイル・デバイスとペアリングすること、イーサーネット(登録商標)−オプションのユーザ・トークン、ZIGBEE(登録商標)およびZWAVEのペアリングを有効にすること。
サードパーティ・プラットフォームの統合:特定の実施形態においては、システムは、他のスマート・プラットフォームと通信するようになされたIoT製品の統合の有効化を提供する。
特定の実施形態においては、システムは、シームレスかつすぐに使える体験と、異なる製造業者のIoTデバイスをインテリジェントに接続する能力とを、IoT製品に提供することができる。特定の実施形態においては、システムは、IoT製品のための基盤インフラストラクチャの構築に必要なリソース投資の削減を提供することができる。特定の実施形態においては、システムは、プラットフォームの制約なく、他のIoTデバイスとインテリジェントに相互接続する可能性を提供することができる。
コネクテッド・ホーム・サービス:ゲートウェイ・デバイスのセットアップ
一例示的実施形態において、ゲートウェイ・デバイスは、任意の標準コンピューティング・デバイスまたはサーバとUSB電源ケーブル、MICRO SDカードおよび標準SDカード・アダプタに挿入したMICRO SDカード、WIFIドングル、BLUETOOTH(登録商標)ドングル、HDMI(登録商標)ケーブルとモニタ、ならびにZWAVEドングルに基づくことができる。特定の実施形態においては、ゲートウェイ・デバイスは、プロセッサ、近距離ネットワーキング機能、および本明細書で説明される機能の一部または全部を実行する能力を備える任意のコンピューティング・デバイスを含むことができる。
セットアップ画像:特定の実施形態においては、方法は、ホーム・ゲートウェイ画像を取得し、ゲートウェイ・デバイスにアプリケーションをインストールすることから始めることができる。特定の実施形態においては、MICRO SDカード(MICRO SDカード・アダプタを使用して)は、ゲートウェイ・デバイスに差し込むことができる。特定の実施形態においては、ゲートウェイ・デバイスは、さらに、アプリケーションを稼働し、MICRO SDカードにホーム・ゲートウェイ画像を復元することができる。さらなる実施形態においては、ゲートウェイ・デバイスからMICRO SDカードを取り外す前に、MICRO SDカードを(アプリケーションを通じて)取り出すことができる。
ホーム・ゲートウェイのプロビジョニング:特定の実施形態においては、HDMI(登録商標)ケーブルをゲートウェイ・デバイスに差し込んで、特定の工程の出力を見ることができるが、出力を見ることが要求されるわけではない。特定の実施形態においては、HDMI(登録商標)ケーブル/モニタを、ゲートウェイ・デバイスに差し込むことのできるUSBシリアル・ケーブルの代わりに使用することができ、これを使用して、スクリーンコマンドを、ボーレート115200で/dev/cu.usbserial−***と指定することができる。特定の実施形態においては、この方法でゲートウェイ・デバイスに接続する場合、(1)「ps‐A|grey node」に表示されるPIDを強制終了し、(2)「node/user/sharegateway/start.js」を実行することができる。
特定の実施形態においては、MICRO SDカードは、さらに、ゲートウェイ・デバイスに差し込むことができる。さらなる実施形態においては、すべてのドングルが取り付けられて、電源が入れられていることを確認することができる。特定の実施形態においては、ゲートウェイ・デバイスは数回リブートすることがあり、その時点でWIFIにプロビジョニングされるのを待つ。さらなる実施形態においては、制御アプリケーションを使用して、ホーム・ゲートウェイを探すことができる。さらなる実施形態においては、SSDIおよびパスワード・クレデンシャルをホーム・ゲートウェイに渡すことができる。さらなる実施形態においては、ゲートウェイ・デバイスをさらにリブートして、WIFIネットワークへの接続を試みることができる。
特定の実施形態においては、ゲートウェイ・デバイスをリブートすると、ホーム・ゲートウェイを新たなデバイスとして追加することができる。さらなる実施形態においては、アプリケーションに許可を付与する必要がある可能性がある。特定の実施形態においては、ホーム・ゲートウェイは、これでWIFIネットワークにプロビジョニングすることができる。さらなる実施形態においては、サーバは、新たに確立されたゲートウェイをユーザにアラートするメッセージをコンピューティング・デバイスまたはクライアントに送信することができる。
以下の例示的シナリオは、一人称の視点から、様々な使用ケースを説明する。
シナリオ1−新たなサムスン(Samsung)TVのセットアップ後、私はプロンプトに従い、自分のスマートフォンの指定アプリを使用してデバイスにログインした。私は、プロンプトに自分の電話番号を入力して時間を無駄にする直前にオプションのQRコード(登録商標)に気付き、全部クリックせずに済んだ。電話の指定アプリを使ってコードを撮ってしまえば、電話を使ってTVにログインすることができた。その後、指定アプリは、QRコード(登録商標)をそれ以上使用しなくても、そうしたければTVの他のアプリにログインするオプションも与えてくれた。簡単(パスワードや他のものが不要)なだけでなく、TVに面白いアプリも発見した。わずか数回のタップで、TVにHulu、Netflix、USA TodayおよびFandangoを構成した。友達が来たときにはときどき、指定アプリを使用して、自分のフォト・アルバムの中の1つに基づいたスライドショーにTVを設定する。
シナリオ2−退屈していたので、SLRカメラのメニューをクリックしていたら、私は、指定アプリでログインするオプションに気付いた。それをクリックすると、電話の背景画面がQRコード(登録商標)になり、電話の指定アプリを使ってログインする命令が出た。命令に従うと、電話は、私がログインしたのがどのブランドのカメラかが分かり、私のオンライン・フォト・アルバムへのアクセスを私のカメラに与えたいかどうかを尋ねてきた。今、私のカメラは、WIFIにつながっていると、自動的に私の写真を指定アプリのアルバムにロードする(アルバムは、私だけが見ることができるように設定済みである)。また、ここで、オンラインでストーリを投稿するときには、私が自分の電話またはデスクトップ・コンピュータから投稿しようとしていても、ストーリ・コンポーザは、私が自分のカメラで撮った写真を認識し、投稿にその写真を添付させることに気付いた。このように、高品質の写真の共有が非常に単純になる。
シナリオ3−私の友達は、『ゲーム・オブ・スローンズ(Game of Thrones)』を一緒に見るために私のアパートに立ち寄る。彼女はHBOを持っているので、普段は彼女の家で見るのだが、今日は彼女が自分のiPad(登録商標)を私の家に持ってきてくれたので、ここで、iPad(登録商標)で見ることができる。彼女がHBOを起動したとき、彼女は、彼女のソーシャルつながりの1人(私!)が所有するTVが部屋の中にあり、その(私の)デバイスで番組をストリームしたいかという通知を受けた。(ロケーション情報が考慮されたため、彼女は、私の近所の人のテレビについては通知を受けなかった)。彼女は私のデバイスで番組をストリーミングすることを確認し、一緒に堂々と視聴する。
特定の実施形態においては、ホーム・ゲートウェイのプロビジョニングは、BLUETOOTH(登録商標)LEで行うことができる。特定の実施形態においては、いくつかの特徴をもつサービスを実装することができる。
・(読み取りのみ)デバイスの公開鍵:任意の書き込み特性に書き込まれるすべてのデータは、この公開鍵で暗号化する必要がある。
・(書き込みのみ)パスワード。デフォルトでは空白だが、特定の実施形態においては、他の何かに設定することができる。特定の実施形態においては、パスワードは、決してプレーン・テキストでは送信されない。さらなる実施形態においては、設定されると、任意の書き込み特性に書き込まれるすべてのデータは、公開鍵で暗号化される前に、ハッシュされるかまたはパスワードを先頭に追加される。さらなる実施形態においては、初期パスワードは製造時に設定されて、デバイスのラベルに印刷することができる。
・(読み取り−書き込み)デバイス名、初期値、「ホーム・ゲートウェイxxxxx」、ここで、xxxxxはイーサーネット(登録商標)カードのMACアドレスの最後の6桁である。
・(読み取りのみ)バージョン
・(読み取りのみ)IPアドレス
・(読み取り−書き込み)WIFI SSID
・(書き込みのみ)WIFIパスワード
・(書き込みのみ)コマンド。特定の実施形態においては、「リブート」、「リセット」、「更新」などのうちの1つにすることができる。
・(読み取り−書き込み)エコー。特定の実施形態においては、BTクライアントがパスワードを使ってデバイスに接続できるかどうかをテストするために使用することができる。
特定の実施形態においては、ユーザがログインすると、アプリケーションは、コネクテッド・ホーム・サービス・デバイスについて、定期的なBTスキャンを実行することができる。さらなる実施形態においては、近くの不明なコネクテッド・ホーム・サービス・デバイスについて、システムは、エコー特性をテストしてデバイスがパスワード保護されているかどうかをチェックし、デバイスに関する通知をユーザに提示し、ユーザが通知をクリックする場合にはユーザがそれを追加したいかどうかを尋ね、デバイスがパスワード保護されている場合にはユーザにパスワードを尋ね、パスワード保護されていない場合には単にデバイスを追加することができる。
特定の実施形態においては、既知の近くのコネクテッド・ホーム・サービス・デバイスについて、デバイスが接続されている場合にはステータスをキャッシュし、エコー特性でキャッシュされたパスワードをテストしてパスワードが変更されていたらユーザに通知を提示し、デバイスが接続されていない場合にはユーザに通知を提示し、ユーザがいずれかの通知にクリックする場合にはWIFIクレデンシャルのパスワードを尋ねる。特定の実施形態においては、これらのすべてをデバイス明細スクリーンで行うことができる。さらなる実施形態においては、明細スクリーンは、デバイスの名称を変更するか、パスワードを設定/変更するか、WIFIを明示的に切断/更新するか、またはサポートされるコマンドを実行する能力を提供する。
特定の実施形態においては、システム300の要素は、以下のような、システム300とインタフェースを取るアプリケーションについて、アクセス・プロフィールを提供するAPIを含むことができる。
・ゲートウェイ・デバイス310:自宅のすべてのデバイスとインタフェースを取り、ローカル・アクセスとオフライン体験を提供する、その自宅内の中央エンティティ。
・バックエンド・システム320:メッセージング・アプリケーションから自然言語を使って自宅を制御する。
・自宅を管理するためのモバイル・アプリまたはブラウザベースの管理インタフェース(いずれも制御デバイス315上で稼働する)。
特定の実施形態においては、システムは、(1)1セットのプラットフォームAPIメソッドを露出し、(2)上記インタフェースのアプリIDに基づき、アプリ機能を使ってプロフィールを管理することができる。データ・ストアに記憶されている情報に関して、異なるクライアントが同期しなくなる可能性を避けるために、特定の実施形態は、トランザクション・キューを監視することができる。トランザクションは、「トランザクション」テーブルに書き込むことができ、これは自動的にインストレーションIDを加える。アプリケーションが提供するべきパラメータは、以下のものを含むことができる。
・ユーザ−ユーザがログインすると、これがユーザのアクセス権を評価するために渡される。空/ヌルの場合、ゲートウェイのコンテキストでトランザクションを実行する。
・ゲートウェイID−ユーザ、ゲートウェイまたはその両方が既知である必要がある。空の場合、インストレーションIDから、ゲートウェイが我々と通信しているかどうか、我々がバックエンド・システム320またはクラウド通信しているネイティブ・アプリによって提供されるサービスからコマンドを受信するかどうかをチェックする必要があるか、ゲートウェイがユーザIDから固有であるかどうかをチェックする必要があるか、またはゲートウェイのリストをユーザに戻して、どれに対してアクションを実行するべきかを確認する必要がある。
・シーケンス番号−空/提供されていない場合、ゼロと見なす。非同期的に応答を待っている間に、クライアントが複数のコマンドを発行する(複数のトランザクションをキューに入れる)ことを可能にするために、シーケンス番号は強く推奨される。
・バージョン−APIバージョンのコンテキストでコマンドを評価する柔軟性をある程度もたせるためにこれを追加し、そのやり方は下位互換性を壊すことなく、大きなAPI変更を可能にする。
・コマンド−コマンド名とパラメータとを含むJSON符号化アレイ。パラメータはコマンド従属で、API明細セクションに細かく明細化される。基本的な構文は次の通り。{“command”:“<command>”,“paramname1”:“<paramvalue1 >”,…,“paramnameN”:“<paramvalueN>”}
特定の実施形態においては、トランザクションを保存するためのリターン・コードは、トランザクション・キューへのキューイングの成功を示すことができる。
特定の実施形態においては、システム300は、以下のインタフェースを提供することができる。
ゲートウェイ・デバイスの対話:セットアップと構成
1.新たなホーム・ゲートウェイを初期化(「新たなスマート・ホームをセットアップしたい」→POST/gw/id)
2.ホーム・ゲートウェイを削除(「スマート・ホームを削除」→DELETE/gw/gw_id)
3.ホーム・ゲートウェイを再初期化(「スマート・ホームを再始動」)−現在:削除
4.ユーザを(役割とともに)ホーム・ゲートウェイに追加(「ユーザを私のスマート・ホームに追加」→POST/gw/user)
5.ホーム・ゲートウェイからユーザを削除(「ユーザUSERNAMEを削除」→DELETE/gw/user/user_id)
6.ユーザの役割を変更−許可を維持
7.ホーム・ゲートウェイのユーザのリストを取得(たとえば、管理者ページについて)
8.デバイスのリストを取得
9.デバイスを追加
10.デバイスを削除
11.デバイスを更新−デバイスのメタデータ
12.部屋のリストを取得
13.部屋を追加:デバイスを追加するためのダイアログで、現在の部屋に加えて「znew room」を提示し、新たな部屋に置かれているデバイスを記憶するときに暗黙的に作成。
14.部屋を削除:一定の期間より長く、どのデバイスでも使用されない場合、暗黙的(未使用の部屋を自動失効させる)
15.シーンを取得(学習し管理されるシーンの、ユーザ固有のリスト)
16.シーンを追加
17.シーン/ルールを削除
18.シーン/ルールを更新
19.デバイス・イベントを報告(これは、デバイスから受信されるイベントのストリームとすることができる)
ゲートウェイ・デバイスの、コネクテッド・デバイス305との対話(これには、ホーム・ゲートウェイでの公開IPまたはクラウドへの持続的接続が必要な場合がある)
1.デバイスのステータスを取得
2.デバイス情報を取得
3.デバイスにコマンドを送信
a.デバイス機能プロフィールから(引き出したデバイス情報に基づいてバックエンドで機能を管理するので、この複雑さはユーザからは見えないようにされる)
b.ホーム・ゲートウェイのバックエンド/メッセージング・アプリケーション(対話はメッセージング・アプリケーション統合APIからトリガされる)
i.コンテキストを取得(初期の入力分析から、意思を決定するために使用され、コマンドに使用される機能をもつすべてのデバイスを取得)
ii.シーン/ルールを取得−ユーザの意思のさらなる絞り込みのため
iii.シーン/ルールをトリガ
制御UI(制御デバイス315上)(基本的なセットアップ、デバイスのペアリングおよびコネクテッド・シングスの管理に使用する)
1.これはホーム・ゲートウェイとローカルでも対話することができるので、ホーム・ゲートウェイ経由で間接的にすべてのコマンドを使用することができる。
ゲートウェイ・デバイスの実装
特定の実施形態においては、ゲートウェイ・デバイス上で稼働するメインプロセスは、(a)統合層330からのプッシュをリッスンし、(b)受信したプッシュ・データを標準出力に書き込むことができる。特定の実施形態においては、ハブプロセスはC言語で書き込むことができる。
特定の実施形態において、ルール・ランタイム・インタープリタは、ローカルに記憶されているルールを読み込んで、メインプロセスをスポーンしてその出力を監視するJAVASCRIPT(登録商標)アプリケーションを備えることができ、(a)統合層330から受信した、プッシュされたデータを構文解析し、(b)構文解析した情報に基づいて、ルールを更新すること、新ルールをローカルに記憶すること、デバイス制御を実行すること、クエリを実行すること、デバイスを検出すること、ルールを構文解析すること、ルールによって示されるトリガ(時間またはセンサ)を待つこと、トリガ時にイベントを実行すること、デバイス制御を実行すること、ルールのトリガを可能にするローカル・ウェブサーバをローカル・ネットワーク経由で稼働することのうちの1つまたは複数を行う。
例示的プッシュ・プロトコル
Figure 0006909204
デバイスのアクション
Figure 0006909204
ゲートウェイの初期化:特定の実施形態においては、第1の工程(開封して電源に接続した後)は、ホーム・ゲートウェイ(ホーム・ゲートウェイ)をホーム・ネットワークおよびインターネットに接続することである。このために、プロビジョニングをhome gateway BLUETOOTH(登録商標)provisioning/command flowに記述させる。さらなる実施形態においては、次の工程で、ホームGWは、クラウド・エンドポイントへの接続を試みて、固有デバイスIDを取得し、デバイスを所有者(システムID)に関連付け/オンライン認証のためにデバイスをログインし(Device Flowを参照)、デバイスのメタデータ(ホーム名、ロケーション情報など)を維持することができる。特定の実施形態においては、その時点で、ホームGWは、自宅内のデバイスを検出してGWに自動または手動で追加されるデバイスを制御する準備が整う。例示的な機能は、ゲートウェイをホーム・ネットワークに接続すること、メッセージング・アプリケーションのチャットサービス、スマート・ホームのボットの導入を含むことができる。
デバイスおよびユーザの管理:特定の実施形態においては、初期化後にGWが動作できる状態になったら、自宅内のデバイスとユーザとを追加/管理して、ルールを作成/学習するのを助ける必要がある。例示的な機能は、追加、削除、置換、メタデータの管理、デバイスのグループ化、およびタグの関連付けと修正などを含むことができる。
デバイスの管理:特定の実施形態においては、プロセスを手動でトリガするか、または自動検知されたデバイスに関して通知を与えられることによって、デバイスを自宅に追加することは、以下のことを伴うことがある。
・固有クラウド・デバイスIDを生成
・デバイスIDによって識別されるコネクテッド・デバイスについて、クラウド・オブジェクトを作成し、ホーム・ゲートウェイに関連付ける
・クラウド・デバイスIDをゲートウェイに追加(クラウドは、このIDを使用してデバイスを参照する)
・クラウドにデバイスの基本データを追加
○デバイス・テンプレート・テーブル(既知のすべてのデバイスのプロトタイプを含む)に関連付ける
○デバイス機能との関連付け−これは、デバイス・テンプレートから一意に関連付けられていないユーザ対話IDが必要になる場合がある。デバイス機能は、ユーザが自宅を制御するレベルである。そのため、たとえば、スマート・スイッチは、我々が自動で検出できないスイッチの背後の実際のデバイスに応じて、「照明オン/オフ」または「ファン・オン/オフ」などの機能と関連付けられるかもしれない(一般に、オン/オフの切り替え中に電流を測定し、この曲線の特性からデバイスを識別するのが良いであろう、フェーズ5)。
○タグからコネクテッド・デバイスにメタデータを追加する。タグは、タイプおよび値を有し、ホームGWのコンテキスト内に存在する(そのため、リビング・ルームの名称を今日は「Livingroom」とし、その家の「Livingroom」を使用した他の誰にも影響することなく、それを明日「mywasomelivingroom」に変更することができ、しかも1つの場所において変更するだけでよい(コネクテッド・デバイスに直接記憶するソリューションと比較して)。
ユーザの管理:管理者を追加する(そのため、デバイスを追加することができる)。ホームGWは1名の所有者を有することができる。自宅(またはその一部)を制御するユーザを追加する。
日常的な使用:特定の実施形態においては、これは自宅の制御を含むことができるが、過去の挙動に基づいてルールを提案するために我々が使用し、スマート・ホーム体験をパーソナル化するクラウド内のデバイスからのイベント・フィードを引き出すことも含む。
特定の実施形態においては、デバイス・ログイン機能は、デバイスの認証を提供するのに役立てることができる。特定の実施形態においては、フローは次の通りにすることができる。(1)デバイスが、サードパーティ・システムの認証エンドポイントにアプリID、クライアントキーを使ってコンタクトする、(2)デバイスがロングコードおよびショートコードを受信する、(3)デバイスがユーザにショートコードを提示する、(4)ユーザはデバイスのウェブサイトに行き、そこで同じアプリIDでソーシャル・ネットワーキング・システムにログインする、(5)ユーザはサードパーティ・システムのページに導かれ、そこでユーザはショートコードを入力する、(6)サードパーティ・システムのページは、許可を要求するダイアログを提示し、ユーザにアプリをTOSするよう求める、(7)その間、デバイスは、サードパーティ・システムのサーバにロングコードでピングし続け、認証されたかどうかを尋ねる(わずか5秒ごと。コードは10分で失効させることができる)。
特定の実施形態においては、ショートコードを提示する代わりに、デバイスは、コードのブロードキャストを開始することができる(BLUETOOTH(登録商標)、mDNS、ZIGBEE(登録商標))。特定の実施形態においては、これは、デバイス固有のウェブサイトまたはアプリケーションを通じてではなく、信頼できるアプリを通じて機能することができる。そのため、ログインの承認は、デバイスのアプリIDとは異なるアプリIDからなされる。さらなる実施形態においては、許可ダイアログを、信頼できるアプリUXフローに統合することができる(たとえば、メッセージング・アプリケーションのチャット・ウィンドウに何らかの方法で埋め込む)。
これには新たなエンドポイントが必要になる場合がある。
ペアリングされないモードのEデータ転送プロトコル
特定の実施形態は、BLUETOOTH(登録商標)接続によりWIFIログイン情報の転送を可能にする。特定の実施形態においては、接続はTCP様のBTLE接続と考えることができ、ゲートウェイ・デバイスは、接続に利用できるサービスをブロードキャストすることができ、各サービスは固有のUUIDによって定義されることができ、サービスは、1つまたは複数の読み取り/書き込み特性を有することができる。それから、クライアント・デバイスは、ゲートウェイ・デバイス上でサービスとの接続を確立することができる。
さらなる実施形態は、データを送信して書き込むことによって、データの伝送を可能にする。特定の実施形態においては、BTLE4.0は非常に小さなデータ・バースト(たとえば、最大20バイト)の送信をサポートする(注1)。さらなる実施形態においては、20バイトよりも大きいデータを送信するとき、最初の20バイトだけが転送される。(注1):我々がTCP様のBTLE接続を設計する理由は、この20Bという限られた容量のためである。明細書の範囲を広げるように、基本的な課題(101 challenge)を克服するのに役立つ包括的な目的、または特定の実施形態というべきか。
特定の実施形態においては、20バイトより大きいデータを転送するとき、データは、それぞれ20バイトサイズを有するパケットに分割することができ、各パケットの受信が通知パケットによって肯定応答されることができる。パケットのヘッダに基づいて、パケットからのペイロード・データが宛先でアセンブルされる。特定の実施形態においては、パケットのフォーマットは、次の通りにすることができる。ヘッダは、6バイトの情報を含む。ヘッダのうち最初の2バイトは、受信されるのが最初のパケット(たとえば、値1を設定して指定される)か、中間のパケット(値=0に設定して指定される)か、または最後に受信するパケット(たとえば、値=2に設定して指定される)かを識別することができる。ヘッダのうち次の2バイトは、論理パケットIDを識別することができる。ヘッダのうち最後の2バイトはオプションであり、将来のスケーラビリティのために使用することができる。
特定の実施形態は、デバイスとWIFIネットワークとのシームレスなペアリングのためのシステムを記述する。従来、RASPBERRY PI WIFI構成のコマンド・ラインを使用して、ユーザは、まず、利用できるネットワークをスキャンし、ネットワーク構成をオープンにし、WIFIネットワークに接続するためのクレデンシャルを手動で追加することができる。特定の実施形態においては、WIFI構成は、BTLEで自動にすることができる。
特定の実施形態においては、システムは、RASPBERRY PIシステム、制御アプリ(たとえば、ソーシャル・ネットワーキング・アプリケーションまたはモバイル・アプリケーション・フォン・アプリ)およびホーム・ゲートウェイ画像を備えることができる。特定の実施形態においては、ユーザは制御アプリを開くだけでよく、その制御アプリが、ユーザのデバイスの範囲内の無線ネットワークを自動的に検出し、WIFI SSIDおよびパスワードを入力することができる。特定の実施形態においては、WIFI SSIDおよびパスワードを入力すると、RASPBERRY PIコマンド・ラインを使用する必要なく、ログインが完了する。
特定の実施形態においては、RASPBERRY PIは、接続に利用できるプロビジョニング・サービスをブロードキャストすることができ、そのサービスは、固有UUIDによって定義することができ、そのサービスは、読み取り/書き込み特性を有する。さらなる実施形態においては、ユーザのデバイス・フォン・アプリケーションは、RASPBERRY PI上のサービスとの接続を確立することができる。特定の実施形態においては、システムは、販売時点で特定の個人に割り当てることができる。すなわち、システムをオープンにして、システムをあなたのネットワークに接続すると、システムは、この特定のデバイスはこの特定のユーザに属するということを認識することができ、自動的にユーザのデバイスをシステムに接続できるようにすることができる。
たとえば、以下に、デバイスのアクセス認可と割当ての実施態様を示す。ロバート(Robert)の家政婦シェリー(Sherry)が、ロバートに、「明日はいつもの時間に行けないので、今日行くことはできるかしら」とメッセージを送る。ロバートはメッセージング・アプリケーションのダイアログを開き、彼の玄関ドアを制御するデバイス(たとえば、ホーム・ゲートウェイ)に対応する連絡先に、「シェリー・ブラウン(Sherry Brown)に玄関ドアへキーへのアクセス権を与える」と連絡をする。デバイスは、メッセージング・ダイアログ経由で「シェリー・ブラウンと私をグループ・チャットに追加して、グループ・チャットで『はい』と返信をするようにお願いしてください」と返信する。ロバートはグループ・チャットを開始して「シェリー、キーのアクセス権の付与に同意するために、はいと返信してもらえるかい」と述べる。シェリーが「はい」と返信をする。シェリーは、(ロバートの自宅の玄関ドアを表す連絡先として提示される)デバイスから、「本日、あなたには、当機を開けるためのアクセス権が与えられています。通りたいときにはお知らせください」というメッセージを受信する。シェリーは、家に到着すると、メッセージを「ロバートの自宅の玄関ドア」に入力する。ドアが開いたという「開ける」メッセージがロバートに送信される。ロックが解錠する。
特定の実施形態においては、上記の使用ケースの場合、ZWAVEデバイス通信、メッセージング・アプリケーション内の完全なダイアログのサポート、ルール・エンジンを含むコントローラの論理、およびキー失効論理が存在することができる。
たとえば、以下に、デバイスのアクセス認可と割当ての実施態様を示す。ベビーシッターと、ロバートの娘アリス(Alice)とが帰宅する。残念ながら、ベビーシッターはキーを見つけられない。ベビーシッターはロバートに、「キーが見つからない」とメッセージを送る。ロバートは、ホーム・ゲートウェイのバックエンド用のメッセージング・アプリケーション・ダイアログを開く。「シェリー・ブラウンに玄関ドアのキーへのアクセス権を与える」。ベビーシッターは、(ロバートの自宅の玄関ドアの連絡先として提示される)ホーム・ゲートウェイのバックエンドから、「あなたには、当機を開くためのアクセス権が与えられています。そう言ってください」というメッセージを受信する。ベビーシッターは、「開ける」というメッセージを入力する。ロックが解錠する。
特定の実施形態においては、上記の使用ケースの場合、ZWAVEデバイス通信、メッセージング・アプリケーション内の完全なダイアログのサポート、ルール・エンジンを含むコントローラの論理、およびキー失効論理が存在することができる。
たとえば、以下に、おそらくZIGBEE(登録商標)かZWAVEを使用する、デバイスのプロビジョニングの実施態様を示す。ロバートに、新しいスマート照明が配達される。ロバートは箱を開けて、照明に取り付ける。特定の実施形態においては、モバイル・アプリケーションでのスキャンを開始するために、ZWAVEプロビジョニングが必要である可能性がある。このような状況においては、ロバートは、スキャンの開始を要求される可能性がある。ロバートは、ホーム・ゲートウェイのバックエンドを表す連絡先から、「最近購入したXXX照明の電源が入り、あなたのネットワークに加わる準備ができています。アクセス権を与えますか」というメッセージを受信する。ロバートは、「はい」と返信する。ホーム・ゲートウェイのバックエンドは、「この照明をどう呼びましょうか」と尋ねる。ロバートは、「アリスの部屋の照明」と返信する。ホーム・ゲートウェイのバックエンドは、「かしこまりました。XXXプラグを、アリスの部屋の照明と名付けます」と返事をする。アプリケーションは、「あなたのデバイスを制御するためにスイッチを使いたいですか。番号を返すと、1つのスイッチを選択します。いいえと返すと取り消します。(1)アリスの部屋のスイッチ、(2)裏通りのスイッチ」と返信する。ロバートは、「1」と述べる。
ホーム・ゲートウェイのアプリケーションに対応する連絡先は、「アリスの部屋のスイッチは、現在、アリスの部屋の照明を制御しています(ルールを保存しました)」と返信する。ロバートは、「アリスの部屋の照明を点灯」と述べる。ホーム・ゲートウェイに対応する連絡先は、「アリスの部屋の照明を点灯します」と返信し、照明を点灯する。後で、アリスは、ベッドに寝かされた後、起きて照明を手で点灯する。アリスが押して入れた照明のスイッチは、予めプロビジョニングされているWEMO WIFIスマート・スイッチである。ホーム・ゲートウェイに対応する連絡先は、「ロバートさん、アリスの部屋の照明が点灯されました」(あるいは)「ロバートさん、アリスの部屋の照明は点灯していますか」と応答する。ホーム・ゲートウェイに対応する連絡先:「アリスの部屋の照明が点灯しています」。ロバート:「アリスの部屋の照明を消せ」。ロバート:「アリスの部屋の照明を明日の午前9時に点灯して」。ホーム・ゲートウェイに対応する連絡先:「ルールを保存しました」。
特定の実施形態においては、上記の使用ケースの場合、特定の照明/プラグのサポート用APIが存在することができ、サポートは、メッセージング・アプリケーション内の完全なダイアログをサポートするために存在することができる。どのデバイスも、WIFI、ルール・エンジンを含むコントローラ内の論理、およびZWAVEデバイス通信へのサインオンをできるようにすることができ、プロビジョニング・フローを実装することができる。
たとえば、以下に、RASPBERRY PI、BT/WiFI)を使用する上記使用ケースの代替例を示す。ロバートに、新しいスマート・プラグが配達される。ロバートは箱を開けて、自分のリビング・ルームの照明をスマート・プラグに接続する。ロバートは、ホーム・ゲートウェイのバックエンドから、「最近購入したXXXスマート・プラグの電源が入り、あなたのネットワークに加わる準備ができています。アクセス権を与えますか」というメッセージを受信する。ロバートは、「はい」と返信する。ホーム・ゲートウェイのバックエンドは、「このプラグをどう呼びましょうか」と尋ねる。ロバートは、「アリスの部屋の照明」と返信する。ホーム・ゲートウェイのバックエンドは、「かしこまりました。XXXプラグを、アリスの部屋の照明と名付けます」と返信する。ロバートは、「アリスの部屋の照明を点灯して」と述べる。ホーム・ゲートウェイのバックエンドは、「アリスの部屋の照明を点灯します」と返信して、照明を点灯する。後で、アリスは、ベッドに寝かされた後、起きて照明を手で点灯する。ホーム・ゲートウェイのバックエンド:「ロバートさん、アリスの部屋の照明が点灯しました」。(あるいは)ロバート:「ホーム・ゲートウェイのバックエンド、アリスの部屋の照明は点灯しているか」ホーム・ゲートウェイのバックエンド:「アリスの部屋の照明は点灯しています」ロバート:「消灯して」。
特定の実施形態においては、上記の使用ケースの場合、BT/WIFIデバイスのプロビジョニング・フローを実装することができる(ホーム・ゲートウェイのBLUETOOTH(登録商標)のプロビジョニング/コマンド・フロー)。加えて、RASPBERRY PI画像は、完全な機能、メッセージング・アプリケーション内の完全なダイアログをサポートする特定の照明/プラグのサポート用のAPIとすることができ、どのデバイスも、WIFI、ルール・エンジンを含むコントロール内の論理、およびRASPBERRY PIに有線接続されるプラグ設備にサインオンできるようにすることができる。
使用ケース:招待状の送信。招待された人がイベントの場に来ると、「無線アクセスポイントが接続に利用できます。接続しますか」、という通知を受信する(ビーコンを用いてトリガされる)。同意する場合、その人は、自動的にイベントのWIFIネットワークに移行する。イベント参加者の全体の嗜好と好みに基づいて、イベントの音楽プレイリストが編集される。イベントの所有者は、ホーム・ゲートウェイのバックエンドに「イベント音楽の演奏開始」というメッセージを送って、音楽を始める。グループ・チャット(イベント後に名付けられる)が自動的に作成されるので、人々は、音楽/写真に対する明示的な要求を行うことができる。イベント参加者がグループ・チャットに写真を投稿すると、それは、イベントで表示されるスクリーン型のデバイスに転送される。さらなる実施形態においては、アプリベースのブートストラップをすることができる。さらなる実施形態においては、アプリをインストールしていない参加者については、イベントへの参加を確認したときに、ユーザのデバイス上のメッセージング・アプリケーションに、アプリへのリンクを付けたメッセージを送信し、ユーザにサインインを促すことができる。さらなる実施形態においては、出席検知が存在することができる。特定の実施形態においては、制御アプリは、iBeaconをリッスンすることができる。特定の実施形態においては、アプリケーションまたはサービスは、バックグラウンドでBTLEスキャンを実行する。スキャンは、イベント開始の5分前に統合層330からのプッシュ通知によりトリガされ、ユーザが通知に従って行動すると、または(遅くとも)イベントの終了時に、アプリケーションまたはサービスによって停止される。特定の実施形態においては、アプリはOSにiBeaconを登録し、ビーコンが検知されるとOSがそれをトリガする。さらなる実施形態においては、アプリは、iBeaconを検知し、起動されると、イベント用の固有IDで特定のBTサービス・ブロードキャストをスキャンする。特定の実施形態においては、システムはこのためにGravity回転コードを使用し、GraphQLエンドポイントを呼び出し、Gravityビーコンに関連付けられて、イベントのページを指すURLを取得することができる。さらなる実施形態においては、システムは、ホーム・ゲートウェイからイベント固有のIDをブロードキャストすることができる。さらなる実施形態においては、アプリケーションは、WIFIクレデンシャルを用いてBTブロードキャストを読み取ることもできる。
特定の実施形態においては、上記の使用ケースの場合、イベントから選別参加者までの流れは、グループ・チャットで実施されることができる。加えて、通知用のUIを可能にし、新たなWIFIネットワーク(任意のデバイス)に転送し、「いいね!」に基づいてプレイリストを生成し、(音楽プレーヤと統合するべき)音楽をストリーミングし、グループ・チャットの写真を第2のスクリーンにリダイレクトし、第2のスクリーンに表示する。
メッセージング・アプリケーションを使用したスマート・デバイスの制御、管理および起動
特定の実施形態は、ユーザが、ユーザのスマート・デバイスを制御、管理または起動するために、メッセージング・アプリケーションを通じて通信することを可能にする。さらなる実施形態では、ユーザがユーザのスマート・デバイスを制御、管理または起動するときに自然言語を使用できるように、人間のような知能をメッセージング・アプリケーション内に実装することができる。特定の実施形態では、ユーザが特定の照明を点灯するよう頼むと、メッセージング・アプリケーションは、厳密にどの照明を点灯しなければならないのかを伝えられる必要なく、周囲の因子に基づいてどの照明を点灯するべきかを推測することができる。たとえば、活動のために台所の照明が点灯されていることをメッセージング・アプリケーションがユーザに通知すると、ユーザが消灯したかったのが台所の照明であると示さなくても、ユーザは、照明を制御するデバイスに対応する連絡先に「照明を消して」と送信するだけでよい。メッセージング・アプリケーションは、ユーザのメッセージを受信したことに応答して、台所の照明を消灯すべきだと分かることができる。
さらなる実施形態においては、ユーザは、メッセージング・アプリケーションを使用して、スマート・デバイスにクエリを送り、プログラミングし、および管理する能力を有することができる。たとえば、「自宅のデバイスを一覧表示」。さらなる実施形態においては、ユーザは、メッセージング・アプリケーションの入力を使用してスマート・デバイスを制御する能力を有する。
さらなる実施形態においては、ユーザは、メッセージング・アプリケーションの入力を使用して、スマート・デバイスからデータ、通知および警報を受信する能力を有する。たとえば、「お宅の玄関ドアが開かれました」。さらなる実施形態においては、メッセージング・アプリケーションは、スマート・デバイスのコンテキストの中で、ユーザとの自然言語のチャットを理解する能力を有する。特定の実施形態では、これは、メッセージング・アプリケーションからのテキストを構文解析することによって行うことができる。さらなる実施形態においては、メッセージング・アプリケーションは、以前に使用したデバイスからコンテキストを構築し、どれを使用するべきかを推測する能力を有する。すなわち、メッセージング・アプリケーションおよびユーザからの履歴コンテキストに基づいて、メッセージング・アプリケーションは、どのデバイスをユーザが制御または管理したいのかを推測することができる。
さらなる実施形態においては、デバイス・グラフ(これは、いくつかの実施形態では、ソーシャル・グラフに含むことができる)は、スマート・デバイスに関連付けられているノードを含むことができる。特定の実施形態においては、スマート・デバイスは、ユーザの自宅内にあるデバイスとすることができる。さらなる実施形態においては、ユーザの自宅内に置かれている各デバイスは、デバイス・グラフのノードによって表すことができる。さらなる実施形態においては、新たなつながりを作成するとき、ノードは、該ノードとその新たなつながりとの間にエッジを作成することができる。さらなる実施形態においては、ユーザのデバイスは、グラフ内の他のユーザまたはさらに他のデバイス間のエッジを含むことができる。
特定の実施形態においては、メッセージング・アプリケーションを使用したコネクテッド・デバイスへの一時的なアクセスを採用することができる。特定の実施形態においては、システムは、所定の閾値を上回る友情係数を有する2名のユーザを決定することができ、その場合、デバイスへの一時的なアクセスをユーザに許すことができる。たとえば、ソーシャル・ネットワーク上の二者が所定の閾値を上回る友情係数を有する場合、システムは、メッセージング・アプリケーションを通じて一時的なドア開放トークンを送信することができ、したがって、友達がユーザの近所にいる場合、その友達はユーザの家に立ち寄って、自由に玄関ドアを入ることができる。さらなる実施形態においては、HUBへのバックエンド接続は、トークンの使用のチャネル認可にすることができる(たとえば、トークンの送信者は許可を共有させる必要がある)。
特定の実施形態においては、アクセスおよび認可は、メッセージング・チャット・セッションに友達を追加することにより実施することができる。特定の実施形態においては、認可のための容易に理解されるグループの枠組みとしてメッセージング・アプリケーション・チャットを使用することで、より一般化されたバージョンを採用してもよい。特定の実施形態においては、システムは、一時的なWIFIネットワークを作成し、その後制限時間が経過した後にそれを削除することによって、ネットワークへの時間制限付きアクセスを付与することができる。さらなる実施形態においては、帯域外メカニズムを通じて(たとえば、イベント招待またはプッシュ通知により)一時的なWIFI SSIDをブロードキャストすることができ、それにより、特定のユーザがWIFIの近接内に到着するか、または特定のロケーションに到着すると(たとえば、SSIDが非表示の場合)、自動的な接続を可能にする。
特定の実施形態においては、システムは、ユーザの習慣および挙動を学習することができ、その時点でシステムは自動ルールを生成することができる。たとえば、ユーザは、帰宅するといつもステレオの電源を入れる。システムは、ユーザが自宅に到着するといつもステレオの電源を入れると決定することができ、その時点で、システムは、ユーザが帰宅するとステレオの電源を入れる、というルールを生成するであろう。
特定の実施形態においては、システムは、ユーザの傾向および習慣を学習して、特定のルールについてのスコアを計算することができる。スコアが一定の閾値に達すると、そのルールをシステムが採用開始することができる。特定の実施形態においては、システムは、環境要因(たとえば、外が明るいか暗いか、寒いか暑いか、など)を考慮することができる。さらなる実施形態においては、ルールは、各イベントに固有にすることができ、各イベントに例外が設けられる。特定の実施形態においては、HUBからの条件セットが、ユーザの自宅内に置かれているすべてのスマート・デバイス(たとえば、音楽プレーヤ、ドアのロック、電気製品など)を処理することができる。
特定の実施形態においては、イベントは、コネクテッド・デバイスによって生成される(たとえば、ドアの開閉、バスルームの照明の点灯)。特定の実施形態においては、条件は環境に関係する。特定の実施形態においては、差分(デルタ)は、イベント間のタイム・スライスをいう。
特定の実施形態においては、イベントが発生するたびに、差分内(たとえば、Dmaxは1分に等しく、経験に基づいて決定される)のイベント(シーケンスと呼ばれる)が評価される(たとえば、イベント1、イベント2...)。さらなる実施形態においては、シーケンスについてスコアが生成される。Sシーケンス=1−Π(Dmax−min(deltaN,Dmax))/Dmax。さらなる実施形態においては、このSシーケンスは、前のシーケンスおよび条件に対して評価することができる。さらなる実施形態においては、同じ条件のシーケンスが発生すると思われる場合、スコアには、現在のSシーケンスを乗じることができる。さらなる実施形態においては、スコアが一定の閾値に達するかどうかを決定するために、後の計算を採用することができる。
ゲートウェイ・アプリケーションAPI
特定の実施形態においては、自宅のゲートウェイ・アプリケーションは、我々が制御している物理的なハードウェア・デバイスと、デバイスを制御するためにユーザがインタフェースを取るバックエンドとの間にある。したがって、ゲートウェイは、バックエンドから送られてくるコマンドを取得し、物理的なデバイスを制御する命令にそれを変換することを担当する。
入力:統合層330からのプッシュ:特定の実施形態においては、一般的なプッシュ構造は、以下のようにcurlフォーマットにすることができる。
Figure 0006909204
特定の実施形態においては、アプリID(たとえば、デバイスID)およびRESTキーを、使用する特定のデバイスから取得するべきである。現在のアプリのID/キーは、「ro2sqHypZCVs4qe6dwvj31gOYLaux6hBFGd6J54g」、「dl5gBnYcsubgJtG91dGPYi0x40rFWu2ZyNxJ6inZ」である。特定の実施形態においては、単一のデバイスにプッシュを誘導したいときには、where節を使用することができる。特定の実施形態においては、すべてのデバイスにプッシュを送信するには、where節を省略することができる。特定の実施形態においては、gateway installation IDは、各デバイスについて生成される固有識別子である。これもホーム・ゲートウェイ/インストレーション・テーブルの統合層330に記憶することができる。特定の実施形態においては、commandは、ルール、検出、クエリ、制御、または更新のうちのいずれかにすることができる。これらのコマンドのそれぞれは、固有のフィールドに、以下に概説するコマンド・キーに従うことを求める。
ルール:特定の実施形態において、ルール・コマンドが指定される場合のプッシュ・データ・フィールドの例示的な構造を以下に概説する。
Figure 0006909204
特定の実施形態においては、commandは上記と同じである。この場合、これが、現在のプッシュがルールを処理することを指定する。特定の実施形態においては、actionフィールドは、ルールで何が起こることになるか、つまり「更新」または「削除」のいずれかを指定する。指定されていない場合、デフォルトで更新になる。更新は、ルールを作成または更新するために使用するべきで、削除は、ルールを削除する。特定の実施形態においては、rule_idフィールドは、どのルールに基づいて行為するかを指定する。新たなルールを作成しようとするときであっても、これを必ず指定しなければならない(この場合、これが新ルールのidとして使用される)。これは、固有のものにすることもできる。特定の実施形態においては、rule_dataフィールドはアクションの更新にのみ使用し、アクションの削除には使用しない。これは、ルールを更新/保存するために使用されるデータを含む。具体的なフィールドは下記の通りである。さらなる実施形態においては、nameフィールドがルールの名称を指定する。これは、通例、ユーザがそれを参照するために使用できる、より分かりやすいルール名称にするべきである。さらなる実施形態においては、triggerフィールドは、ルールのトリガを指定するために使用される。デバイスが一定の状態に入るときに起動されるデバイスベースのトリガと、クローンジョブを作動させるために使用される時間ベースのトリガの、2タイプのトリガがサポートされる。特定の実施形態においては、トリガ・フィールドは、以下のように見えるべきである。eventフィールドは、「時間」をサポートしないことを除き、ある条件では「状態」フィールドと同一に構成される。詳しい情報については、そのセクションを参照のこと。
Figure 0006909204
特定の実施形態においては、cronフィールドは、ルールのクローンジョブを指定し、そのクローンジョブは、指定時刻にルールを実行させる。トリガのイベント・フィールドが文字列「時刻」である場合にのみ、これが参照される。特定の実施形態においては、conditionsフィールドは、ルールを実行する前に追加の条件を指定することを可能にする。これは、AND、ORおよびNOT論理演算子をサポートするJSONツリーとして形成される。これはさらに、現在の時刻をチェックするために、およびデバイスが指定の状態にあるかどうかをチェックするために使用することができる。conditionsフィールドの例を以下に示す。
さらなる実施形態においては、typeフィールドは、これが状態チェックか、または論理演算かを指定する。前述したように、サポートされる論理演算は、AND、ORおよびNOTである。値、範囲および時刻の3つの状態チェックがサポートされる。
さらなる実施形態においては、check_typeフィールドは、定義される状態チェックのタイプを指定するために使用される。これは、論理演算については必要ない。値チェックを使用して、デバイスが指定状態にあることを確認する。範囲チェックは、値の範囲を指定できることを除き、値チェックと同じ機能を提供する。時刻チェックは、ルールを実行するべき時刻を指定するために使用される。特定の実施形態においては、範囲または時刻チェックが定数である場合、range_minおよびrange_maxフィールドを指定しなければならない。特定の実施形態においては、値チェックが定数である場合、valueを指定しなければならない。
さらなる実施形態においては、state_nameフィールドを使用して、チェックする特定のパラメータを指定する。範囲および値のチェックの場合、これは、チェックされるデバイスの値である。時刻チェックの場合、これは、分、時、日または月のいずれかにすることができる。時刻チェックに厳密な値を指定するには(時刻以外は、値チェックと同様)、range_minおよびrange_maxフィールドに同じ数字を使用するべきである。
Figure 0006909204
特定の実施形態においては、actionsフィールドは、ルールがトリガされて条件が満たされると、厳密に何が起こるべきかをルールに伝える。例は以下の通りである。さらなる実施形態においては、deviceIdフィールドは、どのデバイスにアクションを実行するかを指定する。さらなる実施形態においては、actionsフィールドは、デバイスのどのパラメータを変更するべきで、各パラメータをどのように設定するべきかを示す。注記:現在、これらは、アレイの単一要素にパラメータ1つのみを指定するべきであることを除き、制御コマンドが使用するのと同じフォーマットにするべきである。
Figure 0006909204
特定の実施形態においては、以下は完全なルールの例である。
Figure 0006909204
Figure 0006909204
Figure 0006909204
検出:特定の実施形態においては、検出コマンドは、追加の引数を必要としない。そのため、完全な検出コマンドは、以下のようなものである。
Figure 0006909204
クエリ:特定の実施形態においては、コマンドは、問い合わせられたデバイスのIDと、それがどのタイプのデバイスかを要求する。クエリ・コマンドの例は、以下のようなものである。
Figure 0006909204
制御:特定の実施形態においては、コマンドは、渡されるパラメータがあれば、ゲートウェイに所与のデバイスの現在の状態を変更させる。パラメータは、制御されているデバイスのタイプに対応するので、現時点で制御コマンドにとって万能な値はない。サポートされる各デバイスの例を以下に示す。
Figure 0006909204
特定の実施形態においては、デバイス・クラウド(たとえば、自宅の)は、クラウドにおいて対応するインスタンスを有することができる。各デバイス・アクション(ユーザ・コマンド、デバイスの警報など)が記録されて、デバイス・クラウド・インスタンスのメッセージング・キューで送られる。レシピは、1つまたは複数のルールを含むことができる。ルールは、デバイス・アクションを有することができ、そのデバイス・アクションは、タイミングで実行するか、または別のアクションでトリガすることができる。特定のデバイス・クラウド・インスタンスは、デバイス・アクションのメッセージング・キューを消化するためのルール実行エンジンを有し、ルールを実行することができる。
特定の実施形態においては、基本ルールは、以下のようにすることができる。
Figure 0006909204
特定の実施形態においては、スケジュール・ルールは、以下のようにすることができる。
Figure 0006909204
Figure 0006909204
特定の実施形態においては、トリガ・ルールは、以下のようにすることができる。
Figure 0006909204
Figure 0006909204
特定の実施形態においては、実行エンジンは、以下のようにすることができる。
Figure 0006909204
さらなる実施形態においては、許可、能力、イベントおよびアクションを組み込んだルールにすることができる。
特定の実施形態においては、システムは、専用ハードウェアのポイント・オブ・プレゼンス(POP)を有することから便益を受けることができる。さらなる実施形態においては、これは、モバイル・アプリケーションを通じて実行することができる。専用ハードウェアPOPの利点には、以下のことを含むことができる。
・WIFIのシームレスなプロビジョニング−Blinkのシナリオの場合、デバイスが両者のアクセス・ポイント(AP)として作用する。
・新デバイスの連続スキャン−通例、フォン・アプリは、出現する新デバイスについて、BTまたはWIFIを継続的にスキャンすることができないため、ユーザが明示的にスキャンを要求する必要がある。
・デュアルバンドWIFIネットワーク−フォンが5GHzに接続され、デバイスが2.4GHzに接続される場合、検出および制御は問題のあるものになる可能性がある。
・BTペアリング−BTデバイスとペアリングされる複数の電話が優先権を有すると、その間のスイッチングは簡単でもシームレスでもない。専用POPを通じて任意の電話からデバイス制御をプロキシすることによって、該POPだけがこの問題を解決する。
・ファームウェアの更新スケジュール設定および取り扱い−デバイス・アプリを通じたファームウェアの更新は、ユーザがアプリを開くと行われるが、これは、ユーザがデバイスを使いたいときになる。常時接続のPOPにすると、ファームウェアのOTA更新は、デバイスのタイプに基づいて、都合の良いときにスケジュール設定できるようになるであろう。たとえば、照明はその必要がない日中に更新され、コーヒーマシンは全く使われそうにない夜間に更新され、サーモスタットは低温に備えて計画されたときに更新されるなどする。
・使用までの時間/応答性−使用されるが頻繁ではないコネクテッド・デバイスを制御するためのフォン・アプリは、OSによって強制終了することができる。ユーザがアクセスするとき、コールド・スタートは、使用までの時間(アプリの起動からユーザがデバイスを制御できるときまで)に影響する可能性があるので、苛立たしい遅れや低応答性につながる。常時接続の音声制御ハードウェアPOPは使用までの時間/応答性を高めることができる。
図4は、オープン・ネットワーク(たとえば、BTLEネットワーク)でアクセス・クレデンシャルを要求することによって、アクセス・クレデンシャルを要求する制限されたネットワーク(たとえば、WIFIネットワーク)へのデバイス・アクセスを確立するためのデータ・フロー400の例示的相関図を示す。図4は、バックエンド・システム320、ゲートウェイ・デバイス310およびデバイス305間のデータ・フロー400を示す。ゲートウェイ・デバイス310は、バックエンド・システム320とインタフェースを取ることができ、そのバックエンド・システム320は、リモート・サーバまたはサーバ群でホストすることができる。ゲートウェイ・デバイス310には、様々なクレデンシャルを備えることができる。特定の実施形態においては、ゲートウェイ・デバイス310は、WIFIクレデンシャル(たとえば、WIFI SSIDおよびパスワード)を備えることができる。
特定の実施形態においては、ゲートウェイ・デバイス310は多数のサービスを提供することができ、利用できるサービスに関して、オープン・ネットワークで情報をブロードキャストする(402)こともできる。各サービスは、様々な読み取り/書き込み特性を有することができ、固有識別子(UUID)によって識別することができる。特定の実施形態においては、制限されたネットワークに関するアクセス・クレデンシャルをデバイスに提供するプロビジョニング・サービスは、パケット・サイズ(たとえば、最大20B)を大幅に制限する任意の無線周波数通信プロトコルで提供することができる。特定の実施形態においては、プロビジョニング・サービスは、BTLE、ZIGBEE(登録商標)、ZWAVE、NFCを使用することができる。
特定の実施形態においては、デバイス305は、ゲートウェイ・デバイス310への接続を要求する(404)ことができ、その要求は、非常に制限されたマイクロ・パケット無線周波数データ・プロトコル(たとえば、パケット・サイズを最大20Bに制限するBTLEプリペアリング・プロトコル)を使用して送信することができる。
特定の実施形態においては、デバイス305から要求を受信すると、ゲートウェイ・デバイス310は、制限されたネットワークへの接続をデバイス305が認可されているかどうかを決定することができる。特定の実施形態においては、ゲートウェイ・デバイス310は、デバイス305の識別情報を評価して(406)、制限されたネットワークとの接続を確立することをデバイス305が認可されているかどうかを決定することができる。
いくつかの実施形態においては、ゲートウェイ・デバイス310は、デバイス305の識別情報を送信することにより、バックエンド・システム320から認可検証を要求する(408)ことができる。バックエンド・システム320は、デバイス305の識別情報を評価して、認可検証を送信するか(たとえば、認可を確認する)、または認可の否認を送信することにより、ゲートウェイ・デバイス310からの認可要求に応答する(410)ことができる。
いくつかの実施形態においては、ゲートウェイ・デバイス310は、クライアント・デバイスからアクセス・クレデンシャルに対する任意の要求を受信する前に、以前に受信およびキャッシュした認可情報に基づいて、デバイス305の認可を評価する(406)ことができる。たとえば、ゲートウェイ・デバイス310は、販売時点で特定の個人に割り当てることができる。すなわち、ゲートウェイ・デバイス310を開いて、制限されたネットワークにゲートウェイ・デバイス310を接続すると、ゲートウェイ・デバイス310は、デバイス305が認可ユーザによってすでに所有されていることを認識することができ、ゲートウェイ・デバイス310は、すぐに、制限されたネットワークに接続するためのアクセス・クレデンシャルをデバイス305に送信することができる。
特定の実施形態においては、ゲートウェイ・デバイス310は、ゲートウェイ・デバイス310からデータ特性を書き込むことによって、アクセス・クレデンシャル(たとえば、WIFI SSIDおよびパスワード)をデバイス305に送信する(412)ことができ、アクセス・クレデンシャルを表すデータは、非常に制限されたマイクロ・パケット無線周波数データ・プロトコルで転送される小サイズのパケットに分割することができる。一例として、WIFIクレデンシャルを表すデータは、BTLEで転送可能な20Bパケットに分割することができる。
特定の実施形態においては、アクセス・クレデンシャルを表すデータは20バイトのパケットに分割することができ、パケットのフォーマットは、6バイトのヘッダと14バイトのペイロードとからなる。この数値構成は、単なる例として提示される。当業者であれば、他の多くの適切な構成の20バイトを認識するであろう。特定の実施形態においては、ヘッダはさらに分割することができる。6バイトのヘッダの一例では、バイト1および2は、パケットが、第1のパケットか、中間パケットか、または最後のパケットかを識別することができ、バイト3および4は、論理パケット識別情報を識別することができ、バイト5および6は、スケーラビリティのために利用することができる。当業者であれば、ヘッダ内のシーケンス情報の任意の適切な表現を使用して、パケットのペイロードからアクセス・クレデンシャルを表すデータの再アセンブリを容易にすることができることを認識するであろう。
特定の実施形態においては、クライアント・デバイスは、ゲートウェイ・デバイス310に、各マイクロ・パケットの受信に肯定応答するためのメッセージを送信することができる。特定の実施形態においては、非常に制限されたマイクロ・パケット無線周波数データ・プロトコルで転送可能な小さなデータパケットは、パケット・ヘッダ内のシーケンス情報を使用してデバイス305でアセンブルすることができる。特定の実施形態においては、非常に制限されたマイクロ・パケット無線周波数データ・プロトコルで転送されたアクセス・クレデンシャルは、一旦アセンブルされると、デバイス305を構成するために使用することができ、制限されたネットワーク(たとえば、WIFIネットワーク)にデバイス305を接続する(414)ことを可能にする。
特定の実施形態においては、制限されたネットワーク(たとえば、衛星、BLUETOOTH(登録商標)、WIFI)への接続をデバイス305が一旦確立すると、ゲートウェイ・デバイス310およびデバイス305は、制限されたネットワークで情報を交換することができる。たとえば、特定の実施形態において、制限されたネットワークは、WIFIネットワークとすることができ、ゲートウェイ・デバイス310およびデバイス305は、WIFIネットワーク・プロトコル(たとえば、802.11)で情報を交換することができる。デバイス305が新品のデバイスであるいくつかの例示的実施形態においては、交換される情報は、ユーザに対して新デバイスをプロビジョニングするための典型的な情報を含むことができる。限定ではなく、例として、デバイス305は、他のサービスに対するユーザ認証クレデンシャル、ユーザの好みおよびプライバシ設定、ユーザ関連の履歴情報などのユーザ・コンテキスト情報、ならびに、ユーザのデバイス・クラウド内の他のデバイス、他のデバイスにアクセスするためのおよび/または他のデバイスを制御するためのクレデンシャルに関する情報など、他の関連ある情報を要求する(416)ことができる。このような要求を受信すると、ゲートウェイ・デバイス310は、ユーザ・コンテキストおよび要求された任意の他の情報を、デバイス305に送信する(418)ことができる。
図5は、例示的なコンピュータ・システム500を示している。特定の実施形態においては、1つまたは複数のコンピュータ・システム500が、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を実行する。特定の実施形態においては、1つまたは複数のコンピュータ・システム500が、本明細書において記述されているまたは示されている機能を提供する。特定の実施形態においては、1つまたは複数のコンピュータ・システム500上で稼働するソフトウェアが、本明細書において記述されているもしくは示されている1つもしくは複数の方法の1つもしくは複数の工程を実行し、または本明細書において記述されているもしくは示されている機能を提供する。特定の実施形態は、1つまたは複数のコンピュータ・システム500の1つまたは複数の部分を含む。本明細書においては、コンピュータ・システムへの言及は、適切な場合には、コンピューティング・デバイスを包含することができる。その上、コンピュータ・システムへの言及は、適切な場合には、1つまたは複数のコンピュータ・システムを包含することができる。
本開示は、任意の適切な数のコンピュータ・システム500を想定している。本開示は、任意の適切な物理的な形態を取るコンピュータ・システム500を想定している。限定ではなく、例として、コンピュータ・システム500は、組み込みコンピュータ・システム、システムオンチップ(SOC)、シングルボード・コンピュータ・システム(SBC)(たとえば、コンピュータオンモジュール(COM)もしくはシステムオンモジュール(SOM)など)、デスクトップ・コンピュータ・システム、ラップトップもしくはノートブック・コンピュータ・システム、対話キオスク、メインフレーム、コンピュータ・システムのメッシュ、モバイル電話、携帯情報端末(PDA)、サーバ、タブレット・コンピュータ・システム、強化された/仮想現実デバイス、またはこれらのうちの複数の組合せであることが可能である。適切な場合には、コンピュータ・システム500は、1つもしくは複数のコンピュータ・システム500を含むこと、単一型もしくは分散型であること、複数のロケーションにわたること、複数のマシンにわたること、複数のデータセンターにわたること、または、クラウド(1つもしくは複数のネットワーク内の1つもしくは複数のクラウド・コンポーネントを含むことができる)内に常駐することが可能である。適切な場合には、1つまたは複数のコンピュータ・システム500は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を、実質的な空間上のまたは時間上の制限を伴わずに実行することができる。限定ではなく、例として、1つまたは複数のコンピュータ・システム500は、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程をリアルタイムで、またはバッチ・モードで実行することができる。1つまたは複数のコンピュータ・システム500は、適切な場合には、本明細書において記述されているまたは示されている1つまたは複数の方法の1つまたは複数の工程を別々の時点で、または別々のロケーションで実行することができる。
特定の実施形態においては、コンピュータ・システム500は、プロセッサ502、メモリ504、ストレージ506、入力/出力(I/O)インタフェース508、通信インタフェース510、およびバス512を含む。本開示は、特定の数の特定のコンポーネントを特定の構成で有する特定のコンピュータ・システムについて記述し、示しているが、本開示は、任意の適切な数の任意の適切なコンポーネントを任意の適切な構成で有する任意の適切なコンピュータ・システムを想定している。
特定の実施形態においては、プロセッサ502は、コンピュータ・プログラムを構成している命令などの命令を実行するためのハードウェアを含む。限定ではなく、例として、命令を実行するために、プロセッサ502は、内部レジスタ、内部キャッシュ、メモリ504、またはストレージ506から命令を取り出し(またはフェッチし)、それらの命令をデコードして実行し、次いで、1つまたは複数の結果を内部レジスタ、内部キャッシュ、メモリ504、またはストレージ506に書き込むことができる。特定の実施形態においては、プロセッサ502は、データ、命令、またはアドレスのための1つまたは複数の内部キャッシュを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部キャッシュを含むプロセッサ502を想定している。限定ではなく、例として、プロセッサ502は、1つまたは複数の命令キャッシュ、1つまたは複数のデータ・キャッシュ、および1つまたは複数の変換ルックアサイド・バッファ(TLB)を含むことができる。命令キャッシュ内の命令は、メモリ504またはストレージ506内の命令のコピーであることが可能であり、命令キャッシュは、プロセッサ502によるそれらの命令の取り出しをスピードアップすることができる。データ・キャッシュ内のデータは、プロセッサ502において実行される命令が機能する際に基づくメモリ504もしくはストレージ506内のデータのコピー、プロセッサ502において実行される後続の命令によるアクセスのための、もしくはメモリ504もしくはストレージ506への書き込みのためのプロセッサ502において実行された以前の命令の結果、またはその他の適切なデータであることが可能である。データ・キャッシュは、プロセッサ502による読み取りオペレーションまたは書き込みオペレーションをスピードアップすることができる。TLBは、プロセッサ502のための仮想アドレス変換をスピードアップすることができる。特定の実施形態においては、プロセッサ502は、データ、命令、またはアドレスのための1つまたは複数の内部レジスタを含むことができる。本開示は、適切な場合には、任意の適切な数の任意の適切な内部レジスタを含むプロセッサ502を想定している。適切な場合には、プロセッサ502は、1つまたは複数の演算ロジック・ユニット(ALU)を含むこと、マルチコア・プロセッサであること、または1つもしくは複数のプロセッサ502を含むことが可能である。本開示は、特定のプロセッサについて記述し、示しているが、本開示は、任意の適切なプロセッサを想定している。
特定の実施形態においては、メモリ504は、プロセッサ502が実行するための命令、またはプロセッサ502が機能する際に基づくデータを記憶するためのメイン・メモリを含む。限定ではなく、例として、コンピュータ・システム500は、命令をストレージ506または別のソース(たとえば、別のコンピュータ・システム500など)からメモリ504にロードすることができる。次いでプロセッサ502は、命令をメモリ504から内部レジスタまたは内部キャッシュにロードすることができる。命令を実行するために、プロセッサ502は、命令を内部レジスタまたは内部キャッシュから取り出し、それらの命令をデコードすることができる。命令の実行中または実行後に、プロセッサ502は、1つまたは複数の結果(それらは、中間の結果または最終的な結果である場合がある)を内部レジスタまたは内部キャッシュに書き込むことができる。次いでプロセッサ502は、それらの結果のうちの1つまたは複数をメモリ504に書き込むことができる。特定の実施形態においては、プロセッサ502は、(ストレージ506またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ504内の命令のみを実行し、(ストレージ506またはその他の場所ではなく)1つもしくは複数の内部レジスタもしくは内部キャッシュ内の、またはメモリ504内のデータ上でのみ機能する。1つまたは複数のメモリ・バス(それらは各々、アドレス・バスおよびデータ・バスを含むことができる)は、プロセッサ502をメモリ504に結合することができる。バス512は、以降で記述されているような1つまたは複数のメモリ・バスを含むことができる。特定の実施形態においては、1つまたは複数のメモリ管理ユニット(MMU)が、プロセッサ502とメモリ504との間に常駐し、プロセッサ502によって要求されるメモリ504へのアクセスを容易にする。特定の実施形態においては、メモリ504は、ランダム・アクセス・メモリ(RAM)を含む。このRAMは、適切な場合には、揮発性メモリであることが可能である。適切な場合には、このRAMは、ダイナミックRAM(DRAM)またはスタティックRAM(SRAM)であることが可能である。その上、適切な場合には、このRAMは、シングルポートRAMまたはマルチポートRAMであることが可能である。本開示は、任意の適切なRAMを想定している。メモリ504は、適切な場合には、1つまたは複数のメモリ504を含むことができる。本開示は、特定のメモリについて記述し、示しているが、本開示は、任意の適切なメモリを想定している。
特定の実施形態においては、ストレージ506は、データまたは命令のためのマス・ストレージを含む。限定ではなく、例として、ストレージ506は、ハード・ディスク・ドライブ(HDD)、フロッピー(登録商標)ディスク・ドライブ、フラッシュ・メモリ、光ディスク、光磁気ディスク、磁気テープ、またはユニバーサル・シリアル・バス(USB)ドライブ、またはこれらのうちの複数の組合せを含むことができる。ストレージ506は、適切な場合には、取り外し可能なまたは取り外し不能な(すなわち、固定された)媒体を含むことができる。ストレージ506は、適切な場合には、コンピュータ・システム500の内部または外部に存在することが可能である。特定の実施形態においては、ストレージ506は、不揮発性のソリッドステート・メモリである。特定の実施形態においては、ストレージ506は、読み取り専用メモリ(ROM)を含む。適切な場合には、このROMは、マスクプログラムROM、プログラマブルROM(PROM)、消去可能PROM(EPROM)、電気的消去可能PROM(EEPROM)、電気的書替え可能ROM(EAROM)、またはフラッシュ・メモリ、またはこれらのうちの複数の組合せであることが可能である。本開示は、任意の適切な物理的な形態を取るマス・ストレージ506を想定している。ストレージ506は、適切な場合には、プロセッサ502とストレージ506との間における通信を容易にする1つまたは複数のストレージ・コントロール・ユニットを含むことができる。適切な場合には、ストレージ506は、1つまたは複数のストレージ506を含むことができる。本開示は、特定のストレージについて記述し、示しているが、本開示は、任意の適切なストレージを想定している。
特定の実施形態においては、I/Oインタフェース508は、コンピュータ・システム500と1つまたは複数のI/Oデバイスとの間における通信のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。コンピュータ・システム500は、適切な場合には、これらのI/Oデバイスのうちの1つまたは複数を含むことができる。これらのI/Oデバイスのうちの1つまたは複数は、人とコンピュータ・システム500との間における通信を可能にすることができる。限定ではなく、例として、I/Oデバイスは、キーボード、キーパッド、マイクロフォン、モニタ、マウス、プリンタ、スキャナ、スピーカ、スチル・カメラ、スタイラス、タブレット、タッチ・スクリーン、トラックボール、映像カメラ、別の適切なI/Oデバイス、またはこれらのうちの複数の組合せを含むことができる。I/Oデバイスは、1つまたは複数のセンサを含むことができる。本開示は、任意の適切なI/Oデバイス、およびそれらのI/Oデバイスのための任意の適切なI/Oインタフェース508を想定している。適切な場合には、I/Oインタフェース508は、プロセッサ502がこれらのI/Oデバイスのうちの1つまたは複数を駆動することを可能にする1つまたは複数のデバイス・ドライバまたはソフトウェア・ドライバを含むことができる。I/Oインタフェース508は、適切な場合には、1つまたは複数のI/Oインタフェース508を含むことができる。本開示は、特定のI/Oインタフェースについて記述し、示しているが、本開示は、任意の適切なI/Oインタフェースを想定している。
特定の実施形態においては、通信インタフェース510は、コンピュータ・システム500と、1つもしくは複数のその他のコンピュータ・システム500または1つもしくは複数のネットワークとの間における通信(たとえば、パケットベースの通信など)のための1つまたは複数のインタフェースを提供するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、通信インタフェース510は、イーサネット(登録商標)もしくはその他の有線ベースのネットワークと通信するためのネットワーク・インタフェース・コントローラ(NIC)もしくはネットワーク・アダプタ、またはWI−FIネットワークなどの無線ネットワークと通信するための無線NIC(WNIC)もしくは無線アダプタを含むことができる。本開示は、任意の適切なネットワーク、およびそのネットワークのための任意の適切な通信インタフェース510を想定している。限定ではなく、例として、コンピュータ・システム500は、アド・ホック・ネットワーク、パーソナル・エリア・ネットワーク(PAN)、ローカル・エリア・ネットワーク(LAN)、ワイド・エリア・ネットワーク(WAN)、メトロポリタン・エリア・ネットワーク(MAN)、またはインターネットの1つまたは複数の部分、またはこれらのうちの複数の組合せと通信することができる。これらのネットワークのうちの1つまたは複数の1つまたは複数の部分は、有線または無線であることが可能である。例として、コンピュータ・システム500は、無線PAN(WPAN)(たとえば、ブルートゥース(登録商標)WPANなど)、WI−FIネットワーク、WI−MAXネットワーク、セルラー電話ネットワーク(たとえば、グローバル・システム・フォー・モバイル・コミュニケーションズ(GSM(登録商標))ネットワークなど)、またはその他の適切な無線ネットワーク、またはこれらのうちの複数の組合せと通信することができる。コンピュータ・システム500は、適切な場合には、これらのネットワークのうちの任意のネットワークのための任意の適切な通信インタフェース510を含むことができる。通信インタフェース510は、適切な場合には、1つまたは複数の通信インタフェース510を含むことができる。本開示は、特定の通信インタフェースについて記述し、示しているが、本開示は、任意の適切な通信インタフェースを想定している。
特定の実施形態においては、バス512は、コンピュータ・システム500のコンポーネント同士を互いに結合するハードウェア、ソフトウェア、またはその両方を含む。限定ではなく、例として、バス512は、アクセラレイティッド・グラフィックス・ポート(AGP)もしくはその他のグラフィックス・バス、エンハンスト・インダストリー・スタンダード・アーキテクチャ(EISA)バス、フロントサイド・バス(FSB)、ハイパートランスポート(HT)インターコネクト、インダストリー・スタンダード・アーキテクチャ(ISA)バス、インフィニバンド・インターコネクト、ローピンカウント(LPC)バス、メモリ・バス、マイクロ・チャネル・アーキテクチャ(MCA)バス、ペリフェラル・コンポーネント・インターコネクト(PCI)バス、PCIエクスプレス(PCIe)バス、シリアル・アドバンスト・テクノロジー・アタッチメント(SATA)バス、ビデオ・エレクトロニクス・スタンダーズ・アソシエーション・ローカル(VLB)バス、または別の適切なバス、またはこれらのうちの複数の組合せを含むことができる。バス512は、適切な場合には、1つまたは複数のバス512を含むことができる。本開示は、特定のバスについて記述し、示しているが、本開示は、任意の適切なバスまたはインターコネクトを想定している。
本明細書においては、1つまたは複数の非一時的なコンピュータ可読記憶媒体は、適切な場合には、1つもしくは複数の半導体ベースのもしくはその他の集積回路(IC)(たとえば、フィールドプログラマブル・ゲート・アレイ(FPGA)もしくは特定用途向け集積回路(ASIC)など)、ハード・ディスク・ドライブ(HDD)、ハイブリッド・ハード・ドライブ(HHD)、光ディスク、光ディスク・ドライブ(ODD)、光磁気ディスク、光磁気ドライブ、フロッピー(登録商標)・ディスケット、フロッピー(登録商標)・ディスク・ドライブ(FDD)、磁気テープ、ソリッドステート・ドライブ(SSD)、RAMドライブ、セキュア・デジタル・カードもしくはドライブ、その他の任意の適切な非一時的なコンピュータ可読記憶媒体、またはこれらのうちの複数の組合せを含むことができる。非一時的なコンピュータ可読記憶媒体は、適切な場合には、揮発性、不揮発性、または揮発性と不揮発性の組合せであることが可能である。
本明細書においては、「または(もしくは)」は、包含的であり、排他的ではない(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AまたはB」は、「A、B、またはその両方」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。その上、「および(ならびに)」は、包括的および個別的の両方である(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。したがって、本明細書においては、「AおよびB」は、「まとめて、または個別に、AおよびB」を意味する(ただし、そうではないことが明示されている場合、または、そうではないことが文脈によって示されている場合は除く)。
本開示の範囲は、当技術分野における標準的な技術者が理解するであろう、本明細書において記述されているまたは示されている例示的な実施形態に対するすべての変更、置換、変形、改変、および修正を包含する。本開示の範囲は、本明細書において記述されているまたは示されている例示的な実施形態に限定されない。その上、本開示は、本明細書における各々の実施形態を、特定のコンポーネント、要素、特徴、機能、オペレーション、または工程を含むものとして記述し、示しているが、これらの実施形態のいずれも、当技術分野における標準的な技術者が理解するであろう、本明細書の任意の箇所において記述されているまたは示されているコンポーネント、要素、特徴、機能、オペレーション、または工程のうちの任意のものの任意の組合せまたは順列を含むことができる。さらに、特定の機能を実行するように適合されている、実行するようにアレンジされている、実行することができる、実行するように構成されている、実行することを可能にされている、実行するように機能できる、または実行するように機能する装置もしくはシステム、または装置もしくはシステムのコンポーネントへの添付の特許請求の範囲における言及は、その装置、システム、コンポーネント、またはその特定の機能が、アクティブ化されているか否か、オンにされているか否か、またはロック解除されているか否かを問わず、その装置、システム、またはコンポーネントが、そうするように適合されている、そうするようにアレンジされている、そうすることができる、そうするように構成されている、そうすることを可能にされている、そうするように機能できる、またはそうするように機能する限り、その装置、システム、コンポーネントを包含する。さらに、本開示では、特定の実施形態について特定の有利性が提供するものとして記述または図示しているが、特定の実施形態ではこのような有利性が提供されなくてもよく、または、そのいくつかまたはすべての有利性が提供されてもよい。

Claims (18)

  1. 1以上のプロセッサと、前記プロセッサに結合され、前記プロセッサによって実行可能な命令を含むメモリとを備えるゲートウェイ・コンピューティング・デバイスであって、前記プロセッサは、前記命令が実行されると、
    制限されたネットワークに対するアクセス・クレデンシャルのためのプロビジョニング・サービスを提供する工程であって、前記プロビジョニング・サービスは、オープン・ネットワークによってアクセス可能であり、前記オープン・ネットワーク用のメッセージング・プロトコルは、前記メッセージング・プロトコルに適合するメッセージを送信または受信するデバイスによる電力使用量を制限するように設計される、工程と、
    前記制限されたネットワークへ接続する接続要求をクライアント・デバイスから受信する工程であって、前記接続要求は、前記オープン・ネットワークを使用して送信される、工程と、
    前記制限されたネットワークへのアクセスについて前記クライアント・デバイスを認可する工程と、
    前記制限されたネットワークへ接続する前記接続要求に対する応答を、前記クライアント・デバイスに送信する工程であって、前記制限されたネットワークへのアクセスについてのアクセス・クレデンシャルを含む応答は、小さなサイズのデータパケットへと分割され、制限されたマイクロパケット無線周波数データ・プロトコルを介して送信され、前記小さなサイズのデータパケットはそれぞれ、シーケンス情報を含むパケット・ヘッダを含み、前記小さなサイズのデータパケットそれぞれについてのシーケンス情報は、前記アクセス・クレデンシャルを含む分割された応答を前記クライアント・デバイスで再びアセンブルするために使用される、工程と、
    前記クライアント・デバイスから、前記制限されたマイクロパケット無線周波数データ・プロトコルを介して送信された前記小さなサイズのデータそれぞれについて肯定応答を受信する工程と、
    が行われるように構成される、ゲートウェイ・コンピューティング・デバイス。
  2. 前記プロセッサは、前記クライアント・デバイスを認可する前記命令が実行されると、
    前記制限されたネットワークへ接続する前記接続要求を受信する前に、1以上の事前認可されたクライアント・デバイスに関する認可情報を受信する工程と、
    前記制限されたネットワークへ接続する前記接続要求を受信するに際し、前記クライアント・デバイスが前記1以上の事前認可されたクライアント・デバイスのうちの1つであるかどうかを決定する工程と、
    前記クライアント・デバイスが前記1以上の事前認可されたクライアント・デバイスのうちの1つである場合、前記クライアント・デバイスに前記アクセス・クレデンシャルを送信する工程と、
    そうでなければ、認可の欠如に関するメッセージを前記クライアント・デバイスに送信する工程と、
    が行われるようにさらに構成される、請求項1に記載のゲートウェイ・コンピューティング・デバイス。
  3. 前記プロセッサは、前記クライアント・デバイスを認可する前記命令が実行されると、
    認可検証を求める認可検証要求を、バックエンド・システムに送信する工程であって、前記認可検証要求は、前記クライアント・デバイスの識別情報を含む、工程と、
    前記バックエンド・システムから受信した応答に基づいて、前記制限されたネットワークへの接続について前記クライアント・デバイスが認可されているかどうかを決定する工程と、
    前記クライアント・デバイスが認可されている場合、前記アクセス・クレデンシャルを前記クライアント・デバイスに送信する工程と、
    そうでなければ、認可の欠如に関するメッセージを前記クライアント・デバイスに送信する工程と、
    が行われるようにさらに構成される、請求項1に記載のゲートウェイ・コンピューティング・デバイス。
  4. 前記ゲートウェイ・コンピューティング・デバイスはソーシャル・ネットワーキング・システムの第1のユーザに関連付けられており、前記認可検証要求は前記ソーシャル・ネットワーキング・システムの第2のユーザに関する識別情報を含むか、または前記クライアント・デバイスが前記第2のユーザに関連付けられており、前記認可検証要求に対する前記応答は前記第1のユーザと前記第2のユーザとの間のソーシャル・ネットワーキング関係に基づく、請求項3に記載のゲートウェイ・コンピューティング・デバイス。
  5. 前記ゲートウェイ・コンピューティング・デバイスはソーシャル・ネットワーキング・システムの第1のユーザに関連付けられており、前記クライアント・デバイスは前記ソーシャル・ネットワーキング・システムのいずれのユーザにもまだ関連付けられておらず、前記クライアント・デバイスは前記制限されたネットワークへの接続を認可されており、前記プロセッサは、前記命令が実行されると、
    前記第1のユーザに関連付けられているコンテキスト情報を、前記クライアント・デバイスに送信する工程であって、前記コンテキスト情報は、前記制限されたネットワークを使用して送信される、工程、
    が行われるようにさらに構成される、請求項4に記載のゲートウェイ・コンピューティング・デバイス。
  6. 前記オープン・ネットワーク用のメッセージング・プロトコルは、前記ゲートウェイ・コンピューティング・デバイスが提供する1セットのサービスのうちの1つに関係するメッセージのみを認識し、前記1セットのサービスは前記プロビジョニング・サービスを含む、請求項1に記載のゲートウェイ・コンピューティング・デバイス。
  7. ゲートウェイ・コンピューティング・デバイスが、制限されたネットワークに対するアクセス・クレデンシャルのためのプロビジョニング・サービスを提供する工程であって、前記プロビジョニング・サービスはオープン・ネットワークによってアクセス可能であり、前記オープン・ネットワーク用のメッセージング・プロトコルは、前記メッセージング・プロトコルに適合するメッセージを送信または受信するデバイスによる電力使用量を制限するように設計される、提供する工程と、
    前記ゲートウェイ・コンピューティング・デバイスが、前記制限されたネットワークへ接続する接続要求をクライアント・デバイスから受信する工程であって、前記接続要求は、前記オープン・ネットワークを使用して送信される、工程と、
    前記ゲートウェイ・コンピューティング・デバイスが、前記制限されたネットワークへのアクセスについて前記クライアント・デバイスを認可する工程と、
    前記ゲートウェイ・コンピューティング・デバイスが、前記制限されたネットワークへ接続する前記接続要求に対する応答を、前記クライアント・デバイスに送信する工程であって、前記制限されたネットワークへのアクセスについてのアクセス・クレデンシャルを含む応答は、小さなサイズのデータパケットへと分割され、制限されたマイクロパケット無線周波数データ・プロトコルを介して送信され、前記小さなサイズのデータパケットはそれぞれ、シーケンス情報を含むパケット・ヘッダを含み、前記小さなサイズのデータパケットそれぞれについての前記シーケンス情報は、前記アクセス・クレデンシャルを含む分割された応答を前記クライアント・デバイスで再びアセンブルするために使用される、工程と、
    前記ゲートウェイ・コンピューティング・デバイスが、前記クライアント・デバイスから、前記制限されたマイクロパケット無線周波数データ・プロトコルを介して送信された小さなサイズのデータそれぞれについて肯定応答を受信する工程と、
    を備える、方法。
  8. 前記クライアント・デバイスを認可する工程は、
    前記制限されたネットワークへ接続する前記接続要求を受信する前に、1以上の事前認可されたクライアント・デバイスに関する認可情報を受信する工程と、
    前記制限されたネットワークへ接続する前記接続要求を受信するに際し、前記クライアント・デバイスが前記1以上の事前認可されたクライアント・デバイスのうちの1つであるかどうかを決定する工程と、
    前記クライアント・デバイスが前記1以上の事前認可されたクライアント・デバイスのうちの1つである場合、前記クライアント・デバイスに前記アクセス・クレデンシャルを送信する工程と、
    そうでなければ、認可の欠如に関するメッセージを前記クライアント・デバイスに送信する工程と、
    をさらに含む、請求項に記載の方法。
  9. 前記クライアント・デバイスを認可する工程は、
    認可検証を求める認可検証要求を、バックエンド・システムに送信する工程であって、前記認可検証要求は、前記クライアント・デバイスの識別情報を含む、工程と、
    前記バックエンド・システムから受信した応答に基づいて、前記制限されたネットワークへの接続について前記クライアント・デバイスが認可されているかどうかを決定する工程と、
    前記クライアント・デバイスが認可されている場合、前記アクセス・クレデンシャルを前記クライアント・デバイスに送信する工程と、
    そうでなければ、認可の欠如に関するメッセージを前記クライアント・デバイスに送信する工程と、
    をさらに含む、請求項に記載の方法。
  10. 前記ゲートウェイ・コンピューティング・デバイスはソーシャル・ネットワーキング・システムの第1のユーザに関連付けられており、前記認可検証要求は前記ソーシャル・ネットワーキング・システムの第2のユーザに関する識別情報を含むか、または前記クライアント・デバイスが前記第2のユーザに関連付けられており、前記認可検証要求に対する前記応答は前記第1のユーザと前記第2のユーザとの間のソーシャル・ネットワーキング関係に基づく、請求項に記載の方法。
  11. 前記ゲートウェイ・コンピューティング・デバイスはソーシャル・ネットワーキング・システムの第1のユーザに関連付けられており、前記クライアント・デバイスは前記ソーシャル・ネットワーキング・システムのいずれのユーザにもまだ関連付けられておらず、前記クライアント・デバイスは前記制限されたネットワークへの接続を認可されており、
    前記方法は、
    前記第1のユーザに関連付けられているコンテキスト情報を、前記クライアント・デバイスに送信する工程であって、前記コンテキスト情報は、前記制限されたネットワークを使用して送信される、工程、
    をさらに備える、請求項10に記載の方法。
  12. 前記オープン・ネットワーク用のメッセージング・プロトコルは、前記ゲートウェイ・コンピューティング・デバイスが提供する1セットのサービスのうちの1つに関係するメッセージのみを認識し、前記1セットのサービスは前記プロビジョニング・サービスを含む、請求項に記載の方法。
  13. ソフトウェアを具現化している1以上の非一時的なコンピュータ可読記憶媒体であって、前記ソフトウェアは、ゲートウェイ・コンピューティング・デバイスの1以上のプロセッサによって実行されると、
    制限されたネットワークに対するアクセス・クレデンシャルのためのプロビジョニング・サービスを提供する工程であって、前記プロビジョニング・サービスは、オープン・ネットワークによってアクセス可能であり、前記オープン・ネットワーク用のメッセージング・プロトコルは、前記メッセージング・プロトコルに適合するメッセージを送信または受信するデバイスによる電力使用量を制限するように設計される、工程と、
    前記制限されたネットワークへ接続する接続要求をクライアント・デバイスから受信する工程であって、前記接続要求は、前記オープン・ネットワークを使用して送信される、工程と、
    前記制限されたネットワークへのアクセスについて前記クライアント・デバイスを認可する工程と、
    前記制限されたネットワークへ接続する前記接続要求に対する応答を、前記クライアント・デバイスに送信する工程であって、前記制限されたネットワークへのアクセスについてのアクセス・クレデンシャルを含む応答は、小さなサイズのデータパケットへと分割され、制限されたマイクロパケット無線周波数データ・プロトコルを介して送信され、前記小さなサイズのデータパケットはそれぞれ、シーケンス情報を含むパケット・ヘッダを含み、前記小さなサイズのデータパケットそれぞれについての前記シーケンス情報は、前記アクセス・クレデンシャルを含む分割された応答を前記クライアント・デバイスで再びアセンブルするために使用される、工程と、
    前記クライアント・デバイスから、前記制限されたマイクロパケット無線周波数データ・プロトコルを介して送信された小さなサイズのデータそれぞれについて肯定応答を受信する工程と、
    が行われるように構成される、媒体。
  14. 前記プロセッサは、前記クライアント・デバイスを認可する前記ソフトウェアが実行されると、
    前記制限されたネットワークへ接続する前記接続要求を受信する前に、1以上の事前認可されたクライアント・デバイスに関する認可情報を受信する工程と、
    前記制限されたネットワークへ接続する前記接続要求を受信するに際し、前記クライアント・デバイスが前記1以上の事前認可されたクライアント・デバイスのうちの1つであるかどうかを決定する工程と、
    前記クライアント・デバイスが前記1以上の事前認可されたクライアント・デバイスのうちの1つである場合、前記クライアント・デバイスに前記アクセス・クレデンシャルを送信する工程と、
    そうでなければ、認可の欠如に関するメッセージを前記クライアント・デバイスに送信する工程と、
    が行われるようにさらに構成される、請求項13に記載の媒体。
  15. 前記プロセッサは、前記クライアント・デバイスを認可する前記ソフトウェアが実行されると、
    認可検証を求める認可検証要求を、バックエンド・システムに送信する工程であって、前記認可検証要求は、前記クライアント・デバイスの識別情報を含む、工程と、
    前記バックエンド・システムから受信した応答に基づいて、前記制限されたネットワークへの接続について前記クライアント・デバイスが認可されているかどうかを決定する工程と、
    前記クライアント・デバイスが認可されている場合、前記アクセス・クレデンシャルを前記クライアント・デバイスに送信する工程と、
    そうでなければ、認可の欠如に関するメッセージを前記クライアント・デバイスに送信する工程と、
    が行われるようにさらに構成される、請求項13に記載の媒体。
  16. 前記ゲートウェイ・コンピューティング・デバイスはソーシャル・ネットワーキング・システムの第1のユーザに関連付けられており、前記認可検証要求は前記ソーシャル・ネットワーキング・システムの第2のユーザに関する識別情報を含むか、または前記クライアント・デバイスが前記第2のユーザに関連付けられており、前記認可検証要求に対する前記応答は前記第1のユーザと前記第2のユーザとの間のソーシャル・ネットワーキング関係に基づく、請求項15に記載の媒体。
  17. 前記ゲートウェイ・コンピューティング・デバイスはソーシャル・ネットワーキング・システムの第1のユーザに関連付けられており、前記クライアント・デバイスは前記ソーシャル・ネットワーキング・システムのいずれのユーザにもまだ関連付けられておらず、前記クライアント・デバイスは前記制限されたネットワークへの接続を認可されており、前記プロセッサは前記ソフトウェアが実行されると、
    前記第1のユーザに関連付けられているコンテキスト情報を、前記クライアント・デバイスに送信する工程であって、前記コンテキスト情報は、前記制限されたネットワークを使用して送信される、工程、
    が行われるようにさらに構成される、請求項16に記載の媒体。
  18. 前記オープン・ネットワーク用のメッセージング・プロトコルは、前記ゲートウェイ・コンピューティング・デバイスが提供する1セットのサービスのうちの1つに関係するメッセージのみを認識し、前記1セットのサービスは前記プロビジョニング・サービスを含む、請求項13に記載の媒体。
JP2018505735A 2015-08-05 2016-08-05 デバイス・クラウドの管理 Active JP6909204B2 (ja)

Applications Claiming Priority (5)

Application Number Priority Date Filing Date Title
US201562201496P 2015-08-05 2015-08-05
US62/201,496 2015-08-05
US15/228,024 US10425392B2 (en) 2015-08-05 2016-08-04 Managing a device cloud
US15/228,024 2016-08-04
PCT/US2016/045679 WO2017024189A1 (en) 2015-08-05 2016-08-05 Managing a device cloud

Publications (2)

Publication Number Publication Date
JP2018530038A JP2018530038A (ja) 2018-10-11
JP6909204B2 true JP6909204B2 (ja) 2021-07-28

Family

ID=56609770

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2018505735A Active JP6909204B2 (ja) 2015-08-05 2016-08-05 デバイス・クラウドの管理

Country Status (11)

Country Link
US (1) US10425392B2 (ja)
EP (1) EP3128475A1 (ja)
JP (1) JP6909204B2 (ja)
KR (1) KR20180027606A (ja)
CN (1) CN108141448A (ja)
AU (1) AU2016301394B2 (ja)
BR (1) BR112018001824A2 (ja)
CA (1) CA2993618A1 (ja)
IL (1) IL257051A (ja)
MX (1) MX2018001445A (ja)
WO (1) WO2017024189A1 (ja)

Families Citing this family (45)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US10171506B2 (en) * 2016-03-21 2019-01-01 Fortinet, Inc. Network security management via social media network
CN106096343B (zh) 2016-05-27 2019-09-13 腾讯科技(深圳)有限公司 消息访问控制方法及设备
US11087358B2 (en) * 2016-06-24 2021-08-10 The Nielsen Company (Us), Llc Methods and apparatus for wireless communication with an audience measurement device
JP6685508B2 (ja) * 2016-07-19 2020-04-22 富士ゼロックス株式会社 端末装置
US10650621B1 (en) 2016-09-13 2020-05-12 Iocurrents, Inc. Interfacing with a vehicular controller area network
US10616347B1 (en) * 2016-10-20 2020-04-07 R&D Industries, Inc. Devices, systems and methods for internet and failover connectivity and monitoring
US10298398B2 (en) * 2016-12-28 2019-05-21 Google Llc Peer discovery, connection, and data transfer
JP7250265B2 (ja) * 2017-05-16 2023-04-03 株式会社サテライトオフィス ロボットまたは電子回路モジュール制御システム、プログラム
CA3059789A1 (en) 2017-05-22 2018-11-29 Magic Leap, Inc. Pairing with companion device
US10686883B2 (en) * 2017-07-07 2020-06-16 Hewlett Packard Enterprise Development Lp Bluetooth low energy devices
US10902037B2 (en) 2017-08-28 2021-01-26 International Business Machines Corporation Cognitive data curation on an interactive infrastructure management system
KR102429535B1 (ko) 2017-09-26 2022-08-05 삼성전자주식회사 사물인터넷 장치의 네트워크 등록 방법 및 그 장치
US10713320B2 (en) * 2017-10-09 2020-07-14 Facebook, Inc. De-duping events on online social networks
US10687105B1 (en) * 2018-03-01 2020-06-16 Facebook, Inc. Weighted expansion of a custom audience by an online system
CN109040261A (zh) * 2018-08-10 2018-12-18 南京熊猫电子制造有限公司 一种智能冰箱的物联网管理平台和管理方法
US11109425B2 (en) * 2018-08-24 2021-08-31 Ledvance Llc Bluetooth low energy backed smart lighting system
US10574670B1 (en) 2018-09-27 2020-02-25 Palo Alto Networks, Inc. Multi-access distributed edge security in mobile networks
US10477390B1 (en) * 2018-09-27 2019-11-12 Palo Alto Networks, Inc. Service-based security per user location in mobile networks
US10462653B1 (en) 2018-09-27 2019-10-29 Palo Alto Networks, Inc. Service-based security per data network name in mobile networks
US10531305B1 (en) * 2018-09-27 2020-01-07 Palo Alto Networks, Inc. Service-based security per subscription and/or equipment identifiers in mobile networks
US10944796B2 (en) 2018-09-27 2021-03-09 Palo Alto Networks, Inc. Network slice-based security in mobile networks
CN111406257B (zh) 2018-11-02 2023-10-31 谷歌有限责任公司 用于认证的系统和方法
EP3698224A1 (en) 2018-12-03 2020-08-26 Google LLC. Efficient control and/or linking of smart devices
CN110062193B (zh) * 2019-04-18 2021-04-06 视联动力信息技术股份有限公司 一种多人通话的处理方法及装置
US11095460B2 (en) 2019-07-05 2021-08-17 Advanced New Technologies Co., Ltd. Certificate application operations
CN110445614B (zh) * 2019-07-05 2021-05-25 创新先进技术有限公司 证书申请方法、装置、终端设备、网关设备和服务器
US11985505B2 (en) * 2019-08-06 2024-05-14 Eagle Technology, Llc Wireless communication system with accessory device pair and related devices and methods
ES2805847A1 (es) * 2019-08-14 2021-02-15 Dialoga Servicios Interactivos S A Sistema y metodo para la vinculacion de dispositivos electronicos en comunicaciones con audio
CN110730215B (zh) * 2019-09-20 2022-05-24 上海东方富联科技有限公司 报警事件的流转引擎、数据流转方法、介质及终端
US11341781B2 (en) * 2019-10-18 2022-05-24 Toyota Motor Engineering And Manufacturing North America, Inc. Vehicular communications through identifiers and online systems
US11743070B2 (en) * 2019-12-11 2023-08-29 At&T Intellectual Property I, L.P. Variable information communication
US11126414B1 (en) 2020-03-13 2021-09-21 RedLore Method and system for changing the behavior of a connected field device
US11669473B2 (en) * 2020-06-26 2023-06-06 Advanced Micro Devices, Inc. Allreduce enhanced direct memory access functionality
KR20220020094A (ko) * 2020-08-11 2022-02-18 삼성전자주식회사 푸시 메시지를 제공하는 전자 장치 및 그 제어 방법
US11223516B1 (en) 2020-10-30 2022-01-11 Nutanix, Inc. Smart collection and processing in telemetry system
US11700178B2 (en) * 2020-10-30 2023-07-11 Nutanix, Inc. System and method for managing clusters in an edge network
WO2022120545A1 (zh) * 2020-12-07 2022-06-16 Oppo广东移动通信有限公司 设备桥接映射的方法和桥接设备
US11507582B2 (en) * 2020-12-09 2022-11-22 Charter Communications Operating, Llc Event-driven internet of things (IoT) abstraction using rules
US11706682B2 (en) 2020-12-22 2023-07-18 Google Llc Switchable communication transport for communication between primary devices and vehicle head units
US11477626B2 (en) * 2020-12-22 2022-10-18 Google Llc Method and system for segmenting and transmiting data between computing devices and vehicle head units
WO2022238153A1 (en) * 2021-05-14 2022-11-17 Signify Holding B.V. A method of and a node device for communicating network information to an uncommissioned node device to be added to a network and a method of joining an uncommissioned node device into a network
CN113709708B (zh) * 2021-08-20 2024-03-22 北京百度网讯科技有限公司 数据传输方法、装置、设备和存储介质
CN114726860B (zh) * 2022-03-21 2022-10-21 慧之安信息技术股份有限公司 一种面向流媒体传输的负载均衡系统及负载均衡方法
US11765065B1 (en) 2022-03-23 2023-09-19 Nutanix, Inc. System and method for scalable telemetry
CN114615306B (zh) * 2022-05-10 2022-07-29 中南林业科技大学 物联网中汇聚节点的高效文件系统及其处理方法

Family Cites Families (68)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6513006B2 (en) 1999-08-26 2003-01-28 Matsushita Electronic Industrial Co., Ltd. Automatic control of household activity using speech recognition and natural language
JP2004015725A (ja) * 2002-06-11 2004-01-15 Canon Inc 通信システム及び通信システムにおける認証方法及びそのプログラム及びその記録媒体
KR100477513B1 (ko) 2002-11-25 2005-03-17 전자부품연구원 이기종 프로토콜간 상호 데이터 전송을 위한 공통프로토콜 계층 구조 및 방법과 공통 프로토콜 패킷
US7352997B2 (en) 2003-08-14 2008-04-01 Nokia Corporation Method, apparatus and system for hosting a group of terminals
US20050096913A1 (en) 2003-11-05 2005-05-05 Coffman Daniel M. Automatic clarification of commands in a conversational natural language understanding system
JP2005142848A (ja) * 2003-11-06 2005-06-02 Toshiba Corp 無線lanシステム、およびその通信制御方法、ならびにアクセスポイント
DE102006018238A1 (de) 2005-04-20 2007-03-29 Logitech Europe S.A. System und Verfahren zur adaptiven Programmierung einer Fernbedienung
JP5040087B2 (ja) * 2005-09-06 2012-10-03 富士通株式会社 無線通信ネットワークのセキュリティ設定方法、セキュリティ設定プログラム及び無線通信ネットワークシステム
US7669123B2 (en) 2006-08-11 2010-02-23 Facebook, Inc. Dynamically providing a news feed about a user of a social network
US8402094B2 (en) 2006-08-11 2013-03-19 Facebook, Inc. Providing a newsfeed based on user affinity for entities and monitored actions in a social network environment
US8037093B2 (en) 2006-09-12 2011-10-11 Facebook, Inc. Feeding updates to landing pages of users of an online social network from external sources
US9798789B2 (en) 2006-09-12 2017-10-24 Facebook, Inc. Method and system for tracking changes to user content in an online social network
US8447814B2 (en) 2006-12-07 2013-05-21 Microsoft Corporation Remote control using instant messaging
JP2008263445A (ja) * 2007-04-12 2008-10-30 Docomo Technology Inc 接続設定システム、認証装置、無線端末、及び接続設定方法
CA2695794C (en) 2007-08-20 2016-07-05 Facebook, Inc. Targeting advertisements in a social network
US9990652B2 (en) 2010-12-15 2018-06-05 Facebook, Inc. Targeting social advertising to friends of users who have interacted with an object associated with the advertising
US8799068B2 (en) 2007-11-05 2014-08-05 Facebook, Inc. Social advertisements and other informational messages on a social networking website, and advertising model for same
US20120203831A1 (en) 2011-02-03 2012-08-09 Kent Schoen Sponsored Stories Unit Creation from Organic Activity Stream
US8700636B2 (en) 2010-09-16 2014-04-15 Facebook, Inc. Action clustering for news feeds
FI121618B (fi) 2007-11-09 2011-01-31 Capricode Oy Mobiilin laitteen laitehallintamenetelmä ja -järjestely
US20090204578A1 (en) 2008-02-12 2009-08-13 Microsoft Corporation Targeted queries using an oma dm protocol
US8984615B2 (en) 2009-04-08 2015-03-17 At&T Mobility Ii, Llc Web to IMS registration and authentication for an unmanaged IP client device
US20110004692A1 (en) 2009-07-01 2011-01-06 Tom Occhino Gathering Information about Connections in a Social Networking Service
US9119027B2 (en) 2009-10-06 2015-08-25 Facebook, Inc. Sharing of location-based content item in social networking service
US8175617B2 (en) 2009-10-28 2012-05-08 Digimarc Corporation Sensor-based mobile search, related methods and systems
US20110106779A1 (en) 2009-10-30 2011-05-05 Research In Motion Limited System and method to implement operations, administration, maintenance and provisioning tasks based on natural language interactions
US8473743B2 (en) 2010-04-07 2013-06-25 Apple Inc. Mobile device management
US8244848B1 (en) 2010-04-19 2012-08-14 Facebook, Inc. Integrated social network environment
US8150844B2 (en) 2010-08-18 2012-04-03 Facebook, Inc. Location ranking using social graph information
US8499245B1 (en) 2010-08-24 2013-07-30 Amazon Technologies, Inc. Multi-source profiling for adaptive device operation
US8849610B2 (en) 2010-09-30 2014-09-30 Fitbit, Inc. Tracking user physical activity with multiple devices
US20120084160A1 (en) 2010-10-05 2012-04-05 Gregory Joseph Badros Providing Social Endorsements with Online Advertising
US9311678B2 (en) 2010-12-15 2016-04-12 Facebook, Inc. Comment plug-in for third party system
US9183307B2 (en) 2010-12-15 2015-11-10 Facebook, Inc. Comment ordering system
US20120166532A1 (en) 2010-12-23 2012-06-28 Yun-Fang Juan Contextually Relevant Affinity Prediction in a Social Networking System
US20120197709A1 (en) 2011-02-01 2012-08-02 Timothy Kendall Mobile Advertisement with Social Component for Geo-Social Networking System
US20120232998A1 (en) 2011-03-08 2012-09-13 Kent Schoen Selecting social endorsement information for an advertisement for display to a viewing user
US20120233009A1 (en) 2011-03-09 2012-09-13 Jon Bernhard Fougner Endorsement Subscriptions for Sponsored Stories
US8832284B1 (en) 2011-06-16 2014-09-09 Google Inc. Virtual socializing
US8954362B2 (en) 2011-06-29 2015-02-10 Infosys Limited System and method for predictive analytics in an electrical grid network
US9445305B2 (en) 2011-09-12 2016-09-13 Microsoft Corporation Low energy beacon encoding
US20130080520A1 (en) 2011-09-22 2013-03-28 Nokia Corporation Method and apparatus for provisioning resource credentials based on social networking data
WO2013071305A2 (en) 2011-11-10 2013-05-16 Inventime Usa, Inc. Systems and methods for manipulating data using natural language commands
US8904013B2 (en) * 2012-01-26 2014-12-02 Facebook, Inc. Social hotspot
US9479488B2 (en) * 2012-01-26 2016-10-25 Facebook, Inc. Network access based on social-networking information
US9288674B2 (en) * 2012-04-24 2016-03-15 Time Warner Cable Enterprises Llc Convenient WiFi network access using unique identifier value
US8875265B2 (en) 2012-05-14 2014-10-28 Qualcomm Incorporated Systems and methods for remote credentials management
US20140041055A1 (en) 2012-08-06 2014-02-06 Avaya Inc. System and method for online access control based on users social network context
JP5635569B2 (ja) * 2012-08-23 2014-12-03 Necプラットフォームズ株式会社 通信システム及び通信方法
CA2828258C (en) 2012-09-25 2016-11-29 Blackberry Limited Smart plug or cradle
US9198401B2 (en) 2012-10-24 2015-12-01 Aspects, Inc. Nectar feeder with float
US9367607B2 (en) 2012-12-31 2016-06-14 Facebook, Inc. Natural-language rendering of structured search queries
JP6047017B2 (ja) 2013-01-11 2016-12-21 キヤノン株式会社 パターン抽出装置および制御方法
CN103941651B (zh) * 2013-01-19 2017-08-08 珠海格力电器股份有限公司 一种基于互联网的智能家居系统和控制方法
US9047271B1 (en) 2013-02-28 2015-06-02 Google Inc. Mining data for natural language system
WO2014172567A1 (en) 2013-04-17 2014-10-23 Systech Corporation Gateway device for machine-to-machine communication with dual cellular interfaces
US9367536B2 (en) 2013-05-03 2016-06-14 Facebook, Inc. Using inverse operators for queries on online social networks
US9503835B2 (en) 2013-06-13 2016-11-22 Microsoft Technology Licensing, Llc Service provisioning through a smart personal gateway device
US9372922B2 (en) 2013-07-11 2016-06-21 Neura, Inc. Data consolidation mechanisms for internet of things integration platform
US20150058226A1 (en) 2013-08-26 2015-02-26 My City Tag Llc Token for short range rf transaction notification
CN105830414B (zh) * 2013-10-01 2019-07-12 阿里斯企业有限责任公司 使用凭证的安全的网络接入
CN103618706B (zh) * 2013-11-19 2018-11-02 深圳Tcl新技术有限公司 智能设备相互访问的控制系统及方法
US9363736B2 (en) * 2013-12-16 2016-06-07 Qualcomm Incorporated Methods and apparatus for provisioning of credentials in network deployments
WO2015092484A1 (en) 2013-12-17 2015-06-25 Sony Corporation Method and apparatus for facilitating use of services available via wireless connection
US9743449B2 (en) * 2014-01-14 2017-08-22 Qualcomm Incorporated Bluetooth low energy secondary data channel with multi-rate streaming
DK3117577T3 (da) 2014-03-12 2019-09-23 Tencent Tech Shenzhen Co Ltd Fremgangsmåde og indretning til at kontrollere perifere indretninger via en social netværksplatform.
CN103901865A (zh) * 2014-04-16 2014-07-02 曾光 智慧城市环境改造人物互动系统
CN104618267B (zh) * 2014-12-29 2018-02-13 小米科技有限责任公司 接入控制方法及装置

Also Published As

Publication number Publication date
EP3128475A1 (en) 2017-02-08
JP2018530038A (ja) 2018-10-11
MX2018001445A (es) 2018-04-20
AU2016301394B2 (en) 2020-03-19
CN108141448A (zh) 2018-06-08
KR20180027606A (ko) 2018-03-14
BR112018001824A2 (pt) 2018-09-18
AU2016301394A1 (en) 2018-03-15
IL257051A (en) 2018-04-30
WO2017024189A1 (en) 2017-02-09
CA2993618A1 (en) 2017-02-09
US10425392B2 (en) 2019-09-24
US20170041304A1 (en) 2017-02-09

Similar Documents

Publication Publication Date Title
JP6909204B2 (ja) デバイス・クラウドの管理
JP6815382B2 (ja) デバイスクラウドの管理
JP6849656B2 (ja) デバイス・クラウドの制御
JP6824961B2 (ja) デバイス・クラウドの制御
US10348798B2 (en) Rules engine for connected devices

Legal Events

Date Code Title Description
RD02 Notification of acceptance of power of attorney

Free format text: JAPANESE INTERMEDIATE CODE: A7422

Effective date: 20190517

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20190708

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20200707

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20200901

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20201201

TRDD Decision of grant or rejection written
A01 Written decision to grant a patent or to grant a registration (utility model)

Free format text: JAPANESE INTERMEDIATE CODE: A01

Effective date: 20210615

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20210702

R150 Certificate of patent or registration of utility model

Ref document number: 6909204

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