(58)【調査した分野】(Int.Cl.,DB名)
前記ユーザコンピューティングデバイスが前記クラスタ化されたジオフェンス境界に入ったと判定するステップが、前記ユーザコンピューティングデバイスが前記クラスタ化されたジオフェンス境界に入ったものとして前記ユーザコンピューティングデバイスからの表示を受け取るステップを含む、請求項1に記載のコンピュータ実装された方法。
前記1つまたは複数のコンピューティングデバイスによって、前記ユーザコンピューティングデバイスから計画された経路または目的地を受け取るステップをさらに含む、請求項1に記載のコンピュータ実装された方法。
前記ユーザコンピューティングデバイスが前記クラスタ化されたジオフェンス境界に入ったと判定することが、前記ユーザコンピューティングデバイスが前記クラスタ化されたジオフェンス境界に入ったという前記ユーザコンピューティングデバイスからの表示を受け取ることを含む、請求項9に記載のシステム。
前記プロセッサが、前記システムに計画された経路または目的地を前記ユーザコンピューティングデバイスから受け取ることをさせる、前記記憶デバイス中に記憶されたアプリケーションコード命令を実行するようにさらに構成される、請求項9に記載のシステム。
コンピュータによって実行されると、前記コンピュータに、警告通知を提供させるコンピュータ実行可能プログラム命令をその上に具現化させた、非一時的なコンピュータ可読記憶デバイスを備え、前記コンピュータ実行可能プログラム命令が、
2つ以上の関心のあるポイントの間の関係を決定するためのコンピュータ実行可能プログラム命令と、
前記関心のあるポイントのうちの2つ以上の間の関係を決定したことに応答して、前記2つ以上の関心のあるポイントを関連付けるためのコンピュータ実行可能プログラム命令と、
前記関連付けられた関心のあるポイントを包含するクラスタ化されたジオフェンス境界であって、前記クラスタ化されたジオフェンス境界は、前記関連付けられた関心のあるポイントの外周に単一の境界として画定される境界であるか、または予め規定された組である、クラスタ化されたジオフェンス境界を決定するためのコンピュータ実行可能プログラム命令と、
前記関連付けられた関心のあるポイントを包含する前記クラスタ化されたジオフェンス境界について、ユーザコンピューティングデバイスにジオフェンス境界データを伝達するためのコンピュータ実行可能プログラム命令と、
前記ユーザコンピューティングデバイスが前記クラスタ化されたジオフェンス境界に入ったと判定するためのコンピュータ実行可能プログラム命令と、
前記ユーザコンピューティングデバイスが前記クラスタ化されたジオフェンス境界内にあることが決定されると、前記関連付けられた関心のあるポイントのうちの1つまたは複数に関して、前記ユーザコンピューティングデバイス上に組み合わされた警告を提供するためのコンピュータ実行可能プログラム命令と
を含む、コンピュータプログラム。
前記ユーザコンピューティングデバイスが前記クラスタ化されたジオフェンス境界に入ったと判定することが、前記ユーザコンピューティングデバイスが前記クラスタ化されたジオフェンス境界に入ったという前記ユーザコンピューティングデバイスからの表示を受け取ることを含む、請求項15に記載のコンピュータプログラム。
前記ユーザコンピューティングデバイスから計画された経路または目的地を受け取るためのコンピュータ実行可能命令をさらに含む、請求項15に記載のコンピュータプログラム。
【発明を実施するための形態】
【0009】
概要
本明細書に開示されるように、ジオフェンス管理システムは、商店店頭についての緯度および経度座標などの関心のあるポイントについての位置データを取得する。ジオフェンス管理システムは、次いで、ユーザの任意選択で、特定の関心のあるポイントに対するユーザのモバイルコンピューティングデバイスの位置を決定し、ユーザが関心のあるポイントに近づくとユーザに警告する。しかし、ジオフェンス管理システムは、特定の関心のあるポイントの間の関係を決定し、決定された関係に基づいて、関心のあるポイントを一緒に関連付け、または「クラスタ化」する。例えば、ジオフェンス管理システムは、ディスカウントの特別サービスを提供している3つの商店店頭が互いの1キロメートル以内にあることを判定する。各店頭について別個のジオフェンス境界を確立し、次いで、ユーザのモバイルデバイスが別個のジオフェンス境界に入るたびにユーザに特別サービスを警告するのではなく、ジオフェンス管理システムは、3つの店頭の周りに単一のジオフェンス境界を確立する。ユーザのモバイルデバイスが単一のジオフェンス境界に入ると、ジオフェンス管理システムは、ユーザに進入イベントを警告するように、ユーザデバイスに通知する。例えば、ユーザデバイスは、「あなたには、近くに3つの特別サービスがある」という単一の警告をユーザに提供する。本明細書に記載されるようにジオフェンス管理システムを使用するために、一定の例におけるユーザは、ユーザデバイス上にジオフェンス管理システムアプリケーションをインストールし、かつ/またはユーザデバイス上に設定を指定する必要がある場合がある。
【0010】
より詳細には、ジオフェンス管理システムは、複数の関心のあるポイントについての位置データを取得する。例えば、1つまたは複数の位置マーケティングシステムが、位置マーケティングシステムに関連付けられる様々な売買業者についての位置情報をジオフェンス管理システムに提供する。追加または代替として、売買業者は、売買業者の商店店頭についての位置情報をジオフェンス管理システムに提供することができる。追加または代替として、ジオフェンス管理システムは、1つまたは複数のユーザにとって関心のある可能性がある複数の位置についての位置情報を決定する。位置情報は、関心のあるポイントについての、所在地住所、英国陸地測量部グリッド照合情報(Ordnance Survey Grid Reference information)、ならびに/または緯度および経度座標などの、関心のあるポイントの位置を確立する任意の情報であってよい。ジオフェンス管理システムは、アクセス可能な関心のあるポイントデータベース中に情報を記憶する。
【0011】
ある決まったユーザについてのジオフェンスを管理するため、ジオフェンス管理システムは、ユーザの任意選択で、携帯電話などのユーザコンピューティングデバイスについての位置情報を取得する。ユーザは、ユーザにとって関心のあるポイントを識別することに使用するため、ユーザデバイス上で実行するアプリケーションをアクティブ化する、さもなければ権限を与えて、ユーザデバイスの位置をモニタする必要がある場合がある。すなわち、ユーザの任意選択で、ユーザデバイスの位置が、位置サービスと関連付けられるユーザデバイス上の位置アプリケーションなどを介して決定される。ユーザデバイスの位置は、全地球測位サービス(GPS)を介して決定することもできる。一定の例示の実施形態では、ジオフェンス管理システムは、ユーザデバイスの位置をモニタする位置を基にしたサービスとして動作する。例えば、ユーザデバイス上の位置アプリケーションは、ユーザデバイスの位置を決定し、ユーザデバイスの位置をジオフェンス管理システムに伝達する。ジオフェンス管理システムは、ユーザデバイスについての緯度および経度座標などのユーザデバイスの位置情報を受け取り、ユーザデバイスの位置をモニタする。代替の例示の実施形態では、ジオフェンス管理システムは、ユーザデバイス上で部分的または全体的に動作さもなければ実行することができる。
【0012】
一定の例示の実施形態では、ジオフェンス管理システムは、ユーザデバイスについて、計画された経路情報を追加で受け取る。例えば、ユーザは、ユーザデバイス上のマッピングアプリケーションに目的地情報を入力することができる。ユーザデバイスの現在の位置および入力された目的地に基づいて経路が決定された後に、マッピングアプリケーションが、意図した目的地を含む経路情報をジオフェンス管理システムに伝達する。ジオフェンス管理システムは、次いで、ユーザデバイスについて計画された経路および意図した目的地情報を受け取る。
【0013】
ユーザデバイスから受け取った位置情報に基づいて、ジオフェンス管理システムは、ユーザデバイスの位置に対する特定の関心のあるポイントを識別する。すなわち、ジオフェンス管理システムは、ある決まったユーザデバイスが特定の関心のあるポイントに近づくと、関心のあるポイントを動的に決定する(またはジオフェンス管理システムは、ユーザデバイスが関心のあるポイントの近くにいると予想されると決定する)。例えば、ジオフェンス管理システムは、関心のあるポイント位置データベースにアクセスし、ユーザデバイスの周りの、設定で変えることができる半径(または、正方形、市もしくは州の境界などといった他の形の区域)内の関心のあるポイントの全てを決定する。ジオフェンス管理システムは、例えば、ユーザデバイスの10キロメートル半径以内の、全ての関心のあるポイントを決定することができる。追加または代替として、一定の例示の実施形態では、ジオフェンス管理システムは、受け取ったユーザデバイスの経路に沿った、またはユーザの意図した目的地における関心のあるポイントを識別することができる。
【0014】
特定の関心のあるポイントを識別した後に、ジオフェンス管理システムは、関連する関心のあるポイントを一緒にクラスタへと関連付けする。すなわち、ジオフェンス管理システムは、2つ以上の関心のあるポイントの間の関係を決定し、次いで、決定された関係に従って関心のあるポイントをグループ化する。関心のあるポイントの間に、多数の関係が存在する場合がある。例えば、関心のあるポイントは、近接度に基づいて互いに関係することができる。例えば、ユーザに特別サービスを提供する3つの商店店頭が、互いの1キロメートル以内にある可能性がある。ジオフェンス管理システムは、こうして、3つの店舗を互いに対するそれらの近接度に基づいて一緒にクラスタ化する。関心のあるポイントは、追加または代替として、系列に基づいて互いに関係することができる。例えば、町の中の複数の商店店頭が、町の中に複数のコーヒーショップを有するコーヒーショップのチェーンなどといった、同じ売買業者のチェーンの系列に入る場合がある。ジオフェンス管理システムは、こうして、3つの店舗を、チェーンへのそれらの系列および町の中でのそれらの近接度に基づいて一緒にクラスタ化する。別の例示の実施形態では、中心部の位置内の別個の商店店頭が、商店街の中の3つの店頭などの中心部の位置の系列に入る。ジオフェンス管理システムは、こうして、3つの店頭をそれらの商店街での中心部の位置の系列に基づいて一緒にクラスタ化する。一定の例示の実施形態では、関心のあるポイントは、ユーザの計画された経路および/または目的地に関係することができる。例えば、計画された経路に沿った、または意図した目的地における3つのガソリンスタンドが、ディスカウントの特別サービスを提供することができる。
【0015】
ジオフェンス管理システムが、一度、関連する関心のあるポイントをクラスタへと関連付けすると、ジオフェンス管理システムは、クラスタ化された関心のあるポイントの周りに単一のジオフェンス境界を画定する。すなわち、ジオフェンス管理システムは、関係を共有する識別された関心のあるポイントのうちの2つ以上を包含するジオフェンス境界を決定し、それによって、クラスタ化されたジオフェンス境界を形成する。例えば、互いの1キロメートル以内にある3つの商店店頭などの3つの商店店頭が近接度に基づいてクラスタ化される場合、ジオフェンス管理システムは、3つの商店店頭を包含するクラスタ化されたジオフェンス境界を画定する。同じように、町の中の複数の商店店頭がコーヒーショップのチェーンなどのチェーンに属する場合、ジオフェンス管理システムは、チェーンの店頭の全てを包含するクラスタ化されたジオフェンス境界を画定する。同様に、ジオフェンス管理システムは、例えば、その中に3つの関心のあるポイントを有する商店街の周りにクラスタ化されたジオフェンス境界を画定することができる。また、ジオフェンス管理システムがユーザデバイスから経路データを受け取る場合、ジオフェンス管理システムは、経路に沿った、または最終的な目的地におけるガソリンスタンドのクラスタの周りに、単一のジオフェンス境界を画定することができる。クラスタ化されたジオフェンス境界は、ジオフェンス管理システムがユーザデバイス近くの関心のあるポイントの位置に基づいてクラスタ化されたジオフェンス境界を画定するという点で、やはり動的である。
【0016】
1つまたは複数のクラスタ化されたジオフェンス境界を画定した後に、ジオフェンス管理システムは、クラスタ化されたジオフェンス境界データをユーザデバイスに伝達する。すなわち、ジオフェンス管理システムは、クラスタ化されたジオフェンス境界の座標などのジオフェンス境界情報を、ユーザデバイスに伝達する。クラスタ化されたジオフェンス境界の座標は、例えば、クラスタ化された関心のあるポイントを包含する緯度および経度のポイントを含むことができる。ユーザデバイスは、次いで、例えば、ユーザデバイスのキャッシュの中に座標を記憶する。一定の例示の実施形態では、ジオフェンス管理システムは、複数のクラスタ化されたジオフェンス境界をユーザデバイスに伝達する。例えば、ジオフェンス管理システムは、関心のあるポイントの近接度、系列、経路、目的地、または本明細書に記載される任意の他の関係に基づいて決定されるクラスタについてのジオフェンス境界のデータを伝達することができる。例では、クラスタ化されたジオフェンス境界のデータは、位置ポイントおよび位置ポイントの周りの規定された半径を含むことができる。この例では、位置ポイントは、クラスタ中の全ての関心のあるポイントの中心部の位置、クラスタ中のポイントのうちの1つの位置、クラスタ中の全ての関心のあるポイントについて関係のある位置(例えば、関心のあるポイントが位置決めされる商店街の位置)、または他の好適な位置ポイントであってよい。
【0017】
一度、クラスタ化されたジオフェンス境界が画定され、ユーザデバイスに伝達されると、ジオフェンス管理システムは、ユーザデバイスがクラスタ化されたジオフェンス境界に入ることを判定する。例えば、クラスタ化されたジオフェンス境界データの受け取りに続いて、位置アプリケーションなどの、ユーザデバイス上のアプリケーションは、クラスタ化されたジオフェンス境界の中への進入イベントについてユーザデバイスをモニタする。ユーザデバイスがクラスタ化されたジオフェンス境界に入ると、ユーザデバイスは、ジオフェンス管理システムに、進入イベントについて通知する。例えば、モバイルデバイス上の位置アプリケーションは、ジオフェンス管理システムに進入通知を伝達し、それによって、ジオフェンス管理システムに進入イベントについて警告する。ジオフェンス管理システムは、次いで、ユーザデバイスがクラスタ化されたジオフェンス境界に入ったという通知を受け取る。
【0018】
進入通知を受け取った後、ジオフェンス管理システムは、ユーザにクラスタ化されたジオフェンス警告を提供するようにユーザデバイスに通知する。すなわち、ジオフェンス管理システムは、クラスタ化されたジオフェンス境界内の関連付けされた関心のあるポイントに関して、ユーザデバイス上に警告を提供するようにユーザデバイスに命令する。ジオフェンス管理システムは、ユーザデバイスに対し、警告についての内容情報も提供する。例えば、ジオフェンス管理システムは、ユーザデバイス上の位置アプリケーションを起動する。位置アプリケーションは、次いで、ユーザデバイス上で警報、振動、または他の警告信号を提供し、次いでユーザは、それを、クラスタ化された関心のあるポイントについての内容情報とともに受け取る。すなわち、ジオフェンス管理システムは、クラスタ化された関心のあるポイントについて、ユーザに内容を基にした警告通知を提供する。
【0019】
代替の例示の実施形態では、ジオフェンス管理システム機能は、ユーザデバイス上で、部分的または全体的に、動作さもなければ実行することができる。例えば、ユーザデバイスは、関心のあるポイントについての内容とともに、関心のあるポイントについての位置データを記憶する。ジオフェンス管理システムアプリケーションなどのユーザデバイス上のアプリケーションが、関心のあるポイントが近くにあることを決定すると、アプリケーションは、関連する関心のあるポイントを一緒にクラスタ化する。アプリケーションは、次いで、クラスタ化された関心のあるポイントの周りに単一のジオフェンス境界を画定し、クラスタ化されたジオフェンス境界を形成する。ユーザデバイスがクラスタ化されたジオフェンス境界に入ると、アプリケーションは、関心のあるポイントについて記憶された内容を取り出し、クラスタ化された関心のあるポイントについての内容を基にした警告を提供する。
【0020】
内容情報は、クラスタ化された関心のあるポイントのうちの1つまたは複数についての、任意の情報を含む。例えば、クラスタ化されたジオフェンス境界がユーザにとって関心のある3つのコーヒーショップを包含する場合、内容情報は、「3つのコーヒーショップが近くにある」ということを、クラスタ化されたジオフェンス境界に進入するユーザに通知することができる。クラスタ化されたジオフェンスが、ディスカウントの特別サービスを提供する3つの店舗を有する商店街を包含する場合、例えば、内容は、「3つの特別サービスが商店街内で利用可能である」ということを、クラスタ化されたジオフェンス境界に入るユーザに知らせることができる。ジオフェンスのクラスタが、計画されたユーザの経路に沿って、またはユーザの計画された目的地においてガソリンスタンドを包含する場合、内容情報は、「3つのガソリンスタンドがあなたの経路に沿って現れる」または「3つのガソリンスタンドがあなたの目的地において利用可能である」ということを、ユーザに通知することができる。各々の場合で、内容情報は、売買業者の名前、位置、商売のタイプ、売買業者で提供される製品、売買業者についてユーザにとって利用可能な特別サービス、または他の好適な情報などの、各売買業者の位置に関する詳細を含むことができる。
【0021】
単一のジオフェンス境界へと関心のあるポイントを一緒にクラスタ化することによって、本明細書で教示される方法およびシステムは、所与の位置にいる間にユーザが受け取る警告の数を減少させる。すなわち、人口密度が高い区域を移動する間など、ユーザが出くわす可能性がある、各独立した関心のあるポイントについての単一のジオフェンスを基にした警告を受け取るよりも、本明細書に教示される方法およびシステムは、ユーザが、複数の関心のあるポイントを含む単独の警告を受け取ることを可能にする。言い換えれば、さもなければ各々が警告をトリガすることになる複数の関心のあるポイントが、単一のクラスタ化された警告へと統合される。さらに、本明細書に教示される方法およびシステムを採用するユーザデバイスが、多くのジオフェンスを基にした警告として受け取り、記憶し、処理する必要がないので、本明細書に教示される方法およびシステムは、ユーザデバイスのバッテリ消費を減少させるだけでなく、記憶スペースを節約する。例えば、ユーザデバイスは、そのキャッシュ中に、多くのジオフェンス座標として記憶する必要がなく、ユーザデバイスは、ユーザが出くわす可能性があるあらゆる関心のあるポイントをユーザに警告するバッテリ電力を消耗する必要がない。
【0022】
例示的なシステムアーキテクチャ
図面を次に参照すると、図面を通して、同様の数値は同様の(しかし、必ずしも同一でない)要素を表しており、例示の実施形態が詳細に記載される。
【0023】
図1は、一定の例示の実施形態に従う、ジオフェンスを基にした警告通知をクラスタ化するためのシステムを表わすブロック図である。
図1に表わされるように、例示的な動作環境100は、ユーザネットワークコンピューティングデバイス110、ジオフェンス管理コンピューティングシステム120、および位置マーケティングコンピューティングシステム130を含む。
【0024】
各ネットワーク105は、(デバイス110、120、および130を含む)ネットワークデバイスがデータを交換することができる、有線または無線通信手段を含む。例えば、各ネットワーク105としては、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、イントラネット、インターネット、携帯電話ネットワーク、またはこれらの任意の組合せが挙げられる。例示の実施形態の議論を通して、「データ」および「情報」という用語は、テキスト、画像、音声、映像、またはコンピュータを基にした環境中に存在する可能性がある任意の他の形式の情報のことをいうために、本明細書では互換的に使用されることを理解されたい。一部の実施形態では、デバイスに関連付けられるユーザ101は、本明細書に記載される技法の利益を取得するために、アプリケーションをインストールし、かつ/または特徴選択を行わなければならない。
【0025】
各ネットワークデバイス110、120、および130は、ネットワーク105にわたってデータを送受信することが可能な通信モジュールを有するデバイスを含む。例えば、各ネットワークデバイス110、120、および130としては、サーバ、デスクトップコンピュータ、ラップトップコンピュータ、タブレットコンピュータ、1つまたは複数のプロセッサが中に組み込まれるかつ/もしくはそこに結合されるテレビ、スマートフォン、ハンドヘルドコンピュータ、携帯情報端末(PDA)、または任意の他の有線もしくは無線のプロセッサ駆動デバイスが挙げられる。
図1に表わされた例示の実施形態では、ネットワークデバイス110、120、および130は、それぞれ、エンドユーザまたは消費者、売買業者システムオペレータ、ジオフェンス管理システムオペレータ、特別サービスプロバイダシステムオペレータ、および金融口座発行業者システムオペレータによって操作される。
【0026】
ユーザ101は、分散ネットワーク105を介して、文書またはウェブページを閲覧、ダウンロード、アップロード、さもなければアクセスするために、ウェブブラウザアプリケーションまたはスタンドアロンアプリケーションなどの通信アプリケーション111を使用することができる。ネットワーク105は、(デバイス110、120、および130を含む)ネットワークデバイスがデータを交換することができる、有線もしくは無線通信システムまたはデバイスを含む。例えば、ネットワーク105としては、ローカルエリアネットワーク(LAN)、ワイドエリアネットワーク(WAN)、イントラネット、インターネット、ストレージエリアネットワーク(SAN)、パーソナルエリアネットワーク(PAN)、メトロポリタンエリアネットワーク(MAN)、無線ローカルエリアネットワーク(WLAN)、仮想プライベートネットワーク(VPN)、セルラもしくは他のモバイル通信ネットワーク、ブルートゥース(登録商標)、近距離無線通信(NFC)、もしくはこれらの任意の組合せ、または信号、データ、および/もしくはメッセージの通信を円滑にする任意の他の好適なアーキテクチャもしくはシステムが挙げられる。
【0027】
通信アプリケーション111は、位置マーケティングシステム130の位置マーケティングウェブサーバ131およびジオフェンス管理システム120のウェブサーバ121を含む、ネットワーク105に接続されるウェブサーバまたは他のコンピューティングデバイスと相互作用することができる。
【0028】
ユーザデバイス110は、例えば、通信アプリケーション111およびネットワーク105を介してジオフェンス管理システム120および位置マーケティングシステム130と相互作用および通信するように構成される位置アプリケーション112を含む。例えば、位置アプリケーション112は、ジオフェンス管理システム120および位置マーケティングシステム130との間でデバイス位置データを送受信するために、使用および構成することができる。本明細書に使用する「位置データ」は、ユーザデバイス110の地理的な所在を示す、電子通信ネットワーク中で処理される、または電子通信サービスにより処理される任意のデータを含むことができる。例えば、位置データは、ユーザデバイス110についての緯度および経度または関心のあるポイントの位置を含むことができる。
【0029】
位置アプリケーション112は、ユーザデバイス110と組み合わせて、ユーザデバイス110の位置の決定を円滑にする、位置を基にしたサービスプロバイダと通信および相互作用するようにも構成することができる。例えば、位置アプリケーション112は、位置を基にしたサービスとともに、ユーザデバイス110の位置を決定するために、WiFi信号およびセルラ通信塔に依拠することができる。追加または代替として、位置アプリケーション112は、衛星、全地球測位システム(GPS)位置決め技術、ネットワークロケーションプロバイダ(NLP)、マップアプリケーション、またはユーザデバイス110についての位置データを決定するための、ユーザデバイス110の他の位置識別技術に依拠することができる。例えば、一定の実施形態では、位置アプリケーション112は、ジオフェンス管理システム120の位置プロバイダ123と通信および相互作用することができる。位置アプリケーション112は、ジオフェンス管理システム120または位置マーケティングシステム130との間で警告内容を送受信するようにも構成される。例えば、位置アプリケーション112は、位置マーケティングシステム130の、クーポン、特殊な特別サービス、またはマーケティング活動に関連する他のアイテムに関する内容を受け取るように構成される。位置アプリケーション112は、ユーザ101にとって関心のある可能性がある公園または他のランドマークの名前など、マーケティング活動に関連しない内容を受け取るようにも構成される。
【0030】
ユーザデバイス110は、通信アプリケーション111および位置アプリケーション112によってアクセス可能な、データ記憶ユニット114を含む。一定の実施形態では、例えば、データ記憶ユニット114は、ユーザの任意選択で、ユーザデバイス110が利用可能な、または利用可能であった、Wi-Fiホットスポットまたはセルラ通信塔などのデバイスの位置に関するデータを記憶する。ユーザデバイス110のデータ記憶ユニット114は、位置データに関連する内容も記憶することができる。例示的なデータ記憶ユニット114は、1つまたは複数の有形のコンピュータ可読媒体を含むことができる。データ記憶ユニット114は、ユーザデバイス110上に記憶することができ、またはユーザデバイス110と論理的に結合することができる。例えば、データ記憶ユニット114は、オンボードのフラッシュメモリおよび/または1つもしくは複数の取り外し可能なメモリカードもしくは取り外し可能なフラッシュメモリを含むことができる。
【0031】
ジオフェンス管理コンピューティングシステム120は、ウェブサーバ121および関連付けられたウェブサイト122を含む。ウェブサーバ121は、例えば、ユーザ101の代わりにジオフェンスを管理するためジオフェンス管理コンピューティングシステム120が採用する、コンピュータ実装されるシステムを表すことができる。一定の例示の実施形態では、ユーザ101がウェブサーバ121のウェブサイト122にアクセスして、関心のあるポイントをジオフェンス管理システム120と関連付ける。ウェブサーバ121を通してなどの、ジオフェンス管理システム120は、ネットワーク105を介した位置マーケティングシステム130、売買業者システム(図示せず)、または関心のあるポイントについての位置データを提供する任意の他のシステムから、関心のあるポイントの位置データを受け取るために使用し、構成することもできる。ジオフェンス管理システム120は、同じように、関心のあるポイントに関する内容情報を受け取って記憶するために使用し、構成することができる。一定の実施形態では、ジオフェンス管理システム120は、例えば、ユーザ一般またはある決まったユーザ101にとって関心のある可能性がある関心のあるポイントについての位置データを取得してインデックス付けする、ウェブクローラを含む。
【0032】
ジオフェンス管理システム120は、アクセス可能なデータ記憶ユニット124を含む。一定の実施形態では、例えば、データ記憶ユニット124は、ユーザデバイス110が利用可能な、または利用可能であった、セルラ通信塔およびWi-Fi信号などのユーザデバイスについての位置データを記憶する。データ記憶ユニット124は、例えば、位置マーケティングシステム130から受け取った関心のあるポイントの内容情報を記憶することもできる。例示的なデータ記憶ユニット124は、1つまたは複数の有形のコンピュータ可読媒体を含むことができる。データ記憶ユニット124は、ユーザデバイス110上に記憶することができ、またはユーザデバイス110と論理的に結合することができる。例えば、データ記憶ユニット124は、オンボードのフラッシュメモリおよび/または1つもしくは複数の取り外し可能なメモリカードもしくは取り外し可能なフラッシュメモリを含むことができる。
【0033】
ジオフェンス管理システム120は、示されるように、位置アプリケーション112を独立して実行および動作させることができる。追加または代替として、ジオフェンス管理システム120を、位置アプリケーション112内で完全にまたは部分的に実行することができ、またはジオフェンス管理システム120を、ユーザデバイス110上で位置アプリケーション112に対する随伴アプリケーションとして実行および動作させることができる。ジオフェンス管理システム120は、例えば、位置アプリケーション112から受け取った位置データに基づいて、ユーザデバイス110の位置を決定する位置プロバイダ123を使用することができる。位置プロバイダは、WiFi信号、セルラ通信データ、衛星、全地球測位システム(GPS)位置決め技術、ネットワークロケーションプロバイダ(NLP)、マップアプリケーション、またはユーザデバイスの位置を決定するための、ユーザデバイス110の他の位置識別技術に依拠することができる。
【0034】
位置マーケティングシステム130は、位置マーケティングサーバ131および関連付けられたウェブサイト132を含む。位置マーケティングシステムサーバ131は、ジオフェンス管理システム120に関心のあるポイントの位置データを提供するため位置マーケティングシステム130が採用する、コンピュータ実装されるシステムを表すことができる。位置マーケティングシステムサーバ131は、関心のあるポイントに関連付けられた警告内容を生成する、コンピュータ実装されるシステムを表すこともできる。一定の例示の実施形態では、位置マーケティングシステム130は、ジオフェンス管理システム120を、関心のあるポイントの位置データおよび内容情報を集めるために使用することができる、任意の数のシステムを表すことができる。例えば、位置マーケティングシステム130は、製品製造業者またはサービスプロバイダのマーケティングシステムであってよい。位置マーケティングシステム130は、ユーザの活動の好みおよび履歴データを提供できる、ユーザのソーシャルネットワークシステムであってよい。位置マーケティングシステム130は、クーポン集積業者またはプロバイダであってよい。位置マーケティングシステム130は、マッピングプログラムであってもよい。位置マーケティングシステム130は、ジオフェンス管理システム120が関心のあるポイントの位置を規定し、関心のあるポイントについての内容情報を取得するために使用できる、位置データおよび内容情報を提供できる、任意の他のサービスまたはシステムであってよい。
【0035】
位置マーケティングシステム130は、任意の利用可能な技術を介して、ジオフェンス管理システム120またはユーザデバイス110と通信することができる。これらの技術としては、限定しないが、ネットワーク105を介したインターネット接続、電子メール、テキスト、インスタントメッセージ、または他の好適な通信技術が挙げられる。位置マーケティングシステム130は、位置マーケティングシステム130のサーバ131によりアクセス可能なデータ記憶ユニット134を含むことができる。データ記憶ユニット133は、1つまたは複数の有形のコンピュータ可読記憶デバイスを含むことができる。データ記憶ユニット134は、位置マーケティングシステム130上に格納することができ、または位置マーケティングシステム130と論理的に結合することができる。例えば、データ記憶ユニット134は、オンボードのフラッシュメモリおよび/または1つもしくは複数の取り外し可能なメモリカードもしくは取り外し可能なフラッシュメモリを含むことができる。
【0036】
図1に示されるネットワーク接続は例示的であり、コンピュータとデバイスの間に通信リンクを確立する他の手段を使用できることを理解されよう。さらに、本開示の利益を有する当業者は、
図1に図示されるユーザデバイス110、ジオフェンス管理システム120、および位置マーケティングシステムが、いくつかの他の好適なコンピュータシステム構成のうちのいずれかを有することができることを理解されよう。例えば、携帯電話またはハンドヘルドコンピュータとして具現化されるユーザデバイス110は、本明細書に記載される全ての構成要素を含んでも含まなくてもよい。
【0037】
例示のプロセス
例示の動作環境100の構成要素が、
図2〜
図4に図示される例示の方法を参照して、以下で記載される。
【0038】
図2は、一定の例示の実施形態に従う、ジオフェンス管理システムにトランザクションを伝える一方、特別サービスを受けるための方法を表わすブロック流れ図である。
【0039】
図1および
図2を参照して、ブロック205では、ジオフェンス管理システム120が、関心のあるポイントについての位置データを取得および記憶する。すなわち、ジオフェンス管理システム120は、様々なユーザ101の幅広い範囲にとって関心がある可能性がある地理的な位置についての位置情報を取得および記憶する。例えば、位置は、特定の商店店頭、小売業者、レストラン、ランドマーク、建物、公園、鉄道の駅、空港、港、スポーツアリーナ、または1人または複数のユーザ101にとって関心がある可能性がある任意の他の位置を含むことができる。典型的には、位置データは、各関心のあるポイントの緯度および経度座標を含む。追加または代替として、位置データは、各関心のあるポイントの所在地住所または英国陸地測量部グリッド照合情報など、関心のあるポイントについての任意の他の好適な位置データを含むことができる。一定の例示の実施形態では、ジオフェンス管理システム120は、そのような位置データを関心のあるポイントについての緯度および経度座標に変換する。位置データは、関心のあるポイントの名前など、特定の関心のあるポイントに関する情報を含むこともできる。
【0040】
ジオフェンス管理システム120は、任意の情報源から位置データを取得する。例えば、位置マーケティングシステム130は、位置マーケティングシステム130のマーケティング活動に関連する関心のあるポイントについての位置データを、ジオフェンス管理システム120に提供する。追加または代替として、売買業者は、売買業者の商店店頭についての位置情報をジオフェンス管理システム120に提供することができる。例えば、売買業者は、売買業者に関連付けられたPOS端末についての位置データをジオフェンス管理システム120に提供することができる。
【0041】
位置データに加えて、ジオフェンス管理システムは、関心のあるポイントに関連する内容情報を取得する。例えば、位置マーケティングシステム130は、コーヒーショップのチェーンの全ての商店店頭についての位置データ、ならびにチェーンが提供しているクーポンまたは他の特殊な特別サービスについての内容を提供することができる。特別サービスの内容は、特別サービスの条件および制限などの、特別サービスについての詳細を含むことができる。内容は、全ての売買業者の店頭における「コーヒー20%オフ」などの特別サービスを記載することもできる。特別サービスは、例えば、チケット、クーポン、割引、割り戻し、割引券、特殊な特別サービス、前払いの特別サービス、または製品もしくはサービスを購入するときの金銭的な割引または割り戻しと交換可能な任意の他のタイプの販売促進物などの任意のタイプの特別サービスであってよい。オンラインの小売業者または売買業者では、例えば、特別サービスは、任意のタイプのクーポンコード、販売促進または宣伝コード、割引コード、キーコード、報奨コード、または金銭的な割引と交換される任意の他のタイプのコードであってよい。
【0042】
追加または代替として、一定の例示の実施形態では、ジオフェンス管理システム120は、関心のあるポイントの位置データおよび関連付けられた内容を集める。例えば、ジオフェンス管理システム120は、ユーザ101にとって関心がある可能性がある関心のあるポイントの位置データを収集する。一定の例示の実施形態では、ユーザ101は、ジオフェンス管理システム120のウェブサイト122を通してなどで、ジオフェンス管理システム120に関心のあるポイントの名前を提供することができる。ジオフェンス管理システム120は、次いで、関心のあるポイントについての位置データ、ならびに関心のあるポイントに該当する任意の内容を決定する。一定の例示の実施形態では、ジオフェンス管理システム120は、ユーザ101の任意選択で、ある決まったユーザ101についての関心のあるポイントを識別するために、ユーザ101のユーザ履歴に依拠することができる。ユーザ履歴としては、例えば、ユーザのソーシャルネットワークの内容、ユーザの内容、購入履歴、検索履歴、またはユーザのオンライン活動に関連する任意の他のアイテムが挙げられる。例えば、ユーザ101が頻繁に電子装置を購入する場合、ジオフェンス管理システム120は、ユーザ101の任意選択で、ユーザ101の代わりに、電器店についての位置データを取得することができる。一定の例示の実施形態では、ジオフェンス管理システム120は、関心のあるポイントについての位置データ(および内容情報)を取得するために、ウェブクローラに依拠することができる。
【0043】
ジオフェンス管理システム120が関心のあるポイントについての位置データを一度取得すると、ジオフェンス管理システム120は、アクセス可能なデータベース中に位置データを記憶する。ジオフェンス管理システム120は、関心のあるポイントについての内容情報、ならびに関心のあるポイントに関する任意の他の情報も記憶する。すなわち、ジオフェンス管理システム120は、ユーザデバイス110が関心のあるポイントのうちの1つまたは複数の近くにあるとき、データおよび内容を取り出して使用することができるように、位置データおよび内容を記憶する。例えば、ジオフェンス管理システム120は、ジオフェンス管理システム120のデータ記憶ユニット124中に、位置データおよび内容情報を記憶する。
【0044】
ブロック210では、ジオフェンス管理システム120は、ユーザの任意選択で、ユーザデバイス110の位置を取得する。すなわち、ある決まったユーザについてのジオフェンスを基にした警告を管理するため、ジオフェンス管理システム120は、ユーザの任意選択で、ユーザ101の携帯電話など、ユーザデバイス110の位置を受け取ってモニタする。ユーザデバイス110上の位置アプリケーション112は、例えば、ユーザデバイス110の緯度および経度座標などの、ユーザデバイス110の位置を決定する。例えば、位置アプリケーション112は、位置を基にしたサービスと協調してユーザデバイス110の位置を決定する。追加または代替として、位置アプリケーション112は、全地球測位システムに依拠して、ユーザデバイス110の位置を決定することができる。追加または代替として、ユーザデバイス110についての位置は、ユーザデバイス110についての所在地住所またはユーザデバイス110についての英国陸地測量部グリッド照合情報などの、任意の他の好適な位置データを含むことができる。位置アプリケーション112は、例えば、位置データをジオフェンス管理システム120に伝達し、ジオフェンス管理システムが位置データを受け取る。一定の実施形態では、ユーザ101は、ジオフェンス管理システム120がユーザデバイス110の位置を取得するために、ユーザデバイス110上に設定を提供する、または調整する必要がある場合がある。例えば、ユーザ101は、位置アプリケーション112がユーザデバイス110の位置情報を決定できるように、位置アプリケーション112の設定を提供する、または調整する必要がある場合がある。
【0045】
一定の例示の実施形態では、ジオフェンス管理システム120は、位置データをユーザデバイス110についての緯度および経度座標に変換する。一定の例示の実施形態では、ジオフェンス管理システム120および関連付けられた位置プロバイダ123は、ユーザデバイス110の位置アプリケーション112と組み合わせて、ユーザの任意選択でユーザデバイス110の位置を決定およびモニタする、位置を基にしたサービスとして動作する。例えば、ジオフェンス管理システム120は、位置プロバイダ123を使用して、ユーザデバイス110の位置アプリケーション112から受け取った位置データに基づいてユーザデバイス110の位置を決定およびモニタする。
【0046】
一定の例示の実施形態では、位置アプリケーション112などの、ユーザデバイス110上のアプリケーションは、ユーザデバイス110についての位置データを周期的にリフレッシュする場合がある。すなわち、ユーザデバイス110上のアプリケーションは、位置を基にしたサービスまたは全地球測位システムと共同で、設定で変えることができる間隔でユーザデバイス110の位置を決定することができる。位置データをリフレッシュすることにより、ユーザデバイス110上のアプリケーションは、デバイスが異なる位置に動くとき、新しい位置データを取得する。一定の例示の実施形態では、位置アプリケーション112は、新しい位置データが取得されると、ユーザデバイス110の位置データをジオフェンス管理システム120に伝達する。追加または代替として、ユーザデバイス110上の位置アプリケーション112は、新しい位置データがリフレッシュ期間に取得されたかどうかに関わらず、設定で変えることができる間隔で、位置データをジオフェンス管理システム120に周期的に伝達することができる。ジオフェンス管理システム120は、次いで、ユーザデバイス110についての位置情報を受け取る。
【0047】
ブロック215では、ジオフェンス管理システム120は、ユーザデバイス110の位置に基づいて、特定の関心のあるポイントを識別する。すなわち、ユーザデバイス110の位置を決定した後、ジオフェンス管理システム120は、関心のあるポイントについての位置データに依拠して、ユーザデバイス110の決定された位置の近くまたは近傍にある関心のあるポイントを識別する。例えば、ジオフェンス管理システム120は、データ記憶ユニット124上のデータベース中の関心のあるポイントの位置データにアクセスして、ユーザデバイス110の近くの関心のあるポイントを識別する。例えば近傍の関心のあるポイントは、ユーザデバイス110の周りの、設定で変えることができる半径内にある一部または全部の関心のあるポイントを含むことができる。例えば、近いまたは近傍の関心のあるポイントがユーザデバイス110の10キロメートルの半径以内にあるものであるということを、ジオフェンス管理システム120が決定することができる。
【0048】
ある決まった関心のあるポイントがユーザデバイス110の周りの設定で変えることができる半径内に入るかどうかを判定するため、ジオフェンス管理システム120は、ユーザデバイス110についての受け取った位置データを、ジオフェンス管理システム120が取得した関心のあるポイントについての位置データと比較することができる。例えば、ジオフェンス管理システム120は、ユーザデバイス110の緯度および経度座標を、ジオフェンス管理システム120がジオフェンス管理システム120のデータ記憶ユニット124上に保持する関心のあるポイントについての緯度および経度座標と比較することができる。関心のあるポイントについての位置データが、関心のあるポイントをユーザデバイスの周りの設定で変えることができる半径内に位置決めする場合、例えば、ジオフェンス管理システム120は、関心のあるポイントがユーザデバイス110(したがって、おそらくユーザ)の近くにあることを決定する。
【0049】
一定の例示の実施形態では、ジオフェンス管理システム120は、ジオフェンス管理システム120が予期する、ユーザデバイス110が近づくことになる、特定の関心のあるポイントを識別することができる。すなわち、ジオフェンス管理システム120は、ユーザの任意選択で、ユーザデバイス110が特定の関心のあるポイントに近づくことになることを示す情報を受け取る、または取得することができる。例えば、ユーザ101は、ユーザデバイス上の、マッピングアプリケーション(図示せず)に目的地情報を入力することができる。ユーザデバイスの現在の位置および目的地の位置に基づいて、マッピングアプリケーションは、ユーザデバイス110についての経路を決定する。位置アプリケーション112は、例えば、マッピングアプリケーションから計画された経路および目的地情報を受け取り、次いで、計画された経路および目的地情報をジオフェンス管理システム120に伝達するように構成され得る。ジオフェンス管理システム120は、ユーザデバイス110について、計画された経路および意図された目的地情報を受け取る。ジオフェンス管理システム120は、次いで、計画された経路に沿った、また予想される目的地における特定の関心のあるポイントを識別することができる。例えば、ジオフェンス管理システム120は、計画された経路に沿った、また予想される目的地における特定の関心のあるポイントを識別するために、位置プロバイダ123を使用することができる。一定の例示の実施形態では、位置アプリケーション112は、ユーザデバイス110にとって、マッピングアプリケーションとして動作することができる。
【0050】
ブロック220では、ジオフェンス管理システム120は、クラスタ化されたジオフェンス境界内の関心のあるポイントを関連付ける(クラスタ化する)。すなわち、ジオフェンス管理システム120は、ユーザデバイスの近くにある(または近くにくると予想される)識別された関心のあるポイントの間の関係を決定する。例えば、2つ以上の関心のあるポイントを、それらの互いの近接度、それらの互いの系列、ユーザデバイス110の計画された経路もしくは目的地とのそれらの系列、または任意の他の決定された関係に基づいて一緒にグループ化することができる。ジオフェンス管理システム120は、次いで、関連する関心のあるポイントの周りに単一のジオフェンス境界を画定して、クラスタ化されたジオフェンス境界を形成する。ジオフェンス管理システム120は、クラスタ化されたジオフェンス境界データをユーザデバイス110にやはり伝達する。一定の例示の実施形態では、ジオフェンス管理システム120が、ある決まったユーザのユーザデバイスの近くの関心のあるポイントに基づいてクラスタ化されたジオフェンスを画定するので、例えば、ジオフェンス管理システム120は、ある決まったユーザについてのクラスタ化されたジオフェンスを動的に作り出す。ブロック220の詳細は、
図3を参照して下でさらに詳細に記載される。
【0051】
ブロック225では、ジオフェンス管理システム120は、ユーザデバイス110がクラスタ化されたジオフェンス境界に入ったと判定する。すなわち、ジオフェンス管理システム120は、ユーザデバイス110の第2の位置に基づいて、ユーザデバイス110がジオフェンス境界上にいる、またはジオフェンス境界内にいることを決定する。例えば、位置アプリケーション112など、ユーザデバイス110上のアプリケーションは、ユーザデバイス110の位置が本明細書で記載されるように、ユーザデバイス110の位置をモニタする。一定の例示の実施形態では、位置アプリケーション112は、デバイスの位置データを設定で変えることができる間隔で周期的にリフレッシュすることができる。位置アプリケーション112は、ユーザデバイス110の位置データをクラスタ化されたジオフェンス境界データと比較し、ユーザデバイス110がクラスタ化されたジオフェンス境界上にいる、またはクラスタ化されたジオフェンス境界内にいることを決定する。位置アプリケーション112は、次いで、ジオフェンス管理システム120に進入イベントの通知を伝達する。すなわち、位置アプリケーション112は、ユーザデバイスがクラスタ化されたジオフェンス境界上にいる、またはクラスタ化されたジオフェンス境界内にいることをジオフェンス管理システム120に通知する。
【0052】
追加または代替として、位置アプリケーション112などの、ユーザデバイス110上の位置アプリケーション112は、ユーザデバイス110についての位置データをジオフェンス管理システム120に伝達し、ジオフェンス管理システム120は、ユーザデバイスがジオフェンス境界上にいる、またはジオフェンス境界内にいることを決定する。例えば、位置アプリケーション112は、本明細書に記載されるような、設定で変えることができる位置データリフレッシュ時間でなどの、設定で変えることができる間隔で、ユーザデバイス110についての位置データをジオフェンス管理システム120に周期的に伝達する。ユーザデバイス110から受け取った位置データに基づいて、ジオフェンス管理システム120は、ユーザデバイス110の位置データをクラスタ化されたジオフェンス境界データと比較する。ジオフェンス管理システム120は、次いで、ユーザデバイス110がクラスタ化されたジオフェンス境界上にいる、またはクラスタ化されたジオフェンス境界内にいることを決定する。
【0053】
ブロック230では、ジオフェンス管理システム120は、ユーザ101にクラスタ化されたジオフェンス警告を提供するように、ユーザデバイス110に通知する。すなわち、ユーザデバイス110がクラスタ化されたジオフェンス境界上にいる、またはクラスタ化されたジオフェンス境界内にいるという決定に基づいて、ジオフェンス管理システム120は、クラスタ化されたジオフェンス境界内に包含される関連付けされた関心のあるポイントのうちの1つまたは複数に関して、ユーザ101に警告通知を提供するようにユーザデバイス110に知らせる。例えば、ジオフェンス管理システム120は、ユーザデバイス110の位置アプリケーション112に通知を伝達し、それによって位置アプリケーション112を起動する。位置アプリケーション112は、次いで、ユーザ101に、ユーザデバイス110上で警告を提供する。
【0054】
警告は、任意のタイプの設定で変えることができる警告であってよい。例えば、位置アプリケーション112は、可聴警告、振動、(テキストメッセージなどの)可視警告、またはこれらの任意の組合せを提供することができる。一定の例示の実施形態では、位置アプリケーション112は、マップ上または電子メール中など、ユーザデバイス110のディスプレイ上に関心のあるポイントの詳細を提示することができる。位置アプリケーション112は、電子メールの送信、プッシュ通知、テキストメッセージ、またはユーザ101への別の通信などの、任意の他の設定で変えることができる警告プロシージャに依拠することもできる。位置アプリケーション112は、もっと後のユーザのために警告を記憶することもできる。一定の例示の実施形態では、ユーザ101は、ユーザデバイス110上でユーザの好みを設定または変更することによって、警告を所望に応じて構成することができる。
【0055】
ジオフェンス管理システム120は、警告が内容を基にした警告であるように、警告に関連付けられた内容情報も提供する。例えば、ユーザ101にクラスタ化されたジオフェンス警告を提供するようにユーザデバイス110に通知するとき、ジオフェンス管理システム120は、警告とともに、ユーザデバイス110に内容を伝達する。位置アプリケーション112は、例えば、内容情報ならびに警告を受け取り、内容をユーザ101に警告の部分として提供する。追加または代替として、ジオフェンス管理システム120は、クラスタ化されたジオフェンス境界において、またはクラスタ化されたジオフェンス境界内で、位置アプリケーション112に進入イベントを通知し、位置アプリケーション112は、警告に関連付ける内容を決定する。例えば、位置アプリケーション112は、ブロック220(また、
図3のブロック320)に記載されるように、警告内容ならびにクラスタ化されたジオフェンス境界データを受け取る。位置アプリケーション112は、次いで、ユーザデバイス110のデータ記憶ユニット114の中に内容を記憶する。ジオフェンス管理システム120が、位置アプリケーション112に進入イベントを知らせると、位置アプリケーション112は、例えば、記憶された内容情報を識別して、警告に添付する。
【0056】
内容情報は、クラスタ化された関心のあるポイントのうちの1つまたは複数についての、任意の設定で変えることができる情報を含む。例えば、クラスタ化されたジオフェンス境界がユーザにとって関心のある3つのコーヒーショップを包含する場合、内容情報は、「3つのコーヒーショップが近くにある」ということを、クラスタ化されたジオフェンス境界に進入するユーザに知らせることができる。クラスタ化されたジオフェンスが、ディスカウントの特別サービスを提供する3つの店舗を有する商店街を包含する場合、例えば、内容は、「3つの特別サービスが商店街内で利用可能である」ということを、クラスタ化されたジオフェンス境界に入るユーザに知らせることができる。ジオフェンスのクラスタが、計画されたユーザの経路に沿って、またはユーザの計画された目的地においてガソリンスタンドを包含する場合、内容情報は、「3つのガソリンスタンドがあなたの経路に沿って現れる」または「3つのガソリンスタンドがあなたの目的地において利用可能である」ということを、ユーザに知らせることができる。各々の場合で、内容情報は、売買業者の名前、位置、商売のタイプ、売買業者で売られる製品、売買業者についてユーザにとって利用可能な特別サービス、または他の好適な情報などの、各売買業者の位置に関する詳細を含むことができる。
【0057】
ブロック235では、ユーザ101は、クラスタ化されたジオフェンス通知を受け取る。すなわち、ユーザ101は、可聴警告、振動、可視警告、プッシュ通知、テキストメッセージ、またはクラスタ化されたジオフェンス警告に関連付けられたユーザデバイス110からの別の通信もしくは信号を受け取る。ユーザ101は、警告に関連付けられた内容も受け取る。例えば、ジオフェンス管理システム120が関心のあるポイントをどのようにクラスタ化したかに応じて、位置アプリケーション112は、警告の部分としてユーザ101に、「3つのコーヒーショップが近くにある」、「3つの特別サービスが商店街内で利用可能である」、「3つのガソリンスタンドがあなたの経路に沿って現れる」、または「3つのガソリンスタンドがあなたの目的地において利用可能である」ということを知らせる。理解できるように、ユーザ101は、クラスタ化された関心のあるポイントのうちの1つまたは複数に関連する任意の内容を受け取ることができる。
【0058】
本明細書に記載される例および実施形態がユーザ101へクラスタ化されたジオフェンス警告を提供することを説明するが、ジオフェンス管理システム120は、ある決まったユーザ101に複数のクラスタ化されたジオフェンス警告を提供できることを理解されよう。例えば、ユーザデバイス110上で部分的または全体的に動作する、さもなければ実行するジオフェンス管理システム120は、ユーザデバイス110の位置を取得する。ユーザデバイス110の位置に基づいて、ジオフェンス管理システム120は、2つ以上の近傍の関心のあるポイントを、それらの互いへの近接度に基づいてクラスタ化することができる。例えば、ジオフェンス管理システム120は、同じユーザデバイス110の位置決定に基づいて、2つ以上の近傍の関心のあるポイントを、それらの売買業者のチェーンの系列に基づいて別個にクラスタ化することができる。ジオフェンス管理システム120は、次いで、クラスタ化された関心のあるポイントについての別個のジオフェンス境界、すなわち一方は近接度に基づいてクラスタ化された関心のあるポイントを包含し、他方は売買業者のチェーンの系列に基づいてクラスタ化されたそれらの関心のあるポイントを包含する境界を画定することができる。一定の例示の実施形態では、ジオフェンス管理システム120は、クラスタ化されたジオフェンス境界および内容を基にした警告、ならびに従来型のジオフェンス警告を提供する。
【0059】
図3は、一定の例示の実施形態に従う、ジオフェンス管理システム120でユーザアカウントを確立するための方法を表わすブロック流れ図である。
【0060】
図1および
図2を参照して、方法220のブロック305中で、ジオフェンス管理システム120は、識別された関心のあるポイントの間の関係を決定する。すなわち、ブロック215を参照して上に記載されるように、特定の関心のあるポイントを識別した後に、ジオフェンス管理システム120は、関心のあるポイントについての情報を使用して、関心のあるポイントの間の関係を識別する。例えば、ジオフェンス管理システム120は、位置マーケティングシステム130から受け取りデータ記憶ユニット124上に記憶された情報に依拠して、関心のあるポイントの間の関係を識別する。一定の他の例示の実施形態では、ジオフェンス管理システム120は、ウェブクローラを使用して、識別された関心のあるポイントに関する情報を位置決めすることができる。すなわち、ジオフェンス管理システム120は、ジオフェンス管理システム120に関連付けられた検索エンジン(図示せず)を使用して、2つの位置が関係を共有することを決定することができる。
【0061】
関心のあるポイントの間には、多数の関係が可能である。一定の例示の実施形態では、関心のあるポイントは、近接度に基づいて互いに関係する。すなわち、識別された関心のあるポイントは、それらの互いへの距離に基づいて互いに関係する。識別された関心のあるポイントの間の近接度を決定するために、ジオフェンス管理システム120は、識別されたポイントの位置データを比較する。すなわち、関心のあるポイントの互いへの近接度は、互いに対するそれらの位置と位置の間の距離の関数である。例えば、ジオフェンス管理システム120は、ユーザ101に特別サービスを提供する3つの識別された商店店頭が互いの1キロメートル以内にあることを決定することができる。
【0062】
追加または代替として、関心のあるポイントは、系列に基づいて互いに関係する場合がある。すなわち、位置マーケティングシステム130または関心のあるポイントに関する売買業者から取得される情報など、関心のあるポイントに関して取得される情報に基づいて、ジオフェンス管理システム120は、2つ以上の関心のあるポイントが互いに系列を共有することを決定することができる。例えば、ジオフェンス管理システム120は、ユーザデバイスの近くの複数の商店店頭が、コーヒーショップのチェーンなど、同じ売買業者のチェーンの系列に入ることを判定することができる。ジオフェンス管理システム120は、こうして、3つのコーヒーショップがコーヒーショップのチェーンへの系列を共有することを決定する。
【0063】
追加または代替として、ジオフェンス管理システム120は、中心部の位置内の別個の商店店頭が中心部の位置の系列に入ることを判定することができる。すなわち、位置が互いに近接していると決定することを行って、または行わずに、ジオフェンス管理システム120は、2つ以上の関心のあるポイントが同じ位置に存在することを決定することができる。例えば、特別サービスを提供する3つの商店店頭が、ショッピングモール、ショッピングセンタ、または任意のタイプのショッピング複合施設の系列にそれぞれ入る場合がある。ジオフェンス管理システム120は、こうして、ショッピングモールまたはショッピングセンタ内にある3つの商店店頭について、ショッピングモールまたはショッピングセンタの系列に入る関係を決定する。
【0064】
追加または代替として、ジオフェンス管理システム120は、関心のあるポイントに関連付けられた特別サービスの内容に基づいて、関心のあるポイントの系列を決定することができる。すなわち、ユーザデバイス110の近くのいくつかの識別された関心のあるポイントのうち、2つがディスカウントの特別サービスを提供する場合がある。例えば、ユーザデバイス110の近くにあると識別された5つのレストランのうち、2つの系列でないレストランが、食品の購入でディスカウントを提供する場合がある。ジオフェンス管理システム120は、したがって、2つのさもなければ系列でないレストランが、2つのレストランの両方が特別サービスを提供しているという事実に基づいて系列に入るということを判定することができる。
【0065】
追加または代替として、ジオフェンス管理システム120は、ユーザ101の計画された経路または目的地に基づいて系列の関係を決定することができる。例えば、ユーザ101が、本明細書に記載されるようにユーザデバイス110上でマッピングアプリケーションに目的地情報を入力することができる。経路に沿って識別された関心のあるポイントに基づいて、例えば管理システム120は、関心のあるポイントのうちの2つ以上を、計画された経路に基づいて系列に入ることを判定することができる。例えば、経路に沿ったいくつかの識別された関心のあるポイントのうちで、ジオフェンス管理システム120は、2つのさもなければ系列でないガソリンスタンドが、それらがユーザデバイス110(および、おそらくユーザ101)の計画された経路に沿って位置決めされるので、実際には系列に入ることを判定することができる。同様に、識別された関心のあるポイントが互いに近接していると決定することを行って、または行わずに、ジオフェンス管理システム120は、いくつかの関心のあるポイントがユーザデバイス110の目的地にあることを決定することができる。ジオフェンス管理システム120は、こうして、目的地における関心のあるポイントが、ユーザデバイス110の目的地におけるそれらの位置に基づいて系列に入ることを判定する。
【0066】
追加または代替として、ジオフェンス管理システム120は、典型的には一緒に訪問される位置に基づいて、系列の関係を決定することができる。例えば、ジオフェンス管理システム120は、レクリエーショナルビークルのディーラとキャンプ用品店など、ユーザデバイスの近くの2つの店舗がしばしば一緒に訪問されるということを決定することができる。同様に、識別された関心のあるポイントが互いに近接していると決定することを行って、または行わずに、ジオフェンス管理システム120は、グランドティトン国立公園とイエローストン国立公園など、2つの公園がしばしば一緒に訪問されることを決定することができる。別の例では、ジオフェンス管理システム120は、公園と博物館がしばしば一緒に訪問され、したがって同じジオフェンス境界にクラスタ化されるべきであると決定することができる。
【0067】
ブロック310では、ジオフェンス管理システム120は、関心のあるポイントの間の決定された関係に基づいて、関心のあるポイントを関連付ける(クラスタ化する)。すなわち、関心のあるポイントの間の関係を決定した後に、ジオフェンス管理システム120は、決定された関係に基づいて、識別された関心のあるポイントを一緒にグループ化する。例えば、互いに近接する2つ以上の関心のあるポイントが、それらの近接度に基づいて互いに関連付けられる。同じように、互いに系列化される2つ以上の関心のあるポイントが、それらの系列に基づいて互いに関連付けられる。例えば、商店街内の3つの店頭は、それらの商店街との系列に基づいて、互いに関連付けられる。ユーザデバイス110の予期される経路に沿った5つのガソリンスタンドは、例えば、予期される経路へのそれらの系列化に基づいて一緒に関連付けられる。一定の例示の実施形態では、ジオフェンス管理システム120は、識別され関連付けられた関心のあるポイントのアクセス可能な記録上などの、ジオフェンス管理システム120のデータ記憶ユニット124上に、決定された関連を記憶する。
【0068】
ブロック315では、ジオフェンス管理システム120は、クラスタ化された関心のあるポイントの周りに単一のジオフェンス境界を画定する。すなわち、ジオフェンス管理システム120は、関連付けられた関心のあるポイントのうちの2つ以上を包含する、外周などの、クラスタ化されたジオフェンス境界を決定する。例えば、ジオフェンス管理システム120は、関連付けられた関心のあるポイントのうちの2つ以上を包含する、緯度および経度座標などの、ジオフェンス境界データを規定する。追加または代替として、2つ以上の関心のあるポイントを包含するジオフェンス境界データは、市または州の範囲の境界など、境界の予め規定された組であってよい。さらに、一定の例示の実施形態では、ジオフェンス管理システム120は、ユーザデバイスの近くの(または近くであると予期される)関心のあるポイントに基づいて、単一のジオフェンス境界を画定することができる。この場合、画定されるジオフェンス境界は、ユーザデバイスの位置に基づいて、動的である。すなわち、ユーザデバイスが動く場合、ジオフェンス管理システム120は、ユーザデバイスの新しい位置に基づいて、新しいまたは追加のジオフェンス境界を作り出すことができる。
【0069】
別の例示の実施形態では、関心のあるポイントのクラスタを、いずれかのユーザのある決まった位置を参照することなく、全てのユーザについて事前に作り出すことができる。この場合、関心のあるポイントは、本明細書に記載されジオフェンス境界に関連付けられた基準に基づいて、決定され、一緒にクラスタ化することができる。次いで、ある決まったユーザがジオフェンス境界に近づくまたは入ると、予め規定されたクラスタが識別されて、本明細書に記載されるように、ユーザに提示することができる。
【0070】
一定の例示の実施形態では、クラスタ化されたジオフェンス境界データは、位置ポイントおよび位置ポイントの周りの規定された、設定で変えることができる半径を含むことができる。例えば、位置ポイントは、クラスタ中の全ての識別された関心のあるポイントの中心部の位置、クラスタ中の識別された関心のあるポイントのうちの1つの位置、クラスタ中の全ての関心のあるポイントについて関係のある位置(例えば、関心のあるポイントが位置決めされる商店街の位置)、または他の好適な位置ポイントであってよい。設定で変えることができる半径として、位置ポイントの周りの半径は、ジオフェンス管理システム120が決定する任意の距離であってよい。例えば、商店街の周りのクラスタ化されたジオフェンス境界の設定で変えることができる半径は、商店街の駐車場の中のユーザデバイス110または商店街に入るユーザデバイス110が、本明細書に記載されるような商店街についてのクラスタ化されたジオフェンス警告を受け取るように、200メートルであってよい。代替的に、設定で変えることができる半径は、より大きくてよい。例えば、ジオフェンス管理システム120は、ユーザデバイス110の予期される目的地の周りの、5、10、15、20、25、30、35、40、50、70、80、100キロメートル、またはより大きいクラスタ化されたジオフェンス境界の半径を規定することができる。
【0071】
一定の例示の実施形態では、クラスタ化されたジオフェンス境界データは、半径に依拠せず、むしろ関連付けられた関心のあるポイントとユーザデバイス110の間の画定された領域またはバリアに依拠するジオフェンスを確立することによって、関連付けられた関心のあるポイントを包含することができる。すなわち、ジオフェンス管理システム120は、関連付けられた関心のあるポイントとユーザデバイス110の間に、通過性のジオフェンスバリアを確立する。例えば、ジオフェンス管理システム120は、長さ5キロメートル、幅1キロメートルで、関連付けられた関心のあるポイントとユーザデバイス110の間にある領域を画定し、こうして、関連付けられた関心のあるポイントとユーザデバイス110の間に5キロメートルのバリアラインを形成することができる。ユーザデバイス110がジオフェンスバリアを通過すると、ジオフェンス管理システム120は、本明細書に記載されるように、クラスタ化されたジオフェンス警告を提供する。
【0072】
ブロック320では、ジオフェンス管理システム120は、クラスタ化されたジオフェンス境界データをユーザデバイス110に伝達する。すなわち、ジオフェンス管理システム120が、関連付けられた関心のあるポイントのうちの2つ以上を包含するクラスタ化されたジオフェンス境界データを決定した後に、ジオフェンス管理システム120が、ユーザデバイス110にデータを送信する。例えば、ジオフェンス管理システム120は、クラスタ化されたジオフェンス境界について、ユーザデバイス110に緯度および経度座標を送信する。ユーザデバイス110は送信を受け取り、次いで、ユーザデバイス110のキャッシュ中および/またはユーザデバイス110のデータ記憶ユニット114上など、本明細書に記載されるように、ジオフェンス境界データを記憶する。
【0073】
ジオフェンス管理システム120の機能は、ユーザデバイス110上で、部分的または全体的に、動作さもなければ実行できることが理解されよう。例えば、ジオフェンス管理システム120は、ユーザデバイス110上の位置アプリケーション112内または位置アプリケーション112と共同で、動作さもなければ実行することができる。すなわち、携帯電話などのユーザデバイス110は、関心のあるポイントについての位置データを、関心のあるポイントについて関連付けられた内容とともに、ユーザデバイス110のデータ記憶ユニット114の中に取得および記憶する。位置アプリケーション112などのユーザデバイス110上のアプリケーションは、位置を基にしたサービスと組み合わせて、または全地球測位システムを介して、ユーザデバイス110の位置を決定する。位置アプリケーション112は、次いで、ユーザデバイス110の近くにある、またはユーザデバイス110の計画された経路もしくは目的地に沿った関心のあるポイントを決定する。位置アプリケーション112は、関連する関心のあるポイントをクラスタ化し、次いで、クラスタ化された関心のあるポイントの周りにクラスタ化されたジオフェンス境界を画定する。位置アプリケーション112は、例えば、クラスタ化されたジオフェンス境界データを、ユーザデバイス110のデータ記憶ユニット114の中に記憶する。位置アプリケーション112は、次いで、ユーザデバイス110の位置をモニタして、ユーザデバイス110がクラスタ化されたジオフェンス境界上、またはクラスタ化されたジオフェンス境界内にあるときを決定する。クラスタ化されたジオフェンス進入イベントに基づいて、位置アプリケーション112は、関心のあるポイントのうちの1つまたは複数に関してユーザ101に内容を基にした警告を提供し、ユーザ101が警告を受け取る。
【0074】
例示の実施形態では、ユーザ101の携帯電話などのユーザデバイス110が、ユーザデバイス110の第1の位置を決定する。携帯電話は、次いで、第1の位置をジオフェンス管理システム120に伝達する。すなわち、携帯電話が位置データをジオフェンス管理システム120に伝達し、ジオフェンス管理システム120が位置データを受け取る。携帯電話の第1の位置に基づいて、ジオフェンス管理システム120は、携帯電話の近くの関心のあるポイントを識別し、次いで、本明細書に記載されるように、関心のあるポイントの間の関係に基づいて、関心のあるポイントを関連付ける(クラスタ化する)。ジオフェンス管理システム120が、関連付けられた関心のあるポイントのうちの2つ以上を包含する単一のジオフェンス境界を決定し、次いで、クラスタ化されたジオフェンス境界についてのジオフェンス境界データを携帯電話に伝達する。
【0075】
携帯電話がクラスタ化されたジオフェンス境界データを受け取る。携帯電話は、次いで、携帯電話について第2の位置を決定し、第2の位置決定についての位置データをジオフェンス管理システム120に伝達する。携帯電話からの第2の位置データに基づいて、ジオフェンス管理システム120は、携帯電話がジオフェンス境界に入ったと判定する。ジオフェンス管理システム120は、次いで、携帯電話への通知を伝達し、携帯電話上にクラスタ化されたジオフェンスを基にした警告を提供する。すなわち、ジオフェンス管理システム120は、関連付けられた関心のあるポイントのうちの1つまたは複数に関する警告を提供するように、携帯電話に命令する。携帯電話は通知を受け取り、次いで、携帯電話上にクラスタ化されたジオフェンスを基にした警告を提供する。ユーザ101は、ユーザの携帯電話上で、クラスタ化されたジオフェンスを基にした警告を受け取る。
【0076】
図4は、一定の例示の実施形態に従う、近接度に基づいた、単一の(クラスタ化された)ジオフェンス境界に関連付けられた関心のあるポイントを表わす図である。例えば、ジオフェンス管理システム120は、3つの商店店頭(売買業者A、売買業者B、売買業者C)がそれぞれ、ユーザデバイス110の半径5キロメートル403の内部にあることを決定する。3つの商店店頭の各々の周りに別個のジオフェンス境界402を確立するのではなく、ジオフェンス管理システム120は、3つの商店店頭の周りに単一のクラスタ化されたジオフェンス境界401を画定する。ユーザデバイス110がクラスタ化されたジオフェンス境界401に入ると、ジオフェンス管理システム120は、ユーザに進入イベントを警告するように、ユーザデバイス110に通知する。例えば、ユーザデバイス110は、「あなたには、近くに3つの特別サービスがある」という単一の警告をユーザに提供する。
【0077】
一定の例示の実施形態では、ジオフェンス管理システム120は、本明細書に記載されるような関係に基づくが、ある決まったユーザデバイス110の位置を顧慮せずに、関心のあるポイントを一緒にクラスタ化する。すなわち、一定の実施形態では、ジオフェンス管理システム120は、ある決まったユーザデバイス110が位置を変えるとき、ジオフェンスを一緒に動的にクラスタ化しない。むしろ、ジオフェンス管理システム120は、ブロック205で記載されたように、関心のあるポイントについての位置データを取得および記憶する。関心のあるポイントについての位置データを取得および記憶した後に、ジオフェンス管理システム120は、クラスタ化されたジオフェンス境界内の関心のあるポイントを関連付ける(クラスタ化する)。すなわち、ジオフェンス管理システム120は、本明細書に記載されるような近接度または系列など、関心のあるポイントの間の関係を決定する。
【0078】
ジオフェンス管理システム120は、次いで、決定された関係に基づいて、関連する関心のあるポイントを一緒に関連付ける(クラスタ化する)。ジオフェンス管理システム120は、ブロック310および315で記載されるように、クラスタ化された関心のあるポイントを包含する単一のジオフェンス境界も画定する。例えば、すぐ近くである、またはしばしば一緒に訪問される商店店頭は、単一のクラスタ化されたジオフェンス境界にクラスタ化することができる。追加または代替として、ジオフェンス管理システム120は、州間ハイウェイまたは主要幹線道路など、複数のユーザが通行する経路に沿った単一のジオフェンス境界へと関心のあるポイントをクラスタ化することができる。ジオフェンス管理システム120は、ブロック320に記載されるように、クラスタ化されたジオフェンス境界データを1つまたは複数のユーザデバイス110に伝達する。1人または複数のユーザがクラスタ化されたジオフェンス境界に入ると、ジオフェンス管理システム120は、(ブロック225に記載されるように)進入イベントを識別し、(ブロック230および235に記載されるように)ユーザデバイス110上にクラスタ化されたジオフェンス通知を提供する。
【0079】
他の例示の実施形態
図5は、一定の例示の実施形態に従う、コンピューティングマシン2000およびモジュール2050を表わす。コンピューティングマシン2000は、本明細書に提示される様々なコンピュータ、サーバ、モバイルデバイス、組込システム、またはコンピューティングシステムのいずれかに対応することができる。モジュール2050は、本明細書に提示される様々な方法および処理機能を実施する際に、コンピューティングマシン2000を円滑にするように構成される、1つまたは複数のハードウェアまたはソフトウェア要素を含むことができる。コンピューティングマシン2000は、プロセッサ2010、システムバス2020、システムメモリ2030、記憶媒体2040、入出力インターフェイス2060、およびネットワーク2080と通信するためのネットワークインターフェイス2070など、様々な内部または付加構成要素を含むことができる。
【0080】
コンピューティングマシン2000は、従来型コンピュータシステム、組込コントローラ、ラップトップ、サーバ、モバイルデバイス、スマートフォン、セットトップボックス、キオスク、車両情報システム、テレビに関連付けられるもう1つのプロセッサ、カスタマイズされたマシン、任意の他のハードウェアプラットフォーム、またはそれらの任意の組合せもしくはそれらの重複として実装することができる。コンピューティングマシン2000は、データネットワークまたはバスシステムを介して相互接続される複数のコンピューティングマシンを使用して機能するように構成される分散システムであってよい。
【0081】
プロセッサ2010は、コードまたは命令を実行し、本明細書に記載される動作および機能を実施し、要求の流れを管理してマッピングを対処し、計算を実施してコマンドを生成するように構成することができる。プロセッサ2010は、コンピューティングマシン2000中の構成要素の動作をモニタして制御するように構成することができる。プロセッサ2010は、汎用プロセッサ、プロセッサコア、マルチプロセッサ、再構成可能プロセッサ、マルチコントローラ、デジタル信号プロセッサ(DSP)、特定用途向け集積回路(ASIC)、画像処理ユニット(GPU)、フィールドプログラマブルゲートアレイ(FPGA)、プログラム可能論理デバイス(PLD)、コントローラ、ステートマシン、ゲート論理、別個のハードウェア構成要素、任意の他の処理ユニット、またはそれらの任意の組合せもしくは重複であってよい。プロセッサ2010は、単一の処理ユニット、複数の処理ユニット、単一の処理コア、複数の処理コア、専用処理コア、コプロセッサ、またはそれらの任意の組合せであってよい。一定の実施形態によれば、プロセッサ2010ならびにコンピューティングマシン2000の他の構成要素は、1つまたは複数の他のコンピューティングマシン内で実行する仮想化コンピューティングマシンであってよい。
【0082】
システムメモリ2030は、読取り専用メモリ(ROM)、プログラム可能読取り専用メモリ(PROM)、消去可能プログラム可能読取り専用メモリ(EPROM)、フラッシュメモリ、または供給電力ありでもしくは供給電力なしでプログラム命令もしくはデータを記憶することができる任意の他のデバイスなどの不揮発性メモリを含むことができる。システムメモリ2030は、ランダムアクセスメモリ(RAM)、スタティックランダムアクセスメモリ(SRAM)、ダイナミックランダムアクセスメモリ(DRAM)、およびシンクロナスダイナミックランダムアクセスメモリ(SDRAM)などの揮発性メモリも含むことができる。他のタイプのRAMを、システムメモリ2030を実装するためにやはり使用することができる。システムメモリ2030は、単一のメモリモジュールまたは複数のメモリモジュールを使用して実装することができる。システムメモリ2030は、コンピューティングマシン2000の部分であるとして表わされている一方で、主題の技術の範囲から逸脱することなく、システムメモリ2030がコンピューティングマシン2000とは別個であることができることを当業者は理解するであろう。システムメモリ2030が、記憶媒体2040などの不揮発性記憶デバイスを含むこと、または不揮発性記憶デバイスと組み合わせて動作することができることをやはり理解されたい。
【0083】
記憶媒体2040としては、ハードディスク、フロッピー(登録商標)ディスク、コンパクトディスク読取り専用メモリ(CD-ROM)、デジタル多用途ディスク(DVD)、ブルーレイディスク、磁気テープ、フラッシュメモリ、他の不揮発性メモリデバイス、ソリッドステートドライブ(SSD)、任意の磁気記憶デバイス、任意の光学的記憶デバイス、任意の電子記憶デバイス、任意の半導体記憶デバイス、任意の物理ベースの記憶デバイス、任意の他のデータ記憶デバイス、またはそれらの任意の他の組合せもしくは重複を挙げることができる。記憶媒体2040は、1つまたは複数のオペレーティングシステム、アプリケーションプログラム、およびモジュール2050、データ、もしくは任意の他の情報などのプログラムモジュールを記憶することができる。記憶媒体2040は、コンピューティングマシン2000の部分であることができ、またはコンピューティングマシン2000に接続することができる。記憶媒体2040は、サーバ、データベースサーバ、クラウドストレージ、ネットワーク接続ストレージなどの、コンピューティングマシン2000と通信する、1つまたは複数の他のコンピューティングマシンの部分であってもよい。
【0084】
モジュール2050は、コンピューティングマシン2000を円滑にするように構成される1つまたは複数のハードウェアまたはソフトウェア要素を含み、様々な方法を実施して本明細書に提示される機能を処理することができる。モジュール2050は、システムメモリ2030、記憶媒体2040、または両方と共同で、ソフトウェアまたはファームウェアとして記憶される命令の1つまたは複数のシーケンスを含むことができる。記憶媒体2040は、したがって、プロセッサ2010による実行のために命令またはコードを記憶できる、機械またはコンピュータ可読媒体の例を表すことができる。機械またはコンピュータ可読媒体は、一般的に、プロセッサ2010に命令を提供するため使用される任意の1つまたは複数の媒体のことをいうことができる。モジュール2050に関連付けられるそのような機械またはコンピュータ可読媒体は、コンピュータソフトウェア製品を含むことができる。モジュール2050を含むコンピュータソフトウェア製品が、ネットワーク2080、任意の信号担持媒体、または任意の他の通信もしくは配信技術を介して、モジュール2050をコンピューティングマシン2000に配信するための、1つもしくは複数のプロセスまたは方法にも関連付けることもできることを理解されたい。モジュール2050は、ハードウェア回路、またはFPGAもしくは他のPLDのためのマイクロコードもしくは構成情報などハードウェア回路を構成するための情報も含むことができる。
【0085】
入力/出力(I/O)インターフェイス2060は、1つまたは複数の外部デバイスと結合し、1つまたは複数の外部デバイスからデータを受け取り、1つまたは複数の外部デバイスにデータを送るように構成することができる。そのような外部デバイスならびに様々な内部デバイスは、周辺デバイスとしても知られている場合がある。I/Oインターフェイス2060は、様々な周辺デバイスをコンピューティングマシン2000またはプロセッサ2010に動作可能に結合するため、電気的接続と物理的接続の両方を含むことができる。I/Oインターフェイス2060は、周辺デバイス、コンピューティングマシン2000、またはプロセッサ2010の間でデータ、アドレス、および制御信号を伝達するように構成することができる。I/Oインターフェイス2060は、スモールコンピュータシステムインターフェイス(SCSI)、シリアルアタッチドSCSI(SAS)、ファイバーチャネル、ペリフェラルコンポーネントインターコネクト(PCI)、PCI express(PCIe)、シリアルバス、パラレルバス、アドバンスドテクノロジーアタッチメント(ATA)、シリアルATA(SATA)、ユニバーサルシリアルバス(USB)、サンダーボルト、ファイアーワイヤー、様々なビデオバスなど、任意の標準インターフェイスを実装するように構成することができる。I/Oインターフェイス2060は、単に1つのインターフェイスまたはバス技術を実装するように構成することができる。代替的に、I/Oインターフェイス2060は、複数のインターフェイスまたはバス技術を実装するように構成することができる。I/Oインターフェイス2060は、システムバス2020の部分として、システムバス2020の全てとして、またはシステムバス2020と組み合わせて動作するように構成することができる。I/Oインターフェイス2060は、1つまたは複数の外部デバイス、内部デバイス、コンピューティングマシン2000、またはプロセッサ2010の間の伝送をバッファリングするための1つまたは複数のバッファを含むことができる。
【0086】
I/Oインターフェイス2060は、マウス、タッチスクリーン、スキャナ、電子デジタイザ、センサ、レシーバ、タッチパッド、トラックボール、カメラ、マイクロホン、キーボード、任意の他のポインティングデバイス、またはこれらの任意の組合せを含む、様々な入力デバイスにコンピューティングマシン2000を結合することができる。I/Oインターフェイス2060は、ビデオディスプレイ、スピーカ、プリンタ、プロジェクタ、触覚フィードバックデバイス、自動制御、ロボット構成要素、アクチュエータ、モータ、ファン、ソレノイド、バルブ、ポンプ、送信器、信号放出器、ライトなどを含む、様々な出力デバイスにコンピューティングマシン2000を結合することができる。
【0087】
コンピューティングマシン2000は、ネットワーク2080にわたって、1つまたは複数の他のシステムまたはコンピューティングマシンへのネットワークインターフェイス2070を通した論理接続を使用して、ネットワーク化された環境中で動作することができる。ネットワーク2080としては、ワイドエリアネットワーク(WAN)、ローカルエリアネットワーク(LAN)、イントラネット、インターネット、無線アクセスネットワーク、有線ネットワーク、モバイルネットワーク、電話ネットワーク、光ネットワーク、またはこれらの組合せが挙げられる。ネットワーク2080は、パケット交換であってよく、回路交換であってよく、任意のトポロジであってよく、また、任意の通信プロトコルを使用することができる。ネットワーク2080内の通信リンクは、光ファイバケーブル、自由空間光通信、導波路、導電体、無線リンク、アンテナ、ラジオ周波数通信などの様々なデジタルまたはアナログ通信媒体を含むことができる。
【0088】
プロセッサ2010は、システムバス2020を通して、コンピューティングマシン2000の他の要素または本明細書に議論された様々な周辺機器に接続することができる。システムバス2020は、プロセッサ2010内、プロセッサ2010外、または両方であってよいことを理解されたい。一定の実施形態によれば、プロセッサ2010、コンピューティングマシン2000の他の要素、または本明細書に議論された様々な周辺機器のうちのいずれかを、システムオンチップ(SOC)、システムオンパッケージ(SOP)、またはASICデバイスなどの単一のデバイスに集積化することができる。
【0089】
ここで議論されたシステムがユーザについての個人情報を集める、または個人情報を使用することができる状況では、プログラムまたは特徴がユーザ情報(例えば、ユーザのソーシャルネットワークについての情報、社会的な行動もしくは活動、職業、ユーザの好み、またはユーザの現在の位置)を集めることを制御する、またはユーザにより関連がある可能性がある内容サーバから内容を受け取ること、かつ/もしくはどのように内容を受け取るかということを制御する、機会もしくは任意選択権をユーザに提供することができる。加えて、個人的に識別可能な情報が除去されるように、一定のデータは、それが記憶または使用される前に、1つまたは複数のやり方で扱うことができる。例えば、ユーザについて個人的に識別可能な情報を決定できないように、ユーザの識別情報を扱うことができ、または、ユーザのある決まった位置を決定できないように、位置情報を取得する場合に(市、郵便番号、または州レベルへなど)ユーザの地理的な位置を一般化することができる。こうして、ユーザは、情報がどのようにしてユーザについて集められるか、また内容サーバにより使用されるかについて制御することができる。
【0090】
実施形態は、本明細書に記載および説明される機能を具現化するコンピュータプログラムを含むことができ、コンピュータプログラムは、機械可読媒体に記憶される命令および命令を実行するプロセッサを含むコンピュータシステム中に実装される。しかし、コンピュータプログラミング中の実施形態を実装する多くの様々なやり方があり得ること、実施形態がコンピュータプログラム命令の任意の1つの組に制限されると考えるべきでないことは明らかであろう。さらに、技能を有するプログラマは、添付のフローチャートおよびアプリケーションテキスト中の関連付けられた記載に基づいて開示された実施形態の実施形態を実装するため、そのようなコンピュータプログラムを書くことが可能となろう。したがって、プログラムコード命令のある決まった組の開示は、実施形態を作って使用する方法の十分な理解のために必要であると考えられない。さらに、当業者は、本明細書に議論された実施形態のうちの1つまたは複数の態様が、1つまたは複数のコンピューティングシステム中で具現化することができるので、ハードウェア、ソフトウェア、またはこれらの組合せにより実施できることを理解されよう。さらに、コンピュータにより実施される動作への任意の言及は、1つより多いコンピュータが動作を実施できるので、単一のコンピュータにより実施されると考えるべきでない。
【0091】
本明細書に記載される例示の実施形態は、以前に記載された方法および処理機能を実施するコンピュータハードウェアおよびソフトウェアで使用することができる。本明細書に記載されるシステム、方法、およびプロシージャは、プログラム可能コンピュータ、コンピュータ実行可能ソフトウェア、またはデジタル回路中で具現化することができる。ソフトウェアは、コンピュータ可読媒体上に記憶することができる。例えば、コンピュータ可読媒体としては、フロッピー(登録商標)ディスク、RAM、ROM、ハードディスク、取り外し可能媒体、フラッシュメモリ、メモリスティック、光学媒体、光磁気媒体、CD-ROMなどが挙げられる。デジタル回路としては、集積回路、ゲートアレイ、ビルディングブロックロジック、フィールドプログラマブルゲートアレイ(FPGA)などが挙げられる。
【0092】
以前に提示された実施形態中に記載された例示のシステム、方法、および動作は例示であり、様々な実施形態の範囲および精神から逸脱することなく、代替実施形態において、一定の動作を、異なる順序、互いに並列、完全に省略、および/もしくは様々な例示の実施形態の間で組み合わせて実施することができ、かつ/または一定の追加の動作を実施することができる。したがって、そのような代替実施形態は、本明細書に記載される発明の中に含まれる。
【0093】
特定の実施形態が上で詳細に記載されたが、記載は、単に説明のためである。したがって、上に記載された多くの態様は、明示的な別段の指定がない限り、必要または本質的な要素であると意図されないことを理解されたい。上に記載されたものに加えて、例示の実施形態の開示された態様の修正形態、および例示の実施形態の開示された態様に対応する等価な構成要素または動作は、本開示の利益を有する当業者により、以下の請求項に規定される実施形態の精神および範囲から逸脱することなく行うことができ、その範囲は、そのような修正形態および等価な構造体を包含するように最も広い解釈が与えられるべきである。