説明

通知制御方法、情報処理装置及び通知制御プログラム

【課題】不要な通知を削減することを課題とする。
【解決手段】イベント通知装置10は、サービサ50へ通知したセンサ値と、前回通知したセンサ値からの変化量及び前回通知からの経過時間と、サービサ50によって所定の処理が実行されたか否かを示す実行結果とを対応付けて記憶する。その上で、イベント通知装置10は、センサ30によってセンシングされるセンサ値を取得する。さらに、イベント通知装置10は、センサ値が取得された場合に、サービサ50へ前回通知したセンサ値からの変化量及び前回通知からの経過時間を算出する。さらに、イベント通知装置10は、取得されたセンサ値と算出された変化量及び経過時間との組合せに基づいて先の記憶内容を参照し、サービサ50に通知を実行するか、あるいは通知を保留するかを制御する。

【発明の詳細な説明】
【技術分野】
【0001】
本発明は、通知制御方法、情報処理装置及び通知制御プログラムに関する。
【背景技術】
【0002】
温度、湿度、圧力や物理量などの状態を採取するセンサが普及している。かかるセンサの普及に伴って、センサによって採取された状態に変化があった場合に、ハードウエアの制御やソフトウエアの実行によってサービスを提供するサービス提供装置にセンシング情報をイベントとして通知するイベント通知システムが実用化されつつある。
【0003】
このとき、センサによって状態の変化が検知される度にイベントをサービス提供装置へ通知することとしたのでは、センサ及びサービス提供装置の間でのネットワークトラフィックが増大する。このため、イベント通知システムでは、サービス提供装置にイベントを通知する通知条件の指定を予め受け付けておき、センサによって検知された状態の変化が指定の通知条件を満たす場合に限ってイベントを通知する。これによって、サービス提供装置にとって不要なイベントの通知を削減する。
【先行技術文献】
【特許文献】
【0004】
【特許文献1】特開2011−49668号公報
【特許文献2】特開2006−246065号公報
【特許文献3】特開2006−236346号公報
【発明の概要】
【発明が解決しようとする課題】
【0005】
しかしながら、上記の従来技術には、以下に説明するように、不要な通知を限定的にしか削減できないという問題がある。
【0006】
これを説明すると、将来的には、センサが高性能化されるのに伴ってセンサによってセンシングされる値も詳細化することが予想されるが、センシングされる値が詳細化された場合には、センサによって状態の変化が検知される機会も増加する。このため、サービス提供装置がイベントの通知に連携してサービスを提供中である場合には、提供中のサービスの実行が終了するまでは新たにイベントが通知されてもサービスは提供できない。それにもかかわらず、上記の従来技術では、センサによって採取されるセンシング情報が通知条件を満たす限り、後続のイベントがサービス提供装置へ通知され続ける。
【0007】
このように、上記の従来技術では、センシング情報が通知条件を満たすか否かを画一的に判定する結果、サービスの提供に寄与しないイベントがサービス提供装置へ通知されてしまうので、不要なイベント通知を限定的にしか削除することができない。
【0008】
開示の技術は、上記に鑑みてなされたものであって、不要な通知を削減できる通知制御方法、情報処理装置及び通知制御プログラムを提供することを目的とする。
【課題を解決するための手段】
【0009】
本願の開示する通知制御方法は、コンピュータが、センサによってセンシングされるセンサ値を取得する処理を実行する。前記コンピュータが、前記センサ値が取得された場合に、通知先の装置へ前回通知したセンサ値からの変化量及び前回通知からの経過時間を算出する処理を実行する。前記コンピュータが、取得されたセンサ値と算出された変化量及び経過時間との組合せに基づいて実行結果記憶部を参照し、前記通知先の装置に通知を実行するか、あるいは通知を保留するかを制御する処理を実行する。前記実行結果記憶部は、前記通知先の装置へ通知したセンサ値と、前回通知したセンサ値からの変化量及び前回通知からの経過時間と、前記通知先の装置によって所定の処理が実行されたか否かを示す実行結果とを対応付けて記憶する。
【発明の効果】
【0010】
本願の開示する通知制御方法の一つの態様によれば、不要な通知を削減できるという効果を奏する。
【図面の簡単な説明】
【0011】
【図1】図1は、実施例1に係るイベント通知システムのシステム構成を示す図である。
【図2】図2は、実施例1に係るイベント通知装置の機能的構成を示すブロック図である。
【図3】図3は、通知履歴記憶部に記憶される情報の構成例を示す図である。
【図4】図4は、実行結果記憶部に記憶される情報の構成例を示す図である。
【図5】図5は、センサから取得されるセンシング情報の一例を示す図である。
【図6】図6は、実施例1に係る通知制御処理の手順を示すフローチャートである。
【図7】図7は、実施例1及び実施例2に係る通知制御プログラムを実行するコンピュータの一例について説明するための図である。
【発明を実施するための形態】
【0012】
以下に、本願の開示する通知制御方法、情報処理装置及び通知制御プログラムの実施例を図面に基づいて詳細に説明する。なお、この実施例は開示の技術を限定するものではない。そして、各実施例は、処理内容を矛盾させない範囲で適宜組み合わせることが可能である。
【実施例1】
【0013】
[システム構成]
まず、本実施例に係るイベント通知システムのシステム構成について説明する。図1は、実施例1に係るイベント通知システムのシステム構成を示す図である。図1の例では、センサ30によって検知された温度変化をイベントとしてサービサ50へ通知し、サービサ50の支配下にある機器を制御する場合を想定する。
【0014】
図1に示すように、イベント通知システム1には、センサ30と、サービサ50と、イベント通知装置10とが収容される。図1の例では、センサ30及びサービサ50を1つずつ収容する場合を例示したが、任意の数のセンサ30及びサービサ50が収容される場合に適用することができる。
【0015】
これらセンサ30とイベント通知装置10との間は、センサネットワーク3を介して通信可能に接続される。また、サービサ50とイベント通知装置10との間は、ネットワーク5を介して通信可能に接続される。かかるセンサネットワーク3やネットワーク5には、インターネット、LAN(Local Area Network)やVPN(Virtual Private Network)などの各種の通信網を採用できる。これらセンサネットワーク3やネットワーク5は、有線または無線のいずれのリンクであってもかまわない。
【0016】
このうち、センサ30は、温度、湿度、圧力や物理量などの状態をセンシングするセンサデバイスである。かかるセンサ30の一態様としては、温度を計測する温度センサ、湿度を計測する湿度センサ、温度および湿度を計測する温湿度センサなどの環境センサを採用できる。なお、ここでは、センサ30の一例として環境センサを採用する場合を例示するが、GPS(Global Positioning System)センサ、加速度センサやジャイロセンサなどの任意のセンサデバイスを採用することができる。
【0017】
これらセンサ30は、自装置に搭載された通信機能、あるいは自装置が内蔵、付設または接続される機器の通信機能を用いて、センシング情報をイベント通知装置10へ送信する。例えば、センサ30は、センシングした温度に変化があった場合に、センサ値である温度を始めとするセンシング情報、例えばセンサを識別するためのセンサIDや温度が計測された計測時刻などを、センサネットワーク3を介してイベント通知装置10へ送信する。なお、センサ30が内蔵、付設または接続される機器の一例としては、パーソナルコンピュータや周辺機器、AV機器、携帯電話機やPHS(Personal Handyphone System)の携帯端末、家電製品などの各種の機器が挙げられる。
【0018】
サービサ50は、自装置の支配下にある機器を制御することによってサービスを提供するサービス提供装置である。ここでは、一例として、サービサ50がクーラーやエアコンディショナーなどの空調装置の最適制御を、空調装置から離れた場所に設置された温度センサーの温度に連携して実行する場合を想定する。例えば、サービサ50は、イベント通知装置10からイベントが通知された場合にそのイベントの通知を介して得た温度が所定の閾値以上であるならば、空調装置の空調運転をON状態にすることによって空調装置の冷房を所定の期間にわたって作動させる。一方、サービサ50は、イベント通知装置10からのイベントの通知を介して得た温度が所定の閾値未満である場合には、空調装置の冷房を作動させない。
【0019】
このように、サービサ50は、所定の閾値以上の温度である場合に限って冷房を作動させることによって省電力サービスを提供する。なお、サービサ50が機器を制御するイベントの条件は、サービサ50の管理者によって任意の条件が設定される。
【0020】
イベント通知装置10は、センサ30によって検知された状態変化をイベントとしてサービサ50へ通知するサーバ等の情報処理装置である。一態様としては、イベント通知装置10は、センサ30からセンシング情報を受信した場合に、当該センサ30からの状態変化をイベントとして通知するように予め登録されたサービサ50に対し、イベントを通知する。このとき、イベント通知装置10は、センサ30によって状態変化が検知されたからといって無条件にサービサ50へイベントを通知する訳ではない。
【0021】
すなわち、本実施例に係るイベント通知装置10は、サービサ50へ通知したセンサ値と、前回通知したセンサ値からの変化量及び前回通知からの経過時間と、サービサ50によって所定の処理が実行されたか否かを示す実行結果とを対応付けて記憶する。その上で、イベント通知装置10は、センサ30によってセンシングされるセンサ値を取得する。さらに、イベント通知装置10は、センサ値が取得された場合に、サービサ50へ前回通知したセンサ値からの変化量及び前回通知からの経過時間を算出する。さらに、イベント通知装置10は、取得されたセンサ値と算出された変化量及び経過時間との組合せに基づいて先の記憶内容を参照し、サービサ50に通知を実行するか、あるいは通知を保留するかを制御する。
【0022】
このように、イベント通知装置10は、センサ30から得たセンサ値、前回通知時のセンサ値からの変化量、前回通知からの経過時間の組合せが同じ履歴にてサービス提供に関する処理が実行されたか否かによってサービサ50への通知を実行または保留する。このため、イベント通知装置10では、過去に同様の局面でサービサ50へイベントを通知して処理が実行されなかった場合にイベントの通知を保留できる。それゆえ、イベント通知装置10では、サービサ50からイベントに連携してサービスに関係する処理を実行する条件やその処理の実行状況が開示されておらずとも、サービサ50で処理が実行される可能性が低い局面ではイベントの通知を抑制できる。
【0023】
したがって、イベント通知装置10によれば、不要なイベントの通知を削減することができる。さらに、イベント通知装置10では、サービサ50で処理が実行される可能性が高い局面ではサービサ50にイベントを通知できるので、サービサ50へのイベントを通知するタイミングを最適化なタイミングに近づけることもできる。
【0024】
[イベント通知装置の構成]
続いて、本実施例に係るイベント通知装置の機能的構成について説明する。図2は、実施例1に係るイベント通知装置の機能的構成を示すブロック図である。なお、イベント通知装置10は、図2に示す機能部以外にも既知の情報処理装置が有する各種の機能部、例えば各種の入力デバイスや音声出力デバイスなどの機能を有するものとする。
【0025】
図2に示すように、イベント通知装置10は、通知先登録部11と、通知先記憶部12と、取得部13と、センシング情報記憶部14と、通知履歴記憶部15と、算出部16と、実行結果登録部17と、実行結果記憶部18と、通知制御部19とを有する。
【0026】
このうち、通知先登録部11は、センサ30によって検知された温度変化をイベントとして通知する通知先の装置を後述の通知先記憶部12へ登録する処理部である。一態様としては、通知先登録部11は、イベント通知装置10がセンシング情報を収集するセンサ30のうちイベントの通知対象とするセンサ30の指定をサービサ50から受け付ける。そして、通知先登録部11は、サービサ50から指定を受け付けたセンサ30のセンサIDに当該サービサ50のサービサIDを対応付けて後述の通知先記憶部12へ登録する。
【0027】
通知先記憶部12は、イベントの通知先の装置を記憶する記憶部である。一例としては、通知先記憶部12は、サービサ50からイベントの通知対象とするセンサ30の指定をサービサ50から受け付けた場合に、通知先登録部11によって通知先の装置が登録される。他の一例としては、通知先記憶部12は、イベントの通知先を判別するために、後述の通知制御部19によって参照される。
【0028】
かかる通知先記憶部12の一態様としては、センサ30のセンサIDごとにサービサ50のサービサIDが対応付けられたデータが記憶される。ここで、以下では、センサ30のセンサID及びサービサ50のサービサIDが1対1に対応付けられている場合を想定して以下の説明を行う。なお、ここでは、センサID及びサービサIDが1対1に対応付けられている場合を想定するが、同じセンサIDに複数のサービサIDが対応付けられることとしてもかまわない。例えば、同じセンサIDに複数のサービサIDが対応付けられている場合には、後述の取得部13によって1つのセンサ30からセンシング情報が取得された場合に複数のサービサへイベントが通知される場合もある。また、ここでは、センサ30及びサービサ50の対応付けをセンサID及びサービサIDを用いて行う場合を例示したが、両者のアドレス等を用いてセンサ30及びサービサ50の対応付けを行うこともできる。
【0029】
取得部13は、センサ30からセンシング情報を取得する処理部である。一態様としては、取得部13は、センサID、計測時刻やセンサ値などのセンシング情報をセンサネットワーク3を介して取得する。その上で、取得部13は、センサ30から取得したセンシング情報を後述のセンシング情報記憶部14へ登録するとともに、センシング情報を後述の算出部16へ出力する。なお、本実施例では、センサ値に変化があった場合にセンサ30からセンシング情報を取得する場合を想定するが、センサ30から取得した温度に変化があったか否かを取得部13によって判定させることとしてもかまわない。
【0030】
センシング情報記憶部14は、センシング情報を記憶する記憶部である。一例としては、センシング情報記憶部14は、センサ30からセンシング情報が取得された場合に、取得部13によってセンシング情報が登録される。かかるセンシング情報記憶部14の一態様としては、センサIDごとに計測時刻および温度が対応付けられたデータが記憶される。なお、センシング情報記憶部14には、上記の計測時刻や温度以外にも、センサ30の設置場所等の他の情報を併せて登録することもできる。
【0031】
通知履歴記憶部15は、イベントの通知履歴を記憶する記憶部である。一例としては、通知履歴記憶部15は、前回通知したセンサ値からの変化量Δx及び前回通知からの経過時間Δtを算出する場合に、後述の算出部16によって参照される。他の一例としては、通知履歴記憶部15は、イベントがサービサ50へ通知された場合に、後述の通知制御部19によって通知履歴が登録される。
【0032】
かかる通知履歴記憶部15の一態様としては、サービサ50にイベントが通知された通知時刻およびサービサ50に通知された通知センサ値xが対応付けられたデータが記憶される。図3は、通知履歴記憶部15に記憶される情報の構成例を示す図である。図3の例では、12時00分00秒にセンサ値が28℃である旨をイベント通知し、12時00分15秒にセンサ値が29℃である旨をイベント通知し、さらに、12時00分35秒にセンサ値が30℃である旨をイベント通知したことを示す。
【0033】
算出部16は、通知履歴記憶部15を参照して、前回にサービサ50へ通知したセンサ値からの変化量Δx及び前回にサービサ50へ通知してからの経過時間Δtを算出する処理部である。一態様としては、算出部16は、取得部13によってセンサ30からセンシング情報が取得された場合に、通知履歴記憶部15に記憶された通知時刻及び通知センサ値のうち最新の通知時刻及びその通知時刻に対応付けられた通知センサ値を読み出す。そして、算出部16は、取得部13によって取得されたセンシング情報に含まれるセンサ値と、通知履歴記憶部15から読み出した通知センサ値との間で差を計算することによって前回通知したセンサ値からの変化量Δxを算出する。さらに、算出部16は、取得部13によってセンシング情報が取得された時刻と、通知履歴記憶部15から読み出した通知時刻との間で差を計算することによって前回通知からの経過時間Δtを算出する。なお、上記の差を計算する場合には、今回取得したセンサ値から前回の通知センサ値を減算し、また、今回にセンシング情報が取得された時刻から前回の通知時刻を減算するのが好ましい。
【0034】
実行結果登録部17は、後述の通知制御部19によってイベントの通知が実行された場合に、イベントの通知に連携してサービスに関係する処理がサービサ50によって実行されたか否かを示す実行結果を後述の実行結果記憶部18へ登録する処理部である。一態様としては、イベント通知装置10及びサービサ50の通信がHTTP(HyperText Transfer Protocol)によってなされる場合には、後述の通知制御部19によってセンサ値を含むイベントがリクエストとして通知される。かかるリクエストに対して、サービサ50によって実行結果が埋め込まれたレスポンスが実行結果登録部17へ返信される。実行結果登録部17は、取得部13によって取得されたセンサ値と、算出部16によって算出された前回通知したセンサ値からの変化量Δx及び前回通知からの経過時間Δtとに対応付けて、サービサ50から返信された実行結果を実行結果記憶部18へ登録する。
【0035】
実行結果記憶部18は、イベントの通知に連携してサービスに関係する処理がサービサ50によって実行されたか否かを示す実行結果を記憶する記憶部である。一例としては、実行結果記憶部18は、サービサ50にイベントの通知を実行するか、あるいは通知を保留するかを判定するために、後述の通知制御部19によって参照される。他の一例としては、実行結果記憶部18は、サービサ50にイベントが通知された場合に、実行結果登録部17によって実行結果が登録される。
【0036】
かかる実行結果記憶部18の一態様としては、サービサ50へ通知したセンサ値と、前回通知したセンサ値からの変化量Δx及び前回通知からの経過時間Δtと、イベントの通知に連携してサービサ50によってサービスに関係する処理が実行されたか否かを示す実行結果とが対応付けられたデータが記憶される。
【0037】
図4は、実行結果記憶部18に記憶される情報の構成例を示す図である。例えば、図4に示す一番目のレコードは、センサ値xが29℃である旨のイベントが前回にイベントが通知されてから15秒後に通知され、前回にイベントが通知されてからの温度変化が+1℃であり、イベントの通知に連携して処理が実行されなかったことを意味する。図4に示す二番目のレコードは、センサ値xが30℃である旨のイベントが前回にイベントが通知されてから20秒後に通知され、前回にイベントが通知されてからの温度変化が+1℃であり、イベントの通知に連携して処理が実行されたことを意味する。
【0038】
ここで、図3及び図4を用いて、実行結果の登録方法について説明する。ここでは、イベント通知されたセンサ値が30℃以上である場合にサービサ50が空調装置の冷房を所定の期間にわたって作動させる場合を想定する。ただし、サービサ50が空調装置の冷房を制御中の場合には、制御が完了するまで空調装置を新たに制御することはできないので、後述の通知制御部19からのイベントの通知に実行結果「不実行」と返信するものとする。
【0039】
例えば、図3に示す(ロ)のように、12時00分15秒に後述の通知制御部19によってセンサ値「29℃」のイベントがサービサ50に通知された場合には、次のようにして実行結果が実行結果記憶部18へ登録される。具体的には、取得部13によって取得されたセンサ値「29℃」から図3に示す(イ)の通知センサ値「28℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+1℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「12時00分15秒」から図3に示す(イ)の通知時刻「12時00分00秒」を減算することによって前回通知からの経過時間Δtが「15秒」と算出される。そして、サービサ50から「不実行」が返信されたとしたとき、取得部13によって取得されたセンサ値x「29℃」と、算出部16によって算出されたセンサ値の変化量Δx「+1℃」及び経過時間Δt「15秒」に対応付けて、実行結果「不実行」が登録される。このようにして、図4に示す一番目のレコードが実行結果登録部17によって登録される。
【0040】
また、図3に示す(ハ)のように、12時00分35秒に後述の通知制御部19によってセンサ値「30℃」のイベントがサービサ50に通知された場合には、次のようにして実行結果が実行結果記憶部18へ登録される。具体的には、取得部13によって取得されたセンサ値「30℃」から図3に示す(ロ)の通知センサ値「29℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+1℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「12時00分35秒」から図3に示す(ロ)の通知時刻「12時00分15秒」を減算することによって前回通知からの経過時間Δtが「20秒」と算出される。そして、サービサ50から「実行」が返信されたとしたとき、取得部13によって取得されたセンサ値x「30℃」と、算出部16によって算出されたセンサ値の変化量Δx「+1℃」及び経過時間Δt「20秒」に対応付けて、実行結果「実行」が登録される。このようにして、図4に示す二番目のレコードが実行結果登録部17によって登録される。
【0041】
また、図3に示す(ホ)のように、12時10分05秒に後述の通知制御部19によってセンサ値「30℃」のイベントがサービサ50に通知された場合には、次のようにして実行結果が実行結果記憶部18へ登録される。具体的には、取得部13によって取得されたセンサ値「30℃」から図3に示す(ニ)の通知センサ値「28℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+2℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「12時10分05秒」から図3に示す(ニ)の通知時刻「12時10分00秒」を減算することによって前回通知からの経過時間Δtが「5秒」と算出される。そして、サービサ50から「不実行」が返信されたとしたとき、取得部13によって取得されたセンサ値x「30℃」と、算出部16によって算出されたセンサ値の変化量Δx「+2℃」及び経過時間Δt「5秒」に対応付けて、実行結果「不実行」が登録される。このようにして、図4に示す三番目のレコードが実行結果登録部17によって登録される。
【0042】
また、図3に示す(ト)のように、12時20分20秒に後述の通知制御部19によってセンサ値「30℃」のイベントがサービサ50に通知された場合には、次のようにして実行結果が後述の実行結果記憶部18へ登録される。具体的には、取得部13によって取得されたセンサ値「30℃」から図3に示す(ヘ)の通知センサ値「28℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+2℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「12時20分20秒」から図3に示す(ヘ)の通知時刻「12時20分00秒」を減算することによって前回通知からの経過時間Δtが「20秒」と算出される。そして、サービサ50から「実行」が返信されたとしたとき、取得部13によって取得されたセンサ値x「30℃」と、算出部16によって算出されたセンサ値の変化量Δx「+2℃」及び経過時間Δt「20秒」に対応付けて、実行結果「実行」が登録される。このようにして、図4に示す四番目のレコードが実行結果登録部17によって登録される。
【0043】
また、図3に示す(リ)のように、12時30分20秒に後述の通知制御部19によってセンサ値「31℃」のイベントがサービサ50に通知された場合には、次のようにして実行結果が実行結果記憶部18へ登録される。具体的には、取得部13によって取得されたセンサ値「31℃」から図3に示す(チ)の通知センサ値「30℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+1℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「12時30分20秒」から図3に示す(チ)の通知時刻「12時30分00秒」を減算することによって前回通知からの経過時間Δtが「20秒」と算出される。そして、サービサ50から「不実行」が返信されたとしたとき、取得部13によって取得されたセンサ値x「31℃」と、算出部16によって算出されたセンサ値の変化量Δx「+1℃」及び経過時間Δt「20秒」に対応付けて、実行結果「不実行」が登録される。このようにして、図4に示す五番目のレコードが実行結果登録部17によって登録される。
【0044】
図2の説明に戻り、通知制御部19は、イベントの通知制御を実行する処理部である。一態様としては、通知制御部19は、取得部13によって取得されたセンサ値xと算出部16によって算出されたセンサ値の変化量Δx及び経過時間Δtとの組合せに基づいて実行結果記憶部18を参照し、サービサ50に通知を実行するか、あるいは通知を保留するかを制御する。
【0045】
これを説明すると、通知制御部19は、取得部13によって取得されたセンサ値xと、算出部16によって算出されたセンサ値の変化量Δx及び経過時間Δtとの組合せに一致するレコードを実行結果記憶部18から検索する。そして、通知制御部19は、先の組合せに一致するレコードが実行結果記憶部18に存在する場合には、実行結果が「実行」であるか否かを判定する。このとき、先の組合せに一致するレコードの実行結果が「不実行」である場合には、過去に同様の局面でサービサ50へイベントを通知して処理が実行されなかったと推定できる。この場合には、通知制御部19は、サービサ50にイベントを通知したとしても、サービサ50によってサービスに関係する処理が実行される可能性が低いので、イベントの通知を保留する。
【0046】
一方、先の組合せに一致するレコードが実行結果記憶部18に存在しない場合には、過去に同様の局面でサービサ50へイベントを通知していないと推定できる。この場合には、通知制御部19は、次回以降に同じ局面でイベントを通知するか、あるいは保留するかを判定するために、サービサ50へイベントを通知する。また、先の組合せに一致するレコードの実行結果が「実行」である場合には、過去に同様の局面でサービサ50へイベントを通知して処理が実行されたと推定できる。この場合には、通知制御部19は、サービサ50によってサービスに関係する処理が実行される可能性が高いので、イベントの通知を実行する。このようにしてイベントの通知を実行した場合には、通知制御部19は、今回通知した通知センサ値および今回通知した通知時刻を通知履歴記憶部15へ追加登録する。
【0047】
ここで、図4及び図5を用いて、イベントの通知制御について説明する。図5は、センサ30から取得されるセンシング情報の一例を示す図である。なお、図5に示す(A)、(D)、(G)及び(J)のセンサ値は、サービサ50へイベントとして通知されるものとして以下の説明を行う。
【0048】
例えば、図5に示す(B)のように、13時00分15秒にセンサ30からセンサ値「29℃」が取得された場合には、次のようにしてイベントの通知が制御される。具体的には、取得部13によって取得されたセンサ値「29℃」から図5に示す(A)の通知センサ値「28℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+1℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「13時00分15秒」から図5に示す(A)の通知時刻「13時00分00秒」を減算することによって前回通知からの経過時間Δtが「15秒」と算出される。この場合には、センサ値x「29℃」、センサ値の変化量Δx「+1℃」及び経過時間Δt「15秒」の組合せと一致するレコードとして実行結果記憶部18の一番目のレコードが検索される。かかる一番目のレコードにおける実行結果は「不実行」であるので、図5に示す(B)のセンシング情報が取得されても、イベントの通知は保留される。
【0049】
また、図5に示す(C)のように、13時00分20秒にセンサ30からセンサ値「30℃」が取得された場合には、次のようにしてイベントの通知が制御される。この例では、図5に示す(B)のセンシング情報が取得された際にイベントが通知されていないので、図5に示す(A)の通知履歴との間でセンサ値の変化量Δx及び経過時間Δtの算出が実行される。具体的には、取得部13によって取得されたセンサ値「30℃」から図5に示す(A)の通知センサ値「28℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+2℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「13時00分20秒」から図5に示す(A)の通知時刻「13時00分00秒」を減算することによって前回通知からの経過時間Δtが「20秒」と算出される。この場合には、センサ値x「30℃」、センサ値の変化量Δx「+2℃」及び経過時間Δt「20秒」の組合せと一致するレコードとして実行結果記憶部18の四番目のレコードが検索される。かかる四番目のレコードにおける実行結果は「実行」であるので、図5に示す(C)のセンシング情報が取得された場合には、イベントの通知が実行される。
【0050】
また、図5に示す(E)のように、13時10分05秒にセンサ30からセンサ値「30℃」が取得された場合には、次のようにしてイベントの通知が制御される。具体的には、取得部13によって取得されたセンサ値「30℃」から図5に示す(D)の通知センサ値「28℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+2℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「13時10分05秒」から図5に示す(D)の通知時刻「13時10分00秒」を減算することによって前回通知からの経過時間Δtが「5秒」と算出される。この場合には、センサ値x「30℃」、センサ値の変化量Δx「+2℃」及び経過時間Δt「5秒」の組合せと一致するレコードとして実行結果記憶部18の三番目のレコードが検索される。かかる三番目のレコードにおける実行結果は「不実行」であるので、図5に示す(E)のセンシング情報が取得されても、イベントの通知は保留される。
【0051】
また、図5に示す(F)のように、13時10分20秒にセンサ30からセンサ値「30℃」が取得された場合には、次のようにしてイベントの通知が制御される。この例では、図5に示す(E)のセンシング情報が取得された際にイベントが通知されていないので、図5に示す(D)の通知履歴との間でセンサ値の変化量Δx及び経過時間Δtの算出が実行される。具体的には、取得部13によって取得されたセンサ値「30℃」から図5に示す(D)の通知センサ値「28℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+2℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「13時10分20秒」から図5に示す(D)の通知時刻「13時10分00秒」を減算することによって前回通知からの経過時間Δtが「20秒」と算出される。この場合には、センサ値x「30℃」、センサ値の変化量Δx「+2℃」及び経過時間Δt「20秒」の組合せと一致するレコードとして実行結果記憶部18の四番目のレコードが検索される。かかる四番目のレコードにおける実行結果は「実行」であるので、図5に示す(F)のセンシング情報が取得された場合には、イベントの通知が実行される。
【0052】
図5に示す(H)のように、13時20分20秒にセンサ30からセンサ値「30℃」が取得された場合には、次のようにしてイベントの通知が制御される。具体的には、取得部13によって取得されたセンサ値「30℃」から図5に示す(G)の通知センサ値「29℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+1℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「13時20分20秒」から図5に示す(G)の通知時刻「13時20分00秒」を減算することによって前回通知からの経過時間Δtが「20秒」と算出される。この場合には、センサ値x「30℃」、センサ値の変化量Δx「+1℃」及び経過時間Δt「20秒」の組合せと一致するレコードとして実行結果記憶部18の二番目のレコードが検索される。かかる二番目のレコードにおける実行結果は「実行」であるので、図5に示す(H)のセンシング情報が取得された場合には、イベントの通知が実行される。
【0053】
図5に示す(K)のように、13時30分20秒にセンサ30からセンサ値「31℃」が取得された場合には、次のようにしてイベントの通知が制御される。具体的には、取得部13によって取得されたセンサ値「31℃」から図5に示す(J)の通知センサ値「30℃」を減算することによって前回通知したセンサ値からの変化量Δxが「+1℃」と算出される。さらに、取得部13によってセンサ値が取得された時刻「13時30分20秒」から図5に示す(J)の通知時刻「13時30分00秒」を減算することによって前回通知からの経過時間Δtが「20秒」と算出される。この場合には、センサ値x「31℃」、センサ値の変化量Δx「+1℃」及び経過時間Δt「20秒」の組合せと一致するレコードとして実行結果記憶部18の五番目のレコードが検索される。かかる五番目のレコードにおける実行結果は「不実行」であるので、図5に示す(K)のセンシング情報が取得されても、イベントの通知は保留される。
【0054】
[処理の流れ]
次に、本実施例に係るイベント通知装置の処理の流れについて説明する。図6は、実施例1に係る通知制御処理の手順を示すフローチャートである。この通知制御処理は、イベント通知装置10の電源がON状態である限り、繰り返し実行される処理である。
【0055】
図6に示すように、センサ30からセンシング情報が取得されると(ステップS101肯定)、イベント通知装置10は、次のようにして前回通知したセンサ値からの変化量Δxを算出する(ステップS102)。すなわち、イベント通知装置10は、センシング情報に含まれるセンサ値から通知履歴記憶部15に記憶された最新の通知センサ値を減算することによって前回通知したセンサ値からの変化量Δxを算出する。
【0056】
続いて、イベント通知装置10は、センシング情報が取得された時刻から通知履歴記憶部15に記憶された最新の通知時刻を減算することによって前回通知からの経過時間Δtを算出する(ステップS103)。
【0057】
その上で、イベント通知装置10は、ステップS101で取得したセンサ値xと、ステップS102及びS103で算出したセンサ値の変化量Δx及び経過時間Δtとの組合せに一致するレコードを実行結果記憶部18から検索する(ステップS104)。
【0058】
そして、先の組合せと一致するレコードが実行結果記憶部18に存在する場合(ステップS105肯定)には、イベント通知装置10は、実行結果が「実行」であるか否かを判定する(ステップS106)。
【0059】
ここで、先の組合せと一致するレコードの実行結果が「不実行」である場合(ステップS106否定)には、過去に同様の局面でサービサ50へイベントを通知して処理が実行されなかったと推定できる。この場合には、サービサ50にイベントを通知したとしても、サービサ50によってサービスに関係する処理が実行される可能性が低い。よって、イベント通知装置10は、イベントの通知を保留し、ステップS101へ移行する。
【0060】
一方、先の組合せと一致するレコードが実行結果記憶部18に存在しない場合(ステップS105否定)には、過去に同様の局面でサービサ50へイベントを通知していないと推定できる。この場合には、次回以降に同じ局面でイベントを通知するか、あるいは保留するかを判定するのが好ましい。よって、イベント通知装置10は、サービサ50にイベントを通知する(ステップS107)。
【0061】
また、先の組合せと一致するレコードの実行結果が「実行」である場合(ステップS106肯定)には、過去に同様の局面でサービサ50へイベントを通知して処理が実行されたと推定できる。この場合には、サービサ50によってサービスに関係する処理が実行される可能性が高い。よって、イベント通知装置10は、サービサ50にイベントの通知を実行する(ステップS107)。
【0062】
かかるイベントの通知後、イベント通知装置10は、今回通知した通知センサ値および今回通知した通知時刻を通知履歴記憶部15へ追加登録する(ステップS108)。そして、イベント通知装置10は、サービサ50から実行結果が返信されるのを待機する(ステップS109)。
【0063】
続いて、イベント通知装置10は、今回取得したセンサ値と、前回通知したセンサ値からの変化量Δx及び前回通知からの経過時間Δtとに対応付けて、サービサ50から返信された実行結果を実行結果記憶部18へ登録する(ステップS110)。その後、イベント通知装置10は、ステップS101へ移行する。
【0064】
[実施例1の効果]
上述してきたように、本実施例に係るイベント通知装置10は、センサ30から得たセンサ値、前回通知時のセンサ値からの変化量、前回通知からの経過時間の組合せが同じ履歴にてサービス提供に関する処理が実行されたか否かによってサービサ50への通知を実行または保留する。このため、イベント通知装置10では、過去に同様の局面でサービサ50へイベントを通知して処理が実行されなかった場合にイベントの通知を保留できる。それゆえ、イベント通知装置10では、サービサ50からイベントに連携してサービスに関係する処理を実行する条件やその処理の実行状況が開示されておらずとも、サービサ50で処理が実行される可能性が低い局面ではイベントの通知を抑制できる。
【0065】
したがって、イベント通知装置10によれば、不要なイベントの通知を削減することができる。さらに、イベント通知装置10では、サービサ50で処理が実行される可能性が高い局面ではサービサ50にイベントを通知できるので、サービサ50へのイベントを通知するタイミングを最適化なタイミングに近づけることもできる。
【0066】
また、本実施例に係るイベント通知装置10は、イベントの通知を実行した場合に、取得したセンサ値と算出した変化量及び経過時間とに対応付けて、サービサ50から取得した実行結果を実行結果記憶部18に登録する。このため、イベント通知装置10では、センサ値、変化量及び経過時間の組合せを動的に追加できる結果、イベント通知の実行または保留を学習することができる。
【実施例2】
【0067】
さて、これまで開示の装置に関する実施例について説明したが、本発明は上述した実施例以外にも、種々の異なる形態にて実施されてよいものである。そこで、以下では、本発明に含まれる他の実施例を説明する。
【0068】
[応用例1]
例えば、上記の実施例1では、センサ値xと、センサ値の変化量Δx及び経過時間Δtとの組合せに一致するレコードが1つだけ存在する場合を想定したが、同一の組合せに関し、実行結果として「実行」が対応付けられたレコードと、実行結果として「不実行」が対応付けられたレコードとの両方が混在する場合も想定される。
【0069】
このような場合には、開示の装置は、センサ値x、センサ値の変化量Δx、経過時間Δt及び実行結果に加えてセンサ値を通知した通知時刻をさらに実行結果登録部18へ登録することもできる。かかる通知時刻の登録によって、開示の装置は、センサ値x、センサ値の変化量Δx及び経過時間Δtの組合せに一致するレコードが複数存在する場合でも、複数存在する組合せのうち最新の通知時刻に対応付けられた実行結果が実行または不実行を示すかによってサービサ50に通知を実行するか、あるいは通知を保留するかを制御できる。このため、開示の装置では、センサ値x、センサ値の変化量Δx及び経過時間Δtの組合せに一致するレコードが複数存在する場合でも、サービサ50の最新の状態に合わせてイベントの通知を制御できる。
【0070】
また、開示の装置は、センサ値x、センサ値の変化量Δx、経過時間Δt及び実行結果に加えてレコードに対する登録回数をさらに実行結果登録部18に記憶させることもできる。すなわち、開示の装置は、センサ値x、センサ値の変化量Δx、経過時間Δt及び実行結果が同一であるレコードが実行結果記憶部18に既に登録されている場合に、当該レコードに対する登録回数を更新する。かかる登録回数の更新によって、開示の装置は、センサ値x、センサ値の変化量Δx及び経過時間Δtの組合せに一致するレコードが複数存在する場合でも、複数存在する組合せのうちレコードに対する登録回数が最も多い組合せに対応付けられた実行結果が実行または不実行を示すかによってサービサ50に通知を実行するか、あるいは通知を保留するかを制御できる。このため、開示の装置では、センサ値x、センサ値の変化量Δx及び経過時間Δtの組合せに一致するレコードが複数存在する場合でも、実行または不実行のうち頻度が高い方に合わせてイベントの通知を制御できる。
【0071】
[分散および統合]
また、図示した各装置の各構成要素は、必ずしも物理的に図示の如く構成されていることを要しない。すなわち、各装置の分散・統合の具体的形態は図示のものに限られず、その全部または一部を、各種の負荷や使用状況などに応じて、任意の単位で機能的または物理的に分散・統合して構成することができる。例えば、通知登録部11、取得部13、算出部16、実行結果登録部17または通知制御部19をイベント通知装置の外部装置としてネットワーク経由で接続するようにしてもよい。また、通知登録部11、取得部13、算出部16、実行結果登録部17または通知制御部19を別の装置がそれぞれ有し、ネットワーク接続されて協働することで、上記のイベント通知装置の機能を実現するようにしてもよい。
【0072】
[通知制御プログラム]
また、上記の実施例で説明した各種の処理は、予め用意されたプログラムをパーソナルコンピュータやワークステーションなどのコンピュータで実行することによって実現することができる。そこで、以下では、図7を用いて、上記の実施例と同様の機能を有する通知制御プログラムを実行するコンピュータの一例について説明する。
【0073】
図7は、実施例1及び実施例2に係る通知制御プログラムを実行するコンピュータの一例について説明するための図である。図7に示すように、コンピュータ100は、操作部110aと、スピーカ110bと、カメラ110cと、ディスプレイ120と、通信部130とを有する。さらに、このコンピュータ100は、CPU150と、ROM160と、HDD170と、RAM180と有する。これら110〜180の各部はバス140を介して接続される。
【0074】
HDD170には、図7に示すように、上記の実施例1で示した通知先登録部11と、取得部13と、算出部16と、実行結果登録部17と、通知制御部19と同様の機能を発揮する通知制御プログラム170aが予め記憶される。この通知制御プログラム170aについては、図2に示した各々の通知登録部11、取得部13、算出部16、実行結果登録部17及び通知制御部19の各構成要素と同様、適宜統合又は分離しても良い。すなわち、HDD170に格納される各データは、常に全てのデータがHDD170に格納される必要はなく、処理に必要なデータのみがHDD170に格納されれば良い。
【0075】
そして、CPU150が、通知制御プログラム170aをHDD170から読み出してRAM180に展開する。これによって、図7に示すように、通知制御プログラム170aは、通知制御プロセス180aとして機能する。この通知制御プロセス180aは、HDD170から読み出した各種データを適宜RAM180上の自身に割り当てられた領域に展開し、この展開した各種データに基づいて各種処理を実行する。なお、通知制御プロセス180aは、図2に示した通知登録部11、取得部13、算出部16、実行結果登録部17及び通知制御部19にて実行される処理、例えば図6に示す処理を含む。また、CPU150上で仮想的に実現される各処理部は、常に全ての処理部がCPU150上で動作する必要はなく、処理に必要な処理部のみが仮想的に実現されれば良い。
【0076】
なお、上記の通知制御プログラム170aについては、必ずしも最初からHDD170やROM160に記憶させておく必要はない。例えば、コンピュータ100に挿入されるフレキシブルディスク、いわゆるFD、CD−ROM、DVDディスク、光磁気ディスク、ICカードなどの「可搬用の物理媒体」に各プログラムを記憶させる。そして、コンピュータ100がこれらの可搬用の物理媒体から各プログラムを取得して実行するようにしてもよい。また、公衆回線、インターネット、LAN、WANなどを介してコンピュータ100に接続される他のコンピュータまたはサーバ装置などに各プログラムを記憶させておき、コンピュータ100がこれらから各プログラムを取得して実行するようにしてもよい。
【符号の説明】
【0077】
1 イベント通知システム
3 センサネットワーク
5 ネットワーク
10 イベント通知装置
11 通知先登録部
12 通知先記憶部
13 取得部
14 センシング情報記憶部
15 通知履歴記憶部
16 算出部
17 実行結果登録部
18 実行結果記憶部
19 通知制御部
30 センサ
50 サービサ

【特許請求の範囲】
【請求項1】
コンピュータが、
センサによってセンシングされるセンサ値を取得し、
前記センサ値が取得された場合に、通知先の装置へ前回通知したセンサ値からの変化量及び前回通知からの経過時間を算出し、
取得されたセンサ値と算出された変化量及び経過時間との組合せに基づいて、前記通知先の装置へ通知したセンサ値と、前回通知したセンサ値からの変化量及び前回通知からの経過時間と、前記通知先の装置によって所定の処理が実行されたか否かを示す実行結果とを対応付けて記憶する実行結果記憶部を参照し、前記通知先の装置に通知を実行するか、あるいは通知を保留するかを制御する
各処理を実行することを特徴とする通知制御方法。
【請求項2】
前記通知を制御する処理として、
取得されたセンサ値と算出された変化量及び経過時間との組合せに一致する組合せに対応付けられた実行結果が実行を示す場合、もしくは取得されたセンサ値と算出された変化量及び経過時間との組合せに一致する組合せが前記実行結果記憶部に存在しない場合に通知を実行し、
前記コンピュータが、
前記通知が実行された場合に、取得されたセンサ値と算出された変化量及び経過時間とに対応付けて、前記通知先の装置から取得された実行結果を前記実行結果記憶部に登録する処理をさらに実行することを特徴とする請求項1に記載の通知制御方法。
【請求項3】
前記実行結果を登録する処理として、
前記通知が実行された通知時刻をさらに対応付けて前記実行結果記憶部に登録し、
前記通知を制御する処理として、
取得されたセンサ値と算出された変化量及び経過時間との組合せに一致する組合せが前記実行結果記憶部に複数存在する場合に、当該複数存在する組合せのうち最新の通知時刻に対応付けられた実行結果が実行または不実行を示すかによって前記通知先の装置に通知を実行するか、あるいは通知を保留するかを制御することを特徴とする請求項2に記載の通知制御方法。
【請求項4】
前記実行結果記憶部は、前記センサ値と、前記前回通知したセンサ値からの変化量及び前記前回通知からの経過時間と、前記実行結果とを含むレコードに対する登録回数をさらに対応付けて記憶し、
前記実行結果を登録する処理として、
取得されたセンサ値と算出された変化量及び経過時間との組合せ及びその実行結果が同一であるレコードが前記実行結果記憶部に既に登録されている場合に、当該レコードに対する登録回数を更新し、
前記通知を制御する処理として、
取得されたセンサ値と算出された変化量及び経過時間との組合せに一致する組合せが前記実行結果記憶部に複数存在する場合に、当該複数存在する組合せのうちレコードに対する登録回数が最も多い組合せに対応付けられた実行結果が実行または不実行を示すかによって前記通知先の装置に通知を実行するか、あるいは通知を保留するかを制御することを特徴とする請求項2に記載の通知制御方法。
【請求項5】
通知先の装置へ通知したセンサ値と、前回通知したセンサ値からの変化量及び前回通知からの経過時間と、前記通知先の装置によって所定の処理が実行されたか否かを示す実行結果とを対応付けて記憶する実行結果記憶部と、
センサによってセンシングされるセンサ値を取得する取得部と、
前記取得部によってセンサ値が取得された場合に、前記通知先の装置へ前回通知したセンサ値からの変化量及び前回通知からの経過時間を算出する算出部と、
前記取得部によって取得されたセンサ値と前記算出部によって算出された変化量及び経過時間との組合せに基づいて前記実行結果記憶部を参照し、前記通知先の装置に通知を実行するか、あるいは通知を保留するかを制御する通知制御部と
を有することを特徴とする情報処理装置。
【請求項6】
コンピュータに、
センサによってセンシングされるセンサ値を取得し、
前記センサ値が取得された場合に、通知先の装置へ前回通知したセンサ値からの変化量及び前回通知からの経過時間を算出し、
取得されたセンサ値と算出された変化量及び経過時間との組合せに基づいて、前記通知先の装置へ通知したセンサ値と、前回通知したセンサ値からの変化量及び前回通知からの経過時間と、前記通知先の装置によって所定の処理が実行されたか否かを示す実行結果とを対応付けて記憶する実行結果記憶部を参照し、前記通知先の装置に通知を実行するか、あるいは通知を保留するかを制御する
各処理を実行させることを特徴とする通知制御プログラム。

【図1】
image rotate

【図2】
image rotate

【図3】
image rotate

【図4】
image rotate

【図5】
image rotate

【図6】
image rotate

【図7】
image rotate


【公開番号】特開2013−98748(P2013−98748A)
【公開日】平成25年5月20日(2013.5.20)
【国際特許分類】
【出願番号】特願2011−239741(P2011−239741)
【出願日】平成23年10月31日(2011.10.31)
【出願人】(000005223)富士通株式会社 (25,993)
【Fターム(参考)】