(57)【要約】Bluetooth（登録商標）低エネルギー（BLE）ビーコンを用いて多くのユーザをロケーションにチェックインするためのシステム及び方法が提供される。その提供されたシステム及び方法は、BLEビーコンが、チェックインを処理するリモートサーバを用いたチェックインを容易に行うことと、それでチェックインに使用されていたデバイスから切断することを、可能にすることができる。そのデバイスは、そのBLEビーコンがその識別子を即座にスキャンできて、そのデバイスにコンテンツ及び他の情報を供給するために、その識別子に基づいてそのデバイスと接続できるように、そのチェックインの間にそのデバイスからブロードキャストされることができる一意の識別子をアサインされるようにすることができる。【選択図】図１
2017501620.tif 000002
【特許請求の範囲】
【請求項１】
１つ以上の無線トランシーバであって、
ユーザデバイスがチェックインを完了したときに、前記１つ以上の無線トランシーバと通信してデバイス識別子を前記ユーザデバイスに送信し、
リモートサーバから前記ユーザデバイスのためのコンテンツが受信されたときに、前記デバイス識別子に基づいて前記ユーザデバイスとの通信を確立し、
前記ユーザデバイスにコンテンツを送信するように構成され、
前記１つ以上の無線トランシーバは、更に、Bluetooth（登録商標）低エネルギー（BLE）通信プロトコルを用いて、前記ユーザデバイスと通信するように構成され、
前記１つ以上の無線トランシーバに結合され、ネットワーク上で前記リモートサーバと通信をするネットワークインタフェースコンポーネントであって、前記ネットワークインタフェースコンポーネントは、前記リモートサーバから前記デバイス識別子及び前記コンテンツを受信するように構成され、
いつ前記デバイス識別子が存在するか判定をし、いつ前記コンテンツがリモートサーバから受信されたか判定をするように構成される１つ以上のプロセッサと、
メモリと、
からなるシステム。
【請求項２】
前記１つ以上の無線トランシーバは更に、
ブロードキャスト識別子をブロードキャストし、
前記１つ以上の無線トランシーバによって前記ユーザデバイスと通信をするための要求が受信されたときに、メタデータ、ビーコントークン、及びデジタル署名を送信し、
前記メタデータ、前記ビーコントークン、及び前記デジタル署名は、前記チェックインを完了するために使用される、
請求項１に記載のシステム。
【請求項３】
前記１つ以上のプロセッサは更に、前記デバイス識別子が存在しないと判断されたときに通知を生成するように構成され、前記ネットワークインタフェースコンポーネントは前記通知を前記リモートサーバに送信するように構成される、
請求項１に記載のシステム。
【請求項４】
前記デバイス識別子はサービスユニバーサル固有識別子（UUID）からなる、請求項１に記載のシステム。
【請求項５】
前記１つ以上の無線トランシーバは更に、前記デバイス識別子を前記ユーザデバイスに送信した後、及び前記デバイスにコンテンツを送信した後に、前記ユーザデバイスと通信することを停止するように構成される、請求項１に記載のシステム。
【請求項６】
前記１つ以上の無線トランシーバは更に、前記デバイス識別子に加えて、前記デバイス識別子をブロードキャストするための命令を送信するように構成される、請求項１に記載のシステム。
【請求項７】
前記無線トランシーバは更に、前記デバイス識別子をスキャンするように構成され、
前記１つ以上のプロセッサは、前記デバイス識別子に対するスキャンから前記デバイス識別子の存在を決定することにより、いつ前記デバイス識別子が存在しているかを判定をするように構成される、請求項１に記載のシステム。
【請求項８】
１つ以上のプロセッサによって実行されたときに、
Bluetooth（登録商標）低エネルギー（BLE）通信プロトコルを用いてビーコンと通信して、ロケーションにチェックインし、
前記ビーコンから、デバイス識別子と、前記デバイス識別子をブロードキャストするための命令とを受信し、
前記デバイス識別子をブロードキャストし、前記デバイス識別子を受信した後に前記ビーコンと通信することを停止し、
前記ビーコンからの要求に応答して前記ビーコンとの通信を再確立し、
前記ビーコンからコンテンツを受信し、前記ビーコンを受信した後に、前記ビーコンとの再確立された通信を停止する、
ことからなる方法を前記１つ以上のプロセッサに実行させる命令を含むコンピュータ読取り可能媒体。
【請求項９】
前記ビーコンと通信をして前記ロケーションにチェックインすることは、
前記ビーコンからデジタル署名を受信し、
前記デジタル署名を確認検査し、
トークン値を暗号化し、
前記暗号化されたトークン値を前記ビーコンに送信する、
ことからなる、請求項９に記載のコンピュータ読取り可能媒体。
【請求項１０】
前記デバイス識別子を受信することは、ユニバーサル固有識別子（UUID）を受信することからなる、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１１】
前記デバイス識別子をブロードキャストすることは、前記チェックインに関連する有効期間において前記デバイス識別子をブロードキャストすることからなる、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１２】
前記有効期間は約２時間である、請求項１１に記載のコンピュータ読取り可能媒体。
【請求項１３】
前記ビーコンからコンテンツを受信することは、広告、オファー、又は支払いのトークンの少なくとも何れか１つを受信することからなる、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１４】
前記ビーコンとの通信を再確立することは、異なるビーコンとの通信を再確立することからなり、前記異なるビーコンはBLE通信の有効な範囲にある、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１５】
１つ以上のプロセッサによって実行されたときに、
ユーザをロケーションにチェックインし、
Bluetooth（登録商標）低エネルギー（BLE）通信プロトコルを用いて有効期間において前記ユーザと関連するデバイスによってブロードキャストされるべきデバイス識別子を前記ユーザに割り当て、
前記デバイス識別子に基づいてコンテンツを前記ユーザに送信し、
前記ロケーションにおいて前記デバイス識別子がもはやブロードキャストされず、又は関連する前記有効期間が経過したときに、前記ロケーションから前記ユーザをチェックアウトする、
ことからなる方法を前記１つ以上のプロセッサに実行させる命令を含むコンピュータ読取り可能媒体。
【請求項１６】
前記ユーザに前記デバイス識別子を割り当てることは、前記ユーザにユニバーサル固有識別子（UUID）を割り当てることからなる、請求項１５に記載のコンピュータ読取り可能媒体。
【請求項１７】
前記ユーザに前記デバイス識別子を割り当てることは更に、前記ロケーションにおける１つ以上のビーコンに前記割り当てられたデバイス識別子を送信することからなる、請求項１５に記載のコンピュータ読取り可能媒体。
【請求項１８】
前記デバイス識別子がブロードキャストされていることを示す指標を前記１つ以上のビーコンから受信することを更に含む、請求項１７に記載のコンピュータ読取り可能媒体。
【請求項１９】
前記デバイス識別子がブロードキャストされていることを示す前記指標を供給する前記１つ以上のビーコンのうちの特定の１つのビーコンに基づいて、前記ロケーション内のユーザロケーションを決定することを更に含む、請求項１７に記載のコンピュータ読取り可能媒体。
【請求項２０】
前記デバイスにコンテンツを送信することは、前記指標を供給する前記特定のビーコンに前記決定されたユーザロケーションに関連するコンテンツを送信することからなる、請求項１９に記載のコンピュータ読取り可能媒体。
【請求項２１】
前記ロケーションから前記ユーザをチェックアウトすることは、前記デバイス識別子が前記ロケーションにおいてもはやブロードキャストされないであろう旨を前記１つ以上のビーコンに通知することからなる、請求項１７に記載のコンピュータ読取り可能媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
＜関連出願の相互参照＞
米国特許法第119条の下で、本出願は、その全ての開示内容が参照によって本願に組み込まれる、2013年9月6日に出願された米国仮特許出願第61/874,587号の出願日に対して優先権を主張する2014年4月8日に出願された米国特許出願第14/248,263号の出願日に対して、優先権を主張する。
【０００２】
＜技術分野＞
ここに開示される実施形態は、BLUETOOTH（「Bluetooth」は米国特許庁登録商標、以下同様）低エネルギー（BLE）ビーコンを使用して追加デバイスをチェックインさせることを可能とするためのシステム及び方法に関する。
【背景技術】
【０００３】
コンピュータシステム及びネットワークは、商品を購入し、販売し、運搬するタスク（作業）を容易にしてきている。例えば、インターネットのようなグローバルコンピュータネットワークは、購入者に対して、比較的迅速及び効率的に、購入商品をオンラインで検索し購入できるようにしてきている。同様に、グローバルコンピュータネットワークは、販売者が自らの商品を広告し、オファーし、供給し、販売する上で、効率的及び費用対効果のある手段を提供する。電子商取引企業は、買い手及び売り手に、遠隔の購入者からの商品の注文を受け付け、その商品の売買を確認し完了させるために必要な金融取引を実行し、遠隔の購入者にその商品を輸送又は流通させ、そして他の関連する物流を実行するための、オンラインサービス及びインフラを提供する。技術進歩はまた、小売業その他の市場における、より広範にわたる様々なデバイス及び取引の様式を可能にしてきている。
【０００４】
電子商取引の分野における比較的新しい発展の一例として、消費者が、販売地点において、自分のスマートフォンその他の個人携帯デバイスの使用を通じて、商品又はサービスに対して支払いを行うことを可能とするものがある。ユーザは単に、自分のデバイスに適切な支払いアプリケーション又は“アプリ”を備えるだけでよく、それにより、ユーザは、自身の電話機その他の同様のデバイスを、小売りその他の確立時における適切な時点又は位置で提示することができる。小売り業者その他の販売業者又はサービスプロバイダは、それによりユーザのスマートフォンその他の同様のデバイスを読み取る或る過程を通して、所与のユーザを“チェックイン”することができる。その後、その販売業者又はサービスプロバイダは、そのチェックインされた又は承認されたデバイスとの或る通信フォームを介して、支払い又はクレジット（信用貸しによる販売）を受け入れることができる。キャッシュ、小切手、クレジットカード、又はその他の旧来の支払い手段を用いることなく支払い又はクレジットを受け入れることができるこの“チェックイン”は、多くの環境において、特に役に立つ。
【０００５】
残念ながら、そのようなセットアップは、それら自身の欠点及び不便な点がない訳ではない。多くの事例において、現行のチェックインプロセスは、時間がかかる。例えば、現行のチェックイン手順は、しばしば顧客に対して、支払いを行い又はクレジットを提供するための販売地点において、その顧客の電話その他のデバイスを取り出すことを要求する。このことはしばしば、そのデバイスがその店舗における適切な無線接続を探索すること、そのデバイスにおける多くの可能な選択の中でその店舗を探索すること、及び／又は、個人携帯デバイス上でのユーザ手入力／選択を伴い、これらのすべては、ある不便なほどの時間を要する。加えて、たとえ自動化されていたとしても、同時にチェックインできるデバイス又はユーザの数における制限により、或るチェックインが失敗するかもしれない。例えば１分以内というようなわずかな時間であっても、精算機その他の販売地点において、そのユーザの後ろに他の顧客が並んで待っているところでは、フラストレーションを起こさせる可能性がある。
【図面の簡単な説明】
【０００６】
【図１】いくつかの実施形態における、ネットワークシステムのブロック図である。
【図２】いくつかの実施形態における、コンピューティングシステムを示す図である。
【図３】いくつかの実施形態における、ビーコンを示す図である。
【図４】ロケーションに渡って複数のビーコンを有するロケーション（場所）を示す図である。
【図５】いくつかの実施形態において、追加されたクライアントコンピューティングデバイスが１つのビーコンと通信することを可能にするフローを示す図である。
【図６】いくつかの実施形態において、１つのビーコンを使って或るロケーションにチェックインするための手順を示すフローチャートである。
【図７】いくつかの実施形態において、１つのビーコンを使って或るロケーションにチェックインするための手順を示すフローチャートである。
【図８】いくつかの実施形態において、１つのビーコンを使って或るロケーションにチェックインするための手順を示すフローチャートである。
【０００７】
図面において、同じ名称を有する要素は、同じ又は同様の機能を有する。
【発明を実施するための形態】
【０００８】
以下の説明において、いくつかの実施形態を表す具体例について詳細に述べる。しかし、これらのいくつかの又は全ての具体的な詳細がなくても、開示された実施形態を実施できることが、当業者には明らかであろう。当業者であれば、ここに具体的に説明されてはいないが、この開示の範囲と精神の範囲内の他の物を実現できる。
【０００９】
必要なものは、或るロケーションにおいて多くのユーザを自動的にチェックインするためのシステムと方法である。
【００１０】
いくつかの実施形態に従って、１つのシステムを提供する。そのシステムは、１つのユーザデバイスがチェックインを完了したときに１つ以上の無線トランシーバと通信するそのユーザデバイスにデバイス識別子を送信し、１つのリモートサーバからそのユーザデバイスのためのコンテンツが受信されたときにそのデバイス識別子に基づいてそのユーザデバイスとの通信を確立し、そのユーザデバイスにコンテンツを送信するように構成された１つ以上の無線トランシーバを含む。そして、その１つ以上の無線トランシーバは、Bluetooth低エネルギー（BLE）通信プロトコルを使って、そのユーザデバイスと通信する。このシステムは、また、1以上の無線トランシーバと結合され、ネットワークを介してリモートサーバと通信するネットワークインタフェースコンポーネントを含み、ネットワークインタフェースコンポーネントは、リモートサーバからデバイス識別子とコンテンツを受信するように構成されている。このシステムは、また、いつデバイス識別子が存在するかを判定し、いつコンテンツが、リモートサーバから受信されたかを判定するように構成されている1以上のプロセッサを含む。、
【００１１】
いくつかの実施形態に従って、１つの方法もまた提供する。その方法は、Bluetooth低エネルギー通信プロトコルを使って１つのビーコンと通信して或るロケーションにチェックインし、そのビーコンから１つのデバイス識別子とそのデバイス識別子をブロードキャスト（一斉同報）する命令を受信し、そのデバイス識別子をブロードキャストし、その中でそのデバイス識別子を受信した後に、ビーコンと通信することを停止し、そのビーコンからの要求に応答してそのビーコンとの通信を再確立し、そして、そのビーコンからコンテンツを受信し、その中でそのビーコンを受信した後にその再確立したそのビーコンとの通信を停止するステップを含む。その方法は、コンピュータ可読媒体に具現化されてよい。
【００１２】
いくつかの実施形態に従って、更に１つの方法もまた提供する。その方法は、或るロケーションに１人のユーザをチェックインし、Bluetooth低エネルギー（BLE）通信プロトコルを使って有効期間内にそのユーザと関連するデバイスによってブロードキャストされるべき１つのデバイス識別子をそのユーザに割り当て、そのデバイス識別子に基づいてそのユーザにコンテンツを送信し、そして、そのロケーションにおいてそのデバイス識別子がもはやブロードキャストされなくなるか又は関連した有効期限が過ぎたときにそのロケーションからそのユーザをチェックアウトするステップを含む。その方法は、コンピュータ可読媒体に具現化されてよい。
【００１３】
結果的に、ここに説明する実施形態は、チェックインを容易にするのに必要なチャネル及びリソースが他のユーザデバイスのために解放されるように、BLEビーコンが１つのユーザデバイスを用いたチェックインとそのユーザデバイスからの切断を容易にすることを可能にする。それで、ここに説明する実施形態は、BLEビーコンが、１つのユーザデバイスに、コンテンツを配信するためにそのユーザデバイスに割り当てられる一意な識別子を用いて、迅速に接続することを可能にする。
【００１４】
図１は、いくつかの実施形態における、ネットワークシステム１００のブロック図である。システム１００は、ネットワーク１０６上で通信する、クライアントコンピューティングデバイス１０２とリモートサーバ１０４を含む。リモートサーバ１０４は、カリフォルニア州サンノゼにあるPayPal, Inc.のような、支払いサービスプロバイダによって維持される支払いサービスプロバイダサーバであってよい。リモートサーバ１０４は、異なる具体例においては、他のサービスプロバイダによって維持されてもよい。リモートサーバ１０４はまた、機密の証明書及び情報がクライアントコンピューティングデバイス１０２との間でやり取りされる企業主体によって維持されてもよい。リモートサーバ１０４は更に、ユーザのために或るロケーション、イベント等へのチェックインの機能性を提供する１台以上のサーバであってよい。チェックインは、ユーザに、特別なオファーや取引等を伴うチェックインを提供でき、そして、そのロケーション又はイベントの商人（merchant）その他の所有者に、そのユーザがそこにいることを認めさせる。そのユーザはまた、そのユーザの友人及び取引先担当者にチェックイン済みであることを知らせるための社交的な目的のために、或るロケーションにチェックインしてもよい。リモートサーバ１０４は、より一般的には、ウェブサイト、オンラインコンテンツマネージャ、銀行等のサービスプロバイダ、或いはユーザ認証又はログインを要求するユーザにコンテンツを提供するその他の企業主体とすることができる。
【００１５】
１つの実施形態においてネットワーク１０６は、単一のネットワークとして、又は複数のネットワークの組合せとして実施することができる。例えば様々な実施形態において、ネットワーク１０６は、インターネット、及び／又は１つ以上のイントラネット、固定電話回線ネットワーク、無線ネットワーク、及び／又はその他の適切なタイプの通信ネットワークを含んでよい。他の例において、そのネットワークは、インターネット等の他の通信ネットワークと通信するように適合させられている無線電話通信ネットワーク（例えば、携帯電話ネットワーク）を含んでよい。
【００１６】
１つの実施形態において、クライアントコンピューティングデバイス１０２は、ネットワーク１０６上で有線及び／又は無線通信を行うために構成された、任意の適切なハードウェア及び／又はソフトウェアの組合せを用いて、実施することができる。例えば、クライアントコンピューティングデバイス１０２は、無線電話（例えばスマートフォン）、タブレット、個人情報端末（パーソナルデジタルアシスタント：PDA）、ノートブックコンピュータ、パーソナルコンピュータ、ケーブル又は衛星コンテンツプロバイダによって提供されるような接続されたセット・トップ・ボックス（STB）又はビデオゲームシステムコンソール、ヘッドマウントディスプレイ（HMD）、又はその他の、眼鏡投影スクリーンを備えるものを含むウェアラビルコンピューティングデバイス、及び／又は様々な他の一般的に知られたタイプのコンピューティングデバイスとして実施されてよい。
【００１７】
図１に示されるように、システム１００は、１つ以上のビーコン１０８を含んでよい。いくつかの実施形態において、ビーコン１０８は、店舗やレストラン等のような商人のロケーション、及びユーザ１１０がチェックインできてよくそして付加的なコンテンツ、オファー、特典、又は支払いオプションを受け取ることができるその他のロケーションに設置することができる。いくつかの実施形態において、ビーコン１０８は、Bluetooth（「Bluetooth」は商標）低エネルギー（BLE）ビーコンであってよい。BLEは、情報を、40個の2 MHz 幅チャネルにわたる約2.4GHz（だいたい2042-2480MHz）の周波数で送信し、そして約50メートル又は約160フィートの通信範囲を備える技術である。BLEプロトコルに従って送信される情報は、約0.27Mbit/sのアプリケーションスループットにおいて約1Mbit/sの伝送レートで送信することができる。いくつかの実施形態において、BLE通信は、暗号ブロック連鎖−メッセージ認証コード（CBC-MAC）によるカウンタモードを使用した128ビット高度暗号化標準（AES）及びユーザ定義セキュリティを用いて、セキュリティを確保することができる。更に、いくつかの実施形態において、BLE通信は、ロバスト性を確保するために、適応型周波数ホッピング、遅延認証（lazy acknowledgement）、24ビット巡回冗長検査（CRC）、及び32ビットメッセージ完全性チェックを利用することができる。そのうえ更に、いくつかの実施形態において、BLE利用可能デバイスは、低デューティーサイクルを許容し、かつ連続的なデータ送信を要求しなくてよいアプリケーションのために設計されるプロトコルであることにより、標準Bluetooth（登録商標）デバイスの電力のほんの一部分しか消費しないようにすることができる。ビーコン１０８は、ビーコン１０８から情報を受信することのできるクライアントコンピューティングデバイス１０２のようなデバイスがビーコン１０８の通信範囲内に来たときに、そのデバイスが、ビーコン１０８と通信を開始するためにクライアントコンピューティングデバイス１０２によって表示され又は使用され得る情報、データ、メタデータ等を含むことのできるビーコン１０８からの送信を受信することができるように、１シーケンス以上の情報を送信することができる。いくつかの実施形態において、ビーコン１０８は、無線又は有線接続を介したネットワーク１０６上で、リモートサーバ１０４と通信をすることができる。特に、ビーコン１０８は、ネットワーク１０６上で、リモートサーバ１０４と通信してよい。ビーコン１０８はまた、Bluetooth（登録商標）、近距離無線通信（NFC）、電波による個体識別（RFID）等の他の無線通信プロトコルを用いて、クライアントコンピューティングデバイス１０２に情報を送信してよい。
【００１８】
クライアントコンピューティングデバイス１０２は、１つ以上のプロセッサを備えるハードウェア及び／又はソフトウェアの任意の適切な組合せを含むことができ、そして、その１つ以上のプロセッサによって実行されるべき、有形の一時的でない機械読取り可能媒体に記憶された命令を、読むことができる。いくつかの実施形態において、クライアントコンピューティングデバイス１０２は、そのクライアントコンピューティングデバイス１０２に特定のタスクを実行させる１つ以上のプロセッサ（図示せず）によって実行されるための命令を含む、メモリ（図示せず）のような、機械読取り可能媒体を含むことができる。いくつかの実施形態において、その命令は、ユーザ１１０による対話に応答して、１つ以上のプロセッサによって実行されるようにすることができる。例えば、そのような命令は、携帯ブラウザアプリケーションのようなブラウザアプリケーション１１２を含むことができる。ブラウザアプリケーション１１２は、ユーザ１１０に、リモートサーバ１０４によって提供される情報を含むネットワーク１０６上で閲覧可能な情報を閲覧することを許可するための、ユーザインタフェースを提供するのに使用することができる。例えば、ブラウザアプリケーション１１２は、ネットワーク１０６上で閲覧可能な情報を閲覧するためのウェブブラウザとして実装される。ブラウザアプリケーション１１２は、ネットワーク１０６を介して、コンテンツプロバイダ又は商人によって管理されるリモートサーバ１０４又は、その他のサーバと、インタフェースを確立して通信することを、ユーザ１１０に可能にさせるように構成される、グラフィカルユーザインタフェース（GUI）を含むことができる。例えば、ユーザ１１０は、ユーザアカウント情報又はウェブコンテンツにアクセスできるだけでなく、ウェブサイトにアクセスしてアイテムを見つけて購入することができる。
【００１９】
クライアントコンピューティングデバイス１０２はまた、カリフォルニア州サンノゼにあるPayPal, Inc.、ニューヨーク州ニューヨークにあるFoursquare、カリフォルニア州メンローパークにあるFacebook, Inc.や、カリフォルニア州マウンテンビューにあるGoogle, Inc.のGoogle+、カリフォルニア州サンフランシスコにあるYelp Inc.、又は或る商人やロケーションによって提供され、かつリモートサーバ１０４によって実装されるような、チェックインプラットフォーム又はサービスを用いて、ユーザ１１０が１つのロケーションにチェックインすることを可能にする、チェックインアプリケーション１１４を含むことができる。いくつかの実施形態において、チェックインアプリケーションは、１つ以上のチェックインプラットフォーム又はサービスにチェックインするための、マルチアプリケーションプログラミングインタフェース（APIs）を含むことができる。いくつかの実施形態において、商人の物理的な店頭のようなロケーションを訪れている間にロケーションにチェックインすることは、ユーザに、専売の取引やオファーを与えることができ、又は、ユーザがアイテムを購入し支払いを行うことを可能にすることができる。
【００２０】
クライアントコンピューティングデバイス１０２はまた、支払いを行うためにユーザ１１０がクライアントコンピューティングデバイス１０２を用いて使用することのできる支払いアプリケーション１１６を含むことができる。いくつかの実施形態において、支払いアプリケーション１１６は、支払いプロセッサとしてのリモートサーバ１０４を用いて支払いを行うように、構成することができる。いくつかの実施形態において、チェックインアプリケーション１１４及び支払いアプリケーション１１６によって提供される機能は、実際には単一のアプリケーションによって提供されてよい。クライアントコンピューティングデバイス１０２は、１つ以上の実施形態において、リモートサーバ１０４を用いてユーザアカウントにアクセスすることを含む、ユーザ１１０が利用可能な付加的な特徴を提供することが求められた場合に、他のアプリケーション１１８を含むことができる。例えば、アプリケーション１１８は、ネットワーク１０６を介してリモートサーバ１０４その他のオンラインサイトに対して、ユーザが情報を受信又は送信することを可能にするインタフェース及び通信プロトコルを含むことができる。アプリケーション１１８はまた、クライアント側セキュリティ機能を実装するセキュリティアプリケーション、ネットワーク１０６上の適切なAPIとインタフェースするためのプログラム制御クライアントアプリケーション、又は様々な他のタイプの一般的に良く知られたプログラム及び／又はアプリケーションを含むことができる。アプリケーション１１６は、ユーザ１１０がそれを通じてコンテンツにアクセスすることを可能にする、クライアントコンピューティングデバイス１０２上にダウンロードされ常駐する携帯アプリケーションを含むことができる。
【００２１】
いくつかの実施形態によれば、リモートサーバ１０４は、カリフォルニア州サンノゼにあるPayPal, Inc.のようなオンライン支払いプロバイダによって維持されてよい。そのプロバイダは、ユーザ１１０の代わりにオンラインの金銭的な及び情報のトランザクションのための処理を提供することができる。いくつかの実施形態によれば、リモートサーバ１０４は、商人その他のようなロケーションの所有者が、ユーザ１１０がそのロケーションにいることがわかるようにするために、又は、クライアントコンピューティングデバイスを用いて商品の支払いをし、オファーを受け取り、ロイヤルティーポイントを受け取ること等ができるようにする機能をユーザ１１０に提供できるようにするために、チェックインを処理するサービスによって維持されてよい。リモートサーバ１０４はまた、購入のための商人の商品及びサービス（以下まとめて「アイテム」という）へのアクセスを提供できるようにしてよく、そして、購入されたアイテムのために処理を行う支払いサービスを提供することができる。リモートサーバ１０４は少なくとも、ユーザ１１０を１つのロケーションにチェックインするためにクライアントコンピューティングデバイス１０２及びビーコン１０８と対話するように構成されてよい、チェックインアプリケーション１１９を含むことができる。いくつかの実施形態において、クライアントコンピューティングデバイス１０２を１つのロケーションにチェックインすることは、ユーザ１１０及びクライアントコンピューティングデバイス１０２が、そのロケーションによって提供される特典、特価、オファー等にアクセスすることを、可能にすることができる。いくつかの実施形態において、これらの特典、特価、オファー等は、そのロケーションの代わりにリモートサーバ１０４によって提供され処理されてよい。いくつかの実施形態において、チェックインは、クライアントコンピューティングデバイス１０２とビーコン１０８の通信を介して行われる自動チェックインとすることができる。このことは、2013年7月10日出願の米国特許出願第13/938,860号、2013年9月9日出願の米国特許出願第14/021,045号に開示されており、これらの出願の両方の全内容は、それらの全体が本明細書に参照として組み込まれている。
【００２２】
リモートサーバ１０４は、ユーザ１１０のために例えば小売商への支払いを処理することを容易にすることができる支払いアプリケーション１２０を含むことができる。いくつかの実施形態において、支払いアプリケーション１２０は、ユーザ１１０の代わりに支払いを処理するために、支払いアプリケーション１１６とインタフェースして、支払いの詳細、ユーザ情報、商人の情報、及び付加情報を受信するように構成することができる。支払いアプリケーション１２０はまた、チェックインが処理されるときに、ユーザ１１０がチェックインしたロケーションのために支払いが承認されるような場合に、チェックインアプリケーション１１９とインタフェースすることができるようにしてよい。いくつかの実施形態において、チェックインアプリケーション１１９及び支払いアプリケーション１２０によって与えられる機能は、実際には単一のアプリケーションによって提供することができる。リモートサーバ１０４はまた、リモートサーバ１０４上にユーザ１１０のようなアカウントを有するユーザのために、アカウント情報１２４を含むアカウントデータベース１２２を含むことができる。いくつかの実施形態において、支払いアプリケーション１２０は、アカウントデータベース１２２のアカウント情報１２４内の情報に基づいて、支払いを処理することができる。リモートサーバ１０４は、他のアプリケーション１２６を含むことができ、リモートサーバ１０４によって使用されてよい付加情報を提供できる、１つ以上の外部データベース１２８と通信することもできる。いくつかの実施形態において、データベース１２８は、第三者によって維持されるデータベースとすることができ、ユーザ１１０の第三者アカウント情報を含むことができる。
【００２３】
ここでいうユーザ１１０は、アカウント情報１２４がユーザ１１０についての情報を含むような形で、リモートサーバ１０４にアカウントを有することができる。ユーザ１１０がリモートサーバ１０４を使用してチェックインし又はリモートサーバ１０４を使用して他の認証を実行したときに、クライアントコンピューティングデバイス１０２は、リモートサーバ１０４がクライアントコンピューティングデバイス１０２がユーザ１１０と関連していると認識するように、ユーザ１１０と関連付けられることができる。いくつかの実施形態において、リモートサーバ１０４は、ユーザ１１０とクライアントコンピューティングデバイス１０２との間の関係の指標を提供するクッキーその他のオブジェクトを、クライアントコンピューティングデバイス１０２に送信することができる。
【００２４】
アプリケーション、及びクライアントコンピューティングデバイス１０２及びリモートサーバ１０４上のアプリケーションについて議論してきたが、いくつかの実施形態において、それらのアプリケーションは、モジュールとすることができる。ここでいうモジュールは、１つ以上のプロセッサ、又は特定用途向け集積回路（ASIC）、又はメモリと、アプリケーションによって実行される既述した機能のような機能を果たす命令を実行するための少なくとも１つのプロセッサとを有するその他の回路によって実行されたときに、或る機能を果たすソフトウェアモジュールとして言及することができる。
【００２５】
図２は、いくつかの実施形態において、クライアントコンピューティングデバイス１０２又はリモートサーバ１０４の何れかに対応することができるコンピューティングシステム２００を示す図である。コンピューティングシステム２００は、クライアントコンピューティングデバイス１０２に適した、スマートフォン、タブレットコンピュータ、パーソナルコンピュータ、ラップトップコンピュータ、ネットブックやタブレットコンピュータ、セットトップボックス、ビデオゲームコンソール、ヘッドマウントディスプレイ（HMD）、又はその他のウェアラブルコンピューティングデバイスのような、携帯デバイスとすることができる。更に、コンピューティングシステム２００はまた、リモートサーバ１０４に適した、サーバ又は複数のサーバの中の１つのサーバとすることができる。図２に示されるように、コンピューティングシステム２００は、図１に示されるネットワーク１０８のようなネットワークと通信するために構成されるネットワークインタフェースコンポーネント（NIC）２０２を含む。いくつかの実施形態と調和して、NIC２０２は、ネットワーク１０６と通信するために構成される、広帯域無線コンポーネント、衛星無線コンポーネント、又は無線周波数（RF）、マイクロウェーブ周波数（MWF）、及び／又は赤外線（IR）のコンポーネントを含む様々な他のタイプの無線通信コンポーネントのような、無線通信コンポーネントを含む。他の実施形態において、NIC２０２は、ネットワーク１０６との通信に適合する、同軸ケーブル、光ファイバーケーブル、デジタル加入者線（DSL）モデム、公衆交換電話網（PSTN）モデム、イーサネットデバイス、及び／又は様々なその他のタイプの有線及び／又は無線ネットワーク通信デバイスとして構成することができる。
【００２６】
いくつかの実施形態において、コンピューティングシステム２００は、コンピューティングシステム２００内の様々なコンポーネントを相互に接続し、それらの様々なコンポーネント間で情報を通信するためのシステムバス２０４を含む。そのようなコンポーネントは、１つ以上のプロセッサ、マイクロコントローラ、グラフィックプロセッシングユニット（GPUs）、又はデジタルシグナルプロセッサ（DSPs）であってよいプロセッシングコンポーネント２０６と、ランダムアクセスメモリ（RAM）、内部メモリコンポーネント、リードオンリーメモリ（ROM）、又は外部記憶型やスタティック型、光学式、磁気式、又はソリッドステート型のメモリであってよいメモリコンポーネント２０８とを含む。いくつかの実施形態において、コンピューティングシステム２００は更に、コンピューティングシステム２００のユーザに情報を表示するための、ディスプレイコンポーネント２１０を含む。ディスプレイコンポーネント２１０は、液晶ディスプレイ（LCD）スクリーン、有機発光ダイオード（OLED）スクリーン（アクティブマトリックスAMOLEDスクリーンを含む）、LEDスクリーン、プラズマディスプレイ、又は陰極線管（CRT）ディスプレイとすることができる。コンピューティングシステム２００はまた、消費者１２０のようなコンピューティングシステム２００のユーザがコンピューティングシステム２００に情報を入力することを可能にする、入力コンポーネント２１２を含むことができる。そのような情報は、売買を完結させるのに必要な金額のような支払い情報、アカウント情報、信用証明のような認証情報、又は身分証明情報を含むことができる。入力コンポーネント２１２は、例えば、物理的又は仮想的の何れかの、キーボード又はキーパッドを含むことができる。コンピューティングシステム２００は更に、ユーザがディスプレイコンポーネント２１０を介して操作することを可能にするように構成されるナビゲーション制御コンポーネント２１４を含むことができる。いくつかの実施形態において、ナビゲーション制御コンポーネント２１４は、マウス、トラックボール等であってよい。そのうえ、デバイス２００がタッチスクリーンを含むならば、ディスプレイコンポーネント２１０、入力コンポーネント２１２、及びナビゲーション制御コンポーネント２１４は、静電容量センサ式タッチスクリーンなどの、単一の統合されたコンポーネントとすることができる。
【００２７】
コンピューティングシステム２００は更に、コンピューティングシステム２００のロケーションを決定するためのロケーションコンポーネント２１６を含むことができる。いくつかの実施形態において、ロケーションコンポーネント２１６は、１つ以上のGPS衛星と通信を行うGPSトランシーバに対応するようにすることができる。他の実施形態において、ロケーションコンポーネント２１６は、インターネットプロトコル（IP）アドレス探索を用いることにより、又は近くにある遠隔通信タワー又は無線アクセスポイント（WAPs）に基づいて三角測量で位置を決定することにより、コンピューティングシステム２００のロケーションを決定するように構成することができる。ロケーションコンポーネント２１６は更に、コンピューティングシステム２００のロケーションを確認する目的のために第三者に送信することができるユーザ定義ロケーションを、メモリコンポーネント２０８内に記憶するように構成することができる。コンピューティングシステム２００はまた、センサコンポーネント２１８を含むことができる。センサコンポーネント２１８は、センサ機能を提供し、クライアントコンピューティングデバイス１０２内にビルトインされたセンサ、又はクライアントコンピューティングデバイス１０２に連結するセンサ周辺機器に対応するようにすることができる。センサコンポーネント２１８は、ユーザ１１０がクライアントコンピューティングデバイス１０２を用いて行う任意の行為と関連するようにすることができる、ユーザ１１０及び／又はクライアントコンピューティングデバイス１０２に関係する情報を捕捉する任意のセンサデバイスを含むことができる。センサコンポーネント２１８は、カメラ及びイメージングコンポーネント、加速度計、生体リーダ、GPSデバイス、モーションキャプチャ（動き捕捉）デバイス、及びクライアントコンピューティングデバイス１０２又はユーザ１１０或いはそれらの周囲の環境についての情報を供給することができる他のデバイスを、含むようにすることができる。コンピューティングシステム２００はまた、それぞれが分離可能な又は一体のアンテナを含むことができ、Wi-Fi（「Wi-Fi」は米国商標。以下同様。）、3G、4G、HSDPA、LTE、RF、NFC、IEEE 802.11a,b,g,n,ac,ad、Bluetooth、BLE、WiMAX、ZigBee（「ZigBee」は米国特許庁登録商標。以下同様。）等の１つ以上の無線ネットワークプロトコルに従って情報を送信及び受信することができる１つ以上の無線トランシーバ２２０を含むようにすることができる。
【００２８】
コンピューティングシステム２００は、メモリコンポーネント２０８に含まれる１つ以上の命令列を実行するプロセッシングコンポーネント２０６によって、特定の操作を実行することができる。他の実施形態において、本開示を実施するためのソフトウェア命令の代わりに又はそれと組み合わされて、ハードウェアにより実現される回路が使用されるようにすることができる。処理論理は、コンピュータ読取り可能媒体にコード化することができる。その媒体は、メモリコンポーネント２０８に含まれている命令を、実行のためにプロセッシングコンポーネント２０６に供給することに関係する、任意の媒体を指すことができる。いくつかの実施形態において、コンピュータ読取り可能媒体は、有形であってかつ一時的でない。様々な実装において、不揮発性媒体は、光学又は磁気ディスクを含み、揮発性媒体は、ダイナミックメモリを含み、そして、伝送媒体は、システムバス２０４からなる信号線を含む、同軸ケーブル、銅線、及び光ファイバを含む。コンピュータ読取り可能媒体のいくつかの一般的な形としては、例えば、フロッピィディスク、フレキシブルディスク、ハードディスク、磁気テープ、任意の他の磁気媒体、CD-ROM、任意の他の光学媒体、パンチカード、紙テープ、穴パターンを有する任意の他の物理媒体、RAM、PROM、EPROM、FLASH-EPROM、任意の他のメモリチップ又はカートリッジ、或いは、コンピュータが読込みを行うように適合される任意の他の媒体を含む。
【００２９】
本開示の様々な実施形態において、本開示を実施するための命令列の実行は、コンピューティングシステム２００によって行われるようにすることができる。本開示の様々な他の実施形態において、通信リンク２２２によってネットワーク１０８（例えば、LAN、WLAN、PTSN、及び／又はテレコム、セルラ、移動電話網を含む様々な他の有線若しくは無線ネットワーク）に接続される複数のコンピューティングシステム２００が、本開示を実施するための命令列を、相互に連携して実行するようにすることができる。コンピューティングシステム２００は、通信リンク２２２とネットワークインタフェースコンポーネント２０２と無線トランシーバ２２０を介して、１つ以上のプログラム（例えばアプリケーションコード）を含む、メッセージ、データと１つ以上のデータパケット、情報及び命令を、送信及び受信することができる。受信されたプログラムコードは、受信され及び／又はメモリコンポーネント２０８に記憶されると、プロセッシングコンポーネント２０６によって実行されるようにすることができる。
【００３０】
図３は、いくつかの実施形態における、ビーコン１０８を示す図である。図３に示されるように、ビーコン１０８は、図１に示されるネットワーク１０６のようなネットワークと通信するように構成されるネットワークインタフェースコンポーネント（NIC）３００を含む。いくつかの実施形態において、NIC３００は、ネットワーク１０６と通信３０２を行うために構成される、広帯域無線コンポーネント、衛星無線コンポーネント、又は無線周波数（RF）、マイクロウェーブ周波数（MWF）、及び／又は赤外線（IR）のコンポーネントを含む様々な他のタイプの無線通信コンポーネントのような、無線通信コンポーネントを含む。他の実施形態において、NIC３００は、ネットワーク１０６との通信に適合する、同軸ケーブル、光ファイバーケーブル、デジタル加入者線（DSL）モデム、公衆交換電話網（PSTN）モデム、イーサネットデバイス、及び／又は様々なその他のタイプの有線及び／又は無線ネットワーク通信デバイスとインタフェースするように構成することができる。
【００３１】
ビーコン１０８はまた、ビーコン１０８内の様々なコンポーネントを相互に接続し、それらの様々なコンポーネント間で情報を通信するためのシステムバス３０４を含む。そのようなコンポーネントは、１つ以上のプロセッサ、マイクロコントローラ、グラフィックプロセッシングユニット（GPUs）、又はデジタルシグナルプロセッサ（DSPs）であってよいプロセッシングコンポーネント３０６と、メモリコンポーネント３０８と、ファームウェア３１０と、それぞれが分離可能な又は一体のアンテナを含むことができ、Wi-Fi、3G、4G、HSDPA、LTE、RF、NFC、IEEE 802.11a,b,g,n,ac,ad、Bluetooth（登録商標）、BLE、WiMAX、ZigBee（登録商標）等の１つ以上の無線ネットワークプロトコルに従って情報を送信及び受信することができる１つ以上の無線トランシーバ３１２を含む。ビーコン１０８はまた、電源３１４を含むことができる。電源３１４は、ビーコン１０８のコンポーネントを動作させるのに十分な電流を供給することのできる、任意の電源とすることができる。いくつかの実施形態において、電源３１８は、時計電池又はボタンセルのような電池であってよい。
【００３２】
いくつかの実施形態において、ビーコン１０８は、メモリ３０８及び／又はプロセッシングコンポーネント３０６によって実行されるファームウェア３１０に格納された命令に基づいて、無線トランシーバ３１２を用いて、情報を送信するように構成することができる。命令は、通信リンク３０２からビーコンハードウェアインタフェース３００を介してメモリ３０８及び／又はファームウェア３１０にその命令を直接書き込むことによって、又は無線トランシーバ３１２によってその命令を無線で受信することによって、メモリ３０８及び／又はファームウェアに格納することができる。いくつかの実施形態において、ビーコン１０８は、ビーコン１０８に対応する商人へのチェックインに関連する情報を送信するように構成することができる。いくつかの実施形態において、ビーコン１０８はまた、クライアントコンピューティングデバイス１０２によって受信されたときに、チェックインアプリケーション１１４又は支払いアプリケーション１１６にプロセッシングコンポーネント２０６によって実行されるようにさせて、クライアントコンピューティングデバイス１０２にビーコン１０８に対応する商人においてチェックインを実行させる命令を送信することができる。更に、ビーコン１０８は、クライアントコンピューティングデバイス１０２によって受信されたときに、支払いアプリケーション１１６にプロセッシングコンポーネントによって実行されるようにさせて、リモートサーバ１０４によって処理されるべき支払いをユーザ１１０が承認することを可能にする命令を送信することができる。いくつかの実施形態において、無線トランシーバ３１２は、BLEプロトコルに従って情報を送信及び受信するように構成されたBLEトランシーバに相当するようにすることができる。いくつかの実施形態において、ビーコン１０８は、全内容の全体が本明細書に参照として組み込まれる2013年7月10日出願の米国特許出願第13/938,860号に開示されているような、BLEビーコン又はドングルであってよい。更に、BLEビーコン１０８は、全内容の全体がやはり本明細書に参照として組み込まれる2013年5月23日出願の米国意匠登録出願第29/455,720号に示されているようなデザインを有することができる。
【００３３】
容易に理解されるように、前述のネットワーク、システム、デバイス、方法、及びそれらのバリエーションは、購入処理その他の動作がより能率化されかつ便利になるように、連携又は申込みの確立時におけるユーザの自動的なチェックインを実装するのに使用されるようにすることができる。
【００３４】
図４は、典型的な商人のロケーション４００と、自動無線消費者チェックインを用いる商品又はサービスの購入を実装するために適合される、いくつかの実施形態における関連システムコンポーネントを、ブロック図の形式で示す図である。容易に理解されるように、商人のロケーション４００のこの特定のレイアウトは、実例の目的のために提供されるにすぎず、多くの他のタイプのレイアウト、デバイス、手順等が、本開示の様々な主要要素を用いて、効果的に実装されるようにすることができる。
【００３５】
商人のロケーション４００は、多くのビーコン１０８を有する屋内店舗フロアを含む。いくつかの実施形態において、ビーコン１０８は、BLEビーコンとすることができる。ビーコン１０８は更に、ネットワーク１０６を介してリモートサーバ１０４と通信するようにすることができる。これらのデバイスは、表玄関の近く、ロケーション中央部、及び／又はその施設内で高容量トラフィックとなるロケーションのような、商人のロケーションの至るところに、戦略的に配置されるようにすることができる。スマートフォン、タブレット等の１つ以上のクライアントコンピューティングデバイス１０２は、その店舗内の至るところの１つ以上のビーコン１０８と対話通信することができる。好ましくは、１つのチェックインのためには１つのビーコンとの１回の対話通信のみでよいが、通信の確立のためには、店舗内で、ユーザ１１０がどこに位置し及び／又はユーザ１１０がどこを動いているか、及び購買のパターン又は傾向を知ることが、役に立つ。そのような更なる情報は、更なる広告及び販売を促進する提案（例えばユーザが物理的に位置する場所における又はその近傍における関連するなんらかの物）を提供するために、及び／又は、盗みを行った又はさもなければその携帯デバイスを無許可の形式で使用している者に対する実際のユーザを認証するために使用することができる。そのような更なる認証は、所与のデバイス１０２に対して目下発生していることに対する、既知のユーザ１１０のトラフィック及び購買パターンをチェックすることを含むことができる。
【００３６】
現実の自動チェックイン手順は、小売商のロケーション４００に入ってきている加入済みの又は肯定的にアクティブなユーザ１１０を含むことができ、その上に、ユーザ１１０に対応するクライアントコンピューティングデバイス１０２は、店舗内の１つ以上のビーコン１０８からの低レベルBLE信号を検出した実行中のチェックインアプリケーション１１４のような、低レベルバックグラウンドプログラムを備える。それで、クライアントコンピューティングデバイス１０２は、「起きあがり」、そして、ビーコン１０８と、よりアクティブなレベルで通信することができる。いくつかの実施形態において、一意なデバイス識別子及びトークンが、生成され、クライアントコンピューティングデバイス１０２に、適切な有効期限及び詐欺又は他の不正使用に対して保護を行う適切な保護対策を備えて、特定の時間、ロケーション、及びセッションに対して、割り当てられるようにすることができる。例えば、１、２時間の期間が、典型的なチェックインセッション又はイベントに対して十分であるようにすることができるであろう。クライアントコンピューティングデバイス１０２およびビーコン１０８間の通信を確立し、チェックインを実行するためのメタデータ及びワンタイムビーコントークンをやりとりする手順は、2013年7月10日出願の米国特許出願第13/938,860号、及び2013年9月9日出願の米国特許出願第14/021,045号に開示されており、これらの出願の両方の全内容は、それらの全体が本明細書に参照として組み込まれている。
【００３７】
しかしながら、ビーコン１０８の生成部品は、クライアントコンピューティングデバイス１０２のようなデバイス群と同時通信することを可能にする、制限された数の通信チャネルを有しているかもしれない。例えば、プロセッシングコンポーネント３０６及び無線トランシーバ３１２は、現状では、制限された数のクライアントコンピューティングデバイス１０２に対して、チェックインし、オッファーを提供し、支払いを処理する等のために通信を行えるだけというように、制限された数の同時通信チャネルをのみ扱うように構成されているかもしれない。特定に、現状のBLEデバイスのために使用される現状の集積回路（ICs）及びマイクロチップは、最大37の同時発生するデータチャネルのみを扱える。その結果、ドア４０２を通って、37以上の異なるクライアントコンピューティングデバイス１０２が商人のロケーション４００にもし入った場合に、ビーコン１０８はクライアントコンピューティングデバイス１０２の全てとは通信することができない。そのことは、ビーコン１０８が、全てのクライアントコンピューティングデバイス１０２をチェックインすること、或いは、各クライアントコンピューティングデバイス１０２のための容易な支払い処理のために支払いを処理することができないことを意味する。
【００３８】
図５は、いくつかの実施形態において、追加されたクライアントコンピューティングデバイス１０２が１つのビーコン１０８と通信することを可能にするフローを示す図である。図５に示されるように、リモートサーバ１０４は、ビーコン１０８及びクライアントコンピューティングデバイス１０２に、トークンとキー（鍵）を与えることができる。いくつかの実施形態において、トークン及びキーは、ワンタイムユース（一度限り使用される）支払いトークン及び関連するキーとすることができる。この場合、関連するキーは、対称的なキーの組を含むことができ、トークンは例えばそれぞれ、ユーザ識別子、トークン値、キーシリアル番号、及びAESその他の暗号キーを備えることができる。いくつかの実施形態において、ビーコン１０８がリモートサーバ１０４を介してユーザをチェックインするためにリモートサーバ１０４と共に動作するようにセットアップされた場合に、リモートサーバ１０４はビーコンにトークン及びキーを供給するようにすることができる。リモートサーバ１０４は更に、チェックイン及び取引処理を辿るために使用されるようにすることができる、デジタル署名及び商人のワンタイムユーストークンを、ビーコン１０８に供給することができる。いくつかの実施形態において、クライアントコンピューティングデバイス１０２を使用するユーザ１１０がリモートサーバ１０４によって提供されるチェックインサービスにサインアップするとき、及び／又はチェックインアプリケーション１１４がクライアントコンピューティングデバイス１０２にインストールされるときに、トークン及びキーがクライアントコンピューティングデバイス１０２に供給されるようにすることができる。
【００３９】
それで、ビーコン１０８は、汎用識別子を、継続的にブロードキャストすることができる。いくつかの実施形態において、その識別子は、ユニバーサル固有識別子（UUID）とすることができる。ブロードキャストUUIDは、ビーコン１０８と通信を開始するために、クライアントコンピューティングデバイス１０２によって受信されるようにすることができる。それで、ビーコン１０８は、署名されたメタデータ、特定のワンタイムユースビーコントークン、及びその署名されたメタデータに関連するデジタル署名を、クライアントコンピューティングデバイス１０２に供給することができる。いくつかの実施形態において、クライアントコンピューティングデバイス１０２は、通信がビーコン１０８と開始されたときに、ビーコン１０８からメタデータ及び他の情報を要求することができる。チェックインアプリケーションは、メタデータ、及びサービスプロバイダによって発行された場合におけるデジタル署名のような他の情報を、リモートサーバ１０４から受信されたパブリックキー（公開鍵）を用いることによって、確認検査するように構成することができる。そのデジタル署名が信頼できると確認されたときに、それでチェックインアプリケーション１１４はユーザ１１０にチェックインするためのオプションを供給することができる。ユーザ１１０がチェックインしたときに、クライアントコンピューティングデバイス１０２は、リモートサーバ１０４から受信されたトークンを選択し、選択されたトークンに関連するキーを用いて、選択されたトークン値及び受信されたビーコントークン値を暗号化し、これらの暗号化されたトークン値をビーコン１０８に送信することができる。それでビーコン１０８は、その暗号化されたトークン値をリモートサーバに送信する。そのリモートサーバは、その値を解読し、その解読した値を用いてユーザ１１０及びユーザデバイス１０２をチェックインする。ビーコン１０８のようなBLEビーコンとの通信によるチェックインの手順は、2013年7月10日出願の米国特許出願第13/938,860号、及び2013年9月9日出願の米国特許出願第14/021,045号に開示されており、これらの出願の両方の全内容は、それらの全体が本明細書に参照として組み込まれている。
【００４０】
それで、リモートサーバ１０４は、１つのデバイス識別子を、クライアントコンピューティングデバイス１０２及び関連するユーザ１１０に割り当て、その割り当てられたデバイス識別子をビーコン１０８に送信する。 いくつかの実施形態において、そのデバイス識別子は、ユーザ１１０及びユーザデバイス１０２がチェックインしたときにリモートサーバ１０４のプロセッシングコンポーネント２０６によってランダムに生成され、ユーザ１１０及びそれに関連するクライアントコンピューティングデバイス１０２に対応するアカウントデータベース１２２の例えばテーブル内のアカウント情報１２４に格納される、サービスUUIDとすることができる。いくつかの実施形態において、その生成されたUUIDは、３２ビット又は１２８ビットとすることができる。その上、いくつかの実施形態において、そのUUIDは、ビーコン１０８のプロセッシングコンポーネント３０６によって、ランダムに生成されるようにすることができる。いくつかの実施形態において、そのサービスUUIDは、ビーコン１０８と同じロケーションにあり、クライアントコンピューティングデバイス１０２と通信しかつ暗号化されたトークン値をリモートサーバ１０４に供給する、他のビーコンに供給されるようにすることができる。例えば、図４に示されるように、クライアントコンピューティングデバイス１０２は最初は、ドア４０２の近傍のビーコン１０８と通信をするようにするこができる。そのようなビーコン１０８は、リモートサーバ１０４がクライアントコンピューティングデバイス１０２及びユーザ１１０をチェックインしたときに、クライアントコンピューティングデバイス１０２のためのサービスUUIDを供給されるようにすることができる。それで、ロケーション４００内の他のビーコン１０８もまた、そのサービスUUIDを供給されるようにすることができる。いくつかの実施形態において、メモリ３０８は、クライアントコンピューティングデバイス１０２及びそれらに割り当てられたサービスUUIDを格納することができる、１つ以上のテーブルその他のデータ構造を含むことができる。
【００４１】
ビーコン１０８が、クライアントコンピューティングデバイス１０２のためのサービスUUIDを受信したときに、それでビーコン１０８は、その割り当てられたサービスUUIDを、そのサービスUUIDをブロードキャストするための命令と共に、クライアントコンピューティングデバイス１０２に送信することができる。いったん、そのサービスUUID及びそのサービスUUIDをブロードキャストするための命令がクライアントコンピューティングデバイス１０２に配信されると、ビーコン１０８は、クライアントコンピューティングデバイス１０２とのアクティブな通信を停止し、クライアントコンピューティングデバイス１０２と通信するのに使用されていたチャネルとリソースを開放する。
【００４２】
それで、クライアントコンピューティングデバイス１０２は、ビーコン１０８及び他のビーコン１０８がブロードキャストされるサービスUUIDを受動的にスキャンする間、そのサービスUUIDを告知することができる。いくつかの実施形態において、リモートサーバ１０４によるチェックイン手順は、有効期限を有することができる。ビーコン１０８によってクライアントコンピューティングデバイス１０２に供給されるそのサービスUUIDをブロードキャストするための命令は、その有効期限に等しい時間の間だけそのサービスUUIDをブロードキャストする命令を含むようにできる。いくつかの実施形態において、その有効期限は、約１時間から約３時間の間とすることができる。特に、その有効期限は約２時間である。
【００４３】
リモートサーバ１０４のプロセッシングコンポーネント２０６が、コンテンツがクライアントコンピューティングデバイス１０２に供給されるべきと決定したときに、そのコンテンツは、そのコンテンツが供給されるべきビーコン１０８に、その特定のサービスUUIDと共に、送信されるようにすることができる。そして、ビーコン１０８は、その特定のサービスUUIDを探索してその特定のサービスUUIDをブロードキャストしているクライアントコンピューティングデバイス１０２に接続し、通信を再開し（又は、異なるビーコンがチェックインを容易にするために使用されたときは開始し）、かつコンテンツをクライアントコンピューティングデバイス１０２に供給するようにすることができる。いったんそのコンテンツが供給されたときには、それでビーコン１０８は、クライアントコンピューティングデバイス１０２とのアクティブな通信を終了し、他のデバイスと通信するのに使用されるように、使用されていたチャネルとリソースを開放する。
【００４４】
いくつかの実施形態において、デバイスに供給することのできるコンテンツは、オファー、特価、ロケーション４００についての情報、及びその他のコンテンツとすることができる。上述したように、ロケーション４００内のビーコン１０８はそれぞれ、クライアントコンピューティングデバイス１０２に割り当てられ、そのクライアントコンピューティングデバイス１０２によってブロードキャストされているUUIDをスキャンすることができる。その結果、いくつかの実施形態において、ビーコン４０４が、クライアントコンピューティングデバイス１０２に関連するサービスUUIDに対してスキャンを行い、クライアントコンピューティングデバイス１０２を見つけた場合、ビーコン４０４はこの情報をリモートサーバ１０４に供給することができる。それで、リモートサーバ１０４は、クライアントコンピューティングデバイス１０２及びユーザ１１０がビーコン４０４の付近に位置することを知ることができる。その結果、リモートサーバ１０４は、クライアントコンピューティングデバイス１０２が見つかったロケーション４００のエリアに関連するコンテンツを供給することができる。例えば、ビーコン４０４が割り当てられているサービスUUIDをブロードキャストしているクライアントコンピューティングデバイス１０２を通知したときに、リモートサーバ１０４は、ビーコン４０４の近傍に位置する商品のためのオファーや広告を供給することができる。それで、ビーコン４０６がクライアントコンピューティングデバイス１０２に関連するサービスUUIDを通知した場合には、リモートサーバ１０４は、ビーコン４０６の近傍の商品に関連するオファーや広告を供給することができる。他の例として、ロケーションは、美術館や歴史的建造物等であり、リモートサーバ１０４は、ビーコン４０４がクライアントコンピューティングデバイス１０２に関連するサービスUUIDを通知したときには、ビーコン４０４のロケーションにおける展示や製作品に関連する情報を供給し、ビーコン４０６がクライアントコンピューティングデバイス１０２に関連するサービスUUIDを通知したときには、ビーコン４０６の近傍に位置する異なる展示や製作品に関連する情報を供給することができる。
【００４５】
いくつかの実施形態において、クライアントコンピューティングデバイス１０２に供給されるそのコンテンツは、ユーザ１１０がロケーション４００から購入しているアイテムのために支払うことに関連するコンテンツを含む、取引に関連するコンテンツとすることができる。例えばもし、ビーコン４０８がクライアントコンピューティングデバイス１０２に関連するサービスUUIDを通知したら、リモートサーバ１０４は、購入又は取引に関連するコンテンツを供給することができる。いくつかの実施形態において、スキャンの間、クライアントコンピューティングデバイス１０２に関連するサービスUUIDを通知するロケーション４００内のビーコン１０８がない場合には、リモートサーバ１０４が、ユーザ１１０及びクライアントコンピューティングデバイス１０２はもはやロケーション４００内にはおらず、ユーザ１１０とクライアントコンピューティングデバイス１０２をロケーション４００からチェックアウトできると推測できるような情報が、リモートサーバ１０４に供給されるようにすることができる。
【００４６】
図６は、いくつかの実施形態において、１つのビーコンを使って或るロケーションにチェックインするための手順６００を示すフローチャートである。説明のために、図６は、図１〜図５の任意の図に関連して説明することができる。図６に示される処理６００は、その方法の１つ以上のステップがクライアントコンピューティングデバイス１０２のプロセッシングコンポーネント２０６によって実行されることができるような形式で、１つ以上のプロセッサによる実行のためのコンピュータ読取り可能命令に具体化されるようにすることができる。図６に示されるように、処理６００は、クライアントコンピューティングデバイス１０２がブロードキャストされた識別子を受信するときに、開始することができる（６０２）。そのブロードキャストされた識別子は、ビーコン４０４、４０６、又は４０８を含むロケーション４００内の１つ以上のビーコン１０８から受信されるUUIDとすることができる。いくつかの実施形態において、ビーコン１０８、４０４、４０６，及び４０８は、その識別子がBLE通信プロトコルに従ってブロードキャストされるようにすることができるような、BLEビーコンとすることができる。クライアントコンピューティングデバイス１０２は、BLE通信プロトコルを用いてビーコン１０８と通信し、そのブロードキャストされた識別子を受信できるようにすることができる無線トランシーバ２２０を含むことができる。
【００４７】
それでクライアントコンピューティングデバイス１０２は、ビーコン１０８との通信を開始することができる（６０４）。いくつかの実施形態において、クライアントコンピューティングデバイス１０２が、リモートサーバ１０４を用いて１つのアカウントに対してサインアップをし、リモートサーバ１０４を用いてチェックインのための登録を行い、又はチェックインアプリケーション１１４をインストールした場合に、クライアントコンピューティングデバイス１０２は、リモートサーバ１０４からチェックインに用いるための１つ以上のトークン及びキーの組を受信することができる。その受信されたトークン及びキーは、クライアントコンピューティングデバイス１０２のメモリコンポーネント２０８に格納されるようにすることができ、クライアントコンピューティングデバイスのプロセッシングコンポーネント２０６は、その格納されたトークンを用いて、受信された識別子を確認検査することができる。
【００４８】
それで、クライアントコンピューティングデバイス１０２は、ビーコン１０８からメタデータ及び他の情報を要求することができる（６０６）。それに応答して、クライアントコンピューティングデバイス１０２は、ビーコン１０８から、ロケーション４００にチェックインするためのメタデータ、ビーコントークン、及びデジタル署名を受信することができる（６０８）。それで、クライアントコンピューティングデバイス１０２のプロセッシングコンポーネント２０６は、デジタル署名に含まれる受信された情報を、クライアントコンピューティングデバイス１０２のメモリコンポーネント２０８に格納されリモートサーバ１０４から受信されたキーを用いて確認検査することができる（６１０）。それで、クライアントコンピューティングデバイス１０２は、チェックインプロンプトに応答して、チェックインの承諾を受信することができる（６１２）。いくつかの実施形態において、メタデータ、ビーコントークン、及びデジタル署名を確認検査したときに、チェックインアプリケーション１１４は、ユーザ１１０に、例えばディスプレイコンポーネント２１０上に対話的なプロンプトを表示することにより、ロケーション４００へのチェックインを受諾するための指示を求めるプロンプトを出す。ユーザ１１０は、入力コンポーネント２１２、ナビゲーション制御、及びディスプレイコンポーネント２１０、又はそれらの組合せを用いて、そのプロンプトと対話することにより、そのチェックインを受諾できるようにすることができる。その受信されたデジタル署名が確認検査されたときに、それでクライアントコンピューティングデバイス１０２のプロセッシングコンポーネント２０６は、トークン値を暗号化し、これらの暗号化された値をビーコン１０８に送信することができる（６１４）。いくつかの実施形態において、その暗号化された値は、クライアントコンピューティングデバイス１０２の無線トランシーバ２２０によって、BLE通信プロトコルを用いて、ビーコン１０８に送信されるようにすることができる。
【００４９】
それでクライアントコンピューティングデバイス１０２は、デバイス識別子及びその識別子をブロードキャストするための命令を受信することができる（６１６）。いくつかの実施形態において、その受信された識別子は、ビーコン１０８から受信される、一意なサービスUUIDとすることができる。それでその受信された識別子は、メモリコンポーネント２０８に格納されるようにすることができ、そして、プロセッシングコンポーネント２０６は、無線トランシーバ２２０がそのデバイス識別子をブロードキャストするように、その命令を実行することを構成することができる（６１８）。いくつかの実施形態において、その命令は、そのチェックインに関連する有効期限と同じ時間長だけデバイス識別子がブロードキャストされるように、指示することができる。クライアントコンピューティングデバイス１０２は、そのデバイス識別子をブロードキャストしている間、ビーコン１０８と通信するための要求を受信することができる。クライアントコンピューティングデバイス１０２がその要求を受信した場合に、それでクライアントコンピューティングデバイス１０２は、要求を行っているビーコン１０８との通信を再確立又は開始し、そしてビーコン１０８からコンテンツを受信することができる（６２０）。いくつかの実施形態において、それでそのコンテンツは、ユーザ１１０によって閲覧をし又はアクションを実行するために、クライアントコンピューティングデバイス１０２のディスプレイコンポーネント２１０によって表示されるようにすることができる。いくつかの実施形態において、要求を行っているビーコン１０８は、クライアントコンピューティングデバイス１０２が先行して通信をしていたビーコン１０８と同じものであるようにすることができる。他の実施形態において、要求を行っているビーコン１０８は、異なるビーコン１０８であるようにすることができ、その異なるビーコン１０８は、ビーコントークンが同じであろうため、ステップ６０２〜６１４を実行する必要なく、クライアントコンピューティングデバイス１０２との通信を開始することができるであろう。その結果、クライアントコンピューティングデバイス１０２を所有するユーザ１１０は、ロケーション４００に入り、ビーコン４０４との間でステップ６０２〜６１６を実行し、それでデバイス識別子をブロードキャストしている間にビーコン１０８から要求を受信することができる。
【００５０】
図７は、いくつかの実施形態において、１つのビーコンを使って或るロケーションにチェックインするための手順７００を示すフローチャートである。説明のために、図７は、図１〜図５の任意の図に関連して説明するだろう。図７に示される処理７００は、その方法の１つ以上のステップが、ビーコン１０８のプロセッシングコンポーネント３０６によって実行されることができるような形式で、１つ以上のプロセッサによる実行のためのコンピュータ読取り可能命令に具体化されるようにすることができる。ビーコン１０８は、一般的に、ビーコン４０４、４０６、及び４０８を含み、図４に示される任意のビーコン１０８をさすことができる。図７に示されるように、処理７００は、ビーコン１０８が識別子をブロードキャストするときに、開始することができる（７０２）。いくつかの実施形態において、ビーコン１０８は、その識別子がBLE通信プロトコルに従ってブロードキャストされるようにすることができるような、BLEビーコンとすることができる。そのブロードキャスト識別子は、ロケーション４００内のビーコン１０８のセットアップの一部として、リモートサーバ１０４から受信されているようにすることができ、UUIDとすることができる。
【００５１】
それでビーコン１０８は、ブロードキャスト識別子を受信したデバイスから受信される要求に応答して、メタデータ、ビーコントークン、及びデジタル署名を送信することができる。いくつかの実施形態において、ビーコントークン、デジタル署名、及びメタデータは、リモートサーバ１０４から受信され、メモリコンポーネント３０８及び／又はファームウェア３１０に格納されるようにすることができる。チェックインを完了させるために、それでビーコン１０８は、クライアントコンピューティングデバイス１０２から、暗号化されたトークン値を受信することができ、それらはリモートサーバ１０４に送信される（７０６）。ビーコン１０８は、デバイス識別子及びそのデバイス識別子をブロードキャストするための命令を、クライアントコンピューティングデバイス１０２に送信することができる（７０８）。いくつかの実施形態において、そのデバイス識別子はUUIDとすることができ、そして、その命令は、そのチェックインに関連する有効期限と同じ時間長だけ、クライアントコンピューティングデバイス１０２がデバイス識別子をブロードキャストするように、指示することができる。その上、そのデバイス識別子は、リモートサーバ１０４によってランダムに生成され、かつクライアントコンピューティングデバイス１０２に送信するためにビーコン１０８に送信されるようにすることができ、或いは、そのデバイス識別子は、ビーコン１０８によってランダムに生成されるようにしてもよい。いくつかの実施形態において、ビーコン１０８がそのデバイス識別子をランダムに生成した場合に、その生成されたデバイス識別子は、ビーコン１０８に関連するロケーションにおいて、リモートサーバ１０４及び他のビーコン１０８に送信されるようにすることができる。それでビーコン１０８は、クライアントコンピューティングデバイス１０２との通信を停止し（７１０）、他のデバイスと通信するのに使用するために、通信チャネルとリソースを開放するようにすることができる。
【００５２】
ビーコン１０８がクライアントコンピューティングデバイス１０２との通信を停止しても、ビーコン１０８は、クライアントコンピューティングデバイス１０２に関連するデバイス識別子をスキャンすることを継続することができる（７１２）。ビーコン１０８は、或いは、そのデバイス識別子がスキャンの間に見つかるかどうかを調べることにより、そのデバイス識別子が提供されているかどうかを、定期的に決定することができる（７１４）。そのデバイス識別子が提供されていないと決定された場合には、ビーコン１０８は、リモートサーバ１０４に、デバイス識別子は提供されなかった旨を通知することができる（７１６）。それでリモートサーバ１０４は、ロケーション内の他のビーコン１０８がクライアントコンピューティングデバイス１０２に関連するデバイス識別子を通知したかどうか、或いは、ロケーション４００内のどのビーコン１０８もデバイス識別子を通知しなかった場合に、クライアントコンピューティングデバイス１０２及びユーザ１１０がもはやロケーション４００内にいないかどうか、決定できるようにしてよい。
【００５３】
ビーコン１０８は、コンテンツがリモートサーバ１０４から受信されるまで、クライアントコンピューティングデバイス１０２に関連するデバイス識別子をスキャンすることを継続することができる。コンテンツがリモートサーバ１０４から受信されると、ビーコン１０８は、デバイス識別子を使ってクライアントコンピューティングデバイス１０２と通信を行い（７２０）、そして、受信されたコンテンツをクライアントコンピューティングデバイス１０２に供給するようにすることができる（７２２）。それでビーコン１０８は、クライアントコンピューティングデバイス１０２と通信することを停止して、他のデバイスとの通信に使用するための通信チャネル及びリソースを開放するようにし、かつクライアントコンピューティングデバイス１０２に関連するデバイス識別子のスキャンは継続するようにすることができる（７１２）。いくつかの実施形態において、チェックアウトの期限が切れ、或いは、リモートサーバ１０４がクライアントコンピューティングデバイス１０２及びユーザ１１０はもはやロケーション４００にはいないと決定した場合に、ビーコン１０８はそのデバイス識別子をスキャンすることを停止するための通知を受信することができる。
【００５４】
図８は、いくつかの実施形態において、１つのビーコンを使って或るロケーションにチェックインするための手順８００を示すフローチャートである。説明のために、図８は、図１〜図５の任意の図に関連して説明するだろう。図８に示される処理８００は、その方法の１つ以上のステップが、リモートサーバ１０４のプロセッシングコンポーネント２０６によって実行されることができるような形式で、１つ以上のプロセッサによる実行のためのコンピュータ読取り可能命令に具体化されるようにすることができる。図８に示されるように、処理８００は、クライアントコンピューティングデバイス１０２及びビーコン１０８に、トークン及びキーを供給することにより、開始することができる（８０２）。いくつかの実施形態において、それらのトークン及びキーは、関連するキーが対称的なキーの組を含むことができ、トークンは例えばそれぞれ、例えば、ユーザ識別子、トークン値、キーシリアル番号、及びAESその他の暗号キーを備えることができる、ワンタイムユース支払いトークン及び関連するキーとすることができる。いくつかの実施形態において、ビーコン１０８が、リモートサーバ１０４を介してユーザをチェックインするために、リモートサーバ１０４と共に動作するようにセットされたときに、リモートサーバ１０４はビーコン１０８にトークン及びキーを供給するようにすることができる。リモートサーバ１０４は更に、チェックイン及び取引処理を辿るために使用されるようにすることができる、デジタル署名及び小売商ワンタイムユーストークンを、ビーコン１０８に供給することができる。いくつかの実施形態において、クライアントコンピューティングデバイス１０２を使用するユーザ１１０がリモートサーバ１０４によって提供されるチェックインサービスにサインアップするとき、及び／又はチェックインアプリケーション１１４がクライアントコンピューティングデバイス１０２にインストールされるときに、トークン及びキーがクライアントコンピューティングデバイス１０２に供給されるようにすることができる。
【００５５】
それで、リモートサーバ１０４は、ビーコン１０８から受信された暗号化された値から解読される１つ以上の値を用いて、ユーザ１１０及びクライアントコンピューティングデバイス１０２をロケーション４００にチェックインすることができる。図５〜図７に関して上述したように、クライアントコンピューティングデバイス１０２のユーザ１１０がチェックインを受けた場合に、クライアントコンピューティングデバイス１０２は、ビーコン１０８によって供給されるビーコントークンを確認検査することができ、それでトークン値を暗号化してこれらの暗号化された値をビーコン１０８に送信することができ、それでそのビーコン１０８はその暗号化された値をリモートサーバ１０４に送信することができ、リモートサーバ１０４のプロセッシングコンポーネント２０６が、その暗号化された値を解読して、ユーザ及びクライアントコンピューティングデバイス１０２をロケーション４００にチェックするために使用することができる。それで、リモートサーバ１０４は、ユーザ１１０及びクライアントコンピューティングデバイス１０２を１つのデバイス識別子に割り当て（８０６）、そして、そのデバイス識別子をロケーション４００にあるビーコン１０８に送信することができる（８０８）。いくつかの実施形態において、そのデバイス識別子は、リモートサーバ１０４のプロセッシングコンポーネント２０６によって生成され、ユーザ１１０及び関連するクライアントコンピューティングデバイス１０２に対応するアカウントデータベース１２２の例えばテーブル内のアカウント情報１２４に格納される、サービスUUIDとすることができる。
【００５６】
ネットワーク１０６上でビーコン１０８と通信するリモートサーバ１０４は、ロケーション４００においてデバイス識別子がもはや観測されないという通知を受信することができる（８１０）。これが発生する場合、リモートサーバ１０４は、ユーザ１１０及び関連するクライアントコンピューティングデバイス１０２をロケーション４００からチェックアウトし（８１２）、かつロケーション４００にあるビーコン１０８に、ユーザ１１０および関連するクライアントコンピューティングデバイス１０２がロケーション４００にもはやいない旨を通知することができる。図５及び図７に関して上述したように、ロケーション４００にあるビーコン１０８は、クライアントコンピューティングデバイス１０２に割り当てられたデバイス識別子をスキャンすることを継続することができ、有効期限が経過するまで、又はリモートサーバ１０４がビーコン１０８にその割り当てられたデバイス識別子をそれ以上スキャンしないようにするための情報を供給するまで、そうするようにすることができる。
【００５７】
定期的に、リモートサーバ１０４のプロセッシングコンポーネント２０６は、ユーザ１１０及びクライアントコンピューティングデバイス１０２に供給されるコンテンツが存在することを決定でき（８１６）、そのコンテンツをロケーション４００にある１つ以上のビーコン１０８に供給するであろう（８１８）。いくつかの実施形態において、リモートサーバ１０４は、スキャン時にデバイス識別子を最も最近に通知したビーコン１０８の表を作成して格納し、コンテンツをそのビーコン１０８に対してのみ送信するようにすることができる。いくつかの実施形態において、各ビーコン１０８がデバイス識別子を見つけてクライアントコンピューティングデバイス１０２に接続しコンテンツを供給することを試行できるように、そのコンテンツがロケーション４００にある全てのビーコン１０８に供給されるようにすることができる。リモートサーバ１０４は、デバイス識別子がロケーションにおいてもはや受信されないという通知まで（８１０）又はチェックインに関連する有効期限が経過するまで（８２０）、ステップ８１０〜８１８を実行することを継続することができる。
【００５８】
本開示に従うプログラムコード及び／又はデータのようなソフトウェアは、一時的でないマシン読取り可能媒体を含む１つ以上のマシン読取り可能媒体に格納されるようにすることができる。ここに明らかにされたソフトウェアは、ネットワーク化等された１つ以上の汎用目的又は特定目的のコンピュータ及び／又はコンピュータシステムを用いて、実装されるようにすることも考えられる。適切な場合には、ここに説明される様々なステップの順番は、ここに説明された特徴を与えるために、変更されてよく、合成されたステップに合併されてよく、及び／又はサブステップに分けられてよい。
【００５９】
結果的に、ここに説明する実施形態は、チェックインを容易にするのに必要なチャネル及びリソースが他のユーザデバイスのために解放されるように、BLEビーコンが１つのユーザデバイスを用いたチェックインとそのユーザデバイスからの切断を容易にすることを可能にする。それで、ここに説明する実施形態は、BLEビーコンが、１つのユーザデバイスに、コンテンツを配信するためにそのユーザデバイスに割り当てられる一意な識別子を用いて、迅速に接続することを可能にする。上述した例は、典型例にすぎず、限定を意図したものではない。当業者であれば、開示した実施形態と調和し、本開示の範囲内として意図される他のシステムを容易に発明するようにすることができる。このようにして、本出願は、以下の請求項によってのみ制限される。
【図４】
2017501620.tif 000003
【図１】
2017501620.tif 000004
【図２】
2017501620.tif 000005
【図３】
2017501620.tif 000006
【図５】
2017501620.tif 000007
【図６】
2017501620.tif 000008
【図７】
2017501620.tif 000009
【図８】
2017501620.tif 000010
【手続補正書】
【提出日】平成28年2月8日(2016.2.8)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
１つ以上の無線トランシーバであって、
ユーザデバイスがチェックインを完了したときに、前記１つ以上の無線トランシーバと通信してデバイス識別子を前記ユーザデバイスに送信し、
リモートサーバから前記ユーザデバイスのためのコンテンツが受信されたときに、前記デバイス識別子に基づいて前記ユーザデバイスとの通信を確立し、
前記ユーザデバイスにコンテンツを送信するように構成され、
前記１つ以上の無線トランシーバは、更に、Bluetooth（登録商標）低エネルギー（BLE）通信プロトコルを用いて、前記ユーザデバイスと通信するように構成され、
前記１つ以上の無線トランシーバに結合され、ネットワーク上で前記リモートサーバと通信をするネットワークインタフェースコンポーネントであって、前記ネットワークインタフェースコンポーネントは、前記リモートサーバから前記デバイス識別子及び前記コンテンツを受信するように構成され、
いつ前記デバイス識別子が存在するか判定をし、いつ前記コンテンツがリモートサーバから受信されたか判定をするように構成される１つ以上のプロセッサと、
メモリと、
からなるシステム。
【請求項２】
前記１つ以上の無線トランシーバは更に、
ブロードキャスト識別子をブロードキャストし、
前記１つ以上の無線トランシーバによって前記ユーザデバイスと通信をするための要求が受信されたときに、メタデータ、ビーコントークン、及びデジタル署名を送信し、
前記メタデータ、前記ビーコントークン、及び前記デジタル署名は、前記チェックインを完了するために使用される、
請求項１に記載のシステム。
【請求項３】
前記１つ以上のプロセッサは更に、前記デバイス識別子が存在しないと判断されたときに通知を生成するように構成され、前記ネットワークインタフェースコンポーネントは前記通知を前記リモートサーバに送信するように構成される、
請求項１に記載のシステム。
【請求項４】
前記デバイス識別子はサービスユニバーサル固有識別子（UUID）からなる、請求項１に記載のシステム。
【請求項５】
前記１つ以上の無線トランシーバは更に、前記デバイス識別子を前記ユーザデバイスに送信した後、及び前記デバイスにコンテンツを送信した後に、前記ユーザデバイスと通信することを停止するように構成される、請求項１に記載のシステム。
【請求項６】
前記１つ以上の無線トランシーバは更に、前記デバイス識別子に加えて、前記デバイス識別子をブロードキャストするための命令を送信するように構成される、請求項１に記載のシステム。
【請求項７】
前記無線トランシーバは更に、前記デバイス識別子をスキャンするように構成され、
前記１つ以上のプロセッサは、前記デバイス識別子に対するスキャンから前記デバイス識別子の存在を決定することにより、いつ前記デバイス識別子が存在しているかを判定をするように構成される、請求項１に記載のシステム。
【請求項８】
１つ以上のプロセッサによって実行されたときに、
Bluetooth（登録商標）低エネルギー（BLE）通信プロトコルを用いてビーコンと通信して、ロケーションにチェックインし、
前記ビーコンから、デバイス識別子と、前記デバイス識別子をブロードキャストするための命令とを受信し、
前記デバイス識別子をブロードキャストし、前記デバイス識別子を受信した後に前記ビーコンと通信することを停止し、
前記ビーコンからの要求に応答して前記ビーコンとの通信を再確立し、
前記ビーコンからコンテンツを受信し、前記ビーコンを受信した後に、前記ビーコンとの再確立された通信を停止する、
ことからなる方法を前記１つ以上のプロセッサに実行させる命令を含むコンピュータ読取り可能媒体。
【請求項９】
前記ビーコンと通信をして前記ロケーションにチェックインすることは、
前記ビーコンからデジタル署名を受信し、
前記デジタル署名を確認検査し、
トークン値を暗号化し、
前記暗号化されたトークン値を前記ビーコンに送信する、
ことからなる、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１０】
前記デバイス識別子を受信することは、ユニバーサル固有識別子（UUID）を受信することからなる、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１１】
前記デバイス識別子をブロードキャストすることは、前記チェックインに関連する有効期間において前記デバイス識別子をブロードキャストすることからなる、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１２】
前記有効期間は約２時間である、請求項１１に記載のコンピュータ読取り可能媒体。
【請求項１３】
前記ビーコンからコンテンツを受信することは、広告、オファー、又は支払いのトークンの少なくとも何れか１つを受信することからなる、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１４】
前記ビーコンとの通信を再確立することは、異なるビーコンとの通信を再確立することからなり、前記異なるビーコンはBLE通信の有効な範囲にある、請求項８に記載のコンピュータ読取り可能媒体。
【請求項１５】
１つ以上のプロセッサによって実行されたときに、
ユーザをロケーションにチェックインし、
Bluetooth（登録商標）低エネルギー（BLE）通信プロトコルを用いて有効期間において前記ユーザと関連するデバイスによってブロードキャストされるべきデバイス識別子を前記ユーザに割り当て、
前記デバイス識別子に基づいてコンテンツを前記ユーザに送信し、
前記ロケーションにおいて前記デバイス識別子がもはやブロードキャストされず、又は関連する前記有効期間が経過したときに、前記ロケーションから前記ユーザをチェックアウトする、
ことからなる方法を前記１つ以上のプロセッサに実行させる命令を含むコンピュータ読取り可能媒体。
【請求項１６】
前記ユーザに前記デバイス識別子を割り当てることは、前記ユーザにユニバーサル固有識別子（UUID）を割り当てることからなる、請求項１５に記載のコンピュータ読取り可能媒体。
【請求項１７】
前記ユーザに前記デバイス識別子を割り当てることは更に、前記ロケーションにおける１つ以上のビーコンに前記割り当てられたデバイス識別子を送信することからなる、請求項１５に記載のコンピュータ読取り可能媒体。
【請求項１８】
前記デバイス識別子がブロードキャストされていることを示す指標を前記１つ以上のビーコンから受信することを更に含む、請求項１７に記載のコンピュータ読取り可能媒体。
【請求項１９】
前記デバイス識別子がブロードキャストされていることを示す前記指標を供給する前記１つ以上のビーコンのうちの特定の１つのビーコンに基づいて、前記ロケーション内のユーザロケーションを決定することを更に含む、請求項１８に記載のコンピュータ読取り可能媒体。
【請求項２０】
前記デバイスにコンテンツを送信することは、前記指標を供給する前記特定のビーコンに前記決定されたユーザロケーションに関連するコンテンツを送信することからなる、請求項１９に記載のコンピュータ読取り可能媒体。
【請求項２１】
前記ロケーションから前記ユーザをチェックアウトすることは、前記デバイス識別子が前記ロケーションにおいてもはやブロードキャストされないであろう旨を前記１つ以上のビーコンに通知することからなる、請求項１７に記載のコンピュータ読取り可能媒体。
【手続補正２】
【補正対象書類名】明細書
【補正対象項目名】００２５
【補正方法】変更
【補正の内容】
【００２５】
図２は、いくつかの実施形態において、クライアントコンピューティングデバイス１０２又はリモートサーバ１０４の何れかに対応することができるコンピューティングシステム２００を示す図である。コンピューティングシステム２００は、クライアントコンピューティングデバイス１０２に適した、スマートフォン、タブレットコンピュータ、パーソナルコンピュータ、ラップトップコンピュータ、ネットブックやタブレットコンピュータ、セットトップボックス、ビデオゲームコンソール、ヘッドマウントディスプレイ（HMD）、又はその他のウェアラブルコンピューティングデバイスのような、携帯デバイスとすることができる。更に、コンピューティングシステム２００はまた、リモートサーバ１０４に適した、サーバ又は複数のサーバの中の１つのサーバとすることができる。図２に示されるように、コンピューティングシステム２００は、図１に示されるネットワーク１０６のようなネットワークと通信するために構成されるネットワークインタフェースコンポーネント（NIC）２０２を含む。いくつかの実施形態と調和して、NIC２０２は、ネットワーク１０６と通信するために構成される、広帯域無線コンポーネント、衛星無線コンポーネント、又は無線周波数（RF）、マイクロウェーブ周波数（MWF）、及び／又は赤外線（IR）のコンポーネントを含む様々な他のタイプの無線通信コンポーネントのような、無線通信コンポーネントを含む。他の実施形態において、NIC２０２は、ネットワーク１０６との通信に適合する、同軸ケーブル、光ファイバーケーブル、デジタル加入者線（DSL）モデム、公衆交換電話網（PSTN）モデム、イーサネット（登録商標）デバイス、及び／又は様々なその他のタイプの有線及び／又は無線ネットワーク通信デバイスとして構成することができる。
【手続補正３】
【補正対象書類名】明細書
【補正対象項目名】００２９
【補正方法】変更
【補正の内容】
【００２９】
本開示の様々な実施形態において、本開示を実施するための命令列の実行は、コンピューティングシステム２００によって行われるようにすることができる。本開示の様々な他の実施形態において、通信リンク２２２によってネットワーク１０６（例えば、LAN、WLAN、PTSN、及び／又はテレコム、セルラ、移動電話網を含む様々な他の有線若しくは無線ネットワーク）に接続される複数のコンピューティングシステム２００が、本開示を実施するための命令列を、相互に連携して実行するようにすることができる。コンピューティングシステム２００は、通信リンク２２２とネットワークインタフェースコンポーネント２０２と無線トランシーバ２２０を介して、１つ以上のプログラム（例えばアプリケーションコード）を含む、メッセージ、データと１つ以上のデータパケット、情報及び命令を、送信及び受信することができる。受信されたプログラムコードは、受信され及び／又はメモリコンポーネント２０８に記憶されると、プロセッシングコンポーネント２０６によって実行されるようにすることができる。
【手続補正４】
【補正対象書類名】明細書
【補正対象項目名】００３１
【補正方法】変更
【補正の内容】
【００３１】
ビーコン１０８はまた、ビーコン１０８内の様々なコンポーネントを相互に接続し、それらの様々なコンポーネント間で情報を通信するためのシステムバス３０４を含む。そのようなコンポーネントは、１つ以上のプロセッサ、マイクロコントローラ、グラフィックプロセッシングユニット（GPUs）、又はデジタルシグナルプロセッサ（DSPs）であってよいプロセッシングコンポーネント３０６と、メモリコンポーネント３０８と、ファームウェア３１０と、それぞれが分離可能な又は一体のアンテナを含むことができ、Wi-Fi、3G、4G、HSDPA、LTE、RF、NFC、IEEE 802.11a,b,g,n,ac,ad、Bluetooth（登録商標）、BLE、WiMAX、ZigBee（登録商標）等の１つ以上の無線ネットワークプロトコルに従って情報を送信及び受信することができる１つ以上の無線トランシーバ３１２を含む。ビーコン１０８はまた、電源３１４を含むことができる。電源３１４は、ビーコン１０８のコンポーネントを動作させるのに十分な電流を供給することのできる、任意の電源とすることができる。いくつかの実施形態において、電源３１４は、時計電池又はボタンセルのような電池であってよい。
【国際調査報告】
2017501620.tif 000011