JP2016503539A - 論理センサー・プラットフォーム用の論理センサー・サーバー - Google Patents

論理センサー・プラットフォーム用の論理センサー・サーバー Download PDF

Info

Publication number
JP2016503539A
JP2016503539A JP2015541896A JP2015541896A JP2016503539A JP 2016503539 A JP2016503539 A JP 2016503539A JP 2015541896 A JP2015541896 A JP 2015541896A JP 2015541896 A JP2015541896 A JP 2015541896A JP 2016503539 A JP2016503539 A JP 2016503539A
Authority
JP
Japan
Prior art keywords
lss
event
events
subscribers
announcement
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
JP2015541896A
Other languages
English (en)
Other versions
JP2016503539A5 (ja
Inventor
ホールマン,キンバリー・デニス・オーヤング
タン,デスニー
スナイダー,アイラ
マーバーグ,マッツ
ホール,マイケル
ケーニグ,マイケル
ウィルソン,アンドリュー
シラキアン,グリガー
ダイオール,マシュー
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Microsoft Corp
Original Assignee
Microsoft Corp
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Microsoft Corp filed Critical Microsoft Corp
Publication of JP2016503539A publication Critical patent/JP2016503539A/ja
Publication of JP2016503539A5 publication Critical patent/JP2016503539A5/ja
Pending legal-status Critical Current

Links

Images

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2807Exchanging configuration information on appliance services in a home automation network
    • H04L12/2809Exchanging configuration information on appliance services in a home automation network indicating that an appliance service is present in a home automation network
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L12/00Data switching networks
    • H04L12/28Data switching networks characterised by path configuration, e.g. LAN [Local Area Networks] or WAN [Wide Area Networks]
    • H04L12/2803Home automation networks
    • H04L12/2823Reporting information sensed by appliance or service execution status of appliance services in a home automation network
    • H04L12/2827Reporting to a device within the home network; wherein the reception of the information reported automatically triggers the execution of a home appliance functionality
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B15/00Systems controlled by a computer
    • G05B15/02Systems controlled by a computer electric
    • GPHYSICS
    • G05CONTROLLING; REGULATING
    • G05BCONTROL OR REGULATING SYSTEMS IN GENERAL; FUNCTIONAL ELEMENTS OF SUCH SYSTEMS; MONITORING OR TESTING ARRANGEMENTS FOR SUCH SYSTEMS OR ELEMENTS
    • G05B2219/00Program-control systems
    • G05B2219/20Pc systems
    • G05B2219/26Pc applications
    • G05B2219/2642Domotique, domestic, home control, automation, smart house

Landscapes

  • Engineering & Computer Science (AREA)
  • Automation & Control Theory (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Telephonic Communication Services (AREA)
  • General Engineering & Computer Science (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)

Abstract

「論理センサー・サーバー」即ち「LSS」は、種々の入力ソースによって発表された信号またはイベントを、他のサブスクライブしたセンサー、デバイス、またはシステムによって消費または使用することができる信号または高次イベントに変換し、モルフィングし、または転送することによって、関係あるまたは無関係なセンサー、デバイス、または他のシステム間でスマート・ハブとして動作する。更に具体的には、LSSは、単独でまたは論理センサー・プラットフォーム(LSP)との組み合わせで、インテリジェントなイベント・ドリブン挙動が比較的単純な入力ソースの集合体から出現することを可能にするやり方で、異なる入力ソースから受けたメッセージを著作し、変形し、1つ以上のサブスクライバーに利用可能にする種々の技法を可能にするように機能する。自動構成またはユーザー入力の任意の組み合わせが、1つ以上の発表に対して特定のサブスクライバーによって受けられるように、変形された入力のフォーマットを定めるために使用される。変形イベントを受けたサブスクライバーは、それら自体のアクションを、これらのイベントに基づいて制御する。【選択図】図2

Description

[0001] 技術は、人にとっては些細に思われるかもしれない状況に対して感応しないことが多い。例えば、タイマーによって制御される事務所の照明は、フロアーに未だ人がいても、夕方には照明を切ることがあり得る。同様に、動き検出センサーに基づくシステムは、人々が彼らの机のところで静止していると、照明を切ることもあり得る。生憎、複数の独立したタイプのセンサーを設置し、これらの入力を組み合わせることは、システム全体を複雑化し、そのコストを増大させる虞がある。
[0002] 人間と対話処理する技術を開発するときの課題の1つは、複雑な環境に対してその技術をインテリジェントに感応させることである。一般に、インテリジェントな感度は、通例、カメラ、温度計、動きセンサー等のような、複数のセンサーによって収集される実世界からの豊富な情報の総合的分析に依存する。この分析は、通例、複雑なタスクとなる。何故なら、単純な判断(例えば、建物の特定のフロアーに人がいる間照明を点けたままにする)であっても複数の異なるタイプのセンサーからの入力(更には、カレンダーまたは時計というような論理コンテキスト)を必要とする場合もあるからである。
[0003] 多くの単純なシステムは、基本的なセンサーを利用し、これらのセンサーによって供給される入力に対して作用して、何らかの種類のプログラミング前アクションを開始する。例えば、典型的なサーモスタットは、密に結合された温度センサーからの温度読み取り値を受信し、この読み取り値に基づいて、加熱または冷却システムを起動させるか、またそうでなければ調節させる。生憎、サーモスタットにおける温度センサーは、一般にサーモスタット専用であるか、サーモスタットと一体であるので、このセンサーからの温度情報は、他の使用には一般に利用できない。その結果、暑く日照のある日に窓遮蔽を閉じる自動化システムのような、温度も利用するかもしれない他のシステムは、通例、制御目的のためにそれら自体の専用センサーまたは手動スイッチを使用することになる。
[0004] 同様に、ソフトウェアに基づくセンサー入力処理の場合、多くのこのようなシステムは、1つ以上の特定のセンサーと、センサー・データーを処理し次いで何らかの対応するアクションを開始する1つ以上のソフトウェア・ベース・システムとの間における密結合に基づいて動作する。例えば、典型的な家庭用セキュリティ・システムは、アラーム・システムが装備状態(armed state)にあるとき、1つ以上の設置された動きセンサーのトリガ(triggering)に応答して、アラームをトリガーする(そして、恐らくはセキュリティ・サービスおよび/または911への自動コールもトリガーする)。これらのタイプの解決手段は、多くの場合専用センサーのネットワークに依存する。このようなネットワークは、多くの場合、既知のタイプの互換性がある追加のセンサー(例えば、互換性のあるドア・コンタクト・センサー、セキュリティ・カメラ、マイクロ波または赤外線動きセンサー等)を追加することによって拡張することができる。
[0005] 生憎、このようなセンサー・ネットワークの拡張は、大抵の場合、互換性のあるセンサーまたはデバイスの追加に制限される。何故なら、例えば、家庭用セキュリティ・システムのような特別の目的のために作られたシステムは、一般に、他のセンサーまたはデバイスによって供給することができる論理情報の代替ソースに対処(accommodate)できないからである。その結果、複数の異なるシステムが同じ総合エリア内で動作している場合、このようなシステムは、他の場合では重複になる複数のセンサーを使用し、それらの対応するシステムに特定のフォーマットで入力を供給する。例えば、動きアクティブ化照明スイッチに結合された1つの動きセンサーを、同じ部屋において、無関係なローカル・セキュリティ・システムに専用な動きセンサーとして使用することもできる。しかしながら、照明スイッチもセキュリティ・システムも、他のシステムと関連付けられた動きセンサーを利用しない。
[0006] この摘要は、詳細な説明において以下で更に説明する概念から選択したものを、簡略化した形態で紹介するために設けられている。この摘要は、特許請求する主題の主要な特徴や必須の特徴を特定することを意図するのではなく、特許請求する主題の範囲を判断するときに補助として用いられることを意図するのでもない。更に、先行技術のある種の欠点が本明細書において特記されるまたは説明される場合があるが、特許請求する主題は、これら先行技術の欠点の一部または全てを解決するまたは取り組むことができる実現例に限定されることを意図するのではない。
[0007] 一般に、「論理センサー・サーバー」(LSS)は、本明細書において説明するように、多種多様な入力ソースによって発表される(publish)信号またはイベントを変換(translate)、モーフィング(morph)、または転送して、他のセンサー、デバイス、またはシステムによって消費または使用することができる信号またはイベントにすることによって、関係のないセンサーまたは他のデバイス間においてスマート・ハブとして機能する。言い換えると、LSSは種々のソースから入力を受信し、これらの入力を種々のフォーマットに変換または変形(transform)し、次いで変換または変形した入力、あるいはこれらの入力に対応するイベントを、1つ以上の他の無関係なセンサー、エージェント、デバイス、システム等に供給する。これは、無関係なセンサー、エージェント、デバイス、システム等が、他の入力ソースによって供給された入力を利用することを可能にする。
[0008] LSSのアーキテクチャーに関して、一般的な考えは、種々の関係ある入力ソースまたは無関係な入力ソースがそれらの入力またはイベントをLSSに発表するということである。例えば、このような入力は、検出された温度、動き等のようなセンサー読み取り値、「エアコンのスイッチを入れる」、「テレビジョンのスイッチを入れる」、「リモコン・デバイス上で「オン」ボタンを押す等のような「イベント」、「エレベーター・ボタン押下」、「照明スイッチ・オフ」等のようなインフラストラクチャー・イベントを含むが、これらに限定されるのではない。次いで、LSSはこの入力を、サブスクライブしたデバイス(subscribing devices)、エージェント等と互換性がある種々のフォーマットに変換し、この変換した入力をサブスクライバー(subscriber)に供給する。次いで、この変換入力を受信したサブスクライバーは、それ以上の入力やLSSからのもっと高いレベルの制御を必要とすることなく、この入力に対して作用することができる。
[0009] この概念の単純な例は、LSSが、コーヒー・メーカーから、コーヒーを入れるためにスイッチを入れられたことを示す入力を受信することである(即ち、LSSは、コーヒー・メーカーから、その「オン」ボタンが押されたことを示す発表を受信する)。次いで、LSSはこの発表を、他のデバイス、エージェント、またはシステムによる使用のために変形する。例えば、オン・ボタンが押されたの単純な変形は、「人存在」イベント等を含むが、これに限定されるのではない。次いで、「人存在」イベントの供給(他のデバイスまたはシステムによって使用可能なフォーマットで)は、例えば、人がいるときには照明を点ける自動照明スイッチのような、種々の目的に使用することができる。この場合、自動照明スイッチは、人存在タイプのイベントをLSSから受信する。次いで、照明スイッチは、応答して、照明を巡回させることができる。
[0010] 尚、以上の例における照明スイッチは、複雑な処理が可能である必要はないことを注記しておく。例えば、LSSは、「オン」または「オフ」を照明スイッチに指示するために、単に論理1または0(あるいは何らかの他のアナログまたはディジタル信号または指示)を照明スイッチに供給するだけとすることができる。この場合、照明スイッチは、任意の1つ以上の入力ソースから発した、人がいることを示すイベントを受信するためには、単にLSSにサブスクライブすればよい。このようなイベントは、照明スイッチに有用などんなフォーマットでも、LSSによって照明スイッチに供給される。
[0011] 更に、LSSは、既存のセンサーまたは入力デバイスの出力または発表を処理して、新たな「論理センサー」の作成を可能にし、これによって種々のセンサーまたは入力ソースの出力または発表には通常関連がないアクションの開始も可能にするメカニズムを提供する。例えば、ユーザーの自宅には動きセンサーがない、または既存の動きセンサーが何らかの理由のため(例えば、このセンサーのバッテリーが切れている)オフラインになっていると仮定する。応答して、LSSは、種々の入力ソースからの広範囲の発表の内1つ以上に基づいて、論理動きセンサーを「同期する」ことができる。例えば、TVリモコンの使用を示す発表、または水道計によって流量から推論される手洗いの水洗を示す発表のいずれかまたは双方を、「人在宅」タイプの出力イベントに変換することができ、次いでこのイベントは、更に他のアクションのために1つ以上のサブスクライバーに供給される。
[0012] 以上の摘要を検討すると、本明細書において説明するLSSは、インテリジェントなイベント・ドリブン行動が比較的単純な無関係の入力ソースの集合体から出現することを可能にする態様で、異なる入力ソースから受信されたメッセージを著作し(author)、変形し、1つ以上のサブスクライバーに利用可能にする種々の技法を提供することが明らかである。今説明した利点に加えて、LSSの他の利点は、以下に続く詳細な説明を添付図面と併せて検討することにより明白になろう。
[0013] 特許請求する主題の具体的な特徴、形態、および利点は、以下の説明、添付する特許請求の範囲、および添付図面に関して、一層良く理解されよう。
図1は、本明細書において説明するように、任意の入力ソースが入力またはイベントを「論理センサー・サーバー」(LSS)に発表し、次いでLSSがこれらの発表を、変換された情報を受信するためにサブスクライブした他のデバイスまたはシステムによって消費することができるフォーマットまたは他のイベントに変換する、全体的なアーキテクチャー図を示す。 図2は、本明細書において説明するように、LSSの種々の実施形態を実現するためのプログラム・モジュールを示す流れ図の一例を示す。 図3は、本明細書において説明するように、LSSの種々の実施形態と共に使用するためのユーザー・インターフェースの一例を示す。 図4は、本明細書において説明するように、LSSの種々の実施形態を実現するための方法例を示す、全体的なシステム流れ図を示す。 図5は、本明細書において説明するように、LSSの種々の実施形態を実現するときに使用するための、簡略化した計算およびI/O処理能力を有する、簡略化した汎用計算デバイスを示す全体的なシステム図である。
[0019] 特許請求する主題の実施形態についての以下の説明では、添付図面を参照する。添付図面は、本明細書の一部をなし、特許請求する主題を実施することができる具体的な実施形態を例示として示す。尚、他の実施形態を利用してもよく、ここで特許請求する主題の範囲から逸脱することなく、構造的な変化が行われてもよいことは理解されてしかるべきである。
[0020] 1.0 序言
[0021] 説明の目的上、以下の説明における「入力ソース」または「パブリッシャー」(publisher)という用語は、物理的現象または量を検出または測定し、これらを都合のよび電気信号、無線周波数信号、オーディオ信号、または光信号に変換するデバイスとして、具体的に定めることとする。次いで、これらの信号は、入力またはイベントとして、「論理センサー・サーバー」(LSS)に発表される。入力ソースの例には、多種多様なデバイス、センサー、音声入力メカニズム、ジェスチャーまたはタッチ・ベース入力メカニズム、ソフトウェア・エージェント、ソフトウェア・イベント、インフラストラクチャー・イベント等が含まれるがこれらに限定されるのではない。加えて、「論理センサー」とは、センサーまたは他の入力ソースを具体化する「ソフトウェア・エージェント」と定めることとする。尚、LSSによって実行される発表の変換(translation)、変形(transform)、および/または伝搬アクションは、LSSの「イベント変換サービス」によって行われることを注記しておく。更に、以下の説明における用語「サブスクライバー」は、1つ以上の入力ソースの発表から変換または変形された、LSSからの上位イベントを受信する、多種多様のデバイス、センサー、ソフトウェア・エージェント、他のLSS等を指すと具体的に定めることとする。
[0022] 一般に、LSSは、多種多様な入力ソースによって発表された信号またはイベントを他のセンサー、デバイス、またはシステムによって消費または使用することができる信号または上位イベントに変換し、モルフィングし、または転送することによって、関係あるまたは無関係なセンサー、デバイス、または他のシステム間におけるスマート・ハブの一形態として機能する。更に具体的には、LSSは、インテリジェントなイベント・ドリブン行動が比較的単純な入力ソースの集合体から出現することを可能にする態様で、異なる入力ソースから受信されたメッセージを著作し(author)、変形し、1つ以上のサブスクライバーに利用可能にする種々の技法を可能にするために、単独でまたは論理センサー・プラットフォーム(LSP)と組み合わせて動作する。
[0023] 有利なこととして、これらの処理能力は、上位イベントを発表しこれらにサブスクライブするためのハードウェアに依存しないプラットフォームを提供し、LSSが、既存のシステムを変更する必要なく、このようなシステムにインテリジェントな感度(sensitivity)の層を追加することによって、既存のシステムが経時的に発展するのを助けることを可能にする。更に有利なこととして、これは、LSS自体が、サブスクライブしたデバイス、エージェント等の内任意のものを制御するために必要とされる複雑さを不要とすることを意味する。何故なら、これは、単に、これらのサブスクライバーがそれら自体の制御メカニズムを使用してこれらの変形イベントに対して作用することを可能にするフォーマットで、変形イベントを提供するだけだからである。
[0024] 言い換えると、LLSは、パブリッシャーやサブスクライバーがいずれも実際に制御するためのロジックを内蔵する必要なく、パブリッシャーおよびサブスクライバーに関して、イベントの変形および伝搬を決定するロジックを内蔵する。例えば、種々の実施形態において、LSSは、「動き検出」信号またはイベントが動き検出センサーからの発表として受信されたときに、「フロアー上で人を検出した」および「建物内人検出」というような上位イベントを生成するまたはトリガーするように構成される。フロアーおよび建物照明制御システムのような種々のサブスクライバーは、「フロアー上人検出」イベントおよび「建物内人検出」イベントにも登録することができる。これらの登録されたシステムには、次に、パブリッシャー(即ち、動き検出センサー)によってLSSに供給される「動き検出」信号またはイベントに応答して、LSSによって生成された「フロアー上で人を検出した」イベントおよび「建物内人検出」イベントが通知される。応答して、フロアーおよび建物照明制御システムは、所望の応答を作動させる(actuate)ことができる(例えば、人が存在するので、照明を点けることによって、自動的にこの出力イベントに応答する)。
[0025] また、複数のサブスクライバーが全て同じ変形入力を受信することができるので(個々の各サブスクライバーにどのフォーマットが使用可能かには関係なく)、これらのデバイス、システム、またはエージェントが、任意の所望のやり方で、個々に変換入力に応答することができることを注記しておく。更に、ソフトウェア・エージェントまたは他のシステムが、1つ以上の関係ある入力ソースまたは無関係な入力ソースから受信した発表に応答して、LSSによって供給された変形入力またはイベントに、複数のデバイスに応答させることもできる。
[0026] 例えば、LSSが、人がテレビジョンをオンにして(例えば、TVリモコンの電源ボタンを押す、テレビジョンが電力を引き込み始め電源オン状態を示す等)、入力が変形されソフトウェア・エージェントまたは他のシステムに上位イベントとして、例えば、「人がテレビジョンを視聴する」タイプ・イベントとして供給されると仮定する。応答して、ソフトウェア・エージェントまたは他のシステムは、次に、例えば、照明を暗くする、ブラインドを閉じる、ポップコーン・ポッパーを起動する、音声メールにフォン・コールを送るために、無関係な自動システムを同時に制御するというように、コマンドを開始するまたは作動させることによって応答する。また、これらの無関係な自動システムの各々を個別に「人テレビジョン視聴」タイプ・イベントに登録することができ、LSSからのこのようなイベントの受信に応答して、それら自体のアクションを開始できることも注記しておく。
[0027] 更に、LSSは、多種多様の入力ソースによって供給される信号またはイベントを、他のセンサー、デバイス、またはシステムによって消費または使用することができる信号または上位イベントに変換し、モルフィングし、または転送するので、LSSは、新たな制御システムが、それら自体のセンサーを有してもまたは有さなくても、サブスクライバーとして登録することができる中央位置になる。例えば、アラーム制御システムが、それ自体の動きセンサーを全く有さなくても、広範囲の入力ソースの内任意のものから得られる動きイベントを示す発表を受信するために、LSSに単に登録するだけで済ませることができる。これは、アラーム制御システムが、「人在宅」タイプ・イベントに変形された「TVリモコンの押下」発表のような入力に基づいて、アラームをトリガーすることを可能にする。
[0028] 言い換えると、広範囲の用途の内任意のものに対する新たな制御システムは、既存のセンサー・インフラストラクチャー(物理的および/または論理的)およびLSSによって生成される対応出力イベントを利用しつつ、LSSにサブスクライブすることができる。その結果、LSSにサブスクライブすることによって、多くのタイプの制御システムを設置するためのコストおよび手間は、特定的にこのような制御システムに専用とされる従来の検知デバイスを抑制する、または排除さえすることによって、劇的に低減することができる。したがって、事実上あらゆる所望の目的のための新たな制御システムを設置し、LSSから利用可能な出力イベントの内1つ以上に単にサブスクライブすることによって制御することができる。
[0029] 以上で説明した概念を全体的に図1に示す。図1は、全体的なアーキテクチャー図を示し、任意の入力ソースが入力またはイベントをLSSに発表し、一方LSSはこれらの発表をフォーマットまたは他のイベントに変換し、次いで変換された情報を受信するためにサブスクライブした他のデバイスまたはシステムによって消費される。
[0030] 具体的に、図1は、LSP100(2.8章における説明を参照のこと)内部において一コンポーネントとして任意に動作するLSSを示す。LSSは、任意の数の任意のセンサー(例えば、120、130)、デバイス(例えば、140)、ハードウェアまたはソフトウェア・エージェント(例えば、150、170)、インフラストラクチャー・イベント180、ソフトウェア・イベント190、他のLSS150、他のLSP115等からの発表を受信する。
[0031] 応答して、LSS100は、受信した発表を、例えば、デバイス(例えば、140)、エージェント(例えば、150、160)、他のLSS105、他のLSP115等のような種々のサブスクライバーによって使用可能な上位イベントまたはフォーマットに変形する。尚、デバイスおよびエージェントの一部(例えば、「デバイス1」140および「エージェント1」150)は、パブリッシャーおよびサブスクライバー双方として動作することを注記しておく。更に、エージェント(例えば、「エージェント2」160)あるいはLSSに登録されている他のデバイスまたはシステムは、他のエージェント(例えば、エージェントm」170)あるいは他のデバイスまたはシステムへのサブスクライブによって、受信した情報を再発表することができる。
[0032] 更に、種々のデバイス、エージェント、システム等は、情報を直接エージェント、デバイス、または他のシステムに伝達する。図1に示す例は、「デバイスn」によってLSS100に伝達された情報を発表するための仲介物として動作する「エージェントm」170を含む。加えて、図1に示すように、種々のセンサー(例えば、センサー120および130)が情報を他のデバイス、エージェント等(例えば、「デバイス1」140および「エージェント2」160)に伝達することもできる。
[0033] 最後に、個々のサブスクライブしたデバイス(例えば、「デバイス1」140)、エージェント(例えば、エージェント150および160)、他のLSS105、他のLSP115等は、これらのデバイス、エージェント等のサブスクライブに応答してLSS100から受信した変換入力または上位イベントに応答して、種々のアクションを作動させるまたは開始する。
[0034] 1.1システムの全体像
[0035] 先に注記したように、LSSは、インテリジェントなイベント・ドリブン行動が比較的単純な関係ある入力ソースまたは無関係な入力ソースの集合体から出現することを可能にする態様で、異なる入力ソースから受信されたメッセージを著作し(author)、変形し、1つ以上のサブスクライバーに利用可能にする種々の技法を可能にする種々の技法を提供する。以上で纏めたプロセスを、図2の全体的システム図によって示す。具体的には、図2のシステム図は、本明細書において説明するLSSの種々の実施形態を実現するためのプログラム・モジュール間における関係を示す。更に、図2のシステム図はLSSの種々の実施形態の上位図を示すが、図2は、本文書全体にわたって説明するLSSのあらゆる可能な実施形態の網羅的な図や完全な図を示すことを意図するのではない。
[0036] 加えて、図2において点線によって表されてもよい任意のボックス、および破線またはボックス間の相互接続は、本明細書において説明するLSSの代替実施形態を表すこと、そして以下で説明するこれらの代替実施形態の内任意のものまたは全ては、本文書全体にわたって説明される他の代替実施形態と組み合わせて使用されてもよいことは、認められてしかるべきである。
[0037] 一般に、図2に示すように、LSSによってイネーブルされるプロセスは、発表受信モジュール200を使用して、デバイス205、センサー210、エージェント215、ソフトウェア・イベント220、インフラストラクチャー・イベント225、他のLSSまたはLSP(230)等を含む「入力ソース」の任意の組み合わせから入力および/またはイベントの発表を受信することによって、動作を開始する。加えて、発表受信モジュール200は、任意に、種々のソースから匿名の発表を受信するためのオープン・チャネルまたは他の入力手段も含む。尚、2.5章において説明するように、匿名ソースからの発表を扱うときには、種々のセキュリティ予防措置を実施するとよいことを注記しておく。
[0038] デバイス205、センサー210、エージェント215、ソフトウェア・イベント220、インフラストラクチャー・イベント205、他のLSSまたはLSP(230)等を含む「入力ソース」の登録のために、任意の登録モジュール235が使用される。一般に、登録モジュール235は、入力ソースの発表の手動および/または自動登録、ならびに変換イベントを受信するためのサブスクライバー・デバイス265、サブスクライバーサービス270、サブスクライバー・エージェント275、サブスクライバーLSSまたはLSP280等を含むサブスクライバーの手動および/または自動登録を実行する。発表受信モジュール200、登録モジュール235、および変換モジュール245と組み合わせて、公開、変換、サブスクライブを選択またはカスタム化し、種々の発表またはサブスクライブについてのセキュリティまたはアクセス・レベルを設定し、イベントまたは変換についての信頼度レベルを設定または調節する等のために、任意のユーザー・インターフェース・モジュール240が使用される。
[0039] 変換モジュール245は、発表を、1つ以上のサブスクライバー(例えば、サブスクライバー・デバイス265、サブスクライバーサービス270、サブスクライバー・エージェント275、サブスクライバーLSSまたはLSP280等)による消費のためにフォーマットされた「出力イベント」250または情報に変換するために使用される。更に、種々の実施形態では、信頼度モジュールが、信号信頼度レベルを提供するセンサーまたはイベントからの発表に基づいて、確率に基づく変換に対する閾値または信頼度レベルを設定または調節するために使用される。尚、異なる信頼度レベルを有する複数の発表を組み合わせて、信頼度レベルを有する出力を生成またはトリガーしてもよいことを注記しておく。このようなレベルは、次に、サブスクライバーによって特定のアクションを作動させるまたは開始するか否か決定するときに使用することができる。
[0040] サブスクライブされた出力イベント250または他の情報(例えば、特定の温度読み取り値、ビデオ・フィード、オーディオ・フィード等のような転送された発表)が受信されたときはいつでも、サブスクライブ・サービス・モジュール(subscription servicing module) 260は、イベントまたは情報を任意のサブスクライバー(例えば、サブスクライバー・デバイス265、サブスクライバーサービス270、サブスクライバー・エージェント275、サブスクライバーLSSまたはLSP280等)に供給する。これらのイベントを解釈し、アクションを起こし、任意に新たなイベントを再発表するのは、個々のサブスクライバー次第であり、新たなイベントは、他のサブスクライバーによって取り上げられ、処理し、および/または動作し(act upon)、および/または新たな上位イベントとして再発表する等を行うことができる。
[0041] 2.0 論理センサー・サーバーの動作の詳細
[0042] 以上で説明したプログラム・モジュールは、LSSの種々の実施形態を実現するために採用される。以上で概要を説明したように、LSSは、インテリジェントなイベント・ドリブン行動が比較的単純な無関係の入力ソースの集合体から出現することを可能にする態様で、異なる入力ソースから受信されたメッセージを著作し(author)、変形し、1つ以上のサブスクライバーに利用可能にする種々の技法を提供する。以下の章では、LSSの種々の実施形態の動作について詳細な説明を行い、更に図1および図2に関して1章で説明したプログラム・モジュールを実現するための方法例について詳細な説明を行う。具体的には、以下の章は、LSSの種々の実施形態の例および動作の詳細を示し、以下を含む。
・LSSの動作の全体像
・入力ソースおよびサブスクライバー
・サブスクライバーのための入力ソースからの発表の変換
・任意のイベント信頼度レベル
・セキュリティの考慮事項
・データーを共有し増強するためのLSSのアドホック・グループ
・1つ以上のダウンロード可能なアプリを得るLSS動作(performance)の拡張
・論理センサー・プラットフォーム(LSP)内におけるコンポーネントとしてのLSSの実現
[0043] 2.1 動作の全体像
[0044] 物理センサーの生の測定値からイベント・ドリブン行動を導く解決手段を開発することは、通例、これらの生の測定値を最初に処理し、フィルタリングして最適なアクションを決定することを意味する。このような処理は、大抵の場合、アプリケーションに特定であり、カスタム・アルゴリズム(所定の1組のセンサーによる作業に限定される)は、一般に、他の(otherwise)無関係なアプリケーション間では共有されない。
[0045] 例えば、典型的な家庭用サーモスタットは、温度を調べ、種々のユーザーの好みおよび内部カレンダー/時計設定値を考慮に入れて、気候制御システムをオンまたはオフに切り替える。しかしながら、温度センサーおよび内部カレンダー/時計設定値のみに頼ると、気候制御システムがオフのままになっていること、または何らかの代替設定値に留まることを確保するのに有用であるかもしれない関連情報の代替ソースが利用されない。例えば、家庭用セキュリティ・システムのような無関係なシステムが、誰かが自宅にいるか否か「知っている」かもしれない。この情報は、サーモスタットまたは気候制御システムに提供されれば、人が自宅にいる時間まで気候制御システムの使用を制限することによって、より多くのエネルギを節約することができる潜在的可能性がある。
[0046] 有利なこととして、LSSは、サーモスタット、気候制御システム、および/または家庭用セキュリティ・システムがそれらの読み取り値、およびこれらの読み取り値に基づく任意の他の「アクション可能なイベント」(たとえば、サーモスタットの「寒すぎ」または「暑すぎ」、セキュリティ・システムの「宅内無人」)をLSSに発表することを可能にすることによって、このような問題に取り組む。サーモスタット、気候制御システム、および/または自宅用セキュリティ・システム、あるいは他のシステムは、次いで、LSSからのもっと高次のイベントに登録することができ、これらが受信する任意のイベントに基づいてアクションを実行することができる(例えば、気候制御システムは、サブスクライブに応答して、「宅内無人」タイプ・イベントが受信されている場合、サーモスタットへの応答を無効にする)。興味深いのは、更に変換されたイベントを引き起こす(spawn)またはトリガーするために、任意の特定の変換イベント(即ち、出力イベント)を使用できることであり、これによってLSSは複雑な制御挙動を可能にするために、イベントをサブスクライバーに提示することができる。
[0047] 更に、人間の存在または温度を検出する新たな能力を有する新たなデバイスが、LSSに対するパブリッシャーのリストに追加されるとき、サーモスタットや気候制御システムに対する変更は不要である。例えば、ネット接続TV上のTVリモコンをユーザーが走査すると、TVが実際に使用されていたことの指示が、TVによってLSSに発表される。応答して、LSSは、この使用指示を、「人在宅」のようなイベントに変形し、次いでこのイベントが、このタイプのイベントに関心がある任意のサブスクライバー(例えば、サーモスタット、気候制御システム、セキュリティ・システム等)に供給される。尚、「人在宅」は、この特定のイベントにサブスクライブする任意の異なるサブスクライバー毎に、異なるフォーマットにしてもよいことを注記しておく。
[0048] 有利なこととして、このような処理能力は、LSSが単純な技術を「スマート」にすることを可能にし、これによって効果的な人間−技術対話処理体験が可能になる。一般に、LSSは、他のシステムによる使用のために複雑なイベント決定を行うときに既存のインフラストラクチャーを使用して補助することを可能にする。例えば、コーヒー・マシンのボタン、陸線電話の使用、エレベーター・ボタン等を評価することによって誰かが建物のフロアーにいるか否か判断する。しかしながら、これらのソース全てを照明制御システムのような何かに配線することを必要とする解決手段は、法外なコストがかかるであろう。代わりに、LSSは、これらのデバイスが発表し中央当局(centralized authority)に登録することを可能にするメカニズムを提供する。中央当局は、情報を受信し、変換または変形し、他では無関係なデバイス、システム、エージェント等の間で情報を共有し、新たな物理的または論理的(即ち、ソフトウェア・ベースの)センサー、デバイス等が、LSSに結合された他のセンサー、デバイス等を全く変更することなく、システムに追加される。
[0049] 更に、複雑さを低減するために、種々の実施形態では、LSS自体はイベントを解釈するときに何の役割も果たさず、代わりに1つのタイプのイベント(またはセンサー読み取り値)を収集し、単に静止的なセマンティック・ルールに基づいて、他のタイプに変形するだけとする。例えば、「エレベーター・ボタン押下」イベントまたは発表は、LSSによって、「ロビー人検出」、「X階人検出」、「建物内人有」等のようなイベントに変形され、これらのイベントの内任意のものにサブスクライブする全てのアプリケーション、デバイス、制御システム等に送ることができる。次いで、これらのイベントを解釈する、アクションを起こす、そして任意に新たなイベントを再発表するのは、個々のサブスクライバー次第である。新たなイベントは、他のサブスクライバーによって取り上げられ、処理され、アクションが行われ、および/または新たな上位イベントとして再発表される等が可能である。
例えば、次のシーケンス例について考える。
1.温度計センサーが温度データーをLSSに発表する。
2.温度変化速度ソフトウェア・エージェントが、LSSから温度データーを受信するためにサブスクライブされ、温度が低下または上昇する速度をLSSに発表する(無関係なセンサーからの発表へのサブスクライブの受領に応答した、エージェントによる発表の例であることに留意すること)、
3.温度データー、および温度が低下または上昇する速度の双方をLSSから受信するために、家庭用サーモスタットをサブスクライブし、温度の絶対値だけでなく、その変化速度にも依存して、HVACユニットを制御する。
[0050] 種々の実施形態では、LSSは、以下の能力の任意の組み合わせを可能にするロジックも含む。
・重複/周回イベント変形検出および除去。
・トラブルシューティングおよび他の目的のための合成(自動または主導)イベント生成。
・セキュリティ面(例えば、サブスクライバーのアクセス・レベル)に基づいて、イベント・データーを変更する(例えば、あるサブスクライバーには低解像度画像、他のサブスクライバーには高解像度画像というように、信号の品質を変化させる)。
・センサーからの発表または信号信頼度レベルを提供するイベントに基づいて確率に基づく変換を定めるためのシンタックスおよびロジック。
・新たなセンサーをLSSに登録し、変形を定めることは、許可されたエージェント(例えば、ユーザー・インターフェース、制御パネル・アプリケーション等)によって行うことができる。
・センサーおよびアプリケーションは、それら自体のイベント・タイプを定めることができ、これらの新たなイベント・タイプを、消費者(即ち、サブスクライバー)を有するイベントに変形するようにLSS規則を設定することができる。
[0051] 2.2 入力ソースおよびサブスクライバー
[0052] 先に注記したように、説明の目的に限って、以下の説明における「入力ソース」という用語は、物理的現象および量を検出または測定し、これらを便利な電気信号、無線周波数信号、オーディオ信号、または光信号に変形し、次いで入力またはイベントとしてLSSに発表するデバイスとして、特定的に定められる。入力ソースの例には、多種多様なデバイス、センサー、音声入力メカニズム、ジェスチャーまたはタッチに基づく入力メカニズム、ソフトウェア・エージェント、インフラストラクチャー・イベント等が含まれるが、これらに限定されるのではない。
[0053] デバイスの例には、コーヒー・メーカー、換気扇、電話機、テレビジョン、リモコン、アプライアンス等が含まれるが、これらに限定されるのではない。センサーの例には、動きセンサー、温度センサー、カメラ、マイクロフォン、消費者用デバイスに埋め込まれたセンサー等が含まれるが、これらに限定されるのではない。ソフトウェア・イベントの例には、タブレット、ネットブック、ノートブック、デスクトップのような計算デバイス、メディア・プレーヤー、セル・フォン、他の形態のコンピューター上におけるユーザーの活動(activity)、スクリーンセーバーのオンまたはオフ、電力節約モードの開始または終了、電子メール受信等のような、このようなデバイスにおける自動アクションまたは通知が含まれるが、これらに限定されるのではない。インフラストラクチャー・イベントの例には、アプライアンスの使用、エレベーター・ボタンの押下、照明スイッチの切り替え(flipping)、温度制御装置の調節等が含まれるが、これらに限定されるのではない。
[0054] 更に、先に注記したように、以下の説明における「サブスクライバー」という用語は、1つ以上の入力ソースの発表から変換または変形された、LSSからの上位イベントを受信する、多種多様のデバイス、センサー、ソフトウェア・エージェント、他のLSS等を指すときに総合的に使用される。加えて、パブリッシャーは、LSSによって受信された入力に応答して、他のパブリッシャーから生成された情報に対するサブスクライバーであることもできる。更に、サブスクライバーは、他のパブリッシャー(または他のサブスクライバー)からの発表に応答してLSSから受信したイベントまたは情報に応答して、イベントを再発表する、または新たなイベントを発表することもできる。
[0055] 一般に、入力ソースは、変換または変形および1つ以上のサブスクライバーへの配信のために、これらの入力ソースによって生成された1つ以上の発表をLSSに供給する。LSSは、種々の従来技術の内任意のものを使用して、種々の入力ソースからの発表を受信する。このような技法には、イーサネット(登録商標)、USB、Fire Wire(商標)、Thunderbolt(商標)、IEEE 802.x、RFID等のような種々の有線またはワイヤレス・インターフェースを介して、データー・メッセージまたは信号によって受信された発表が含まれるが、これらに限定されるのではない。更に、通信能力がない既存のデバイスを、LSSによる使用のために、簡単な発表能力を設けるように改造することもできる。例えば、有線またはワイヤレス・ネットワーキング能力を有する従来の電流計を、ランプ、コーヒー・メーカー、サイクル・マシン(exercise bike)等のようなデバイスの電源コードに沿って(in line with)差し込み、デバイスの電力使用に基づいて、デバイスが使用中であるときの指示を発表することができる。
[0056] 使用する通信プロトコルには関係なく、また特定の入力ソースに通信能力が増強されているか否かにも関係なく、全体的な理念は、入力ソースが単にその現在の状態(例えば、オンまたはオフ、温度の読み取り値等)のような情報、および/またはイベント、あるいは入力ソースによって生成された他の情報を報告することである。任意の入力ソースによって生成されたイベントまたは他の情報のタイプは、明らかに、その入力ソースが何であるか、そしてこの入力ソースがどのような通信能力を有することができるかに依存する。例には、アプライアンスの電源ボタン押下、動きセンサーによって検出された動き、ビデオ・カメラからの画像ストリーム等が含まれるが、これらに限定されるのではない。
[0057] 2.2.1 論理センサー
[0058] 通常センサーとは考えられない種々のデバイスも、LSSへの発表のための貴重なデーター・ソースとして動作することができる(例えば、コーヒー・メーカーの作動開始、またはエレベーター・ボタンの押下が、人感センサーとして動作する)。このようなデバイスからアクション可能なイベントを導くことは、これらのデバイスを既存の意思決定エージェントへの物理的および論理的配線に伴うコストのため、通常では行われない。しかしながら、LSSの多くの利点の1つは、入力ソース、およびこの入力ソースからの入力または発表が何を表すのか単に周知させることによって(例えば、エレベーター・ボタンの押下は、人がそのエレベーター・ボタンに隣接することを示す)、その入力ソースがLSSに発表することを可能にすることである。
[0059] 更に、他の目的に通常使用されるセンサーを内蔵するデバイスを、ダウンロード可能なアプリ等を介して、LSSによる使用のために論理センサーとして機能させることができる。例えば、多くの最新型セル・フォンは、加速度計、マイクロフォン、カメラ、GPS等のようなセンサーを内蔵し、このようなセンサーからの読み取り値を、Wi-Fiまたは他のワイヤレス・ネットワーキング能力によって伝達することができる。このような目的に設計された単純なアプリを使用して、セル・フォンにおける既存のセンサーの内任意のものをオンにして、データー(例えば、オーディオ、ビデオ、動き、位置等)を収集するために使用することができ、次いで、セル・フォンに統合された種々の通信能力を使用して、このデーターは任意の1つ以上のLSSに発表される。
[0060] 物理センサーの設置は、何らかの制御パネル、または何かを介してネットワークに登録することを伴う。何かとは、そのセンサーと一緒に動作して、その調査読み取り値をLSPが吸収できる何かに変換する、その物理的進歩(stature)のために本質的に論理センサーとなるように設計された新たなアプリの全てのエピソードである。
[0061] 同様に、ソフトウェア・ベースのセンサーは、LSSに発表することができるソフトウェア・ベースのイベントを表す。例えば、種々のオペレーティング・システムは、活動ベースのインディケーター(例えば、スクリーンセーバー、ある期間使用しないときの自動節電等)と共に設計される。オペレーティング・システムの下で実行しこのようなイベントの開始を取り込み転送するアプリは、ソフトウェア・ベースのセンサーを形成し、これらはLSSによって任意の他の入力ソースとして使用することができる。ソフトウェア・ベースのセンサーを形成するアプリの他の例には、計算デバイスに関連するマイクロフォン、カメラ、または他の入力手段をアクティブにして監視し、人が存在するか否か、その人々が何をしているのか、またはアクティブにした特定のセンサーに依存する他の情報を判定するアプリが含まれる。この場合も、これらのアプリは、任意の他の入力ソースと同様、データーを取り込み、LSSによる使用のために処理し、または転送することができる。
[0062] 更に、純粋にソフトウェアで生成されるイベントもLSSに発表することができる。このような処理能力は、追加のインフラストラクチャーまたは照明制御システムの変更を全く行わずに、LSS接続コンピューターを介して、ユーザーが登録された照明制御システムを制御することを可能にするというように、種々のシナリオを可能にする。
[0063] 加えて、種々の実施形態では、LSSは、既存のセンサーまたは入力デバイスの出力または発表を処理して、新たな論理センサーの形成、および/または種々のセンサーまたは入力ソースの出力または発表には通常関連しない新たな論理センサーの作成、および/またはアクションの開始を可能にするメカニズムも提供する。例えば、ユーザーの自宅に動きセンサーがある、または既存の動きセンサーが何らかの理由で(例えば、そのセンサーのバッテリーが切れた)オフラインになっていると仮定する。応答して、LSSは、種々の入力ソースからの広範囲の発表の内1つ以上に基づいて、論理動きセンサーを合成することができる。例えば、TVリモコンの使用を示す発表、または水量計によって流速から推論した手洗いの水洗を示す発表であっても、これらのいずれかまたは双方を、「人在宅」型出力イベントに変形することができ、次いでこの出力イベントを1つ以上のサブスクライバーに供給する。
[0064] 更に、機械学習のコンテキストでは、これは、LSSが、観察された相関関係に基づいて、自動的に新たな論理センサーを合成し登録することを可能にする。例えば、手洗いの水洗が常に物理動き検出デバイスのトリガリング(triggering)に続くが、この動きセンサーが突然報告またはトリガリングを停止した場合でも、LSSは動きイベントをなおもトリガーすることができる(手洗いの水洗のみに基づいてトリガーする、パブリッシャーとして自動的に登録された、論理動きセンサーの自動形成によって)。有利なこととして、これは、LSSが他の物理現象を「検知」することも可能にする。即ち、実際の動き検出デバイスが誤動作しているかもしれない。この「検知された」物理現象は、次いで、更に他のアクションのため(例えば、動きセンサーのバッテリーを交換することの警告等)ユーザーまたは他のサービスに報告することができる。
[0065] 2.2.2 エージェント
[0066] 一般に、LSSに登録されたソフトウェア・エージェントは、「TVオン切り替え」イベントのような、LSSから受信した情報に応答して、種々の作動(例えば、照明を消す、およびブラインドを下げる)を実行または開始する。その結果、典型的なセンサー結合とは対照的に、LSSは、ソフトウェア・エージェントをデーター・センサーに結合することを可能にする。データー・センサーは、任意の特定のソフトウェア・エージェントを物理的に特定のセンサーと結合する必要がないという意味で、論理的である。言い換えると、センサー(または他の入力ソース)に物理的に結合されるのではなく、エージェントは、代わりに、LSSへの登録によって、1つ以上の特定のタイプのイベントに結合される。
[0067] 更に、LSSは、任意の数の入力ソースが情報を発表することを可能にし、その結果、イベントの内任意のものにエージェントがサブスクライブされる。これらの入力ソースには、物理センサー、LSSへの発表の前に任意に読み取り値を処理する(例えば、生データーのノイズ濾波)中間ソフトウェア・コンポーネント、温度のような情報を発表するために実世界と全く対話処理しない完全に論理的なセンサー等が含まれる。
[0068] その結果、LSSに登録されたカスタム化可能なソフトウェア・エージェントを使用することによって、これらのエージェントが、他の無関係なセンサー、デバイス等からの入力または発表に応答してLSSによって生成またはトリガーされたイベントに応答して、多種多様なタスクまたはアクションを実行または開始することを可能にする。これによって、ユーザーは特定のタイプのイベントに応答して特定のタスクを実行または開始するように設計され、他の場合には範囲やこれらが行うことが制限されるエージェントを追加またはカスタム化することが可能になる。有利なこととして、種々の実施形態では、管理者、または、例えば、LSS関係サービスまたはサポートを提供する会社のような第三者によって、LSSを離れて更新することもできる。
[0069] 例えば、種々の実施形態では、ソフトウェア・エージェントは、LSSによって提供される特定のユーザー定義可能なイベントの受信を待ち、次いで、例えば、単純なネットワーク・ベースの電子スイッチまたはリレーのようなデバイスを制御するためにアナログまたはディジタル信号(例えば、論理「0」または「1」)を送るように設計することができる。有利なこととして、これによって、単純なネットワーク・ベースの電子スイッチまたはリレーと組み合わせたエージェントの使用が、他の電子デバイスをオンまたはオフに切り替えることが可能になり(これらの電子デバイスへの電力を巡回させることによって)、これらの電子デバイスが他の場合にはネットワークやLSSに直接接続することができない場合であっても、これが可能になる。
[0070] 2.3 発表の変換
[0071] 先に注記したように、LSSは種々の入力ソースから発表を受信し、これらの発表を変換または変形して、1つ以上のサブスクライバーによって使用可能な信号またはイベントにする。例えば、ネットワーク接続TVに関連し、および/または別のネットワーク接続受信機(例えば、ネットワーク・ベースのIR受信機)によって監視されるIRベースTVリモコンについて考える。この例では、LSSは、リモコンのオン・ボタンが押されたことを示す発表を受信し、この発表を1つ以上のイベント(例えば、「居間に誰か存在」タイプ・イベント)に変換する。したがって、これは、TVリモコンのボタンを押すだけで、LSSに、1組の1つ以上の予め定められた変換を発火させる。予め定められた変換には、カスタム・コード化されたHTMLまたはXMLスクリプトに基づく変換またはイベントを含むことができる。
[0072] 有利なこととして、以上の例におけるTVリモコンは、追加の回路も、インテリジェンスも、処理能力も必要としない。ネットワーク接続TVまたはIR受信機は、単に、ボタンが押されたという事実をLSSに発表するだけであり、LSSは、単に、1つ以上の組の予め定められたまたはユーザー・カスタム化可能な変換規則に基づいて、このボタン押下を、任意の他のサブスクライバーによる使用のために、1つ以上のイベントに変形するだけである。
[0073] 例えば、TVがオンに切り替えられたときに照明を暗くする照明システムは、これが間接的にTVリモコンに応答していることを知らない。代わりに、LSSは、TVリモコンのオン・ボタンが押されたとき、このボタン押下が「部屋内誰か存在」タイプ・イベント、および「TVオン切り替え」タイプ・イベントに変形される。この場合、新たな「照明暗化」タイプ・イベントをトリガーするため、または照明エージェントが、人がテレビジョンを視聴できるように照明を暗くするというような、何らかのアクションを行う結果になるために、「室内誰か存在」イベントおよび「TVオン切り替え」イベントのいずれかまたは双方に照明システムをサブスクライブすることができる。言い換えると、LSSは、「室内誰か存在」および「TVオン切り替え」から、LSSにサブスクライブされた照明システムによって消費される「照明暗化」イベントへのソフト変換を可能にする。
[0074] 言い換えると、例えば、TVリモコンのようなデバイスを仮定すると、LSSがこのデバイスから直接または1つ以上の仲介物を介して、発表を理解しそして受け入れるように、このデバイスはLSSに登録されるか、またはそれ以外で関連付けられる。LSSの種々の実施形態では、ユーザーには制御パネル等が提示され、ユーザーが、カスタム変換スクリプト等を書くことによって、リスト、ウィザードを介して特定の発表に対する変換を選択してまたは定めて、これらの発表を種々のサブスクライバーによるアクションと関連付けることが可能になる。単純な例は、任意のLSSユーザー・インターフェースを使用して、TVリモコン・ボタンの押下を、照明を暗くするというような他の何らかのアクションと関連付けることである。発表されたボタンの押下を、サブスクライブされた照明制御システムによって使用可能なフォーマットに変換して、リモコン・ボタンが押されたときに、このシステムに照明を暗くさせる。
[0075] 図3は、LSSユーザー・インターフェースを実現するための制御パネル、ウィザード、またはアプリケーションの簡単な例を示す。先に注記したように、LSSは、発表のための入力ソースの登録(図3には示されない)、およびLSSで使用するためのサブスクライバーの登録(図3には示されない)を可能にする。つまり、入力ソースおよびサブスクライバーの登録を仮定すると、図3は、登録されている入力ソースの発表のユーザー選択(310)、および選択した発表を1つ以上の変換出力イベントと関連付ける(320)ことを示す。
[0076] また、図3は、特定のサブスクライバーのユーザー選択(330)、および選択されたサブスクライバーに対する1つ以上の出力イベントの割り当て(340)も示す。したがって、任意の入力ソースの発表に応答してLSSによって出力イベントがトリガーされたときはいつでも、LSSはその出力イベントを発火するか、またはその出力イベントが割り当てられた全てのサブスクライバーにその出力イベントを送る。また、このユーザー・インターフェース例は、特定の出力イベントの受信に応答してサブスクライバーによって実行される作動、またそうでなければ開始される作動のカスタム化(350)または選択も示す。
[0077] 最後に、図3のユーザー・インターフェースは、選択されたサブスクライバーによって実行される作動、またそうでなければ開始される作動を制御するために、ユーザーが出力イベントの1つ以上に関連する信頼度閾値を設定する(360)または調節することも可能にする。例えば、カメラからのビデオ・フィードがソフトウェア・エージェントによって評価され、次いでこのソフトウェア・エージェントが「ジョン・スミス」の顔表現結果を、信頼度レベルを70%として、LSSに発表すると仮定する。次に、LSSは、「ジョン・スミスは部屋にいる」タイプのイベントのような出力イベントを、この70%信頼度レベルと共に(along with)トリガーすることができる。すると、部屋に誰がいるかに依存して異なる音楽を再生する音楽プレーヤーがサブスクライブされた場合、少なくとも70%の信頼度レベルで人が識別されたときはいつでも、その人の大好きな曲(song)の再生を開始する。
[0078] 図3をもっと近くから見ると、図3は、「TVリモコン・ボタン」発表の選択(310)、ならびに「部屋内人在り」出力イベントおよび「TVオン切り替え」出力イベントの双方が関連付けられ(320)、次いでTVリモコン上でボタンが押されたことに応答して、LSSによってトリガーされることを示す。これらの出力イベントを仮定すると、ユーザーは次に、図3に示したような、「照明制御」サブスクライバーのような1つ以上のサブスクライバーを選択することができる(330)。
[0079] 次に、「照明制御」サブスクライバーの選択を仮定すると、ユーザーは次に入手可能な出力イベントの内1つ以上をこのサブスクライバーに割り当てる(例えば、「室内人存在」、「TVオン切り替え」、および「宅内無人」)(340)。これによって、この場合、任意の入力ソースからの任意の発表に応答して、これらのイベントの内任意のものがLSSによって生成またはトリガーされたときはいつでも、「照明制御」サブスクライバーは、割り当てられた出力イベントを受信する。
[0080] 更に、照明制御システムのようなサブスクライバーは通例種々の作動(例えば、この例では、「照明入」、「照明切」、または「照明暗化」)が可能であると仮定すると、ユーザーは、次に、これらの利用可能な作動から任意のものを選択し、「照明制御」に関連する出力イベントの内どれが特定の作動をトリガーするか選択することができる。例えば、図3に示すように、「照明制御」サブスクライバーは、「部屋内人在り」出力イベントおよび「TVオン切り替え」出力イベント双方の受信に応答して、「照明暗化」作動を開始する。
[0081] これまでの例に関して、LSSの種々の実施形態は、ユーザーが1つ以上の利用可能な出力イベントを種々のサブスクライバーまたはアクチュエーター(例えば、照明制御システム、自動陰影、音響システム等)、利用可能なアクチュエーターの特定のカテゴリー、特定の部屋、建物、エリアにおいて利用可能なアクチュエーター等に割り当てるまたは関連付けることを可能にする選択肢を含むことは明らかなはずである。したがって、ユーザーは、任意の特定の発表に応答して、彼らが望む任意の特定のアクチュエーターを単に選択するだけで済ますことができる。
[0082] 2.3.1 スクリプト・ベースの変換フォーマットの例
[0083] 以上で説明したように、LSSは、出力イベントを作るために発表を変形または変換し、これらのイベントを種々のサブスクライバーに伝える。種々の実施形態において、LSSは、出力イベントの変形およびサブスクライバーへの伝搬を決定するための構成情報を含む、スクリプト・ベースのシナリオ(例えば、HTML、XML等)を使用して、これらの変形または変換を実行する。
[0084] 例えば、LSSは、「動き検出」発表を動き検出センサーから受信したとき、「フロアー上人検出」出力イベントおよび「建物内人検出」出力イベントを発火するように構成することもできる。フロアーおよび建物照明制御システムのようなサブスクライバーは、「フロアー上人検出」および「建物内人検出」イベントのいずれかまたは双方に登録されてもよい。その結果、「動き検出」イベントが発火されるときはいつでも、これらのシステムには、LSSによって、「フロアー上人検出」および「建物内人検出」イベントが通知される。
[0085] 以上で説明した構成を表現する一例を、表1に提示するスクリプトによって、以下に示す。しかしながら、発表を変形しサブスクライバーに対して出力イベントを発火するためのスクリプト作成(scripting)は、以下で例示するスクリプト・フォーマットに限定されることを意図するのではないこと、そして以下に例示するスクリプトは説明および例示の目的に限って示されることは、理解されてしかるべきである。
Figure 2016503539
[0086] 次いで、表1の例を続けると、新たなセンサーまたはコーヒー・マシンのような他のパブリッシャーがセンサー・レジストリーに追加されると、LSSはその発表も「動き検出」イベントに変形するように構成することができる。すると、この新たな「動き検出」イベントは他のイベントを引き起こし、これらのイベントのサブスクライバーへの発火を引き起こす。これは、先に説明したフロアーおよび建物照明システムに対して、動き検出センサーの検出(即ち、"<SensorID="123">")と同じ効果を有する。この新たな変形は、表1のスクリプトを変更し、表2によって示されるスクリプトを生成することによって、表現することができる。
Figure 2016503539
Figure 2016503539
[0087] 表2において、コーヒーおよびラッテ・マシンによって発表された「コーヒー注文」イベントが直接それよりも高次の「フロアー上人検出」イベントや「建物内人検出」イベントに変形しないことに注意されたい。代わりに、この変形は2つのパスを取り、「コーヒー注文」イベントが最初に「動き検出」イベントに変形され、次いでこれが「フロアー上人検出」および「建物内人検出」イベントの双方に変形される。有利なこととして、このタイプのマルチパス変形は、重複を回避し、変換セマンティック・ツリーのサイズを小さく抑える。
[0088] 以上で示したスクリプト例は、比較的短く単純な変形の例を示す。しかしながら、マルチパス変換を可能にすることの他の利点は、このような処理能力が、自由裁量による複雑な(arbitrarily complex)変換ネットワークの構築を可能にすることであり、アプリケーションまたはサブスクライバーは1つの抽象レベルにおいてイベントを受信し、これらの受信したイベントに応答してアクションを行い、次いで元のイベントに応答して行われたアクションに応答して、他の抽象レベルで新たなイベントを発表する。このような変換チェーンは、ここでは「t−チェーン」と呼ばれ、自由裁量による高いレベルのイベント抽象化を容易にし、このイベント抽象化の結果、人間並みのレベルのコンテキスト認識が得られ、「ソファ上で人が眠っている」というような出力イベントが得られる。次いで、この出力イベントに感応する該当のエージェントまたはサブスクライブしたシステムは、例えば、TVの音量を下げる、部屋の照明を消す、室温を調節する、着信電話コールをボイスメールに送る等のような作動をトリガーすることができる。
[0089] 有利なこととして、このタイプのより高いレベルのコンテキスト認識は、任意の所与のレベルにおいて複雑さを高めた結果ではなく、LSSによって提供されるシステム全体の創発挙動(emergent behavior)であり、各エージェントは特殊化され、単純であり、離れたレベルでエージェントから垂直に隔離される。その結果、より多くのエージェントが発表およびサブスクライブのために登録するに連れて、LSSは、より多くの接続およびノードを追加して、サイズが著しく増大することができるが、論理的に単純でビジネス・ロジック不要(business logic-free)のままでいられる。
[0090] 以上で説明したプロセスに対する更なる改善は、選択的(プロパティに基づく)変形およびイベントの伝搬に対する規則を作るために、信頼度レベルまたは閾値を指定することを可能にする変換シンタックスまたはフォーマットを使用することによって可能になる。例えば、信頼度レベルまたは閾値を使用して、信頼度レベルがある閾値以上である場合にのみ、動き検出センサーからの「動き検出」イベントを「フロアー上人検出イベント」に変形する。イベント信頼度レベルに関する更なる説明については、章2.4を参照のこと。
[0091] 2.3.2 自動変換のシナリオ
[0092] 以上で説明したLSSのユーザー中心的実施形態に加えて、種々の実施形態では、LSSは標準的なまたは予め定められた応答を特定の入力に対して供給する。例えば、ユーザーがテレビジョンをオンに切り替えるとき、「ムービー視聴モード」を開始するといような、他のイベントが望まれる可能性がある。これは、自動的に照明を消し、窓の日よけを閉じる。
[0093] 更に具体的には、種々の実施形態において、特定のユーザー・アクションに応答するための予め定められたシナリオまたはスクリプトを自動的にLSSに供給することができる(例えば、LSSが提供されるローカル・スクリプト・ライブラリー、ダウンロード可能なアプリ、スクリプト等)。これらの予め定められたシナリオまたはスクリプトは、LSSに、特定のタイプの発表を変換し、対応する出力イベントを特定のタイプのサブスクライバーに供給し、これらのサブスクライバーが特定のアクションを開始できるようにするための命令または規則を供給する。
[0094] 有利なこととして、このような予め定められたスクリプトまたはシナリオは、ユーザーが特定のハードウェアまたはソフトウェアを有していないとき、このようなハードウェアまたはソフトウェアをユーザーに提案することも可能にする。例えば、LSSが、窓の日よけを閉じるための制御システム(ハードウェアおよび/またはソフトウェア)を自動的にサブスクライブし、更に発表に応答して照明を暗くするための照明制御システムにも登録し、対応する出力イベントが、テレビジョンをオンに切り替えたことに応答して、生成またはトリガーされると仮定する。ユーザーが照明を暗くするための制御システムを有するが、窓の日よけを閉じるための制御システムを有していない場合、LSSは、ユーザーに、窓の日よけを閉じるために制御システムに指令するおよび/または制御システムを構成するソースをユーザーに示唆することができる。種々の実施形態において、これは、ユーザーの現在の構成の特定のアクションおよび発表に対して、LSSの使用に関してユーザー体験を改良するために、LSSが、ハードウェアおよび/またはソフトウェア制御システム、アクチュエーター、設置サービス等についての広告をユーザーにプッシュすることも可能にする。
[0095] 2.3.3. 自動学習ベースのシナリオ
[0096] 一般に、ユーザーの行動を経時的に評価してユーザーの行動またはパターンを明瞭するための自動学習技法が、当業者には知られており、ここでは説明しない。有利なこととして、LSSの種々の実施形態は、更に、経時的にユーザーの行動を評価するコンピューター学習技法を、1つ以上の発表および対応する出力イベントに対して、種々のサブスクライバーまたはアクチュエーターの構成を自動的に提供するように構成する(adapt)。
[0097] 例えば、ユーザーがムービーの再生を開始し、続いて内部照明(local lights)を暗くし、室内の(local)窓の日よけを閉じることを繰り返す場合、LSSは従来の学習技法を使用して、これらのアクションを経時的に学習することができる。すると、有利なこととして、LSSはこれらのアクションを任意の順序で自動化することができる。例えば、ユーザーが、最初に日よけを閉じず、照明を暗くせずにムービーの再生を開始した場合、LSSは、日よけおよび照明に関連するエージェントまたは制御システムに対して出力イベントをトリガーして、ユーザーによる更なるアクションを必要とせずに、閉鎖および照明の暗化を行わせることができる。
[0098] 言い換えると、LSSの種々の実施形態は、コンピューター学習技法を使用して、種々の発表を1つ以上の変換された出力イベントに自動的に関連付ける、または割り当てる。これらの変換された出力イベントは、次に、直接的なユーザー入力を必要とせずに、種々のシステム制御シナリオを自動化するために、種々のサブスクライバーに自動的に渡される。尚、種々の実施形態において、ユーザーには、任意の自動化された行動、登録、発表の変換等を調節またはカスタム化するためにユーザー・インターフェースが設けられることを注記しておく。
[0099] 更に具体的には、種々の実施形態において、LSSはユーザーの行動から自動的に学習して、特定の発表に割り当てる変換出力イベントを決定し、これらの出力イベントは、自動的に種々のタイプのサブスクライバーに対して発火される。例えば、ユーザーがテレビジョンをオンに切り替えるとき、例えば、照明を消すまたは暗くする、および窓の日よけを閉じるというような、他のイベントがユーザーによって手動で開始されることもあり得る。照明制御システムおよび窓日よけ制御が、ユーザー・アクションを示す発表をLSSに供給すると仮定すると、LSSはこれらのアクションを観察および記録し、TVのリモコン上でオン・ボタンを押すというような特定のアクションに続いて、ユーザーによって行われたアクションを自動的に繰り返すことができる。
[0100] 有利なこととして、LSSは特定のユーザー行動から、または大きなユーザー集合の行動から学習することができる(例えば、ユーザーが、ユーザー行動ならびにパブリッシャーおよびサブスクライバーの構成のLSSに対する匿名報告を許す任意の実施形態において)。これによって、多種多様なシナリオまたはプログラムをユーザーのLSSにプッシュするまたそうでなければ提供することができ、次いで、ユーザーの好みに基づいてユーザーのLSSをローカルにカスタム化することができる。更に、ユーザーのLSSに関連するハードウェアおよびソフトウェア(即ち、パブリッシャーおよびサブスクライバー)の一部または全部が、ユーザーのLSSに提供される特定のシナリオまたはプログラムに関係しても、しなくてもよい。しかしながら、先に説明したように、ユーザーは、パブリッシャーおよびサブスクライバーを任意の時点においてLSSに追加すること、除去すること、構成すること等ができる。有利なこととして、先に注記したように、種々の実施形態において、LSSは、ユーザーの現在の構成の特定のアクションおよび発表に関するLSSの使用に関してユーザー体験を改良するために、ハードウェアおよび/またはソフトウェア制御システム、アクチュエーター、設置サービス等に関係する情報発表または広告をユーザーにプッシュすることができる。
[0101] 2.4 イベント信頼度レベル
[0102] 先に注記したように、種々の実施形態において、LSSは、信号信頼度レベルを提供するセンサーまたはイベントからの発表に基づいて、確率に基づく変換のために、閾値または信頼度レベルを任意に設定または調節することができる(例えば、ソフトウェア・エージェントが、70%の精度信頼性で顔認識を戻す)。尚、異なる信頼度レベルを有する複数の発表を、任意の望まれる方法で組み合わせてまたは集計して、総合信頼度レベルを有する出力を生成またはトリガーできることも注記しておく。次いで、このようなレベルは、特定のアクションを作動させるまたは開始するか否か判断するときに、サブスクライバーによって使用することができる。
[0103] 一般に、LSSは二進イベントに基づいてイベントを変換する。例えば、ユーザーがガレージ・ドアを開くためにリモコンのボタンを押す場合、「ガレージ・ドア開放」というような二進イベントをLSSによってトリガーすることができる。しかしながら、特定のセンサー(またはセンサーの組み合わせ)またはパブリッシャーが、発表が正しいという対応する確率的な信頼度レベルと組み合わせてこの発表を提供できる場合、LSSは特定の変換をトリガーするため、または更に別のアクションのために、これらの信頼度レベルをサブスクライバーに渡すためにこの情報を利用することができる。例えば、誰かが寝ているのか、怪我しているのか、または死んでいるのか判定するために動きセンサーを使用する場合、異なるレベルの信頼度が恐らく必要となり、更に他のセンサーの入力も恐らく必要となるであろう(例えば、Kinect(商標)デバイスを使用する骨格追跡、および赤外線温度センサーを使用する遠隔体温測定)。
[0104] 更に、このような動き検出器に関して、換気扇を動かすというような他のアクションが、人が部屋にいないときに動きセンサーをトリガーすることが潜在的に可能である。このような場合、動きセンサーがトリップした(trip)とき、比較的低い信頼度レベルで、「室内人存在」型イベントをトリガーすることができる。対照的に、手動照明スイッチが逆側に動かされた(flip)またはエレベーター・ボタンが押されたというようなインフラストラクチャー・イベントを使用する場合、ほぼ100%の信頼度で「室内人存在」タイプ・イベントとトリガーするために使用することができる。何故なら、このようなイベントが、人の介在なしで起こることはほぼあり得ないからである。したがって、異なる発表に応答して、異なる信頼度レベルで同じイベントがトリガーされる可能性があることは明らかなはずである。
[0105] 更に、他の発表またはイベントに関連する信頼度レベルに依存して、特定のイベントをトリガーするために、異なる信頼度レベルを使用することもできる。言い換えると、種々の実施形態において、1つ以上のセンサーの発表からの何らかの解釈または分析または入力によって信頼度が判定されるとき、LSSは、異なるアクションを、これらのアクションに関連する信頼度レベルの0から100%までのどこででも、開始することを可能にする。有利なこととして、種々の実施形態において、LSSは経時的にイベントを監視して、特定の発表またはイベントに関連する信頼度レベルを導くためにモデルを構築し、これらのモデルの有効性を判断するために、これらに対して任意に検査することができる。
[0106] 2.5 セキュリティについての検討
[0107] 種々の実施形態において、任意に、LSSは、発表、登録、およびイベントの組み合わせを許可済みの当事者(authorized parties)(許可済みまたは検証済みのユーザー、許可済みまたは検証済みのパブリッシャー、および許可済みまたは検証済みのサブスクライバーを含む)のみに制限することによって、センサーによって収集されたデーター、およびLSSに発表されたイベントのセキュリティおよびプライバシーを確保する。信頼できるデバイス、ユーザー、サブスクライバー等だけがLSSに接続されることを保証する既存のセキュリティ・プロトコルが使用される。更に、信頼できないパブリッシャーまたはサブスクライバーには、特定のイベントまたは発表に対して限定されたアクセスが許可されてもよい。言い換えると、種々の実施形態において、LSSは種々のセキュリティ・メカニズムを採用して、センサーをアクティブにしてネットワークの下で発表し、サブスクライブを受けることが全て、安全で認定されたやり方で行われることを保証する。
[0108] 更に、種々の状況下において、既知のソースまたは未知のソースからの信頼できない発表が、LSSによって受け入れられてもよい。例えば、部屋における信頼できるマイクロフォンとほぼ同じオーディオ・フィードを発表する未知のマイクロフォン(例えば、近くにいる知らないユーザーのセル・フォンにおけるマイクロフォン)からのオーディオ・フィードを、信頼できるオーディオ・フィードと組み合わせて、従来のオーディオ処理技法を使用して、品質が改良されたオーディオ信号を生成することができる。同様に、他のユーザーに関連する信頼できないLSSのその場限りのグループも、LSSに情報を発表することを許可してもよい(例えば、騒がしい部屋において、複数のユーザーの電話機を全て使用して、オーディオ・データーを取り込むことができ、オーディオ・ストリームの数が増えるに連れて、従来のオーディオ処理技法によってオーディオ・データーを著しく改良することができる。
[0109] したがって、種々の実施形態において、LSSによる発表の変形は、センサー・データーまたは発表を増強させることができ、あるいは種々のセキュリティの理由のために、このセンサー・データーまたは発表を劣化させることができることは明らかなはずである。このような増強または劣化は、パブリッシャーとサブスクライバーとの間でソフトウェア・エージェントを使用し、望まれるやり方であればいずれでも、セキュリティを高めるまたはプライバシーを保障する方法で、データーを変更することによって行われる。
[0110] 加えて、複数の異なるセキュリティ・レベルを設けることもできる。例えば、許可されたユーザーは、自宅においてカメラの高品位発表を受信することを許可してもよく、一方家の外で座っている警備員は、同じカメラ・ビューの低解像度バージョンを受信することだけを許可してもよい。このような実施形態は、異なるアクセスまたはセキュリティ・レベルでのサブスクライブに応答して提供されるセンサー・データーまたは他の発表に対して、異なるアクセス・レベルまたは異なるサービス品質を提供するために、サブスクライバーのセキュリティ・レベルを設定または決定することによって、可能になる。
[0111] 2.5.1 匿名発表
[0112] 有利なこととして、種々の実施形態において、LSSは、匿名発表を許可することによって、発表プロセスを構成するプロセスを簡略化する。これは、ユーザーが特定の入力ソースをLSSに登録する必要なく、発表を許可する。更に、発表のタイプに依存して、LSSは単に匿名発表を許可または拒絶することもできる。例えば、5人が部屋に入り、グループ・ディスカッションを開始し、ひとりひとりが彼らのセル・フォンにおけるマイクロフォンで会話のオーディオ・データーを取り込ませ、これらのユーザーのLSSの内1つ以上にストリーミングさせると仮定する。
[0113] このような場合、LSSは匿名のオーディオ・ストリーム発表を受信し、匿名発表を受信することによるセキュリティの危険性が殆どまたは全くなく、従来のオーディオ処理技法を使用して、複合および改良オーディオ・ストリームを作ることができる。対照的に、LSSに登録することのセキュリティの危険性は、高くなる虞がある。結果的に、種々の実施形態において、匿名のサブスクライバーは、LSSによって提供される出力イベントまたは他の情報に対してアクセスが許可されないか、あるいは制限されたアクセスまたは劣化されたアクセスが付与される。
[0114] したがって、種々の実施形態において、誰でもLSSに登録または発表できる完全開放から任意のレベルでLSSを構成することができる。更に、LSSは、許可されたパブリッシャー、サブスクライバー、またはユーザーの1つ以上のレベルに、登録および/または発表を限定または制限するように構成することもできる。
[0115] 2.6 その場限りのグループ
[0116] 静止環境(例えば、建物、自宅等)にLSSを設けることに加えて、LSSの種々の実施形態は、移動体のシナリオでも実現される。この場合、任意のセンサーまたは他のパブリッシャーが利用可能になったとき、または欠落したときはいつでも、パブリッシャーのその場限りのグループを構築すること、または破壊することができる。更に、多くのパブリッシャーが利用可能であり、移動体LSSに発表している移動体の場合では、個々のユーザーまたはLSSが複数の発表、あるいは発表のタイプまたはカテゴリーからどれを受け入れるかまたは拒絶するか決定することができる。更に、個々のユーザーは、それらのLSSが特定のイベントまたはセンサー・データーを他のLSSまたは他のサービスに発表すること、または再発表することを許可するか否か決定することもできる。加えて、複数のLSSを接続して、発表および登録の一部または全部を共有するLSSの相互接続グループまたはネットワークを形成することもできる。
[0117] 2.7 アプリ
[0118] 任意の許可されたエンティティがセンサーまたはパブリッシャーの役割を果たすことができるので、種々の実施形態では、LSSは仮想(ソフトウェア・ベースの)論理センサーのために、アプリ・ストアまたはマーケットプレースへのアクセスを与える。このようなアプリは、任意の互換性があるプラットフォーム(例えば、移動体電話機、PC、埋め込みデバイス等)に配信しインストールすることができる。このようなアプリは、LSSに接続されると、これらのアプリのロジックに基づいて、追加の検知を提供することができる。例えば、ユーザーのセル・フォンにおける加速度計および/またはGPSハードウェアにアクセスすることが許可されているアプリは、ユーザーの移動体デバイス(つまり、ユーザー)が、「歩いているのか」、「運転しているのか」、または「静止しているのか」判定することができる。
[0119] アプリは、任意の所望の機能を提供するように設計することができ、種々の発表のカスタム変換または変形を含むまたは表すこともできる。加えて、種々のアプリは、特定のハードウェア(例えば、窓の日よけの開閉を自動化するハードウェア・メカニズム)と動作するように設計することもできる。アプリをこのようなハードウェアとバンドルし、アプリ・マーケットプレースまたは他のソースから入手することができる。
[0120] 更に、種々の実施形態において、LSSまたはLSSに関連するサービスは、ユーザー・アクションに基づいて、特定のアプリをユーザーに自動的に提案することができる。例えば、ユーザーがしばしばムービーを視聴するとする。LSSまたはLSSに関連するサービスは、ムービーを視聴する他のユーザーがLSS(サブスクライバーおよびハードウェア・アクチュエーターが関連付けられている)を使用して自動的に照明を暗くして窓の日よけを閉じることを、ユーザーに自動的に警告することができる。次いで、LSSまたはLSSに関連するサービスは、ユーザー自身のシステムを強化してムービーを視聴する他のユーザーの機能をイネーブルするために使用することができるアプリおよび/またはハードウェア(またはプロの設置サービス)をユーザーに提案または提供することができる。
[0121] 2.8 論理センサー・プラットフォーム(LSP)
[0122] 以上で説明したように、種々の実施形態においてLSSは、種々のデバイス、システム、エージェント等の発表および登録を、先に特筆した発表変換および変形に加えて、管理する。しかしながら、関係する実施形態では、LSSは発表の変換および変形を「論理センサー・プラットフォーム」(LSP)のサブコンポーネントとして単に扱うだけである。言い換えると、種々の実施形態において、LSPはLSSの周囲に任意のラッパー(wrapper)を提供し、発表およびサブスクライブ(subscription)の登録(registration)ならびにユーザー・インターフェースを提供することにより、負担の一部をLSSから取り除き、こうして、LSSが単に発表を受信し変換すればよいようにする。この場合、LSPはセンサー・データーを発表、登録、および変形する(LSSを介して)ための統一ハードウェア非依存プラットフォームを提供する。種々の実施形態において、LSPは、様々な基本的な基礎的要素を含む。これらには以下のものが含まれるが、それに限定されるのではない。
・センサー・データー、アプリケーション定義情報、上位イベント等を登録および発表するためのシンタックスを定めるインターフェース。
・物理および論理センサー、デバイス、システム、エージェント、ならびに他のイベント・パブリッシャーから入力を受信し、LSSロジックをホストするソフトウェア・コンポーネントを提供する登録サービス(または「アグリゲーター」)。
・実際にLSPによって受信された発表の変換および変形を実行する前述のLSS。
[0123] 先に注記したように、LSPインターフェースは、センサー・データー、アプリケーション定義情報、上位イベント等を登録および発表するためのシンタックスを定める。LSPインターフェースは、安全で開いたプロトコルによって、センサー、デバイス、システム、エージェント、および他のイベント・パブリッシャー/サブスクライバーへの読み取り/書き込みのためにアクセスすることができる。更に、異なるセンサー、デバイス、システム、エージェント、および他のイベント・パブリッシャー/サブスクライバーが同時に安全なまたは開いたプロトコルの異なる組み合わせを使用することができる。
[0124] LSPインターフェースの発表シンタックスは、発表されるデーター(またはイベント)のタイプ、イベントに関連するデーターおよびメタデーター(センサー読み取り値、タイムスタンプ、パブリッシャーID、QOS等のような)、ならびに時間またはアクセス権等に基づいて適用される、失効日、品質の低下(degradation)のような、追加の規則を指定することを可能にする。このインターフェースの登録シンタックスは、通知(即ち、変換または変形された発表あるいは上位イベント)に対して、それらのタイプまたは他の条件に基づいて、登録のためのパラメータを定める。尚、このインターフェースは、一層精巧な選択ステートメントのためにクエリー・シンタックスも定めることもできる(例えば、「センサーA」および「センサーB」の双方が特定のセンサー読み取り値を発表する場合、「イベントC」を1つ以上の特定のサブスクライバーに提供する)。
[0125] LSP登録サービスは、物理および論理センサーから入力を受信し、LSSロジックをホストするソフトウェア・コンポーネントである。この登録サービスは、サブスクライブした者(subscribed parties)に対してプッシュ・タイプまたはプル・タイプの通知をサポートし、接続されたセンサーの最新状態の一部または全部を提供することができる。任意の許可された者がパブリッシャーまたはサブスクライバーになるように登録することができるので、登録サービスはそれら自体がセンサーまたはサブスクライバーとして動作することができ、つまり、互いに接続されると、コンポーザビリティを可能にし、特殊化を許容し、性能、再送信等を補助する。
[0126] 読み取り/書き込みのためにLSP登録サービスにアクセスすることは、任意に、安全に行われる。無許可のセンサー、サブスクライバー・エージェント、または管理用アプリケーションは、イベントを発表することやイベントにサブスクライブすること、更にはLSSの変換および変形規則またはスクリプトを見ることも変更することも可能にさせない。センサー・ネットワークにわたって流れるデーターに対する傍受(例えば、ワイヤレス・スヌーピング)は、種々の実施形態において、クレーム・ベース認証、SSL、暗号化等を含むがこれらには限定されない従来のセキュリティ・プロトコルを使用して、防止される。
[0127] 3.0 論理センサー・サーバーの動作概要
[0128] 図1から図3までに関して以上で説明し、更に第1および2章において以上で示した詳細な説明を考慮したプロセスを、図4の全体的な動作流れ図によって示す。具体的には、図4は、LSSの種々の実施形態の内一部の動作を纏めた動作流れ図の一例を示す。尚、図4は、本明細書において説明したLSSの種々の実施形態の全ての網羅的表現であることを意図していないこと、そして図4において表される実施形態は説明の目的に限って示されることを注記しておく。
[0129] 更に、図4において破線または点線で表すことができるボックス、およびボックス間の相互接続線はいずれも、LSSの任意の実施形態または代替実施形態を表すこと、更にこれらの任意の実施形態または代替実施形態の内任意のものまたは全ては、本文書にわたって説明したLSSの他の実施形態と組み合わせて使用されてもよいことは、認められてしかるべきである。
[0130] 一般に、図4によって示されるように、LSSは、1つ以上の入力ソース(405)を登録し(400)、変換、変形、データー転送等の任意の組み合わせを表す発表を、LSSのイベント変換サービス(410)コンポーネントに供給することによって、動作を開始する。加えて、イベント変換サービス(410)から1つ以上の予め定められた出力イベント(435)を受信する1つ以上のサブスクライバー(420)を登録する(415)。
[0131] 次に、イベント変換サービス410は、入力ソースによって実行された任意の「アクション」に応答して、入力ソース(405)の内任意のものによって生成されたデーター報告およびイベントの任意の組み合わせを表す任意の発表を受信する(425)。一般に、直前の説明に関して、入力ソースによって実行される「アクション」は、センサー・データー(例えば、温度、ビデオ・データー、オーディオ・データー等)を取り込むこと、センサー動作に応答してイベントをトリガーすること(例えば、動きセンサーによる「動き検出」イベント)、インフラストラクチャー・イベント(例えば、「エレベーター・ボタン押下」)をトリガーすること、ソフトウェア・エージェント、アプリ等を使用して論理イベントを生成すること等を含む。
[0132] イベント変換サービス(410)によって受信された各発表に応答して、LSSは次に、先に説明したように、予め定められた発表変換、予め定められた発表変形、および予め定められた発表転送アクション(例えば、1つのセンサーからの温度読み取り値をサブスクライブしたデバイスに渡すまたは転送する)の任意の組み合わせを実行することによって、1組の予め定められた出力イベント(435)からの出力イベントの内1つ以上を生成(430)またはトリガーする。次いで、任意の発表に応答してイベント変換サービス(410)によって生成された任意の出力イベントを、これらの特定の出力イベントを受信するために登録されている任意のサブスクライバーに提供する(440)。次いで、各サブスクライバーは、イベント変換サービス(410)から受信した任意の出力イベントにローカルに応答し(445)、任意に他の入力ソースとして動作し(405)、サブスクライバーによって受信された出力イベントに応答して生成またはトリガーされた新たなイベントを発表または再発表する。
[0133] 加えて、種々の実施形態において、任意に入力ソースおよびサブスクライバーを登録し(400および415)、入力ソース(405)の発表、イベント変換サービス(410)によって実行された変換、種々の予め定められた出力イベント(435)を選択またはカスタム化し、セキュリティ・レベルを設定し、信頼度レベルを設定または調節し、アプリをダウンロードし、情報発表または広告を受信するおよび/またはこれらに応答する等のために、任意のユーザー・インターフェース(450)が設けられる。更に、以上で説明したように、LSSまたはユーザーが仮想(ソフトウェア・ベースの)論理センサー、または特定のハードウェア(例えば、窓の日よけの開閉を自動化するためのハードウェア・メカニズム)と動作するように設計された種々のアプリをダウンロードし利用することを可能にするために、任意のアプリ・ストア(455)等が設けられる。更に、このようなアプリをハードウェアにバンドルし、アプリ・マーケットプレースまたは他のソースを介して入手することができる。
[0134] 4.0 動作環境例
[0135] 本明細書において説明したLSSは、複数のタイプの汎用または特殊目的計算システム環境または構成において動作する。図5は、本明細書において説明したLSSの種々の実施形態およびエレメントを実現することができる汎用コンピューター・システムの簡略化した例を示す。尚、図5において破線または点線で表されたボックスはいずれも、簡略化した計算デバイスの代替実施形態を表すこと、そしてこれらの代替実施形態の内任意のものまたは全ては、以下で説明するように、本文書にわたって説明した他の代替実施形態と組み合わせて使用されてもよいことは、認められてしかるべきである。
[0136] 例えば、図5は、種々のパブリッシャーおよび/またはサブスクライバー590と通信可能な、簡略化した計算デバイス500を示す全体的なシステム図を示す。このような計算デバイスは、典型的に、少なくとも何らかの最小限の計算処理能力を有するデバイスにおいて見出すことができ、パーソナル・コンピューター、サーバー・コンピューター、ハンドヘルド計算デバイス、ラップトップまたは移動体コンピューター、タブレット、セル・フォンおよびPDAのような通信デバイス、マルチプロセッサー・システム、マイクロプロセッサー・ベースのシステム、セット・トップ・ボックス、プログラマブル消費者用電子機器、ネットワークPC、ミニコンピューター、メインフレーム・コンピューター、オーディオまたはビデオ・メディア・プレーヤー等が含まれるが、これらに限定されるのではない。
[0137] LSSを実現するのに適した計算デバイスは、基本的な計算動作を可能にするのに十分な計算処理能力およびシステム・メモリーを有するデバイスを含む。具体的には、図5によって示されるように、計算処理能力は、全体的に、1つ以上の処理ユニット(1つまたは複数)510によって例示され、任意に1つ以上のGPU515を含み、これらのいずれかまたは双方はシステム・メモリー520と通信可能である。尚、汎用計算デバイスの処理ユニット(1つまたは複数)510は、DSP、VLIW、または他のマイクロコントローラーのような、特殊マイクロプロセッサーであってもよく、あるいは特殊なGPUベースのコアをマルチコアCPU内に含む、1つ以上の処理コアを有する従来のCPUも可能であることを注記しておく。
[0138] 加えて、図5の簡略化した計算デバイスは、例えば、通信インターフェース530のような他のコンポーネントも含んでもよい。また、図5の簡略化した計算デバイスは、1つ以上の従来のコンピューター入力デバイス540(例えば、ポインティング・デバイス、キーボード、オーディオ入力デバイス、ビデオ入力デバイス、触覚入力デバイス、有線またはワイヤレス・データー送信を受信するデバイス等)も含んでも良い。また、図5の簡略化した計算デバイスは、例えば、1つ以上の従来のコンピューター出力デバイス550(例えば、ディスプレイ・デバイス(1つまたは複数)555、オーディオ出力デバイス、ビデオ出力デバイス、有線またはワイヤレス・データー送信(data transmissions)を送信するデバイス等)のような他の任意のコンポーネントも含んでも良い。尚、汎用コンピューターの典型的な通信インターフェース530、入力デバイス540、出力デバイス550、および記憶デバイス560は、当業者には周知であり、ここでは詳細に説明しない。
[0139] また、図5の簡略化した計算デバイスは、種々のコンピューター読み取り可能媒体も含んでもよい。コンピューター読み取り可能媒体は、記憶デバイス560を介して計算デバイス500によってアクセスすることができる任意の入手可能な媒体とすることができ、コンピューター読み取り可能またはコンピューター実行可能命令、データー構造、プログラム・モジュール、あるいは他のデーターというような情報の格納のための、リムーバブル570および/または非リムーバブル580のいずれかである揮発性および不揮発性媒体の双方を含む。一例として、そして限定ではなく、コンピューター読み取り可能媒体は、コンピューター記憶媒体および通信媒体を含む。コンピューター記憶媒体は、DVD、CD、フロッピー(登録商標)・ディスク、テープ・ドライブ、ハード・ドライブ、光ドライブ、ソリッド・ステート・メモリー・ドライブ、RAM、ROM、EEPROM、フラッシュ・メモリーまたは他のメモリー技術、磁気カセット、磁気テープ、磁気ディスク・ストレージまたは他の磁気記憶デバイス、あるいは所望の情報を格納するために使用することができ1つ以上の計算デバイスによってアクセスすることができる任意の他のデバイスというような、コンピューターまたは機械読み取り可能媒体あるいは記憶デバイスを含むが、これらに限定されるのではない。
[0140] コンピューター読み取り可能またはコンピューター実行可能命令、データー構造、プログラム・モジュール等のような情報の格納は、種々の前述した通信媒体の内任意のものを使用して1つ以上の変調データー信号または搬送波、あるいは他の移送メカニズムまたは通信プロトコルをエンコードすることによって遂行することもでき、任意の有線またはワイヤレス情報配信メカニズムを含む。尚、「変調データー信号」または「搬送波」という用語は、一般に、情報を信号内にエンコードするようなやり方でその特性の1つ以上が設定または変化させられた信号を指すことを注記しておく。例えば、通信媒体は、有線ネットワーク、または1つ以上の変調データー信号を搬送する直接有線接続のような有線媒体と、音響、RF、赤外線、レーザー、ならびに1つ以上の変調データー信号または搬送波を送信および/または受信する他のワイヤレス媒体のようなワイヤレス媒体とを含む。以上の内任意のものの組み合わせも、通信媒体の範囲内に含まれてしかるべきである。
[0141] 更に、本明細書において説明したLSSの種々の実施形態の一部または全部を具体化するソフトウェア、プログラム、および/またはコンピューター・プログラム製品、あるいはその一部は、コンピューターまたは機械読み取り可能媒体または記憶デバイスと、コンピューター実行可能命令または他のデーター構造という形態の通信媒体との任意の所望の組み合わせから、格納され、受信され、送信され、または読み取られてもよい。
[0142] 最後に、本明細書において説明したLSSは、更に、計算デバイスによって実行される、プログラム・モジュールのような、コンピューター実行可能命令という一般的なコンテキストで説明することもできる。一般に、プログラム・モジュールは、ルーチン、プログラム、オブジェクト、コンポーネント、データー構造等を含み、特定のタスクを実行するか、または特定の抽象データー型を実装する。また、本明細書において説明した実施形態は、分散型計算環境においても実施することができる。分散型計算環境では、タスクは、1つ以上の通信ネットワークを介してリンクされた、1つ以上のリモート処理デバイスによって、または1つ以上のデバイスのクラウド内部で実行される。分散型計算環境では、プログラム・モジュールは、メディア記憶デバイスを含む、ローカルおよびリモート双方のコンピューター記憶媒体に配置されてもよい。更にまた、前述の命令は、部分的にまたは全体的に、プロセッサーを含んでも含まなくてもよい、ハードウェア論理回路として実現することもできる。
[0143] 以上のLSSの説明は、例示および説明の目的に限って提示された。これは、網羅的であることも、特許請求する主題を開示した形態そのものに限定することも意図していない。以上の教示を参照すれば、多くの変更および変形が可能である。更に、前述の代替実施形態の内任意のものまたは全ては、LSSの追加の混成実施形態を形成するのに望まれる任意の組み合わせでも使用できることは認められてしかるべきである。本発明の範囲は、詳細な説明によって限定されるのではなく、以下に添付する特許請求の範囲によって限定されることを意図している。

Claims (10)

  1. イベント・データーを変換し共有するコンピューター実装方法であって、
    計算デバイスを使用して、
    変換サービスに発表するために複数の入力ソースを登録し、
    前記変換サービスから1つ以上の予め定められた出力イベントを受けるために複数のサブスクライバーを登録し、
    前記登録された入力ソースの1つ以上が、前記入力ソースによって実行された1つ以上のアクションに応答して、1つ以上の発表を前記変換デバイスに供給し、各発表がデーター報告およびイベントの任意の組み合わせを表し、
    前記変換サービスによって受けた任意の発表に対して、予め定められた発表変換、予め定められた発表変形、および予め定められた発表転送アクションの任意の組み合わせを実行することによって、前記出力イベントの1つ以上をトリガーし、
    前記変換サービスが任意の出力イベントをトリガーしたときはいつもで、当該出力イベントを、当該出力イベントを受けるために登録された任意のサブスクライバーに供給するためのプロセス・アクションを実行することを含む、コンピューター実装方法。
  2. 請求項1記載のコンピューター実装方法において、各サブスクライバーが、任意の受けた出力イベントにローカルに応答する、コンピューター実装方法。
  3. 請求項1記載のコンピューター実装方法において、前記入力ソースの1つ以上が、ソフトウェア・ベースのアプリの形態とした論理センサーである、コンピューター実装方法。
  4. 請求項1記載のコンピューター実装方法において、前記入力ソースの1つ以上が、当該入力ソースの1つ以上の発表と組み合わせて、信頼度レベルを提供する、コンピューター実装方法。
  5. 請求項4記載のコンピューター実装方法において、前記出力イベントの1つ以上が、1つ以上の対応する発表の前記信頼度レベルに基づいてトリガーされる、コンピューター実装方法。
  6. 請求項1記載のコンピューター実装方法であって、更に、前記サブスクライバーの1つ以上を入力ソースとして登録するプロセス・アクションを含む、コンピューター実装方法。
  7. イベント・データーを変換し配信するシステムであって、
    変換、変形、およびデーター転送の任意の組み合わせを表す発表をイベント変換デバイスに供給するために、1つ以上の入力ソースを登録するデバイスと、
    前記イベント変換デバイスから1つ以上の予め定められた出力イベントを受けるために、1つ以上のサブスクライバーを登録するデバイスと、
    任意の登録された入力ソースから受けた任意の発表に応答して、予め定められた発表変換、予め定められた発表変形、および予め定められた発表転送アクションの任意の組み合わせを使用して、前記1組の予め定められた出力イベントからの出力イベントの内1つ以上をトリガーするために前記イベント変換デバイスを使用し、
    前記イベント変換デバイスによってトリガーされた任意の出力イベントを、これらの特定の出力イベントを受けるために登録された任意のサブスクライバーに供給するデバイスと、
    を含む、システム。
  8. 請求項7記載のシステムにおいて、
    前記入力ソースの1つ以上が、当該入力ソースの1つ以上の発表と組み合わせて、信頼度レベルを提供し、
    前記出力イベントの1つ以上が、1つ以上の対応する発表の前記信頼度レベルに基づいてトリガーされる、システム。
  9. 請求項7記載のシステムであって、更に、前記サブスクライバーの1つ以上を入力ソースとして登録することを含み、入力ソースとして登録された前記サブスクライバーの1つ以上が、これらのサブスクライバーによって供給される前記出力イベントの1つ以上に応答して、新たな発表を前記イベント変換デバイスに供給する、システム。
  10. 情報を共有するためのコンピューター実行可能命令が格納されているコンピューター読み取り可能媒体であって、前記命令が、
    変換、変形、およびデーター転送の任意の組み合わせを表す発表をイベント変換サービスに供給するために、1つ以上の入力ソースを登録するステップと、
    前記イベント変換サービスから1つ以上の予め定められた出力イベントを受けるために、1つ以上のサブスクライバーを登録するステップと、
    任意の登録された入力ソースから受けた任意の発表に応答して、予め定められた発表変換、予め定められた発表変形、および予め定められた発表転送アクションの任意の組み合わせを使用して、前記1組の予め定められた出力イベントからの出力イベントの内1つ以上をトリガーするために前記イベント変換サービスを使用するステップと、
    前記イベント変換サービスによってトリガーされた任意の出力イベントを、これらの特定の出力イベントを受けるために登録された任意のサブスクライバーに供給するステップと、
    前記イベント変換サービスから受けた任意の出力イベントに対して、各サブスクライバーにローカルに応答させるステップと、
    を含む方法を計算デバイスに実行させる、コンピューター読み取り可能命令。
JP2015541896A 2012-11-07 2013-11-07 論理センサー・プラットフォーム用の論理センサー・サーバー Pending JP2016503539A (ja)

Applications Claiming Priority (3)

Application Number Priority Date Filing Date Title
US13/670,633 US20140128994A1 (en) 2012-11-07 2012-11-07 Logical sensor server for logical sensor platforms
US13/670,633 2012-11-07
PCT/US2013/068969 WO2014074728A1 (en) 2012-11-07 2013-11-07 Logical sensor server for logical sensor platforms

Publications (2)

Publication Number Publication Date
JP2016503539A true JP2016503539A (ja) 2016-02-04
JP2016503539A5 JP2016503539A5 (ja) 2016-12-22

Family

ID=49640196

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2015541896A Pending JP2016503539A (ja) 2012-11-07 2013-11-07 論理センサー・プラットフォーム用の論理センサー・サーバー

Country Status (6)

Country Link
US (1) US20140128994A1 (ja)
EP (1) EP2917793A1 (ja)
JP (1) JP2016503539A (ja)
KR (1) KR20150082287A (ja)
CN (1) CN104797991A (ja)
WO (1) WO2014074728A1 (ja)

Cited By (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022224322A1 (ja) * 2021-04-19 2022-10-27 日本電信電話株式会社 データ処理システム、データ提供システム、イベント情報生成装置、データ処理装置、データ処理方法、及びプログラム

Families Citing this family (16)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US9958860B2 (en) * 2014-05-01 2018-05-01 Rockwell Automation Technologies, Inc. Systems and methods for broadcasting data and data tags associated with an industrial automation system
US9293029B2 (en) * 2014-05-22 2016-03-22 West Corporation System and method for monitoring, detecting and reporting emergency conditions using sensors belonging to multiple organizations
US10057077B2 (en) 2014-10-29 2018-08-21 Xiaomi Inc. Method and server for controlling smart devices based on predefined scenario mode
CN104394044B (zh) * 2014-10-29 2018-02-02 小米科技有限责任公司 自定义智能设备场景模式的方法和装置
US10985937B2 (en) 2015-02-05 2021-04-20 Apple Inc. Delegation or revocation of trigger execution in an automated environment
TWI556169B (zh) * 2015-03-24 2016-11-01 溫瓌岸 泛用型多功能感測器服務平台
FR3038096A1 (fr) * 2015-06-23 2016-12-30 Orange Partage de donnees d'evenements entre plusieurs plateformes de service
CN107851046B (zh) * 2015-07-31 2022-02-25 苹果公司 自动化环境中触发器执行的委托
US10419540B2 (en) 2015-10-05 2019-09-17 Microsoft Technology Licensing, Llc Architecture for internet of things
US10347047B2 (en) * 2015-11-25 2019-07-09 Google Llc Trigger regions
US11863509B2 (en) * 2015-12-18 2024-01-02 Amazon Technologies, Inc. Publish-subscribe message transformation
WO2018038732A1 (en) * 2016-08-26 2018-03-01 Rf Digital Corporation Low latency and power efficient data transmission between a sensor and server computer
US11626010B2 (en) * 2019-02-28 2023-04-11 Nortek Security & Control Llc Dynamic partition of a security system
CN110515622B (zh) * 2019-08-28 2023-03-31 百度在线网络技术(北京)有限公司 按钮状态的控制方法、装置、电子设备及存储介质
CN113326427A (zh) * 2020-11-17 2021-08-31 崔海燕 基于大数据定位的业务推送配置更新方法及云计算中心
EP4297347A1 (en) * 2022-06-21 2023-12-27 Siemens Aktiengesellschaft A system including a communication bus for data transmission and method for operating a communication bus

Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20030233155A1 (en) * 2002-06-18 2003-12-18 Bellsouth Intellectual Property Corporation Learning device interaction rules
US20110050417A1 (en) * 2000-03-24 2011-03-03 Piccioni Robert L Method and System for Situation Tracking and Notification
JP2012040665A (ja) * 2010-08-23 2012-03-01 Seiko Epson Corp ロボット、ロボットの駆動方法

Family Cites Families (7)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US6571140B1 (en) * 1998-01-15 2003-05-27 Eutech Cybernetics Pte Ltd. Service-oriented community agent
US7475246B1 (en) * 1999-08-04 2009-01-06 Blue Spike, Inc. Secure personal content server
US6823223B2 (en) * 1999-12-30 2004-11-23 Microsoft Corporation Method and apparatus for providing distributed scene programming of a home automation and control system
US20070043803A1 (en) * 2005-07-29 2007-02-22 Microsoft Corporation Automatic specification of semantic services in response to declarative queries of sensor networks
KR20090027000A (ko) * 2007-09-11 2009-03-16 한국전자통신연구원 상황 인식 시스템 환경에서 발생한 이벤트 로그에 기초하여사용자 행동 패턴을 구축하는 장치 및 방법
US20090134982A1 (en) * 2007-11-27 2009-05-28 Alertus Technologies, Llc System and method for distributing alert notifications
WO2012119253A1 (en) * 2011-03-08 2012-09-13 Home Monitor Inc. Area monitoring method and system

Patent Citations (3)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
US20110050417A1 (en) * 2000-03-24 2011-03-03 Piccioni Robert L Method and System for Situation Tracking and Notification
US20030233155A1 (en) * 2002-06-18 2003-12-18 Bellsouth Intellectual Property Corporation Learning device interaction rules
JP2012040665A (ja) * 2010-08-23 2012-03-01 Seiko Epson Corp ロボット、ロボットの駆動方法

Cited By (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
WO2022224322A1 (ja) * 2021-04-19 2022-10-27 日本電信電話株式会社 データ処理システム、データ提供システム、イベント情報生成装置、データ処理装置、データ処理方法、及びプログラム
JP7193035B1 (ja) * 2021-04-19 2022-12-20 日本電信電話株式会社 データ処理システム、データ提供システム、イベント情報生成装置、データ処理装置、データ処理方法、及びプログラム

Also Published As

Publication number Publication date
US20140128994A1 (en) 2014-05-08
EP2917793A1 (en) 2015-09-16
WO2014074728A1 (en) 2014-05-15
CN104797991A (zh) 2015-07-22
KR20150082287A (ko) 2015-07-15

Similar Documents

Publication Publication Date Title
JP2016503539A (ja) 論理センサー・プラットフォーム用の論理センサー・サーバー
US10768644B2 (en) Camera data access based on subscription status
US10558323B1 (en) Systems and methods for smart home automation using a multifunction status and entry point icon
US20210216787A1 (en) Methods and Systems for Presenting Image Data for Detected Regions of Interest
US11721107B2 (en) Systems and methods for locating image data for selected regions of interest
US11599259B2 (en) Methods and systems for presenting alert event indicators
US20190058985A1 (en) Methods and Apparatus for Using Smart Environment Devices Via Application Program Interfaces
US20180330169A1 (en) Methods and Systems for Presenting Image Data for Detected Regions of Interest
US10601604B2 (en) Data processing systems and methods for smart hub devices
US11082701B2 (en) Methods and devices for dynamic adaptation of encoding bitrate for video streaming
WO2018208365A1 (en) Methods and systems for presenting image data for detected regions of interest
Bansal et al. IoT Applications in Smart Homes

Legal Events

Date Code Title Description
A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20161104

A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20161104

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20171030

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20171031

A02 Decision of refusal

Free format text: JAPANESE INTERMEDIATE CODE: A02

Effective date: 20180607