(57)【特許請求の範囲】
【請求項１】
第２のデバイスの検出に応答して第１のデバイスの動作を変更する方法であって、
第２のデバイスを検出するステップと、
前記第２のデバイスの前記検出に応答して、前記第２のデバイスとの通信を確立するステップと、
前記第２のデバイスとの通信の前記確立により第１のデバイスの機能が影響を受けることを判定するステップと、
前記第１のデバイスの前記機能に関する動作を開始するステップと、
を具備し、前記第１のデバイスの前記機能は第１の機能であり、前記方法はさらに、
前記第１のデバイスの第２の機能が前記第２のデバイスとの通信の前記確立により影響を受けないことを判定するステップと、前記第２の機能に関する第２の動作を開始するステップとを具備し、
前記第２の動作は、前記第２の機能をユーザへの情報の表示から取り除くことを特徴とする方法。
【請求項２】
前記第１のデバイスのその時点の動作上の状態を判定するステップをさらに備え、前記第１のデバイスの前記機能に関する動作を開始するステップは、前記その時点の動作上の状態に従う、ことを特徴とする請求項１に記載の方法。
【請求項３】
前記第１のデバイスの前記その時点の動作上の状態は、前記第１のデバイスの電池電力レベルにより影響を受ける、ことを特徴とする請求項２に記載の方法。
【請求項４】
前記検出するステップは、前記第２のデバイスのデバイスタイプを識別するステップを含む、ことを特徴とする請求項１に記載の方法。
【請求項５】
前記第１のデバイスの前記機能は、前記第２のデバイスの前記デバイスタイプに特有である、ことを特徴とする請求項４に記載の方法。
【請求項６】
前記検出するステップは、前記第２のデバイスから無線伝送を受信するステップを含む、ことを特徴とする請求項１に記載の方法。
【請求項７】
前記検出するステップは、前記第２のデバイスに無線により問い合わせするステップを含む、ことを特徴とする請求項１に記載の方法。
【請求項８】
前記通信を確立するステップは、さらに、前記第２のデバイスが前記第１のデバイスから予め定められた距離以内にあることを判定するステップと、当該距離判定に対応して、前記第１および第２のデバイスの間にセキュリティプロトコルを確立するステップを含む、ことを特徴とする請求項１に記載の方法。
【請求項９】
前記第１のデバイスの前記機能の実施が前記第２のデバイスを必要とする場合には、前記第１のデバイスの前記機能は、前記第２のデバイスとの通信の確立により影響を受ける、ことを特徴とする請求項１に記載の方法。
【請求項１０】
前記第１のデバイスの前記機能に関する動作を開始するステップは、前記第１のデバイスの前記機能を可能にするステップを含む、ことを特徴とする請求項１に記載の方法。
【請求項１１】
前記第１のデバイスの前記機能に関する動作を開始するステップは、ユーザの介入なしで前記機能を提供するステップを含む、ことを特徴とする請求項１に記載の方法。
【請求項１２】
前記第２の動作は、前記第２の機能を無効にする、ことを特徴とする請求項１に記載の方法。
【請求項１３】
前記第１のデバイスの前記機能に関する動作を開始するステップは、前記第１のデバイスの前記機能を前記第１のデバイスのユーザに提示するステップを含む、ことを特徴とする請求項１に記載の方法。
【請求項１４】
リモートデバイスの検出に基づいて、デバイス自身の動きを変更することが可能なデバイスであって、
複数の機能を格納したメモリと、
前記リモートデバイスを検出し、該リモートデバイスとの通信を確立する無線インターフェースと、
前記複数の機能の１つが前記リモートデバイスとの通信の確立により影響を受けることを判定し、該判定に応答して前記複数の機能の１つに関する動作を開始するプロセッサと、
を具備し、
前記プロセッサは、さらに、前記複数の機能の第２の機能が前記リモートデバイスとの通信の前記確立により影響を受けないことを判定し、前記第２の機能に関する第２の動作を開始し、前記第２の動作は、前記第２の機能をユーザへの情報の表示から取り除くことを特徴とするデバイス。
【請求項１５】
前記無線インターフェースは、前記リモートデバイスに関連付けられたＲＦＩＤタグを検出する、ことを特徴とする請求項１４に記載のデバイス。
【請求項１６】
ユーザに情報を提示するためのユーザインターフェースをさらに備える、ことを特徴とする請求項１４に記載のデバイス。
【請求項１７】
前記プロセッサにより開始された前記複数の機能の１つに関する動作は、前記ユーザインターフェース上での前記複数の機能の１つに関連した情報のプレゼンテーションである、ことを特徴とする請求項１４に記載のデバイス。
【請求項１８】
前記プロセッサは、さらに、前記複数の機能の１つを可能にすることにより前記複数の機能の１つに関する動作を開始する、ことを特徴とする請求項１４に記載のデバイス。
【請求項１９】
前記プロセッサは、さらに、前記リモートデバイスが予め定められた距離以内にあるか否かを判定し、前記距離判定に対応して、前記リモートデバイスとセキュリティプロトコルを確立する、ことを特徴とする請求項１４に記載のデバイス。
【請求項２０】
第２のデバイスに応答して第１のデバイスの動作を変更する方式であって、
第２のデバイスを検出する手段と、
前記第２のデバイスの前記検出に応答して前記第２のデバイスとの通信を確立する手段と、
前記第２のデバイスとの通信の確立により前記第１のデバイスの複数の機能の１つが影響を受けることを判定する手段と、
前記複数の機能の１つに関する動作を開始する手段と、
前記複数の機能のうち第２の機能が、前記第２のデバイスとの通信の確立により影響を受けないことを判定し、前記第２の機能に関する第２の動作を開始する手段と
を具備し、前記第２の動作は前記第２の機能をユーザへの情報の表示から取り除くことを特徴とする方式。
【請求項２１】
前記第１のデバイスと前記第２のデバイスのと間の距離を測定する手段と、
前記測定された距離が予め定められた閾値以内であるか否かを判定する手段と、
前記測定された距離が前記予め定められた閾値以内であるという判定に応答して、セキュリティプロトコルを確立する手段と、
をさらに備える、ことを特徴とする請求項２０に記載の方式。
【請求項２２】
前記複数の機能の１つに関する動作を開始する手段は、さらに、前記複数の機能の１つに関する前記動作を可能にする手段を備える、ことを特徴とする請求項２０に記載の方式。
【請求項２３】
前記複数の機能の１つに関する情報をユーザに提示する手段をさらに備える、ことを特徴とする請求項２０に記載の方式。
【請求項２４】
第２のデバイスの検出に応答して第１のデバイスの動作を変更する方法を実行させる、コンピュータ可読命令を有したコンピュータ可読媒体であって、
前記方法は、
前記第２のデバイスを検出するステップと、
前記第２のデバイスの検出に応答して前記第２のデバイスとの通信を確立するステップと、
前記第１のデバイスの機能が前記第２のデバイスとの通信の確立により影響を受けることを判定するステップと、
前記第１のデバイスの機能に関する動作を開始するステップと、
を含み、前記第１のデバイスの機能は第１の機能であり、前記方法はさらに、
前記第１のデバイスの第２の機能が前記第２のデバイスとの通信の前記確立により影響を受けないことを判定するステップと、前記第２の機能に関する第２の動作を開始するステップとを含み、
前記第２の動作は前記第２の機能をユーザへの情報の表示から取り除くことを特徴とするコンピュータ可読媒体。
【請求項２５】
前記方法は、前記第１のデバイスの現在の動作上の状態を判定するステップをさらに備え、前記第１のデバイスの機能に関する動作を開始するステップは、前記現在の動作上の状態に従う、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【請求項２６】
前記第１のデバイスの前記現在の動作上の状態は、前記第１のデバイスの電池電力レベルにより影響を受ける、ことを特徴とする請求項２５に記載のコンピュータ可読媒体。
【請求項２７】
前記検出するステップは、前記第２のデバイスからの無線伝送を受信するステップを含む、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【請求項２８】
前記検出するステップは、前記第２のデバイスに無線で問い合わせするステップを含む、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【請求項２９】
前記通信を確立するステップは、前記第２のデバイスが前記第１のデバイスから予め定められた距離以内にあることを判定するステップと、当該距離判定に対応して、前記第１のデバイスと前記第２のデバイスとの間のセキュリティセキュリティプロトコルを確立するステップとをさらに含む、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【請求項３０】
前記第１のデバイスの機能の実施が前記第２のデバイスを必要とする場合には、前記第１のデバイスの機能は、前記第２のデバイスとの通信の確立により影響を受ける、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【請求項３１】
前記第１のデバイスの機能に関する動作を開始するステップは、前記第１のデバイスの前記機能を可能にするステップを含む、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【請求項３２】
前記第１のデバイスの機能に関する動作を開始するステップは、ユーザの介入なしで前記機能を提供するステップを含む、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【請求項３３】
前記第２の動作は前記第２の機能を無効にする、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【請求項３４】
前記第１のデバイスの機能に関する動作を開始するステップは、前記第１のデバイスの機能を前記第１のデバイスのユーザに提示するステップを含む、ことを特徴とする請求項２４に記載のコンピュータ可読媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、一般に、電子デバイスの動作に関する。より詳細には本発明は、１つまたは複数の周囲のデバイス(surrounding device)に基づく、デバイスの利用可能な機能性(device's available functionality)の変更(modification)および用法(usage)に関する。
【背景技術】
【０００２】
電子デバイス(electronic device)は単一の位置に固定されて動作するよりも、むしろ、移動体デバイスとして動作させられる場合のほうが多い。携帯電話、携帯情報端末（ Personal Digital Assistant：ＰＤＡ）、ラップトップコンピュータ、および同様なものはすべて、それらのユーザがあちらこちらに移動しながら動作する場合があるものの例である。このようなデバイスはそれら自体の移動体アプリケーションを実行するためによく適合されている場合があるが、他のデバイスと相互動作するためには、そのようなデバイスはしばしば不適当である。たとえば無線環境で動作する従来のノートブックコンピュータは、別のコンピュータが通信範囲の中にいつ入ったか否かは識別できるが、そのようなコンピュータのユーザに提供される唯一の情報は、その他方のコンピュータが利用可能であるという通知のみである。そのユーザがその他方のコンピュータとの対話を欲する場合には、そのユーザは通常、機能の一覧表から選択をしなければならない。その機能一覧表は通常、デフォルトの一覧表であり、通常は別のコンピュータが通信範囲の中にあるか否かにかかわらず、ユーザに提示される。したがってユーザは、その他方のコンピュータが存在することに基づいて必要となる場合がある動作に関係のない可能性のある一連の機能の中から検索せねばならない。
【０００３】
別の例として、カメラからコンピュータへのデジタル画像のダウンロードのために、コンピュータがデジタルカメラと通信可能となる場合がある。カメラがコンピュータと同じ部屋に持ち込まれているならば、通常はその２つのデバイスの間に無線通信リンクが確立される場合がある。しかしながら、かなりの場合、どちらのデバイスも相手のデバイスに関する自身の動きを変更することはないであろう。たとえば、ユーザが、カメラからデジタル画像を受け取るようコンピュータに指示することを欲する場合には、ユーザは、現在コンピュータがカメラと通信可能であるという事実を反映するように変更されてはいないユーザインターフェースを使用して、コンピュータを動作させなければならない。その結果、画像の転送が開始可能になるまでに、ユーザは、様々な無関係な画面、メニューなどを通り抜けねばならない場合がある。
【０００４】
デバイスを制御するための従来のシステムおよび方法の別の問題点は、デバイスが別のデバイスと通信可能なときでさえ、そのデバイスは通常ユーザに対して、それ自体の設定および機能を表示するのみであるということである。コンピュータとカメラについての上記の例では、コンピュータのユーザにはコンピュータにより利用可能にされている機能あるいはオプションが提示されるのみであり、両方のデバイスの機能、あるいはそのコンピュータおよびカメラによって形成されたシステムに関する情報は提示されない。
【０００５】
デバイスを制御するための従来のシステムおよび方法のさらに別の問題点は、そのようなシステムおよび方法が１つのデバイスから別のデバイスへ機能の能力を移動することができないということである。たとえば、１つの部屋に２つのラップトップコンピュータが設置されても、コンピュータが画像、計算処理などを提示するワークロードを分割しようとはしないであろう。なぜなら、どちらのコンピュータもそのような動作を可能にするようにその動きを変更していないからである。言い換えれば、従来のコンピュータはどちらも、別のデバイスが存在する状態で動作している際に、それぞれがどのように使用されるであろうかを「予測(predict)」することができない。
【発明の開示】
【発明が解決しようとする課題】
【０００６】
したがって、離れたデバイスの検出に応答して電子デバイスの動きを変更するための方法が必要とされる。より詳細には、リモート(remote）コンピュータの存在により影響を受ける機能に関する対応処置を講ずるための方法が必要とされる。さらにより詳細には、リモートデバイスと有効に通信することにより影響を受ける機能の存在により、デバイスがユーザによりどのように使用されるであろうかを効果的に「予測」することを可能にするための方法が必要とされる。
【課題を解決するための手段】
【０００７】
上記した制約および問題点の観点から、リモートデバイスの検出に応答して、デバイスの動きを変更するための方法を提供する。この方法では、リモートデバイスが検出され、そのリモートデバイスの検出に応答してそのリモートデバイスとの通信が確立される。そのリモートデバイスとの通信の確立により、そのデバイスの機能が影響を受けるか否かに関して判定が為され、そのデバイスの機能に関する処置が開始される。
【発明を実施するための最良の形態】
【０００８】
上記の背景、および以下の実施形態の詳細な記述については、付加された図面に関連して読むことにより、より良い理解が得られる。本発明を説明する目的のために、本発明の例示的実施形態がこれらの図面で示される。しかしながら、本発明はここで開示されたこの特定の方法および手段に限定されるものではない。
【０００９】
本発明の主題は、法的要件を満たすべく特定性をもって記述されている。しかしながら、記述自体は本特許の範囲を限定することを意図しない。むしろ発明者は、クレームされた主題は、現在の、あるいは将来の他の技術に関連して、本書において記述されたものと類似の異なるステップあるいは要素を包含する、他の方法においても実施される場合があることを想定している。さらに、採用された方法の異なる形態を内包するために用語「ステップ」を使用する場合があるが、個々のステップの順序が明示的に記述されない限り、ここに開示された様々なステップに亘る、あるいはその間のどのような特定の順序も意味するものとは解釈されるべきでない。
【００１０】
（概要）
リモートデバイスの検出に応答して、デバイスの動作を変更するための方法がここに提示される。以下の議論から理解されるであろうように、本発明の一実施形態は、第２のリモートデバイスの影響を受ける機能に関する対応処置を講ずる能力を有する、第１の電子デバイスを提供する。たとえば、一実施形態においては、第１のデバイスは第２のデバイスを検出し、第２のデバイスと有効な通信を確立する。第１のデバイスは、第２のデバイスとの有効な通信の確立により機能が影響を受けるか否かを判定し、かつ、受けるとすれば、その機能に関する対応処置を講ずる。携帯デバイスもまた本発明の実施形態と適合性があるが、第１のあるいは第２のデバイスのいずれも携帯用であることが必須ではないことは、以下に続く議論から明らかになるであろう。ある実施形態では、第１および第２のデバイスは最初に有効な通信状態に至った固定したデバイスである。他の実施形態では、デバイスの一方あるいは両方が携帯型である。
【００１１】
本発明の一実施形態によりデバイスの機能性を拡張することが可能となる。たとえば、一実施形態においては、第２のデバイスが出現するとユーザにとってどの機能が利用可能になるのかを、第１のデバイスが判定する場合がある。第１のデバイスは、それらの機能の内の１つまたは複数を自動的に開始する場合、あるいは容易に見られ、および／または、簡略化されたフォーマットでその機能の内の１つまたは複数をユーザに提示する場合がある。そのような方法で、第２のデバイスの出現に基づき、ユーザにより最も選択されそうな機能を、第１のデバイスがエンファシスしている(emphaizing)が故に、それがどう使用されるかを第１のデバイスが「予測している(predicting)」ようにユーザにとって見える場合がある。いくつかの実施形態では、第２のデバイスの出現(presence of the second device)により影響を受けない機能(feature)をデエンファシスする（deemphasize）ことにより、影響を受ける機能のエンファシス(the emphasis of the affected feature)を行う場合がある。さらに他の実施形態では、第１のデバイスの機能を第２のデバイスが実行する場合、あるいは逆の場合がある。
【００１２】
以下に続く議論で見られるように、第２の引き続くデバイス群によりどの機能が影響を受けるかを判定する実施形態の能力により、任意の数のデバイスの、複数の構成が可能である。本発明を詳細に議論する前に、本発明が有利に実施される場合がある例示的コンピューティング環境およびネットワーク環境についてまず記述する。
【００１３】
（例示的コンピューティング環境）
図１は、本発明を実施するための適切な計算システム環境１００の一例を示す。計算システム環境１００は、適切なコンピューティング環境のただ一例に過ぎず、本発明の使用あるいは機能性の範囲に関してなんらの限定を提起することを意図するものではない。さらに、コンピューティング環境１００は、この例示的動作環境１００において図示されたコンポーネントのいずれの１つあるいはその組み合わせに関連した、いずれの依存関係あるいは要求条件をも有するものと、解釈されるべきではない。
【００１４】
本発明は、他の複数の汎用の、あるいは専用目的の計算システム環境、あるいは構成を用いて動作可能である。本発明での使用に適当する場合がある、公知の計算システム環境、および／または、構成の例としては、限定するものではないが、パーソナルコンピュータ、サーバコンピュータ、携帯型またはラップトップデバイス、マルチプロセッサシステム、マイクロプロセッサによるシステム、セット・トップ・ボックス、プログラム式家庭電化製品、ネットワークＰＣ、ミニコンピュータ、メインフレーム計算機、ＵＳＢ駆動機構などのストレージデバイス、遠隔制御装置、上記の任意のシステムあるいはデバイスを含む分散コンピューティング環境など、が含まれる。
【００１５】
コンピュータにより実行される、プログラムモジュールのような、コンピュータで実行可能な命令の一般的概念について本発明を記述してある。プログラムモジュールには一般的に、特定のタスクを実行するか、あるいは特定の抽象データ型を実施する、ルーチン、プログラム、オブジェクト、コンポーネント、データ構造などが含まれる。通信ネットワーク、あるいは他のデータ伝送媒体を通してリンクされる遠隔処理デバイスによりタスクが実行される分散コンピューティング環境においてもまた、本発明を実施する場合がある。分散コンピューティング環境においては、プログラムモジュールおよび他のデータは、メモリ記憶デバイスを含むローカルおよびリモートのコンピュータ記憶デバイスに位置する場合がある。
【００１６】
図１において、本発明を実施するための例示的システムは、コンピュータ１１０のような汎用目的の計算デバイスを含む。コンピュータ１１０のコンポーネントには、限定するものではないが、処理ユニット１２０、システムメモリ１３０、およびシステムメモリを含む様々なシステムコンポーネントを処理ユニット１２０に結合する、システムバス１２１が含まれる。システムバス１２１は、さまざまなバス構成の任意のものを使用するメモリバスあるいはメモリ制御装置、周辺バス、およびローカルバスを含むいくつかのタイプのバス構造のいずれかである場合がある。限定するものではなく例として、このようなアーキテクチャはＩＳＡ（Industry Standard Architecture）バス、ＭＣＡ（Micro Channel Architecture）バス、ＥＩＳＡ（Enhanced ISA）バス、ＶＥＳＡ（Video Electronics Standards Association）ローカルバス、およびメザニン（Mezzanine）バスとしても知られるＰＣＩ（Peripheral Component Interconnect）バスを含む。
【００１７】
コンピュータ１１０は通常、さまざまなコンピュータで読み取り可能な媒体を含む。コンピュータで読み取り可能な媒体としてはコンピュータ１１０からアクセスできる、任意の利用可能な媒体である場合があり、揮発性および不揮発性の媒体、および着脱可能および着脱不可能な媒体の両方を含む。限定するものではなく例として、コンピュータで読み取り可能な媒体はコンピュータ記憶媒体および通信媒体を含む場合がある。コンピュータ記憶媒体は、コンピュータで読み取り可能な命令、データ構造、プログラムモジュールあるいは他のデータなどのような、情報の格納のための任意の手法および技術で実施された、揮発性および不揮発性、着脱可能および着脱不可能な媒体の両方を含む。コンピュータ記憶媒体には、限定するものではないが、ＲＡＭ、ＲＯＭ、ＥＥＰＲＯＭ、フラッシュメモリ、他のメモリ技術、ＣＤ−ＲＯＭ、デジタル多用途ディスク（Digital Versatile Disk：ＤＶＤ）あるいは他の光ディスクメモリ、磁気カセット、磁気テープ、磁気ディスク記憶装置あるいは他の磁気記憶デバイス、あるいは、必要な情報を格納するために使用でき、コンピュータ１１０によりアクセスすることができる任意の他の媒体、が含まれる。通信媒体は通常、コンピュータで読み取り可能な命令、データ構造、プログラムモジュール、あるいは、搬送波あるいは他の伝達機構などの変調されたデータ信号の形態の他のデータ、を具現化するものであり、任意の情報配送媒体を含む。用語「変調されたデータ信号」は、その特性の１つまたは複数を含む信号、あるいはその信号に情報を符号化するような方法で変換された信号を、意味する。限定するものではなく例として、通信媒体は有線ネットワークあるいは直接配線接続などの有線媒体、および音声、ＲＦ、赤外線、および他の無線媒体のような無線媒体を含む。また、上記の任意の組合せもコンピュータで読み取り可能な媒体の範囲の中に包含されるべきである。
【００１８】
システムメモリ１３０は、ＲＯＭ１３１やＲＡＭ１３２などの揮発性の、そして／または、不揮発性の記憶装置の形のコンピュータ記憶媒体を含む。起動時などに、コンピュータ１１０の中の要素の間での情報転送に役立つ基本的なルーチンを含む、基本入出力システム（Basic Input/Output System：ＢＩＯＳ）１３３は通常、ＲＯＭ１３１に格納される。ＲＡＭ１３２は通常、処理ユニット１２０により、すぐにアクセス可能であり、そして／またはそこでその時点に動作している、データ、そして／またはプログラムモジュールを含む。限定するものではなく例として、図１はオペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７を図示する。
【００１９】
コンピュータ１１０はまた、他の着脱可能／着脱不可能な、揮発性／不揮発性のコンピュータ記憶媒体を含む場合がある。例としてのみであるが、図１は、着脱不可能な不揮発性磁気媒体と読み書きするハードディスク駆動装置１４１、着脱可能な不揮発性磁気ディスク１５２と読み書きする磁気ディスク駆動装置１５１、およびＣＤ−ＲＯＭあるいは他の光学媒体などの着脱可能な不揮発性光ディスク１５６と読み書きする光ディスク駆動機構１５５、を図示する。例示的動作環境で使用できる他の着脱可能／着脱不可能な、揮発性／不揮発性のコンピュータ記憶媒体には、限定するものではないが、磁気テープカセット、フラッシュ・メモリ・カード、デジタル多用途ディスク（ＤＶＤ）、デジタル・ビデオ・テープ、半導体ＲＡＭ、半導体ＲＯＭ、および同様なもの、が含まれる。ハードディスク駆動装置１４１は通常、インターフェース１４０などの着脱不可能なメモリンターフェースを介してシステムバス１２１に接続され、そして、磁気ディスク駆動装置１５１および光ディスク駆動装置１５５は通常、インターフェース１５０などの着脱可能なメモリンターフェースによりシステムバス１２１に接続される。
【００２０】
上で議論され、図１に図示された駆動装置類およびそれらの関連付けられたコンピュータ記憶媒体は、コンピュータ１１０のためのコンピュータで読み取り可能な命令、データ構造、プログラムモジュール、および他のデータの格納機構を提供する。たとえば図１では、ハードディスク駆動装置１４１はオペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７を格納するものとして図示される。これらのコンポーネントは、オペレーティングシステム１３４、アプリケーションプログラム１３５、他のプログラムモジュール１３６、およびプログラムデータ１３７と同じであることも、異なることもあり得ることに注意されたい。オペレーティングシステム１４４、アプリケーションプログラム１４５、他のプログラムモジュール１４６、およびプログラムデータ１４７は、最低限でそれらが異なったコピーであることを図示するために異なる番号をここでは与えている。ユーザは、キーボード１６２や一般的にマウス、トラックボールまたはタッチパッドと呼ばれるポインティングデバイス１６１などの入力デバイスを介してコンピュータ１１０にコマンドや情報を入力する場合がある。他の入力デバイス（示されない）としてマイクロホン、ジョイスティック、ゲームパッド、衛星放送受信アンテナ、スキャナー、または同様なものが含まれる場合がある。これらおよび他の入力デバイスは、システムバスと接続されるユーザ入力インターフェース１６０を介して処理ユニット１２０にしばしば接続されるが、他のインターフェース、およびパラレルポート、ゲームポート、あるいはＵＳＢ（Universal Serial Bus）などのバス構造により接続される場合がある。また、モニタ１９１あるいは他のタイプの表示デバイスはビデオインターフェース１９０のような、インターフェースを介してシステムバス１２１に接続される。コンピュータはまた、モニタに加えて、スピーカ１９７やプリンタ１９６などの、他の周辺出力デバイスを含む場合があり、これらは出力周辺機器インターフェース１９５を介して接続される場合がある。
【００２１】
コンピュータ１１０は、ネットワーク化された環境において、リモートコンピュータ１８０のような、１つまたは複数のリモートコンピュータとの論理的結合を使用して動作する場合がある。リモートコンピュータ１８０は、パーソナルコンピュータ、サーバ、ルータ、ネットワークＰＣ、ピアデバイス、あるいは他の一般的ネットワークノードである場合があり、かつ、図１ではメモリ格納デバイス１８１のみが図示されているが、上でコンピュータ１１０に対して記述された要素の多くあるいはすべてを通常含む。表現された論理的結合は、ＬＡＮ（Local Area Network）１７１、およびＷＡＮ（Wide Area Network）１７３を含み、また他のネットワークを含む場合もある。そのようなネットワーク化環境は事務所、企業規模のコンピュータネットワーク、イントラネット、およびインターネットで一般的である。
【００２２】
ＬＡＮネットワーク化環境で使用される場合には、コンピュータ１１０はネットワークインターフェースあるいはアダプタ１７０を介してＬＡＮ１７１に接続される。ＷＡＮネットワーク化環境で使用される場合には、コンピュータ１１０は通常、インターネットなどのような、ＷＡＮ１７３上で通信を確立するためにモデム１７２あるいは他の手段を含む。モデム１７２は、内蔵の場合、あるいは外付けの場合があるが、ユーザ入力インターフェース１６０、あるいは他の適切な機構を介してシステムバス１２１に接続される場合がある。ネットワーク化された環境では、コンピュータ１１０、あるいはその部分に関連して表現されたプログラムモジュールがリモートメモリ記憶デバイスに格納される場合がある。限定するものではなく例として、図１ではリモートアプリケーションプログラム１８５をメモリデバイス１８１に存在するものとして図示する。図示されたネットワーク結合は例示的なものであり、コンピュータ間で通信リンクを確立する他の手段が使用される場合があることが理解されるであろう。
（例示的分散形計算フレームワークあるいはアーキテクチャ）
様々な分散形計算フレームワークが、パーソナルコンピューティングとインターネットの統合の観点から今までも、現在も開発されている。アプリケーションおよび計算デバイスに対して継ぎ目なく相互利用可能で、ウェブにより可能となったインターフェースが個人にもビジネスユーザにも提供され、計算行為がますますウェブーブラウザあるいはネットワーク指向になっている。
【００２３】
たとえば、ＭＩＣＲＯＳＯＦＴ（登録商標）の．ＮＥＴプラットフォームは、サーバ、ウェブベースのデータ格納機構のようなビルディング−ブロックサービス、およびダウンロード可能なデバイスソフトウェアを含んでいる。一般的に言うと、．ＮＥＴプラットフォームは以下を提供する。（１）計算デバイスの範囲全体を連携して動作させ、ユーザ情報をそれらすべてで自動的に更新し、同期させる能力、（２）ＨＴＭＬよりむしろＸＭＬをさらに拡大使用することにより可能にされた、ウェブサイトに対しての対話型能力の増加、（３）たとえば電子メールなどの様々なアプリケーション、あるいはＯｆｆｉｃｅ．ＮＥＴなどのソフトウェア、の管理のための中心的な出発点からのユーザに対する製品およびサービスの、カスタマイズされたアクセスおよび配送を機能とするオンラインサービス、（４）集中型データ格納機構（これにより、ユーザおよびデバイスの間での情報の同期化が為されることはもちろん、情報へのアクセスの効率および容易さが増加されるであろう）、（５）電子メール、ファックス、および電話などの、様々な通信媒体を統合する能力、（６）開発者に対して、再使用可能モジュールを創生する能力（これにより、生産性が増大し、プログラム作業のエラーが削減される）、（７）さらに他の多くのクロスプラットフォーム統合機能、である。
【００２４】
ここでの例示的実施形態は１つの計算デバイス上に存在するソフトウェアに関連して記述してあるが、本発明の１つまたは複数の部分は、オペレーティングシステム、ＡＰＩ、あるいはコプロセッサ（coprocessor）と要求オブジェクトの間の、そしてさらに他の分散形計算フレームワークにおける、ミドルウェアソフトウェアを介して、サービスがそれにより実行され、そこで支援されるように、実施され、あるいは．ＮＥＴのすべての言語およびサービスを介してアクセスされる場合がある。
【００２５】
（本発明の実施形態の記述）
例示的コンピューティング環境を詳細に説明したので、本発明の様々な実施形態が組み込まれている電子デバイスの一連の例示的構成について、図２Ａ〜図２Ｄに関連して説明する。図２Ａには、第１の例示的デバイス構成が図示されてる。図２Ａでは、たとえば、デジタルカメラなどのカメラ２１０が図示される。コンピュータ２００は、限定するものでなく、上で図１に関連して議論されたようなコンピュータを含む、任意のコンピュータ１１０で構わない。
【００２６】
通信範囲(communication range)Ａは、コンピュータ２００が、たとえばカメラ２１０などのリモートデバイスとそれ以内で通信可能な範囲に対応する。カメラ２１０の通信範囲は簡明にするために省略してある。しかし、それぞれのデバイスが通信範囲を有することは必ずしも必要ではないことが理解されるであろう。言い換えれば、全２重（すなわち、両方向の）通信がすべてのデバイスの間で可能である必要はない。たとえば、コンピュータ２００のような１つのデバイスが、情報を求めてリモートデバイスに問い合わせすることが可能な場合がある一方、そのリモートデバイスからはコンピュータと通信することができないという場合がある。無線ＩＣ（Radio Frequency Identification：ＲＦＩＤ）タグを有するデバイスに対する問い合わせはそのようなシナリオの１つの例にすぎない。別の例としては、建物のそれぞれの部屋に設置されている可能性があり、その部屋のいずれのデバイスにもその位置を知らせるように周期的にパルスを送出するであろう、赤外線ビーコンがある。
【００２７】
このようにして、カメラ２１０（あるいはいかなる他のタイプの電子デバイス）が、コンピュータ２００（あるいは、これもいかなる他のタイプの電子デバイス）の通信範囲Ａの実質的に外側にある限り、これら２つのデバイスは、お互いに直接は通信することができないことが理解されるであろう。
【００２８】
ここで図２Ｂを参照すると、第２の例示的デバイス構成が図示される。図２Ｂにおいて、コンピュータ２００およびカメラ２１０は、上で図２Ａに関連して記述された通りである。しかしながらここでは、図２Ａと異なり、カメラ２１０がコンピュータ２００の通信範囲Ａの中にある。その結果、カメラ２１０とコンピュータ２００の間に、通信リンクＢにより表されるような、有効な通信が可能となる。通信リンクＢは、たとえばＩＥＥＥ８０２．１１−コンプライアントプロトコル、Ｂｌｕｅｔｏｏｔｈ（登録商標）技術、ＲＦＩＤプロトコル、および同様なもの、のような任意のタイプの無線通信を使用して確立できることが理解されるであろう。このようにして、通信リンクＢが確立すると、コンピュータ２００とカメラ２１０は互いに有効な通信状態に入る。
【００２９】
図２Ｃを参照すると、第３の例示的デバイス構成が図示される。図２Ｃでは、上の図２Ｂの場合のように、コンピュータ２００とカメラ２１０は、通信リンクＢにより互いに有効な通信状態にある。さらに、携帯電話２２０がコンピュータ２００の通信範囲Ａの中に置かれている。携帯電話２２０およびカメラ２１０の通信範囲は簡明化のために図２Ｃでは示されていない。携帯電話２２０が置かれた結果、電話機２２０とコンピュータ２００は通信リンクＣにより通信することができ、かつ電話機２００とカメラ２１０が通信リンクＤにより通信することができる。
【００３０】
携帯電話２２０やカメラ２１０などのデバイスが通信するために、図２Ａ〜図２Ｃに示されたコンピュータ２００などのコンピュータが、必ず存在せねばならない訳ではないことは理解されるであろう。これを説明するために、図２Ｄは第４の例示的デバイス構成を示す。図２Ｄでは、カメラ２１０がテレビ２３０および携帯情報端末（Personal Digital Assistant：ＰＤＡ）２４０と有効な通信状態にあることが示されている。ＰＤＡ２４０は、テレビ２３０と通信リンクＣにより、かつカメラ２１０とは通信リンクＤにより、有効な通信状態にある。同様に、カメラ２１０はテレビ２３０と通信リンクＥにより有効な通信状態にある。
【００３１】
上で述べたように図２Ｄは、本発明の実施形態を可能にするために必ずしもコンピュータがかかわる必要はないことを図示することを意図する。本発明の一実施形態により、互いに有効な通信状態にあるデバイス群は簡素な、そして／または、特化されたデバイスであることが可能である。たとえば、カメラ２１０からコンピュータなどの他のいかなるデバイスの介入なしでデータを直接受け取るように、ＵＳＢ駆動機構（図２Ｄでは簡明化のために示されない）などの記憶デバイスを適合させることができる。さらに、一実施形態によれば、任意のタイプの複数のデバイスが互いに有効な通信状態にあることが可能である。
【００３２】
上で述べたように、従来のシステムの短所は、通常そのようなシステムが、いずれかのリモートデバイスがそのデバイスと有効な通信状態にあることに対する考慮なしで、デバイスのすべての機能に関する情報をユーザに提供してしまうということである。したがって、一実施形態では、デバイスが有効な通信状態にある相手のリモートデバイスにより影響を受ける機能に応じて、ユーザにそのデバイスの機能を選択し、表示する。その結果、表示された機能はリモートデバイスの存在により結果として為されるであろう機能に適合する。本発明の一実施形態により動作しているデバイスは、リモートデバイスと有効な通信状態にあるデバイスにより影響を受ける機能に基づき、事実上、ユーザが最も使用しそうな機能を予測することが可能である。
【００３３】
それに対応して、図３Ａ〜図３Ｂはデバイスの例示的機能構成(feature configuration)を図示する図である。図３Ａでは、「デバイス１」と名付けられた例示的デバイスの機能群(features)が一覧表(list)３００ａに提示されている。このデバイスは、たとえば、上で図１〜図２Ｄに関連して図示されたデバイスの内のいずれか、あるいは他のタイプのいかなる電子デバイスであっても良い。一覧表３００ａをどんな方法でユーザに提示しても良いことは理解されるであろう。たとえばあるコンピュータでは、一連のプルダウンメニューで、１つまたは複数の一覧表で、１つ以上の一覧表の中で、アイコンを使用して図式的に、音声出力で、あるいは同様なもので、その機能群を提示する場合がある。したがって、ここで示された一覧表３００ａは単に象徴的なものであり、説明に役立たせる目的のためのものであり、機能群を提示するいかなる方法も一実施形態と等しく整合する。
【００３４】
このように図３Ａでは、機能Ａ、Ｂ、およびＣはデバイスの機能を表す。機能とはたとえば、入出力（Input/Output：I/O）動作、表示動作、処理動作、および同様なものであっても良い。機能Ａ１〜３、Ｂ１〜２、およびＣ１〜３はそれぞれ機能Ａ、Ｂ、およびＣに関連したサブ機能を表す。同様に、機能Ａ３．３およびＣ１．１はそれぞれ機能Ａ３およびＣ１に関連したサブ機能を表す。１つの機能のサブ機能は、その機能に関連しており、かつその機能に関連したタスクを実行する。たとえば、一般的なＩ／Ｏ機能のサブ機能は電子ファイルをダウンロードすることである場合がある。
【００３５】
図３Ａの例示的機能一覧表３００ａでは、機能Ｂのみがリモートデバイスに関連している。たとえば、機能ＡとＣ（およびそれらの関連サブ機能）はリモートデバイスに関わりなく、そのデバイス自体の動作に関連している。リモートデバイスは、「デバイス１」と有効な通信状態に入る任意のデバイスであって良い。そのデバイスが図２Ａ〜Ｄの関連で上で議論したようなカメラ２１０などのカメラであるならば、リモートデバイスに関連しない機能の一例として、機能ＡおよびＣは、リモートデバイスが影響を及ぼすことができないある写真撮影の機能に関連する場合がある。逆に、機能Ｂは（同じカメラの例を使用すると）、リモートデバイスからの画像あるいは命令のダウンロードあるいはアップロードに関連する場合がある。したがって、機能Ｂ、およびサブ機能Ｂ１〜２は、リモートデバイスがそのカメラと有効な通信状態にある場合には、特別に重要である可能性がある。
【００３６】
従来のシステムでは、リモートデバイスが「デバイス１」と有効な通信状態にあるか否かにかかわらず、機能一覧表３００ａの全体を提示していることが理解されるであろう。その結果、「デバイス１」のユーザはリモートデバイスに関する動作を実行するために、利用可能な機能のすべての中から適切な機能（Ｂ）、および／または、サブ機能（Ｂ１〜２）を検索せねばならないであろう。図３Ａに図示された例示的機能一覧表３００ａは長さが比較的短いが、ある実施形態では、デバイスで利用可能な機能の一覧表３００ａが非常に長大であり、その結果、ユーザにとって適切な機能を選択する作業がかなり難しく、および／または、冗漫である場合があることが理解されるであろう。
【００３７】
次に図３Ｂに転ずると、本発明の一実施形態により提供された機能一覧表の一例が提供される。図３Ｂでは、機能一覧表３００ｂはリモートデバイス（そのリモートデバイスは「デバイス１」と有効な通信状態にある）の存在に基づいて適合させられる。図３Ｂから分かるように、リモートデバイス関連の機能Ｂおよびサブ機能Ｂ１〜２は、リモートデバイスに関係のない、機能ＡとＣより（および機能ＡとＣのサブ機能のすべてより）エンファシスされる。このようなエンファシスはいろいろな方法で提供することができる。たとえば、一実施形態では、リモートデバイスを検出すると、機能Ｂに関係する情報のウィンドウをユーザに提示する場合がある。
【００３８】
別の実施形態では、たとえば、太字の、および／または、カラーの文字あるいは記号などの視覚的な合図（cue）を使用する場合がある。さらに別の実施形態では、リモートデバイスに関係のない機能（ＡとＣ）のデエンファシスする場合がある。たとえば、そのような機能は、最小にしたり、隠したり、などの場合がある。また、エンファシスされ、あるいは表現を弱められる機能の組み合わせは、たとえば、デフォルト設定、自動選定、ユーザ選択、などの結果である場合がある。たとえば、最も適切な機能をエンファシスするべく選択するために、複数の入力数に基づく発見的方法を使用する場合がある、さらに、リモートデバイスに関係のない機能を完全に無効にし、および／または、そうでなくユーザにとって利用できなくする場合がある。いくつかの実施形態では、選択的方法で影響を受ける機能と共に影響を受けない機能をエンファシスする場合がある。そのような実施形態では、影響を受けない機能が、影響を受ける機能と共に一般的に使用される動作を実行するが故に、それら影響を受けない機能をエンファシスする場合がある。上のコンピュータとカメラの例において、ユーザが、かれらが自分のコンピュータに転送した画像を印刷することを頻繁に選択するが故に、影響を受けるデジタル画像転送機能と共に、影響を受けない「印刷」機能(print feature)がエンファシスされる場合がある。同様に、使用されないことがたびたびある影響を受ける機能が、エンファシスされなかったり、あるいは表現を弱められたり、無効にされたりする場合もある。
【００３９】
このような一実施形態により、デバイス１と有効な通信状態にあるリモートデバイスに関連した機能が、デバイスを動作させているユーザに、提示されることが理解されるであろう。その結果ユーザは、リモートデバイス関連の機能を開始する前に、関係のない機能、および／または、メニュー、または同様のもの全体に亘って検索する必要がなくなる。以下、図５の説明に関連してあるように、いくつかの実施形態では、上述されたエンファシスに関連して、あるいはそのエンファシスの代替として、リモートデバイス関連の機能（例示的機能Ｂなどの）が自動的に活性化される（activated）場合がある。
【００４０】
また、上に述べたように、従来システムの別の短所は、デバイスは通常、そのデバイスにより提供される機能に関連した情報のみを表示可能であるということである。リモートデバイスがそのようなデバイスと有効な通信状態にある状況では、従来のシステムにより提示される情報は不完全であり、両方のデバイスの間のその有効な通信により可能となった機能が、片方のデバイスのみの観点から呈示されるに過ぎない。したがって、図４Ａ〜図４Ｃでは、本発明の様々な実施形態の態様が組み込まれている場合があるデバイスおよびシステム機能の例示的構成を図示する。図４Ａ〜図４Ｃでは、デバイス１、デバイス２のいずれか、あるいは両方がリモートデバイスであるとみなすことができることが理解されるであろう。
【００４１】
図４Ａでは、デバイス１により提供される機能の一覧表４００ａを図示してある。図４Ａに示す一覧表４００ａは、それぞれの機能にプレフィックス(prefix)「１」が付加されている点を除いて、上の図３Ａの３００ａと同様である。このようにして、たとえば、図３Ａの機能Ａは、図４Ａの機能１Ａに対応している。「１」は、「デバイス１」によりその機能が提供されることを示す。
【００４２】
ここで図４Ｂに転ずると、デバイス２により提供される機能の一覧表４１０を図示してあるる。ここでも、図４Ｂの一覧表４１０は、それぞれの機能にプレフィックス「２」が付加されている点を除いて、上の図３Ａの３００ａと同様である。このようにして、たとえば、図３Ａの機能Ａは、図４Ｂの機能２Ａに対応している。「２」は、「デバイス２」によりその機能が提供されることを示す。上の図３Ａ〜図３Ｂでの機能Ｂの場合のように、機能１Ｂと２Ｂは上では、デバイス１と２の間の有効な通信に関連した動作である。上で述べたように、従来のシステムおよび方法では、デバイス１とデバイス２が互いに有効な通信状態にあるか否かにかかわらず、それぞれデバイス１とデバイス２により提供される機能の一覧表４００ａ、４１０をユーザに提示するであろう。したがって、いずれのデバイスのユーザも、それぞれ一覧表４００ａ、４１０全体に亘って、リモートデバイスと適切に動作する機能を見出すために検索せねばならないであろう。
【００４３】
ここで図４Ｃに転ずると、デバイス１により表示される（あるいは利用可能とされる）機能の一覧表４００ｂを図示してある。一覧表４００ｂは、デバイス１と２とが互いに有効な通信状態にある状況に対応していることが理解されるであろう。そのような状況では、デバイス１の機能１Ｂ（およびサブ機能１Ｂ１〜２）とデバイス２の機能２Ｂ（およびサブ機能２Ｂ１〜２）は、デバイス１と２との間の有効な通信の結果として生じる（あるいは、それにより可能となる）、動作に関連している。一覧表４００ｂは、デバイス１で利用可能となるデバイス２の機能を含む、機能群を表すことが理解されるであろう。したがって、上の図３Ｂの一覧表３００ｂのように、一覧表４００ｂでは、デバイス１のデバイス２との有効な通信に関連した機能がエンファシスされる。さらに、一覧表４００ｂではデバイス２の機能のすべてあるいは一部をその表示に取り入れる。
【００４４】
図４Ｃにおいて、一覧表４００ｂは、機能１Ｂと２Ｂ（およびそのすべてのサブ機能）をエンファシスし、かつ機能１Ａ、１Ｃ、２Ａ、および２Ｃ（およびそのすべてのサブ機能）をデエンファシスすることを包含している。上で図３Ａ〜図３Ｂに関連して説明したように、これらの機能はエンファシスされ、あるいはデエンファシスされる場合があることが理解されるであろう。図４Ｃでは、デバイス１と２の両方の機能のすべてが、提示され、かつエンファシスされるか、あるいはデエンファシスされるかのいずれかである。しかしながら、デバイス１または２のいずれかからの機能の任意の組み合わせ（エンファシスされたものも、またはデエンファシスされたものも）も本発明の実施形態に等しく整合するものである。そのような機能の組み合わせは、たとえば、デフォルト設定、自動選定、ユーザ選択、使用／不使用の履歴、あるいは同様なものの結果である場合がある。結果として本発明の一実施形態により、単にデバイスの片方のみに関係する機能ではなく、デバイス１とデバイス２の両方により形成されたシステムの適合された機能に関係する情報が、デバイスのユーザに提示される場合がある。
【００４５】
ここで今度は図５に転ずると、一実施形態により、リモートデバイスの検出に対応するデバイスの動きを変更する方法５００が、フローチャートにより図示される。以下の説明では、用語「デバイス」を、たとえば図２Ａ〜図２Ｃの、コンピュータ２００を意味するものとして、「リモートデバイス」を、たとえば図２Ａ〜Ｄのカメラ２１０を意味するものとして、使用する、リモートデバイスは任意のタイプのデバイスで良いことが理解されるであろう。したがって、上の約束事は単に説明の目的のために用いるものである。
【００４６】
方法５００は、ステップ５０１でリモートデバイスが検出されると開始される。そのような検出はたとえば、ＲＦＩＤタグの問い合わせにより、リモートデバイスからの無線伝送を受信することにより、あるいは同様なものにより生じる場合がある。オプションのステップ５０３では、判定を下しつつあるデバイスがステップ５０１の検出に対して応答することが可能な状態にあるか否かに関して判定がなされる。デバイスが応答状態で動作しているか否かには、さまざまな要因が影響する可能性がある。たとえば、判定を下しつつあるデバイスにおいて、たとえば電池レベルが極めて低く、したがって、リモートデバイスとの機能を首尾よくを実行することができない（あるいは、すぐにそうなるであろう）場合がある。さらに、デバイスのこの応答性は日付、時刻、他のデバイスあるいはオブジェクトの存在または欠如、および同様なものにより影響を受ける場合がある。
【００４７】
ステップ５０３の判定の結果が、そのデバイスが応答状態にない、ということであれば、方法５００はステップ５０５に進む。ステップ５０５では、動作が全くなされないか、あるいはデフォルト動作を行う。たとえば、一実施形態では、方法５００において、単にリモートデバイスの検出を無視し、ステップ５０１の検出以前に、それがあった状態のままに動作し続けるかもしれない。別の実施形態では、方法５００において、検出したデバイスについて、あるいはそのデバイスが応答状態にないという事実について、ユーザに通知する場合がある。一実施形態により、ステップ５０５では任意のタイプの動作をなすことが可能であることが理解されるであろう。
【００４８】
ステップ５０３の判定が、そのデバイスが応答状態にあるということである場合、方法５００は直接５１３に進む。ステップ５０３の判定は、ステップ５０３の判定に関連して上で議論された要因のいずれかあるいはすべてにより変更された如くに、そのデバイスが応答可能である場合があるということであることが理解されるであろう。そのような場合には、ステップ５１７でなされる動作は、以下で議論するように、そのデバイスの変更された応答性と整合するように変更される。
【００４９】
オプションのステップ５０７〜５１１のいずれもがリモートデバイスとセキュリティプロトコルを確立するために必要となる場合がある。オプションのステップ５０７では、リモートデバイスが予め定められた距離以内にあるか否かに関して判定がなされる。ある実施形態では、デバイスの間のセキュリティ検査を評価するためにデバイスの間の近接性で十分であると考えることが有益である場合がある。したがって、オプションのステップ５０７で、リモートデバイスが予め定められた距離以内にあるという判定がなされた場合には、方法５００はオプションのステップ５１１に進み、そこで、セキュリティ検査が認められる。このようなセキュリティプロトコルは、暗号化や、コード化や、セキュリティ多重化、などのような、任意のタイプのセキュリティ配備であっても良いことが理解されるであろう。また、オプションのステップ５１１は、オプションのステップ５０７〜５０９との干渉なしで、単独で為される場合があることが理解されるであろう。したがって、ある実施形態では、方法５００はオプションのステップ５０７の判定なしでセキュリティプロトコルを自動的に確立する場合がある。
【００５０】
オプションのステップ５０７において、予め定められた距離以内にリモートデバイスがないと判定された場合には、方法５００はステップ５０９に進む。ステップ５０９では、セキュリティプロトコルなしで動作が進行して良いか否かに関して、別の判定がなされる。ここで、セキュリティプロトコルなしで動作が進行して良いと判定された場合には、方法５００はステップ５１３に進む。ステップ５０７および５１１に関連して上で述べたように、方法５００では、ステップ５０７〜５１１のどれかが、あるいはすべてが実施される場合、いずれも実施されない場合、があり得る。セキュリティプロトコルなしで動作を続けることができないと判定された場合には、方法５００は上で議論されたステップ５０５に進む。
【００５１】
ステップ５１３では、リモートデバイスとの有効な通信が確立される。上で図２Ｂに関連して述べたように、本発明の一実施形態では、任意のタイプあるいは構成の有効な通信を使用することが可能である。一実施形態との整合性を維持しつつ、上で参照した、あるいは他のタイプの任意の無線通信を使用することが可能である。
【００５２】
ステップ５１５では、リモートデバイスとの有効な通信の確立により、機能が影響を受けるか否かに関して判定がなされる。図２Ａ〜図２Ｄに関連して上で説明したように、たとえば、コンピュータ２００やカメラ２１０などの、パーソナルコンピュータやデジタルカメラを使用する例として、機能が影響を受ける１つの例がある。この例では、今や、コンピュータ２００にはデジタル画像を受ける情報源を有するが故に、コンピュータ２００は、デジタル画像転送機能がカメラ２１０との有効な通信の確立により影響を受けると判定する場合がある。言い換えれば、カメラ２１０との有効な通信の確立により、転送機能を、今や、それが以前には可能でなかった場合に、実行することが可能であり、あるいは今や、デジタル画像の新しい、あるいは異なる情報源を使用して実行することが可能である。追加的な例として、コンピュータ２００がカメラ２１０から画像をダウンロードして、モニタなどにそれらを表示できる場合があり、コンピュータ２００が、表示機能が影響を受けると判定する場合がある。
【００５３】
ある実施形態では、状況が逆になる場合があることが理解されるであろう。たとえば、カメラ２１０がコンピュータ２００を検出し、それとの有効な通信を確立する場合がある。そのような場合には、カメラ２１０の方が、デジタル画像転送機能がコンピュータ２００との有効な通信の確立により影響を受けると、判定するかもしれない。その理由は、カメラ２１０がデジタル画像を移す新しい、および／または、追加的場所を有することになるからである。さらに、方法５００は、たとえばコンピュータ２００とカメラ２１０などの、両方のデバイスで同時に実行される場合があり、この場合には、それぞれのデバイスが他方を検出し、それとの有効な通信を確立する。
【００５４】
ステップ５１５において、リモートデバイスとの有効な通信の確立により機能が影響を受けないと判定された場合には、方法５００は、上で議論されたステップ５０５に進む。そのデバイスの機能のいずれもが影響を受けない場合、あるいは活性化されている１つの機能集合のいずれもが影響を受けない場合、などの場合、このような判定になる。
【００５５】
ステップ５１５において、リモートデバイスとの有効な通信の確立により機能が影響を受けるという判定が為された場合には、方法５００はステップ５１７に進む。ステップ５１７では、その機能に関する動作がなされる。上で図３Ｂおよび４Ｃに関連して説明したように、一実施形態により、その影響を受ける機能に関する任意の動作をなすことが可能である。たとえば、上のコンピュータ２００とデジタルカメラ２１０の例を使用して、方法５００はカメラ２１０からコンピュータ２００へのデジタル画像の転送を自動的に開始する場合がある。別の実施形態では、方法５００は、たとえばユーザインターフェースを通して転送オプションをユーザに提示する場合がある。そのようにして一実施形態では、機能が影響を受けた結果で可能となった動作を提示するために、その影響を受けた機能に基づきユーザに対して１つまたは複数の選択メニューにより、誘導する場合がある。上で記述された例では、適切な動作をユーザに提示する画像ダウンロード、および／または、表示メニューにより、コンピュータ２００を誘導するかも知れない。さらに上で説明したように、一実施形態では、影響を受ける機能をユーザインターフェース上でエンファシスする場合がある。上で図４Ｃに関連して説明した場合のように、一実施形態では、その機能に関する動作により、デバイスがリモートデバイスの機能をユーザに提示することになる場合があることもまた、理解されるであろう。
【００５６】
オプションのステップ５１９では、リモートデバイスとの有効な通信の確立により、第２の機能が影響を受けないか否かに関して判定がなされる。上で述べたように、リモートデバイスとの有効な通信の確立により影響を受けない機能は、そのようなリモートデバイスに関係ない機能である場合がある。たとえば、コンピュータ２００とデジタルカメラ２１０を使用する上の例では、影響を受けない機能はディスク駆動装置圧縮ユーティリティである場合があり、このユーティリティはコンピュータ２００がデジタルカメラ２１０との有効な通信状態にあるか否かに関係なく、その機能を実行する。オプションのステップ５１９において、影響を受けない機能はないという判定がなされた場合には、方法５００は、上で説明したステップ５０５に進む。ステップ５１５であった場合のように、可能なすべての機能の内のどの機能も影響を受けないというときに、このような判定がなされる場合がある。同様に、１つの機能集合のいずれもが影響を受けない場合、などの場合に、このような判定になる場合がある。
【００５７】
オプションのステップ５１９の判定の結果が、機能が影響を受けないということであるならば、方法５００はオプションのステップ５２１に進む。オプションのステップ５２１では、第２の機能に関する第２の動作がなされる。たとえば、上で図３Ｂと図４Ｃに関連して説明したように、第２の動作は影響を受けない機能についてデエンファシスする場合がある。たとえば、影響を受けない機能をユーザインターフェースで最小にすること、ユーザから隠すこと、使用不可および／または同様にする場合がある。最終的に、ステップ５２３では、動作が続けられるか、あるいは方法５００がリモートデバイスを検出してステップ５０１に戻る。ステップ５１５〜５１７およびオプションのステップ５１９〜５２１が、複数の機能に対して何回でも実行される場合があること、および影響を受けるかあるいは影響を受けないそれぞれの機能に対してなされる動作は、影響を受けるかあるいは影響を受けない他の機能とは異なる場合があること、が理解されるであろう。
【００５８】
このようにして、方法５００を実行するデバイスは、リモートデバイスを検出し、かつそのリモートデバイスとの有効な通信を確立することが可能である。上で述べたように、そのデバイスおよびリモートデバイスの呼称は説明目的だけのための約束事であり、任意のデバイスにどちらの用語を使用して記述しても良い。さらに、複数のデバイスが並行して方法５００を実行し、それぞれのデバイスが他方を検出し、かつそれとの有効な通信を確立する場合があることが理解されるであろう。
【００５９】
リモートデバイスとの有効な通信の検出および確立に基づき、多くの異なるタイプのデバイスの動き、および／または、機能性を提供するために、方法５００が実施される場合があることが、さらに理解されるであろう。たとえば一実施形態では、デスクトップコンピュータがテレビ番組とコンピュータプリケーションの両方を提示する場合がある。ある場合には、ラップトップコンピュータがデスクトップコンピュータと同じ部屋に持ち込まれる。これらのコンピュータのどちらかあるいは両方が、方法５００に従い、他方との有効な通信の確立により機能が影響を受けるか否かを判定する場合がある。この例では、影響を受ける場合がある機能はテレビ番組およびコンピュータプリケーションに対する表示の選択である。その結果この例では、デスクトップコンピュータはテレビ番組のみを表示するように切り替わる場合があり、そしてラップトップはコンピュータプリケーションを表示し始める場合がある。このような方法で、これらのコンピュータはそれぞれの動作（テレビ番組とコンピュータプリケーション）の見える領域を最大にすることが可能である。このようにして、動作が２台のコンピュータの間で分担される。
【００６０】
別の例では、リモート制御装置が第１の部屋からある電子デバイスが位置している第２の部屋に持ち込まれる場合がある。第２の部屋では、リモート制御装置、および／または、その電子デバイスが方法５００に従い、他方を検出し、かつそれとの有効な通信を確立する。この例では結果として、リモート制御装置は、自動的にその電子デバイスのデバイスタイプを判定し、そのデバイスからリモート制御コードを獲得し（リモート制御装置にまだロードされていない場合に）、リモートデバイスを制御することが可能である。このようにして、一実施形態では、リモート制御装置は、そのリモート制御装置に近いデバイスのタイプを判定することが可能であり、かつ次に、そのデバイスを制御するためにそれ自体を適合させることが可能である。
【００６１】
さらに別の例では、方法５００により動作するデバイスが、互いに有効な通信状態にあるいくつかのデバイスによって形成されたシステムに関する情報を提供可能な場合がある。たとえば再び図２Ｃを参照して、コンピュータ２００が携帯電話２２０およびカメラ２１０の両方に関連した機能を表示可能な場合がある。たとえば、コンピュータ２００が、携帯電話２２０からの呼び出し記録にアクセス可能な場合があり、かつカメラ２１０に格納された一連のデジタル画像を閲覧可能な場合がある。同様に、携帯電話２２０はコンピュータ２００に格納された個人的な日程表を、およびカメラ２１０に格納された一連のデジタル画像を見ることが可能な場合がある。
【００６２】
上で述べたように、本発明の一実施形態は、互いに有効な通信状態にあるデバイスに関する、ユーザの次の動作の「予知(anticipate)」が可能である。したがってさらなる例では、ユーザが携帯電話を家に持ち帰り、ユーザのパーソナルコンピュータ、あるいは他の計算デバイスが、その電話を検出し、それに対応して、ユーザの電話サービスを調整するかもしれない。たとえば、ユーザがＶＯＩＰ（Voice Over IP）技術を利用するなら、パーソナルコンピュータは、その携帯電話が家にあるか否かに基づき、異なるルーティングパターンを有効にするために、呼び出しルーティングを制御するかもしれない。ユーザは複数のそのようなルーティングパターンを持つことが可能である。携帯電話がユーザの家にあるとき、パーソナルコンピュータはすべての呼（家庭用電話と携帯電話への）を家庭用電話にルーティングするかもしれない。その携帯電話が家を出た場合には、状況が逆になる場合があり、家と携帯電話の両方への呼が携帯電話にルーティングされる。その結果、ユーザは、携帯電話の通話時間を節約し、家で複数の電話に答えねばならないこと、携帯電話への呼を取り逃がすこと、などの不便を免れるであろう。
【００６３】
本発明の一実施形態により可能になるデバイスの動きのさらに別の例として、一実施形態により動作しているデバイスあるいはシステムが、リモートデバイスがいつ近傍に持ち込まれたかを感知し、そのデバイスを自動的に認識し、あるいはそのデバイスに問い合わせするかもしれない。その結果、そのデバイスあるいはシステムは、適用可能であるなら、ユーザ介入なしで、必要なドライバーをインストールして、通信を確立するかもしれない。ユーザにとっては、新規のデバイスが自身のシステムと継ぎ目なくぴったり動作するように見える。
【００６４】
このようにして、リモートデバイスの出現に基づき、電子デバイスの動きを変更する方法およびシステムが提供される。様々な図を用いた例示的実施形態に関連して本発明を説明してきたが、本発明から逸脱することなく、本発明と同一の機能を実行するために、他の同様の実施形態をが使用する場合があり、あるいは説明してきた実施形態に対して、変更および追加をなす場合があることは、理解されるべきである。たとえば当業者は、本発明は、任意のタイプの環境における、任意のタイプ、数、あるいは構成の電子デバイスに適用される場合があることを認識するであろう。したがって本発明は、いずれの一つの実施形態にも限定されるべきではなく、特許請求範囲に記載のにより解釈されるべきである。
【図面の簡単な説明】
【００６５】
【図１】本発明の実施するための例示的コンピューティング環境を示す図である。
【図２Ａ】本発明の様々な実施形態が組み込まれている電子デバイスの例示的構成を示す図である。
【図２Ｂ】本発明の様々な実施形態が組み込まれている電子デバイスの例示的構成を示す図である。
【図２Ｃ】本発明の様々な実施形態が組み込まれている電子デバイスの例示的構成を示す図である。
【図２Ｄ】本発明の様々な実施形態が組み込まれている電子デバイスの例示的構成を示す図である。
【図３Ａ】本発明の様々な実施形態が組み込まれている例示的デバイス機能構成を示す図である。
【図３Ｂ】本発明の様々な実施形態が組み込まれている例示的デバイス機能構成を示す図である。
【図４Ａ】本発明の様々な実施形態が組み込まれている例示的なデバイスおよびシステムの機能構成を示す図である。
【図４Ｂ】本発明の様々な実施形態が組み込まれている例示的なデバイスおよびシステムの機能構成を示す図である。
【図４Ｃ】本発明の様々な実施形態が組み込まれている例示的なデバイスおよびシステムの機能構成を示す図である。
【図５】本発明の実施形態によるデバイスの動きを変更する方法を示すフローチャートである。
【符号の説明】
【００６６】
１００  コンピューティング環境
１２０  処理ユニット
１２１  システムバス
１３４  オペレーティングシステム
１３５  アプリケーションプログラム
１３６  他のプログラムモジュール
１３７  プログラムデータ
１４０  着脱不可能・不揮発性メモリンターフェース
１４４  オペレーティングシステム
１４５  アプリケーションプログラム
１４６  他のプログラムモジュール
１４７  プログラムデータ
１５０  着脱可能・不揮発性メモリンターフェース
１６０  ユーザ入力インターフェース
１６１  ポインティングデバイス
１６２  キーボード
１７０  ネットワークインターフェース
１７１  ローカルエリアネットワーク
１７２  モデム
１７３  ワイドエリアネットワーク
１８０  リモートコンピュータ
１８２  グラフィックスインターフェース
１８４  ＧＰＵ
１８５  リモートアプリケーションプログラム
１８６  ビデオメモリ
１９０  ビデオインターフェース
１９１  モニタ
１９５  出力周辺機器インターフェース
１９６  プリンタ
１９７  スピーカ
【図１】
0004751096.tif 000002
【図２Ａ】
0004751096.tif 000003
【図２Ｂ】
0004751096.tif 000004
【図２Ｃ】
0004751096.tif 000005
【図２Ｄ】
0004751096.tif 000006
【図３Ａ】
0004751096.tif 000007
【図３Ｂ】
0004751096.tif 000008
【図４Ａ】
0004751096.tif 000009
【図４Ｂ】
0004751096.tif 000010
【図４Ｃ】
0004751096.tif 000011
【図５】
0004751096.tif 000012