説明

ネットワーク・コネクションにおける変化に基づくアクションのトリガー

本発明の実施例は、システムを有線又は無線でネットワーク接続する状態(ステータス)の変化に基づいてアクションを実行するシステムを提供する。オペレーション中、システムはネットワーク接続の状態(ステータス)に変化があるかを検出する。システムは、この変化の検出に応じて、システムの状態を決定する。そして、システムは、決定した状態を用いて1以上のアクションを実行する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、電子デバイスの性能を改善する技術に関連し、より詳細には、電子デバイス用のネットワーク・コネクション(接続)における変化に基づきアクションをトリガーする方法及び装置に関する。
【背景技術】
【0002】
設計者は、スマートフォン、ラップトップ、ネットブックなその携帯型電子デバイスで利用可能な機能(feature)の数を絶えず増やしてきた。その結果、相当に小型化しているにもかかわらず、今日の多くの携帯型電子デバイスは、まさに数年前からデスクトップコンピュータの機能の多くを提供し、さらに携帯型電子デバイスに固有な追加的機能も提供する。例えば、多くの携帯型電子デバイスはネットワーク接続性、(例えば、Bluetooth SIG(R)、Bellevue社、WA、USAからのBluetooth(R)、WiFi、3G/4Gネットワーク、USB、イーサネット(R)など)、完全機能のインターネットブラウザ、位置検出サービス(例えば、グローバル・ポジショニング・システムなど)、静止カメラ及びビデオカメラ、メディアプレーヤー、圧力/温度/方向センサ、及び他の多くの機能を提供する。これらの機能は、携帯型デバイスが多数の異なるサービスを提供することを可能にする。異なるサービスとは、例えば、eメール、電話、テキストメッセージ、インスタント・メッセージ、ソーシャルネットワークでのコミュニケーション、旅行経路計画などの位置に基づくサービス、インターネットブラウジング、メディア再生、及び他の多くを含む。
【0003】
運悪く、この膨大な数の機能は、最近では、携帯型電子デバイスに利用されるに過ぎないので、設計者は携帯型電子デバイスの機能と組合わせて実行され得る多くの機能の優位性をまだ享受していなかった。
【発明の概要】
【課題を解決するための手段】
【0004】
本発明は、システムを有線又は無線でネットワーク接続する状態の変化に基づいてアクションを実行するシステム(例えば、システム100)を提供する。オペレーション中、システムはネットワーク接続の状態(ステータス)に変化があるかを検出する。この変化の検出に応じて、システムはシステムの状態を決定する。そして、システムは、決定した状態を用いて1以上のアクションを実行する。
【0005】
或る実施例では、ネットワーク・コネクションのステータス変化を検出するとき、システムは、(1)ネットワーク・コネクションからの非接続又は再接続、)2)ネットワーク・コネクションの信号強度の変化、(3)ネットワーク・コネクションのバンド幅の変化、(4)ネットワーク・コネクション上で所定の第2のシステムと通信する能力の有無の少なくとも1つを検出する。
【0006】
或る実施例では、システムの状態を検出するとき、システムは、システムの状態についての情報を返信するよう、システム内の1以上のサブシステムに要求する。この要求に応じて、システムはシステムの状態についての情報をサブシステムから受信する。次に、システムは、このシステムの状態についての情報を記録する。
【0007】
幾つかの実施例では、システムの状態についての情報を返信するようシステム内の1以上のサブシステムに要求するとき、システムは、当該システムの過去・現在・予測される将来の状態の少なくとも1つについての情報を返信するよう1以上のサブシステムに要求する。
【0008】
幾つかの実施例では、システムの状態にはシステムの内部状態を含む。これらの実施例の場合、要求した情報には、システム内部のハードウェア若しくはソフトウェアモニタの少なくとも1つからサンプリングされた情報を含む。
【0009】
幾つかの実施例では、システムの状態は該システムの外部状態を含む。これらの実施例の場合、リクエストした前記情報には、(1)システムの地理的又は物理的位置、(2)システムの直線速度若しくは直線加速度、又は角速度若しくは角加速度、(3)システムの方向性ヘッダー、(4)システムの外部温度、(5)システムのチルト角若しくは回転角、(6)システムの外部気圧、(7)システムの外部光の強度、(8)システムの外部音のレベル、(9)時間の少なくとも1つに関する、システムの1以上のセンサによりサンプリングされた情報を含む。
【0010】
幾つかの実施例では、システムの予測される将来の状態についての情報を返信するとき、システムは、システム状態についての情報に関し、1以上の現在又は前のサンプリングを取得する。そして、システムは、取得したサンプリングからシステムの予想される将来の状態を生成する。
【0011】
幾つかの実施例では、情報を記録することは、揮発性メモリ又は不揮発性メモリの少なくとも1つにその情報を記憶することを含む。
【0012】
幾つかの実施例では、判別した状態を用いてアクションを実行するとき、システムは、システム内の1以上のサブシステム又はアプリケーションにより、判別した状態を用いて1以上のオペレーションを実行するよう構成されている。
【0013】
幾つかの実施例では、判別した状態を用いてアクションを実行するとき、システムは、1以上の他のシステム又は当該他のシステム内の1以上のアプリケーションにより、判別した状態を用いて1以上のオペレーションを実行するよう構成されている。
【0014】
幾つかの実施例では、システムは、当該システムの状態を判別する前、所定時間を待つよう構成されている。
【0015】
幾つかの実施例では、システムは、少なくとも1つのアクションを実行する前、所定時間を待つよう構成されている。
【0016】
以下の図において、同じ要素に対して同一の符号が参照されている。
【図面の簡単な説明】
【0017】
【図1】本発明の一実施例に従うシステムのブロック図をあらわす。
【図2】本発明の一実施例に従い、ネットワーク・コネクションの状態変化に基づいてアクションを実行する処理を示すフローチャートである。
【図3】本発明の一実施例に従い、ネットワーク・コネクションの状態変化に基づいてアクションを実行するために、位置情報を用いた処理を示すフローチャートである。
【図4】本発明の一実施例に従い、ネットワーク・コネクションの状態変化に基づいてアクションを実行するために、位置情報を他の情報と共に用いた処理を示すフローチャートである。
【図5】本発明の一実施例に従い、別のデバイスでPAN情報に基づいてアクションを実行する処理を示すフローチャートである。
【図6】本発明の一実施例に従い、ネットワークから非接続してから所定のときにアクションを実行する処理を示すフローチャートである。
【発明を実施するための形態】
【0018】
以下の記載は、当業者が実施例をなし得て使用することを表しており、特定の前記アプリケーション及びその要求の意味において提供される。これら実施例に対する様々な修正が容易であることは当業者にとって明らかであり、またここで定義される一般原理が、本発明の精神及び範囲から逸脱することなく、他の実施例及びアプリケーションに適用されるものである。したがって、実施例はここに記載した実施例に限定されるものではなく、記載された原理及び特徴に整合する広い範囲に一致される。
【0019】
詳細な説明に記載するデータ構造及びコードは、典型的には、コンピュータ読出し可能な記憶媒体に記憶され、コンピュータの使用のためにコード及び/又はデータを記憶することのできる任意のデバイス又は媒体である。例えば、或る実施例の場合、コンピュータ読出し可能な記憶媒体は、限定するものではないが、揮発性メモリ(例えば、同期型DRAM)/ダブルデータレート同期型DRAM(DDR SDRAM)、ダイナミックRAM(DRAM)など)や、不揮発性メモリ(例えば、フラッシュメモリ、半導体ドライブなど)、ディスクドライブなどの光磁気記憶デバイス、磁気テープ、CD(コンパクトディスク)、DVD(デジタル多用途ディスク又はデジタルビデオディスク)、又はコード及び/又はデータを記憶することのできる他の媒体を含む。
【0020】
本明細書で述べる方法及びプロセスは、上述したコンピュータ読出し可能な記憶媒体に記憶され得るコード及び/又はデータとして組み込まれる。コンピュータシステムにより、コンピュータ読出し可能な記憶媒体に記憶されたコード及び/又はデータが読出され且つ実行されるとき、そのコンピュータシステムはデータ構造及びコードとして組み込まれ、コンピュータ読出し可能な記憶媒体内に記憶された方法及びプロセスを実行する。
【0021】
さらに、ここで述べる方法及びプロセスは、ハードウェアモジュールに含まれ得る。例えば、そのハードウェアモジュールは、限定するものではないが、特定用途向け集積回路(ASIC)チップ、フィールド・プログラマブル・ゲート・アレイ(FPGA)、及び他のプログラム可能な論理デバイスを含む。ハードウェアモジュールがアクティベートされるとき、それは自身内に含まれる方法及びプロセスを実行する。
【0022】
<システム>
図1は、一実施例に従うシステム100のブロック図をあらわす。システム100は、処理サブシステム102、メモリ・サブシステム104、ネットワーキング・サブシステム106、及びサービス・サブシステム108を含む。
【0023】
処理サブシステム102は、コンピュータオペレーションを実行するように構成された1以上のデバイスを含むことができる。例えば、処理サブシステム102は、限定するものではないが、1以上のマイクロプロセッサ、ASIC、マイクロコントローラ、又はプログラム可能な論理デバイスを含む。
【0024】
メモリ・サブシステム104は、処理サブシステム102、ネットワーキング・サブシステム106、及び/又はサービス・サブシステム108のためのデータ及び/又は命令を記憶する1以上のデバイスを含むことができる。例えば、メモリ・サブシステム104は、DRAM、フラッシュメモリ、及び/又は他のタイプのメモリを含む。さらに、メモリ・サブシステム104は、メモリへのアクセスを制御するためのメカニズムを含むことができる。或る実施例の場合、メモリ・サブシステム104は、システム100用のメモリも結合された1以上のキャッシュがアレンジされたメモリ階層を含む。
【0025】
或る実施例において、メモリ・サブシステム104は1以上の大容量の記憶デバイス(不図示)、半導体ドライブ、又は他のタイプの大記憶デバイスと結合する。これらの実施例の場合、メモリ・サブシステム104は頻繁に使用されるデータに関する高速アクセス記憶媒体としてシステム100により用いられる一方で、大記憶デバイスはあまり使用されないデータを記憶するために用いられる。
【0026】
ネットワーキング・サブシステム106は、有線及び/又は無線ネットワークを接続し通信する(すなわち、ネットワークオペレーションを実行する)よう構成された1以上のデバイスを含むことができる。例えば、ネットワーキング・サブシステム106は、限定するものではないが、Bluetooth(R)、ネットワーキングシステム、セルラーネットワーキングシステム(例えば、3G/4Gネットワーク)、USBネットワーキングシステム、IEEE802.11(置き換えて称される“802.11ネットワーク”)、イーサネット(R)ネットワーキングシステム、又は有線若しくは無線パーソナルエリアネットワーキング(PAN)システム(例えば、赤外線通信協会:IrDA、ウルトラワイドバンド:UWB、Z−Wave、又はIEEE802.15での規格に基づくネットワーク)で記述される規格に基づくネットワーキングシステムを含む。或る実施例では、ネットワーキング・サブシステム106は、ネットワーキング(そして、可能性としては、外部電源をシステム100へ供給するなどの他の目的)のために用いられ得る1以上の配線で接続された電気コネクションを含むことができる。
【0027】
ネットワーキング・サブシステム106は、配線で接続された電気コネクションのためのコントローラ、ラジオ/アンテナ、ソケット/プラグ、及び/又は有線や無線ネットワークと結合し、当該ネットワーク上でデータ及びイベントを送受信し処理するために用いられる他のデバイスを含むことができる。これらの実施例の幾つかでは、ネットワーキング・サブシステム106は、他のデバイスと共にアドホックの的なネットワーク・コネクション(例えば、アドホック無線PAN)を形成する1以上のメカニズムを含むことができる。
【0028】
サービス・サブシステム108は、システム100内に1以上のサービスを実行するように構成された任意のデバイスを含むことができる。一般的に、サービス・サブシステム108は、1以上の機能ブロック、コンポーネント、回路、エレメント、変換器(トランスデューサー)、及び/又はサービスを実行するのに用いるセンサを含む(別の実施例では、サービス・サブシステム108が提供できる幾つかのサービスを記載する以降の段落に示すとおり、サービス・サブシステム108はより多くの及び/又は異なるサービスを提供することができる)。
【0029】
例えば、サービス・サブシステム108は、1以上の位置検出システムを含むことができる。位置検出システムは、これに限定するものではないが、グローバル・ポジショニング・システム(GPS)、セルラー電話システムに基づく位置システム(例えば、セル識別子(cell-ID)、cell-ID++、拡張観測時差(E−OTD)、及び/又は3Gポジショニングなど)、及び/又はシステム100の地理的位置を決定するためのWiFi位置システムを含む。サービス・サブシステム108が2以上の位置検出システムを含む実施例の場合、位置検出システムは別個に又は組合わされて用いられ、システム100の位置を検出する。
【0030】
別の例として、サービス・サブシステム108が1以上の検出システムを含み、各検出システムは、システム100(すなわち、システム100内の処理サブシステム102、メモリ・サブシステム104、ネットワーキング・サブシステム106、及び/又はサービス・サブシステム108)の現在、過去、又は予測される今後の状態をトラッキング(追跡)するために外部及び/又は内部状態を検出する1以上のセンサに結合される。例えば、サービス・サブシステム108は、加速度計、コンパス、チルト/回転検出器、温度計、周囲光センサ、気圧計、カメラ、マイク、及び/又はタイマー/クロックなどのセンサを含む。
【0031】
さらに他の例として、サービス・サブシステム108は、システム100の現在、過去、又は予測される今後の状態をトラッキング(追跡)するための内部ハードウェア及び/又はソフトウェアモニタに結合された1以上のモニタリングシステムを含むことができる。例えば、サービス・サブシステム108は、これに限定するわけではないが、処理サブシステム102の負荷、温度、アプリケーション・プロファイル(すなわち、処理サブシステム102でどのアプリケーションが実行しているか)、及び/又はI/O活動をトラッキング(追跡)するモニタを含む。別の例として、サービス・サブシステム108は、これに限定するわけではないが、ネットワーキング・サブシステム106へ使用可能なネットワーク、又はネットワーキング・サブシステム106の接続性やバンド幅の使用をトラッキングするモニタを含むことができる。
【0032】
さらに他の例として、サービス・サブシステム108は、システム100の状態をロギングする1以上のログサービスを含むことができる。幾つかの実施例では、各ログサービスは、サービス・サブシステム108により提供される1以上のサービスからのイベント及びデータを記録するよう構成することができる。例えば、サービス・サブシステム108が位置検出システムを含んでいるとすると、ログサービスはこの位置検出システムからの位置情報をキャプチャーし、その情報をロギングするよう構成することができる。幾つかの実施例では、サービス・サブシステム108は、ログ状態をメモリ・サブシステム104に記憶するよう構成することができる。この場合、ログ状態を不揮発性記憶媒体に記憶することも含み、これにより、システム100の電源供給がOFFになったり失われたりすれば、そのログ状態は保持される。
【0033】
システム100の将来の状態をトラッキング(追跡)する実施例の場合、サービス・サブシステム108は、所定の間隔で、システム100の状態を自動的にサンプリングすることができる。次に、サービス・サブシステム108は、所定数の前のサンプルに基づいて、システム100の将来の状態を予測することができる。例えば、システム100の温度が、10分間隔での12個の以前のサンプルにわたって華氏75°であったならば、サービス・サブシステム108は、システム100の温度が次のサンプルで華氏75°のままであろうと予測することができる。
【0034】
システム100内で、処理サブシステム102、メモリ・サブシステム104、ネットワーキング・サブシステム106、及びサービス・サブシステム108は、バス110を用いて一緒に結合される。バス110はサブシステム間の電気的コネクションであり、個々のサブシステムは互いの間でコマンド及びデータを送受信するのに使用できる。明確さのためにバス110は1つのみしか示していないが、各実施例は異なる数又は構成の電気コネクションを含むことができる。
【0035】
幾つかの一実施例において、バス110はパケットバスであり、サブシステム間の通信はコマンド及びデータパケットを所定のフォーマットでバス110に送信することに関係する。別の実施例において、バス100は1以上の専用信号線であり、サブシステム間の通信は1以上の専用信号線上のサブシステムに信号を送信すること(シグナリング)に関係する。
【0036】
分離したサブシステムを図1に示すとおり、幾つかの実施例において、所与のサブシステムの幾つか又はすべては、システム100における1以上の他のサブシステムに統合され得る。例えば、サービス・サブシステム108は、処理サブシステム102、ネットワーキング・サブシステム106、及び/又はメモリ・サブシステム104と部分的に統合され得る。言い換えると、そのような実施例の場合、各サブシステムは、1以上のサービスの幾つか又は全てを実行するために機能ブロック、回路などを含む。別の実施例も同様に構成することができるが、明確性のため、各サブシステムが他のサブシステムとは分離している実施例を使って説明することとする。
【0037】
システム100は多くの異なるタイプの電子デバイスに組み入れることができる。一般的に、これらの電子デバイスは、ネットワーク状態における変化に基づいてアクションを実行することができる任意のデバイスを含む。例えば、システム100は、デスクトップコンピュータ、ラップトップコンピュータ、サーバ、メディアプレーヤー、アプライアンス、サブノートブック/ネットブック、セルラー電話、テスト装置の一部、ネットワーク・アプライアンス、PDA、スマートフォン、トイ(おもちゃ)、コントローラ、又は別のデバイスの一部である。
【0038】
システム100を記述するために特別なコンポーネントを用いるが、別の実施例においては、異なるコンポーネント及び/又はサブシステムがシステム100に存在し得る。例えば、システム100は、1以上の追加の処理サブシステム102、メモリ・サブシステム104、ネットワーキング・サブシステム106、及びサーブスサブシステム108を含む。或いは又はまた、1以上のサブシステムはシステム100に存在しないかもしれない。
【0039】
或る一実施例において、システム100は、図1に示していない1以上の追加のサブシステムを含む。例えば、システム100は、これに限定するものではないが、内蔵ディスプレイ、外部システムからデータを収集するデータ収集サブシステム、オーディオサブシステム、アラームサブシステム、メディア処理サブシステム、及び/又は、ユーザ(若しくは他のシステム)によりデータ及びコマンドをシステム100に入力し、システム100から情報を受け取ることができるようにする入/出力(I/O)サブシステムを含み得る。
【0040】
ネットワーク・コネクションに関するステータス(状態)変化の検出
実施例に戻ると、ネットワーキング・サブシステム106は、Bluetooth(R)ネットワーキングシステム、USBネットワーキングシステム、802.11ネットワーキングシステム、イーサネット(R)ネットワーキングシステム、有線若しくは無線PANシステム、及び/又は他のタイプの有線若しくは無線ネットワーキングシステムを含むことができる。記載実施例において、ネットワーキング・サブシステム106は、所与のネットワークタイプがネットワークに結合(すなわち、接続)し、ネットワーク上でデータを送信し、そしてネットワークから結合しない(すなわち、非接続する)ための既知のオペレーションを用いる。
【0041】
より詳細には、これらの実施例において、所与のネットワークタイプに関連するユニット弁と及び/又は信号を用いながら、ネットワーキング・サブシステム106は、関連するネットワーク・コネクションの状態(ステータス)に変化が生じた時を検出し、1以上の他のサブシステムにイベント通知若しくは信号を送信してその変化を知らせることができる。例えば、ネットワーク・コネクションが確立・終了・失われたとき、ネットワーキング・サブシステム106は、変化が生じた他の1以上のサブシステムに信号を送ることができる。
【0042】
さらに、幾つかの実施例において、所与のネットワーク・コネクションが他の所定の方法(バンド幅利用可能性、ネットワーク・プロバイダー、又は信号強度など)でステータスが変化するとき、ネットワーキング・サブシステム106は、その変化を検出し、そしてステータス変化が生じたことを1以上の他のサブシステムに信号で伝える。例えば、ネットワーク・コネクションのバンド幅が完全から制限された利用に遷移するならば、ネットワーキング・サブシステム106は、その遷移を検出して他のサブシステムに信号で伝えることができる。加えて、これら実施例の幾つかでは、ネットワーキング・サブシステム106は、ネットワーク・コネクション上の特定の他のシステムと通信をする能力又は能力の無さを検出することができる。
【0043】
幾つかの実施例の場合、ネットワーキング・サブシステム106は、ステータス変化を信号で知らせるために、所与のネットワークタイプに関するステータス変化に関係したイベント通知又は信号を他のサブシステムに転送する。例えば、ネットワーキング・サブシステム106が、(例えば、Bluetooth(R)ネットワークから離れているためにネットワーク接続を維持できないといった移動というような、)Bluetooth(R)ネットワーク・コネクションが失われると、Bluetooth(R)ネットワーキングシステムに接続されているという前提では、Bluetooth(R)非接続イベントがネットワーキング・サブシステム106によって生成され、Bluetooth(R)コネクションが失われたことを知らせるために1以上の他のサブシステムに転送する。
【0044】
再び実施例に戻ると、ネットワーキング・サブシステム106は、ネットワークへの結合のために用いられ得る配線接続のコネクション(例えば、30ピンコネクタ又はイーサネット(R)コネクション)を含む。これらの実施例の場合、配線接続のコネクションが非接続になる、若しくは配線接続のコネクション上の信号が失われると、配線接続のコネクションもはや機能しないということを示唆するために、ネットワーキング・サブシステム106から1以上の他のサブシステムへの信号が生成される。例えば、システム100が30ピンコネクタで結合される実施例と仮定すると、30ピンコネクタがパワーを失った(例えば、非接続になったり、接続はしているものの電気的パワーが失われた)ということをシステム100が検出すれば、ネットワーキング・サブシステム106は、1以上の他のサブシステムにパワー損失を知らせる信号を送信することができる。
【0045】
ネットワークステータス変化に基づくアクションの実行
記載した実施例は、ネットワーク・コネクションにおけるステータス変化に基づき1以上のアクションを実行することができる。一般的に、これは、所与のネットワーク・コネクションのステータスにおける変化を検出し、次にシステム100内の1以上のサブシステムに対して信号を送ってそのステータス変化をサブシステムにしらせるというネットワーキング・サブシステム106に関係する。ネットワーク・コネクションのステータス変化を示す信号を受信すると、1以上のサブシステムは1以上のアクションを実行することができる。幾つかの実施例において、アクションを実行することは、システム100の過去・現在・予想される未来についての情報を記録し、この記録された情報を用いて1以上のアクションを実行することに関係し得る。
【0046】
以下の記載は、明確性及び簡潔さの観点から、システム100が一般的にネットワークオペレーション及びアクションを実行するものとして記載することに留意されたい。このように実施例を記載するのではあるが、図1に示すような1以上のサブシステムは、ネットワークオペレーション及び/又はアクションの幾つか又は全てを実行することもある。
【0047】
図2は、記載する実施例に従い、ネットワークステータス変化に基づきアクションを実行するための処理を示すフローチャートをあらわす。この処理は、システム100内のネットワークサブシステム106により、ネットワーク・コネクションに関してステータス変化が生じたことを特定したときに開始する(ステップ200)。例えば、ネットワークサブシステム106がWiFiネットワーク及びBluetooth(R)ネットワークと結合し通信する1以上のメカニズムを含み、そしてシステム100をネットワークに繋げるために30ピンの配線接続コネクタを含んでいると仮定したとき、ネットワークサブシステム106は、WiFi、Bluetooth(R)若しくは30ピンコネクションが確立、失われ、終了、中断、信号強度を所定の量に変更され、又はステータスが変化したかを判定することができる。
【0048】
次に、ネットワークサブシステム106は、ネットワーク・コネクションに関するステータス変化が生じているかをシステム100内の1以上のサブシステムに信号で合図する。例えば、ステップ200(これは、図2のオペレーションすべてを記載するのに用いるだろう。)に関して記載される実施例を用いて、ネットワークサブシステム106が、WiFi、Bluetooth(R)若しくは30ピンコネクションのステータス変化を、処理サブシステム102、メモリ・サブシステム104、ネットワーキング・サブシステム106、及び/又はサービス・サブシステム108へ信号で合図することができる。
【0049】
受信した信号に基づき、1以上のサブシステムはシステム100についての状態情報を記憶することができる(ステップ202)。記載される実施例において、状態情報には、システム100の、過去・現在・予想される将来の内部及び/又は外部も状態情報を含む。内部状態情報は、システム100の状態に関する任意の状態情報を含み、システム100のハードウェアモニタ又はソフトウェアモニタから集められた状態情報を含む。外部状態情報は、システム100外の任意の状態情報を含むことができ、例えば、1以上の位置センシングデバイス、センサ、ネットワークデバイス、又は例えば、トランスデューサー、により集められる情報などである。幾つかの実施例において、その情報は他のシステム(すなわち、システム100の外部のシステム)から受信する情報を含むことができる。
【0050】
記載される実施例の場合、記録される状態情報は、1以上の他のサブシステムからのサブシステムの一つによって集められる。例えば、ネットワークサブシステム106が、WiFi、Bluetooth(R)若しくは30ピンコネクションの非接続イベントを、処理サブシステム102に信号送信したという場合、処理サブシステム102は、システム100の内部又は外部状態に関する情報のためにサブシステム108にクエリーすることができる。さらに、処理サブシステム102は、システム100の内部又は外部状態についての記憶された情報のためにサブシステム104、ネットワークサブシステム106、及び/又は処理サブシステム内の内部構造にクエリーすることができる。
【0051】
上述したように、幾つかの実施例において、情報には、システム100の過去・現在・予想される将来の状態についての情報を含むことができる。或る実施例では、処理サブシステム102は、メモリ・サブシステム104からの記録された状態情報と、現在の状態情報の組み合わせを用いて、システム100の予想される将来の状態を生成することができる。あるいは別の実施例では、システム100は、サンプリングされた状態情報を用いて、予想される将来の状態を利用可能に(すなわち、メモリ内に)保持しておくことができる。
【0052】
次に、サブシステムは、記録された状態情報を用いて1以上のアクションを実行する(ステップ204)。例えば、ネットワークサブシステム106がWiFi、Bluetooth(R)若しくは30ピンコネクションの接続イベントを検出すると処理サブシステム102に信号送信するという実施例では、処理サブシステム102はサービス・サブシステム108から内部及び/又は外部の状態情報を上級することができる。この状態情報を用いて、処理サブシステム102は次に1以上のアクションを実行することができる。
【0053】
典型的な実施例
上述したように、ネットワーク・コネクションのステータス変化を示す信号を受信すると、1以上のサブシステムは、システム100の過去・現在・予想される将来の状態についての情報を記録し、そしてこの記録された情報を用いて1以上のアクションを実行することができる。例えば、システム100がスマートフォンの一部であって、サービス・サブシステム108が1以上の位置センシングシステムを含み(すなわち、スマートフォンが“位置認識”し)、そしてネットワーキング・サブシステム106がBluetooth(R)ネットワーク・コネクションをサポートするという実施例を仮定する。この実施例の場合、Bluetooth(R)ネットワークへのコネクションを失うと(すなわち、Bluetooth(R)ネットワーク・コネクションで“ステータス変化”がある)、ネットワーキング・サブシステム106は、ネットワーク・コネクションが失われたということを処理サブシステム102に信号で合図することができる。処理サブシステム102は、次に、システム100からの外部及び/又は内部状態情報を用いて、Bluetooth(R)ネットワーク・コネクションを失うことに関連したアクションを実行することができる。
【0054】
例えば、幾つかの一実施例において、ネットワークステータスに変化があったことの知らせを受信すると、処理サブシステム102は、スマートフォンの最新位置についてサブシステム108にクエリーを出すことができる。サービス・サブシステム108から位置についての情報を受信すると、処理サブシステム102はその位置を記録する。処理サブシステム102は、次に、記録された情報を使用し、地図アプリケーションを用いた地図上にピンを配置するなどのアクションを実行する。システム100が車中でBluetooth(R)ネットワークに接続され、その車が駐車されたりスイッチが切られるとBluetooth(R)コネクションが失われるという実施例の場合、車が停められた場所を見つけることをユーザが後で支援することや、牽引車アシスタントサービスにその位置情報を送信するということも考えられるし、或いは別のオペレーションを実行することもできる。
【0055】
図3は、記載する実施例に従い、位置情報を用いて、ネットワーク・コネクションのステータス変化に基づきアクションを実行する処理を示したフローチャートをあらわす。図3に示される例では、ユーザの車中でBluetooth(R)無線ネットワークに無線で接続するシステム100を含む、位置認識ポータブル電子デバイス(例えば、ラップトップ、スマートフォンなど)を仮定する。
【0056】
図3に示すように、処理は、ポータブル電子デバイスが無線で、ユーザの車中おけるBluetooth(R)ネットワークに接続するときに開始する(ステップ300)。幾つかの実施例では、コネクションの通知は、ネットワークサブシステム106から処理サブシステム102へとわたされ、そして処理サブシステム102は、非接続イベントのために、Bluetooth(R)コネクション(すなわち、Bluetooth(R)無線ネットワークへのコネクション)をモニタすることを開始する。他の実施例の場合、処理サブシステム102は、Bluetooth(R)コネクションをモニタリングすることはしないが、Bluetooth(R)コネクションに関する非接続イベントが生じるときを検出する。
【0057】
次に、ポータブル電子デバイスは、Bluetooth(R)コネクションが非接続になったり、又は失われたかを特定する(ステップ302)。或る実施例の場合、ポータブル電子デバイス内のネットワークサブシステム106が、Bluetooth(R)コネクションが非接続になったり、又は失われることを検出する。ネットワークサブシステム106は、Bluetooth(R)コネクションが失われたことを検出すると、処理サブシステム102に信号を送信して、Bluetooth(R)コネクションが失われたことを処理サブシステム102に知らせる。
【0058】
処理サブシステム102は、次に、ポータブル電子デバイスに関する現在位置を提供するために、サービス・サブシステム108へ要求を送る(ステップ304)。これに応答して、サービス・サブシステム108は、GPSシステム、ポジション追跡システム、又は他の位置センシング・メカニズムを用いてポータブル電子デバイスの現在位置をキャプチャーする。キャプチャーされた位置は、処理サブシステム102に転送され、記憶される(ステップ306)。処理サブシステム102は、次に、記録された位置情報を使用し、地図アプリケーションを用いて地図上にピンを配置する(ステップ308)。
【0059】
別例としては、これらの実施例のいくつかにおいて、Bluetooth(R)コネクションが失われたという知らせをネットワークサブシステム106から受信すると、処理サブシステム102はそのコネクションが失われた場所を記録することができる。記録された情報は、彼/彼女が(ユーザ又はシステム100によって前に定義されていた)ネットワークのエリアを離れていることを知らせるために用いることができる。システム100がラップトップ内のBluetooth(R)ネットワークに接続された実施例について、これは、ユーザがラップトップから離れて移動する前に、ラップトップを安全にすることを気づかせるのに役立ち得る。
【0060】
さらに別の例として、システム100がスマートフォンの一部であり、サービス・サブシステム108が1以上の位置センシングシステム及び1以上の加速度計を備え、そして、ネットワーキング・サブシステム106がBluetooth(R)ネットワーク・コネクション及び配線接続コネクション(例えば、30ピンコネクション)をサポートするという実施例を仮定しよう。この実施例の場合、システム100は、(システム100に関する記録された現在及び過去の状態情報を用いながら、)配線接続コネクションがパワーを失ったり、或いはBluetooth(R)ネットワーク・コネクションが失われたり、システム100が移動中の速度が65mpsからゼロに数秒間で落ち込むということを検出することができる。これから、システム100は、車両事故が生じたことと特定することができる。システム100は、次に、ユーザに警告音(アラーム)を出すなどのアクションを実行することができる。システム100が外部機関(例えば、牽引車アシスタントサービスや当局)に警告信号を出す前に、そのアクションをキャンセルする機会をユーザに与えるために事故が発生したかもしれないということをシステム100が特定する。この実施例の場合、時間、前の時間隔にわたる移動速度、及び/又は(道路上での)場所といった、システム100の状態について記録された他の情報は、上記特定を裏付けるために用いることができる。
【0061】
図4は、記載される実施例に従い、他の情報とともに位置情報を用いて、ネットワーク・コネクションのステータス変化に基づきアクションを実行する処理を示すフローチャートをあらわす。図4の示す例では、電子デバイスのバッテリーを再チャージするため、及びネットワーキングのために、ユーザの車で配線接続コネクタに電気的に接合するシステム100を含む位置認識ポータブル電子デバイス(例えば、ラップトップ、スマートフォンなど)を仮定する。
【0062】
図4に示すとおり、ポータブル電子デバイスがユーザの車内の配線接続のコネクションと電気的に結合するときに開始する(ステップ400)。幾つかの実施例では、コネクションの知らせは、ネットワーキング・サブシステム106から処理サブシステム102へとわたされ、そして、処理サブシステム102は、非接続イベントのために配線接続のコネクションをモニタリングすることを始める。詳しく言えば、処理サブシステム102は、配線接続のコネクションを通じた電力の供給を、電力不足の可能性のためにモニタリングすることができる。他の実施例の場合、処理サブシステム102は、配線接続のコネクションをモニタリングしないが、その代わりに、配線接続のコネクションの電力損失をそれが生じたときに検出する。
【0063】
ポータブル電子デバイスは、次に、配線接続のコネクションが非接続するか又は電力を失ったかを特定する(ステップ402)。幾つかの実施例では、ポータブル電子デバイス内のネットワーキング・サブシステム106が、配線接続のコネクションが非接続又は電力を失ったかを検出する。ネットワーキング・サブシステム106は、配線接続のコネクションが電力を失ったことを検出すると、処理サブシステム102に信号を送って、配線接続のコネクションが電力を失ったことを処理サブシステム102に知らせる。
【0064】
次に、処理サブシステム102は、ポータブル電子デバイスの現在位置を提供するために、サービス・サブシステム108に信号を送る(ステップ404)。これに応答して、サービス・サブシステム108は、GPSシステム、ポジション追跡システム、又は他の位置センシング・メカニズムを用いてポータブル電子デバイスの現在位置をキャプチャーし、その位情報置を処理サブシステム102に転送する。
【0065】
さらに、処理サブシステム102は、配線接続のコネクションの電気コネクションが失われた時の所定の時間加速度情報を提供するため、サービス・サブシステム108に信号を送る(ステップ406)。これらの実施例は、加速度及び/又は速度を周期的に記録したり、所与の時間で所定量より大きな速度の変化(すなわち、2秒未満で65〜0mphまでの速度変化)を含む加速又は減速を検出したりすることができる。加速度情報を提供することは、電力を失う前の短時間で、電力を失った後の短時間まで、任意の減速についての情報を提供することに関係する。例えば、電力を失う前の1〜2秒から、電力を失った後の1〜2秒である。
【0066】
次に、キャプチャーされた位置情報及び加速度情報は記憶される(ステップ408)。そして、処理サブシステム102は、記録された位置情報及び加速度情報が、車両事故の発生を示しているか否かを判定する(ステップ410)。システム100は、次に、ユーザに対して音を出したり表示したりして、システム100が外部パーティ(例えば、牽引車アシスタントサービスや当局)に警告を出す前に、アクションをキャンセルする機会をユーザに与えるために事故が発生したかもしれないということをシステム100が特定する(ステップ412)。上述したように、本実施例の場合、時間、前の時間隔にわたる移動速度、及び/又は(道路上での)場所といった、システム100の状態について記録された他の情報は、上記特定を裏付けるために用いることができる。
【0067】
別の例として、システム100がネットブックの一部であり、サービス・サブシステム108及び/又は処理サブシステム102が、位置センシング及び個人コンタクト・マネージメント(すなわち、メモリ・サブシステム104内の電話/アドレスコンタクト)を提供するための1以上のメカニズムを含み、そしてネットワーキング・サブシステム106が、臨時の(アドホックな)PAN(パーソナルエリアネットワーク)を近くの他の同様に装備デバイスとともに形成する1以上のメカニズムを含むと仮定しよう。これらの実施例においては、ネットワーキング・サブシステム106は、PANを形成することをサポートする別のデバイスに遭遇すると、その他のデバイスによりPANを形成することができる。次に、ネットワーキング・サブシステム106は、処理サブシステム102に、PANが形成されたことを信号で知らせる。処理サブシステム102は、他のサブシステム(例えば、サービス・サブシステム108又はメモリ・サブシステム104)の一つから返送された情報を用いて、関連するアクションを実行することができる。例えば、処理サブシステム102は、他のデータベースから又は他のデバイスへ所定の情報(すなわち、パブリック・コンタクト若しくは識別情報、スケジュール情報)をアップロードしたりダウンロードしたり、位置に基づく情報を他のデバイスに提供したり、別のサービスを実行することができる。
【0068】
幾つかの実施例において、システム100はデバイスユーザの識別に基づき更なるアクションを実行することができ、これによりPANが形成されたり、及び/又は、システム100の内部/外部状態又は他のデバイスに基づく。例えば、システム100は、他のデバイスとともにPANが形成されたかを判定したり、そのデバイスからパブリックな識別情報を検索することができる。デバイスが既知のコンタクトに属するのであれば、システム100は、人の存在に対してユーザを警告する、音楽の音量を下げる、その人にとって意図されたファイルを交換する、別のオペレーションを実行するなどのアクションをおこなうことができる。
【0069】
図5は、記載する実施例に従い、別の電子デバイスにより形成されるPANに基づきアクションを実行する処理を示すフローチャートをあらわす。図5に示す例として、システム100を含むポータブル電子デバイス(例えば、ラップトップ、スマートフォンなど)であって、他の同様の装備された電子デバイスにより臨時的な(アドホックな)PANを形成するポータブル電子デバイスを仮定されたい。さらに、ポータブル電子デバイスは、当該デバイスのユーザ識別について選択された情報、及びポータブル電子デバイスがPANを形成し得る他のデバイスのユーザ識別を交換するように構成されていると仮定する。
【0070】
図5に示すように、処理は、ポータブル電子デバイスが他の同様に装備された電子デバイスでPANを形成するときに開始する(ステップ500)。例えば、スマートフォンは、第2のスマートフォン、モール内のキオスク、ラップトップ若しくはデスクトップコンピュータ、セキュリティシステムなどでPANを形成することができる。これらの実施例において、PANは当該技術分野で既知の技術を用いて、ネットワーキング・サブシステム106により形成され得る。
【0071】
ネットワーキング・サブシステム106は、PANが形成されたことを検出すると、その知らせを処理サブシステム102に送信する。処理サブシステム102は、次に、他の電子デバイスから識別情報を検索する(ステップ502)。例えば、1又は2つのデバイスが、選択されたユーザ識別情報をPANが形成されているデバイスに提供するよう構成されているスマートフォンであり得る。これらの実施例の場合、PANが形成されるとき、各デバイス内の処理サブシステム102は、デバイスがユーザ識別情報を互いに交換できることを生じさせる。(又は、識別情報を他のデバイスに送信することなく、他のデバイスから識別情報を電子デバイスが受信できることを生じさせる)。次に、処理サブシステム102は、他のデバイスからの識別情報を記録する(ステップ504)。
【0072】
次に、処理サブシステム102は、アクションに関連する又は処理サブシステム102によりアクションを実行するよう構成されているユーザであるかを判定する。例えば、処理サブシステム102は、ユーザに他の人の存在を警告したり、誰かがドアにいるとき音楽の音量を下げたり、その人にとって意図されたファイルを交換する、別のオペレーションを実行するように構成され得る。もしそうであれば、記録された識別情報に基づき、処理サブシステム102はそのユーザに関連するアクションを実行する(ステップ506)。
【0073】
幾つかの実施例において、システム100は、ネットワーキング・サブシステム106からネットワーク・コネクションのステータス変化があったことの通知を受信するとすぐに、1以上のアクションを実行する。例えば、システム100が、道路交通レベルを決定するためのサービス(例えば、アプリケーション)を含むロケーション認識セルラーフォンにあると仮定しよう。この実施例の場合、ユーザ車に対するBluetoothネットワーク・コネクションは、(その車のネットワーク、コネクション時間などを用いて)システム100によってなされたと決定することができる。そして、システム100は、所定のルート(例えば、仕事場へ)上で交通量をチェックするアクションをただちに実行し、ルートが混雑しているので別のルートをとるようにユーザにアラームで合図すべきかを決定することができる。
【0074】
幾つかの実施例において、システム100は、ネットワーキング・サブシステム106からネットワーク・コネクションのステータス変化があったことの通知を受信した後の所定の時に、1以上のアクションを実行する。これらの実施例の幾つかにおいて、情報はただちに記録され得るが、後にアクションを実行するようにしてもよい。
【0075】
例えば、システム100がラップトップコンピュータ内にあり、ユーザは家では第1の無線ネットワークから非接続し、30分後に仕事場で第2の無線ネットワークに接続するということを仮定しよう。この実施例の場合、システム100は、家の無線ネットワークから非接続イベントを検出し、そして30分後に仕事場の無線ネットワークに対するコネクションのチェックを実行することができる。仕事場のネットワークに対するコネクションがチェックをした時までに確立されなければ、システム100は、所定のロッキング・シーケンス(例えば、所定のパスワードを設定する)、重要なデータを保護する、ハードドライブをロックすることを可能にしたり不可能したり、システム能力を制限するといったアクションを実行することができる。別の例として、同じラップトップの場合で、システム100は、周期的に、所与のネットワークへの接続又は所与のネットワークからの非接続が予め決めた時間(例えば、1時間、1日、1週間など)で生じたかをみるためにチェックすることができる。そうでないならば、1以上の関連するアクションを実行することができる。
【0076】
図6は、記載する実施例に従い、ネットワークからの非接続後、所定の時間にアクションを実行する処理を示すフローチャートをあらわす。図6に示す例では、家及び仕事場で無線(例えば、IEEE802.11又はBluetooth(R))ネットワークによりネットワーク・コネクションを形成するよう構成されるシステム100を含むラップトップコンピュータを仮定する。
【0077】
図6に示すように、処理は、ラップトップコンピュータが家の無線ネットワークから非接続になったときに開始する(ステップ600)。幾つかの実施例において、ネットワーキング・サブシステム106は、家の無線コネクションに対する無線コネクションが失われ、且つ、処理サブシステム102に通知を送信することを決定する。
【0078】
無線コネクションが失われたという通知を受信してから所定時間経って、処理サブシステム102は、無線ネットワーク・コネクションが家での無線ネットワークで形成されたかを判定するためにネットワーキング・サブシステム106にクエリーする(ステップ602)。例えば、処理サブシステム102は、1週間後、1日後、1時間後、又は別の時間後に、ネットワーキング・サブシステム106に対して、接続性に関するクエリーをつくるよう構成されている。(これらの実施例においては、ラップトップコンピュータは家の無線ネットワークに関する非接続イベントを検出するが、所定の時間が経過するまで仕事場の無線ネットワークへのコネクションをチェックするアクションを実行しないことに留意されたい)。
【0079】
ネットワーキング・サブシステム106が、家での無線ネットワークにより無線コネクションが形成されるという確認を返送すれば、この処理は終了する。あるいはまた、ネットワーキング・サブシステム106により、無線コネクションが形成されないということが示されれば、処理サブシステムは盗み又は損失の可能性におりコンピュータを保護するオペレーションを実行することができる(ステップ604)。例えば、これらの実施例において、処理サブシステム102は、ハードドライブ、I/Oデバイス(例えば、モニタ、マウス、又はキーボード)、オペレーティング・システム、選択されたプログラムを、所定のパスワード又は物理的な鍵を用いてセキュアにすることや、重要なデータを暗号化し、隠蔽し、破壊することや、eメール/テキストのメッセージ若しくはインスタント・メッセージを送信して安全な人物若しくはラップトップを盗まれたり失ったりするユーザに知らせることや、別のアクションを実行することができる。あるいはまた、処理サブシステム102は、特定のパスワードが入力されないかぎり、及び/又は一定の時間が経過する前に無線システムの一つにラップトップが接続されないかぎり、これらのオペレーションが実行されるだろうことをユーザに警告することができる。
【0080】
我々はこれらの実施例において特別なネットワークを参照していたわけだが、代替的な実施例は異なるタイプのネットワークを使用することに留意されたい。例えば、幾つかの実施例は、イーサネット(R)ネットワーク、又は有線若しくは無線ネットワークを使用する。
【0081】
これらの実施例にける所定の時間後にアクションを実行することに加えて、システム100は、ネットワークステータスにおける変化の通知を受信するとただちに1以上のアクションを実行することができ、そしてその通知を受信してから所定のときに1以上の追加のアクションを実行することができる。
【0082】
幾つかの実施例では、システム100は、所与のネットワークに対するコネクションを検出すると、ネットワークに結合する熱のデバイスを用いて若しくは組み合わせてアクションを実行することができる。例えば、家での無線システムがその家にある暖房システムを制御するシステムに接続されていると仮定すると、コネクションが家での無線ネットワークにより確立されたことが決定されれば、システム100はその家の温度を見つけ出すために暖房システムを制御するシステムにクエリーを出すことができる。温度が好ましい範囲外にあれば、システム100はユーザを促して暖房システムを作動させるようにしたり、或いは自動的に暖房システムを作動させることができる。
【0083】
幾つかの実施例において、上述したネットワーク・コネクションにおけるステータス変化の検出及びアクションの実行は、システム100における1以上のサブシステム内の機能ブロックを用いて達成される。言い換えると、ハードウェアブロック、回路、及び/又は要素によって、ステータス変化が検出され、そしてアクションが実行される。これら実施例において、システム100は、アクションを実行するときにサブシステム102上で動作するオペレーティング・システム又はアプリケーションと相互作用しない。これら実施例の幾つかにおいて、オペレーティング・システム及び/又はアプリケーションでのエラー(故意に生成されたエラーを含む)は、アクションがとられることを回避しない。
【0084】
多くのネットワークステータスの変化、これに応じて記録される情報、所与の電子デバイスによってとられるアクションを述べてきたわけであるが、当業者であれば、記載した実施例の精神から逸脱することのない異なるネットワークステータスの変化、これに応じて記録される情報、とられるアクションとともに使用することができることに留意されたい。
【0085】
<アクション構成>
いくつかの実施例において、ユーザは、所定のネットワークでステータス変化が生じたときに所与のアクションを実行するようシステム100を手作業で構成することができる。例えば、位置認識のネットブックでシステム100が使用されると仮定すると、ユーザは、Bluetooth(R)ネットワーク・コネクションが所与の時及び/又は場所で失われたり、又は所与のネットワークへのコネクションが確立若しくは失われたりするときに、システム100が低電力状態に気づき、現在の位置を記録し、ネットワークを介して他のデバイスに利用可能な選択された個人コンタクト情報を作り、多数のユーザアプリケーション(eメール、リモートログインなど)をオープンにし、及び/又は1以上の他のアクションを実行するようにシステム100を構成することができる。
【0086】
幾つかの実施例において、システム100は、ネットワークステータスの変化に基づき実行されるアクションをダイナミックに構成することができる。これらの実施例においては、システム100は、ネットワークステータスの変化に関連するユーザの振る舞い又は他のオペレーションを記録し、そして同じ様な変化が将来におきたときに実行されるべきアクションを決定するために、その記録された振る舞い又はオペレーションを使用することができる。これら実施例の幾つかでは、システム100はユーザを促して、アクションを構成することができる。
【0087】
例えば、システム100は、無線ネットワークから又は配線接続のコネクションからの非接続を検出すると、システム100の内部及び外部状態を記録し、所定の時間システム100を使用しながら、ユーザによってとられたアクションを記録することができる。例えば、システム100は、Bluetooth(R)ネットワーク・コネクションから非接続すると、現在の時間、温度、システム100上でユーザがアクセスしたアプリケーションの組、システム100の位置、及びシステム100に関する他の内部若しくは外部状態を決定することができる。システム100は、ネットワークステータスで同様の変化が将来に生じるならば、とるべきアクションを決定するために記録されたユーザの振る舞いを解析することができる。
【0088】
例えば、システム100がセルラーフォンで用いられると仮定すると、システム100は、場所A(例えば、仕事場)で、毎朝午前8時に、彼/彼女の車内のBluetooth(R)ネットワークから非接続されると、特別なロケーションにいるユーザが常にリンガー(メロディー)ボリュームを高いレベル若しくはサイレントに設定することを決定する。この決定に基づき、システム100は、同じネットワークのステータス変化が生じるたび毎に生じさせるアクションを構成することができる。
【0089】
上述した本発明の実施例は、例示の記載の目的としてあらわされている。よって、本明細書及び図面は、開示された形式に対して制限的に用いられることを意図しておらず、例示としてみなされるものである。したがって、多くの修正及びパリエーションが当業者にとって明らかであろう。さらに、上記開示は実施例を制限することを意図していない。実施例の範囲は、特許請求の範囲によって規定されている。

【特許請求の範囲】
【請求項1】
システムにおける有線又は無線ネットワーク・コネクションのステータス変化に基づきアクションを実行する方法であって、
前記ネットワーク・コネクションのステータス変化を検出し、
前記ステータス変化の検出に応じて、
前記システムの状態を判別し、
前記判別した状態を用いて1以上の行動を実行する、
ことを含む方法。
【請求項2】
前記ステータス変化を検出することは、
前記ネットワーク・コネクションからの非接続或いは再接続、
前記ネットワーク・コネクションの信号強度における変化、
前記ネットワーク・コネクションのバンド幅における変化、又は
前記ネットワーク・コネクション上で所定の第2のシステムと通信する能力の有無、
の少なくとも1つを検出することを含む、請求項1に記載の方法。
【請求項3】
前記システムの状態を判別することは、
前記システム内の1以上のサブシステムにリクエストして、前記システムの状態についての情報を返送させること、
前記リクエストに応じて、前記システムの状態についての情報を前記サブシステムから受信すること、
前記システムの状態についての情報を記録すること、を含む請求項1に記載の方法。
【請求項4】
前記システム内の1以上のサブシステムにリクエストして、前記システムの状態についての情報を返送させることは、前記システムの過去・現在・予想される将来の1つ以上についての情報を返送するよう前記1以上のサブシステムにリクエストすること、を含む請求項3に記載の方法。
【請求項5】
前記システムの状態は当該システムの内部状態を含み、リクエストした前記情報には前記システム内部のハードウェア若しくはソフトウェアモニタの少なくとも1つからサンプリングされた情報を含む、請求項3に記載の方法。
【請求項6】
前記システムの状態は、当該システムの外部状態を含み、リクエストした前記情報には、
前記システムの地理的又は物理的位置、
前記システムの直線速度若しくは直線加速度、又は角速度若しくは角加速度、
前記システムの方向性ヘッダー、
前記システムの外部温度、
前記システムのチルト角若しくは回転角、
前記システムの外部気圧、
前記システムの外部光の強度、
前記システムの外部音のレベル、又は
時間、
の少なくとも1つに関する、前記システムの1以上のセンサによりサンプリングされた情報を含む、請求項3に記載の方法。
【請求項7】
前記システムの予想される将来についての情報を返送することは、
前記システムの状態についての情報に関し、1以上の現在若しくは以前のサンプリングを取得すること、
前記取得したサンプリングから前記システムの予想される将来の状態を生成すること、
に関係する、請求項3に記載の方法。
【請求項8】
前記情報を記録することは、揮発性メモリ又は不揮発性メモリの少なくとも1つに前記情報を記憶することを含む、請求項3に記載の方法。
【請求項9】
前記判別した状態を用いてアクションを実行することは、
前記システム内の1以上のサブシステム又はアプリケーションにより、前記判別した状態を用いて1以上のオペレーションを実行すること、又は
1以上の他のシステム又は当該他のシステム内の1以上のアプリケーションにより、前記判別した状態を用いて1以上のオペレーションを実行すること、
の少なくとも1つを含む、請求項1に記載の方法。
【請求項10】
前記システムの情報を判別することは、前記システムの情報の変化を検出してから当該システムの状態を判別する前、所定時間を待つことを更に含む、請求項1に記載の方法。
【請求項11】
前記判別した状態を用いて1以上のアクションを実行することは、前記システムの状態を判別してから前記少なくとも1つのアクションを実行する前、所定時間を待つことを更に含む、請求項1に記載の方法。
【請求項12】
前記ネットワーク・コネクションのステータス変更を検出することは、有線若しくは無線ネットワークに対するコネクションが無いことを検出すること、
前記システムの状態を判別することは、前記システムの物理的位置を判別すること、
前記判別した状態を用いて1以上のアクションを実行することは、
前記判別した物理的位置を記録すること、及び、地図アプリケーション内の地図上にマーカーを配置するために前記記録された位置が使用されること、
を含む、請求項1に記載の方法。
【請求項13】
前記ネットワーク・コネクションのステータス変更を検出することは、有線若しくは無線ネットワークに対するコネクションが無いことを検出することを含み、
前記システムの状態を判別することは、
前記システムの物理的位置、及び、
前記有線若しくは無線ネットワークに対するコネクションが無いことの検出から所定の期間内における前記システムの加速度、
を特定することを含み、
前記判別した状態を用いて1以上のアクションを実行することは、
前記判別した物理的位置及び前記加速度を記録すること、及び、
前記システムが事故に巻き込まれたかどうかを決定するために前記記録された位置及び加速度が使用されることを含む、
ことを特徴とする請求項1に記載の方法。
【請求項14】
前記ネットワーク・コネクションのステータス変更を検出することは、別のシステムとのパーソナル・エリア・ネットワークの構成を検出することを含み、
前記システムの状態を判別することは、
前記他のシステムからユーザ識別情報を受信すること、及び
前記システムが、前記他のシステムの識別されたユーザに関連する1以上のアクションを実行するためのものであることを決定することを含み、
前記判別した状態を用いて1以上のアクションを実行することは、前記他のシステムの識別されたユーザに関連する1以上のアクションを実行することを含む、
ことを特徴とする請求項1に記載の方法。
【請求項15】
前記ネットワーク・コネクションのステータス変更を検出することは、第1の有線若しくは無線ネットワークに対するコネクションが無いことを検出することを含み、
前記システムの状態を判別することは、所定の期間待ち、そして、有線若しくは無線コネクションが第2の有線若しくは無線ネットワークに対してなされたかどうかを決定することを含み、
有線若しくは無線コネクションが前記第2の有線若しくは無線ネットワークに対してなされていなかったとき、前記判別した状態を用いて1以上のアクションを実行することは、前記有線若しくは無線コネクションがなされなかったということをユーザに通知する、又は盗みから前記システムを保護するという1以上のオペレーションを実行することを含む、
ことを特徴とする請求項1に記載の方法。
【請求項16】
システムにおける有線又は無線ネットワーク・コネクションのステータス変化に基づきアクションを実行する装置であって、
前記ネットワーク・コネクションに結合するネットワーキング・サブシステムと、
前記ネットワーキング・サブシステムに結合する処理サブシステムと、
前記処理サブシステムに結合するサービス・サブシステムとを備え、
前記ネットワーキング・サブシステムは、前記ネットワーク・コネクションのステータス変化を検出すると、前記変化が生じたことを前記処理サブシステムに通知するため、前記処理サブシステムに信号を送信するよう構成され、
前記処理サブシステムは、前記ネットワーキング・サブシステムから前記信号を受信すると、前記システムに関する状態情報を前記サービス・サブシステムに要求するよう構成され、
前記処理サブシステムは、要求した前記状態情報を前記サービス・サブシステムから受信すると、前記状態情報を用いて1以上のアクションを実行するよう構成されている、
ことを特徴とする装置。
【請求項17】
前記ネットワーキング・サブシステムは、前記ネットワーク・コネクションのステータス変化を検出するとき、
前記ネットワーク・コネクションの確立・損失・終了、又は、
前記ネットワーク・コネクションの信号強度若しくはバンド幅における変化、
の少なくとも1つを検出するよう構成されている、請求項16に記載の装置。
【請求項18】
前記処理サブシステムは、前記システムに関する状態情報を前記サービス・サブシステムに要求するとき、前記システムの過去・現在・予測される将来の状態の少なくとも1つについての情報をリクエストするよう構成されている、請求項16に記載の装置。
【請求項19】
前記サービス・サブシステムに結合する1以上のハードウェア若しくはソフトウェアモニタを更に含み、前記1以上のハードウェア若しくはソフトウェアモニタは前記システムの内部状態をモニタリングするよう構成され、
前記処理サブシステムは、状態情報を要求するとき、前記1以上のハードウェア若しくはソフトウェアモニタから取得した内部状態をリクエストするよう構成されている、ことを特徴とする請求項18に記載の装置。
【請求項20】
前記サービス・サブシステムに結合する1以上のセンサを更に含み、
前記1以上のセンサは、
前記システムの地理的又は物理的位置、
前記システムの直線速度若しくは直線加速度、又は角速度若しくは角加速度、
前記システムの方向性ヘッダー、
前記システムの外部温度、
前記システムのチルト角若しくは回転角、
前記システムの外部気圧、
前記システムの外部光の強度、
前記システムの外部音のレベル、又は
時間、
の少なくとも1つを含む外部状態をモニタリングするよう構成され、
前記処理サブシステムは、状態情報を要求するとき、前記1以上のセンサから得した外部状態をリクエストするよう構成されている、ことを特徴とする請求項18に記載の装置。
【請求項21】
前記状態情報を用いて1以上のオペレーションを実行するとき、前記処理サブシステムは、
前記状態情報を用いて1以上のオペレーションを実行すること、
1以上の他のサブシステムが、前記状態情報を用いて1以上のオペレーションを実行するようにさせ、
1以上の他のシステムが、前記状態情報を用いて1以上のオペレーションを実行するようにさせる、
の少なくとも1つを実行するよう構成されている、請求項16に記載の装置。
【請求項22】
前記処理サブシステムは、前記ネットワーキング・サブシステムから前記信号を受信してから当該システムの状態を要求する前まで所定時間を待つように構成されている、請求項16に記載の装置。
【請求項23】
前記処理サブシステムは、前記状態情報を受信してから少なくとも1つのアクションを実行する前まで所定時間を待つように構成されている、請求項16に記載の装置。
【請求項24】
有線又は無線ネットワーク・コネクションのステータス変化に基づきアクションを実行する電子デバイスであって、
前記ネットワーク・コネクションに結合するネットワーキング・サブシステムと、
前記ネットワーキング・サブシステムに結合する処理サブシステムと、
前記処理サブシステムに結合するサービス・サブシステムと、
前記処理サブシステムがデータを記憶するために用いられる、前記処理サブシステムに結合するメモリ・サブシステムとを備え、
前記ネットワーキング・サブシステムが、前記ネットワーク・コネクションのステータス変化を検出すると、前記変化が生じたことを前記処理サブシステムに通知するため、前記処理サブシステムに信号を送信するよう構成され、
前記処理サブシステムは、前記ネットワーキング・サブシステムから前記信号を受信すると、前記システムに関する状態情報を前記サービス・サブシステムに要求するよう構成され、
前記処理サブシステムは、要求した前記状態情報を前記サービス・サブシステムから受信すると、前記状態情報を用いて1以上のアクションを実行するよう構成されている、
ことを特徴とする電子デバイス。
【請求項25】
前記ネットワーキング・サブシステムは、前記ネットワーク・コネクションのステータス変化を検出するとき、
前記ネットワーク・コネクションの確立・損失・終了、又は、
前記ネットワーク・コネクションの信号強度若しくはバンド幅における変化、
の少なくとも1つを検出するよう構成されている、請求項24に記載の電子デバイス。
【請求項26】
前記処理サブシステムは、前記システムに関する状態情報を前記サービス・サブシステムに要求するとき、前記システムの過去・現在・予測される将来の状態の少なくとも1つについての情報をリクエストするよう構成されている、請求項24に記載の電子デバイス。
【請求項27】
前記サービス・サブシステムに結合する1以上のハードウェア若しくはソフトウェアモニタを更に含み、前記1以上のハードウェア若しくはソフトウェアモニタは前記システムの内部状態をモニタリングするよう構成され、
前記処理サブシステムは、状態情報を要求するとき、前記1以上のハードウェア若しくはソフトウェアモニタから取得した内部状態をリクエストするよう構成されている、ことを特徴とする請求項26に記載の電子デバイス。
【請求項28】
前記サービス・サブシステムに結合する1以上のセンサを更に含み、
前記1以上のセンサは、
前記システムの地理的又は物理的位置、
前記システムの直線速度若しくは直線加速度、又は角速度若しくは角加速度、
前記システムの方向性ヘッダー、
前記システムの外部温度、
前記システムのチルト角若しくは回転角、
前記システムの外部気圧、
前記システムの外部光の強度、
前記システムの外部音のレベル、又は
時間、
の少なくとも1つを含む外部状態をモニタリングするよう構成され、
前記処理サブシステムは、状態情報を要求するとき、前記1以上のセンサから得した外部状態をリクエストするよう構成されている、ことを特徴とする請求項26に記載の電子デバイス。
【請求項29】
前記処理サブシステムは、揮発性メモリ又は不揮発性メモリの少なくとも1つに前記情報を記憶するよう構成されている、請求項24に記載の電子デバイス。
【請求項30】
前記処理サブシステムは、前記状態情報を用いてアクションを実行するとき、
前記状態情報を用いて1以上のオペレーションを実行すること、
1以上の他のサブシステムが前記状態情報を用いて1以上のオペレーションを実行するようにすること、
1以上の他のシステムが、前記状態情報を用いて1以上のオペレーションを実行するようにさせる、
の少なくとも1つを実行するよう構成されている、請求項24に記載の電子デバイス。
【請求項31】
前記処理サブシステムは、前記ネットワーキング・サブシステムから前記信号を受信してから当該システムの状態を要求する前まで所定時間を待つように構成されている、請求項24に記載の電子デバイス。
【請求項32】
前記処理サブシステムは、前記状態情報を受信してから少なくとも1つのアクションを実行する前まで所定時間を待つように構成されている、請求項24に記載の電子デバイス。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate


【公表番号】特表2013−509038(P2013−509038A)
【公表日】平成25年3月7日(2013.3.7)
【国際特許分類】
【出願番号】特願2012−534392(P2012−534392)
【出願日】平成22年10月15日(2010.10.15)
【国際出願番号】PCT/US2010/052841
【国際公開番号】WO2011/047260
【国際公開日】平成23年4月21日(2011.4.21)
【出願人】(503260918)アップル インコーポレイテッド (568)
【Fターム(参考)】