優先権主張
本願は2012年1月5日に提出された米国仮特許出願第61/583,520号および2009年7月16に提出された米国特許出願第11/054,075号から優先権を主張し、それらの両方がその全体において参照によりここに組み込まれる。
発明の分野
本発明は一般に、位置情報の共有を可能にするモバイル通信デバイス上で動作可能なアプリケーションに関し、さらに具体的には、位置情報に関連するまたはその位置情報とは独立した少なくとも1つの通信モダリティ(communication modality)の分析および文脈上該当する情報の視覚的表示を1または複数のユーザーに提供するモバイル通信デバイス上で動作可能なアプリケーションに関する。
1つの実施の形態では、本発明は一般に、位置共有イベント(location sharing event)をメッセージングプラットフォームと統合するためのコンピュータ可読命令を利用するシステムおよび方法に関する。他の実施の形態では、本発明は一般に、未来イベント(future event)の通知を提供するためにコンピュータ可読命令を利用しかつ随意にその通知に基づいて位置共有イベントを生成しうるシステムおよび方法に関する。さらに他の実施の形態では、本発明は一般に、少なくとも2つのコンピューティングデバイスの間で経路を共有するためにコンピュータ可読命令を利用するシステムおよび方法に関する。
本発明の1つの態様では、メッセージング会話を位置共有イベントと統合するための方法は、(1)第1の通信モードでメッセージを受信するステップ、(2)前記メッセージが時間の表示、位置の表示、または両方を含むかどうかを決定するために前記メッセージを解析するステップ、および(3)前記表示の1つを決定すると、前記メッセージの送信者に前記位置共有イベントを送信するために前記メッセージの受信者にプロンプトを提供するステップを含む。
本発明の他の態様では、未来イベントの通知を提供するための方法は、(1)少なくとも2つのコンピューティングデバイスの間で少なくとも1つのメッセージを通信するステップ、(2)前記メッセージが前記2つのコンピューティングデバイスのうちの少なくとも1つのユーザーに対する未来時間コミットメントの表示を含むかどうかを決定するために前記少なくとも1つのメッセージの文脈を分析するステップ、および(3)前記2つのコンピューティングデバイスのうちの少なくとも1つのユーザーへの未来時間コミットメントの通知リマインダーを生成するステップを含む。
本発明のさらに他の態様では、少なくとも2つのコンピューティングデバイスの間で経路を共有するための方法は、(1)第1のコンピューティングデバイスのディスプレイスクリーン上でマップを表示するステップ、(2)前記第1のコンピューティングデバイスのユーザーによって前記マップ上に表示された近似経路に基づいて第1の位置から第2の位置への経路を生成するステップ、および(3)前記マップを第2のコンピューティングデバイスに送信するステップを含む。
図面において、同一の参照番号は同様の要素または動作を識別する。図面における要素のサイズおよび相対位置は、必ずしも正確に描画されないかもしれない。例えば、種々の要素の形状および角度は正確に描画されていないかもしれず、そしてそれらの要素のいくつかは図面の視認性を改善するために任意に拡大されたりあるいは位置決めされてもよい。
図1は、ここに開示された主題の様々な実施の形態のシステムおよび方法を実行するためのパーソナルコンピュータまたはパーソナルモバイルコンピューティングデバイスのような適当なコンピューティング環境を示す図である。
図2は、ユーザーがここに開示された主題の様々なシステムおよび方法を使用しうる適当なネットワーク化されたコンピューティング環境の図を示す。
図3は、ユーザーがここに開示された主題の様々なシステムおよび方法を使用しうる適当なネットワーク化されたコンピューティング環境の図を示す。
図4は、本発明の1つの実施の形態によるメッセージを解析しうる統合位置共有アプリケーションのためのグラフィックユーザーインターフェースの図である。
図5は、本発明の1つの実施の形態による位置共有イベントを修正するための随意のメニュー項目を示す図4の図である。
図6は、本発明の1つの実施の形態によるダイナミックズーム特徴を有する表示されたマップである。
図7は、本発明の1つの実施の形態による統合位置共有アプリケーションを使用して未来イベントの通知を生成するための方法を示すフローチャートである。
図8は、本発明の1つの実施の形態による統合位置共有アプリケーションを使用して経路を共有するための方法を示すフローチャートである。
詳細な説明
本発明の実施の形態は、多数の汎用または専用のコンピューティングシステム環境または構成で動作しうる。本発明に対する使用に適合しうる公知のコンピューティングシステム、環境および/または構成の例は、パーソナルコンピュータ(PCs)、サーバー、ネットワークコンピューティングシステム、ハンドヘルドまたはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサ搭載システム、セットトップボックス(set top boxes)、プログラマブルコンシューマエレクトロニクス、ネットワークPCs、ミニコンピュータ、メインフレームコンピュータ、上記のシステムまたはデバイスのうちの任意のものを含む分散コンピューティング環境、等を含むがそれらに限定されない。
1つの実施の形態では、本発明は一般に、位置共有イベントをメッセージングプラットフォームと統合するためにコンピュータ可読命令を利用するシステムおよび方法に関する。他の実施の形態では、本発明は一般に、未来イベントの通知を提供するためにコンピュータ可読命令を利用しかつ前記通知に基づいて位置共有イベントを任意に生成しうるシステムおよび方法に関する。さらに他の実施の形態では、本発明は一般に、少なくとも2つのコンピューティングデバイスの間で経路を共有するためにコンピュータ可読命令を利用するシステムおよび方法に関する。
図1を参照すると、本発明をインプリメント(implementing)するための例示システムは、コンピュータ110の形態の汎用コンピューティングデバイスを具備する。コンピュータ110のコンポーネントは、処理装置120、システムメモリ130、およびそのシステムメモリを含む種々のシステムコンポーネントを処理装置120に結合するシステムバス121を含みうるがこれらに限定されない。システムバス121は、メモリバスまたはメモリコントローラー、周辺バス、および種々のバスアーキテクチャのうちの任意のものを使用するローカルバスを含む幾つかのタイプのバス構造のうちの任意のものでありうる。例としてであって限定としてではなく、このようなアーキテクチャは、業界標準アーキテクチャ(ISA)バス、マイクロチャネルアーキテクチャ(MCA)バス、エンハンスドISA(EISA)バス、ビデオ電子標準協会(VESA)ローカルバス、およびメザニンバスとしても知られている周辺機器相互接続(PCI)バスを含む。
コンピュータ110は通常、種々のコンピュータ可読媒体を具備する。コンピュータ可読媒体は、コンピュータ110によってアクセスされうる任意の利用可能媒体でありうるものであり、揮発性および不揮発性の媒体、リムーバブルおよびノンリムーバブル媒体を含む。例としてであって限定としてではなく、コンピュータ可読媒体は、コンピュータ記憶媒体および通信媒体を含みうる。コンピュータ記憶媒体は、コンピュータ可読命令、データ構造、プログラムモジュール、および他のデータのような情報を記憶するための任意の方法および技術でインプリメントされる揮発性および不揮発性の媒体、および/またはリムーバブルおよびノンリムーバブル媒体を含みうる。コンピュータ記憶媒体は、RAM、ROM、EEPROM、フラッシュメモリまたは他のメモリ技術、CD−ROM、ディジタルバーサタイルディスク(DVD)または他の光ディスク記憶装置、あるいは所望の情報を記憶するために使用できかつコンピュータ110によってアクセスされうる任意の他の媒体を含むがこれらに限定されない。通信媒体は通常、コンピュータ可読命令、データ構造、データ構造、プログラムモジュール、または搬送波または他の搬送機構のような変調データ信号(modulated data signal)における他のデータを具体化しかつ任意の情報配送媒体を含む。「変調データ信号」という用語は、それの特性集合のうちの1つまたは複数を有するまたは信号内の情報を符号化する態様で変更された信号を意味する。例としてであって限定としてではなく、通信媒体は、有線ネットワークまたは直接配線接続、および音波、RF、赤外線、および他の無線媒体のような無線媒体を含む。上記のうちの任意のものの組み合わせが、コンピュータ可読媒体の範囲内に含められるべきである。
システムメモリ130は、読み取り専用メモリ(ROM)131およびランダムアクセスメモリ(RAM)132のような揮発性および/または不揮発性のメモリの形態をなすコンピュータ記憶媒体を含む。スタートアップ時のような場合にコンピュータ110内の要素間で情報を転送する作用をするベーシックルーチンを含むベーシック入力/出力システム133(BIOS)は通常、ROM131に格納される。RAM132は通常、処理装置120に直ちにアクセス可能なおよび/または処理装置120によって現在動作されているデータおよび/またはプログラムを含む。例としてであって限定としてではなく、図1は、オペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータ137を示す。
コンピュータ110はまた、他のリムーバブル/ノンリムーバブル、揮発性/不揮発性のコンピュータ記憶媒体を含みうる。例示のみとして、図1は、ノンリムーバブル、不揮発性の磁気媒体から読出しかつその媒体に書き込むハードディスクドライブ140、リムーバブル、不揮発性の磁気ディスク152から読出しまたはその磁気ディスクに書き込む磁気ディスクドライブ151、およびCD ROMまたは他の光媒体のようなリムーバブル、不揮発性の光ディスク156から読出しまたはその光ディスクに書き込む光ディスクドライブ155を示す。例示の動作環境で使用されうる他のリムーバブル/ノンリムーバブル、揮発性/不揮発性のコンピュータ記憶媒体は、磁気テープカセット、フラッシュメモリカード、ディジタルバーサタイルディスク、ディジタルビデオテープ、固体RAM、固体ROM、等を含むがこれらに限定されない。ハードディスクドライブ141は通常、インターフェース140のようなノンリムーバブルメモリインターフェースによってシステムバス121に接続され、磁気ディスクドライブ151および光ディスクドライブ155は通常、インターフェース150のようなリムーバブルメモリインターフェースによってシステムバス121に接続される。
上述されかつ図1に示されたドライブおよび関連コンピュータ記憶媒体は、コンピュータ110に対してコンピュータ可読命令、データ構造、プログラムモジュールおよび他のデータの記憶を提供する。図1には、例えば、ハードディスクドライブ141は、オペレーティングシステム144、アプリケーションプログラム145、他のプログラムモジュール146、およびプログラムデータ147を記憶するものとして示されている。これらのコンポーネントはオペレーティングシステム134、アプリケーションプログラム135、他のプログラムモジュール136、およびプログラムデータと同一であってもあるいはそれらとは異なっていてもよいことに注目されたい。オペレーティングシステム144、アプリケーションプログラム145、他のプログラムモジュール146、およびプログラムデータ147は、最低限、それらが異なるコピーであることを示すためにここでは異なる番号が与えられている。ユーザーは、キーボード162および一般にマウス、トラックボールまたはタッチパッドと一般に呼ばれるポインティングデバイス161のような入力装置によってコンピュータ20にコマンドおよび情報を入力できる。他の入力装置(図示せず)は、マイクロホン、ジョイスティック、ゲームパッド、サテライトディッシュ、スキャナー、等を含みうる。これらのおよび他の入力装置は、システムバスに結合されるユーザー入力インターフェース160によって処理装置120に接続されることが多いが、パラレルポート、ゲームポートまたはユニバーサルシリアルバス(USB)のような他のインターフェースおよびバス構造によって接続されてもよい。モニター191または他のタイプのディスプレイ装置もビデオインターフェース190のようなインターフェースによってシステムバス121に接続される。そのモニターに加えて、コンピュータはまた、出力周辺インターフェース190によって接続されうるスピーカー197およびプリンター196のような他の周辺出力装置を具備しうる。
コンピュータ110は、リモートコンピュータ180のような1つまたは複数のリモートコンピュータへの論理接続を使用してネットワーク環境内で動作しうる。リモートコンピュータ180は、パーソナルコンピュータ、サーバー、ルーター、ネットワークPC、ピアデバイスまたは他の一般的なネットワークノードであってもよく、通常、コンピュータ110に関連して上記で説明された要素の多くまたは全てを含むが、メモリ格納装置181だけが図1に示されている。図1に示された論理接続は、ローカルエリアネットワーク(LAN)171およびワイドエリアネットワーク(WAN)173を含むが、他のネットワークを含んでもよい。このようなネットワーキング環境は、オフィス、企業規模コンピュータネットワーク、イントラネット、およびインターネットでは普通である。
LANネットワーキング環境で使用される場合には、コンピュータ110はネットワークインターフェースまたはアダプター170によってLANに接続される。WANネットワーキング環境で使用される場合には、コンピュータ110は通常、インターネットのようなWAN上で通信を確立するためのモデム172または他の手段を具備する。内付けまたは外付けでありうるモデム172は、ユーザー入力インターフェース160または他の適切な機構によってシステムバス121に接続されうる。ネットワーク環境では、コンピュータ110に関して示されたプログラムモジュールまたはその一部がリモートメモリ記憶装置に記憶されうる。例としてであって限定としてではなく、図1はメモリ装置181上に常駐するものとしてリモートアプリケーションプログラム185を示す。図示されたネットワーク接続は例示であり、コンピュータの間に通信を確立する他の手段が使用されうることが認識されるべきである。
図2をここで参照して、本発明の実施の形態が図示された例示のコンピュータネットワークシステム200との関連で説明されうる。システム200は、ネットワーク220(例えば、インターネット)のような通信媒体によってサーバー230のような電子デバイスまたはシステムにリンクされるセルラーまたはモバイルテレホン、パーソナルコンピュータ、またはワークステーションのような電子ユーザーデバイスを含む。サーバー230はさらに、データベース240、電子記憶装置270およびコンピュータシステム260に結合されるかあるいは他の方法でそれらに対してアクセスを有しうる。図2に示された実施の形態は、ネットワーク220によって2つのユーザーデバイス210、280に結合された1つのサーバー230を具備するが、本発明の実施の形態は1つまたは複数のこのようなサーバーに結合された2つまたはそれより多いこのようなユーザーデバイスを使用してインプリメントされうることが認識されるべきである。さらに、ネットワーク220は、1つまたは複数のセルラーまたはモバイルテレホンにネットワーク接続性を提供する1つのまたは複数の電気通信タワー(図示せず)を具備しうるかあるいは他の方法でそのタワーに結合されうる。
1つの実施の形態では、ユーザーデバイス210、280およびサーバー230のそれぞれは、図示されかつ図1を参照して説明されたコンピュータ110に関連した特徴のすべてまたはすべてより少数を含みうる。ユーザーデバイス210、280はそれぞれコンピュータスクリーンまたはディスプレイ250、290を含むかあるいはそれらに他の方法で結合される。ユーザーデバイス210、280は、ネットワークおいおびローカルコンピュータプロセスの両方を含む種々の目的のために使用されうる。
例えば、ユーザーデバイス210、280上で走るブラウザーまたは他のアプリケーションのようなコンピュータプログラムがサーバー230と二方向通信で協働することができるように、ユーザーデバイス210、280はネットワーク220によってリンクされる。サーバー230は、データベース240および/または電子記憶装置270に結合され、それらから情報を検索しかつそれらに情報を格納しうる。さらに、図3に最も良く示されているように、サーバー230は、そのサーバー230がデータベースに記憶されたマップデータを使用して、デバイス210(および/またはデバイス280)の位置を表示するためにブラウザーまたは同様のアプリケーションによって使用されうる例えばHTMLデータのような位置データを生成できるようにする態様で、ユーザーデバイス210(および/またはデバイス280)および/または技術的に公知のGPS/三角測量システムと通信しうる。さらに、サーバー230は、ソノサーバーがコンピュータシステムにある処理機能を任せる態様でコンピュータシステムに結合されうる。
図2および3を参照すると、1つの実施の形態は、例えばユーザーデバイス210上で実行可能なクライアントサイドアプリケーションを具備する。デバイスのユーザーの指令により、アプリケーション205は、ユーザーデバイス280(または他の同様のユーザーデバイス)のユーザーの識別情報(例えば、イーメールアドレス、電話番号、サービス契約者のユーザーネーム、等)を含むリクエスト310をサーバー230に送り、ユーザーデバイス280のユーザー(または他の同様のユーザーデバイスのユーザー)がユーザーデバイス210、従って、デバイス210のユーザーの位置を追跡できるようにする承認データ(すなわち、「チケット」)を生成するように動作しうる。ユーザーインターフェースは、デバイス210のユーザーがデバイス210の位置を追跡しうる時間間隔の開始時間および/または長さを画定する1つまたは複数の値をデバイス210のユーザーが選択することまたは他の方法で入力することを可能にするように機能する。これらの値はリクエスト310に含まれる。
リクエスト310に応答して、サーバー230はチケット315を生成し、そのチケットをユーザーデバイス280に転送するように構成される。あるいは、図3に破線で示されているように、サーバーはチケット315をユーザーデバイス210に提供することができ、それにともなって、デバイス210はそのチケットをユーザーデバイス280に転送するために使用されうる。SMS、イーメール、または他の適当なメッセージングフォーマットによって送信されうるチケット315は、デバイス280のユーザーによって選択される場合に、サーバー230によって提供される追跡インターフェースへのアクセスを提供するように構成されるURLへの選択可能リンクのようなポインティングデータ(pointing data)を含む。チケット315は、デバイス210のユーザーによって入力されるデフォ経路メッセージまたはカスタマイズメッセージをさらに含みうる。
具体的には、デバイス280のユーザーがポインティングデータへのリンクを選択すれば、デバイス230はデバイス280に位置データを提供し、クライアントアプリケーション、ブラウザー、またはデバイス280上に常駐する他のインターフェースがデバイスの地理的位置の表示を生成するのを可能にするように構成される。有益なことには、1つの実施の形態は、デバイス210の位置を表示するためには従来のブラウザーがデバイス280上に常駐することを要求するにすぎず、そのようにするためには、それ以外にデバイス280上に特殊なアプリケーションがインストールされることを要求しない。位置データは、デバイス280のユーザーがデバイス210のリアルタイム移動を見ることができるように反復態様でデバイス280に提供されうるか、あるいはデバイス210の位置の「スナップショット」を単に提供するように一回だけ提供されてもよい。
1つの実施の形態では、サーバー230は、リクエスト310を生成する場合にデバイス210のユーザーによって指定された時間間隔の間だけデバイス280に位置データ305を提供する。様々な実施の形態において、デバイス210のユーザーは、ユーザーデバイス280が位置データに最初にアクセスすると開始するように時間間隔を設定し、特別に指定された時間の窓(例えば、特定の日または特定の集合の日の午後2〜3時)の間に生ずるように、あるいは任意の他のユーザーが指定した開始および停止時間に生ずるように時間間隔を設定しうる。1つの実施の形態では、デバイス280のユーザーによって受信されたチケット315は、その時間間隔の性質(例えば、開始の時間、存続期間、等)を表示しうる。さらに、他の実施の形態では、デバイス210のユーザーは、位置データ305がデバイス280に提供される前にリクエスト310に時間間隔を提供するのではなくて、デバイス280が位置データを受信してデバイス210を追跡し始めた後で時間間隔を1つのリクエストに提供して達成しうる。同様に、デバイス280が位置データを受信してデバイス210を追跡し始めた後で、デバイス210のユーザーは、チケット315の生成の前に提供されたリクエストに元々含まれた実効時間間隔を取り消すか、あるいは他の態様で修正しうる。さらに、特定のチケット315が、デバイス280のユーザー以外で追加のユーザーに与えられうる。そのような場合には、そのチケットは残った絶対時間を追跡しうる。したがって、チケット315が20分前に送られた30分チケットである場合には、新旧両方の受信者に対してそのチケットは10分で満了するであろう。さらに、予め定義された外部イベントは、共有許可時間間隔(sharing-permission time interval)を修正するように機能しうる。例えば、デバイス210のユーザーは、そのユーザーがユーザー指定の送り先に到達するまでだけチケット315は有効であることを指定しうる。あるいは、例えば、デバイス210のユーザーは、ユーザーがそのユーザーの出発位置から所定の距離(例えば、1マイル)となったときにのみチケット315が有効であることを指定しうる。
1つの実施の形態では、リクエスト310はさらに、ユーザーとユーザーデバイスが進行しているランドマークの表示を含みうる。したがって、サーバー230は、データベース240に関連したマップデータを使用することによって、位置データ305と共にランドマークの地理的位置を含みうる。
1つの実施の形態では、サーバー230による上記の機能性のすべては、代わりに、ネットワーク220上でユーザーデバイス280と直接通信するユーザーデバイス上で実行するアプリケーション205によってもっぱら実行されてもよいことが注目されるべきである。このような実施の形態では、リクエスト310は生成される必要はなく、チケット315はユーザーデバイス210によって生成され、ユーサーデバイス280に直接発行される。このような実施の形態では、チケット350に関連した時間間隔が満了するまで、ユーザーデバイス210はアプデートをユーザーデバイス280に常にまたはさもなければ周期的に送信する。あるいは、ユーザーデバイス280は、位置データについてユーザーデバイス210を常にまたはさもなければ周期的にポーリングする(poll)ように構成されたアプリケーションを含みうる。したがって、様々な実施の形態において、サーバー230は、ここに記述された機能性の実行(implementation)のためには必要ではない。
ここにおける説明の目的のために、本発明の1つの実施の形態は、位置メッセージを送信または受信するプロセスをコントロールする統合位置共有アプリケーションに関する。例として、その統合位置共有アプリケーションは、送信者および/または受信者の居場所に関する電話またはテキストメッセージに比較してより容易でより迅速な通信方法を有益に提供しうる。
これに限定されないがモバイルホンまたはコンピュータのようなインターネト可能デバイスは、位置メッセージを受信しうる。1つの実施の形態では、位置メッセージを受信しかつ潜在的に見るためにはソフトウェアもセットアップも必要とされない。送信者は、ひとりの特定の人間、幾人かの人間、あるいはソーシャルネットワーキングサイトまたはグループに送信しうる。以降においては簡明のために、「受信者」は、1の人間、グループ、サイト、ネームスペース、あるいは1より多い人間、グループ、サイトまたはネームスペースを意味しうる。
さらに詳細には、統合位置共有アプリケーションは、位置情報取得可能モバイル通信デバイスにダウンロードされ、送信者の選択の任意の受信者と予め設定された期間のあいだマップによって送信者がそれらの位置を共有できるようにするアプリケーションの形態を採りうる。統合位置共有アプリケーションでは、送信者は、誰が彼らの位置を見るか、いつ彼らが彼らの位置を見るか、およびどのくらい長く彼らが彼らの位置を見ることができるかについて、完全なコントロール状態にある。
ユーザーが使用前にログインしてフレンドネットワークを構築することを要求する他の位置情報サービスとは異なり、統合位置共有アプリケーションは、これに限定されないがGPSの機能を備えたモバイルスマートホンデバイスのような位置情報取得可能モバイル通信デバイスにダウンロードする数秒内に使用されうる。1つの実施の形態では、統合位置共有アプリケーションは、サービスを使用するためのアカウントを送信者または受信者に作成することを要求せず、これがログインおよびパスワードの煩わしさを排除する。
ダウンロードされると、送信者は、1または複数のコンタクトを選択することにより位置メッセージを任意の受信者に送信し、彼らが彼らの位置を受信者に利用可能となることを欲する期間を選択し、そして彼らのモバイル通信デバイス上で送信することができる。統合位置共有アプリケーションは、彼らの位置がどのくらい長く共有されうるかについて送信者がタイマーを設定できるようにする。送信者は、任意の時点で位置メッセージを「休止し」または「取り消し」あるいは現在の位置メッセージを延長することを選択する能力を有する。受信側では、受信者は位置メッセージを受信し送信者の所在地をマップ上で見るためにはインターネット可能デバイスおよびイーメールアクセスを必要とするだけである。例として、受信者は、他のランドマーク、ストリート、等と関連して送信者の正確な位置を表示するマップを有するブラウザーウインドウを開くためにクリックされうる固有のURLでSMSまたはイーメールメッセージを受信する。
本発明の1つの実施の形態では、統合位置共有アプリケーションは、テキストメッセージ、URLリンク、および/または送信者のモバイル通信デバイス上に常駐するイーメールプラットフォームとインターフェースする。統合位置共有アプリケーションはまた、これに限定されないがジェスチャー入力、動き検出、第三者送信、無線周波数識別情報、または他のシナリオベース自動入力のような他のタイプの入力ともインターフェースしうる。
例として、統合位置共有アプリケーションは、テキストメセージを受信し、そのテキストメッセージを解析し、そして時間および/または位置に関連しうるキーワード、略語、シンボルまたは他のテキストを判定するために前記解析されたテキストメッセージを分析しうる。統合位置共有アプリケーションは、メッセージング会話の文脈を分析し、そしてテキストメッセージの解析および/または操作によって現在のメッセージング会話の解析された文脈情報のインラインおよびリアルタイム表示を提供しうる。
統合位置共有アプリケーションは、下記において詳細に説明される様々な解析、分析および表示技術を実行しうる。これらの技術は異なるシーケンスでおよび/または任意所望の組み合わせで独立に実行されうることが理解される。さらに、統合位置共有アプリケーションは、テキストまたはイーメールメッセージのほかに他の通信モードを使用して、例えばリアルタイムの電話会話またはボイスメールメッセージを解析し分析するための音声認識ソフトウェアを使用して、解析、分析および表示技術を実行しうる。
統合位置共有アプリケーションは、メッセージの文脈に基づいて動作を開始するためにテキスト解析を利用しうる。文脈分析から、統合位置共有アプリケーションは、送信者のまたは受信者の位置についての情報が共有のために有用であるかどうかを決定できるであろう。例えば、ある人は、「私は遅れて走っている」(I’m running late.”)と友人に言うためにテキストメッセージを送信しうる。統合位置共有アプリケーションは、そのテキストメッセージを解析し、文脈が時間(すなわち、「遅れて」(”late”))および相対位置(すなわち、「走っている」(”running”))を与えることを認識するであろう。したがって、統合位置共有アプリケーションは、そのある人、友人または両人に彼らの各位置を共有するように促すであろう。1つの実施の形態では、統合位置共有アプリケーションは、当事者が友人または気に入った人として互いに認定しているので、当事者のリアルタイム位置を自動的に共有しうる。他の実施例では、統合位置共有アプリケーションは、当事者の一方または両方に彼らの位置情報を修正および/または更新するように促しうる。例えば、当事者のひとりが「私は途中で店に寄る必要がある」(I’ll need to stop at the shop on the way”)または「私は代わりに橋を取る」("I’ll take the bridge instead.”)と言うかもしれない。追加的にまたは代替的に、統合位置共有アプリケーションは、これらに限定されないが品物を買うこと、予約をすること、あるいはクーポンを探すことのような非位置共有シナリオのために使用されうる。
統合位置共有アプリケーションは、これらに限定されないがアドレス、施設名称、ランドマーク名称、出発時間、交通渋滞、等のようなネイティブ言語の位置および/または時間情報を検索するためにテキストメッセージを解析する。ネイティブ言語がテキストメッセージの文脈または他の通信モード内で解析され、分析され、そしてマップされる。
図4は、メッセージを送信するおよび/または受信する統合メッセージングクライアント402および位置情報を共有する統合マッピングクライアント404を含む、統合位置共有アプリケーションのためのユーザーインターフェース400を示す。図示された実施の形態では、第1の人間が所有する第1のモバイル通信デバイス上の統合位置共有アプリケーションが、「ねぇどこにいるの?」(Hey where are you?”)という第1のテキストメセージを送信する。第2の人間が所有する第2のモバイル通信デバイス上に統合位置共有アプリケーションを有する第2の人間は、第1のテキストメッセージ406を受信し、統合位置共有アプリケーションが第1のテキストメッセージ406を解析し、そしてそれを時間および/または位置情報について分析するであろう。この実施例では、「どこに」("where”)という用語は、第2の人間の位置情報を第1の人間と共有するオプションに第2の人間が応答するためのプロンプト408を提供するであろう。プロンプト408は、リンク(例えば、http://location.com/abc-123)として第1の人間に送信されうる。第1の人間がそのリンクをアクティベートすると、第1のモバイル通信デバイスは、1つまたは複数の地理的識別子414(例えば、道路名称、ランドマーク名称、等)に関する第2の人間の現在位置412を示すマップ410を視覚的に表示するであろう。
さらに、統合位置共有アプリケーションは、それらの時点で既知の位置と相互参照されうるメッセージングタイムスタンプ416を利用しうる。例として、そのメッセージングタイムスタンプ416は、テキストメッセージ406がタイムスタンプ416と共に送信された場合にはリアルタイムの地理的位置に従ってマップ410上に表示されうる。追加の特徴として、マップ410の下部におけるタイムアジャスター(time adjuster)が、テキストメッセージ406タイムラインの特定の部分を選択するために使用されうる。例として、タイムアジャスターは、図5のプログレスバー418内にテキスト「+15分」として示されている。他の実施の形態では、動的コンテンツおよび/または文脈情報がデバイス上に表示されうる。この説明の目的のためには、動的コンテンツ、これに限定されないが、ユーザーの位置または状況のような放送しているか放送していないかでユーザーについて変化する情報のようなコンテンツでありうる。文脈情報は、これらに限定されないが、既存のテキスト会話を補強するために使用されうるレストラントの評価、ビデオ、画像、等のような情報でありうる。動的コンテンツおよび/または文脈情報は、テキストメッセージ406内に表示され、リアルタイムでアクセスされかつ表示されうる。メッセージングビューとマップビューとの間で切り替えるために、統合位置共有アプリケーションのユーザーは、コンピューティングデバイスのディスプレイスクリーンまたはそのデバイスに関連した他の入力機構上で左方/右方にまたは上方/下方にスワイプしうる。
図示された実施の形態によれば、2またはそれより多い当事者間の位置共有を促すために、メセージング会話の文脈および/またはコンテンツが解析されうる。これらの入来メッセージのコンテンツは受信クライアントに応じて修正されうる。その修正は元のメッセージまたは元のメッセージに対する若干の修正を含んでいてもいなくてもよい。メセージング会話の文脈内で、作用する他のアプリケーションに対して指令がなされうる。例えば、メッセージング会話の文脈内で、ある人が1または複数のイーメールまたは電話コンタクトに「位置を送れ」("Send Location”)を送信し、30分の活性化時間を選択する場合には、30分の間または送信者が意図的に位置共有を終了するまで、送信者の位置が受信者によって見られうる。追加的にまたは代替的に、メッセージング会話のベーシックテキストは、送信者の位置の精度に応じて調節されうる。1つの実施の形態では、逆ジオコーディングされた情報(reverse geo-coded information)を伴うメセージ会話は、逆ジオコーディングされている送信者の位置の精度に基づいて調節されうる。例えば、「あたりの」(”around”)という語は精度がある距離以上である場合に使用されうるが、「おける」(”at”)という語は精度がある距離以内である場合に使用されうる。
図5は、位置共有イベントについて残っている時間のプログレスバー418を示す。さらに、オプションメニュー420は、プログレスバーから延長しうる。例として、オプションメニュー420は、位置共有イベントの時間を延長するオプションを送信者に提供し、選択された送り先に到達すると位置共有イベントが終了し、または現時点で単に終了しうる。オプションメニュー420は、追加のオプション、異なるオプションまたはより少ないオプションを含みうる。1つの実施の形態では、位置共有イベントの鮮度が会話ビュー内に表示されうる。会話ビューは、図4に示されているように色処理またはアイコンの形態をとりうる、鮮度を表示する視覚要素を含む人間および/または会話のリストを含みうる。
図5をさらに参照すると、位置インジケーターの1つの色の鮮度インジケーターが矢印として示されている。他の実施の形態では、鮮度インジケーターは、カウントダウンタイマー、アニメアイコン、可聴サウンド(精度リング、ピングサウンド)またはある他の人間の知覚可能信号の形態をとりうる。任意の実施の形態において、鮮度インジケーターは見る人に送信者の位置の鮮度についての信号を提供するであろう。
鮮度の表示は、ある時に位置共有イベントに現在関わっている当事者に送信者の最も新しい位置の時刻と受信者が受信者の位置を送信者と現在共有しているかどうかを知らせる。これらに限定されないが、送信者と受信者(またはその逆の)の間の相対距離、送信者および/または受信者の向う方向(heading)、送信者および/または受信者の目的地への予想到達時刻、現在の市、州または地域、および送信者および/または受信者の最後のチェックイン場所のような付加情報も会話ビューに表示されうる。
図6は、送信者と受信者の間の位置共有イベントのマップ500を示す。マップ500は、ダイナミックズームボタン502を有する対話型マップの形態をとりうる。図示された実施の形態では、マップ500は、見る人がマップ500上に示されるように選択しかつマップ500上で可視状態にある特徴を許容するようにズームレベルを適切なレベルに自動的に調節しうる。そのマップ位置特徴のダイナミックな性質により、ズームレベルはこれらの変化に適応するように連続的に調節されうる。1つの実施の形態では、複数のボタンがマップ上に示され、これらのボタンは、どの特徴がマップ上に現れるべきかを選択するためにトグル(toggled)されうる。したがって、マップは、選択された特徴をマップ上に最適に表示するように自動的にサイズを変更しうる(すなわち、ズームレベルを調節しうる)。
図7は、本発明の1つの実施の形態による統合位置共有アプリケーションを用いて未来イベントの通知を提供するための方法600を示す。ステップ602において、少なくとも1つのメセージが少なくとも2つのコンピューティングデバイスの間で通信される。ステップ604において、メッセージが2つのコンピューティングデバイスのうちの少なくとも1つのユーザーについての未来時間コミットメント(future time commitment)の表示を含むかどうかを決定するために、メッセージの文脈が分析される。ステップ606において、未来時間コミットメントの通知リマインダーが2つのコンピューティングデバイスのうちの少なくとも1つのユーザーに対して生成される。例として、メッセージの文脈分析が、アラーム、カレンダー上の予定時間、またはコンピューティングデバイスのうちの1つ上の他のタイプのメッセージの形態をとりうる通知リマインダーを開始する。受信者が、「午後4時に希望の目的地で会おう」("Meet at a desired destination at 4pm”)と言うメッセージを受信して「了解」(”OK”)と応答すると、統合位置共有アップリケーションは、受信者が定刻に希望目的地に到着するように、テキストメッセージで受信者に特定の時間に出発することを促す。統合位置共有アップリケーションは、テキストメッセージが受信者に送信されるタイミングを相関(correlate)するために受信者の現在位置を斟酌する。受信者がその受信者の現在位置から離れると、統合位置共有アプリケーションは、受信者が「いま出発している」("leaving now”)というメッセージまたは受信者が間もなく到着することを送信者に示す他のある語句を送信者に自動的に送信しうる。
図8は、本発明の1つの実施の形態による統合位置共有アプリケーションをそれぞれ使用する少なくとも2つのコンピューティングデバイス間で経路を共有するための方法700を示す。ステップ702において、第1のコンピューティングデバイスのディスプレイスクリーン上のマップが表示される。ステップ704において、第1の位置から第2の位置への経路が、第1のコンピューティングデバイスのユーザーによってマップ上に表示された近似経路に基づいて生成される。その近似経路は、指、スタイラス、または第1のコンピューティングデバイスのディスプレイスクリーンと対話しうるある種の他の器具によって表示されうる。ステップ706において、近似経路は、第2のコンピューティングデバイスに送信され、そこでその近似経路は第2のコンピューティングデバイスのユーザーによって修正または改訂されうる。
例えば、第1のユーザーは、第1のコンピューティングデバイス上に表示されたマップ上の指で近似経路を生成する。この実施例では、近似経路は一般に不明確でありうるが、マップ上の既知の地理的特徴に基づいてより明確な経路の形をとるように自動的に修正(例えば、「スナップ」("snapped”)されうる。近似経路またはスナップ経路(snapped route)は、ナビゲーションのためのガイドとしてまたは確認のために使用されるように第2のコンピューティングデバイス(または複数の他のコンピューティングデバイス)に送信されうる。
第2のコンピューティングデバイスによって受信されると、第2のコンピューティングデバイスノユーザーは、この場合にも指、スタイラスまたは第2のコンピューティングデバイスのディスプレイスクリーンと対話しうるある他のデバイスを使用して、全経路の一部を動かすかまたは全経路を動かすことによって経路を修正または改訂しうる。続いて、修正されたマップは第1のコンピューティングデバイスまたは他のコンピューティングデバイスへと送信して戻されうる。
他の実施の形態では、近似経路または修正マップは、1つまたは複数のコンピューティングデバイスとリアルタイム表示で共有されうる。例えば、あるユーザーが近似マップまたは修正マップを特定のランドマーク上にセンタリングすると、そのマップを見ている他のユーザーは、特定のランドマーク上にセンタリングされた彼らのマップをも見るであろう。
本発明の他の実施例では、ユーザーがソーシャルネットワーク上で友達を検索したり、写真、チェックイン、等のような他の要素を追加することを可能にしうる。ソーシャルネットワークまたは他のウェブソースから収集された周辺情報は、ユーザーに彼らの通信相手についてのより多い情報を与えるためにマップ上に含まれうる。この情報は、これらに限定されないが、ソーシャルネットワークチェックイン、ツイッター(TWITTER)(登録商標)メッセージ、画像、ソーシャルネットワークポスト、等を含みうる。位置情報は、表示されるためにユーザーに直接送信される必要はない。該当するジオコーディングされた情報が複数の情報源から取り出されると、それはユーザーに表示されうる。例えば、位置メッセージがソーシャルネットワーキングサイトにポストされるがユーザーに直接送信されない場合には、統合位置共有アプリケーションは、その位置情報を、それが該当するものであるので、依然として表示しうる。つまり、統合位置共有アプリケーションは、他のデータベースから情報を収集して統合(および場合により推定)しうる。アクセスの許可はデータソースによって変更しうる。
例として、受信者は、受信者のアイコン上にテキストバブルで表示されうるYELP(登録商標)レビューサイト、最近のFOURSQUARE(商標登録)位置チェックイン、および/または最近のTWITTER(登録商標)メッセージのような、ソーシャル評価サイト(social rating site)上で送信者が評価した最後の場所をマップ上の送信者が見ているのを見ることができる。このアイデアは、第1のユーザーが第2のユーザーとの通信を見ている場合に第2のユーザーについての全ての該当情報を見つけるために、第1のユーザーがアクセスを契約した/アクセスを有するソーシャルネットワークおよび他のインターネット検索/データベースを活用することである。さらに、ソーシャルネットワークの活用(leveraging)は、ユーザー間の通信のコンテンツによって告知され、文脈的方法で行われうる。
1つの実施の形態では、ソーシャルネットワークからのチャット参加者の位置が単一のボタンタッチによってリクエストされうる。
統合位置共有アプリケーションはまた、1つまたは複数の非視覚的な対話方法および要素を含みうる。例として、テキストコマンドは、メッセージング会話内にタイプされうる。これらのコマンドは、会話の相手方には必ずしも送信されず、情報を示すために統合位置共有アプリケーションによってインターセプト(intercepted)または解析されうる。例えば、マップがメッセージ会話内に示される場合には、見ている人は、マップ上の交通情報に「トラフィックを表示」(”show traffic”)をタイプしうる。このメッセージは、会話の相手方に送信されないかもしれないが送信可能であり、むしろ統合位置共有アプリケーションによって解釈可能であり、情報が適宜表示される。
統合位置共有アプリケーションは、これらに限定されないが、目的地、更新速度、メッセージ、等のような予め定義された位置共有パラメーターと一緒に送信者によって送信される位置情報のリクエストを可能にする。そのリクエストの受信者は、位置共有イベントを開始する前に共有パラメーターを変更しうる。
他の実施の形態では、統合位置共有アプリケーションは、受信者が会話の相手方あるいは送信者からリアルタイム位置更新および予定時間または到着通知を受信することを許容しうる。受信者は、会話の相手方が所定の時間または距離だけ離れている場合、あるいは所定の外部イベントが生じる場合、例えば送信者が店または他の場所から離れる場合に、通知を求めるパラメーターを設定しうる。
[ さらに他の実施の形態では、リアルタイムの相対位置通知は、受信者が同じ目的地で送信者に会う概略時刻を決定するために、送信者の現在位置および送信者の目的地、ならびに潜在的に他の影響する情報(例えば、輸送モード、交通量)を斟酌しうる。例えば、受信者が「30分で目的地に到着する」(”I’ll be at a particular destination in thirty minutes”)というメッセージを送信者から受信し、送信者はその目的地から10分のところにいる場合には、受信者は、目的地で送信者に会うために20分したら彼らの現在地を離れるようにとのプロンプトを受信しうる。1つの実施の形態では、そのプロンプトは、受信者のデバイス上のカレンダーイベント(calendared event)またはアラーム通知の形態をとりうる。
前記の実施の形態は、ユーザーが交通に対して30分離れたアポイントメントを有する場合には、アプリケーションが、スケジュールされたアポイントメントより30分前に目的地に向かって出発するための通知を与えるようなスマートな通知のアプリケーションを提供する。追加的にまたは代替的に、前記実施の形態は、ユーザー間の通信時に、特定の場所での特定の時刻における出会いを調整しうる文脈通知を提供しうる。
さらに他の実施の形態では、統合位置共有アプリケーションは、現在の会話の文脈内に位置情報があることを知らせることによって、最近の位置情報の相対的な適時性を示すマップ上に表示されたマップボタンを含みうる。例として、そのマップボタンは速度、方向、近接、等を示しうる。
他の実施の形態では、表示されたマップは異なるユーザーを表す色、座標、等を含みうる。例えば、異なる色位置インジケーターは、異なるユーザーの様々な位置を識別するために使用されうる。さらに、色インジケーターは、これらに限定されないがジオコーディングされた画像、示唆された目的地、関心のある点、等のようなそのユーザーによってポスティングまたは送信されたテキストメッセージまたは他の情報を示すために使用されうる。
さらに、表示されたマップは、位置がリクエストされる場合の警告を含みうる。例として、位置リクエストは、受信者がそのリクエストを確認、拒否または修正するように要求された場合に、受信者に押し付けられうる。さらに、送信者の対話なしにリクエストを自動的に確認、拒否または修正するために受信者によってパラメーターが所定の場所に導入されうる。
他の実施の形態では、表示されたマップは、個々の位置が必ずしも表示されず、それに代えてグループ位置の集合(aggregate)が表示されうるグループ会話のためのグループ位置表示を提供しうる。その集合は、質量または面積中心ディスプレイ(a center of mass or area display)の形態をとりうるものであり、ここにおいて、質量または面積の中心はグループのすべての位置参加メンバー間の平均距離によって表されうる。その集合は異なる密度の特定領域を含みうる。随意に、集合はヒートマップの形態をとりうる。
統合位置共有アプリケーションの他の実施の形態は、送信者の位置に応じてビューアー(viewer)に表示される位置ベース広告を含みうる。このアプリケーションは、受信者に彼らの位置に応じて送信されうるクーポンまたは商品券を含むことができ、そのクーポンまたは商品券は、実際のまたは予測された経路または先行位置挙動に基づいてリアルタイムで更新されうる。
1つの実施の形態では、統合位置共有アプリケーションは、会話内のユーザーのグループが彼らの現在の会話に該当する文脈視覚情報(contextual visual information)を表示しうる共同意思決定を提供しうる。このアプリケーションは、1または複数のユーザーに決定をするように促しうる。例として、学生のグループが今夜の夕食をどこでとりたいかについてチャットしており、したがってアプリケーションは、時間と位置の文脈を認識し、その領域内の場所についてのレビューを表示する。ユーザーは、彼らがどこで食事をしたいかについて投票するように要請される。
さらに他の実施の形態では、統合位置共有アプリケーションはユーザー間に緊密な接触(close contact)および/または形ばかりの接触(token contact)を提供しうる。緊密な接触は、モバイルデバイス間の実際のまたは緊密な接触によって生成される位置共有関係の形態をとりうる。位置情報の共有は、所定の時間で終了しうるか、または個々に解消されうるか、あるいは外部イベントに応じて自動的にまたは手動で停止しうる。形ばかりの接触は、二人のユーザーがいずれかの人間が他の人間またはグループと共有されうるトークン(token)を確立するためにモバイルデバイスをかるくタップする場合にありうる。そのトークンは、タップされた他の人と位置情報を共有するための許可のような権利を提供しうる。
上記の様々な実施の形態は、他の実施の形態を提供するために組み合わせることができる。本明細書で参照された上記の米国特許、特許出願および公報のすべてが参照によりここに組み込まれる。さらに前記種々の特許、出願および公報の考案、特徴および概念を使用して他の実施の形態を提供するために、もし必要であれば、態様が修正されうる。
これらのおよび他の変更は、上記の詳細な説明を考慮してなされうる。一般に、下記の請求項では、使用されている用語は、本明細書および請求項に開示された特定の実施の形態に本発明を限定するように解釈されるべきではなく、請求項に従って動作する媒体イメージング、媒体切断および媒体処理のすべてのタイプを含むように解釈されるべきである。したがって、本発明はこの開示によって限定されず、それの範囲はもっぱら下記の請求項によって決定されるべきである。