(57)【特許請求の範囲】
【請求項１】
動作実行サービスに実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って上記動作実行サービスに上記アクションを実行させる動作実行制御サーバであって、
上記アクションの指定と、複数のイベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを端末装置から受け付け、上記アクションの指定と、上記複数のイベントの指定と、上記上限の時間の指定とが上記連携ルールとして設定されており、
上記動作実行制御サーバは、イベント検出部と動作実行制御部とを備え、
上記イベント検出部は、情報提供サービスから受信した情報に基づいて複数の上記イベントのそれぞれの発生を検出し、
上記動作実行制御部は、上記イベント検出部が、複数の上記指定されたイベントの１つの発生を検出した後、上記指定された時間内に複数の上記指定されたイベントの残り全ての発生を検出した場合に、上記動作実行サービスに上記指定されたアクションを実行させる。
【請求項２】
請求項１に記載の動作実行制御サーバでは、
上記連携ルールでは、３以上の上記イベントの発生順が規定されており、
上記動作実行制御部は、上記イベント検出部が、上記指定された時間内で且つ上記発生順で３以上の上記イベントが発生したことを検出した場合に、上記動作実行サービスに上記アクションを実行させる。
【請求項３】
請求項１または２に記載の動作実行制御サーバでは、
上記動作実行制御部は、複数の上記連携ルールに規定された各アクションを実行させるべき状態となった場合に、当該各アクションのうち何れか１つを実行させるか、または何れも実行させない。
【請求項４】
請求項１から３の何れか１項に記載の動作実行制御サーバでは、
複数の上記イベントには、上記アクションとは異なるアクションを実行させるイベントであるアクションイベントが含まれており、
上記動作実行制御部は、上記アクションイベントの上記アクションを上記動作実行サービスまたは他の動作実行サービスに実行させ、
上記イベント検出部は、上記動作実行制御部が上記アクションイベントの上記アクションを実行させたことを、当該アクションイベントの発生として検出する。
【請求項５】
動作実行サービスに実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って上記動作実行サービスに上記アクションを実行させる動作実行制御サーバであって、
上記連携ルールでは、複数のイベントの発生が１つの上記アクションに対応するトリガに設定されており、
複数の上記イベントには、上記アクションとは異なるアクションを実行させるイベントであるアクションイベントが含まれており、
上記動作実行制御サーバは、イベント検出部と動作実行制御部とを備え、
上記イベント検出部は、情報提供サービスから受信した情報に基づいて複数の上記イベントのそれぞれの発生を検出し、
上記動作実行制御部は、上記イベント検出部が、複数の上記イベントの１つの発生を検出した後、所定時間内に複数の上記イベントの残り全ての発生を検出した場合に、上記動作実行サービスに上記アクションを実行させ、
上記動作実行制御部は、上記アクションイベントの上記アクションを上記動作実行サービスまたは他の動作実行サービスに実行させ、
上記イベント検出部は、上記動作実行制御部が上記アクションイベントの上記アクションを実行させたことを、当該アクションイベントの発生として検出し、
上記動作実行制御部は、上記イベント検出部が、複数の上記イベントのうち上記アクションイベントの発生を検出せず、該アクションイベントを除く残り全ての発生を検出した場合に、上記アクションイベントの上記アクションの代替アクションを上記動作実行サービスまたは他の動作実行サービスに実行させる。
【請求項６】
連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールを生成するルール生成サーバであって、
上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて発生が検出されるイベントを複数規定することが可能であり、
上記ルール生成サーバは、受付部とルール生成部とを備え、
上記受付部は、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録する端末装置から受け付け、
上記ルール生成部は、上記受付部が受け付けた、上記指定されたアクションと複数の上記指定されたイベントと上記時間とを対応付けた上記連携ルールを生成する。
【請求項７】
請求項６に記載のルール生成サーバは、さらに候補通知部を備え、
上記候補通知部は、上記受付部が、複数の上記イベントの１つの指定を受け付けた場合に、該イベントと共に上記トリガとすることのできるイベント、および該トリガにより実行させることのできるアクションの少なくとも何れかを上記端末装置に通知する。
【請求項８】
連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールをルール生成サーバに生成させる端末装置であって、
上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて、該動作実行制御サーバにて発生が検出されるイベントを複数規定することが可能であり、
上記端末装置は、ルール設定部と情報通知部とを備え、
上記ルール設定部は、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録するユーザから受け付け、
上記情報通知部は、上記ルール設定部が受け付けた、上記アクションと複数の上記イベントと上記時間とを上記ルール生成サーバに通知して、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成させる。
【請求項９】
請求項８に記載の端末装置では、
複数の上記イベントには、上記アクションとは異なるアクションを上記動作実行サービスまたは他の動作実行サービスに実行させるイベントであるアクションイベントを少なくとも１つ含めることが可能であり、
上記ルール設定部は、上記アクションイベントの指定を受け付けた場合に、該アクションイベントと共に上記トリガとすることのできるイベント、および該トリガにより実行させることのできるアクションの少なくとも何れかを上記ユーザに提示する。
【請求項１０】
情報提供サーバと、機器制御サーバと、動作実行制御サーバと、制御対象機器とを含む連携システムであって、
上記動作実行制御サーバは、上記制御対象機器に実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って上記アクションを実行させるものであり、
上記アクションの指定と、複数のイベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを端末装置から受け付け、上記アクションの指定と、上記複数のイベントの指定と、上記上限の時間の指定とが上記連携ルールとして設定されており、
上記情報提供サーバは、上記イベントに関する情報を上記動作実行制御サーバに送信し、
上記動作実行制御サーバは、上記情報提供サーバから送信される上記情報に基づいて複数の上記指定されたイベントの１つの発生を検出した後、上記指定された時間内に複数の上記指定されたイベントの残り全ての発生を検出した場合に、上記機器制御サーバを介して上記制御対象機器に上記指定されたアクションを実行させる。
【請求項１１】
動作実行サービスに実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って上記動作実行サービスに上記アクションを実行させる動作実行制御サーバの制御方法であって、
上記アクションの指定と、複数のイベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを端末装置から受け付け、上記アクションの指定と、上記複数のイベントの指定と、上記上限の時間の指定とが上記連携ルールとして設定されており、
上記動作実行制御サーバの制御方法は、イベント検出ステップと動作実行制御ステップとを含み、
上記イベント検出ステップは、情報提供サービスから受信した情報に基づいて複数の上記イベントのそれぞれの発生を検出するステップであり、
上記動作実行制御ステップは、上記イベント検出ステップにて、複数の上記指定されたイベントの１つの発生を検出した後、上記指定された時間内に複数の上記指定されたイベントの残り全ての発生を検出した場合に、上記動作実行サービスに上記指定されたアクションを実行させるステップである。
【請求項１２】
連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールを生成するルール生成サーバの制御方法であって、
上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて発生が検出されるイベントを複数規定することが可能であり、
上記ルール生成サーバの制御方法は、受付ステップとルール生成ステップとを含み、
上記受付ステップは、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録する端末装置から受け付けるステップであり、
上記ルール生成ステップは、上記受付ステップにて受け付けた、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成するステップである。
【請求項１３】
連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールをルール生成サーバに生成させる端末装置の制御方法であって、
上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて、該動作実行制御サーバにて発生が検出されるイベントを複数規定することが可能であり、
上記端末装置の制御方法は、ルール設定ステップと情報通知ステップとを含み、
上記ルール設定ステップは、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録するユーザから受け付けるステップであり、
上記情報通知ステップは、上記ルール設定ステップにて受け付けた、上記アクションと複数の上記イベントと上記時間とを上記ルール生成サーバに通知して、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成させるステップである。
【請求項１４】
請求項８または９に記載の端末装置としてコンピュータを機能させるための制御プログラムであって、上記ルール設定部および上記情報通知部としてコンピュータを機能させるための制御プログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、動作実行サービスに実行させるアクションと該動作を実行させるトリガとを示す連携ルールに従って動作実行サービスに動作を実行させる動作実行制御サーバ等に関する。
【背景技術】
【０００２】
複数のネットワークサービスを連携させるシステムが従来技術として知られている。例えば、下記の特許文献１には、複数のネットワークサービスを連携させる際のユーザの登録操作を容易にする仲介方法が記載されている。
【先行技術文献】
【特許文献】
【０００３】
【特許文献１】特開２０１４−２１１８７３号公報（２０１４年１１月１３日公開）
【発明の概要】
【発明が解決しようとする課題】
【０００４】
上記のような従来技術を用いることにより、あるサービスから提供される情報をトリガとして、機器の動作制御を行うサービスにより機器に所定の動作を行わせることも可能になる。例えば、ユーザの家のリビングのドアが開放されたとの情報を取得したことをトリガとして、リビングに設置されている機器にユーザ向けのメッセージを発話（音声出力）させることも可能になる。
【０００５】
しかしながら、上述のような従来技術では、トリガに設定することのできるイベントが１つのみであるため、状況に応じたアクションを実行させることができない場合があった。例えば、外出先から帰宅してリビングのドアを開けた状況では「お帰りなさい」等の出迎えのメッセージが適切であり、ユーザがリビングから出るという状況では、「またね」等の別れのメッセージが適切である。しかし、上述のような従来技術では、リビングのドアの開放という１つのイベントに対して、所定の内容のメッセージを発話させることができるのみであり、状況の違いに応じて異なるメッセージを発話させることができなかった。
【０００６】
本発明は、前記の問題点に鑑みてなされたものであり、その目的は、所定時間内に複数のイベントが発生した状況において、その状況に応じたアクションを実行させることのできる連携サーバ等を実現することにある。
【課題を解決するための手段】
【０００７】
上記の課題を解決するために、本発明に係る動作実行制御サーバは、動作実行サービスに実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って上記動作実行サービスに上記アクションを実行させる動作実行制御サーバであって、上記連携ルールでは、複数のイベントの発生が１つの上記アクションに対応するトリガに設定されており、上記動作実行制御サーバは、イベント検出部と動作実行制御部とを備え、上記イベント検出部は、情報提供サービスから受信した情報に基づいて複数の上記イベントのそれぞれの発生を検出し、上記動作実行制御部は、上記イベント検出部が、複数の上記イベントの１つの発生を検出した後、所定時間内に複数の上記イベントの残り全ての発生を検出した場合に、上記動作実行サービスに上記アクションを実行させる。
【０００８】
また、本発明に係るルール生成サーバは、上記の課題を解決するために、連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールを生成するルール生成サーバであって、上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて発生が検出されるイベントを複数規定することが可能であり、上記ルール生成サーバは、受付部とルール生成部とを備え、上記受付部は、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録する端末装置から受け付け、上記ルール生成部は、上記受付部が受け付けた、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成する。
【０００９】
そして、本発明に係る端末装置は、上記の課題を解決するために、連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールをルール生成サーバに生成させる端末装置であって、上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて、該動作実行制御サーバにて発生が検出されるイベントを複数規定することが可能であり、上記端末装置は、ルール設定部と情報通知部とを備え、上記ルール設定部は、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録するユーザから受け付け、上記情報通知部は、上記ルール設定部が受け付けた、上記アクションと複数の上記イベントと上記時間とを上記ルール生成サーバに通知して、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成させる。
【００１０】
また、本発明に係る連携システムは、上記の課題を解決するために、情報提供サーバと、機器制御サーバと、動作実行制御サーバと、制御対象機器とを含む連携システムであって、上記動作実行制御サーバは、上記制御対象機器に実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って上記アクションを実行させるものであり、上記連携ルールでは、複数のイベントの発生が１つの上記アクションに対応するトリガに設定されており、上記情報提供サーバは、上記イベントに関する情報を上記動作実行制御サーバに送信し、上記動作実行制御サーバは、上記情報提供サーバから送信される上記情報に基づいて複数の上記イベントの１つの発生を検出した後、所定時間内に複数の上記イベントの残り全ての発生を検出した場合に、上記機器制御サーバを介して上記制御対象機器に上記アクションを実行させる。
【００１１】
そして、本発明に係る動作実行制御サーバの制御方法は、上記の課題を解決するために、動作実行サービスに実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って上記動作実行サービスに上記アクションを実行させる動作実行制御サーバの制御方法であって、上記連携ルールでは、複数のイベントの発生が１つの上記アクションに対応するトリガに設定されており、上記動作実行制御サーバの制御方法は、イベント検出ステップと動作実行制御ステップとを含み、上記イベント検出ステップは、情報提供サービスから受信した情報に基づいて複数の上記イベントのそれぞれの発生を検出するステップであり、上記動作実行制御ステップは、上記イベント検出ステップにて、複数の上記イベントの１つの発生を検出した後、所定時間内に複数の上記イベントの残り全ての発生を検出した場合に、上記動作実行サービスに上記アクションを実行させるステップである。
【００１２】
また、本発明に係るルール生成サーバの制御方法は、上記の課題を解決するために、連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールを生成するルール生成サーバの制御方法であって、上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて発生が検出されるイベントを複数規定することが可能であり、上記ルール生成サーバの制御方法は、受付ステップとルール生成ステップとを含み、上記受付ステップは、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録する端末装置から受け付けるステップであり、上記ルール生成ステップは、上記受付ステップにて受け付けた、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成するステップである。
【００１３】
そして、本発明に係る端末装置の制御方法は、上記の課題を解決するために、連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールをルール生成サーバに生成させる端末装置の制御方法であって、上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて、該動作実行制御サーバにて発生が検出されるイベントを複数規定することが可能であり、上記端末装置の制御方法は、ルール設定ステップと情報通知ステップとを含み、上記ルール設定ステップは、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録するユーザから受け付けるステップであり、上記情報通知ステップは、上記ルール設定ステップにて受け付けた、上記アクションと複数の上記イベントと上記時間とを上記ルール生成サーバに通知して、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成させるステップである。
【発明の効果】
【００１４】
本発明によれば、所定時間内に複数のイベントが発生した状況において、その状況に応じたアクションを実行させることができるという効果を奏する。
【図面の簡単な説明】
【００１５】
【図１】本発明の実施形態１に係る連携サーバと操作端末の要部構成の一例を示すブロック図である。
【図２】上記連携サーバと操作端末を含む連携システムの概要を示す図である。
【図３】上記連携システムで使用される連携ルールの例を示す図である。
【図４】上記連携サーバが使用する連携ルール管理情報の一例を示す図である。
【図５】連携サーバがトリガイベントを検出してアクションを実行させる処理の一例を示すフローチャートである。
【図６】複数の連携ルールに規定された各アクションを実行させるべき状態となったときに本発明の実施形態２に係る連携サーバが実行する制御の例を示す図である。
【図７】本発明の実施形態３に係る連携システムで使用される連携ルールの例を示す図である。
【図８】本発明の実施形態４において連携ルールを生成する際のＵＩ画面の一例を示す図である。
【図９】トリガおよびアクションの候補をユーザに選択させるＵＩ画面の例を示す図である。
【図１０】設定済みの連携ルールをユーザに提示する表示画面の一例を示す図である。
【図１１】連携ルールを生成する際の操作端末および連携サーバの処理の一例を示すフローチャートである。
【図１２】上記各実施形態の連携サーバおよび操作端末として利用可能なコンピュータの構成を例示したブロック図である。
【発明を実施するための形態】
【００１６】
〔実施形態１〕
以下、本発明の実施の一形態について図１から図５に基づいて詳細に説明する。
【００１７】
〔システムの概要〕
まず、本実施形態に係る連携システムの概要を図２に基づいて説明する。図２は、連携システム７の概要を示す図である。連携システム７は、複数のサービスを連携させる連携サービスを提供するシステムである。
【００１８】
連携システム７において連携対象となるサービスは、トリガのサービス（情報提供サービス）と、アクションのサービス（動作実行サービス）とに分類できる。すなわち、連携システム７では、トリガのサービスに関する所定のイベントが発生したときに、アクションのサービスに所定のアクションを実行させる。これにより、異なるサービスを組み合わせた多様な連携サービスを提供することが可能になる。
【００１９】
本実施形態ではトリガのサービスが、所定のイベントに関する情報を通知するサービスであり、アクションのサービスが機器（制御対象機器）４に所定の動作、より詳細には音声発話を実行させるサービスである例を説明する。なお、トリガのサービスは特に限定されず、例えばユーザが自宅リビングのドアを開けたことを通知するサービスをトリガのサービスとしてもよい。また、アクションのサービスも機器４の動作制御のサービスに限られない。
【００２０】
図示の連携システム７には、連携サービスを提供する連携サーバ（動作実行制御サーバ、ルール生成サーバ）１、アクションのサービスを提供する機器制御サーバ２、連携ルールの設定などに用いられる操作端末（端末装置）３、機器制御サーバ２の制御対象の機器４、およびトリガのサービスを提供する情報提供サーバ５が含まれる。なお、連携ルールとは、動作実行サービスに実行させるアクションとそれを実行させるトリガとを示す情報である。本実施形態では、連携サーバ１が連携ルールの生成と、連携ルールの使用（連携ルールに基づくアクションの実行制御）の双方を行う例を説明するが、これらの処理は別個の装置（サーバ）に実行させてもよい。
【００２１】
情報提供サーバ５は、ユーザの行動範囲内（例えば自宅）に設置されたセンサの検出結果を受信し、該検出結果から所定のイベント（例えばドアを開ける）が発生したと判定したときに、該所定のイベントが発生した旨を連携サーバ１に通知する。そして、連携サーバ１は、上記の通知によって所定のイベントが発生したことを検知し、これを契機として機器制御サーバ２によって機器４に所定の音声を出力させる。これにより、例えば、ユーザが帰宅してドアを開けたときに、自宅に設置された機器４から、帰宅したユーザに「おかえり」と発話させることもできる。
【００２２】
機器４は、機器制御サーバ２の制御対象となる機器であればよく、特に限定されないが、本実施形態では機器４が、ユーザとの対話機能を備えたロボットである例、およびユーザとの対話機能を備えた家庭用電気器具（以下、家電と呼ぶ）である例を説明する。図示の例のように機器４は複数のユーザに共用されていてもよい。
【００２３】
各ユーザは、操作端末３を所持しており、この操作端末３を用いて機器４の動作制御をアクションとする連携ルールを設定することができる。詳細は後述するが、連携システム７では、１つの連携ルールについて、複数のイベントと、該複数のイベントの１つの発生を検出した後、該複数のイベントの残り全ての発生を検出するまでの上限の時間（所定時間）と、そのイベントの発生順とを設定できるようになっている。そして、上記連携ルールには、複数の上記イベントが上記上限の時間内に検出された場合に実行させるアクションを設定することができるようになっている。つまり、連携システム７によれば、上記連携ルールに従った制御により、複数のイベントが上限の時間内に所定順で発生したことをトリガとして、そのトリガに対応するアクションを機器４に実行させることができる。
【００２４】
〔連携ルールの例〕
次に、連携システム７で使用される連携ルールの例を図３に基づいて説明する。図３は、連携システム７で使用される連携ルールの例を示す図である。同図に示す連携ルールＡおよびＢには、２つのトリガ（イベント）と１つのアクションが含まれている。また、これら２つのトリガイベントには、順番が設定されていると共に、１つ目のトリガイベント発生から２つ目のトリガイベント発生までの上限の時間が設定されている。このように、連携ルールは、複数のイベントと、少なくとも１つのアクションと、それらの順序とを示す、シナリオのような情報である。さらに、各連携ルールには、優先度が設定されている。
【００２５】
具体的には、図示の連携ルールＡには、１つ目のトリガイベントとしてユーザの家の玄関ドアが開けられたイベント（玄関ＯＰＥＮ）が設定されており、２つ目のトリガイベントとしてユーザの家のリビングのドアが開けられたイベント（リビングＯＰＥＮ）が設定されている。そして、連携ルールＡには、ロボットである機器４に「お帰りなさい」と発話させるアクションが設定されている。これにより、ユーザが帰宅して玄関ドアを開け、その後、上限の時間（例えば５分）以内にリビングに入ったとき、つまり玄関ドアを開けてリビングに入るという一連の動作を行ったときに、機器４に「お帰りなさい」と発話させることができる。
【００２６】
また、図示の連携ルールＢには、１つ目のトリガイベントとしてユーザの家のトイレのドアが開けられたイベント（トイレＯＰＥＮ）が設定されており、２つ目のトリガイベントとしては連携ルールＡと同じくリビングＯＰＥＮが設定されている。そして、連携ルールＢには、ロボットである機器４に「手は洗った？」と発話させるアクションが設定されている。これにより、ユーザがトイレに行った後、上限の時間（例えば１０分）以内にリビングに入ったときに、機器４に「手は洗った？」と発話させることができる。
【００２７】
このように、連携システム７では、複数のイベントをトリガに設定した連携ルールを使用することができるので、ユーザの行動の経緯に応じた適切なアクションを実行させることができる。例えば、上記の連携ルールＡおよびＢは、２つ目のトリガイベントが同一であるが、１つ目のトリガイベントの相違に応じた異なるアクションを機器４に実行させることができる。つまり、ユーザが外出先から帰宅してリビングに入ったときには、ユーザを迎えるメッセージを発話させ、トイレからリビングに入ったときには、手洗いの確認をするメッセージを発話させることができる。
【００２８】
〔連携サーバと操作端末の装置構成〕
次に、連携サーバ１と操作端末３の装置構成を図１に基づいて説明する。図１は、連携サーバ１と操作端末３の要部構成の一例を示すブロック図である。ここでは、まず連携サーバ１について説明し、その後、操作端末３について説明する。
【００２９】
〔連携サーバの構成〕
図示のように、連携サーバ１は、連携サーバ１の各部を統括して制御するサーバ制御部１０、連携サーバ１が使用する各種データを記憶するサーバ記憶部１１、および連携サーバ１が他の機器と通信するためのサーバ通信部１２を備えている。なお、同図では、１つのサーバ通信部１２にて、機器制御サーバ２、操作端末３、および情報提供サーバ５と通信する例を示しているが、通信相手機器に応じて異なる通信部（通信インターフェース）を介して通信してもよい。
【００３０】
サーバ制御部１０には、設定受付部（受付部）１００、候補通知部１０１、ルール生成部１０２、イベント検出部１０３、条件判定部１０４、およびアクション実行制御部（動作実行制御部）１０５が含まれている。そして、サーバ記憶部１１には、対応候補情報１１０および連携ルール管理情報１１１が格納されている。
【００３１】
設定受付部１００は、連携ルールの生成に関する各種指定を受け付ける。具体的には、設定受付部１００は、アクション、トリガ（複数のイベントをトリガに指定可能）、および上限の時間の指定を受け付ける。この上限の時間が、複数のイベントを検出する制限時間ということになる。
【００３２】
候補通知部１０１は、設定受付部１００が、複数のイベントの１つの指定を受け付けた場合に、該イベントと共にトリガとすることのできるイベント、および該トリガにより実行させることのできるアクションの少なくとも何れかを操作端末３に通知する。
【００３３】
ルール生成部１０２は、設定受付部１００が受け付けた、アクションとトリガと上限の時間とを対応付けて連携ルールを生成する。また、ルール生成部１０２は、生成した連携ルールを連携ルール管理情報１１１に登録する。
【００３４】
イベント検出部１０３は、連携ルールにトリガとして設定された複数のイベントのそれぞれの発生を検出する。本実施形態では、情報提供サーバ５（情報提供サービス）からの通知によりイベントの発生を検出する例を説明する。つまり、連携ルールが登録されると、イベント検出部１０３は、当該連携ルールのトリガに設定されたイベントの発生を通知するように情報提供サーバ５に指示する。これにより、当該イベントの発生時には、その旨を示す情報が情報提供サーバ５から連携サーバ１に通知され、イベント検出部１０３は、この情報の受信によりイベントの発生を検出する。なお、イベント検出部１０３は、機器制御サーバ２等、他の機器（他のサービス）からの通知によりイベントの発生を検出してもよい。また、例えば、機器４やセンサが出力する情報（例えば機器４の電源がＯＮに切り替えられた、ドアが開閉された等の事象を検出したことを示す情報）は、機器制御サーバ２等を介することなく、当該機器４やセンサから連携サーバ１に送信してもよい。そして、このような場合には、当該機器４やセンサが連携サーバ１と接続されたことを契機として、上記のような情報の送信を開始してもよい。
【００３５】
条件判定部１０４は、連携ルール管理情報１１１に含まれる各連携ルールについて、該連携ルールのアクションを実行する条件、すなわち上限の時間内に複数のイベントが発生することを充足したか判定する。
【００３６】
アクション実行制御部１０５は、イベント検出部１０３が、トリガに設定された複数のイベントの１つの発生を検出した後、上限の時間内に複数の上記イベントの残り全ての発生を検出したことを契機としてアクションを実行させる。具体的には、アクション実行制御部１０５は、条件判定部１０４が連携ルールのアクションを実行する条件を充足したと判定したときに、そのアクションを機器制御サーバ２に実行させる。なお、機器制御サーバ２は、機器４にアクションを実行させるので、アクション実行制御部１０５は、機器制御サーバ２を介して機器４にアクションを実行させているとも言える。
【００３７】
対応候補情報１１０は、連携ルールの設定の際にユーザに提示するトリガやアクションの候補を決定するための情報である。より詳細には、対応候補情報１１０は、１つの連携ルールに含めることのできるトリガ（イベント）とアクションの組み合わせを示す情報である。候補通知部１０１は、対応候補情報１１０を参照することにより、ユーザが指定済みのトリガやアクションと共に連携ルールに含めることのできるイベントおよびアクションの少なくとも何れかを特定することができる。
【００３８】
連携ルール管理情報１１１は、設定された連携ルールを管理するための情報であり、ユーザが設定した連携ルールは連携ルール管理情報１１１に登録される。連携ルール管理情報１１１は、例えば図４のようなものであってもよい。図４は、連携ルール管理情報１１１の一例を示す図である。図示の連携ルール管理情報１１１は、ルール識別情報、トリガ、設定時間、アクション、優先度、および使用回数が対応付けられたテーブル形式の情報である。
【００３９】
ルール識別情報は、連携ルールを識別する情報であり、各連携ルールに固有の値が割り当てられる。トリガには、連携ルールに規定されたアクションを実行する契機となるイベントを示す情報が格納される。また、各イベントには、その発生順序を示す番号が付されている。設定時間には、トリガに規定されている１つ目のイベント発生から最後のイベント発生までの上限の時間が格納される。
【００４０】
アクションには、トリガに設定された全イベントが上限の時間内に発生したときに機器制御サーバ２に実行させる動作を示す情報が格納される。図示の例では、ロボット（機器４の１つ）に実行させるアクションとして、ロボット発話「おかえり」（ロボットに「お帰りなさい」と発話させる）、およびロボット発話「手洗い確認」（ロボットに「手は洗った？」と発話させる）を例示している。また、ＴＶ（機器４の１つ）に実行させるアクションとして、ＴＶ発話「おかえり」（ＴＶに「お帰りなさい」と発話させる）、およびＴＶ発話「ねぎらい」（ＴＶに「ゆっくりして下さいね」と発話させる）を例示している。
【００４１】
優先度には、各連携ルールの他の連携ルールに対する優先度を示す情報が格納される。本例では、１〜１０の数値（値が大きい方を優先する）で優先度を示しているが、優先度の示し方はこの例に限られない。使用回数には、連携ルールが使用された（トリガの条件充足によりアクションが実行された）回数を示す情報が格納される。
【００４２】
〔操作端末の構成〕
操作端末３は、連携ルールを登録するユーザの操作を受け付けて、該操作の内容に応じた連携ルールを連携サーバ１に生成させる装置である。操作端末３の機能は、例えばスマートフォンのような情報処理装置であってもよい。図１に示す操作端末３は、操作端末３の各部を統括して制御する端末制御部３０、操作端末３が使用する各種データを記憶する端末記憶部３１、操作端末３が他の機器と通信するための端末通信部３２を備えている。また、操作端末３は、端末制御部３０の制御に従って画像を表示する表示部３３、およびユーザの入力操作を受け付ける入力部３４を備えている。なお、入力部３４は、表示部３３の表示面に対するユーザの入力操作を受け付けるタッチパネルであってもよい。
【００４３】
端末制御部３０には、情報通知部３００、ルール設定部３０１、および候補取得部３０２が含まれている。これらの処理部は、例えばアプリケーションソフトウェアを操作端末３にインストールすることで実現してもよい。
【００４４】
ルール設定部３０１は、所定のユーザインターフェース（以下、ＵＩと略記する）画面を表示させて、連携ルールの生成に関する各種指定を受け付ける。具体的には、ルール設定部３０１は、アクション、トリガ（複数のイベントをトリガに指定可能）、および上限の時間の指定を受け付ける。
【００４５】
情報通知部３００は、ルール設定部３０１が受け付けた、アクション、トリガ、および上限の時間を連携サーバ１に通知して、当該アクション、トリガ、および上限の時間を対応付けた連携ルールを生成させる。
【００４６】
候補取得部３０２は、連携ルールの設定の際にユーザに提示するトリガやアクションの候補を連携サーバ１の候補通知部１０１から取得する。そして、候補取得部３０２は、取得した候補を表示部３３に表示する。これにより、ユーザは、該候補の中からトリガやアクションを選択することができる。
【００４７】
〔処理の流れ（トリガ検出〜アクション実行）〕
次に、連携サーバ１が実行する処理の流れを図５に基づいて説明する。図５は、連携サーバ１がトリガイベントを検出してアクションを実行させる処理（動作実行制御サーバの制御方法）の一例を示すフローチャートである。
【００４８】
イベント検出部１０３は、情報提供サーバ５から通知される情報に基づいて、トリガに設定されたイベントの発生を検出する（Ｓ１、イベント検出ステップ）。次に、条件判定部１０４は、Ｓ１で検出されたイベントが、連携ルールにおいて順序が最後に設定されたイベントであるか判定する（Ｓ２）。ここで、順序が最後に設定されたイベントではないと判定した場合（Ｓ２でＮＯ）、イベントの検出待ち受け状態となり、次にイベントを検出したときに、Ｓ１以下の処理を再度行う。
【００４９】
一方、Ｓ２にて順序が最後に設定されたイベントであると判定した場合（Ｓ２でＹＥＳ）、条件判定部１０４は、アクションに対応付けられた全イベントを設定時間（上限の時間）内に検出済みであるか判定する（Ｓ３）。言い換えれば、アクションを実行するための全てのフラグ（アクションに対応する全てのイベントの検出）が立っているかを判定する。例えば、上述の連携ルールＡ（図４参照）の２つ目のイベント（リビングＯＰＥＮ）がＳ１で検出された場合、条件判定部１０４は、Ｓ１の検出時点から５分前までの期間に１つ目のイベント（玄関ＯＰＥＮ）を検出済みであるか判定する。
【００５０】
ここで、条件判定部１０４が全てのイベントを検出済みであると判定した場合（Ｓ３でＹＥＳ）、アクション実行制御部１０５は、機器制御サーバ２に指示して当該イベントに対応するアクションを機器４に実行させる（Ｓ４、動作実行制御ステップ）。これにより、図示の処理は終了する。一方、Ｓ３において、条件判定部１０４がイベントの少なくとも何れかが設定時間内に検出されていないと判定した場合（Ｓ３でＮＯ）、アクションを実行させることなく図示の処理は終了する。
【００５１】
なお、本実施形態の連携ルールに基づくアクションの実行制御の手順は上記の例に限られない。例えば、まず、連携ルールにおける最先の順序のイベントを検出し、そのイベントを検出したときにその次のイベントの検出を開始する、という手順の繰り返しによって、連携ルールに規定された複数のイベントが所定の順序で発生したことを検出してもよい。この場合、最後のイベントの発生を検出したときに、最初のイベントの発生からの経過時間が上限の時間を超えていなければ、アクションを実行させる。
【００５２】
また、上記では、トリガに設定された複数のイベントに順序が設定されている例を説明したが、順序の設定は必須ではない。例えば、ＴＶの電源がＯＮされたイベントと、エアコンの運転が開始されたイベントとが検出された場合に、掃除ロボットにお勧めのＴＶ番組を発話させる連携ルールのように、アクションの直接の契機となるべきイベントがない場合には順序の設定は不要である。図５の例において、トリガに設定された複数のイベントに順序が設定されていない場合、Ｓ２の処理は省略される。
【００５３】
〔実施形態２〕
本発明の他の実施形態について、図６に基づいて説明すれば、以下のとおりである。なお、説明の便宜上、前記実施形態にて説明した部材と同じ機能を有する部材については、同じ符号を付記し、その説明を省略する。これは実施形態３以降においても同様である。本実施形態の連携サーバ１は、１つのトリガの検出によって、複数の連携ルールに規定された各アクションを実行させるべき状態となったときの制御内容に特徴がある。これについて図６に基づいて説明する。図６は、複数の連携ルールに規定された各アクションを実行させるべき状態となったときの制御例を示す図である。
【００５４】
図６には、上記実施形態で説明した２つの連携ルール（連携ルールＡおよびＢ）が記載されている。これらの連携ルールは、順序が最後に設定されたイベントが同じ（何れもリビングＯＰＥＮ）であるから、このイベントが検出されたときに、双方の連携ルールに規定されたアクションを実行させるべき状態になり得る。なお、図示の例では、調整の対象となる２つの連携ルールの何れもが複数のイベントをトリガとしているが、調整の対象となる連携ルールには、トリガに設定されているイベントが１つの連携ルールが含まれていてもよい。例えば、リビングＯＰＥＮのイベントのみをトリガとして、リビングのテレビをスタンバイ状態にする連携ルールＤが存在する場合、この連携ルールＤと、図示の連携ルールＡまたはＢとについて調整を行ってもよい。無論、連携ルールＡ、Ｂ、Ｃの間で調整を行ってもよい。
【００５５】
例えば、図示の例のように、玄関ＯＰＥＮのイベントが検出された後、トイレＯＰＥＮのイベントが検出され、その後でリビングＯＰＥＮのイベントが検出されることがあり得る。この場合、玄関ＯＰＥＮからリビングＯＰＥＮまでが連携ルールＡの設定時間以内であり、かつトイレＯＰＥＮからリビングＯＰＥＮまでが連携ルールＢの設定時間以内であれば、連携ルールＡおよびＢの双方のアクションを実行させるべき状態となる。
【００５６】
本実施形態の連携サーバ１が備えるアクション実行制御部１０５は、図６に示すように、複数のアクションを実行させるべき状態となったときに、下記ａ〜ｃの何れかの処理を実行する。
ａ：何れか一方のアクションを実行させる
ｂ：何れのアクションも実行させない
ｃ：双方の連携ルールのアクションを実行させる
上記ａの処理を実行する場合、アクション実行制御部１０５は、任意の方法で何れかのアクションを選択し、そのアクションを実行させる。例えば、アクション実行制御部１０５は、各連携ルールに設定された優先度を参照して、より優先度の高い連携ルールを特定し、その連携ルールに設定されたアクションを実行させてもよい。また、例えば、アクション実行制御部１０５は、使用回数（図４参照）のより多い連携ルールを特定し、その連携ルールに設定されたアクションを実行させてもよい。さらに、例えば、アクション実行制御部１０５は、ランダムに選択したアクションを実行させてもよい。
【００５７】
また、上記ｃの処理を実行する場合、アクション実行制御部１０５は、複数のアクションの実行タイミングが重なることの弊害が生じないように調整した上で、各アクションを実行させる。例えば、アクション実行制御部１０５は、各アクションの実行指示を送信するタイミングをずらしてもよい。また、この場合、優先度のより高い、あるいは使用回数のより多い連携ルールのアクションの実行指示を先に送信してもよい。また、例えば、アクション実行制御部１０５は、各アクションを組み合わせたアクションを実行させてもよい。例えば、組み合わせの対象となるアクションが何れもユーザに対する発話であれば、その発話の合間に「それから」等の接続語を入れる等して一連の発話内容とした上で、発話させてもよい。
【００５８】
なお、このような調整は、並行して実行された場合に弊害があるアクションについてのみ行い、その他のアクションについては調整の対象外としてもよい。例えば、各アクションを実行させる機器４が同一である場合や、各アクションの内容が何れも発話である場合には、それらのアクションを並行して実行させると弊害（機器４の処理の負荷が一時に集中する、発話内容が聞き取り難くなる等）が生じ得る。このため、アクション実行制御部１０５は、このような条件（アクションを実行させる機器４が同一である、またはアクションが機器４による音声出力である等）を満たした場合には上記の調整を行い、満たさない場合には各アクションを通常通り実行させてもよい。なお、本実施形態では、実行タイミングが重なった２つのアクションについて調整を行う例を説明したが、３つ以上のアクションの実行タイミングが重なった場合にも、同様の調整が可能である。
【００５９】
〔実施形態３〕
本発明のさらに他の実施形態について、図７に基づいて説明する。本実施形態では、連携ルールのトリガとして、該連携ルールによって所定のアクションが実行された（あるいは実行されなかった）というイベント（アクションイベント）を設定する例を説明する。また、本実施形態では、上記所定のアクションが実行されなかった場合に、該所定のアクションが実行されなかったことを補うためのアクション（代替アクション）を実行させる例についても説明する。
【００６０】
図７は、本実施形態の連携システム７で使用される連携ルールの例を示す図である。図示の連携ルールＣでは、１つ目のトリガイベント、１つ目のアクション（２つ目のトリガイベントでもある）、３つ目のトリガイベント、および２つ目のアクションが設定されている。この連携ルールＣによれば、１つ目のトリガに設定されたイベントが検出された後、該連携ルールＣに設定された時間内に、１つ目のアクションが実行され、かつ３つ目のトリガに設定されたイベントが検出されることにより、２つ目のアクションが実行される。この例では、イベント検出部１０３は、アクション実行制御部１０５が１つ目のアクションを実行させたことを、アクションイベントの発生として検出する。なお、アクションイベントのアクションは、連携ルールの最終のアクションと同じ動作実行サービスに実行させてもよいし、異なる動作実行サービスに実行させてもよい。
【００６１】
本実施形態の連携サーバ１は、上記連携ルールＣにより、玄関ＯＰＥＮのイベント検出後、設定時間以内に、ロボットに「お帰りなさい」と発話させ、その後ＴＶの電源がＯＮに切り替わるイベントが検出された場合に、ＴＶにねぎらいの言葉を発話させる。なお、上記ロボットおよびＴＶは、何れも機器４の１つであり、機器制御サーバ２を介して発話させることができる。また、機器制御サーバ２は、ＴＶがＯＮに切り替わったことを検出して連携サーバ１に通知するので、連携サーバ１のイベント検出部１０３は、この通知によりＴＶがＯＮに切り替わるイベントを検出することができる。つまり、本例の機器制御サーバ２は、情報提供サービスも提供する。
【００６２】
一方、本実施形態の連携サーバ１は、上記連携ルールＣのイベントのうち、ロボットに発話させるアクション（アクションイベント）の発生を検出せず、該アクションイベントを除く残り全ての発生を検出した場合に、代替アクションを実行させる。この代替アクションは、図示の連携ルールＣ’に基づいて実行される。
【００６３】
図示の連携ルールＣ’では、１つ目のトリガイベント、２つ目のトリガイベント、３つ目のトリガイベント、およびアクションが設定されている。これらのうち、１つ目のトリガイベントと３つ目のトリガイベントは、連携ルールＣの１つ目のトリガイベントと３つ目のトリガイベントとそれぞれ同じである。また、連携ルールＣ’の２つ目のトリガは、連携ルールＣの１つ目のアクションが実行できなかったというイベントである。そして、連携ルールＣ’のアクションは、連携ルールＣの２つ目のアクションと発話内容が同じである。つまり、連携ルールＣ’のアクションは、連携ルールＣの１つ目のアクションが実行されなかったことを補う代替アクションである。
【００６４】
本実施形態の連携サーバ１は、上記連携ルールＣ’により、玄関ＯＰＥＮのイベントを検出したが、ロボットに発話させることができず、その後ＴＶの電源がＯＮに切り替わるイベントが検出された場合に、ＴＶに「お帰りなさい」と発話させることができる。ロボットに発話させることができない状況としては、例えばロボットと機器制御サーバ２との通信不良、ロボットの故障や電池切れの状況が挙げられる。そして、ロボットに発話させるアクションの実行不可というイベントの発生は、例えばロボットに発話指示を送信した後、所定時間以内に当該ロボットからの発話完了通知が受信されなかったことによって検出することができる。
【００６５】
なお、このような連携ルールについても、上記実施形態の連携ルールと同様にして連携ルール管理情報１１１にて管理することができる（図４参照）。また、このような連携ルールは、何れも後述の実施形態４に示すような手順にてユーザが設定してもよいが、代替アクションを含む連携ルールは、アクションを複数含む連携ルールを生成したときに、連携サーバ１が自動で生成してもよい。この場合、連携サーバ１のルール生成部１０２は、先に生成した連携ルールの一部を書き換えて、代替アクションを含む連携ルールを生成すればよい。具体的には、ルール生成部１０２は、先に生成した連携ルールのアクション（最後のアクションではなく、トリガイベントを兼ねているもの）の代わりに、該アクションが実行されなかったことをトリガイベントとして記述する。そして、先に生成した連携ルールのアクションの１つを代替アクションに変更する。なお、代替アクションは、アクションが実行されなかったことを補填するものであればよく、実行されなかったアクションと一部または全部が同内容であってもよいし、異なる内容であってもよい。例えば、図７の連携ルールＣ’の例において、「お帰りなさい」と発話させる代わりに、ロボットが発話できなかったことをユーザに伝える発話（「ロボットが発話できなかったようです」等）を行わせてもよい。また、代替アクションは、機器制御サーバ２に実行させてもよいし、他の機器制御サービスに実行させてもよい。
【００６６】
また、アクションの不実行はトリガに含めなくともよい。この場合、２つ目のトリガ（ＴＶ  ＯＮ）の発生を検出したときに１つ目のトリガ（玄関ＯＰＥＮ）は検出した履歴があるが、ロボットに「お帰りなさい」と発話させた履歴がなければ、アクションの実行条件を充足したと判定する。
【００６７】
〔実施形態４〕
本発明のさらに他の実施形態について、図８〜図１１に基づいて説明する。本実施形態では、連携ルールの生成について説明する。まず、連携ルールを生成する際に操作端末３が表示するＵＩ画面について、図８に基づいて説明する。図８は、連携ルールを生成する際のＵＩ画面の一例を示す図である。なお、同図では、上記実施形態で説明した連携ルールＣを設定する際の画面遷移例を示している。
【００６８】
連携ルールの設定を開始する際、まず操作端末３は同図の（ａ）に示すＵＩ画面を表示して１つ目のトリガイベントと優先度の指定を受け付ける。このＵＩ画面には、優先度の指定を受け付ける優先度設定項目５０と、１つ目のトリガイベントの指定を受け付ける第１トリガ設定項目５１とが含まれている。ユーザは、このＵＩ画面から優先度設定項目５０を選択することによって、１〜１０までの範囲で所望の優先度を指定することができる。また、ユーザは、このＵＩ画面から第１トリガ設定項目５１を選択することによって、１つ目のトリガイベントとすることができるイベントの候補を表示させ、その中から所望のイベントを選択して１つ目のトリガイベントに設定することができる。同図では、優先度を１０（最大値）に設定し、１つ目のトリガイベントに玄関ＯＰＥＮのイベントを設定した例を示している。
【００６９】
１つ目のトリガイベントが指定されると、操作端末３は、同図の（ｂ）に示すように、指定済みのトリガイベントを第１トリガ設定項目５１に表示する（同図の５１’）。また、優先度が指定されると、操作端末３は、同図の（ｂ）に示すように、指定された優先度を優先度設定項目５０に表示する（同図の５０’）。また、操作端末３は、１つ目のトリガイベントが指定されたことに応じて、同図の（ｂ）に示すように、２つ目のトリガイベントの指定を受け付ける第２トリガ設定項目５２と、１つ目のアクションの指定を受け付ける第１アクション設定項目５３とを表示する。ユーザは、このＵＩ画面から第２トリガ設定項目５２を選択することによって、２つ目のトリガイベントに指定可能なイベントの候補を表示させ、その中から所望のイベントを選択して２つ目のトリガに指定することができる。同様に、このＵＩ画面から第１アクション設定項目５３を選択することによって、指定可能なアクションの候補を表示させ、その中から所望のアクションを選択して１つ目のアクションに指定することができる。
【００７０】
ここで、操作端末３は、２つ目のトリガイベントに指定可能なイベントの候補、および１つ目のアクションに指定可能なアクションの候補を表示させる際には、指定済みのトリガイベントと組み合わせることのできる候補に絞って表示させる。これについて、図９に基づいて説明する。図９は、トリガおよびアクションの候補をユーザに選択させるＵＩ画面の例を示す図である。
【００７１】
同図の（ａ）のＵＩ画面では、指定済みのトリガイベントに組み合わせることのできるトリガイベントの候補が一覧表示されている。具体的には、ここでは玄関ＯＰＥＮが１つ目のトリガイベントとして指定済みであることを想定している（図８の（ｂ）参照）。このため、図９の（ａ）の例では、このトリガイベントと組み合わせて２つ目のトリガイベントに指定することのできるイベント（１つ目のトリガイベントと共にトリガとすることのできるイベント）の候補が表示されている。具体的には、上記実施形態で説明したトイレＯＰＥＮとＴＶ  ＯＮの他、子供部屋のドアが開けられた子供部屋ＯＰＥＮ、玄関の照明が点灯状態に切り替えられた玄関照明ＯＮ、および廊下の照明が点灯状態に切り替えられた廊下照明ＯＮが候補として表示されている。同様に、図９の（ｂ）の例では、上記トリガイベント（玄関ＯＰＥＮ）の発生検出によって実行させることのできるアクションの候補が表示されている。具体的には、上記実施形態で説明したロボット発話「おかえり」の他、所定のメールアドレス宛てにメールを送信するメール送信、所定のＳＮＳ（Social Networking Service）にメッセージを投稿するＳＮＳ送信、および所定の機器４のベルを鳴動させるベル鳴動が候補として表示されている。
【００７２】
ユーザは、表示されたイベントの候補の中から所望のイベントを選択して、２つ目のトリガイベントに指定することができる。また、同様に、ユーザは、表示されたアクションの候補の中から所望のアクションを選択して１つ目のアクション（１つ目のトリガイベント発生時に実行するアクション）に指定することができる。
【００７３】
なお、ユーザがトリガイベントを選択したときに、そのトリガイベントを含む連携ルールが登録済みであれば、その連携ルールにおいて該トリガイベントと対応付けられている、アクションを選択候補として提示してもよい。一方、ユーザがトリガイベントを選択したときに、そのトリガイベントを含む連携ルールが登録されていなければ、ユーザが選択したトリガイベントと組み合わせることのできるアクションを選択候補として提示してもよい。なお、どのようなトリガイベントに対してどのようなアクションを組み合わせることができるかについては、各トリガイベントについて予め定義しておけばよい。また、同様にして、ユーザが選択したトリガイベントに加えて設定できるトリガイベント（２つ目以降のトリガイベント）の選択候補を提示してもよい。ユーザがアクションを選択した場合も同様であり、該アクションと組み合わせることのできるトリガイベントや他のアクションを選択候補として提示してもよい。
【００７４】
例えば、玄関ＯＰＥＮのトリガイベントがユーザによって指定された場合、玄関ＯＰＥＮをトリガに設定した連携ルールが登録されていれば、その連携ルールに設定されている他のトリガイベントまたはアクションを選択候補として提示してもよい。一方、上記の場合に玄関ＯＰＥＮをトリガに設定した連携ルールが登録されていなければ、玄関ＯＰＥＮと共にトリガに設定することのできるトリガイベント、または玄関ＯＰＥＮをトリガとすることのできるアクションを選択候補として提示してもよい。
【００７５】
また、上記の例において、選択候補から例えば玄関ドアロックというトリガイベント（玄関のドアがロックされたことがセンサによって検出されたというイベント）が選択されたときには、玄関ＯＰＥＮと玄関ドアロックの組み合わせを記憶しておいてもよい。これにより、次回以降に連携ルールを登録する際に、玄関ＯＰＥＮが指定されたときには、玄関ドアロックを選択候補として提示することが可能になる。
【００７６】
ここで、図８の説明に戻る。図８の（ｂ）のＵＩ画面において、ユーザが第１アクション設定項目５３を選択して図９の（ｂ）に示すアクションの候補を表示させ、その中からロボット発話「おかえり」を選択すると、操作端末３は、同図の（ｃ）に示すＵＩ画面を表示する。このＵＩ画面では、指定済みのアクション（ロボット発話「おかえり」）を第１アクション設定項目５３に表示している（同図の５３’）。この第１アクション設定項目５３’は、外枠が二重線になっている点で、指定済みのトリガイベントを示す第１トリガ設定項目５１’と相違している。このように、指定済みのトリガイベントと指定済みのアクションとは、表示態様を異ならせて、外観で識別できるようにしておくことが好ましい。
【００７７】
また、図８の（ｃ）のＵＩ画面では、２つ目のトリガイベントの指定を受け付ける第２トリガ設定項目５２と、２つ目のアクションの指定を受け付ける第２アクション設定項目５４とが表示されている。ユーザは、このＵＩ画面から第２トリガ設定項目５２を選択することによって、２つ目のトリガイベントに指定可能なイベントの候補を表示させ、その中から所望のイベントを選択して２つ目のトリガイベントに指定することができる。同様に、このＵＩ画面から第２アクション設定項目５４を選択することによって、指定可能な２つ目のアクションの候補を表示させ、その中から所望のアクションを選択して２つ目のアクションに指定することができる。なお、２つ目のトリガイベントの指定の際には、１つ目のトリガイベント（あるいはその直後に行われる１つ目のアクション）の発生検出から、２つ目のトリガイベント検出までの上限の時間（設定時間）の指定も受け付ける。
【００７８】
図８の（ｃ）のＵＩ画面において、ユーザが第２トリガ設定項目５２を選択して図９の（ａ）に示すトリガイベントの候補を表示させ、その中からＴＶ  ＯＮを選択すると、操作端末３は、同図の（ｄ）に示すＵＩ画面を表示する。このＵＩ画面では、指定済みのトリガイベント（ＴＶ  ＯＮ）を第２トリガ設定項目５２に表示している（同図の５２’）。また、指定された時間を示す設定時間項目５５も表示している。なお、図示の例では、３つ目のトリガイベントの指定を受け付ける項目は表示されていないが、指定済みのトリガイベントやアクションに組み合わせることのできるトリガイベントが存在する限り、３つ目以降のトリガイベントの指定を受け付けてもよい。３つ目以降のアクションについても同様である。
【００７９】
図８の（ｄ）のＵＩ画面において、ユーザが第２アクション設定項目５４を選択してアクションの候補を表示させ、その中からＴＶ発話「ねぎらい」を選択すると、操作端末３は、同図の（ｅ）に示すＵＩ画面を表示する。このＵＩ画面では、第２アクション設定項目５４に指定済みのアクション（ＴＶ発話「ねぎらい」）を表示している（同図の５４’）。また、第２アクション設定項目５４’は、指定済みのアクションを示す項目であるから、同図の（ｃ）の第１アクション設定項目５３’と同様に外枠を二重線としている。
【００８０】
ユーザは、以上のようなＵＩ画面にて所望のトリガイベント、アクション、および時間を指定して、所望の連携ルールを生成することができる。無論、連携ルールを生成する際のＵＩ画面は、ユーザが所望のトリガ、アクション、および時間を指定できるようなものであればよく、上記の例に限られない。
【００８１】
設定済みの連携ルールは、操作端末３にてユーザが確認できるようにすることが好ましく、その際の表示画面は例えば図１０のようなものであってもよい。図１０は、設定済みの連携ルールをユーザに提示する表示画面の一例を示す図である。図１０の画面例には、識別情報表示項目７０、優先度表示項目７１、第１トリガ表示項目７２、第１アクション表示項目７３、第２トリガ表示項目７４、第２アクション表示項目７５、および設定時間表示項目７６が含まれている。なお、識別情報表示項目７０には、連携ルールの識別情報（この例では連携ルール名）を表示する。
【００８２】
図１０の例では、図８のＵＩ画面の例と同様に、設定されたアクションを示す第１アクション表示項目７３および第２アクション表示項目７５は、外枠を二重線としている。また、図１０の例では、第１トリガ表示項目７２、第１アクション表示項目７３、および第２トリガ表示項目７４には、それらのトリガおよびアクションの発生順を示す番号がそれぞれ付されている。そして、これら３つの項目の側方には、設定時間表示項目７６が配置されている。よって、ユーザは、これら３つの項目のトリガおよびアクションが、上記番号の順序で、設定時間表示項目７６に示される設定時間内に行われる必要があることを一目で認識することができる。
【００８３】
また、上記３つの項目およびその側方の設定時間表示項目７６に続いて、第２アクション表示項目７５が表示されている。これにより、上記３つの項目のトリガおよびアクションが設定時間表示項目７６に示される設定時間内に行われることにより、最終的に第２アクション表示項目７５のアクションが行われることを、ユーザに一目で認識させることができる。このような表示画面は、連携サーバ１の例えばルール生成部１０２が生成して操作端末３に表示させてもよいし、ルール設定部３０１が設定した（連携サーバ１に通知した）内容に基づいて操作端末３の例えばルール設定部３０１が生成して表示してもよい。
【００８４】
〔処理の流れ（連携ルール生成）〕
次に、連携ルールを生成する際の操作端末３および連携サーバ１の処理の流れを図１１に基づいて説明する。図１１は、連携ルールを生成する際の操作端末３および連携サーバ１の処理（端末装置の制御方法およびルール生成サーバの制御方法）の一例を示すフローチャートである。なお、同図では、操作端末３のルール設定部３０１が、表示部３３に連携ルール生成のためのＵＩ画面（図８参照）を表示し、該ＵＩ画面に対するユーザの入力操作を受け付けた後の処理を示している。
【００８５】
まず、ルール設定部３０１は、ＵＩ画面に対する入力操作の内容が、優先度設定であるか、トリガ設定であるか、あるいはアクション設定であるかを判定する（Ｓ１０）。例えば、図８の（ａ）のＵＩ画面を表示した場合、優先度設定項目５０が選択されたときに、入力操作の内容が優先度設定であると判定し、第１トリガ設定項目５１が選択されたときに、入力操作の内容がトリガ設定であると判定する。また、例えば、図８の（ｂ）のＵＩ画面を表示した場合、第１アクション設定項目５３が選択されたときに、入力操作の内容がアクション設定であると判定する。
【００８６】
Ｓ１０で優先度設定であると判定した場合、ルール設定部３０１は、ユーザによる優先度の入力（指定）を受け付け（Ｓ１８）、Ｓ１５の処理に進む。そして、Ｓ１５では、ルール設定部３０１は、ＵＩ画面を更新して、受け付けた入力内容を反映させる。例えば、優先度が１０に設定された場合には、ルール設定部３０１は、図８の（ｂ）に示すように、設定された優先度の値「１０」を表示する。この後、処理はＳ１６に進む。
【００８７】
一方、Ｓ１０でルール設定部３０１がトリガ設定であると判定した場合、候補取得部３０２は、連携サーバ１からトリガイベントの候補を取得して表示部３３に表示する（Ｓ１１）。この際、候補取得部３０２は、条件を指定してトリガイベントの候補を取得してもよい。例えば、操作端末３のユーザのユーザＩＤを連携サーバ１に通知して、該ユーザＩＤのユーザが選択可能なトリガイベントの候補を取得してもよい。また、先行のトリガイベントまたはアクションが指定済みであれば、それらを連携サーバ１に通知して、それらと組み合わせ可能なトリガイベントの候補を取得し、表示してもよい（図９の（ａ）参照）。
【００８８】
続いて、ルール設定部３０１は、ユーザによるトリガイベントの入力（指定）を受け付ける（Ｓ１２、ルール設定ステップ）。ここで、ルール設定部３０１は、Ｓ１２で入力を受け付けたトリガイベントが、２つ目以降のトリガイベントであるか否かを判定する（Ｓ１３）。そして、Ｓ１２で入力を受け付けたトリガイベントが１つ目のトリガイベントであれば（Ｓ１３でＮＯ）、処理はＳ１５に進む。一方、Ｓ１２で入力を受け付けたトリガイベントが２つ目以降のトリガイベントであれば（Ｓ１３でＹＥＳ）、ルール設定部３０１は、設定時間の入力を受け付けて（Ｓ１４、ルール設定ステップ）、Ｓ１５の処理に進む。
【００８９】
Ｓ１３またはＳ１４の後のＳ１５では、ルール設定部３０１は、ＵＩ画面を更新して、受け付けた入力内容を反映させると共に、次のアクションまたはトリガを指定する入力操作を受け付けることができるようにする。例えば、ルール設定部３０１は、１つ目のトリガイベントの設定を受け付けた場合、図８の（ｂ）に示すように、設定済みのトリガイベントを第１トリガ設定項目５１’に表示すると共に、第２トリガ設定項目５２および第１アクション設定項目５３を表示する。この後、処理はＳ１６に進む。
【００９０】
また、Ｓ１０でルール設定部３０１がアクション設定であると判定した場合、候補取得部３０２は、連携サーバ１からアクションの候補を取得して表示部３３に表示する（Ｓ１９）。この際、候補取得部３０２は、条件を指定してアクションの候補を取得してもよい。例えば、操作端末３のユーザのユーザＩＤを連携サーバ１に通知して、該ユーザＩＤのユーザが選択可能なアクションの候補を取得してもよい。また、先行のトリガイベントまたはアクションが設定済みであれば、それらを連携サーバ１に通知して、それらと組み合わせ可能なアクションの候補を取得し、表示してもよい（図９の（ｂ）参照）。そして、Ｓ１９の後、ルール設定部３０１は、ユーザによるアクションの入力（指定）を受け付けて（Ｓ２０、ルール設定ステップ）、Ｓ１５の処理に進む。
【００９１】
Ｓ２０の後のＳ１５では、ルール設定部３０１は、ＵＩ画面を更新して、受け付けた入力内容を反映させると共に、次のアクションまたはトリガイベントを指定する入力操作を受け付けることができるようにする。例えば、ルール設定部３０１は、１つ目のアクションの設定を受け付けた場合、図８の（ｃ）に示すように、設定済みのアクションを第１アクション設定項目５３’に表示すると共に、第２トリガ設定項目５２および第２アクション設定項目５４を表示する。この後、処理はＳ１６に進む。
【００９２】
Ｓ１６では、ルール設定部３０１は、連携ルールの設定を終了するユーザ操作が行われたか判定する。ここで、ルール設定部３０１が連携ルールの設定を終了するユーザ操作が行われたと判定した場合（Ｓ１６でＹＥＳ）、情報通知部３００は、これまでに受け付けた入力内容（トリガ、アクション、設定時間、トリガイベントの順序など）を連携サーバ１に通知する（Ｓ１７、情報通知ステップ）。これにより、操作端末３の処理は終了する。なお、受け付けた入力内容は、本例のように設定終了時にまとめて通知してもよいし、入力を受け付けたタイミングで逐次通知してもよい。
【００９３】
一方、連携ルールの設定を終了するユーザ操作が行われていないと判定した場合（Ｓ１６でＮＯ）、ルール設定部３０１は、Ｓ１０の処理に戻って連携ルールの生成に関する各種情報の入力を受け付ける。
【００９４】
続いて、連携サーバ１の処理を説明する。上述のように、操作端末３はトリガイベントの候補の送信を連携サーバ１に要求するので、連携サーバ１の候補通知部１０１は、この要求に応じたトリガイベントの候補を操作端末３に通知する（Ｓ３０）。また、上述のように、操作端末３はアクションの候補の送信を連携サーバ１に要求するので、連携サーバ１の候補通知部１０１は、この要求に応じたアクションの候補を操作端末３に通知する（Ｓ３１）。
【００９５】
そして、上述のように操作端末３は受け付けた入力内容を連携サーバ１に通知するので、連携サーバ１の設定受付部１００は、この通知を受信する（Ｓ３２、受付ステップ）。この後、ルール生成部１０２が、上記入力内容に含まれる各情報を対応付けて連携ルールを生成し（Ｓ３３、ルール生成ステップ）、連携ルール管理情報１１１に登録して、連携サーバ１の処理は終了する。
【００９６】
〔実施形態５〕
上記各実施形態では、１つの連携サーバ１を用いる例を説明したが、連携サーバ１の有する各機能が、個別のサーバにて実現されていてもよい。そして、複数のサーバを適用する場合においては、各サーバは、同じ事業者によって管理されていてもよいし、異なる事業者によって管理されていてもよい。これは、機器制御サーバ２等の上述の各サーバについても同様である。
【００９７】
なお、上記各サーバは、１台のコンピュータからなる計算機システムであってもよいし、複数のコンピュータ、データベース、およびロードバランサなど一群のコンピュータからなるシステムであってもよい。つまり、上記各サーバは、物理的な１つの塊（装置）で所定の機能を実現するものであってもよいし、論理的な１つの塊（複数の装置からなるもの）で所定の機能を実現するものであってもよい。
【００９８】
〔実施形態６〕
連携サーバ１および操作端末３の各ブロックは、集積回路（ＩＣチップ）等に形成された論理回路（ハードウェア）によって実現してもよいし、ＣＰＵ（Central Processing Unit）を用いてソフトウェアによって実現してもよい。後者の場合、連携サーバ１および操作端末３のそれぞれを、図１２に示すようなコンピュータ（電子計算機）を用いて構成することができる。
【００９９】
図１２は、連携サーバ１および操作端末３として利用可能なコンピュータ９１０の構成を例示したブロック図である。コンピュータ９１０は、バス９１１を介して互いに接続された演算装置９１２と、主記憶装置９１３と、補助記憶装置９１４と、入出力インターフェース９１５と、通信インターフェース９１６とを備えている。演算装置９１２、主記憶装置９１３、および補助記憶装置９１４は、それぞれ、例えばＣＰＵ、ＲＡＭ（random access memory）、ハードディスクドライブであってもよい。入出力インターフェース９１５には、ユーザがコンピュータ９１０に各種情報を入力するための入力装置９２０、および、コンピュータ９１０がユーザに各種情報を出力するための出力装置９３０が接続される。入力装置９２０および出力装置９３０は、コンピュータ９１０に内蔵されたものであってもよいし、コンピュータ９１０に接続された（外付けされた）ものであってもよい。例えば、入力装置９２０は、キーボード、マウス、タッチセンサなどであってもよく、出力装置９３０は、ディスプレイ、プリンタ、スピーカなどであってもよい。また、タッチセンサとディスプレイとが一体化されたタッチパネルのような、入力装置９２０および出力装置９３０の双方の機能を有する装置を適用してもよい。そして、通信インターフェース９１６は、コンピュータ９１０が外部の装置と通信するためのインターフェースである。
【０１００】
補助記憶装置９１４には、コンピュータ９１０を連携サーバ１または操作端末３として動作させるための各種のプログラムが格納されている。そして、演算装置９１２は、補助記憶装置９１４に格納された上記プログラムを主記憶装置９１３上に展開して該プログラムに含まれる命令を実行することによって、コンピュータ９１０を、連携サーバ１または操作端末３が備える各部として機能させる。なお、補助記憶装置９１４が備える、プログラム等の情報を記録する記録媒体は、コンピュータ読み取り可能な「一時的でない有形の媒体」であればよく、例えば、テープ、ディスク、カード、半導体メモリ、プログラマブル論理回路などであってもよい。
【０１０１】
また、上記プログラムは、コンピュータ９１０の外部から取得してもよく、この場合、任意の伝送媒体（通信ネットワークや放送波等）を介して取得してもよい。そして、本発明は、上記プログラムが電子的な伝送によって具現化された、搬送波に埋め込まれたデータ信号の形態でも実現され得る。
【０１０２】
〔まとめ〕
本発明の態様１に係る動作実行制御サーバ（連携サーバ１）は、動作実行サービスに実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って、上記動作実行サービスに上記アクションを実行させる動作実行制御サーバであって、上記連携ルールでは、複数のイベントの発生が１つの上記アクションに対応するトリガに設定されており、上記動作実行制御サーバは、イベント検出部（１０３）と動作実行制御部（アクション実行制御部）とを備え、上記イベント検出部は、情報提供サービスから受信した情報に基づいて複数の上記イベントのそれぞれの発生を検出し、上記動作実行制御部は、上記イベント検出部が、複数の上記イベントの１つの発生を検出した後、所定時間内に複数の上記イベントの残り全ての発生を検出した場合に、上記動作実行サービスに上記アクションを実行させる。
【０１０３】
上記の構成によれば、連携ルールにてトリガに設定されている複数のイベントの１つの発生を検出した後、所定時間内に複数の上記イベントの残り全ての発生を検出した場合に、当該連携ルールに示されるアクションを実行させる。よって、所定時間内に複数のイベントが発生した状況において、その状況に応じたアクションを実行させることができるという効果を奏する。なお、上記イベントは、ユーザの行動に起因するイベントであることが好ましい。これにより、ユーザが所定時間内に複数の所定の行動をおこした状況において、その状況に応じたアクションを実行させることができる。
【０１０４】
本発明の態様２に係る動作実行制御サーバは、上記態様１において、上記連携ルールでは、複数の上記イベントの発生順が規定されており、上記動作実行制御部は、上記イベント検出部が、規定されている上記発生順で複数の上記イベントが発生したことを検出した場合に、上記動作実行サービスに上記アクションを実行させてもよい。
【０１０５】
上記の構成によれば、連携ルールに規定されている発生順で複数のイベントが発生したことを検出した場合にアクションを実行させる。よって、複数のイベントが所定順で発生した状況において、その状況に応じたアクションを実行させることができる。例えば、リビングのドアが解放されるイベントの後、玄関のドアが開放されるイベントが発生したときには、見送りのメッセージ（いってらっしゃい等）を所定の機器に発話させることができる。そして、その一方で、玄関のドアが解放されるイベントの後、リビングのドアが解放されるイベントが発生したときには、出迎えのメッセージ（お帰りなさい等）を所定の機器に発話させることができる。
【０１０６】
本発明の態様３に係る動作実行制御サーバは、上記態様１または２において、上記動作実行制御部は、複数の上記連携ルールに規定された各アクションを実行させるべき状態となった場合に、当該各アクションのうち何れか１つを実行させるか、または何れも実行させない構成であってもよい。
【０１０７】
上記の構成によれば、複数の連携ルールに規定された各アクションを実行させるべき状態となった場合に、当該各アクションのうち何れか１つを実行させるか、または何れも実行させない。よって、複数のアクションが同時に実行される、あるいは複数のアクションの実行指示が同時になされることによって問題が生じることを回避することができる。例えば、複数の機器が同時に発話することにより、それぞれの発話内容をユーザに聞き取りにくくなることや、同時に複数のアクションの実行指示を受信することにより、該指示を受信した機器の情報処理の負荷が過大になること等を回避することができる。
【０１０８】
なお、何れか１つのアクションを実行させる場合には、過去の使用回数（アクションを実行させた回数）がより多い連携ルールのアクションを実行させてもよい。これにより、過去の経緯からみて、よりユーザにとって望ましいと考えられるアクションを実行させることができる。
【０１０９】
また、何れか１つのアクションを実行させる場合には、予め設定された優先度がより高い連携ルールのアクションを実行させてもよい。この場合、優先度はユーザが設定できるようにしてもよく、これによりユーザの意図に沿った連携ルールのアクションを優先して実行させることができる。
【０１１０】
本発明の態様４に係る動作実行制御サーバは、上記態様１から３の何れかにおいて、複数の上記イベントには、上記アクションとは異なるアクションを実行させるイベントであるアクションイベントが含まれており、上記動作実行制御部は、上記アクションイベントの上記アクションを上記動作実行サービスまたは他の動作実行サービスに実行させ、上記イベント検出部は、上記動作実行制御部が上記アクションイベントの上記アクションを実行させたことを、当該アクションイベントの発生として検出してもよい。
【０１１１】
上記の構成によれば、連携ルールに規定されている複数のイベントにはアクションイベントが含まれている。そして、該アクションイベントのアクションを実行させたことを、該アクションイベントが発生として検出する。よって、アクションイベントが発生したことを条件として、連携ルールに規定されているアクションを実行させることができる。この態様は、連携ルールに規定されているアクションを実行させる前提として、アクションイベントのアクションが実行済みであることが必要である（あるいは好ましい）場合に有用である。
【０１１２】
本発明の態様５に係る動作実行制御サーバは、上記態様４において、上記動作実行制御部は、上記イベント検出部が、複数の上記イベントのうち上記アクションイベントの発生を検出せず、該アクションイベントを除く残り全ての発生を検出した場合に、上記アクションイベントの上記アクションの代替アクションを上記動作実行サービスまたは他の動作実行サービスに実行させてもよい。
【０１１３】
上記の構成によれば、複数のイベントのうちアクションイベントを除く残り全ての発生を検出した場合に、アクションイベントのアクションの代替アクションを上記動作実行サービスまたは他の動作実行サービスに実行させる。よって、アクションイベントのアクションが実行されなかったことを、その代替アクションを実行することでカバーすることができる。
【０１１４】
なお、代替アクションは、アクションイベントのアクションが実行されなかった場合に、その代わりに実行する意義のあるアクションであればよい。例えばアクションイベントのアクションが所定の機器に所定のメッセージを発話させるアクションである場合には、他の機器に上記所定のメッセージを発話させるアクションを代替アクションとしてもよい。
【０１１５】
本発明の態様６に係るルール生成サーバ（連携サーバ１）は、連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバ（連携サーバ１）が使用する上記連携ルールを生成するルール生成サーバであって、上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて発生が検出されるイベントを複数規定することが可能であり、上記ルール生成サーバは、受付部（設定受付部１００）とルール生成部（１０２）とを備え、上記受付部は、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録する端末装置（操作端末３）から受け付け、上記ルール生成部は、上記受付部が受け付けた、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成する。
【０１１６】
上記の構成によれば、端末装置から受け付けた、アクションと複数のイベントと時間とを対応付けた連携ルールを生成する。よって、生成した連携ルールを動作実行制御サーバに使用させ、所定時間内に複数のイベントが発生した状況において、その状況に応じたアクションを実行させることができるという効果を奏する。なお、ルール生成サーバと動作実行制御サーバは、一体の装置であってもよいし、別体の装置であってもよい。
【０１１７】
本発明の態様７に係るルール生成サーバは、上記態様６において、上記受付部が、複数の上記イベントの１つの指定を受け付けた場合に、該イベントと共に上記トリガとすることのできるイベント、および該トリガにより実行させることのできるアクションの少なくとも何れかを上記端末装置に通知する候補通知部（１０１）を備えていてもよい。
【０１１８】
上記の構成によれば、複数のイベントの１つの指定を受け付けた場合に、該イベントと共に上記トリガとすることのできるイベント、および該トリガにより実行させることのできるアクションの少なくとも何れかを端末装置に通知する。よって、端末装置のユーザに、連携ルールに含めるべきイベントおよびアクションを、これらのイベントおよびアクションの中から選択させることができる。
【０１１９】
本発明の態様８に係る端末装置（操作端末３）は、連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールをルール生成サーバに生成させる端末装置であって、上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて、該動作実行制御サーバにて発生が検出されるイベントを複数規定することが可能であり、上記端末装置は、ルール設定部（３０１）と情報通知部（３００）とを備え、上記ルール設定部は、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録するユーザから受け付け、上記情報通知部は、上記ルール設定部が受け付けた、上記アクションと複数の上記イベントと上記時間とを上記ルール生成サーバに通知して、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成させる。
【０１２０】
上記の構成によれば、ユーザから受け付けた、アクションと複数のイベントと時間とを対応付けた連携ルールをルール生成サーバに生成させる。よって、生成させた連携ルールを動作実行制御サーバに使用させ、所定時間内に複数のイベントが発生した状況において、その状況に応じたアクションを実行させることができるという効果を奏する。
【０１２１】
本発明の態様９に係る端末装置は、上記態様８において、複数の上記イベントには、上記アクションとは異なるアクションを上記動作実行サービスまたは他の動作実行サービスに実行させるイベントであるアクションイベントを少なくとも１つ含めることが可能であり、上記ルール設定部は、上記アクションイベントの指定を受け付けた場合に、該アクションイベントと共に上記トリガとすることのできるイベント、および該トリガにより実行させることのできるアクションの少なくとも何れかを上記ユーザに提示してもよい。
【０１２２】
本発明の態様１０に係る連携システム（７）は、情報提供サーバ（５）と、機器制御サーバ（２）と、動作実行制御サーバ（連携サーバ１）と、制御対象機器（機器４）とを含む連携システムであって、上記動作実行制御サーバは、上記制御対象機器に実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って上記アクションを実行させるものであり、上記連携ルールでは、複数のイベントの発生が１つの上記アクションに対応するトリガに設定されており、上記情報提供サーバは、上記イベントに関する情報を上記動作実行制御サーバに送信し、上記動作実行制御サーバは、上記情報提供サーバから送信される上記情報に基づいて複数の上記イベントの１つの発生を検出した後、所定時間内に複数の上記イベントの残り全ての発生を検出した場合に、上記機器制御サーバを介して上記制御対象機器に上記アクションを実行させる。該連携システムによれば、上記態様１と同様の効果を奏する。
【０１２３】
本発明の態様１１に係る動作実行制御サーバの制御方法は、動作実行サービスに実行させるアクションと該アクションを実行させるトリガとを示す連携ルールに従って、上記動作実行サービスに上記アクションを実行させる動作実行制御サーバの制御方法であって、上記連携ルールでは、複数のイベントの発生が１つの上記アクションに対応するトリガに設定されており、上記動作実行制御サーバの制御方法は、イベント検出ステップ（Ｓ１）と動作実行制御ステップ（Ｓ４）とを含み、上記イベント検出ステップは、情報提供サービスから受信した情報に基づいて複数の上記イベントのそれぞれの発生を検出するステップであり、上記動作実行制御ステップは、上記イベント検出ステップにて、複数の上記イベントの１つの発生を検出した後、所定時間内に複数の上記イベントの残り全ての発生を検出した場合に、上記動作実行サービスに上記アクションを実行させるステップである。該制御方法によれば、上記態様１と同様の効果を奏する。
【０１２４】
本発明の態様１２に係るルール生成サーバの制御方法は、連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールを生成するルール生成サーバの制御方法であって、上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて発生が検出されるイベントを複数規定することが可能であり、上記ルール生成サーバの制御方法は、受付ステップ（Ｓ３２）とルール生成ステップ（Ｓ３３）とを含み、上記受付ステップは、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録する端末装置から受け付けるステップであり、上記ルール生成ステップは、上記受付ステップにて受け付けた、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成するステップである。該制御方法によれば、上記態様６と同様の効果を奏する。
【０１２５】
本発明の態様１３に係る端末装置の制御方法は、連携ルールに従って動作実行サービスにアクションを実行させる動作実行制御サーバが使用する上記連携ルールをルール生成サーバに生成させる端末装置の制御方法であって、上記連携ルールには、上記アクションを実行させるトリガとして、情報提供サービスから上記動作実行制御サーバに送信される情報に基づいて、該動作実行制御サーバにて発生が検出されるイベントを複数規定することが可能であり、上記端末装置の制御方法は、ルール設定ステップ（Ｓ１２、Ｓ１４、Ｓ２０）と情報通知ステップ（Ｓ１７）とを含み、上記ルール設定ステップは、上記アクションの指定と、複数の上記イベントの指定と、複数の該イベントの１つの発生を検出した後、複数の該イベントの残り全ての発生を検出するまでの上限の時間の指定とを、上記連携ルールを登録するユーザから受け付けるステップであり、上記情報通知ステップは、上記ルール設定ステップにて受け付けた、上記アクションと複数の上記イベントと上記時間とを上記ルール生成サーバに通知して、上記アクションと複数の上記イベントと上記時間とを対応付けた上記連携ルールを生成させるステップである。該制御方法によれば、上記態様８と同様の効果を奏する。
【０１２６】
本発明の各態様に係る動作実行制御サーバ、ルール生成サーバ、および端末装置は、コンピュータによって実現してもよく、この場合には、コンピュータを上記動作実行制御サーバ、ルール生成サーバ、または端末装置が備える各部（ソフトウェア要素）として動作させることにより上記動作実行制御サーバ、ルール生成サーバ、または端末装置をコンピュータにて実現させる制御プログラム、およびそれを記録したコンピュータ読み取り可能な記録媒体も、本発明の範疇に入る。
【０１２７】
本発明は上述した各実施形態に限定されるものではなく、請求項に示した範囲で種々の変更が可能であり、異なる実施形態にそれぞれ開示された技術的手段を適宜組み合わせて得られる実施形態についても本発明の技術的範囲に含まれる。さらに、各実施形態にそれぞれ開示された技術的手段を組み合わせることにより、新しい技術的特徴を形成することができる。
【符号の説明】
【０１２８】
１  連携サーバ（ルール生成サーバ）
１００  設定受付部（受付部）
１０１  候補通知部
１０２  ルール生成部
１０５  アクション実行制御部（動作実行制御部）
２  機器制御サーバ
３  操作端末（端末装置）
３００  情報通知部
３０１  ルール設定部
４  機器（制御対象機器）
５  情報提供サーバ
７  連携システム
【図１】
0006495154.tif 000002
【図２】
0006495154.tif 000003
【図３】
0006495154.tif 000004
【図４】
0006495154.tif 000005
【図５】
0006495154.tif 000006
【図６】
0006495154.tif 000007
【図７】
0006495154.tif 000008
【図８】
0006495154.tif 000009
【図９】
0006495154.tif 000010
【図１０】
0006495154.tif 000011
【図１１】
0006495154.tif 000012
【図１２】
0006495154.tif 000013