(57)【要約】 【課題】  制御指令の入力を簡易に行い得るコントローラを提供する。【解決手段】  機器制御を支配する機器制御ルール（ルール規則ＤＢ）をコントローラに適用する。機器制御ルールは、機器制御用の定型ルールパターン群から構成されており、監視対象ファクターを特定するイベントと、当該監視対象ファクターがどの状態に達したときに制御対象機器の制御を行うかを規定するコンディションと、制御対象機器の制御実行内容を規定するアクションに区分されている。  コントローラは、キーワードからルールパターンおよびそれに割り当てるべきパラメータを抽出するためのデータベース（知識ＤＢ２０６）を有しており、入力指令から抽出したキーワードとデータベースとを比較して、ルールパターンとパラメータを抽出する。そして、抽出したルールパターンにパラメータを割り当て、当該制御内容を取得する。【選択図】    図５
2005086473.tif 000002
【特許請求の範囲】
【請求項１】
パラメータカテゴリーにパラメータを埋め込むことによって所定の制御情報が取得される定型のルールパターン群を格納した第１のデータベースと、
前記パラメータカテゴリーおよび当該パラメータカテゴリーに埋め込まれるパラメータを抽出するためのキーワード群を格納した第２のデータベースと、
入力指令からキーワードを抽出するキーワード抽出手段と、
抽出したキーワードと前記第２のデータベース中のキーワード群との比較して、入力指令に応じたパラメータカテゴリーおよび当該パラメータカテゴリーに埋め込まれるパラメータを抽出するパラメータ抽出手段と、
前記パラメータ抽出手段によって抽出されたパラメータカテゴリーと前記第１のデータベースに格納された各ルールパターンのパラメータカテゴリーとを比較して、入力指令に応じたルールパターンを抽出するルールパターン抽出手段と、
前記ルールパターン抽出手段にて抽出したルールパターンのパラメータカテゴリーに前記パラメータ抽出手段にて抽出したパラメータを埋め込んで、入力指令に応じた制御情報を取得する制御情報取得手段と、
を有することを特徴とするコントローラ。
【請求項２】
請求項１において、
前記ルールパターンは、監視対象の事象がどの状態に達したときに当該制御を実行するかを規定するコンディションのパラメータカテゴリーと、当該制御の実行内容を規定するアクションのパラメータカテゴリーを含み、
前記パラメータ抽出手段は、前記入力指令から抽出されたキーワードと前記コンディションおよびアクションのパラメータカテゴリーに対応付けられたキーワードとを比較して、入力指令に応じた前記コンディションおよびアクションのパラメータカテゴリーと当該パラメータカテゴリーに埋め込まれるパラメータを抽出し、
前記ルールパターン抽出手段は、前記パラメータ抽出手段によって抽出された前記コンディションおよびアクションのパラメータカテゴリーと前記第１のデータベースに格納された各ルールパターンの前記コンディションおよびアクションのパラメータカテゴリーとを比較して、入力指令に応じたルールパターンを抽出する、
ことを特徴とするコントローラ。
【請求項３】
請求項１または２において、
前記第１のデータベースには、制御対象機器の機能カテゴリーが各ルールパターンに対応付けて格納されており、
前記第２のデータベースには、入力指令中のキーワードから制御対象機器の機能カテゴリーを抽出するためのキーワード群がさらに格納されており、
前記入力指令から抽出されたキーワードと前記第２のデータベースとを比較して制御対象機器の機能を特定する機器機能特定手段をさらに備え、
前記ルールパターン抽出手段は、前記パラメータ抽出手段によって抽出されたパラメータカテゴリーと前記第１のデータベースに格納された各ルールパターンのパラメータカテゴリーとを比較し、且つ、前記機器機能特定手段によって特定された機能カテゴリーと前記第１のデータベースに格納された各ルールパターンの機能カテゴリーとを比較することにより、入力指令に応じたルールパターンを抽出する、
ことを特徴とするコントローラ。
【請求項４】
請求項１ないし３の何れかにおいて、
前記パラメータの設定履歴を前記ルールパターンに対応付けて格納する履歴データベースをさらに備え、
前記パラメータ抽出手段は、前記入力指令から抽出されたキーワードからパラメータを抽出できないとき、前記履歴データベースに格納された当該ルールパターンのパラメータ設定履歴に基づいて、当該入力指令に対するパラメータを設定する、
ことを特徴とするコントローラ。
【請求項５】
請求項４において、
前記履歴データベースはユーザ毎に区分されており、
前記パラメータ抽出手段は、当該入力指令を行ったユーザのパラメータ設定履歴に基づいて、当該入力指令に対するパラメータを設定する、
ことを特徴とするコントローラ。
【請求項６】
請求項１ないし４の何れかにおいて、
前記キーワード抽出手段は、入力指令をテキスト列に変換するテキスト列変換手段と、前記テキスト列を言語処理して単語を抽出する単語抽出手段とを有する、
ことを特徴とするコントローラ。
【請求項７】
少なくとも、上記請求項１ないし６の何れかに記載のデータベースと、当該請求項に記載の手段の機能をコンピュータに付与するための制御プログラムとを含むプログラム。
【請求項８】
少なくとも、上記請求項１ないし６の何れかに記載のデータベースと、当該請求項に記載の手段の機能をコンピュータに付与するための制御プログラムとを格納した記憶媒体。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザからの指令入力に応じて機器を制御するコントローラに関し、特に、複数の家庭内機器を遠隔制御する際に用いて好適なものである。
【背景技術】
【０００２】
近年、家庭内機器をホームネットワークを介して制御する、いわゆるネートワーク家電システムが提案され、規格化されている。このシステムは、ホームサーバ等のリモートコントロール装置をホームネットワークに接続し、このリモートコントロール装置から制御コマンドを送信することによって、対象機器を制御するものである。ここで、リモートコントロール装置と家庭内機器との間の通信は、ＥＣＨＯＮＥＴ、ＵＰｎＰ、ＳＣＰ等の通信プロトコルを利用して行われる。また、通信網としては、各家庭内機器に電源を供給する電源供給線等が利用される。すなわち、家庭内機器とリモートコントロール装置のコンセントを電源ターミナルに接続することにより、家庭内機器とリモートコントロール装置がホームネットワークに接続される。
【０００３】
なお、かかるネットワークシステムの構成例として、たとえば以下の特許文献１に記載のものが知られている。
【特許文献１】特開平１０−２７６４７８号公報
【発明の開示】
【発明が解決しようとする課題】
【０００４】
この種のネットワーク家電システムでは、通常、宅内のコントロール装置（ホームサーバ等）に制御情報を入力して家庭内機器を制御する方法が採られるが、この他に、携帯端末等によって宅外からリモートコントロール装置にアクセスして、制御情報を入力するような方法も採られ得る。後者の場合、制御情報の入力は、たとえば、制御情報入力用の画面等をリモートコントロール装置から携帯端末に提供することにより実現できる。
【０００５】
しかし、この場合、ユーザは定型化されたフォーマットに従って逐一制御情報を入力しなければならず、制御情報の入力時の作業が煩雑となる。他方、携帯端末には、通常、音声入力機能（電話機能）やメール通信機能が配備されており、かかる機能を利用して手軽に制御情報を入力できれば、ユーザにとって便利である。特に、特定のフォーマットに従うことなく、日常の会話をするような感覚で制御情報を一方的に入力できれば、制御情報入力時の利便性はさらに向上する。
【０００６】
そこで、本発明は、携帯端末等から会話感覚で制御情報が入力された場合にも、円滑に機器制御を実行し得る機器制御システムを提供することを課題とする。
【課題を解決するための手段】
【０００７】
本発明は、機器制御を支配する機器制御ルールをコントローラに適用し、この機器制御ルールに整合するように入力指令を解釈し、これにより制御情報を生成するものである。
【０００８】
ここで、機器制御ルールは、パラメータカテゴリーにパラメータを埋め込むことによって所定の制御情報が取得される定型のルールパターン群から構成されており、具体的には、一つのルールパターンは、監視対象ファクターがどの状態に達したときに制御対象機器の制御を行うかを規定するコンディションのカテゴリーと、制御対象機器の制御実行内容を規定するアクションのカテゴリーを含むよう構成されている。それぞれのルールパターンの各カテゴリーに、制御指令に応じたパラメータを割り当てることによって、制御情報が取得される。
【０００９】
コントローラは、入力指令中のキーワードからパラメータカテゴリーおよびそれに割り当てるべきパラメータを抽出するためのデータベース手段を有している。具体的には、入力指令中のキーワードからコンディション、アクションのカテゴリーを特定するためのデータベースを有している。
【００１０】
コントローラは、入力指令をキーワード毎に区分し、各キーワードと上記データベースとを比較して、パラメータカテゴリーとそのパラメータを抽出する。そして、抽出したパラメータカテゴリーに整合するルールパターンをルールパターン群中から抽出し、このルールパターンにパラメータを割り当てて、当該入力指令の制御情報を取得する。
【００１１】
各請求項に記載の発明の特徴は以下のとおりである。
【００１２】
請求項１の発明は、パラメータカテゴリーにパラメータを埋め込むことによって所定の制御情報が取得される定型のルールパターン群を格納した第１のデータベースと、前記パラメータカテゴリーおよび当該パラメータカテゴリーに埋め込まれるパラメータを抽出するためのキーワード群を格納した第２のデータベースと、入力指令からキーワードを抽出するキーワード抽出手段と、抽出したキーワードと前記第２のデータベース中のキーワード群との比較して、入力指令に応じたパラメータカテゴリーおよび当該パラメータカテゴリーに埋め込まれるパラメータを抽出するパラメータ抽出手段と、前記パラメータ抽出手段によって抽出されたパラメータカテゴリーと前記第１のデータベースに格納された各ルールパターンのパラメータカテゴリーとを比較して、入力指令に応じたルールパターンを抽出するルールパターン抽出手段と、前記ルールパターン抽出手段にて抽出したルールパターンのパラメータカテゴリーに前記パラメータ抽出手段にて抽出したパラメータを埋め込んで、入力指令に応じた制御情報を取得する制御情報取得手段とを有するコントローラである。
【００１３】
また、請求項２の発明は、請求項１に記載のコントローラにおいて、前記ルールパターンは、監視対象の事象がどの状態に達したときに当該制御を実行するかを規定するコンディションのパラメータカテゴリーと、当該制御の実行内容を規定するアクションのパラメータカテゴリーを含み、前記パラメータ抽出手段は、前記入力指令から抽出されたキーワードと前記コンディションおよびアクションのパラメータカテゴリーに対応付けられたキーワードとを比較して、入力指令に応じた前記コンディションおよびアクションのパラメータカテゴリーと当該パラメータカテゴリーに埋め込まれるパラメータを抽出し、前記ルールパターン抽出手段は、前記パラメータ抽出手段によって抽出された前記コンディションおよびアクションのパラメータカテゴリーと前記第１のデータベースに格納された各ルールパターンの前記コンディションおよびアクションのパラメータカテゴリーとを比較して、入力指令に応じたルールパターンを抽出する。
【００１４】
さらに、請求項３の発明は、請求項１または２に記載のコントローラにおいて、前記第１のデータベースには、制御対象機器の機能カテゴリーが各ルールパターンに対応付けて格納されており、前記第２のデータベースには、入力指令中のキーワードから制御対象機器の機能カテゴリーを抽出するためのキーワード群がさらに格納されており、前記入力指令から抽出されたキーワードと前記第２のデータベースとを比較して制御対象機器の機能を特定する機器機能特定手段をさらに備え、前記ルールパターン抽出手段は、前記パラメータ抽出手段によって抽出されたパラメータカテゴリーと前記第１のデータベースに格納された各ルールパターンのパラメータカテゴリーとを比較し、且つ、前記機器機能特定手段によって特定された機能カテゴリーと前記第１のデータベースに格納された各ルールパターンの機能カテゴリーとを比較することにより、入力指令に応じたルールパターンを抽出することを特徴とするものである。
【００１５】
上記請求項１ないし３の発明によれば、入力指令に対応するルールパターンとこのルールパターンに割り当てるべきパラメータが第１および第２のデータベースをもとに抽出されて制御情報が取得されるので、ユーザはフォーマット等を気にせずに自由に制御指令を入力でき、もって、制御指令入力時における利便性を向上させることができる。すなわち、上記請求項１ないし３の発明によれば、ユーザインタフェース機能に優れたリモートコントロール動作を実現できる。
【００１６】
また、請求項４の発明は、請求項１ないし３の何れかに記載のコントローラおいて、前記パラメータの設定履歴を前記ルールパターン毎に格納する履歴データベースをさらに備えている。そして、前記入力指令から抽出されたキーワードからパラメータを抽出できないとき、前記パラメータ抽出手段は、前記履歴データベースに格納された当該ルールパターンのパラメータ設定履歴に基づいて、当該入力指令に対するパラメータを設定するものである。
【００１７】
この発明によれば、たとえばパラメータを抽出するためのキーワードが省略されて制御指令が入力されたとしても、過去の履歴に基づいて適正なパラメータが適宜設定されるので、ユーザは、より会話的な制御情報の入力を行うことができ、制御情報入力時の利便性をさらに向上させることができる。
【００１８】
また、請求項５の発明は、請求項４に記載のコントローラにおいて、前記履歴データベースがユーザ毎に区分されており、前記パラメータ抽出手段は、当該入力指令を行ったユーザのパラメータ設定履歴に基づいて、当該入力指令に対するパラメータを設定することを特徴とする。
【００１９】
この発明によれば、上記の如くユーザの利便性を向上させながら、さらに、ユーザ毎の嗜好に対応した細やかな制御を実現することができ、もって、さらにユーザインタフェース機能に優れたリモートコントロール動作を実現できる。
【００２０】
請求項６の発明は、請求項１ないし４の何れかに記載のコントローラおいて、前記キーワード抽出手段は、入力指令をテキスト列に変換するテキスト列変換手段と、前記テキスト列を言語処理して単語を抽出する単語抽出手段とを有することを特徴とする。
【００２１】
この発明によれば、たとえば音声やメールにて制御指令が入力された場合にも、制御情報の取得に必要なキーワードを抽出できるので、ユーザは、通話機能やメールＳ通信機能を利用して制御指令を手軽に入力でき、指令入力時の簡便性を向上させることができる。
【００２２】
請求項７の発明は、少なくとも、上記請求項１ないし６の何れかに記載のデータベースと、当該請求項に記載の手段の機能をコンピュータに付与するための制御プログラムとを含むプログラムである。
【００２３】
請求項８の発明は、少なくとも、上記請求項１ないし６の何れかに記載のデータベースと、当該請求項に記載の手段の機能をコンピュータに付与するための制御プログラムとを格納した記憶媒体である。
【００２４】
本発明の特徴ないしその技術的意義および効果は、以下に示す実施の形態の説明により更に明らかとなろう。なお、以下の実施の形態では、本発明に係るコントローラは、宅内サーバ１００と宅外サーバ２００によって具体化されているが、このようにコントローラが２つのパートに分割される必要はなく、また、その設置場所も、宅内・宅外に限らず、任意に設定することができる。以下の実施の形態は、あくまでも、本発明の一つの実施形態であって、本発明ないし各構成要件の用語の意義等は、以下の実施の形態に記載されたものに制限されるものではない。
【発明を実施するための最良の形態】
【００２５】
以下、本発明の実施の形態につき図面を参照して説明する。
【００２６】
図１に実施の形態に係るネットワークシステムの構成を示す。
【００２７】
本ネットワークシステムは、宅内に設置された宅内サーバ１００と、宅外に設置された宅外サーバ２００と、宅外サーバ２００にアクセス可能なユーザ端末３００と、宅内サーバ１００と宅外サーバ２００とを媒介するインターネット４００と、宅内サーバ１００に情報を入力するためのユーザインタフェース装置５００とから構成されている。
【００２８】
宅内サーバ１００は、ＥＣＨＯＮＥＴ、ＵＰｎＰ、ＳＣＰ等の通信プロトコルに対応した送受信手段を備えており、電源供給線等の家庭内通信手段を介して、エアコンやＤＶＤ装置等（クライアントデバイス）に接続可能とされている。宅内サーバ１００は、ユーザから制御指令が入力されたとき、当該制御指令に応じた制御コマンドを生成し、これを、上記通信手段を介して、制御対象のクライアントデバイスに送信する。
【００２９】
ユーザは、宅内においては、ユーザＩＦ装置５００を介して、宅内サーバ１００に制御指令を入力できる。また、宅外からは、宅外サーバ２００を仲介して、宅内サーバ１００に制御指令を入力できる。ここで、宅外からのアクセスは、あらかじめ登録された宅外サーバ２００のみに制限されている。具体的には、通信プロトコルとしてＩＰプロトコルが利用される場合、宅内サーバ１００は、当該宅外サーバ２００のＩＰアドレスを送信元とするアクセスのみを受理し、それ以外のＩＰアドレスを送信元とするアクセスを拒否するよう構成されている。このようにアクセス元を限定することにより、宅内サーバ１００に対する不正アクセスを抑制でき、クライアントデバイスの不正制御を抑止できる。
【００３０】
さらに、宅外サーバ２００は、ユーザ端末３００からアクセスがあったとき、当該アクセスが適正ユーザからのものであるか認証を行う。具体的には、アクセス要求時に当該ユーザ端末３００から受信した第１の識別情報（ファミリーＩＤ）が、自己のユーザＤＢ（データベース）に既に登録されているかを判定する。そして、受信したファミリーＩＤがユーザＤＢに登録されていれば当該アクセスを許可し、登録されていなければ当該アクセスを拒否する。
【００３１】
本システムにおいては、ユーザ認証用の識別情報として、上記第１の識別情報（ファミリーＩＤ）の他に、第２の識別情報（ユーザＩＤ）が用いられる。ここで、ファミリーＩＤは、一つの宅内サーバに対し１つだけ設定される。他方、ユーザＩＤは、宅内サーバを利用するユーザ毎に個別に設定される。ファミリーＩＤとユーザＩＤは、ユーザ端末３００から宅外サーバ２００に提供される。
【００３２】
ファミリーＩＤとユーザＩＤの提供は、ユーザ端末３００から宅外サーバ２００へアクセスするときに同時に行うようにしても良いし、あるいは、宅外サーバ２００から送信要求を受けたときに個別に提供するようにしても良い。また、ファミリーＩＤとユーザＩＤは、ユーザ端末３００内のメモリから読み出すようにしても良いし、あるいは、ユーザがユーザ端末に直接入力するようにしても良い。
【００３３】
提供されたファミリーＩＤとユーザＩＤのうち、ファミリーＩＤは、上記のとおり宅外サーバ２００におけるユーザ認証時に参照される。一方、ユーザＩＤは、宅外サーバ２００における認証後に宅内サーバ１００にて行われるユーザ認証の際に参照される。すなわち、宅外サーバ２００にて行われたユーザ認証により適正ユーザからのアクセスであると判定されると、宅外サーバ２００は、ユーザ端末３００から提供されたユーザＩＤを宅内サーバ１００に送信し、宅内サーバ１００にアクセス要求を行う。これを受けて、宅内サーバ１００は、受信したユーザＩＤが自己のユーザＤＢ（データベース）に既に登録されているかを判定する。そして、受信したユーザＩＤがユーザＤＢに登録されていれば宅外サーバ２００からのアクセスを許可し、登録されていなければ宅外サーバ２００からのアクセスを拒否する。
【００３４】
宅内サーバ１００によってアクセスが許可されると、ユーザは、宅外サーバ２００を仲介として、宅内サーバ１００に制御指令を入力できる。すなわち、ユーザがユーザ端末３００に制御指令を入力すると、この制御指令は、ユーザ端末３００から宅外サーバ２００に送信される。この際、ユーザは、音声、メール等、種々の情報伝達媒体を用いて制御指令を入力できる。たとえば、ユーザ端末３００が携帯電話である場合、「巨人阪神戦を録画」と音声で入力すると、この音声情報が、端末装置３００から宅外端末２００に送られる。
【００３５】
宅外サーバ２００は、受信した音声情報を解釈し、宅内の対象機器を制御するための制御情報を生成する。たとえば、「巨人阪神戦を録画」の音声情報を受信すると、当該番組を録画装置に録画予約するための制御情報が生成する。そして、生成した制御情報を宅内サーバ１００に送る。宅内サーバ１００は、受信した制御情報から対象機器を制御するための制御コマンドを生成し、これを対象機器に送信する。たとえば、上記の場合には、巨人阪神戦を録画予約するための制御コマンドを録画機器（たとえばＤＶＤ装置）に送信する。これにより、宅外からの録画予約設定が完了する。
【００３６】
ここで、宅外サーバ２００には、ユーザ端末３００から入力された制御指令を解釈して制御情報を生成するための知的データベースが配備されている。この知的データベースには、知的処理を行うに必要な種々のデータが格納されている。たとえば、対象機器の「機能カテゴリー」を特定するために必要なキーワードがカテゴリーに対応付けてテーブル化されている。対象機器の機能カテゴリーが“録画”であれば、テーブルには、当該カテゴリーに対して、“録画”、“記録”、“予約”等のキーワードが対応付けられている。たとえば、上記の如く、ユーザから「巨人阪神戦を録画」と入力されると、このうち“録画”の単語をもとにテーブルが参照され、制御対象機器の機能カテゴリーが“録画”の機能に特定される。
【００３７】
このようにして、制御対象機器の機能カテゴリーが特定されると、宅外サーバ２００は、当該機能カテゴリー“録画”に該当する対象機器としてどのようなものがあるかを、宅内サーバ１００に対して問い合わせる。宅内サーバ１００は、宅内制御可能なクライアントデバイスのうち、当該機能カテゴリー“録画”に該当するクライアントデバイス（たとえば、ＤＶＤ装置、ＶＴＲ装置、等）を選択候補として宅外サーバ２００に返信する。これを受けて宅外サーバ２００は、受信したクライアントデバイスを選択候補としてユーザ端末３００に提供する。このうち、所望の制御対象機器（たとえば、ＤＶＤ装置）がユーザにより選択されると、その選択結果が宅外サーバ２００に返信される。これにより、制御対象の機器が特定される。
【００３８】
なお、かかる対象機器の特定に際し、上記のように機能カテゴリーに該当する対象機器としてどのようなものがあるかを宅内サーバ１００に問い合わせる処理に代えて、宅外サーバ２００側で機能カテゴリーに該当する対象機器を特定するように構成することもできる。たとえば、上記した宅内サーバ１００に対するアクセス確認の際に、宅内サーバ１００から、クライアントデバイスとその機能カテゴリーとを対応付けた情報を取得するようにすれば、制御指令から導き出した機能カテゴリーに対応するクライアントデバイスを宅外装置２００側で特定できる。この他、宅内サーバ毎のクライアントデバイスとその機能カテゴリーをデータベースとして予め宅外サーバ２００に構築しておけば、制御指令から導き出した機能カテゴリーに対応するクライアントデバイスを宅外装置２００側で特定することができる。
【００３９】
また、知的データベースには、「制御条件」のカテゴリー（温度、時間、湿度、等）とそのパラメータを特定するために必要なキーワードが、当該カテゴリーに対応付けてテーブル化されている。たとえば、制御条件のカテゴリーが“温度”であれば、当該カテゴリーに対して“○○度”等のキーワードが対応付けられている。また、制御条件のカテゴリーが“時間”であれば、“○○時”、“○○分”等のキーワードが対応付けられている。
【００４０】
また、知的データベースには、「制御行為」のカテゴリー（チャンネル、エアコン設定モード、等）とそのパラメータを特定するために必要なキーワードが、当該カテゴリーに対応付けてテーブル化されている。たとえば、制御行為のカテゴリーが“チャンネル”であれば、当該カテゴリーに対して “○○チャンネル”、“○○チャン”等のキーワードが対応付けられている。また、“エアコン設定モード”であれば、冷房モードのカテゴリーに対して“冷房”、“冷やす”等のキーワードが、また、暖房モードのカテゴリーに対して“暖房”、“暖める”等のキーワードが対応付けられている。
【００４１】
さらに、知的データベースには、「制御行為」のトリガ内容を示すキーワードがテーブル化されている。たとえば、制御行為のトリガがＯＮであれば、“ＯＮ”、“スタート”、“開始”、“録画”等のキーワードが対応付けられており、また、制御行為のトリガがＯＦＦであれば、“終了”、“停止”等のキーワードが対応づけられている。
【００４２】
ユーザから制御指令の入力があると、この制御指令中のキーワードと知的データベース中のキーワードとが比較され、「制御条件」のカテゴリーとそのパラメータ、「制御行為」のカテゴリーとそのパラメータ、および、「制御行為」のトリガ内容がそれぞれ特定される。たとえば、“８時から１０チャンを録画”と入力されると、かかる入力指令が、“８時”、“１０チャン”、“録画”に分節される。そして、上記知的データベースをもとに、制御条件のカテゴリーが“時間”、そのパラメータが“８時”、制御内容のカテゴリーが“チャンネル”、そのパラメータが“１０ｃｈ”、機能カテゴリーが“録画”、制御条件のトリガ内容が“ＯＮ”として特定される。
【００４３】
加えて、知的データベースには、「制御条件」および「制御行為」のカテゴリーとパラメータの特定に必要なその他の情報も格納されている。たとえば、番組予約の「制御条件」および「制御行為」のカテゴリーとパラメータの特定に必要な情報として、地域別の番組表が知的データベース上に構築されている。宅外サーバ２００は、各地域の番組表提供サイトに逐次アクセスし、最新のＥＰＧを取得する。そして、取得したＥＰＧをキーワード化し、地域別の番組表データベースを知的データベース上に構築する。
【００４４】
たとえば、上記の如く、ユーザから「巨人阪神戦を録画」と入力された場合、当該入力の後、最初に放映される“巨人阪神戦”あるいは“巨人”、“阪神”のキーワードを含む番組が、当該ユーザの居住地域の番組表から特定される。そして、特定された番組のチャンネル（たとえば１０ｃｈ）と、その開始、終了時間（たとえば１９：００〜２１：００）が番組表から抽出され、これが制御行為および制御条件のパラメータとして設定される。
【００４５】
このようにして、知的データベースをもとに、「機能カテゴリー」、「対象機器」、「制御条件」、「制御行為」、「開始・終了トリガ」が特定されると、これらをもとに制御情報が生成され、宅内サーバ１００に送信される。宅内サーバ１００は、受信した制御情報をもとに制御コマンドを生成し、これを制御対象機器に送信する。これにより、制御対象機器の制御が実行される。
【００４６】
以上が本実施の形態の概要であるが、本実施の形態では、さらに、宅外サーバ２００から宅内サーバ１００に対する制御情報の受け渡しと、制御コマンドの実行を円滑に行うために、一定の制御ルールが、宅内サーバ１００と宅外サーバ２００に設定されている。かかる制御ルールの詳細については、以下の実施例において詳細に説明するとととする。
【実施例１】
【００４７】
図２に、宅内サーバ１００の機能ブロック図を示す。
【００４８】
図示のとおり、宅内サーバ１００は、通信制御部１０１と、プロセッサ１０２と、ユーザ認証部１０３と、実行ルール生成部１０４と、ルール実行部１０５と、ユーザインタフェース（ＩＦ）部１０６と、デバイス制御部１０７と、デバイスＤＢ１０８と、ユーザＤＢ１０９と、ルール規則ＤＢ１１０と、実行ルールＤＢ１１１とから構成されている。
【００４９】
通信制御部１０１は、インターネット４００を介したデータ通信を制御する。プロセッサ１０２は、処理プログラムに従って各部を制御する。なお、かかるプロセッサ１０２は、適正な宅外サーバ２００からのアクセスのみを許可するための処理をも実行する。すなわち、アクセス権のある宅外サーバ２００のＩＰアドレスを送信元とするアクセスのみを受理し、それ以外のＩＰアドレスを送信元とするアクセスを拒否する処理を実行する。アクセス権のある宅外サーバのＩＰアドレスは、図示しない内蔵メモリに格納されている。プロセッサ１０２は、外部からアクセス要求があったとき、アクセス元のＩＰアドレスと内蔵メモリに記憶されているＩＰアドレスとを比較し、両者が一致する場合に、当該アクセス要求を許可する。
【００５０】
ユーザ認証部１０３は、宅外サーバ２００からのアクセス要求時に取得したユーザＩＤとパスワードがユーザＤＢ１０９に登録されているかを検証し、当該宅外サーバ２００からのアクセス要求が許可可能であるかを判定する。
【００５１】
実行ルール生成部１０４は、宅外サーバ２００から受信した制御情報に基づいて実行ルールを生成し、これを実行ルールＤＢに登録する（実行ルール生成部１０４の機能の詳細については後述する）。ルール実行部１０５は、実行ルールＤＢ１１１に登録されている実行ルール（制御条件）を監視し、制御対象のクライアントデバイスに対する制御条件が充足されたかを判定する。制御条件が充足されたときは、デバイス制御部１０７に制御情報を送信する（ルール実行部１０５の機能の詳細については後述する）。
【００５２】
ユーザＩＦ部１０６は、ユーザＩＦ装置５００から入力された入力情報をプロセッサ１０２に送る。デバイス制御部１０７は、ルール実行部１０５から受け取った制御情報に基づいて制御コマンドを生成し、これを制御対象のクライアントデバイスに送信する。
【００５３】
デバイスＤＢ１０８は、デバイス制御部１０７にて制御可能なクライアントデバイスに関するデータを格納するデータベースである。図３（ａ）に、デバイスＤＢ１０７に格納されているデータの構成を示す。図示のとおり、デバイスＤＢ１０７には、各クライアントデバイスを特定するためのデバイスＩＤと、当該クライアントデバイスのデバイス名と、当該クライアントデバイスの機能カテゴリーと、当該クライアントデバイスの設置位置を示すロケーションデータと、当該クライアントデバイスに対する制御権限を有するユーザを特定するためのユーザＩＤが、クライアントデバイス毎に区分して格納されている。
【００５４】
図２に戻り、ユーザＤＢ１０９は、当該宅内サーバ１００に対するアクセス権限を有するユーザを登録するデータベースである。図３（ｂ）に、ユーザＤＢ１０９に格納されているデータの構成を示す。図示のとおり、ユーザＤＢ１０９には、各ユーザのユーザＩＤと当該ユーザのパスワードが、ユーザ毎に区分して格納されている。
【００５５】
図２に戻り、ルール規則ＤＢ１１０は、それぞれの機能カテゴリーにて発生し得る制御方法を、現象（イベント）、制御条件（コンディション）、制御行為（アクション）に区分して定型化したルール規則（スケルトンルール）を格納するデータベースである。
【００５６】
図４（ａ）に、ルール規則ＤＢ１１０に格納されているデータの構成を示す。図示のとおり、ルール規則ＤＢ１１０には、ルール規則を特定するためのルールＩＤと、当該ルールが適用される機能カテゴリーと、当該ルール規則にて参照される現象（イベント）と、当該ルール規則の制御条件（コンディション）と、当該ルール規則の制御行為（アクション）とが、ルール規則毎に区分して格納されている。
【００５７】
たとえば、ルールＩＤ００１のルール規則は、録画予約に関するものであり、イベント“時間”が、コンディション“開始時間”になったときに、アクション“設定チャンネル”を“録画開始”するというものである。また、ルールＩＤ０１３のルール規則は、空調設定に関するものであり、イベント“温度”が、コンディション“設定温度”になったときに、アクション“設定モード（冷房、暖房、除湿、送風）”を“ＯＮ”するというものである。なお、ルール規則によっては、イベントとコンディションが存在しないものがある。たとえば、ルールＩＤ０１１のルール規則は、エアコン設定に関するものであり、イベントとコンディションがＮＵＬＬとなっている。このルール規則は、制御指令によってアクションのみが設定可能であり、単に、“設定モード（冷房、暖房、除湿、送風）”を“ＯＮ”するとの制御指令が入力されたときに用いられるものである。
【００５８】
なお、同図中、ハッチングが付されているパートは、実行ルール生成の際にパラメータが埋め込まれるパートを示すものである。かかるパラメータの埋め込みについては後述する。
【００５９】
図２に戻り、実行ルールＤＢ１１１は、実行ルール生成部１０４にて生成された実行ルールを登録するデータベースである。図４（ｂ）に、実行ルールＤＢ１１１に格納されているデータの構成を示す。図示のとおり、実行ルールＤＢ１１０には、制御対象となるクライアントデバイスを特定するためのデバイスＩＤと、制御条件（コンディション）の充足性を監視するために参照される現象（イベント）と、当該制御の制御条件（コンディション）と、当該制御の制御行為（アクション）とが、実行ルール毎に区分して格納されている。
【００６０】
たとえば、同図最上段の実行ルールは、デバイスＤ００１に録画予約（開始）を設定するためのものであり、イベント“時間”が、コンディション“１９：００”になったときに、アクション“１０チャンネル”を“録画開始”するというものである。また、上から３段目の実行ルールは、冷房設定に関するものであり、イベント“温度”が、コンディション“２６℃以上”になったときに、アクション“冷房”を“ＯＮ”するというものである。なお、同図の上から４段目に示すように、実行ルールＤＢ１１１には、イベントとコンディションが“ＮＵＬＬ”のもの、すなわち、条件設定なく直ちに制御を実行するものも登録される。
【００６１】
上記実行ルール生成部１０４は、ルールＩＤと、デバイスＩＤと、コンディションのパラメータと、アクションのパラメータを、たとえば上記宅外サーバ２００から取得して実行ルールを生成する。すなわち、ルールＩＤで特定されたルール規則に対し、取得したコンディションのパラメータとアクションのパラメータを埋め込み、さらに取得したデバイスＩＤを付して実行ルールを生成する。たとえば、ルールＩＤ＝００１、デバイスＩＤ＝Ｄ００１、コンディションパラメータ＝１９：００、アクションパラメータ＝１０ｃｈを取得した場合、図４（ａ）のルール規則中、ルールＩＤ＝００１のルール規則に、コンディションパラメータ＝１９：００とアクションパラメータ＝１０ｃｈを埋め込み、これに、デバイスＩＤ＝Ｄ００１を付して、同図（ｂ）の最上段の実行ルールを生成する。
【００６２】
ルール実行部１０５は、実行ルールＤＢ１１１に登録された実行ルールを監視し、当該実行ルールの条件が充足されたかを判定する。たとえば、図４（ｂ）の最上段の実行ルールの場合、ルール実行部１０５は、時計からの時刻情報を参照し、現在時刻が１９：００に達したかを判定する。そして、現在時刻が１９：００に達すると、デバイスＩＤ＝Ｄ００１と、アクション＝１０ｃｈ＋録画開始からなる制御情報をデバイス制御部１０７に送る。デバイス制御部１０７は、受け取った制御情報から制御コマンドを生成する。そして、これを、デバイスＩＤで特定されたクライアントデバイスに送信する。
【００６３】
なお、コンディションが“ＮＵＬＬ”の実行ルールが実行ルールＤＢ１１１に登録された場合、ルール実行部１０５は、直ちに、当該実行ルールから制御情報（デバイスＩＤ＋アクション）を生成し、これを、デバイス制御部１０７に送る。したがって、コンディションが“ＮＵＬＬ”の実行ルールは、実行ルールＤＢ１１１に登録されると直ちに実行され、制御対象のクライアントデバイスの制御が行われる。
【００６４】
図５に、宅外サーバ２００の機能ブロック図を示す。
【００６５】
図示のとおり、宅外サーバ２００は、通信制御部２０１と、プロセッサ２０２と、知的処理部２０３と、ユーザ認証部２０４と、ユーザインタフェース（ＩＦ）部２０５と、知識ＤＢ２０６と、ルール規則ＤＢ２０７と、履歴ＤＢ２０８と、ユーザＤＢ２０９とから構成されている。
【００６６】
通信制御部２０１は、インターネット４００または電話通信網を介したデータ通信を制御する。プロセッサ２０２は、処理プログラムに従って各部を制御する。知的処理部２０３は、ユーザからの制御指令を知的ＤＢ２０７を参照して解釈し、制御情報を生成する（知的処理部２０３の機能の詳細について後述する）。ユーザ認証部２０４は、ユーザ端末３００からのアクセス要求時に取得したファミリーＩＤとパスワードがユーザＤＢ２０９に登録されているかを検証し、当該ユーザ端末３００からのアクセス要求が許可可能であるかを判定する。ユーザＩＦ部２０５は、ユーザ端末３００から入力された制御指令（音声、メール、等）をテキストデータに変換し、これを知的処理部２０３に送る。
【００６７】
知識ＤＢ２０６は、知的処理部２０３が制御指令を解釈して制御情報を生成するに必要な各種データを格納するデータベースである。かかる知的ＤＢ２０６は、上記実施の形態で説明した知的データベースに相当する。かかる知的ＤＢ２０６には、以下のデータベースが構築されている。
【００６８】
(a)「機能カテゴリー」を特定するために必要なキーワードテーブル
(b)「制御条件」のカテゴリー（温度、時間、湿度、等）とそのパラメータを特定するために必要なキーワードテーブル
(c)「制御行為」のカテゴリー（チャンネル、エアコン設定モード、等）とそのパラメータを特定するために必要なキーワードテーブル
(d)「制御行為」のトリガ内容を示すキーワードテーブル
(e)「制御条件」および「制御行為」のカテゴリーとパラメータの特定に必要なその他の情報（番組表データベース等）
【００６９】
図６および図７に、知的ＤＢ２０６に格納されている(a)〜(d)のテーブルのデータ構成を示す。かかる知的ＤＢ２０６には、上記以外にも、ユーザからの入力指令を解釈するに必要な情報（制御対象機器の設置場所（ロケーション）を特定するために必要なテーブル、等）や、ユーザからの制御指令を言語処理するに必要な言語データベース、言語処理プログラム等が格納されている。
【００７０】
図５に戻り、ルール規則ＤＢ２０７には、上記宅内サーバ１００におけるルール規則ＤＢ１１０と同様のデータ（スケルトンルール）が格納されている。履歴ＤＢ２０８には、宅内サーバ１００に送信した制御情報の履歴がユーザ毎に区分して格納されている。
【００７１】
ユーザＤＢ２０９は、当該宅外サーバ２００に対するアクセス権限を有するユーザを登録するデータベースである。図８に、ユーザＤＢ２０９に格納されているデータの構成を示す。図示のとおり、ユーザＤＢ２０９には、ファミリーＩＤと、当該ファミリーＩＤのパスワードと、当該ファミリーＩＤを利用できるユーザのユーザＩＤと、当該ユーザの居住地の住所コードと、当該ファミリーＩＤが設定されている宅内サーバの位置情報（ＦＱＤＮ）が、ファミリーＩＤ毎に区分して格納されている。
【００７２】
次に、図９を参照して、本実施例の動作について説明する。
【００７３】
ユーザ端末３００から宅外サーバ２００に対して制御指令の入力要求があると、宅外サーバ２００は、ユーザ端末３００に対しファミリーパスワードの入力を要求する。この要求に対しユーザがファミリーパスワードを入力すると、ユーザ端末３００は、入力されたファミリーパスワードと、予め内蔵メモリに格納されているファミリーＩＤを宅外サーバ２００に送信する（Ｓ１０１）。
【００７４】
宅外サーバ２００は、受信したファミリーＩＤとファミリーパスワードがユーザＤＢ２０９に登録されているかを、ユーザ認証部２０４において判定する（Ｓ１０２）。そして、これらがユーザＤＢ２０９に登録されていなければ、通信制御部２０１を介してアクセス不可のメッセージを宅外サーバ２００に送信する。他方、受信したファミリーＩＤとファミリーパスワードがユーザＤＢ２０９に登録されていれば、当該ファミリーＩＤに対応するＦＱＤＮ（宅外サーバの位置情報）をユーザＤＢから抽出する（Ｓ１０３）。そして、ユーザ端末３００に対し、ユーザＩＤとユーザパスワードの送信要求を発する（Ｓ１０４）。
【００７５】
この要求に対し、ユーザがユーザパスワードを入力すると、ユーザ端末３００は、入力されたユーザパスワードと、予め内蔵メモリに格納されているユーザＩＤを宅外サーバ２００に送信する（Ｓ１０５）。これを受信した宅外サーバ２００は、受信したユーザＩＤとユーザパスワードを付したアクセス要求を、上記Ｓ１０３にて抽出したＦＱＤＮに送信する（Ｓ１０６）。
【００７６】
かかるアクセス要求を受信した宅内サーバ１００は、まず、当該アクセス要求の正当性をプロセッサ１０２において検証する（Ｓ１０７）。かかる検証は、上記のとおり、アクセス元のＩＰアドレスが予め登録したものに一致するかによって行う。そして、当該アクセス要求が正当なければ、アクセス不可の通知を宅外サーバ２００に返信する。かかる通知は、宅外サーバ２００からユーザ端末３００に転送される（Ｓ１０９）。
【００７７】
他方、Ｓ１０７にて当該アクセス要求が正当であると判定すると、次に、受信したユーザＩＤとユーザパスワードがユーザＤＢ１０９に登録されているかを、ユーザ認証部１０３において判定する（Ｓ１０８）。そして、これらがユーザＤＢ１０９に登録されていなければ、アクセス不可の通知を宅外サーバ２００に返信する。かかる通知は、宅外サーバ２００からユーザ端末３００に転送される（Ｓ１０９）。他方、これらがユーザＤＢ１０９に登録されていれば、制御許可の通知を宅外サーバ２００に返信する（Ｓ１１０）。
【００７８】
宅外サーバ２００は、宅内サーバ１００から制御許可の通知を受け取ると、制御入力を促すメッセージをユーザ端末３００に送信する（Ｓ１１１）。かかるメッセージは、音声、メール等、ユーザ端末３００に適した方法にて実行される。そして、送信されたメッセージはユーザ端末３００上において、音声または映像等の形態で出力される（Ｓ１１２）。
【００７９】
かかるメッセージに対し、ユーザが、所望の制御指令を入力すると、かかる制御指令は、宅外サーバ２００に送信される。かかる制御指令の入力は、音声、メール等、ユーザ端末３００に適した方法にて行われる。かかる制御指令は、宅外サーバ２００の通信制御部２０１にて受信され、ユーザＩＦ部２０５に送られる。ユーザＩＦ部２０５は、受け取った制御指令をテキストデータに変換し、これを知的処理部２０３に送る。ここで、ユーザＩＦ部２０５は、受け取った制御指令が音声情報によるものであれば、これを音声認識してテキストデータに変換し知的処理部２０３に送る。また、メールデータであれば、メール中のメッセージのみを抽出してこれをテキストデータの形態で知的処理部２０３に送る。
【００８０】
知的処理部２０３は、受け取ったテキストデータをもとに制御指令を解釈し、制御情報を生成する（これについては追って詳述する）。そして、生成した制御情報を宅内サーバ１００に送信する（Ｓ１１３）。送信された制御情報は、ファミリーＩＤとユーザＩＤとともに、履歴ＤＢ２０８に登録される。
【００８１】
宅内サーバ１００は、制御情報に含まれているパラメータを対応するルール規則（スケルトンルール）に埋め込んで実行ルールを生成する（これについては追って詳述する）。かかる実行ルールの生成は、上記の如く、実行ルール生成部１０４が行う。そして、生成した実行ルールを実行ルールＤＢ１１１に登録し（Ｓ１１４）、制御完了の通知を宅外サーバ２００に送信する（Ｓ１１５）。宅外サーバ２００は、受信した制御完了通知をユーザ端末３００に転送する（Ｓ１１６）。かかる通知は、ユーザ端末３００上に表示される（Ｓ１１７）。これにより、宅外サーバ２００を仲介した制御指令の設定処理が完了する。
【００８２】
なお、Ｓ１１４で登録された実行ルールは、ルール実行部１０５にて実行される（Ｓ１１８）。すなわち、ルール実行部１０５は、実行ルールＤＢ１１１に登録された実行ルールを監視し、当該実行ルールの条件が充足されたかを判定する。そして、条件が充足されると、デバイス制御部１０７にて制御コマンドを生成し、これを制御対象のクライアントデバイスに送信する。これに対し、クライアントデバイスから制御実行の応答がなされると、かかる実行ルールのアクション完了が確認される。その後、当該実行ルールが実行ルールＤＢ１１１から消去される。
【００８３】
図１０に、知的処理部２０３における制御情報の生成処理フローを示す。
【００８４】
知的処理部２０３は、入力指令に応じたテキストデータをユーザＩＦ部２０５から受信すると（Ｓ２０１）、まず、かかるテキストデータを言語処理して、テキスト中に含まれている単語を抽出する（Ｓ２０２）。たとえば、“ニジュウロクドデレイボウヲオン”のテキストデータを受け取った場合、これを言語処理して、“２６度”、“冷房”、“オン”の単語を抽出する。次に、知的処理部２０３は、抽出した単語と知的ＤＢ２０６中の機能カテゴリー特定用のテーブル（図６の(a)参照）とを比較し、制御対象機器の機能カテゴリーを特定する。たとえば、上記の場合、“冷房”の単語から、制御対象機器のカテゴリーを“空調機能”に特定する。そして、特定した機能カテゴリーから制御対象のデバイスを特定する（Ｓ２０３）。かかるデバイス特定処理については、追って詳述する（図１２）。
【００８５】
しかして、制御対象デバイスの特定を行うと、次に、知的処理部２０３は、抽出した単語と知的ＤＢ２０６中の制御行為（アクション）カテゴリー特定用のテーブル（図７の(c)参照）とを比較し、制御行為（アクション）のカテゴリーとそのパラメータを特定する。たとえば、上記の場合、“冷房”の単語から、コンディションカテゴリーを“設定モード”に特定する。そして、そのパラメータを“冷房”に設定する。
【００８６】
また、知的処理部２０３は、抽出した単語と知的ＤＢ２０６中のトリガ内容特定用のテーブル（図７の(d)参照）とを比較し、制御行為（アクション）のトリガ内容を特定する。たとえば、上記の場合、“オン”の単語から、トリガ内容を“ＯＮ”に特定する。
【００８７】
さらに、知的処理部２０３は、抽出した単語と知的ＤＢ２０６中の制御条件（コンディション）カテゴリー特定用のテーブル（図６の(b)参照）とを比較し、制御条件（コンディション）のカテゴリーとそのパラメータを特定する。たとえば、上記の場合には、まず“２６度”の単語から、コンディションカテゴリーを“温度”に特定する。そして、設定モードが“冷房”であること、トリガ内容が“ＯＮ”であること、および“２６度”の単語から、制御条件が２６度“以上”であることを知的処理プログラムによって判定し、上記コンディションカテゴリー“温度”のパラメータを“２６度以上”に設定する（Ｓ２０４）。
【００８８】
次に、知的処理部２０３は、上記の如くして特定した機能カテゴリー、アクションカテゴリー、コンディションカテゴリーと、ルール規則ＤＢ２０７中のスケルトンルール（図４（ａ）参照）とを比較し、特定した機能カテゴリー、アクションカテゴリー、アクショントリガ、コンディションカテゴリーに整合するスケルトンルールを特定する（Ｓ２０５）。たとえば上記の場合には、機能カテゴリー＝空調、アクションカテゴリー＝設定モード、アクショントリガ＝ＯＮ、コンディションカテゴリー＝温度に整合するスケルトンルールとして、図４（ａ）中、ルールＩＤ＝０１３のスケルトンルールを特定する。
【００８９】
次に、知的処理部２０３は、上記の如くして特定したルールＩＤ、アクションパラメータ、コンディションパラメータと、Ｓ２０３にて特定された制御対象機器のデバイスＩＤを含む制御情報を生成し（Ｓ２０６）、これを宅内サーバ１００に送信する（Ｓ２０７）。たとえば、上記の場合、ルールＩＤ＝０１３、設定モード（アクション）＝冷房、設定温度（コンディション）＝２６度以上、デバイスＩＤ＝Ａ００１を含む制御情報を生成し、宅内サーバ１００に送信する。しかして、制御情報の生成とその送信処理が完了する。
【００９０】
以上が、制御情報の生成・送信における基本的処理の流れであるが、上記において入力指令がアクションとコンディションをそのまま特定するものでない場合には、上記Ｓ２０４にてアクションカテゴリーやそのパラメータ等を導き出すことができない。たとえば、入力指令として番組名が入力されたような場合には、図６および図７のテーブルのみからではアクションカテゴリー等を特定することができない。かかる場合には、Ｓ２０４にて、知的データベース上に構築された補助データベース（番組表データベース等）を参照して、知的処理プログラムがアクションカテゴリー等を特定するための情報を導出し、これをもとに、アクションカテゴリー等を特定する。たとえば、入力指令として番組名が入力された場合、知的処理プログラムは、Ｓ２０４にて、補助データベースとして番組表データベース（地域別）を参照し、当該番組のチャンネルや、開始・終了時刻に関する情報を抽出する。そして、抽出した情報をもとに、アクションカテゴリーとそのパラメータ、アクショントリガ、コンディションカテゴリーとそのパラメータを特定する。
【００９１】
図１１に、入力指令として“キョジンハンシンセンヲロクガ”が入力された場合の処理の流れを示す。なお、同図の処理中、Ｓ２０４のみが上記図１０の場合と相違している。
【００９２】
まず、Ｓ２０１にて、“キョジンハンシンセンヲロクガ”のテキストデータを受け取ると、知的処理部２０３は、Ｓ２０２にてこれを言語処理して、“巨人”、“阪神”、“戦”、“録画”の単語を抽出する。そして、Ｓ２０３にて、“録画”の単語から、たとえばＤＶＤ録画装置（デバイスＩＤ＝Ｄ００１）を制御対象機器として特定する。
【００９３】
次に、知的ＤＢ２０３は、Ｓ２０４にて、“巨人”、“阪神”、“戦”の単語をもとに、アクションカテゴリー等の特定処理を実行する。かかる場合には、上記図１０の場合と異なり、当該ユーザの番組表を参照して、“巨人”、“阪神”、“戦”の単語に該当する番組を特定する。すなわち、知的処理部２０３は、ユーザＤＢ２０９から当該ユーザの地域コードを抽出し、この地域コードに対応する地域の番組表を、知的ＤＢ２０６上の番組表データベースから取得する。そして、この番組表中の各番組に設定された情報（たとえば番組名）と“巨人”、“阪神”、“戦”の単語とを比較し、番組表中、この単語に最も整合する番組を特定する。
【００９４】
次に、知的処理部２０３は、“録画”の単語から、録画に必要な情報を、当該番組に設定された情報から抽出する。すなわち、開始時間、終了時間、設定チャンネルに関する情報を抽出する。そして、抽出した情報をもとに、アクションカテゴリー等を特定する。たとえば、開始時間に関する情報から、コンディションカテゴリー＝時間、コンディションパラメータ＝７時を特定し、また、終了時間に関する情報から、コンディションカテゴリー＝時間、コンディションパラメータ＝９時を特定する。また、設定チャンネルに関する情報から、アクションカテゴリー＝チャンネル、アクションパラメータ＝１０ｃｈを特定する。さらに、“録画”の単語から、開始時間にＯＮ、終了時間にＯＦＦのアクショントリガを特定する。
【００９５】
しかして、Ｓ２０４の処理が終了すると、知的処理部２０３は、Ｓ２０５にて、ルールＩＤの特定処理を実行する。なお、かかる処理は、上記図１０の場合と同様である。本例の場合、図４（ａ）のスケルトンルール中、ルールＩＤ＝００１（録画開始）とルールＩＤ＝００２（録画終了）の２つのスケルトンルールが特定される。しかる後、知的処理部２０３は、Ｓ２０６にて、特定したルールＩＤ、アクションパラメータ、コンディションパラメータ、デバイスＩＤを含む制御情報を生成する。本例の場合、知的処理部２０３は、ルールＩＤ＝００１、アクションカテゴリー“設定チャンネル”＝１０ｃｈ、および、コンディションカテゴリー“時間”＝７時、デバイスＩＤ＝Ｄ００１を含む制御情報と、ルールＩＤ＝００２、アクションカテゴリー“設定チャンネル”＝１０ｃｈ、および、コンディションカテゴリー“時間”＝９時、デバイスＩＤ＝Ｄ００１を含む制御情報の２種類の制御情報を生成する。そして、Ｓ２０７にて、生成した制御情報を宅内サーバ１００に送信する。これにより、制御情報の生成・送信処理が完了する。
【００９６】
図１２に、上記Ｓ２０３にて行われる制御対象機器の特定処理の詳細を示す。
【００９７】
知的処理部２０３は、抽出した単語から対象機器の機能カテゴリーを特定すると（Ｓ３０１）、当該機能カテゴリーに該当するデバイスのデバイス情報（図３（ａ）を参照）の送信要求を、特定した機能カテゴリーとともに、宅内サーバ１００に送信する（Ｓ３０２）。かかる要求を受けて、宅内サーバ１００は、受信した機能カテゴリーとデバイスＤＢ１０８に格納されたデバイス情報とを比較し、該当する機能カテゴリーのデバイス情報（デバイスＩＤ、デバイス名、ロケーション、ユーザ）を抽出する（Ｓ３０３）。たとえば、上記の場合、機能カテゴリーが“空調”のデバイス情報を抽出する。この際、該当するデバイスが複数ある場合には、全てのデバイス情報を抽出する。そして、抽出したデバイス情報を宅外サーバ２００に送信する（Ｓ３０４）。かかるデバイス情報は、通信制御部２０１を介して知的処理部２０３に転送される。
【００９８】
知的処理部２０３は、受け取ったデバイス情報を参照し、このうち、入力指令を行ったユーザのユーザＩＤに一致するデバイスのみをデバイス候補に設定する（Ｓ３０５）。このとき、デバイス候補が存在しない場合には、エラー表示を通信制御部２０１からユーザ端末３００に送信する。デバイス候補が存在する場合、知的処理部２０３は、デバイス候補が複数存在するかを判定する（Ｓ３０６）。そして、デバイス候補が１つしかなければ、当該デバイスを制御対象機器に特定する（Ｓ３１０）。
【００９９】
これに対し、デバイス候補が複数ある場合には、ユーザからの入力指令（Ｓ２０２で抽出した単語）から制御対象機器の特定が可能かを判定する（Ｓ３０７）。たとえば、指令入力に制御対象機器のロケーションを特定する単語が含まれているような場合（この場合、この単語は上記Ｓ２０２にて抽出されている）、この単語と知的ＤＢ２０６中のロケーションテーブルとを比較して当該機器のロケーションを特定し、さらに、このロケーションとデバイス候補のロケーションとを比較して、該当するロケーションのデバイスが存在するかを判定する。そして、当該ロケーションのデバイスが１つしか存在しない場合には、Ｓ３０７に進み、当該デバイスを制御対象機器に特定する。他方、当該ロケーションのデバイス候補が複数存在する場合には、このデバイス候補を選択候補として、ユーザ端末３００に選択要求を発する（Ｓ３０８）。
【０１００】
ここで、ユーザの入力指令中にロケーション等、制御対象機器の特定に利用できる単語が含まれてない場合には、Ｓ３０７はＮＯとされ、Ｓ３０５にて生成した機器候補をそのまま選択候補として、ユーザ端末３００に選択要求を発する（Ｓ３０８）。たとえば、入力指令が上記“ニジュウロクドデレイボウヲオン”である場合には、制御対象機器の特定に利用できる単語（ロケーション）が含まれてないため、Ｓ３０５で生成したデバイス候補（機能カテゴリーが“空調”でユーザＩＤが“ＡＬＬ”または当該ユーザのものであるエアコン）を選択候補として、ユーザ端末３００に選択要求を発する。
【０１０１】
かかる選択要求を受信したユーザ端末３００は、選択候補をユーザに提示して、制御対象機器の特定をユーザに促す（Ｓ３０９）。これを受けて、ユーザが、所望のデバイスを選択すると、当該選択情報が宅外サーバ２００に送信される。知的処理部２０３は、選択されたデバイスを制御対象機器として特定する（Ｓ３１０）。しかして、制御対象機器の特定が完了する。
【実施例２】
【０１０２】
次に、上記実施例１を一部変更した実施例２について説明する。本実施例は、上記図１２に示す機器特定のための処理フローを変更したものである。すなわち、図１２の処理フローでは、宅外サーバ２００側においてユーザＩＤと対象機器のロケーション等をもとに機器候補を絞るようにした（図１２のＳ３０５〜３０７）が、本実施例では、宅内サーバ１００側においてユーザＩＤとロケーションをもとに機器候補を絞るようにしている。
【０１０３】
図１２に、本実施例に係る処理フローを示す。
【０１０４】
Ｓ３０１にて機能カテゴリーが特定されると、Ｓ３２１にて、当該機能カテゴリーを付加したデバイス情報送信要求を宅内サーバ１００に送信する。このとき、入力指令から対象機器のロケーションを特定できれば、これもデバイス情報送信要求に付加する。これを受けて、宅内サーバ１００は、まず、受け取った機能カテゴリーに該当するデバイスを、デバイスＤＢ１０８を参照して抽出する（Ｓ３２２）。さらに、抽出したデバイスのうち、当該アクセス元ユーザのユーザＩＤに該当するデバイスを抽出する。このとき、デバイス送信要求にロケーションが付加されていれば、アクセス元ユーザのユーザＩＤとロケーションに該当するデバイスを抽出する。そして、抽出したデバイスのデバイス情報をデバイスＤＢ１０８から読み出し、これを宅外サーバ２００に送信する。
【０１０５】
宅外サーバ２００は、受け取ったデバイス情報をもとにデバイス候補に設定する（Ｓ３２４）。このとき、デバイス候補が存在しない場合には、エラー表示を通信制御部２０１からユーザ端末３００に送信する。デバイス候補が存在する場合、デバイス候補が複数存在するかを判定する（Ｓ３０６）。そして、デバイス候補が１つしかなければ、当該デバイスを制御対象機器に特定する（Ｓ３１０）。
【０１０６】
これに対し、デバイス候補が複数ある場合には、Ｓ３２４にて生成したデバイス候補をそのまま選択候補として、ユーザ端末３００に選択要求を発する（Ｓ３０８）。かかる選択要求を受信したユーザ端末３００は、選択候補をユーザに提示して、制御対象機器の特定をユーザに促す（Ｓ３０９）。これを受けて、ユーザが、所望のデバイスを選択すると、当該選択情報が宅外サーバ２００に送信される。知的処理部２０３は、選択されたデバイスを制御対象機器として特定する（Ｓ３１０）。しかして、制御対象機器の特定が完了する。
【実施例３】
【０１０７】
さらに、上記実施例１を一部変更した実施例３について説明する。本実施例は、入力指令からパラメータを抽出できなかったときに、過去の履歴情報からパラメータを設定するものである。すなわち、コンディションおよびアクションのパラメータのうち何れかのパラメータが入力指令から抽出できないとき、履歴ＤＢ２０８に記憶されている当該ユーザの履歴を参照し、当該履歴中のパラメータを未抽出のパラメータに設定するものである。
【０１０８】
図１４に、履歴ＤＢ２０８のデータ構造を示す。履歴ＤＢ２０８には、過去に宅内サーバ１００に送信された制御情報がユーザＩＤに関連付けて格納されている。
【０１０９】
たとえば、ユーザ“ＨＡＮＡＫＯ”から、「暑くなったら冷房ＯＮ」との指令が入力された場合、コンディション“設定温度”を特定するためのキーワードとして、たとえば“暑く”のキーワードが知的ＤＢ２０６（図６のｂ）中に含まれていれば、コンディションのカテゴリーとして“設定温度”が特定される。そして、入力指令中の“冷房”および“ＯＮ”の単語からアクション“冷房／ＯＮ”が特定され、その結果、ルールＩＤ＝０１３のルールが特定される。
【０１１０】
しかしながら、「暑く」の単語からは具体的設定温度を特定できないため、当該ルール中のコンディションのパラメータが未設定となる。かかる場合、知的処理部２０３は、履歴ＤＢ２０８中のＨＡＮＡＫＯの履歴を参照し、ルールＩＤ＝０１３の履歴を抽出する。そして、たとえば、直近の履歴中のコンディションに設定されているパラメータを当該未設定のパラメータとして採用する。あるいは、過去一定期間に最も多く設定されているパラメータを当該未設定のパラメータとして採用する。これにより、未設定のパラメータが補充され、当該コンディションパラメータを含む制御情報が生成される。履歴ＤＢ２０８を参照してもパラメータを補充できない場合には、エラー通知をユーザ端末３００に送信する。
【０１１１】
かかる履歴ＤＢ２０８を利用したパラメータの補充処理は、宅内サーバ１００側で実行するようにしても良い。この場合、図１５に示すように、上記履歴ＤＢ２０８と同様の履歴ＤＢ１２０を別途配する必要がある。また、実行ルール生成部１０４は、上記パラメータ補足処理を実行する機能を備えている必要がある。
【０１１２】
宅外サーバ２００は、入力指令からパラメータを抽出できない場合、制御情報中に未設定パラメータの識別フラグを含め、これを宅内サーバ１００に送信する。宅内サーバ１００は、ルール実行部１０５において、識別フラグが付されたパラメータを特定し、さらに、当該ユーザの制御情報履歴を履歴ＤＢ１１０から取得し、上記と同様にして、当該未設定パラメータの補充処理を実行する。そして、履歴情報からパラメータを取得できれば、これを未設定パラメータに適用し、取得できなければ、宅外サーバ２００にエラー通知を出力する。
【０１１３】
このように、宅内サーバ１００側でパラメータ補充処理を実行するようにすれば、宅外サーバ２００の履歴ＤＢ２０８を省略でき、よって、宅外サーバ２００のリソース負担を軽減できる。
【０１１４】
なお、上記では、履歴情報をユーザ毎に区分するようにしたが、さらに、ロケーション毎に区分するようにしても良い。そうすると、よりユーザ嗜好を反映したパラメータの設定を行える。あるいは、履歴情報をユーザ毎に区分せずに、ロケーション毎に区分することもできる。ただし、この場合は、ロケーション毎の画一処理となるため、上記に比べ、ユーザ嗜好を反映し難くなる。
【０１１５】
以上、本発明に係る種々の実施例を説明したが、本発明はかかる実施例に限定されるものではなく、他に種々の変更が可能であることは言うまでもない。
【０１１６】
たとえば、上記実施例は、宅内サーバ１００を宅内に設置し宅外サーバ２００を宅外に設置するものであったが、本発明は、宅外サーバ１００と宅外サーバ２００の設置位置を特に制限するものではなく、両者を宅内に配置してもよいし、あるいは、両者を宅外に配置してもよい。さらに、両者の機能を同時に備えるコントローラを宅内あるいは宅外に配置するようにしても良い。
【０１１７】
なお、上記実施の形態に示す宅内サーバ１００と宅外サーバ２００の機能は、当該機能を処理するためのプログラムと各種データベースを汎用コンピュータ装置等にインストールすることによって実現できることは言うまでもない。
【図面の簡単な説明】
【０１１８】
【図１】実施の形態に係るネットワークシステムの構成を示す図
【図２】実施例１に係る宅内サーバ１００の機能ブロック図
【図３】宅内サーバ１００のデバイスＤＢ１０８とユーザＤＢ１０９のデータ構造を示す図
【図４】宅内サーバ１００のルールＤＢ１１０と実行ルールＤＢ１１１のデータ構造を示す図
【図５】宅外サーバ２００の機能ブロック図
【図６】宅外サーバ２００の知的ＤＢ２０６のデータ構造を示す図
【図７】宅外サーバ２００の知的ＤＢ２０６のデータ構造を示す図
【図８】宅外サーバ２００のユーザＤＢ２０９のデータ構造を示す図
【図９】実施例１に係るネットワークシステムの処理フロー
【図１０】当該処理フローのＳ１１３における処理フロー
【図１１】当該処理フローのＳ１１３における処理フロー
【図１２】当該処理フローのＳ２０３における処理フロー
【図１３】実施例２に係るＳ２０３における処理フロー
【図１４】実施例３に係る履歴ＤＢ２０８のデータ構造を示す図
【図１５】実施例３に係る宅内サーバ１００の機能ブロック図
【符号の説明】
【０１１９】
１００  宅内サーバ
１０２  プロセッサ
１０４  実行ルール生成部
１０５  ルール実行部
１０７  デバイス制御部
１０８  デバイスＤＢ
１０９  ユーザＤＢ
１１０  ルール規則ＤＢ
１１１  実行ルールＤＢ
１２０  履歴ＤＢ
２００  宅外サーバ
２０２  プロセッサ
２０３  知的処理部
２０４  ユーザ認証部
２０５  ユーザＩＦ部
２０６  知識ＤＢ
２０７  ルール規則ＤＢ
２０８  履歴ＤＢ
【図１】
2005086473.tif 000003
【図２】
2005086473.tif 000004
【図３】
2005086473.tif 000005
【図４】
2005086473.tif 000006
【図５】
2005086473.tif 000007
【図６】
2005086473.tif 000008
【図７】
2005086473.tif 000009
【図８】
2005086473.tif 000010
【図９】
2005086473.tif 000011
【図１０】
2005086473.tif 000012
【図１１】
2005086473.tif 000013
【図１２】
2005086473.tif 000014
【図１３】
2005086473.tif 000015
【図１４】
2005086473.tif 000016
【図１５】
2005086473.tif 000017