IP Force 特許公報掲載プロジェクト 2022.1.31 β版

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

▶ アマゾン テクノロジーズ インコーポレイテッドの特許一覧

特許7087060地理的領域についての高密度のロケーションベースサービスゾーン管理
<>
  • 特許-地理的領域についての高密度のロケーションベースサービスゾーン管理 図1
  • 特許-地理的領域についての高密度のロケーションベースサービスゾーン管理 図2
  • 特許-地理的領域についての高密度のロケーションベースサービスゾーン管理 図3
  • 特許-地理的領域についての高密度のロケーションベースサービスゾーン管理 図4
  • 特許-地理的領域についての高密度のロケーションベースサービスゾーン管理 図5
  • 特許-地理的領域についての高密度のロケーションベースサービスゾーン管理 図6
  • 特許-地理的領域についての高密度のロケーションベースサービスゾーン管理 図7
< >
(19)【発行国】日本国特許庁(JP)
(12)【公報種別】特許公報(B2)
(11)【特許番号】
(24)【登録日】2022-06-10
(45)【発行日】2022-06-20
(54)【発明の名称】地理的領域についての高密度のロケーションベースサービスゾーン管理
(51)【国際特許分類】
   H04W 4/021 20180101AFI20220613BHJP
【FI】
H04W4/021
【請求項の数】 15
(21)【出願番号】P 2020501294
(86)(22)【出願日】2018-07-23
(65)【公表番号】
(43)【公表日】2020-10-15
(86)【国際出願番号】 US2018043222
(87)【国際公開番号】W WO2019032267
(87)【国際公開日】2019-02-14
【審査請求日】2020-03-06
(31)【優先権主張番号】15/670,430
(32)【優先日】2017-08-07
(33)【優先権主張国・地域又は機関】US
【前置審査】
(73)【特許権者】
【識別番号】506329306
【氏名又は名称】アマゾン テクノロジーズ インコーポレイテッド
(74)【代理人】
【識別番号】110003281
【氏名又は名称】特許業務法人大塚国際特許事務所
(72)【発明者】
【氏名】パーシン, セルゲイ
(72)【発明者】
【氏名】バレンボイム, ロナン
(72)【発明者】
【氏名】バワーマン, マイケル
(72)【発明者】
【氏名】デュクロー, ジョン, ロバート
(72)【発明者】
【氏名】ハプグッド, ライアン
(72)【発明者】
【氏名】リュウ, キウェイ
(72)【発明者】
【氏名】ショールメイヤー, マイケル
(72)【発明者】
【氏名】サトゥラ, ジェイムズ マイケル
【審査官】久松 和之
(56)【参考文献】
【文献】特開2016-136671(JP,A)
【文献】特開2007-336486(JP,A)
【文献】特開2016-177581(JP,A)
【文献】特表2014-523655(JP,A)
【文献】米国特許出願公開第2015/0031388(US,A1)
(58)【調査した分野】(Int.Cl.,DB名)
H04B 7/24 - 7/26
H04W 4/00 - 99/00
(57)【特許請求の範囲】
【請求項1】
システムであって、
第一コンピューティングデバイスと、
前記第一コンピューティングデバイスにおいて実行される少なくとも1つのアプリケーションであって、実行されると、前記少なくとも1つのアプリケーションは前記第一コンピューティングデバイスに少なくとも、
地理的領域内の複数のロケーションベースサービスゾーンと、前記地理的領域を画定する地理的パラメータとを第二コンピューティングデバイスから受信させ、
ロケーションベースサービスゾーン数が、前記第一コンピューティングデバイスに関連するデバイス制限に従った所定の閾値を満たす、または上回ることを判定させ、前記デバイス制限は電力使用量、メモリ使用量、及びプロセッサ使用量の少なくとも1つを含み、
判定結果に応じて、前記第一コンピューティングデバイスの位置に少なくとも部分的に基づく前記複数のロケーションベースサービスゾーンのサブセットを選択させ、かつ、
前記複数のロケーションベースサービスゾーンの前記サブセットの監視を開始させる、
前記少なくとも1つのアプリケーションと、
を備える、システム。
【請求項2】
前記複数のロケーションベースサービスゾーンの前記サブセットは、以前に監視されたロケーションベースサービスゾーン、前記第一コンピューティングデバイスの速度、前記第一コンピューティングデバイスの移動方向、ユーザインタラクション履歴、及び集約ユーザインタラクション履歴のうちの少なくとも1つを含む複数の要因に少なくとも部分的にさらに基づく、請求項1に記載のシステム。
【請求項3】
実行されると、前記少なくとも1つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、前記複数の要因に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンの個々のロケーションベースサービスゾーンにスコアを割り当てさせ、異なる重み付けが前記複数の要因の個々の要因に適用される、請求項2に記載のシステム。
【請求項4】
実行されると、前記少なくとも1つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、前記スコアに従い前記個々のロケーションベースサービスゾーンをランク付けさせ、前記複数のロケーションベースサービスゾーンの前記サブセットが前記所定の閾値内のロケーションベースサービスゾーンの最高ランク数に従って選択される、請求項3に記載のシステム。
【請求項5】
実行されると、前記少なくとも1つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、
前記第一コンピューティングデバイスが前記地理的領域の外側に移動したことを判定させ、
前記第一コンピューティングデバイスの更新された位置を推定させ、かつ、
前記更新された位置に少なくとも部分的に基づき、新たな地理的領域内の新たな複数のロケーションベースサービスゾーンについての要求を前記第二コンピューティングデバイスに送信させる、
請求項1乃至4の何れか1項に記載のシステム。
【請求項6】
実行されると、前記少なくとも1つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、前記第一コンピューティングデバイスが位置を変更したと判定することに応答して前記複数のロケーションベースサービスゾーンの前記サブセットを修正させる、請求項1乃至5の何れか1項に記載のシステム。
【請求項7】
実行されると、前記少なくとも1つのアプリケーションは、さらに、前記第一コンピューティングデバイスに少なくとも、前記複数のロケーションベースサービスゾーン内の前記ロケーションベースサービスゾーン数を決定させる、請求項1乃至6の何れか1項に記載のシステム。
【請求項8】
実行されると、前記少なくとも1つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、
特定のロケーションベースサービスゾーンとのインタラクションを検出させ、かつ、
前記特定のロケーションベースサービスゾーンとの前記インタラクションを検出することに応答して、ユーザインタラクション履歴を修正させる、請求項1乃至7の何れか1項に記載のシステム。
【請求項9】
方法であって、
第一コンピューティングデバイスを介して、アクティブゾーンデータを第二コンピューティングデバイスから受信することであって、前記アクティブゾーンデータが地理的パラメータによって画定されるアクティブゾーン内の複数のロケーションベースサービスゾーンを含む、前記第二コンピューティングデバイスから前記受信することと、
前記第一コンピューティングデバイスを介して、前記複数のロケーションベースサービスゾーンの数が、前記第一コンピューティングデバイスに関連するデバイス制限に従った所定の閾値を上回ることに応答して、ロケーションベースサービスゾーンのサブセットを前記複数のロケーションベースサービスゾーンから選択することであって、前記デバイス制限は電力使用量、メモリ使用量、及びプロセッサ使用量の少なくとも1つを含む、ことと、
前記第一コンピューティングデバイスを介して、前記ロケーションベースサービスゾーンの前記サブセットを監視することと、
を含む、方法。
【請求項10】
前記第一コンピューティングデバイスを介して、以前に監視されたロケーションベースサービスゾーンからの退出に少なくとも部分的に基づき前記第一コンピューティングデバイスのデバイス位置を推定することをさらに含む、請求項9に記載の方法。
【請求項11】
前記ロケーションベースサービスゾーンの前記サブセットは、前記デバイス位置に少なくとも部分的に基づき選択される、請求項10に記載の方法。
【請求項12】
前記第一コンピューティングデバイスを介して、特定のロケーションベースサービスゾーンからの退出を前記ロケーションベースサービスゾーンの前記サブセットから検出することをさらに含む、請求項9乃至11の何れか1項に記載の方法。
【請求項13】
前記第一コンピューティングデバイスを介して、前記退出に応答して前記第一コンピューティングデバイスの更新されたデバイス位置を推定することをさらに含む、請求項12に記載の方法。
【請求項14】
前記第一コンピューティングデバイスを介して、前記更新されたデバイス位置に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンから、更新されたロケーションベースサービスゾーンのサブセットを選択することをさらに含む、請求項13に記載の方法。
【請求項15】
前記第一コンピューティングデバイスを介して、前記第一コンピューティングデバイスが前記更新されたデバイス位置に少なくとも部分的に基づき前記アクティブゾーンを退出したと判定することと、
前記第一コンピューティングデバイスを介して、前記第二コンピューティングデバイスから更新されたアクティブゾーンについての要求を送信することであって、前記要求が新たな前記デバイス位置を含む、前記要求を前記送信することと、
前記第一コンピューティングデバイスを介して、更新された地理的パラメータによって画定される前記更新されたアクティブゾーン内の更新された複数のロケーションベースサービスゾーンを含む、更新されたアクティブゾーンデータを受信することと、
をさらに含む、請求項13または14に記載の方法。
【発明の詳細な説明】
【技術分野】
【0001】
<関連出願の相互参照>
本出願は、2017年8月7日に出願の「HIGH DENSITY LOCATION-BASED SERVICE ZONE MANAGEMENT FOR A GEOGRAPHIC REGION」と題する米国特許出願第15/670,430号の利益及びそれへの優先権を主張し、その内容は、その全体が参照により本明細書に援用される。
【背景技術】
【0002】
地理的フェンス、または「ジオフェンス(geofences)」、及びビーコンは、ロケーションベースサービスに関連するマーケティング目的のために使用されることが可能である。例えば、モバイルデバイスがジオフェンスの境界によって画定される地理的領域に入るときに、ジオフェンスを使用して、通知をモバイルデバイスへ提供することが可能である。同様に、モバイルデバイスが無線信号をブロードキャストするビーコンに物理的に近いときに、モバイルデバイスは、ブロードキャストされた信号を受信することが可能であり、通知は、トリガされることができる。ジオフェンス及び/またはビーコンと関連する通知は、ロケーションベースサービスに関することができる。
【0003】
本開示の多くの態様は、以下の図面を参照して、より良好に理解することができる。図面の構成要素は、必ずしも縮尺通りになっているとは限らず、代わりに本開示の原理を明確に例示することに重点を置いている。さらに図面中で、同様の参照番号は、いくつかの図面全体にわたって対応する部分を指定する。
【図面の簡単な説明】
【0004】
図1】本開示のさまざまな実施形態に従い、クライアントデバイスがロケーションベースサービスゾーンのサブセットを選択し、提供されたアクティブゾーン内で監視する、例示的なシナリオを示す図である。
図2】本開示のさまざまな実施形態に従う、ネットワーク環境の概略ブロック図である。
図3】本開示のさまざまな実施形態に従い、図2のネットワーク環境においてクライアントデバイス内で実行されるアクティブゾーンフィルタアプリケーションの部分として実装される機能性の一例を示すフローチャートである。
図4】本開示のさまざまな実施形態に従い、図2のネットワーク環境においてクライアントデバイス内で実行されるアクティブゾーンフィルタアプリケーションの部分として実装される機能性の一例を示すフローチャートである。
図5】本開示のさまざまな実施形態に従い、図2のネットワーク環境においてクライアントデバイス内で実行されるアクティブゾーンフィルタアプリケーションの部分として実装される機能性の一例を示すフローチャートである。
図6】本開示のさまざまな実施形態に従い、図2のネットワーク環境において使用されるコンピューティング環境の一例の説明を提供する概略ブロック図である。
図7】本開示の種々の実施形態による、図2のネットワーク環境で使用されるクライアントデバイスの一例の説明を提供する概略ブロック図である。
【発明を実施するための形態】
【0005】
本開示は、クライアントデバイスによって監視されるロケーションベースサービスゾーン(例えば、ジオフェンス、ビーコンなど)を管理する、さまざまなシステム及び方法に関する。本開示のいくつかの実施形態は、ユーザデバイスを囲む動的なサイズに形成された領域内の包括的なロケーションベースサービスゾーンのセットを受信すること、及びロケーションベースサービスゾーンを動的にフィルタリングして、監視する動的なサイズに形成された領域内でロケーションベースサービスゾーンのサブセットを決定することに関する。フィルタリングは、例えば、デバイス制限、現在の位置、以前に監視されたロケーションベースサービスゾーン、デバイス速度、デバイス方向、ユーザインタラクション履歴、集約ユーザインタラクション履歴などのような、さまざまな要因に基づくことができる。
【0006】
ロケーションベースサービスゾーンの実施例は、地理的フェンス(「ジオフェンス」)及びビーコンを含む。ジオフェンスは、地理的座標及び半径の組み合わせのような、仮想地理的境界として画定されることが可能である。例えば、ジオフェンスは、ユーザが特定のプロバイダと関連するロケーションベースサービスを経験することができる領域を画定することができる。ジオフェンス領域は、ユーザが経験したい可能性がある特定のロケーションベースサービスに対応する領域を囲む仮想境界線によって形成される、または画定されることが可能である。ジオフェンスの内側領域は、いずれかの適切なサイズ、及びいずれかの適切な形状であることができる。仮想境界線は、二次元または三次元境界線に対応することができる。例えば、プロバイダが配送サービスに関連する場合に、二次元境界線は配送位置を中心とする領域を含むことができ、三次元境界線は配送位置の高さまたは高度を含むことができる。別の実施例として、三次元境界線は、建物の特定の階またはスイートにジオフェンスを置くために、高さまたは高度を利用することができる。
【0007】
ビーコンは、無線信号をブロードキャストするように構成されるデバイスを含むことができる。配送サービスの実施例を使用して、プロバイダデバイスは、プロバイダデバイスの位置に関連する無線信号をブロードキャストするビーコンを含むことができる。ユーザデバイスがビーコンの近接内にあるときに、ユーザデバイスは、無線信号を受信することにより、ビーコンと関連するイベント通知(例えば、メッセージを表示する、近接位置のプロバイダデバイスを通知するなど)をトリガすることが可能である。
【0008】
サービスプロバイダ(例えば、モバイルストア、モバイルデリバリサービス、ブリックアンドモルタル店舗など)は、ロケーションベースサービスゾーンを作成して、これらのサービスに関連するユーザエクスペリエンスを開始することができる。1つの非限定的な実施例において、プロバイダは、モバイルデリバリ位置においてマーチャントが販売する物品と関連付けられることができる。各配送位置は、それぞれのロケーションベースサービスゾーンと関連付けられることができる。例えば、マーチャントが位置Aにおいて物品を販売しているときに、マーチャント位置を囲む境界を画定するジオフェンスを作成することができる。ジオフェンスを監視しているユーザデバイスがジオフェンスによって画定される境界を横切るときに、クライアントデバイスは、ジオフェンスを認識し、ジオフェンスと関連するアクションを実行することができる(例えば、マーチャント位置を含むメッセージを表示し、通知をプロバイダへ送信して集荷のための物品を準備するなど)。
【0009】
本開示の1つの実施形態は、クライアントデバイスが監視することができるロケーションベースサービスゾーン数を制限するクライアントデバイスの制限をロケーションベースサービスゾーン数が上回るときに、ロケーションベースサービスゾーンのサブセットを選択し、アクティブゾーン内で監視することに関する。アクティブゾーンは、包括的なロケーションベースサービスゾーンのセットを含む動的なサイズの地理的領域であり、サーバコンピューティングデバイスによって作成される。クライアントデバイスは、ロケーションベースサービスゾーンを含むアクティブゾーンをアクティブゾーン管理システムから受信し、このアクティブゾーン中に含まれるロケーションベースサービスゾーンを監視することが可能である。特定のアクティブゾーン内のロケーションベースサービスゾーン数がクライアントデバイスの制限を上回るときに、クライアントデバイスは、アクティブゾーン内でロケーションベースサービスゾーンのサブセットを選択して、監視することができる。その結果、ロケーションベースサービスゾーンのサブセットは、サーバコンピューティングデバイスによって提供されるアクティブゾーン中に含まれたロケーションベースサービスゾーンの一部の選択である。
【0010】
例えば、異なるタイプのクライアントデバイスは、クライアントデバイスがサポートすることが可能である、ロケーションベースサービスゾーンの数に関する制限を有することができる。クライアントデバイスの制限は、クライアントデバイスの電力使用量、メモリ使用量、及び/またはプロセッサ使用量を最適化するために、クライアントデバイスによって課せられることができる。いくつかの実施形態において、クライアントデバイスは、フィルタリングルールのセットを適用し、アクティブゾーン内の異なるロケーションベースサービスゾーンを分析し、例えば、クライアントデバイスの現在の位置、クライアントデバイスが監視する(例えば、ロケーションベースサービスゾーンを出る、または入る)最近抜けたロケーションベースサービスゾーン、デバイス速度、デバイス方向、ユーザインタラクション履歴、集約ユーザインタラクション履歴、及び/または理解できるようないずれかの他の要因などの要因に基づきロケーションベースサービスゾーンのサブセットを選択することができる。
【0011】
図1は、本開示のさまざまな実施形態に従い、クライアントデバイス106によって監視されているアクティブゾーン103内のロケーションベースサービスゾーンのサブセット100を示す例示的なシナリオを示す図である。この実施例において、クライアントデバイス106は、ハンドヘルドモバイルデバイス(例えば、タブレット、スマートフォンなど)に対応する。ロケーションベースサービスゾーン100は、ジオフェンス109(例えば、109a、109b、109c、109d、109e)、ビーコン112(例えば、112a、112b、112c、112d)、及び/または理解できるようないずれかの他のタイプのロケーションベースサービスゾーン100を含むことができる。
【0012】
アクティブゾーン103は、クライアントデバイス106の少なくとも1つの位置に従い、少なくとも1つのコンピューティングデバイス118上で実行されるアクティブゾーン管理システム115によって作成される。所定の半径に従うクライアントデバイス位置を含むアクティブゾーン103を作成する。例えば、いくつかの実施形態において、クライアントデバイス106の位置に中心点、及びいくつかの所定の値の半径(例えば、1キロメートル(km)、5km、25kmなど)を有するアクティブゾーン103を作成することができる。アクティブゾーン103を作成すると、このアクティブゾーン103内のロケーションベースサービスゾーン100を識別することができる。いくつかの実施形態において、半径は、所定の最小値(例えば、1km、3km)を有する。この所定の最小値は、デバイス制限、設計選択、ロケーションベースサービスゾーンを識別するための高精度機能、及び/または理解できるようないずれかの他の要因に基づくことができる。
【0013】
アクティブゾーン管理システム115は、アクティブゾーン103を作成し、アクティブゾーンデータ117(例えば、地理的パラメータ、ロケーションベースサービスゾーンパラメータなど)を、クライアントデバイス106上で実行されるアクティブゾーンフィルタアプリケーション124に送信することができる。クライアントデバイス位置127に関して、アクティブゾーン103を作成することができる。クライアントデバイス106、ロケーションベースサービスゾーン進入及び/または退出履歴、及び/またはデバイス位置127を決定する及び/または推定するいずれかの他の方式によって提供される座標に従い、クライアントデバイス位置127を決定する、及び/または推定することができる。
【0014】
いくつかの実施形態において、クライアントデバイス106は、コンピューティングデバイス118からアクティブゾーン103を要求することができる。他の実施形態において、アクティブゾーン管理システム115は、クライアントデバイス106からの要求なく、アクティブゾーン103をクライアントデバイス106に送信することができる。例えば、アクティブゾーン管理システム115は、アクティブゾーン103をクライアントデバイス106に定期的に生成して、送信することができる。別の実施例において、アクティブゾーン管理システム115は、以前に監視されたアクティブゾーン103からの退出の検出の際に、アクティブゾーン103をクライアントデバイスに送信することができる。クライアントデバイス106から受信するデバイス位置127、クライアントデバイス106がアクティブゾーン103を画定する地理的領域を退出したことを示すクライアントデバイス106から受信するトリガ通知、及び/または理解できるようないずれかの他の要因に従い、以前に監視されたアクティブゾーン103からの退出を決定することができる。
【0015】
アクティブゾーン103の作成の際に、アクティブゾーン管理システム115は、アクティブゾーンデータ117をクライアントデバイス106に送信する。アクティブゾーンデータ117は、クライアントデバイス106のために、またアクティブゾーン管理システム115によって、作成されるアクティブゾーン103と関連するデータを含む。アクティブゾーンデータ117は、ジオフェンスパラメータ230(図2)、ビーコンパラメータ233(図2)、集約インタラクションデータ215(図2)、及び/または理解できるいずれかの他のタイプのデータを含むことができる。
【0016】
いくつかの実施形態において、アクティブゾーンデータ117は、デバイスがサポートした閾値を上回るロケーションベースサービスゾーン100の量についてのパラメータを含む。デバイスがサポートした閾値は、クライアントデバイス106の電力使用量、メモリ使用量、及び/またはプロセッサ使用量を最適化するために、クライアントデバイス106によって課せられることができる、クライアントデバイスの制限に従い定義されることができる。例えば、特定のクライアントデバイス106は、五十(50)個のロケーションベースサービスゾーン100のみを所与の時間に監視することが可能であることができる。このようなものとして、アクティブゾーン管理システム115によって提供されるアクティブゾーン103がクライアントデバイス106によってサポートされる量を上回るロケーションベースサービスゾーン100の量を含む場合に、提供されたアクティブゾーン103内のロケーションベースサービスゾーン100の数は、監視するために減らされる必要がある。
【0017】
ロケーションベースサービスゾーン100の量が所定の閾値を上回るときに、アクティブゾーンフィルタアプリケーション124は、監視されるロケーションベースサービスゾーンのサブセット100を選択することができる。例えば、図1において、アクティブゾーン103は、複数のジオフェンス109及び複数のビーコン112を含む。しかしながら、ジオフェンス109のサブセット及びビーコン112(例えば、109a、109b、109c、112a、112b)のみを監視する。これらのジオフェンス109及びビーコン112を実線によって画定し、監視されていないジオフェンス109及びビーコン112(例えば、109d、109e、112c、112d)を破線によって画定する。
【0018】
アクティブゾーンフィルタアプリケーション124は、要因に従いロケーションベースサービスゾーンのサブセット100を選択することができ、これらの要因は、例えば、クライアントデバイス106の現在の位置、最近クライアントデバイス106が進入した、または退出したロケーションベースサービスゾーン、デバイス速度、デバイス方向、ユーザインタラクション履歴、集約ユーザインタラクション履歴、及び/または理解できるようないずれかの他の要因を含むことができる。図1の実施例を使用して、アクティブゾーンフィルタアプリケーション124は、アクティブゾーン103の同じ一般領域にクラスタ化されるロケーションベースサービスゾーンのグループ100を選択した。この実施例において、ロケーションベースサービスゾーンのサブセット100は、クライアントデバイス106への近接、及び/またはクライアントデバイス106の移動の方向及び/または速度のそれぞれに従い、決定されることができる。
【0019】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、ロケーションベースサービスゾーンのサブセット100が更新される必要があると判定することができる。例えば、アクティブゾーンフィルタアプリケーション124は、1つまたは全てのロケーションベースサービスゾーン100が監視されていないアクティブゾーン103内の他のロケーションベースサービスゾーン100に関してもはや好ましくはないように、クライアントデバイス位置127が変更されたと判定することができる。このようなものとして、アクティブゾーンフィルタアプリケーション124は、ロケーションベースサービスゾーン100を再評価し、アクティブゾーン103内に新たなロケーションベースサービスゾーンのサブセット100を生成することができる。クライアントデバイス106がアクティブゾーン103に含まれるロケーションベースサービスゾーン100と関連するデータを既に含むため、クライアントデバイス106は、アクティブゾーン103の地理的領域内にまだある間、少なくともコンピューティングデバイス118と接続する必要がない。いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106が特定のロケーションベースサービスゾーン100を退出したことにより、クライアントデバイス106のデバイス位置127を変更することを検出することに応答して、ロケーションベースサービスゾーンのサブセット100が更新される必要があると判定することができる。
【0020】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106がアクティブゾーン103を退出したことを検出することができ、更新されたアクティブゾーン103をアクティブゾーン管理システム115から要求することができる。例えば、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106がアクティブゾーン103の地理的境界に接することができる特定のロケーションベースサービスゾーン100を退出したことを検出することに応答して、クライアントデバイス106がアクティブゾーン103を退出したことを検出することができる。
【0021】
以下の説明では、システム及びその構成要素の一般的な説明を提供した後に、その動作の考察を伴う。
【0022】
図2を参照すると、種々の実施形態によるネットワーク環境200が示される。ネットワーク環境200は、ネットワーク121を介して互いにデータ通信する、コンピューティング環境203及びクライアントデバイス106を含む。ネットワーク121は、例えば、インターネット、イントラネット、エクストラネット、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、有線ネットワーク、無線ネットワーク、ケーブルネットワーク、衛星ネットワーク、もしくは他の適切なネットワークなど、または2つ以上のこれらのようなネットワークのいずれかの組み合わせを含む。
【0023】
コンピューティング環境203は、例えば、サーバコンピュータまたは計算能力を提供する任意の他のシステムを含んでよい。代わりに、コンピューティング環境203は、例えば、1つ以上のサーババンクまたはコンピュータバンクまたは他の配置で配置し得る複数のコンピューティングデバイスを使用し得る。係るコンピューティングデバイスは、単独の設備に位置し得る、または多くの異なる地理的な場所間に分散され得る。例えば、コンピューティング環境203は、ホストコンピューティングリソース、グリッドコンピューティングリソース、及び/または任意の他の分散コンピューティング配列を一緒に備え得る複数のコンピューティングデバイスを含み得る。いくつかの場合では、コンピューティング環境203は、処理、ネットワーク、ストレージ、または他のコンピューティング関連リソースの割り当て容量が経時的に変化してもよい弾性的な計算リソースに対応してもよい。
【0024】
様々なアプリケーション及び/または他の機能は、様々な実施形態に従って、コンピューティング環境203で実行され得る。また、種々のデータは、コンピューティング環境203にアクセス可能であるデータストア206に格納される。データストア206は、理解できるような、複数のデータストア206を代表するものであり得る。例えば、データストア206に記憶されるデータは、下記に説明される様々なアプリケーション及び/または機能エンティティの動作と関連付けられる。
【0025】
コンピューティング環境203上で実行されるコンポーネントは、例えば、アクティブゾーン管理システム115、及び本明細書に詳細に説明されない他のアプリケーション、サービス、プロセス、システム、エンジン、または機能を含む。アクティブゾーン管理システム115を実行し、特定のコンピューティングデバイスについてのアクティブゾーン103を作成する。アクティブゾーン103は、特定のクライアントデバイス106及び/またはユーザアカウントに関して選択される、包括的なロケーションベースサービスゾーンのセット100を含む動的なサイズの地理的領域である。いくつかの実施形態において、アクティブゾーン管理システム115は、特定のクライアントデバイス106及びクライアントデバイス制限に特有であるロケーションベースサービスゾーン100を含むアクティブゾーン103を作成し、このアクティブゾーンのサイズに動的に合わせて作ることが可能である。アクティブゾーン管理システム115は、ロケーションベースサービスゾーン100を作成されたアクティブゾーン103内で識別することが可能である。アクティブゾーン管理システム115は、クライアントデバイス位置における変化、ロケーションベースサービスゾーン100と関連する時間制約、ロケーションベースサービスゾーン100の追加、ロケーションベースサービスゾーン100の除去、ロケーションベースサービスゾーンパラメータにおける変化、及び/または理解できるようないずれかの他の要因に少なくとも部分的に基づきアクティブゾーン100を更新し、変更するように構成されることが可能である。
【0026】
データストア206に格納されるデータは、例えば、デバイスデータ209、プロバイダデータ212、集約インタラクションデータ215、及び潜在的に他のデータを含む。デバイスデータ209は、異なるクライアントデバイス106と関連するデータを含む。デバイスデータ209は、ユーザアカウント情報218、位置データ221、アクティブゾーン(複数可)103、及び/またはクライアントデバイス106と関連するいずれかの他のデータを含むことができる。
【0027】
ユーザアカウント情報218は、クライアントデバイス106と関連する1つ以上のユーザアカウントと関係がある情報を含むことができる。例えば、ユーザアカウント情報218は、ユーザ名、名前及び苗字、及び/または他の識別情報を含むことができる。位置データ221は、クライアントデバイス106の地理的位置を表す。クライアントデバイス106からコンピューティング環境203に提供される地理的座標に従い、位置データ221を決定することができる。他の実施形態において、クライアントデバイス106によって最近トリガされた、及び/または抜けたロケーションベースサービスゾーン100に従い、位置データ221を決定することができる。例えば、クライアントデバイス106が特定のロケーションベースサービスゾーン100に進入する、及び/または退出するときに、クライアントデバイス106は、トリガイベント通知227をコンピューティング環境203に送信するように構成されることができる。このようなものとして、トリガされたロケーションベースサービスゾーン100の地理的パラメータに従い、位置データ221を決定することができる。
【0028】
アクティブゾーン(複数可)103は、デバイス制限、ロケーションベースサービスゾーン100と関連するサービスがユーザ(例えば、単一のユーザ)を標的とするか、幅広く(例えば、複数のユーザを)標的とするか、特定のロケーションベースサービスゾーン100のアクティブステータス、それぞれのサービスについてクライアントデバイス106によるオプトインステータス、及び/または理解できるようないずれかの他の要因を考慮して特定のデバイス106について具体的に選択される、包括的なロケーションベースサービスゾーンのセット100を含む特定のクライアントデバイス106についてのアクティブゾーン103についてのパラメータを含むことができる。
【0029】
プロバイダデータ212は、ロケーションベースサービスゾーン100のプロバイダと関連するデータを含む。プロバイダデータ212は、ジオフェンス(複数可)109、ビーコン(複数可)112、及び/またはプロバイダと関連するいずれかの他のデータを含む。ジオフェンス109は、プロバイダのサービスに関連する仮想地理的境界を表す。ジオフェンス109は、ジオフェンスパラメータ230、及び/またはジオフェンス109と関連するいずれかの他のタイプのデータを含む。ジオフェンスパラメータ230は、地理的位置と関連する1つ以上の座標、内側領域の半径、非円形領域についての周囲仕様、クライアントデバイスが境界内にあるときにクライアントデバイス106のユーザに提示されるメッセージ(例えば、「XYZ店舗で販売する。途中で立ち寄り、1つの物品の50%割引を受ける」)、アクティブ時間、アクティブ日付、一意のトークン識別子、及び/またはジオフェンス109と関連する他のパラメータを含むことができる。
【0030】
ビーコン(複数可)112は、無線信号をブロードキャストするように構成されるデバイスを表す。ビーコン(複数可)112は、クライアントデバイス106がブロードキャストされた信号を受信する範囲内にあるときに、クライアントデバイス106がビーコン112からブロードキャストされる無線信号にアクセスするために使用することが可能である、ビーコン識別子を有するビーコンパラメータ233を含む。
【0031】
集約インタラクションデータ215は、複数のユーザのインタラクション履歴と関連するデータを含む。例えば、ロケーションベースサービスゾーン100をトリガする場合、アクティブゾーン管理システム115、及び/またはコンピューティング環境203内で実行される他のアプリケーションは、各トリガと関連するユーザインタラクションのログを取ることができる。しかしながら、ユーザが特定のロケーションベースサービスゾーン100をトリガすることができる間、ユーザは、ロケーションベースサービスゾーン100と関連するサービス(例えば、製品を購入する)とインタラクトすることができない。集約インタラクションデータ215は、複数のユーザと関連するデータを含むことができ、ユーザが特定のロケーションベースサービスゾーン100とインタラクトすることができる確率を決定するために使用されることができる。例えば、特定の地理的領域中に2つの異なるロケーションベースサービスゾーン100がある場合、集約インタラクションデータ215は、サービスBと関連するロケーションベースサービスゾーン100とインタラクトすることより多くのユーザがサービスAと関連するロケーションベースサービスゾーン100とインタラクトすることを示すことができる。いくつかの実施形態において、集約インタラクションデータ215をクライアントデバイス106に提供されるアクティブゾーンデータ117に含むことができる。クライアントデバイス106は、ロケーションベースサービスゾーンのサブセット100を選択してアクティブゾーン103から監視する際に、集約インタラクションデータ215を要因として使用することができる。
【0032】
クライアントデバイス106は、ネットワーク121に連結され得る複数のクライアントデバイスを表す。クライアントデバイス106は、例えば、コンピュータシステムなどのプロセッサベースのシステムを含み得る。係るコンピュータシステムは、デスクトップコンピュータ、ラップトップコンピュータ、パーソナルデジタルアシスタント、携帯電話、スマートフォン、セットトップボックス、音楽プレーヤ、ウェブパッド、タブレットコンピュータシステム、ゲーム機、電子書籍リーダ、スマートウォッチ、ヘッドマウントディスプレイ、音声インタフェースデバイス、または他のデバイスの形で具体化されてよい。クライアントデバイス106は、ディスプレイ236を含んでよい。ディスプレイ236は、例えば、液晶ディスプレイ(LCD)、ガスプラズマベースのフラットパネルディスプレイ、有機発光ダイオード(OLED)ディスプレイ、電子インク(Eインク)ディスプレイ、LCDプロジェクタ、または他の種類の表示装置等の1つ以上の装置を含んでよい。
【0033】
クライアントデバイス106は、アクティブゾーンフィルタアプリケーション124、クライアントアプリケーション239及び/または他のアプリケーション等の種々のアプリケーションを実行するよう構成されてもよい。クライアントアプリケーション239をクライアントデバイス106内で実行し、例えば、コンピューティング環境203及び/または他のサーバによって提供されるネットワークコンテンツにアクセスすることによって、ディスプレイ236上のユーザインタフェース241をレンダリングすることができる。この目的のために、クライアントアプリケーション239は、例えば、ブラウザ、専用アプリケーションなどを含むことができ、ユーザインタフェース241は、ネットワークページ、アプリケーション画面などを含むことができる。クライアントデバイス106は、例えば、電子メールアプリケーション、ソーシャルネットワーキングアプリケーション、ワードプロセッサ、スプレッドシート、及び/または他のアプリケーションなどのクライアントアプリケーション239を越えるアプリケーションを実行するように構成されることができる。
【0034】
本開示のさまざまな実施形態に従い、アクティブゾーンフィルタアプリケーション124を実行し、アクティブゾーン管理システム115から受信するアクティブゾーン103中に含まれるロケーションベースサービスゾーンのサブセット100を選択する。いくつかの地理的領域は、密な量のロケーションベースサービスゾーン100を含むことができる。アクティブゾーンフィルタアプリケーション124がクライアントデバイス106によってサポートされるものより多いロケーションベースサービスゾーン100を含むアクティブゾーン103を受信するときに、アクティブゾーンフィルタアプリケーション124は、例えば、クライアントデバイス106の現在位置、クライアントデバイス106によって最近抜けたロケーションベースサービスゾーン100、デバイス速度、デバイス方向、ユーザ履歴、集約ユーザ履歴、及び/または理解できるようないずれかの他の要因などの、さまざまな要因に従い受信したアクティブゾーン103中に含まれるロケーションベースサービスゾーンのサブセット100を選択することができる。いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、上記の要因及びフィルタリングルール251に少なくとも部分的に基づき受信したアクティブゾーン103中に含まれるロケーションベースサービスゾーン100のそれぞれにスコアを割り当てることができる。ロケーションベースサービスゾーン100をランク付けすることができ、デバイスがサポートした閾値内の最高ランクのロケーションベースサービスゾーン100を、監視されているロケーションベースサービスゾーンのサブセット100中に含むことができる。アクティブゾーンフィルタアプリケーション100は、ロケーションベースサービスゾーンのサブセット100を更新するときを、及び/またはアクティブゾーン管理システム115から新たなアクティブゾーン103を要求するときを決定することもできる。
【0035】
クライアントデバイス106は、ローカルデータストア243中にさまざまなデータを格納することができる。位置データストア243中に格納されるデータは、例えば、監視データ246、アクティブゾーンデータ117、インタラクション履歴249、フィルタリングルール251、位置データ221、クライアントサポートデータ254、及び/または他のデータを含むことができる。監視データ246は、特定のインスタンスにおいて監視されているアクティブゾーン103内のロケーションベースサービスゾーンのサブセット100と関連するデータを含む。監視データ246は、サブセットのデータ253を含み、このサブセットのデータは、地理的位置と関連する1つ以上の座標、内側領域の半径、非円形領域についての周囲仕様、クライアントデバイス106が境界内にあるときにクライアントデバイス106のユーザに提示されるメッセージ(例えば、「XYZ店舗で販売する。途中で立ち寄り、1つの物品の50%割引を受ける」)、アクティブ時間、アクティブ日付、一意のトークン識別子、クライアントデバイス106がブロードキャストされた信号を受信する範囲内にあるときにビーコン112からブロードキャストされる無線信号にアクセスするためにクライアントデバイス106が使用することができるビーコン識別子、及び/またはアクティブゾーン103内の選択されたロケーションベースサービスゾーンのサブセット100と関連するいずれかの他のパラメータデータを含むことができる。
【0036】
アクティブゾーンデータ117は、クライアントデバイス106のために、またアクティブゾーン管理システム115によって、作成されるアクティブゾーン103と関連するデータを含む。アクティブゾーンデータ117は、アクティブゾーン103の地理的領域を画定する地理的パラメータ、ロケーションベースサービスゾーン100、集約インタラクションデータ215、及び/または理解できるいずれかの他のタイプのデータを含むことができる。ロケーションベースサービスゾーン100は、アクティブゾーン管理システム115によって作成されるアクティブゾーン103中に含まれたロケーションベースサービスゾーン100についてのジオフェンスパラメータ230及び/またはビーコンパラメータ233を含むことができる。
【0037】
インタラクション履歴249は、ロケーションベースサービスゾーン100に関する前のトリガ及びインタラクションと関連するデータを含む。例えば、インタラクション履歴249は、特定のロケーションベースサービスゾーン100に進入する、及び/またはこのロケーションベースサービスゾーンを退出する際にユーザがサービスとのインタラクションを有したかどうか、例えば、ロケーションベースサービスゾーン100が特定の店舗と関連したとき、に関連するデータを含むことができる。クライアントデバイス106と関連するユーザがその店舗で物品を購入した場合、インタラクション履歴249は、ロケーションベースサービスゾーン100に関連する物品購入を示す。
【0038】
同様に、ユーザがその店舗で物品を購入しなかった場合、インタラクション履歴249は、その店舗での購入の欠如を示すことができる。インタラクション履歴249は、監視する受信したアクティブゾーン103内のロケーションベースサービスゾーンのサブセット100を決定する際に、アクティブゾーンフィルタアプリケーション124によって使用されることができる。いくつかの実施形態において、インタラクション履歴249は、以前に抜けたロケーションベースサービスゾーンに関係がある(例えば、ジオフェンスパラメータを退出する、または進入する、ブロードキャストされたビーコン信号を受信する距離内にもはやないなどの)情報を含むことができる。この情報を使用して、所与の時間にクライアントデバイスの、方向、速度、及び/または位置を推定することができる。
【0039】
フィルタリングルール251は、ロケーションベースサービスゾーンのサブセット100を選択することと関連するルールを含む。いくつかの実施形態において、フィルタリングルール251は、例えば、アクティブゾーン103内のロケーションベースサービスゾーン100のプライオリティを決定するために、ランク付けアルゴリズムなどのアルゴリズムを含むことができる。例えば、フィルタリングルール251は、各ロケーションベースサービスゾーン100と関連するさまざまな特徴に割り当てる重み付けを有することができる。割り当てられた重み付けに基づき、作成されたアクティブゾーン103内で識別されるロケーションベースサービスゾーン100をランク付けすることができ、クライアントデバイス106によってサポートされる最大閾値内にある最高ランクのロケーションベースサービスゾーン100をサブセットについて選択することができる。
【0040】
1つの実施形態において、フィルタリングルール251は、インタラクションの確率のレベルに従い割り当てる重み付けを有することができる。例えば、第一ロケーションベースサービスゾーン100がインタラクション履歴249及び/または集約インタラクションデータ215に従い第二ロケーションベースサービスゾーン100経由でユーザインタラクションをもたらす、より高確率を有する場合、第一ロケーションベースサービスゾーン100は、第二ロケーションベースサービスゾーン100に割り当てられる重み付けより高い重み付けを割り当てられることができる。フィルタリングルール251は、特定のロケーションベースサービスゾーン100を考慮するために距離閾値を決定するように適用されることができるルールをさらに含むことができる。例えば、フィルタリングルール251は、ロケーションベースサービスゾーン100がサブセット中の包含のために考慮されるため、クライアントデバイス位置に関連して満たさなければならない特定の距離閾値を示すことができる。
【0041】
位置データ221は、クライアントデバイス106の位置に特定のインスタンスにおいて対応する。例えば、位置データ221は、クライアントデバイス106の地理的座標を含むことができる。他の実施形態において、位置データ221は、最近トリガされた、及び/または抜けたロケーションベースサービスゾーン100に少なくとも部分的に基づき、推定された位置を含むことができる。例えば、クライアントデバイス106が特定のロケーションベースサービスゾーン100を退出した場合、位置データ221は、特定のロケーションベースサービスゾーン100の地理的パラメータに従い推定されることができる。
【0042】
デバイスサポートデータ254は、クライアントデバイス106によってサポートされるロケーションベースサービスゾーン100の量、及び/またはこのデバイスによってサポートされる他の特徴を含む。クライアントデバイスの制限は、クライアントデバイス106の電力使用量、メモリ使用量、及び/またはプロセッサ使用量を最適化するために、クライアントデバイスによって課せられることができる。
【0043】
次に図3を参照して、示されるのは、種々の実施形態に係るアクティブゾーンフィルタアプリケーション124の一部分の動作の一例を提供するフローチャートである。図3のフローチャートが本明細書に説明されるようなアクティブゾーンフィルタアプリケーション124の一部分の動作を実施するために利用され得る、多くの異なる種類の機能配置の一例を提示するにすぎないことが理解される。代わりに、図3のフローチャートは、1つ以上の実施形態による、クライアントデバイス106(図1)内に実装された方法の要素の例を示すように見られてもよい。
【0044】
図3は、本開示のさまざまな実施形態に従いアクティブゾーン103(図1)内のロケーションベースサービスゾーンのサブセット100(図2)を選択することに関して、アクティブゾーンフィルタアプリケーション124によって実行されることができる機能性の非限定的な実施例を提供する。
【0045】
ボックス303から始まり、アクティブゾーンフィルタアプリケーション124は、アクティブゾーンデータ117(図1)をコンピューティングデバイス118(図1)から受信する。アクティブゾーンデータ117は、クライアントデバイス106のために、またアクティブゾーン管理システム115(図1)によって、作成されるアクティブゾーン103(図1)と関連するデータを含む。アクティブゾーンデータ117は、ジオフェンスパラメータ230(図2)、ビーコンパラメータ233(図2)、集約インタラクションデータ215、及び/または理解できるいずれかの他のタイプのデータを含むことができる。いくつかの実施形態において、クライアントデバイス106によるアクティブゾーン103についての要求に応答して、アクティブゾーンデータ117を受信する。他の実施形態において、アクティブゾーン103についての要求なしで、アクティブゾーンデータ117を受信する。例えば、コンピューティングデバイス118は、クライアントデバイス106が以前に作成されたアクティブゾーン103を退出したときを検出するように構成されることができる。クライアントデバイス106が以前に作成されたアクティブゾーン103を退出することの検出の際に、アクティブゾーン管理システム115は、新たなアクティブゾーン103を作成し、アクティブゾーンデータ117をクライアントデバイス106に提供する。
【0046】
ボックス306において、アクティブゾーンフィルタアプリケーション124は、アクティブゾーンデータ117中に含まれるロケーションベースサービスゾーン100の数が所定の閾値を満たす、または上回るかどうかを判定する。いくつかの実施形態において、クライアントデバイス106と関連するデバイス制限に従い、所定の閾値を定義する。例えば、クライアントデバイスAは、二十(20)個のロケーションベースサービスゾーンをサポートすることが可能であることができ、クライアントデバイスBは、百(100)個のロケーションベースサービスゾーン100をサポートすることが可能であることができる。クライアントデバイスの制限は、クライアントデバイス106の電力使用量、メモリ使用量、及び/またはプロセッサ使用量を最適化するために、クライアントデバイス106によって課せられることができる。ロケーションベースサービスゾーン100の数が所定の閾値内にある場合、アクティブゾーンフィルタアプリケーション124は、ボックス309に進む。ボックス309において、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106によるアクティブゾーン103内のロケーションベースサービスゾーン100の監視を開始する。
【0047】
ロケーションベースサービスゾーン100の数が所定の閾値を上回る場合に、アクティブゾーンフィルタアプリケーション124は、ボックス312に進む。ボックス312において、アクティブゾーンフィルタアプリケーション124は、アクティブゾーン103内でロケーションベースサービスゾーンのサブセット100を選択して、監視する。いくつかの実施形態において、クライアントデバイス106は、フィルタリングルールのセット251を適用し、アクティブゾーン103内の異なるロケーションベースサービスゾーン100を分析し、例えば、クライアントデバイス106の現在の位置、クライアントデバイス106が最近入った、及び/または出たロケーションベースサービスゾーン100、デバイス速度、デバイス方向、ユーザ履歴、集約ユーザ履歴、及び/または理解できるようないずれかの他の要因などの要因に基づきロケーションベースサービスゾーンのサブセット100を選択することができる。
【0048】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106が監視されている抜けたロケーションベースサービスゾーン100に従い、クライアントデバイス位置127を決定することができる。抜けたロケーションベースサービスゾーン100と関連する既知の地理的パラメータによって、クライアントデバイス位置127を推定することができる。いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、推定されたクライアントデバイス位置127からの所定の距離に従い、ロケーションベースサービスゾーンのサブセット100を選択することができる。例えば、クライアントデバイス位置127から五十(50)ヤード(yd)内にある、いずれかのロケーションベースサービスゾーン100を、ロケーションベースサービスゾーンのサブセット100における包含のために選択することができる。
【0049】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、フィルタリングルール251を適用して、ロケーションベースサービスゾーンのサブセット100を選択する。例えば、フィルタリングルール251は、例えば、アクティブゾーン103内のロケーションベースサービスゾーン100のプライオリティを決定するために、ランク付けアルゴリズムなどのアルゴリズムを含むことができる。いくつかの実施形態において、フィルタリングルール251は、各ロケーションベースサービスゾーン100と関連するさまざまな特徴に割り当てる重み付けを有することができる。割り当てられた重み付けに基づき、作成されたアクティブゾーン103内で識別されるロケーションベースサービスゾーン100をランク付けすることができ、クライアントデバイス106によってサポートされる最大閾値内にある最高ランクのロケーションベースサービスゾーン100をサブセットについて選択することができる。別の非限定的な実施例において、フィルタリングルール251は、監視されていないロケーションベースサービスゾーン100のタイプを示すことができる。例えば、フィルタリングルール251は、コーヒーショップに関連する、いずれかのタイプのロケーションベースサービスゾーン100が考慮から除外されることを示すことができる。
【0050】
他の実施形態において、アクティブゾーンフィルタアプリケーション124は、集約インタラクションデータ215を分析し、この集約インタラクションデータ215に従いロケーションベースサービスゾーンのサブセット100を選択することができる。例えば、集約インタラクションデータ215を使用して、ユーザが複数のユーザのインタラクションデータに基づく特定のロケーションベースサービスゾーン100とのインタラクションを有する確率を決定することができる。
【0051】
いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106の速度及び/または方向を決定することができる。この情報を使用して、クライアントデバイス106と関連するコースを決定することができる。このようなものとして、クライアントデバイス106と関連するコースに従い、ロケーションベースサービスゾーンのサブセット100を選択することができる。
【0052】
ロケーションベースサービスゾーンのサブセット100を選択した後に、アクティブゾーンフィルタアプリケーション124は、ボックス315に進む。ボックス315において、アクティブゾーンフィルタアプリケーション124は、アクティブゾーン103からロケーションベースサービスゾーンのサブセット100の監視を開始する。ロケーションベースサービスゾーン100の監視を開始すると、アクティブゾーンフィルタアプリケーション124のこの部分は終了する。
【0053】
ここで図4に戻り、示されるのは、種々の実施形態に係るアクティブゾーンフィルタアプリケーション124の一部分の動作の一例を提供するフローチャートである。図4のフローチャートが本明細書に説明されるようなアクティブゾーンフィルタアプリケーション124の一部分の動作を実施するために利用され得る、多くの異なる種類の機能配置の一例を提示するにすぎないことが理解される。代わりに、図4のフローチャートは、1つ以上の実施形態による、クライアントデバイス106(図1)内に実装された方法の要素の例を示すように見られてもよい。
【0054】
図4は、本開示のさまざまな実施形態に従い、クライアントデバイス106がサポートすることが可能である最大閾値をコンピューティングデバイス118(図1)から受信するアクティブゾーン103(図1)において最初に識別されるロケーションベースサービスゾーン100(図1)の量が上回るときに、アクティブゾーン103を含むロケーションベースサービスゾーン100に優先順位を付けることに関して、アクティブゾーンフィルタアプリケーション124によって実行されることができる機能性の非限定的な実施例を提供する。
【0055】
ボックス403によって開始し、アクティブゾーンフィルタアプリケーション124は、コンピューティングデバイス118から受信するアクティブゾーン103内に含まれるロケーションベースサービスゾーン100を識別する。ボックス406において、アクティブゾーンフィルタアプリケーション124は、ロケーションベースサービスゾーン100を分析し、1つ以上の要因に従いロケーションベースサービスゾーン100にスコアを割り当てる。1つ以上の要因は、ロケーションベースサービスと関連するサービス(例えば、小売、配送など)のタイプ、ロケーションベースサービスゾーン100とクライアントデバイス位置127との間の距離、ユーザインタラクションがユーザインタラクション履歴249及び/または集約インタラクションデータ215に部分的に基づき発生する確率、抜けたロケーションベースサービスゾーン100、クライアントデバイス方向、クライアントデバイス速度、及び/または理解できるようないずれかの他の要因を含むことができる。
【0056】
いくつかの実施形態において、フィルタリングルール251に定義される重み付けに従い、スコアを決定する。例えば、各要因は、特定の重み付けを与えられることができ、ロケーションベースサービスゾーン100についてのスコアは、分析された各要因に割り当てられる重み付けの合計に基づく。1つの非限定的な実施例において、ロケーションベースサービスゾーンAは、クライアントデバイス位置127の所定の距離内にあることに対する「1」の重み付けを受け、ロケーションベースサービスゾーンBは、クライアントデバイス位置127の所定の距離の外側にあることに対する「0」の重み付けを受ける。さらに、ロケーションベースサービスゾーンBとのユーザインタラクションの確率がロケーションベースサービスゾーンAとのユーザインタラクションの確率より高いと仮定し、またユーザインタラクションの確率についてロケーションベースサービスゾーンBに割り当てられる重み付けが「5」であり、ユーザインタラクションの確率についてロケーションベースサービスゾーンAに割り当てられる重み付けが「2」であると仮定する。この実施例において、ロケーションベースサービスゾーンAに割り当てられるスコアは、「3」であることができ、ロケーションベースサービスゾーンBについてのスコアは、「5」であることができる。
【0057】
ボックス409において、アクティブゾーンフィルタアプリケーション124は、スコアが分析されていない、及び/または与えられていない、アクティブゾーン103において識別される他のロケーションベースサービスゾーン100があるかどうかを判定する。他のロケーションベースサービスゾーン100がある場合、アクティブゾーンフィルタアプリケーション124は、ボックス403に戻る。場合により、アクティブゾーンフィルタアプリケーション124は、ボックス412に進む。ボックス412において、アクティブゾーンフィルタアプリケーション124は、それぞれの各スコアに従い、ロケーションベースサービスゾーン100をランク付けする。ボックス415において、クライアントデバイス106によって監視するためのロケーションベースサービスゾーンのサブセット100中に含まれる、ロケーションベースサービスゾーン100のサポートされた閾値内で最高ランクのロケーションベースサービスゾーン100を選択する。監視するためにロケーションベースサービスゾーンのサブセット100を選択すると、アクティブゾーンフィルタアプリケーション124のこの部分は終了する。
【0058】
次に図5を参照して、示されるのは、種々の実施形態に係るアクティブゾーンフィルタアプリケーション124の一部分の動作の一例を提供するフローチャートである。図5のフローチャートが本明細書に説明されるようなアクティブゾーンフィルタアプリケーション124の一部分の動作を実施するために利用され得る、多くの異なる種類の機能配置の一例を提示するにすぎないことが理解される。代わりに、図5のフローチャートは、1つ以上の実施形態による、クライアントデバイス106(図1)内に実装された方法の要素の例を示すように見られてもよい。
【0059】
図5は、本開示のさまざまな実施形態に従い、特定のクライアントデバイス106についてのアクティブゾーン103(図2)及び/またはロケーションベースサービスゾーン100を修正することに関して、アクティブゾーンフィルタアプリケーション124によって実行されることができる機能性の非限定的な実施例を提供する。
【0060】
ボックス503によって開始し、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106が監視されたロケーションベースサービスゾーン100を出た(例えば、抜けた)かどうかを判定する。クライアントデバイス106が監視されたロケーションベースサービスゾーン100を出た場合に、アクティブゾーンフィルタアプリケーション124は、ボックス506に進む。場合により、アクティブゾーンフィルタアプリケーション124は、ロケーションベースサービスゾーン100を監視し、退出を検出し続ける。
【0061】
ボックス506において、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス位置127を推定する。いくつかの実施形態において、アクティブゾーンフィルタアプリケーション124は、抜けたロケーションベースサービスゾーン100の地理的パラメータに基づきクライアントデバイス位置127を推定する。例えば、ボックス503において、ロケーションベースサービスゾーン100を抜けていると検出するときに、アクティブゾーンフィルタアプリケーション124は、抜けたロケーションベースサービスゾーン100を画定する地理的パラメータを決定し、地理的パラメータをクライアントデバイス位置127の推定値として使用することができる。同様に、クライアントデバイス106が新たなロケーションベースサービスゾーン100をトリガする場合、アクティブゾーンフィルタアプリケーション124は、新たなロケーションベースサービスゾーン100の地理的パラメータに少なくとも部分的に基づきクライアントデバイス位置127を推定することができる。いくつかの実施形態では、クライアントデバイス106は、理解できるように、その位置の地理的座標にアクセスすることができる。
【0062】
ボックス509において、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106がアクティブゾーン103内にまだあるかどうかを判定する。例えば、アクティブゾーンデータ117は、アクティブゾーン103の地理的境界を画定する地理的パラメータを含む。クライアントデバイス位置127がアクティブゾーン103の所定の地理的境界の外側にある場合、アクティブゾーンフィルタアプリケーション124は、ボックス512に進む。場合により、アクティブゾーンフィルタアプリケーション124は、ボックス518に進む。
【0063】
ボックス512において、アクティブゾーンフィルタアプリケーション124は、コンピューティング環境203中のアクティブゾーン管理システム115から新たなアクティブゾーン103を要求する。ボックス515において、アクティブゾーンフィルタアプリケーション124は、ネットワーク121経由で送信するアクティブゾーンデータ117を介して、新たなアクティブゾーン103を受信する。ボックス518において、アクティブゾーンフィルタアプリケーション124は、新たなロケーションベースサービスゾーンのサブセット100を選択する。新たなロケーションベースサービスゾーンのサブセット100は、例えば、クライアントデバイス106の現在の位置、最近クライアントデバイス106が進入した及び/または退出したロケーションベースサービスゾーン100、デバイス速度、デバイス方向、ユーザ履歴、集約ユーザ履歴、及び/または理解できるようないずれかの他の要因などの要因に少なくとも部分的に基づくことができる。ボックス521において、アクティブゾーンフィルタアプリケーション124は、クライアントデバイス106によって新規に選択されたサブセット中のロケーションベースサービスゾーン100の監視を開始する。クライアントデバイス106が新たなロケーションベースサービスゾーンのサブセット100を監視し始めると、アクティブゾーンフィルタアプリケーション124のこの部分は終了する。
【0064】
図6を参照して、示されるのは、本開示の実施形態による、コンピューティング環境203の概略ブロック図である。コンピューティング環境203は、1つ以上のコンピューティングデバイス118を含む。各コンピューティングデバイス118は、例えば、プロセッサ603及びメモリ606を有する少なくとも1つのプロセッサ回路を含み、それら両方がローカルインタフェース609に結合される。このために、各コンピューティングデバイス118は、例えば、少なくとも1つのサーバコンピュータまたは同様のデバイスを備え得る。ローカルインタフェース609は、例えば、付随するアドレス/制御バスを伴うデータバスまたは理解できるような他のバス構造を含み得る。
【0065】
メモリ606に記憶されるのは、データと、プロセッサ603によって実行可能ないくつかのコンポーネントとの両方である。具体的には、メモリ606に格納され、かつプロセッサ603により実行可能であるのは、アクティブゾーン管理システム115、及び潜在的な他のアプリケーションである。また、メモリ606に記憶されるのは、データストア206及び他のデータであり得る。加えて、オペレーティングシステムは、メモリ606に格納され、プロセッサ603によって実行可能であり得る。
【0066】
図7を参照して、示されるのは、本開示の実施形態による、クライアントデバイス106の概略ブロック図である。クライアントデバイス106は、例えば、プロセッサ703、メモリ706、及びディスプレイ236を含み、これらの全てがローカルインタフェース709に結合される、少なくとも1つのプロセッサ回路を含む。ローカルインタフェース709は、例えば、付随するアドレス/制御バスを有するデータバス、または理解できるような他のバス構造を含み得る。
【0067】
メモリ706に格納されるのは、データと、プロセッサ703により実行可能ないくつかのコンポーネントとの両方である。具体的には、メモリ706に格納され、かつプロセッサ703により実行可能であるのは、アクティブゾーンフィルタアプリケーション124、クライアントアプリケーション239、及び潜在的な他のアプリケーションである。また、メモリ706に格納されるのは、ローカルデータストア243及び他のデータであってもよい。さらに、オペレーティングシステムは、メモリ706に格納され、かつプロセッサ703により実行可能であり得る。
【0068】
次いで図6及び7の両方を参照して、認識できるように、メモリ606、706に格納され、プロセッサ603、703によって実行可能である他のアプリケーションが存在し得ることを理解する。本明細書に説明される任意のコンポーネントがソフトウェアの形式で実装される場合、例えば、C、C++、C#、Objective C、Java(登録商標)、JavaScript(登録商標)、Perl、PHP、Visual Basic(登録商標)、Python(登録商標)、Ruby、Flash(登録商標)、または他のプログラミング言語等のいくつかのプログラミング言語のうちの任意の1つを使用し得る。
【0069】
いくつかのソフトウェアコンポーネントがメモリ606、706に格納され、プロセッサ603、703によって実行可能である。この点において、用語「実行可能」は、プロセッサ603、703によって最終的に起動することができる形式にあるプログラムファイルを意味する。実行可能プログラムの例は、例えば、メモリ606、706のランダムアクセス部にロードし、プロセッサ603、703によって起動され得る形式の機械コードに変換することができるコンパイルされたプログラム、メモリ606、706のランダムアクセス部にロードされ、プロセッサ603、703によって実行されることが可能であるオブジェクトコード等の適切な形式で表され得るソースコード、またはプロセッサ603、703によって実行されるメモリ606、706のランダムアクセス部に命令を生成するために別の実行可能なプログラムによって解釈され得るソースコード等であり得る。実行可能プログラムは、例えば、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、ハードドライブ、ソリッドステートドライブ、USBフラッシュドライブ、メモリカード、コンパクトディスク(CD)またはデジタル多用途ディスク(DVD)等の光学ディスク、フロッピーディスク、磁気テープ、または他のメモリ構成要素を含む、メモリ606、706の任意の部分または任意の構成要素に記憶され得る。
【0070】
メモリ606、706は、揮発性メモリと不揮発性メモリの両方と、データストレージ構成要素とを含むように本明細書に定義される。揮発性構成要素は、電源喪失時にデータ値を保持しないものである。不揮発性構成要素は、電源喪失時にデータを保持するものである。したがって、メモリ606、706は、例えば、ランダムアクセスメモリ(RAM)、読取専用メモリ(ROM)、ハードディスクドライブ、ソリッドステートドライブ、USBフラッシュドライブ、メモリカードリーダを介してアクセスされるメモリカード、関連付けられるフロッピーディスクドライブを介してアクセスされるフロッピーディスク、光ディスクドライブを介してアクセスされる光ディスク、適切なテープドライブを介してアクセスされる磁気テープ、及び/または他のメモリ構成要素、あるいはこれらのメモリ構成要素のうちの任意の2つ以上の組み合わせを含み得る。加えて、RAMは、例えば、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、または磁気ランダムアクセスメモリ(MRAM)、及び他の係るデバイスを含み得る。ROMは、例えば、プログラマブル読み取り専用メモリ(PROM)、消去可能プログラマブル読み取り専用メモリ(EPROM)、電気的消去可能プログラマブル読み取り専用メモリ(EEPROM)、または他の同様のメモリデバイスを含み得る。
【0071】
また、プロセッサ603、703は、複数のプロセッサ603、703及び/または複数のプロセッサコアを表し得、メモリ606、706は、各々、並列処理回路で動作する複数のメモリ606、706を表し得る。係る場合、ローカルインタフェース609、709は、複数のプロセッサ603、703のうちの任意の2つの間、任意のプロセッサ603、703とメモリ606、706のうちのいずれかとの間、またはメモリ606、706のうちの任意の2つの間等の通信を容易にする適切なネットワークであり得る。ローカルインタフェース609、709は、例えば、ロードバランシングを行うことを含む、この通信を調整するように設計された追加システムを備え得る。プロセッサ603、703は、電気式、または、いくつかの他の利用可能な構成であり得る。
【0072】
アクティブゾーン管理システム115、アクティブゾーンフィルタアプリケーション124、及び本明細書に記載される他のさまざまシステムは、上記で考察されるように、汎用ハードウェアにより実行されるソフトウェアまたはコードで具体化され得るが、代替として、同一のものが専用ハードウェア、またはソフトウェア/汎用ハードウェアと専用ハードウェアとの組み合わせで具体化されてもよい。専用ハードウェアで具体化される場合、いくつかの技術のうちの任意の1つまたはそれらの組み合わせを使用する回路またはステートマシンとして実装されることができる。これらの技術は、1つ以上のデータ信号の適用時に様々な論理機能を実行する論理ゲートを有する個別論理回路、適切な論理ゲートを有する特定用途向け集積回路(ASIC)、フィールドプログラマブルゲートアレイ(FPGA)、または他の構成要素等を含んでもよいが、これらに限定されない。この技術は通常、当業者にはよく理解されており、したがって、本明細書では詳述しない。
【0073】
図3~5のフローチャートは、アクティブゾーンフィルタアプリケーション124の部分の実装の機能性及び動作を示す。ソフトウェアで具体化される場合、各ブロックは、指定された論理関数(複数可)を実装するプログラム命令を含むモジュール、セグメント、またはコードの一部を表し得る。プログラム命令は、プログラミング言語で作成される人間が読めるステートメントを含むソースコード、またはコンピュータシステムもしく他のシステム内のプロセッサ703等の適切な実行システムにより認識可能な数値命令を含むマシンコードの形で具体化されてよい。マシンコードはソースコード等から変換され得る。ハードウェアで具体化される場合、各ブロックは、指定された論理関数(複数可)を実装するために、回路またはいくつかの相互接続回路を表し得る。
【0074】
図3~5のフローチャートは、具体的な実行順序を示すが、実行順序が図示する順序と異なってもよいことが理解される。例えば、2つ以上のブロックの実行順序は、示される順序に対してスクランブルがかけられ得る。また、図3~5に連続して示される2つ以上のブロックは、同時に、または一部同時に実行し得る。さらに、いくつかの実施形態では、図3~5に示される1つ以上のブロックは、省略または省かれる場合もある。加えて、有用性の向上、説明、性能測定、またはトラブルシューティングの補助の提供等の目的で、任意の数のカウンタ、状態変数、警告セマフォ、またはメッセージが、本明細書に説明する論理フローに追加される可能性がある。係る全ての変形例は、本開示の範囲内にあることを理解されたい。
【0075】
また、ソフトウェアまたはコードを含む、アクティブゾーン管理システム115及びアクティブゾーンフィルタアプリケーション124を含む、本明細書に記載されるいずれかのロジックまたはアプリケーションは、例えば、コンピュータシステムまたは他のシステム内のプロセッサ603、703などの命令実行システムによって使用される、またはそれに関連して使用される、いずれかの非一時的コンピュータ可読媒体で具現化されることが可能である。この意味では、論理は、例えば、コンピュータ可読媒体からフェッチされ、及び命令実行システムによって実行することができる命令及び宣言を含むステートメントを含み得る。本開示の文脈において、「コンピュータ可読媒体」は、命令実行システムが使用する、またはそれに関連して使用する、本明細書に記載の論理またはアプリケーションを包含、格納、または保持することができる任意の媒体であることができる。
【0076】
コンピュータ可読媒体は、例えば、磁気媒体、光媒体、または半導体媒体等の多くの物理媒体のうちの任意の1つを含み得る。好適なコンピュータ可読媒体のより具体的な例は、限定ではないが、磁気テープ、磁気フロッピーディスク、磁気ハードドライブ、メモリカード、ソリッドステートドライブ、USBフラッシュドライブ、または光ディスクを含むであろう。また、コンピュータ可読媒体は、例えば、スタティックランダムアクセスメモリ(SRAM)及びダイナミックランダムアクセスメモリ(DRAM)、または磁気ランダムアクセスメモリ(MRAM)を含むランダムアクセスメモリ(RAM)であり得る。加えて、コンピュータ可読媒体は、読取専用メモリ(ROM)、プログラマブル読取専用メモリ(PROM)、消去可能プログラマブル読取専用メモリ(EPROM)、電気的消去可能プログラマブル読取専用メモリ(EEPROM)、または他の種類のメモリデバイスであり得る。
【0077】
また、アクティブゾーン管理システム115及びアクティブゾーンフィルタアプリケーション124を含む、本明細書に記載の任意の論理またはアプリケーションは、様々な方法で実装され、構築されてもよい。例えば、説明される1つ以上のアプリケーションは、単一のアプリケーションのモジュールまたは構成要素として実装され得る。さらに、本明細書に説明される1つ以上のアプリケーションは、共有されたコンピューティングデバイスもしくは別々のコンピューティングデバイス、またはそれらの組み合わせで実行され得る。例えば、本明細書に説明される複数のアプリケーションは、同じコンピューティング環境203中の、または同じクライアントデバイス106中の、同じ単一のコンピューティングデバイス118で、または複数のコンピューティングデバイス118で実行し得る。
【0078】
「X、Y、またはZのうちの少なくとも1つ」という表現等の選言的言語は、別様に特定的に述べられていない限り、項目、用語等がX、Y、もしくはZ、またはそれらのいずれかの組み合わせ(例えば、X、Y、及び/またはZ)のいずれかあり得ることを提示するために一般的に使用されるものとして文脈の中で理解される。したがって、係る選言的言語は、概して、ある実施形態がXの少なくとも1つ、Yの少なくとも1つ、またはZの少なくとも1つがそれぞれ存在することを必要とすることを暗示することを意図しておらず、そのように暗示することを意味するべきではない。
【0079】
本開示の実施形態の例は、以下の条項を鑑みて説明できる。
【0080】
条項1.第一コンピューティングデバイスにおいて実行可能なプログラムを用いる非一時的なコンピュータ可読媒体であって、
実行されると、前記プログラムは前記第一コンピューティングデバイスに少なくとも、
アクティブゾーンデータを第二コンピューティングデバイスから取得させ、前記アクティブゾーンデータが地理的領域、及び前記地理的領域を画定する地理的パラメータ内の複数のロケーションベースサービスゾーンの識別を符号化し、
クライアントがサポートした閾値を前記複数のロケーションベースサービスゾーンの数が満たす、または上回るとことを判定させ、
前記第一コンピューティングデバイスによって監視される少なくとも1つのロケーションベースサービスゾーンに関連して前記第一コンピューティングデバイスの退出または進入のうちの少なくとも1つに少なくとも部分的に基づき前記第一コンピューティングデバイスの位置を決定させ、
前記第一コンピューティングデバイスの前記位置、前記第一コンピューティングデバイスの速度、または前記第一コンピューティングデバイスの移動の方向のうちの少なくとも1つに少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンのサブセットを選択させ、かつ、
前記複数のロケーションベースサービスゾーンの前記サブセットの監視を開始させる、
非一時的なコンピュータ可読媒体。
【0081】
条項2.実行されると、前記プログラムは、前記第一コンピューティングデバイスに少なくとも、
前記位置に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンのうちの個々のものと、前記複数のロケーションベースサービスゾーンのうちの前記個々のものの地理的パラメータとにスコアを割り当てさせ、かつ、
前記スコアに従い前記複数のロケーションベースサービスゾーンの前記個々のものをランク付けさせ、
前記クライアントがサポートした閾値内でロケーションベースサービスゾーンの最高ランクの数に従い、前記複数のロケーションベースサービスゾーンの前記サブセットが選択される、
条項1に記載の非一時的なコンピュータ可読媒体。
【0082】
条項3.前記アクティブゾーンデータは、前記ロケーションベースサービスゾーンのうちの少なくとも1つに関して複数のユーザによるユーザインタラクションの集約ユーザ履歴をさらに含み、前記複数のロケーションベースサービスゾーンの前記サブセットが前記集約ユーザ履歴に少なくとも部分的に基づきさらに選択される、条項1または2に記載の非一時的なコンピュータ可読媒体。
【0083】
条項4.第一コンピューティングデバイス、及び
前記第一コンピューティングデバイスにおいて実行される少なくとも1つのアプリケーション、
を備え、
実行されると、前記少なくとも1つのアプリケーションは前記第一コンピューティングデバイスに少なくとも、
地理的領域内の複数のロケーションベースサービスゾーン、及び前記地理的領域を画定する地理的パラメータを第二コンピューティングデバイスから受信させ、
ロケーションベースサービスゾーン数が所定の閾値を満たす、または上回ると判定させ、
前記第一コンピューティングデバイスの位置に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンのサブセットを選択させ、かつ、
前記複数のロケーションベースサービスゾーンの前記サブセットの監視を開始させる、
システム。
【0084】
条項5.前記複数のロケーションベースサービスゾーンの前記サブセットは、前に監視されたロケーションベースサービスゾーン、前記第一コンピューティングデバイスの速度、前記第一コンピューティングデバイスの移動方向、ユーザインタラクション履歴、または集約ユーザインタラクション履歴のうちの少なくとも1つを含む複数の要因に少なくとも部分的にさらに基づく、条項4に記載のシステム。
【0085】
条項6.実行されると、前記少なくとも1つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、前記複数の要因に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンの個々のロケーションベースサービスゾーンにスコアを割り当てさせ、異なる重み付けが前記複数の要因の個々の要因に適用される、条項5に記載のシステム。
【0086】
条項7.実行されると、前記少なくとも1つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、前記スコアに従い前記個々のロケーションベースサービスゾーンをランク付けさせ、前記複数のロケーションベースサービスゾーンの前記サブセットが前記所定の閾値内のロケーションベースサービスゾーンの最高ランク数に従って選択される、条項6に記載のシステム。
【0087】
条項8.実行されると、前記少なくとも1つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、
前記第一コンピューティングデバイスが前記地理的領域の外側に移動したと判定させ、
前記第一コンピューティングデバイスの更新された位置を推定させ、かつ、
前記更新された位置に少なくとも部分的に基づき新たな地理的領域内の新たな複数のロケーションベースサービスゾーンについての要求を前記第二コンピューティングデバイスに送信させる、
条項4から7に記載のシステム。
【0088】
条項9.前記複数のロケーションベースサービスゾーンの第一ロケーションベースサービスゾーンは、ジオフェンスを含み、前記複数のロケーションベースサービスゾーンの第二ロケーションベースサービスゾーンは、ビーコンを含む、条項4から8に記載のシステム。
【0089】
条項10.実行されると、前記少なくとも1つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、前記第一コンピューティングデバイスが位置を変更したと判定することに応答して前記複数のロケーションベースサービスゾーンの前記サブセットを少なくとも修正することをさらに引き起こす、条項4から9に記載のシステム。
【0090】
条項11.実行されると、前記少なくとも1つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、前記複数のロケーションベースサービスゾーン内の前記ロケーションベースサービスゾーン数を決定させる、条項4から10に記載のシステム。
【0091】
条項12.実行されると、前記少なくとも1つのアプリケーションは、前記第一コンピューティングデバイスに少なくとも、
特定のロケーションベースサービスゾーンとのインタラクションを検出させ、
前記特定のロケーションベースサービスゾーンとの前記インタラクションに応答してユーザインタラクション履歴を変更させる、
条項4から11に記載のシステム。
【0092】
条項13.第一コンピューティングデバイスを介して、アクティブゾーンデータを第二コンピューティングデバイスから受信することであって、前記アクティブゾーンデータが複数のロケーションベースサービスゾーンを地理的パラメータによって画定されるアクティブゾーン内に含む、前記第二コンピューティングデバイスから前記受信すること、
前記複数のロケーションベースサービスゾーンの数が所定の閾値を上回ることに応答して、前記第一コンピューティングデバイスを介して、ロケーションベースサービスゾーンのサブセットを前記複数のロケーションベースサービスゾーンから選択すること、及び
前記第一コンピューティングデバイスを介して、前記ロケーションベースサービスゾーンの前記サブセットを監視すること、
を備える、方法。
【0093】
条項14.前記第一コンピューティングデバイスを介して、以前に監視されたロケーションベースサービスゾーンからの退出に少なくとも部分的に基づき前記第一コンピューティングデバイスのデバイス位置を推定することをさらに備える、条項13に記載の方法。
【0094】
条項15.前記ロケーションベースサービスゾーンの前記サブセットは、前記デバイス位置に少なくとも部分的に基づき選択される、条項14に記載の方法。
【0095】
条項16.前記第一コンピューティングデバイスを介して、前記アクティブゾーンデータについての要求を前記第二コンピューティングデバイスに送信することをさらに備え、前記要求が前記デバイス位置を含む、条項14または15に記載の方法。
【0096】
条項17.前記第一コンピューティングデバイスを介して、特定のロケーションベースサービスゾーンからの退出を前記ロケーションベースサービスゾーンの前記サブセットから検出することをさらに備える、条項13から16に記載の方法。
【0097】
条項18.前記第一コンピューティングデバイスを介して、前記退出に応答して前記第一コンピューティングデバイスの更新されたデバイス位置を推定することをさらに備える、条項17に記載の方法。
【0098】
条項19.前記第一コンピューティングデバイスを介して、前記更新されたデバイス位置に少なくとも部分的に基づき前記複数のロケーションベースサービスゾーンから、更新されたロケーションベースサービスゾーンのサブセットを選択することをさらに備える、条項18に記載の方法。
【0099】
条項20.前記第一コンピューティングデバイスを介して、前記第一コンピューティングデバイスが前記更新されたデバイス位置に少なくとも部分的に基づき前記アクティブゾーンを退出したと判定すること、
前記第一コンピューティングデバイスを介して、更新されたアクティブゾーンについての要求を前記第二コンピューティングデバイスから送信することであって、前記要求が前記新たなデバイス位置を含む、前記第二コンピューティングデバイスから前記送信すること、及び
前記第一コンピューティングデバイスを介して、更新された地理的パラメータによって画定される前記更新されたアクティブゾーン内に更新された複数のロケーションベースサービスゾーンを含む更新されたアクティブゾーンデータを受信すること、
をさらに備える、条項18または19に記載の方法。
【0100】
本開示の上述の実施形態は、本開示の原理を明確に理解するために記述される単に実施態様の可能な例にすぎないことを強調すべきである。本開示の主旨及び原理から実質的に逸脱することなく、上述の実施形態(複数可)に多くの変形及び修正が行われ得る。係る変更及び変形の全ては、本開示の範囲内で本明細書に含まれ、添付の特許請求の範囲により保護されることが意図される。
図1
図2
図3
図4
図5
図6
図7