(57)【特許請求の範囲】
【請求項１】
第１のコンピューティングデバイスと第２のコンピューティングデバイスとにおける移動情報のピアツーピア通信のためのシステムであって、
前記第１のコンピューティングデバイスは、
プロセッサとを備え、前記プロセッサが、
ピアツーピア接続を通じて第２のコンピューティングデバイスからメッセージを受け取り、
前記メッセージを受け取ったことに応答して、前記第２のコンピューティングデバイスに移動情報を要求することであって、前記移動情報は前記第２のコンピューティングデバイスの行程を記述し、
前記第２のコンピューティングデバイスから前記要求された移動情報を受け取り、
前記受け取られたメッセージおよび前記受け取られた移動情報を、前記第１のコンピューティングデバイスの第１のユーザに提示する
ようにプログラムされ、
前記受け取られたメッセージは発信元ユーザからのものであり、前記発信元ユーザを、前記第１のユーザに関連する１組のユーザと比較するようにさらにプラグラムされ、前記移動情報を要求することは前記比較に基づいて行われる、
システム。
【請求項２】
前記受け取られたメッセージおよび前記受け取られた移動情報を前記第１のユーザに提示することが、前記第１のコンピューティングデバイス上で単一のアプリケーションを実行している間に、前記第１のコンピューティングデバイス上に表示された単一のユーザインターフェース要素内に、前記受け取られたメッセージおよび前記受け取られた移動情報を表示することを含む、請求項１に記載のシステム。
【請求項３】
前記第２のコンピューティングデバイスに移動情報を要求することが、前記第１のユーザからの入力なしに行われる、請求項１に記載のシステム。
【請求項４】
前記比較に基づいて前記発信元ユーザが阻止されたユーザであると判断すると、前記移動情報を要求することは阻止され、前記比較に基づいて前記発信元ユーザが許されたユーザであると判断すると、前記移動情報を要求することは可能にされる、請求項１に記載のシステム。
【請求項５】
第１のコンピューティングデバイスによって、ピアツーピア接続を通じて第２のコンピューティングデバイスからメッセージを受け取るステップと、
前記メッセージを受け取ったことに応答して、前記第２のコンピューティングデバイスに移動情報を要求するステップであって、前記移動情報は前記第２のコンピューティングデバイスの行程を記述する、ステップと、
前記第１のコンピューティングデバイスによって、前記第２のコンピューティングデバイスから前記要求された移動情報を受け取るステップと、
前記受け取られたメッセージおよび前記受け取られた移動情報を、前記第１のコンピューティングデバイスの第１のユーザに提示するステップと
を含み、
前記受け取られたメッセージは発信元ユーザからのものであり、前記発信元ユーザを、前記第１のユーザに関連する１組のユーザと比較するステップをさらに含み、前記移動情報を要求するステップは前記比較に基づいて行われる、
方法。
【請求項６】
前記受け取られたメッセージおよび前記受け取られた移動情報をユーザに提示するステップが、前記第１のコンピューティングデバイス上で単一のアプリケーションを実行している間に、前記第１のコンピューティングデバイス上に表示された単一のユーザインターフェース要素内に、前記受け取られたメッセージおよび前記受け取られた移動情報を表示するステップを含む、請求項５に記載の方法。
【請求項７】
前記第２のコンピューティングデバイスに移動情報を要求するステップが、前記第１のユーザからの入力なしに行われる、請求項５に記載の方法。
【請求項８】
前記比較に基づいて前記発信元ユーザが阻止されたユーザであると判断すると、前記移動情報を要求するステップは阻止され、前記比較に基づいて前記発信元ユーザが許されたユーザであると判断すると、前記移動情報を要求するステップは可能にされる、請求項５に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
［背景技術］
[0001]  ユーザはしばしば、彼等の友人および／または家族の現在の場所を知りたいと思う。既存の携帯電話システムを用いてユーザは、テキストメッセージの形などで場所要求を手動で要求する。例えばユーザは「どこにいますか？」と尋ねる１つのテキストメッセージを友人に送ることができ、友人は「食料品店にいます」と答える別のテキストメッセージで応答することができる。
【発明の概要】
【発明が解決しようとする課題】
【０００２】
[0002]  さらに多くの既存の携帯電話には、現在のデバイスの場所を識別することを可能にする全地球測位システム（GPS）が装備されている。これらの既存の携帯電話のいくつかはまたユーザが、テキストメッセージ中に現在のデバイスの場所を示す地図を添付することを可能にする。しかしこのような既存の携帯電話は、ユーザおよび受信者による手動での関与を必要とし、現在のデバイスの場所は静的な情報である。すなわちこのような既存の携帯電話は、現在のデバイスの場所が変化したときに、現在のデバイスの場所を更新するための機構が欠けている。
【課題を解決するための手段】
【０００３】
[0003]  いくつかの実施形態では第１のコンピューティングデバイスは、第２のコンピューティングデバイスにおける第２のユーザを対象とするメッセージを、第１のユーザから受け取る。メッセージを受け取ったことに応答して第１のコンピューティングデバイスは、移動情報を導出する（例えば第１のコンピューティングデバイスのセンサから）。第１のコンピューティングデバイスは、受け取られたメッセージおよび導出された移動情報を、ピアツーピア接続を通じて第２のコンピューティングデバイスに送る。その後に第１のコンピューティングデバイスは、センサから第１のコンピューティングデバイスに対する更新された移動情報を導出し、導出された更新された移動情報を、送られた移動情報と比較する。更新された移動情報は、比較に基づいて第２のコンピューティングデバイスに送られる。
【０００４】
[0004]  他の実施形態では第１のコンピューティングデバイスは、ピアツーピア接続を通じて第２のコンピューティングデバイスからメッセージを受け取る。メッセージを受け取ったことに応答して第１のコンピューティングデバイスは、第２のコンピューティングデバイスから、第２のコンピューティングデバイスの行程を記述した、第２のコンピューティングデバイスに関する移動情報を要求する。第１のコンピューティングデバイスが、要求された移動情報を第２のコンピューティングデバイスから受け取った後に、第１のコンピューティングデバイスは、受け取られたメッセージおよび受け取られた移動情報を第１のコンピューティングデバイスのユーザに提示する。
【０００５】
[0005]  この「発明の概要」は、「発明を実施するための形態」において以下でさらに述べられる、選ばれた概念を簡略化した形で紹介するために示される。この「発明の概要」は、特許請求される主題の主要な特徴または本質的な特徴を特定するものではなく、特許請求される主題の範囲を決定するための補助として用いられることを意図するものでもない。
【図面の簡単な説明】
【０００６】
【図１】[0006]第２のユーザに関連する第２のコンピューティングデバイスとネットワークを通じて通信する、第１のユーザに関連する第１のコンピューティングデバイスを示す例示的ブロック図である。
【図２】[0007]メッセージおよび移動情報を第２のコンピューティングデバイスに送る、第１のコンピューティングデバイスの動作を示す例示的フローチャートである。
【図３】[0008]第２の携帯電話に移動情報を送る、第１の携帯電話を示す例示的ブロック図である。
【図４】[0009]その移動を検出し移動情報を第２の携帯電話に送る、第１の携帯電話を示す例示的ブロック図である。
【図５】[0010]第２のコンピューティングデバイスから移動情報を受け取り、提示するための第１のコンピューティングデバイスの動作を示す例示的フローチャートである。
【図６】[0011]第２の携帯電話に移動情報を要求し受け取る、第１の携帯電話を示す例示的ブロック図である。
【発明を実施するための形態】
【０００７】
[0012]  図を参照すると本開示の実施形態は、ピアツーピア接続を通じてデバイス間の移動情報の送出および／または受信を可能にする。例えば、第１のコンピューティングデバイス１０２の第１のユーザ１０４は、第１のコンピューティングデバイス１０２の行程を記述する移動情報を、第２のコンピューティングデバイス１２４の第２のユーザ１２２にプッシュするもしくは別の方法で供給する。別の例として、第１のコンピューティングデバイス１０２は、第２のコンピューティングデバイス１２４からのメッセージ（例えばテキストメッセージ）が、第１のコンピューティングデバイス１０２によって受け取られるとすぐなどに、第２のコンピューティングデバイス１２４から移動情報をプルするもしくは別の方法で要求する。例示的移動情報は、現在の経路、速度、移動の方向、現在の推定到着時間、および／またはデバイス行程（例えば期待されるおよび／または予想される）を記述する他のデータを含むが、それらに限定されない。
【０００８】
[0013]  本開示の態様は、家族、親しい友人、仕事関係の仲間などの、２人以上のユーザが移動情報を交換することを可能にする。移動情報は、本明細書でさらに述べられるように手動で、および／または自動的に（例えば一方または両方のユーザからの明示的なアクションなしに）交換され得る。加えて移動情報は、イベント、基準、規則などに基づいて規則的に、定期的に、間欠的に更新され得る。
【０００９】
[0014]  中央サービスではなくピアツーピア接続を用いることにより、いくつかの実施形態はユーザに、デバイス間で共有されているデータに対する向上されたプライバシー、セキュリティ、および管理をもたらす。例えばピアツーピア接続を用いると共有データは、データが他の当事者によって引き出され（ｍｉｎｅｄ）またはアクセスされ得る中央サーバ上には記憶されない。慎重に扱うべき共有データ（例えば移動情報）に対しては、ユーザはこのようなデータをピアツーピア接続を通して共有する方がより安全に感じ得る。
【００１０】
[0015]  加えて、移動情報を共有するためにピアツーピア接続を用いるコストは、この情報を共有するために中央サービスを用いるよりも低くなり得る。実際いくつかの地理的地域では、ピアツーピア接続を通して移動情報を共有するためのコストは、既存のテキストメッセージングプランのもとに包括され得る。
【００１１】
[0016]  図１を参照すると例示的ブロック図は、ネットワーク１２８を通じて第２のユーザ１２２に関連する第２のコンピューティングデバイス１２４と通信する、第１のユーザ１０４に関連する第１のコンピューティングデバイス１０２を示す。コンピューティングデバイス１０２および１２４は、音声通信、テキストメッセージング（例えばショートメッセージングサービス、マルチメディアメッセージングサービス）、インスタントメッセージング、ソーシャルネットワークサービスを通じた通信、電子メールなどをサポートするためなどの、多様なプロトコルおよび輸送機構を用いて通信を行うことができる。それに従ってコンピューティングデバイス１０２および１２４は、多様な異なる技法を利用して互いに通信することができる。
【００１２】
[0017]  コンピューティングデバイス１０２および１２４は、有線および／またはワイヤレスネットワークを含むように実装され得る、１つまたは複数のネットワーク１２８を通じて通信する。ネットワークはまた、任意のタイプのネットワークトポロジおよび／または通信プロトコルを用いて実装することができ、インターネットプロトコル（IP）ネットワークおよび／またはインターネットを含むように、２つ以上のネットワークの組み合わせとして表されるあるいは実装され得る。ネットワーク１２８はまた、通信サービスプロバイダ、携帯電話プロバイダ、および／またはインターネットサービスプロバイダなどの、モバイルネットワークオペレータおよび／または他のネットワークオペレータによって管理されるモバイルオペレータネットワークを含むことができる。
【００１３】
[0018]  図１の例は、移動情報の通信のためのシステムを示す。本開示の態様は、ピアツーピア接続を通じたコンピューティングデバイス１０２および１２４の間の通信に関連して述べられるが、非ピアツーピア接続は本開示の範囲内である。
【００１４】
[0019]  コンピューティングデバイス１０２および１２４のそれぞれは、命令（例えばアプリケーションプログラム、オペレーティングシステム機能、または両方）を実行して本明細書で述べられ図示される動作および機能を実装する任意のデバイスを表す。コンピューティングデバイス１０２および１２４は、モバイルコンピューティングデバイスまたは任意の他のポータブルデバイスを含むことができる。いくつかの実施形態ではモバイルコンピューティングデバイスは、携帯電話、ラップトップ、タブレット、コンピューティングパッド、ネットブック、ゲーム装置、および／またはポータブルメディアプレーヤを含む。コンピューティングデバイス１０２および１２４はまた、少なくともメッセージおよび移動情報を受け取るための、デスクトップパーソナルコンピュータ、キオスク、テーブルトップデバイス、産業用制御デバイス、ワイヤレス充電スタンド、および電気自動車充電スタンドなどの可搬性の低いデバイスを含むことができる。加えてコンピューティングデバイス１０２および１２４は、処理ユニットまたは他のコンピューティングデバイスのグループを表すことができる。コンピューティングデバイス１０２および１２４の一方は１つの形またはタイプのデバイスを表すことができ、コンピューティングデバイス１０２および１２４の他方は別の形またはタイプのデバイスを表すことができる。
【００１５】
[0020]  いくつかの実施形態ではコンピューティングデバイス１０２および１２４のそれぞれが、図１に示される要素を含む。見やすいように要素は図示され、次に第１のコンピューティングデバイス１０２に関連付けられたものを参照して述べられる。
【００１６】
[0021]  図１に示されるように第１のコンピューティングデバイス１０２は、１つまたは複数のセンサ１１２、少なくとも１つのプロセッサ１０６、メモリ領域１０８、および少なくとも１つのユーザインターフェースを有する。センサ１１２は、１つまたは複数の加速度計、１つまたは複数のジャイロスコープ、全地球測位システム（GPS）トランシーバ、ワイヤレスフィディリティ（Wi-Fi）もしくは他のワイヤレストランシーバ、光受容光センサ、および第１のコンピューティングデバイス１０２を記述するデータをもたらす他のセンサを含む。
【００１７】
[0022]  プロセッサ１０６は、任意の個数の処理ユニットを含み、本開示の態様を実装するために、コンピュータ実行可能命令（例えばメモリ領域１０８に記憶された）を実行するようにプログラムされる。命令は、プロセッサ１０６によって、もしくは第１のコンピューティングデバイス１０２内で実行する複数のプロセッサによって行うことができ、または第１のコンピューティングデバイス１０２の外部のプロセッサによって行われ得る。いくつかの実施形態ではプロセッサ１０６は、本明細書で述べられる機能を実装するようにフローチャートに示されるものなどの、命令を実行するようにプログラムされる。
【００１８】
[0023]  いくつかの実施形態ではプロセッサ１０６は、本明細書で述べられる動作を行うアナログ技法の実装形態を表す。例えば動作は、アナログコンピューティングデバイスおよび／またはデジタルコンピューティングデバイスによって行われ得る。
【００１９】
[0024]  第１のコンピューティングデバイス１０２はさらに、メモリ領域１０８などの１つまたは複数のコンピュータ記憶媒体を有する。メモリ領域１０８は、第１のコンピューティングデバイス１０２に関連するまたはそれによってアクセス可能な、任意の個数の媒体を含む。メモリ領域１０８は、第１のコンピューティングデバイス１０２の内部、第１のコンピューティングデバイス１０２の外部、または両方とすることができる。いくつかの実施形態ではメモリ領域１０８は、リードオンリメモリ、および／またはアナログコンピューティングデバイス内に配線されたメモリを含む。さらにメモリ領域１０８は、信号を除く、揮発性および／または不揮発性メモリを備え得る、ハードウェアメモリの一部とすることができる。
【００２０】
[0025]  コンピューティングデバイス１０２は、メモリ領域１０８内に他のデータのなかでも、アプリケーション１１０、ユーザ識別子１１８、および認可１２０を記憶する。アプリケーション１１０は、プロセッサ１０６によって実行されたときに、第１のコンピューティングデバイス１０２上の機能を行うように動作する。例示的アプリケーション１１０は、メールアプリケーションプログラム、ウェブブラウザ、予定表アプリケーションプログラム、アドレス帳アプリケーションプログラム、メッセージングプログラム、メディアプリケーション、ゲームアプリケーション、地図アプリケーション、場所ベースのサービス、検索プログラムなどを含む。アプリケーション１１０は、ネットワークを通じてアクセス可能なウェブサービスなどの、対応アプリケーションまたはサービスと通信することができる。例えばアプリケーションは、クラウド内で実行するサーバ側サービスに対応する、ダウンロードされたクライアント側アプリケーションを表すことができる。
【００２１】
[0026]  ユーザ識別子１１８は、第１のユーザ１０４に関連するまたはそれによって知られる第２のユーザ１２２などの、他のユーザの識別を記憶する。例えばユーザ識別子１１８は、連絡先リスト、アドレス帳、予定表の項目、および／または第１のユーザ１０４によって送られた前のメッセージの受信者に基づいて、第１のユーザ１０４に関連する他のユーザの識別を記憶する。さらにユーザ識別子１１８は、識別、連絡先詳細、および友人、親戚、および同僚などの様々な連絡先グループとの通信の好ましい手段を含むことができる。
【００２２】
[0027]  ユーザ識別子１１８は、それに関連する認可１２０を有する。認可１２０は、連絡先グループごとに変わることができ、各連絡先グループ内で変わることができ、および／または第１のユーザ１０４に関連するユーザに対して個別に設定され得る。例えば、第１のユーザ１０４の移動情報は配偶者によって、曜日および時刻にかかわらず共有されるように、１組の認可をユーザの配偶者に関連付けることができ、一方、第１のユーザ１０４の移動情報は、特定の日および時間（例えば勤務時間の間）でのみ同僚と共有され得る。
【００２３】
[0028]  いくつかの実施形態では認可１２０は、ジオフェンシングに基づくものとすることができる（例えば認可は、第１のユーザの場所に依存することができる）。例えば、第１のユーザ１０４に関連する何人かの特定のユーザへの移動情報は、第１のユーザ１０４が勤務場所（例えばオフィス）から予め規定された距離内にいるときだけ、または第１のユーザ１０４が予め規定された距離外にいるときだけ供給され得る。いくつかの実施形態では予め規定された距離、またはジオフェンスの境界線は、第１のユーザ１０４によって動的に規定することができ、一方、他の実施形態では予め規定された距離または境界線は、第１のユーザ１０４の現在の場所に基づいて自動的に規定され得る。
【００２４】
[0029]  ユーザ識別子１１８は、ユーザ識別子１１８に関連する認可１２０を変更することができる（例えば時間と共に）第１のユーザ１０４によってポピュレートされ得る。他の実施形態ではユーザ識別子１１８に対する項目は、連絡先リスト、アドレス帳、予定表の項目、および／または前のメッセージの受信者に基づいて、自動的にポピュレートされ得る。さらに認可１２０は自動的に設定することができる（例えばデフォルト値、または移動情報の取得または共有に対する第１のユーザ１０４の好みに基づいて)。他の実施形態では、ユーザ識別子１１８に対する項目は自動的にポピュレートされるが、ユーザ識別子１１８（またはユーザ識別子１１８のグループ）のそれぞれに関連する認可１２０は、第１のユーザ１０４によって具体的に設定され得る。
【００２５】
[0030]  動作時に認可１２０は、移動情報の共有を有効または無効にする。例えば第２のコンピューティングデバイス１２４からのメッセージを受け取ったことに応答して、第１のコンピューティングデバイス１０２上の認可１２０は、第１のコンピューティングデバイス１０２が第２のコンピューティングデバイス１２４に移動情報を要求するのを阻止するか、または第１のコンピューティングデバイス１０２が第２のコンピューティングデバイス１２４に移動情報を要求するのを可能にするように動作する。同様に、移動情報を求める第１のコンピューティングデバイス１０２からの要求が、第２のコンピューティングデバイス１２４によって受け取られたとき、第２のコンピューティングデバイス１２４上の認可１２０は、第１のコンピューティングデバイス１０２が第２のコンピューティングデバイス１２４から移動情報を受け取るのを阻止するまたは可能にするように動作する。
【００２６】
[0031]  認可１２０はまた、移動情報の特定の部分の共有を可能にする、または防止することができる。例えば移動情報は、認可１２０によって規定されるのに従って共有することが可能にされる情報のタイプに基づいて、フィルタリングされ得る。さらに、特定のユーザと共有されるべき移動情報の細分性のレベルは、認可１２０を通じて設定され得る。
【００２７】
[0032]  認可１２０は、受け取られたメッセージの評価に基づいて動的に規定され得る。例えば受け取られたメッセージは、メッセージを分類または類別するように評価され、認可１２０は、分類または類別に基づいて規定または決定される。メッセージのヘッダ内などのメタデータは、メッセージの送出者を識別するように評価され得る。例えばメッセージが、ネットワーク１２８のサービスプロバイダによって送られた場合は、移動情報は要求または供給され得ない。代替としてまたは追加として、送出デバイスおよび／または受信デバイスの場所、送出デバイスおよび／または受信デバイスの残存電池寿命、および／または時刻などのコンテキスト情報は、認可１２０の１つまたは複数を動的に規定するように決定され評価される。
【００２８】
[0033]  いくつかの実施形態では認可１２０は、管理者としてログインするユーザによってのみ設定することができる、第１のコンピューティングデバイス１０２に関連するセキュリティポリシー内にカプセル化され得る。いくつかの実施形態では、ユーザ識別子１１８および／または認可１２０は、管理者としてログインするユーザによって設定することができ、第１のコンピューティングデバイス１０２の他のユーザによる変更を受けにくくすることができる。例として、第１のコンピューティングデバイス１０２に記憶されたユーザ識別子１１８において識別された第２のユーザ１２２によって要求されたとき、第１のユーザ１０４に促すことなく、第１のコンピューティングデバイス１０２の場所は、第２のコンピューティングデバイス１２４に自動的に送られ得る。例えば親は、子供の携帯電話のユーザ識別子１１８および／または認可１２０を設定することができ、子供の携帯電話に遠隔に問い合わせて、子供が問い合わせについて知ることなく子供の携帯電話の現在の場所を取得することができる。
【００２９】
[0034]  第１のコンピューティングデバイス１０２はさらに、第１のユーザ１０４に移動情報およびメッセージを提示するために、少なくとも１つのユーザインターフェースを有する。いくつかの実施形態ではユーザインターフェースは、第１のユーザ１０４にデータを表示し、第１のユーザ１０４からデータを受け取るためのグラフィックスカードを含むことができる。ユーザインターフェースはまた、グラフィックスカードを動作させるためのコンピュータ実行可能命令（例えばドライバ）を含むことができる。さらにユーザインターフェースは、ディスプレイ（例えばタッチスクリーンディスプレイまたはナチュラルユーザインターフェース）、および／またはディスプレイを動作させるためのコンピュータ実行可能命令（例えばドライバ）を含むことができる。ユーザインターフェースはまた、第１のユーザ１０４にデータを提供する、または第１のユーザ１０４からデータを受け取るために、以下の１つまたは複数を含むことができ、すなわちスピーカ、サウンドカード、カメラ、マイクロホン、振動モニタ、１つまたは複数の加速度計、ＢＬＵＥＴＯＯＴＨブランド通信モジュール、全地球測位システム（GPS）ハードウェア、および光受容光センサである。例えば第１のユーザ１０４は、特定の方法で第１のコンピューティングデバイス１０２を動かすことによってコマンドを入力する、またはデータを操作することができる。
【００３０】
[0035]  次に図２を参照すると例示的フローチャートは、第１のコンピューティングデバイス１０２が、第２のコンピューティングデバイス１２４にメッセージおよび移動情報を送る動作を示す。２０２で第１のコンピューティングデバイス１０２は、第２のコンピューティングデバイス１２４を対象とするメッセージが、第１のユーザ１０４から受け取られたかどうかをチェックする。例えば第１のユーザ１０４は、第１のコンピューティングデバイス１０２にメッセージをタイプすることができる。メッセージが受け取られたときは、２０４で第１のコンピューティングデバイス１０２は、センサ１１２および／または他の手段から、第１のコンピューティングデバイス１０２の行程を記述する移動情報を、セルラ電話ネットワーク、Ｗｉ−Ｆｉベースのシステム、および／または地図アプリケーションなどを用いて導出する。移動情報は例えば、第１のコンピューティングデバイス１０２の第１のユーザ１０４によって用いられている経路、および推定到着時間（ETA）などの行程情報を含む。移動情報はさらに、方位、速度情報、および／または経路に沿った第１のコンピューティングデバイス１０２の見込まれる軌跡、ならびに第１のコンピューティングデバイス１０２の現在の場所を含むことができる。現在の場所は、緯度、経度、高度、上昇率、および／または降下率によって表すことができる。
【００３１】
[0036]  いくつかの実施形態では移動情報は、センサ１１２、地図情報、交通情報などから取得されたデータ（例えば位置データ）から導出される。例えば地図アプリケーションは、センサ１１２からの位置データを、地図情報および／または交通情報と共に後処理して、移動情報を生成することができる。
【００３２】
[0037]  受け取られたメッセージおよび導出された移動情報は、２０６で、第１のコンピューティングデバイス１０２によって第２のコンピューティングデバイス１２４に送られる。ユーザ識別子１１８、および第２のユーザ１２２に対する認可１２０に基づいて、第１のコンピューティングデバイス１０２は、自動的にもしくは別の方法で第１のユーザ１０４からの明示的なまたは同時の入力なしに、メッセージおよび移動情報を第２のコンピューティングデバイス１２４に送ることができる。他の実施形態では第１のユーザ１０４は、移動情報をメッセージと共に送ることを承認するように促される。
【００３３】
[0038]  いくつかの実施形態ではメッセージおよび移動情報は、同じメッセージにおいて第２のコンピューティングデバイス１２４に送られ、および／または同じアプリケーションによって第２のコンピューティングデバイス１２４において表示される。他の実施形態ではメッセージおよび移動情報は、異なるメッセージにおいて第２のコンピューティングデバイス１２４に送られる。第２のコンピューティングデバイス１２４は、第２のユーザ１２２にメッセージおよび移動情報を表示する。
【００３４】
[0039]  その後に、あるいはそうでなければメッセージおよび移動情報を第２のコンピューティングデバイス１２４に送った後のある時点で、２０８で第１のコンピューティングデバイス１０２は、センサ１１２から更新された移動情報を導出する。いくつかの実施形態では第１のコンピューティングデバイス１０２は、経過時間、トリガ、イベント、基準、規則、および／または他の要因に応答して、更新された移動情報を導出する。例えば第１のコンピューティングデバイス１０２は、予め規定された期間が経過した後に、交通状況（例えば渋滞）の変化を検出したとき、第１のコンピューティングデバイス１０２の行程（例えば経路）の変化および／または他の要因を検出したとき、更新された移動情報を導出することができる。
【００３５】
[0040]  ２１０で第１のコンピューティングデバイス１０２は、更新された移動情報を、前に送られた移動情報と比較する。２１４で比較に基づいて、更新された移動情報は、第１のコンピューティングデバイス１０２によって第２のコンピューティングデバイス１２４に送られる。例えば２１２で、第１のコンピューティングデバイス１０２は、更新された移動情報が、前に送られた移動情報によって示される行程とは異なる行程を示すかどうかをチェックすることができる。更新された移動情報が、前に送られた情報によって示される行程とは異なる行程を示す場合は、２１６で、更新された移動情報は第２のコンピューティングデバイス１２４に送られる。例えば更新された移動情報は、第１のコンピューティングデバイス１０２が現在は、以前の経路とは異なる経路上にあることを示し得る。別の例として更新された移動情報は、現在のＥＴＡが、以前のＥＴＡと異なる（例えば予め規定された閾値持続時間、または時間の長さだけ）ときに送られ得る。
【００３６】
[0041]  更新された移動情報が、前に送られた移動情報から大きく（例えば予め規定された閾値だけ）異ならない場合は、２１８で第１のコンピューティングデバイス１０２は、更新された移動情報を第２のコンピューティングデバイス１２４に送らない。例えば更新された移動情報が、前に送られた移動情報とおよそまたは実質的に同じ場合は、更新された移動情報は第２のコンピューティングデバイス１２４に送られない。
【００３７】
[0042]  代替としてまたは追加として、更新された移動情報は、メモリ領域１０８に記憶された更新頻度に従って導出され、送られる。更新頻度は、第１のユーザ１０４によって、第１のコンピューティングデバイス１０２のオペレーティングシステムおよび／または別のエンティティによって規定され得る。
【００３８】
[0043]  次に図３を参照すると例示的ブロック図は、第１の携帯電話３０６が、第２の携帯電話３０２に移動情報を送る実施形態を示す。第１のコンピューティングデバイス１０２、例えば第１の携帯電話３０６は、第２のコンピューティングデバイス１２４、例えば第２の携帯電話３０２と任意のネットワーク（例えばネットワーク１２８）を通じて通信する。この例では第１の携帯電話３０６のユーザは、第２の携帯電話３０２と移動情報を共有するように認可を与えている。例えば認可１２０は、このような共有を可能にするように規定されている。
【００３９】
[0044]  第１の携帯電話３０６は、第１の携帯電話３０６のユーザによるいかなるアクションもなしに、間欠的に、所定の時間に、および／または別の予め規定されたイベントが生じたとき、その移動情報を第２の携帯電話３０２に送るように構成され得る。移動情報は、デバイス識別、現在の緯度、経度、方向、速度、経路、目的地への推定到着時間などを含む、暗号化された形式３０４で送られる。
【００４０】
[0045]  第２の携帯電話３０２は、移動情報を受け入れるまたは拒絶するように第２の携帯電話３０２のユーザに促すことなく、第１の携帯電話３０６の移動情報を受け取るように構成され得る。むしろ、いくつかの実施形態では第２の携帯電話３０２は、移動情報を受け取り、関連するメッセージと一緒に移動情報を表示する。例えば場所は、テキストとして表示する、第２の携帯電話３０２によって実行される地図アプリケーション内に表示する、および／または第２の携帯電話３０２のホーム画面上のタイルまたは他のユーザインターフェース要素内に表示することができる。
【００４１】
[0046]  次に図４を参照すると例示的ブロック図は、その移動を検出し、更新された移動情報を第２の携帯電話３０２に送る、第１の携帯電話３０６を示す。第１の携帯電話３０６は、図２に関連して述べられたようにトリガ、イベント、基準などに基づいて、センサ１１２または他の手段などのセンサを用いて、その移動を検出する。第２の携帯電話３０２からの要求なしに第１の携帯電話３０６は、暗号化された形式での更新された移動情報４０４を導出し、第２の携帯電話３０２に送る。更新された移動情報は、例えばデバイス識別、現在の緯度、経度、方向、速度などを含む。第２の携帯電話３０２は、更新された移動情報を受け取り、更新された移動情報を（例えばテキストとして、地図アプリケーション内になど）、第２の携帯電話３０２のユーザに通知する。
【００４２】
[0047]  次に図５を参照すると例示的フローチャートは、移動情報を第２のコンピューティングデバイス１２４から受け取り、提示する第１のコンピューティングデバイス１０２の動作を示す。図５の例では第２のコンピューティングデバイス１２４は、要求があり次第にのみ移動情報を送るように構成され得る。例えば第２のユーザ１２２は、第２のコンピューティングデバイス１２４上の電力消費を低減する、またはメッセージに対するデータプラン制限内に留まるように送信されるメッセージの個数およびサイズを低減することを試みるようにすることができる。
【００４３】
[0048]  ５０２で第１のコンピューティングデバイス１０２は、メッセージが第２のコンピューティングデバイス１２４から受け取られたかどうかをチェックする。メッセージが第２のコンピューティングデバイス１２４から受け取られたときは、第１のコンピューティングデバイス１０２はメッセージと共に移動情報が含まれているかどうかを判断する。移動情報が利用可能でない場合、ならびにユーザ識別子１１８および認可１２０は移動情報が受け取られるように承認されていることを示す場合は、５０４で第１のコンピューティングデバイス１０２は、第２のコンピューティングデバイス１２４に関連する移動情報を求める要求を第２のコンピューティングデバイス１２４に送る。
【００４４】
[0049]  例えば、メッセージを送るユーザの識別は、メッセージを受け取るユーザによって記憶されたユーザ識別子１１８と比較される。移動情報を求める要求は、比較に基づいて第２のコンピューティングデバイス１２４に送られる。例えば比較が、メッセージを送るユーザは近親者または友人のグループ内（例えば許されたユーザ）であることを明らかにした場合は、第１のコンピューティングデバイス１０２は、移動情報を求める要求を送る。これと異なり比較が、メッセージを送るユーザは近親者または友人のグループ内ではない（例えば阻止されたユーザである）ことを明らかにした場合は、第１のコンピューティングデバイス１０２は、移動情報を求める要求を送らない。
【００４５】
[0050]  代替としてまたは追加として第２のコンピューティングデバイス１２４は、第２のコンピューティングデバイス１２４によって記憶された認可１２０を用いて、第１のコンピューティングデバイス１０２からの要求に応答して移動情報を送るかどうかを判断する。このようにして第２のコンピューティングデバイス１２４は、移動情報を第１のコンピューティングデバイス１０２との共有を承認または拒絶する。
【００４６】
[0051]  いくつかの実施形態では動作５０４および５０６は、第１のユーザ１０４に明示的に通知することなく行われる（例えば第２のコンピューティングデバイス１２４からのメッセージを受け取った時点において、ユーザアクションまたは承認なしに）。いくつかの他の実施形態では要求は、第１のユーザ１０４による入力に基づいて送ることができる。
【００４７】
[0052]  ５０６で第１のコンピューティングデバイス１０２は、第２のコンピューティングデバイス１２４から移動情報を受け取る。５０８で、受け取られたメッセージおよび移動情報は第１のユーザ１０４に提示される。いくつかの実施形態では、アプリケーション１１０からの単一のアプリケーションが、受け取ったメッセージおよび移動情報の両方をユーザインターフェースに表示するように実行する。
【００４８】
[0053]  図５に示される動作はまた、第２のコンピューティングデバイス１２４の観点から述べることができる。具体的には第２のコンピューティングデバイス１２４は、移動情報を送らずに、ピアツーピア接続を通して第１のコンピューティングデバイス１０２にメッセージ（例えばテキストメッセージ）を送る。その後に第２のコンピューティングデバイス１２４は、第１のコンピューティングデバイス１０２から、移動情報を求める要求を受け取る。第２のコンピューティングデバイス１２４は、認可１２０を考慮して要求を分析して、移動情報を第１のコンピューティングデバイス１０２に送るかどうかを判断する。判断に基づいて第２のコンピューティングデバイス１２４は、移動情報を導出し（例えばセンサ１１２からのデータから）、ピアツーピア接続を通して第１のコンピューティングデバイス１０２に移動情報を（例えばテキストメッセージで）送信する。
【００４９】
[0054]  次に図５に示される動作の例について述べる。
【００５０】
[0055]  次に図６を参照すると例示的ブロック図は、第１の携帯電話３０６が、第２の携帯電話３０２に移動情報を要求する実施形態を示す。第１の携帯電話３０６および第２の携帯電話３０２は最初に、第１の携帯電話３０６が、第２の携帯電話３０２に移動情報を要求し取得することを承認するように通信する。代替として承認は、図６に示されるように、移動情報を求める要求を受け取ったことに応答して生じ得る。
【００５１】
[0056]  図６は、第２の携帯電話３０２に移動情報を要求し受け取る、第１の携帯電話３０６を示すが、第２の携帯電話３０２が、第１の携帯電話３０６に移動情報を要求し受け取るように、第１の携帯電話３０６と第２の携帯電話３０２の役割は逆になり得る。
【００５２】
[0057]  図６に示されるように第１の携帯電話３０６は、第２の携帯電話３０２に関連する移動情報を求める要求６０６を、第２の携帯電話３０２に送る。例えば第１の携帯電話３０６は、第２の携帯電話３０２からのメッセージを受け取ったことに応答して、移動情報を要求する。いくつかの実施形態では、要求６０６は暗号化され、第１の携帯電話３０６に対するデバイス識別（例えばデバイス識別子）、要求６０６の日時（または第２の携帯電話３０２から受け取ったメッセージの日時）、およびチェックサムを含む。
【００５３】
[0058]  第２の携帯電話３０２は、要求６０６を受け取り、要求６０６を評価し、要求６０６に応答する。例えば第２の携帯電話３０２は、要求６０６からの情報を、第２の携帯電話３０２によって記憶されたまたはそれにアクセス可能な情報と比較することによって、要求６０６を認証および／または確証することができる。それに応答して第２の携帯電話３０２は、要求された移動情報６０８を第１の携帯電話３０６に送る。要求された移動情報６０８は、例えば第２の携帯電話３０２に関連するデバイス識別子、現在の経路、現在の緯度、経度、方向、速度、および／または第２の携帯電話３０２を記述する他の情報（例えば第２の携帯電話３０２に関する行程情報）を含む。さらに、要求された移動情報６０８は暗号化され得る。
【００５４】
[0059]  さらなる例
１つのシナリオでは移動情報は、第１のユーザ１０４が職場環境から出たときに、自動的に収集され、第２のユーザ１２２に送られ得る。別のシナリオでは移動情報は、第１のコンピューティングデバイス１０２が盗まれたと報告されたときに、自動的に収集され、第２のユーザ１２２に送られ得る。これらのシナリオでは移動情報は、第１のユーザ１０４からのメッセージなしに、またはデフォルトメッセージを有して送られ得る。
【００５５】
[0060]  いくつかの実施形態は、第１のコンピューティングデバイス１０２が複数スレッドをサポートする場合に異なるスレッドなどにおいて、プルシナリオおよびプッシュシナリオの両方の実装形態を企図する。例えば共にピアツーピア接続を通じて、第１のコンピューティングデバイス１０２は、第２のユーザ１２２を対象とする第１のメッセージが第１のユーザ１０４から受け取られた（例えば第１のユーザ１０４がメッセージをタイプした）かどうかをチェックすることができ、第１のユーザ１０４を対象とする第２のメッセージが第２のコンピューティングデバイス１２４から受け取られたかどうかをチェックすることができる。
【００５６】
[0061]  第１のメッセージを受け取ったことに応答して第１のコンピューティングデバイス１０２は、センサ１１２からまたは本明細書で述べられる他の手段によって、第１の移動情報を導出し、第１の移動情報と共に第１のメッセージを、第２のコンピューティングデバイス１２４に送る。第２のメッセージを受け取ったことに応答して第１のコンピューティングデバイス１０２は、第２の移動情報を第２のコンピューティングデバイス１２４から取得し（例えば第２の移動情報を求める要求を、第２のコンピューティングデバイス１２４に送ることによって）、第２の移動情報を受け取ったとき、第２のメッセージおよび第２の移動情報を第１のユーザ１０４に提示する。
【００５７】
[0062]  本開示のいくつかの態様は、第１のコンピューティングデバイス１０２および第２のコンピューティングデバイス１２４上で実行するオペレーティングシステムのタイプまたはブランドには関係なく動作する。このような実施形態では、第１のコンピューティングデバイス１０２および第２のコンピューティングデバイス１２４のそれぞれは、ピアツーピア通信を可能にするクライアントアプリケーションを実行する。さらに本開示の態様は後方互換性がある。例えば第２のコンピューティングデバイス１２４が、第１のコンピューティングデバイス１０２から受け取った移動情報を表示もしくは別の方法で使用することができない場合は、第２のコンピューティングデバイス１２４は、少なくともメッセージを第２のユーザ１２２に表示し、移動情報を無視することになる。
【００５８】
[0063]  いくつかの実施形態は、送出デバイスの場所、および／または移動情報を受け取るデバイスにおける受信者に基づいて、移動情報を送る前に移動情報をフィルタリングすることを企図する。例えば送出デバイスにおけるユーザが歩いているまたはジョギングしている場合は、速度および／または方向情報は受信者に送ることができない。これと異なりいくつかの実施形態は、メッセージおよび／または移動情報にメタデータを追加することを企図する。例えばいくつかの実施形態は、メッセージの緊急度および／または重要性を示すタグを追加することを企図する。メッセージの緊急度および／または重要性は、メッセージ自体から、および／または移動情報から導出することができる。
【００５９】
[0064]  いくつかの実施形態ではＥＴＡは、曜日および時刻に基づいて精緻化することができ、ＥＴＡを精緻化するために、メモリ領域１０８に記憶された、曜日および時刻に対応する前の交通データが用いられる。
【００６０】
[0065]  いくつかの実施形態では、第１のコンピューティングデバイス１０２および第２のコンピューティングデバイス１２４は、Ｗｉ−Ｆｉ保護セットアップによるＷｉ−ＦｉＤｉｒｅｃｔ通信方法を用いて互いにピアツーピア通信することができる。このような場合は、コンピューティングデバイスの初期ペアリングは近距離通信（NFC）を用いて行うことができる。
【００６１】
[0066]  いくつかの実施形態では、図に示される様々な要素の機能の少なくとも一部分は、図における他の要素、または図に示されないエンティティ（例えばプロセッサ、ウェブサービス、サーバ、アプリケーションプログラム、コンピューティングデバイスなど）によって行われ得る。
【００６２】
[0067]  いくつかの実施形態では図に示される動作は、コンピュータ可読媒体上にコード化されたソフトウェア命令として、動作を行うようにプログラムされたもしくは設計されたハードウェアにおいて、または両方において実装され得る。例えば本開示の態様は、チップ上のシステム、または複数の相互接続された導電性要素を含む他の回路として実装され得る。
【００６３】
[0068]  本明細書で用いられる「Ｗｉ−Ｆｉ」という用語は、いくつかの実施形態では、データの伝送のために高周波無線信号を用いるワイヤレスローカルエリアネットワークを指す。本明細書で用いられる「ＢＬＵＥＴＯＯＴＨ」という用語は、いくつかの実施形態では、短波長無線伝送を用いる短距離にわたってデータを交換するためのワイヤレス技術標準を指す。本明細書で用いられる「セルラ」という用語は、いくつかの実施形態では、一緒に結合されたときに、広い地理的地域にわたってデータの伝送を可能にする短い範囲の無線局を用いたワイヤレス通信システムを指す。本明細書で用いられる「ＮＦＣ」という用語は、いくつかの実施形態では、短距離にわたってデータを交換するための短い範囲の高周波ワイヤレス通信技術を指す。
【００６４】
[0069]  実施形態について、場所または移動データなどの監視されるおよび／またはユーザから収集されるデータ、ならびに監視されたまたは収集されたデータを他のユーザと共有することに関連して述べてきた。データの収集および共有について、ユーザに通知をもたらすことができ（例えばダイアログボックスまたは好みの設定を通じて）、ユーザには、監視、収集、および／または共有に対する同意を与えるもしくは拒否する、および／または何のデータが監視されるもしくは収集される、および／またはデータが誰と共有されるかを、カスタマイズする機会が与えられる。同意は、オプトイン同意またはオプトアウト同意の形をとることができる。
【００６５】
[0070]  例示的動作環境
例示的コンピュータ可読媒体は、フラッシュメモリドライブ、デジタル多用途ディスク（DVD）、コンパクトディスク（CD）、フロッピディスク、およびテープカセットを含む。例としておよび非限定的にコンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含む。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造体、プログラムモジュールおよび他のデータなどの、情報を記憶するための任意の方法または技術において実装された、揮発性および不揮発性メモリ、リムーバブルおよび非リムーバブルメモリを含む。コンピュータ記憶媒体は有形であり、通信媒体とは互いに排他的である。コンピュータ記憶媒体は伝搬されるデータ信号を除外する。いくつかの実施形態ではコンピュータ記憶媒体はハードウェアにおいて実装される。例示的コンピュータ記憶媒体は、ハードディスク、フラッシュドライブ、および他の固体メモリを含む。これと異なり通信媒体は、通常は搬送波または他の輸送機構などの変調されたデータ信号において、コンピュータ可読命令、データ構造体、プログラムモジュール、または他のデータを具体化し、任意の情報引き渡し媒体を含む。
【００６６】
[0071]  例示的コンピューティングシステム環境に関連して述べられたが本開示の実施形態は、数多くの他の汎用または専用コンピューティングシステム環境、構成、またはデバイスによって実装することができる。
【００６７】
[0072]  本発明の態様と共に用いるのに適し得るよく知られたコンピューティングシステム、環境、および／または構成の例は、モバイルコンピューティングデバイス、パーソナルコンピュータ、サーバコンピュータ、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、ゲームコンソール、マイクロプロセッサベースのシステム、セットトップボックス、プログラム可能な民生用電子機器、携帯電話、ネットワークＰＣ、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスの任意のものを含む分散型コンピューティング環境などを含むが、それらに限定されない。本明細書で述べられる移動性の低いまたは固定のコンピューティングシステムは、少なくともメッセージおよび移動情報を受け取るために用いられ得る。このようなシステムおよびデバイスは、キーボードもしくはポインティングデバイス、ジェスチャ入力を通じて、近接入力（ホバーリングなど）、および／または音声入力を通じてなどの、入力デバイスからを含む、任意の方法でユーザからの入力を受け入れることができる。
【００６８】
[0073]  本発明の実施形態は、ソフトウェア、ファームウェア、ハードウェア、またはそれらの組み合わせにおいて、１つまたは複数のコンピュータもしくは他のデバイスによって実行される、プログラムモジュールなどのコンピュータ実行可能命令との一般的な状況において述べることができる。コンピュータ実行可能命令は、１つまたは複数のコンピュータ実行可能コンポーネントまたはモジュールに編成され得る。一般にプログラムモジュールは、特定のタスクを行うまたは特定の抽象データタイプを実装する、ルーチン、プログラム、オブジェクト、コンポーネント、およびデータ構造体を含むが、それらに限定されない。本発明の態様は、任意の数および編成の、このようなコンポーネントまたはモジュールによって実装され得る。例えば本発明の態様は、図に示され本明細書で述べられた特定のコンピュータ実行可能命令、または特定のコンポーネントまたはモジュールに限定されない。本発明の他の実施形態は、本明細書に図示され述べられたものより多いまたは少ない機能を有する、異なるコンピュータ実行可能命令またはコンポーネントを含むことができる。
【００６９】
[0074]  本発明の態様は、本明細書で述べられた命令を実行するように構成されたときは、汎用コンピュータを専用コンピューティングデバイスに変形させる。
【００７０】
[0075]  本明細書に図示され述べられた、本発明の実施形態における動作の実行または遂行の順序は、別段の指定がない限り本質的なものではない。すなわち別段の指定がない限り動作は任意の順序で行うことができ、本発明の実施形態は、本明細書で開示されるものへの追加の動作、またはそれより少ない動作を含むことができる。例えば特定の動作を、別の動作の前に、それと同時に、またはその後で実行または遂行することは、本発明の態様の範囲内であることが企図される。
【００７１】
[0076]  本発明の態様、またはその実施形態の要素を導入するときに、冠詞「ａ」、「ａｎ」、「ｔｈｅ」、および「ｓａｉｄ」は、１つまたは複数の要素があることを意味するものである。用語「備える」、「含む」、および「有する」は包含的なものであり、列挙された要素以外の追加の要素もあり得ることを意図する。「例示的」という用語は「その一例」を意味するものである。「以下のＡ、Ｂ、およびＣの１つまたは複数」という語句は、Ａの少なくとも１つ、および／またはＢの少なくとも１つ、および／またはＣ少なくとも１つを意味するものとする。
【００７２】
[0077]  本発明の態様について詳しく述べてきたが、添付の特許請求の範囲に定義される本発明の態様の範囲から逸脱せずに、修正および変形が可能であることが明らかであろう。本発明の態様の範囲から逸脱せずに、上記の構造、製品、および方法に様々な変更を行うことができるので、上記の説明に含まれ添付の図面に示されるすべての内容は、説明のためであって、限定的な意味に解釈されるべきものではない。
【図１】
0006442470.tif 000002
【図２】
0006442470.tif 000003
【図３】
0006442470.tif 000004
【図４】
0006442470.tif 000005
【図５】
0006442470.tif 000006
【図６】
0006442470.tif 000007