(57)【要約】本発明は、自動発話認識を用いてコンピュータシステムにアクセスするリモートアクセスシステムおよび方法に関する。本発明は、発話認識またはテキストからの音声読み上げによって、コンピュータシステム上の情報へのリモートアクセスおよび受け取りを容易にする、コンピュータシステムに常駐する知的エージェントに関する。リモートアクセスシステムおよび方法は、旅行中のコンピュータシステムユーザによって利用される。ユーザは、自動発話認識およびテキスト音声間変換によってユーザと対話するように構成されたサーバシステムに電話をかける。サーバシステムは、公衆網を介したパケット通信によりユーザのリモートにあるコンピュータシステムにある知的エージェントとの接続を確立する。知的エージェントは、ユーザのコンピュータシステム上またはコンピュータシステムがアクセス可能なネットワーク上の情報を入手し、その情報を処理して公衆網を介してサーバシステムに送信する。サーバシステムはその情報を発話信号に変換し、ユーザにより操作される電話機に送信する。【選択図】図１
2007538432.tif 000002
【特許請求の範囲】
【請求項１】
公衆網を介したコンピュータシステムへのリモートアクセスを提供する方法であって、  コンピュータシステムのユーザからの音声通話をサーバシステムで受け取るステップと、
前記音声通話中にユーザから受け取った情報を処理して識別情報を生成するステップと、
前記識別情報に基づいてユーザを認証するステップと、
前記識別情報の少なくとも一部に基づいて前記サーバシステムと前記コンピュータシステムの間に接続を確立するステップと、
ユーザからの発話コマンドを前記サーバシステムで受け取るステップと、
前記発話コマンドに基づいて第１パケットデータを生成するステップと、
公衆網を介して前記第１パケットデータを前記コンピュータシステムのエージェントに送信するステップと、
前記第１パケットデータに応答して前記エージェントからの第２パケットデータを前記サーバシステムで受け取るステップと、
前記第２パケットデータに基づいて前記ユーザへの発話信号を生成するステップと、
を含むことを特徴とする方法。
【請求項２】
前記エージェントは前記第１パケットデータを解釈し、パーソナルコンピュータにインストールされたアプリケーションソフトウェアに問い合わせをし、この問い合わせに基づいて前記第２パケットデータを生成することを特徴とする請求項１に記載の方法。
【請求項３】
前記コンピュータシステムに常駐する知的エージェントから該コンピュータシステムのＩＰアドレスを前記サーバシステムで受け取るステップをさらに含み、前記確立するステップは前記識別情報と前記ＩＰアドレスとに基づくことを特徴とする請求項１に記載の方法。
【請求項４】
前記コンピュータシステムのＩＰアドレスは固定されておらず、前記サーバシステムは前記コンピュータシステムのＩＰアドレスを前記エージェントから定期的に受け取ることを特徴とする請求項３に記載の方法。
【請求項５】
前記第２パケットデータは、前記コンピュータシステムにアクセス可能なオブジェクトに対応することを特徴とする請求項１に記載の方法。
【請求項６】
前記第２パケットデータは前記オブジェクトの要約された形態を含み、該要約された形態は前記オブジェクトに基づいて前記エージェントにより生成されることを特徴とする請求項５に記載の方法。
【請求項７】
ネットワークを介したコンピュータシステムへのリモートアクセスを提供するシステムであって、
当該システムはネットワークと電話網とに接続されたサーバシステムを備え、
前記サーバシステムは、システムにアクセス可能なコンピュータプログラムを有しており、サーバシステム上でコンピュータプログラムを実行するとき、サーバシステムが、
パーソナルコンピュータのユーザから電話網を介して音声通話を受け取り、該音声通話の間ユーザから情報と発話コマンドとを受け取り、
ユーザから受けとった前記情報の少なくとも一部に基づいて前記パーソナルコンピュータのＩＰアドレスを決定し、
前記発話コマンドに基づいて第１パケットデータを生成し、
前記ネットワークを介して前記パーソナルコンピュータ上で作動するエージェントに前記第１パケットデータを送信し、
前記パーソナルコンピュータを介して前記エージェントから第２パケットデータを受け取り、
前記第２パケットデータに基づいて発話信号を生成し前記電話網を介してユーザに送信することを特徴とするシステム。
【請求項８】
コンピュータシステム上で実行されるとき、請求項１ないし６のいずれかに記載のリモートアクセスを提供する方法をコンピュータシステムに実行せしめるコンピュータプログラム命令を格納するコンピュータ可読プログラム記憶装置。
【請求項９】
ユーザと関連付けられたコンピュータ上で、通知イベントの発生を判定するための少なくとも一つのルールを提供するステップと、
前記少なくとも一つのルールを適用して前記通知イベントの発生を判定するステップと、
前記通知イベントを表す通知データを生成するステップと、
前記通知イベントに基づいて、通知を通信するための通知データをサーバシステムへのネットワークを介してユーザの電話機に送信するステップと、
前記通知に対応する発話信号を生成するステップと、
ユーザの電話機との電話接続を確立するステップと、
前記発話信号を前記ユーザの電話機に送信するステップと、
を含むことを特徴とするユーザに自動的に通知する方法。
【請求項１０】
公衆網を介してコンピュータシステムにリモートアクセスするシステムであって、
公衆電話網と通信してユーザにより操作される電話機から音声通話を受け取り、自動的に生成された発話信号を電話機に送信するサーバシステムと、
前記公衆網を介して前記サーバシステムと通信し、前記コンピュータシステムがアクセス可能な情報にアクセスし、所定のイベントに応答して前記情報を表すパケットデータを前記公衆網を介して前記サーバシステムに送信するようにプログラムされたエージェントと、を備え、
前記サーバシステムが前記エージェントから前記情報を受信すると、前記パケットデータに基づいて発話信号を自動的に生成し該発話信号をユーザと関連する電話機に送信するように前記サーバシステムがプログラムされていることを特徴とするシステム。
【請求項１１】
前記コンピュータシステムはファイアウォールによって前記サーバシステムから切り離されており、前記エージェントは前記コンピュータシステムのＩＰアドレスを前記サーバシステムに定期的に送信するようプログラムされていることを特徴とする請求項１０に記載のシステム。
【請求項１２】
前記コンピュータシステムはパーソナルコンピュータであることを特徴とする請求項１０または１１に記載のシステム。
【請求項１３】
前記コンピュータシステムはリモートサーバを備え、前記ユーザは該リモートサーバにユーザアカウントを有していることを特徴とする請求項１０または１１に記載のシステム。
【請求項１４】
前記所定のイベントは前記エージェントから発せられる通知イベントであり、前記通知イベントは少なくとも一つのユーザ定義ルールに基づいて生成されることを特徴とする請求項１０に記載のシステム。
【請求項１５】
前記サーバシステムは、受け取った発話信号に対して自動発話認識を使用し、送信された発話信号に対して自動テキスト音声間変換を使用して、前記公衆電話網を介してユーザと通信する発話サーバを備えることを特徴とする請求項１０に記載のシステム。
【請求項１６】
前記サーバシステムは、前記発話サーバと通信し、前記エージェントから前記情報を受け取り、前記エージェントと接続して前記発話サーバにおいて前記ユーザから受け取った音声コマンドに対応するコマンド要求データを前記エージェントに送信する音声中継サーバを備えることを特徴とする請求項１５に記載のシステム。
【請求項１７】
前記サーバシステムはユーザ情報データ格納部を備え、前記音声中継サーバは、前記発話サーバにおいてユーザから受け取ったユーザ認証情報を前記ユーザ情報データ格納部と比較し、前記コンピュータシステムにアクセスするユーザを認証することを特徴とする請求項１６に記載のシステム。
【請求項１８】
前記ユーザ認証情報は、前記公衆電話網を介してユーザから受け取る識別符号の発声に基づいて前記発話サーバで判定されることを特徴とする請求項１７に記載のシステム。
【請求項１９】
前記所定のイベントは前記サーバシステムからのコマンドデータの受け取りであり、前記コマンドデータは前記公衆電話網を介して前記サーバシステムで受け取る音声コマンドに対応することを特徴とする請求項１０に記載のシステム。
【請求項２０】
前記リモートサーバは複数のユーザアカウントをホストし、前記エージェントは前記サーバシステムを介して前記ユーザアカウントそれぞれへのリモートアクセスを容易にすることを特徴とする請求項１３に記載のシステム。
【請求項２１】
ユーザに関連付けられたコンピュータシステムのエージェントからネットワークを介してサーバシステムで接続要求を受け取るステップと、
前記エージェントと前記サーバシステム間に接続を確立するステップと、
前記ネットワークを介して前記エージェントから通知データを受け取るステップと、
前記通知データを処理して発話通知を生成するステップと、
前記接続要求に基づいてユーザの電話機との電話接続を確立するステップと、
前記電話接続を介して前記ユーザの電話機に前記発話通知を送信するステップと、
を含むことを特徴とするユーザへの通知提供方法。
【請求項２２】
前記確立するステップは、
前記接続要求からユーザ識別子を決定するステップと、
データベースにアクセスして前記ユーザ識別子に基づいて前記ユーザの電話番号を決定するステップと、
前記電話番号に電話するステップと、
を含むことを特徴とする請求項２１に記載の方法。
【請求項２３】
前記通知データはパケットデータであることを特徴とする請求項２１に記載の方法。
【請求項２４】
前記接続要求と通知データは通知イベントの判定に応じて前記エージェントによって生成され、前記通知イベントは少なくとも一つの予め定義されたルールにしたがって判定されることを特徴とする請求項２１に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、自動発話認識（speech recognition）を用いてコンピュータシステムにアクセスするリモートアクセスシステムおよび方法に関する。本発明はまた、発話認識またはテキストから音声への読み上げ（read-back）によってコンピュータシステム内の情報へのリモートアクセスおよび情報の受信を容易にするコンピュータシステム上の知的エージェントに関する。
【背景技術】
【０００２】
デスクトップコンピュータと大規模コンピュータシステムは、消費者、ビジネスユーザともに私的で安全な個人情報の保存にますます利用されている。消費者やビジネスユーザがいるあらゆる遠隔位置からこの情報にアクセスすることは容易でない。Ｖｉｓｔｏ社やＧｏＴｏＭｙＰＣ社などによって開発された携帯電話技術によって、遠隔の顧客が職場のサーバやパーソナルコンピュータに格納された情報を検索できるようになった。しかし、これらのプログラムは、サービスエリア（coverage）の非常に広いネットワーク、高額のスマート携帯機器、高額のデータプランおよび相当程度の知識をユーザ側に要求する。これに加えて、携帯電話技術は運転中に車内で使用するには実用的でなく安全でもない。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
コンピュータシステムにリモートアクセスするための現在の方法における一つ以上の不便さや欠点に対処し改良すること、または少なくとも現在の方法に替わる有用な方法を提供することが望まれる。
【課題を解決するための手段】
【０００４】
本発明の一態様は、公衆網を介したコンピュータシステムのリモートアクセスを提供する方法に関する。この方法は、コンピュータシステムのユーザからの音声通話（voice call）をサーバシステムで受け取るステップと、音声通話中にユーザから受け取った情報を処理して識別情報を生成するステップと、識別情報に基づいてユーザを認証するステップと、識別情報の少なくとも一部に基づいてサーバシステムとコンピュータシステムの間に接続を確立するステップと、ユーザからの発話コマンドをサーバシステムで受け取るステップと、発話コマンドに基づいて第１パケットデータを生成するステップと、公衆網を介して第１パケットデータをコンピュータシステムのエージェントに送信するステップと、第１パケットデータに応答してエージェントからの第２パケットデータをサーバシステムで受け取るステップと、第２パケットデータに基づいてユーザへの発話信号を生成するステップと、を含む。
【０００５】
好ましくは、エージェントは第１パケットデータを解釈し、パーソナルコンピュータにインストールされたアプリケーションソフトウェアに問い合わせをし、問い合わせに基づいて第２パケットデータを生成するように構成される。
【０００６】
一実施形態では、上記方法は、コンピュータシステムに常駐する知的エージェントから該コンピュータシステムのＩＰアドレスをサーバシステムで受け取るステップをさらに含み、上記確立するステップは識別情報とＩＰアドレスとに基づいている。この実施形態は、コンピュータシステムがファイアウォールで保護されている場合に適用される。
【０００７】
本発明の別の態様は、ネットワークを介したコンピュータシステムへのリモートアクセスを提供するシステムに関する。このシステムは、ネットワークと電話網とに接続されたサーバシステムを備えており、サーバシステムは、パーソナルコンピュータのユーザから電話網を介して音声通話を受け取り、音声通話の間ユーザから情報と発話コマンドとを受け取り、ユーザから受け取った情報の少なくとも一部に基づいてパーソナルコンピュータのＩＰアドレスを決定し、発話コマンドに基づいて第１パケットデータを生成し、ネットワークを介してパーソナルコンピュータ上で作動するエージェントに第１パケットデータを送信し、パーソナルコンピュータを介してエージェントから第２パケットデータを受け取り、第２パケットデータに基づいて電話網を介してユーザに発話信号を生成し送信するように構成される。
【０００８】
関連する態様では、本発明は、コンピュータシステム上で実行されると上述のリモートアクセスを提供する方法をコンピュータシステムに実行せしめるコンピュータプログラム命令を格納するコンピュータ可読プログラム記憶装置に関する。
【０００９】
本発明の別の態様はユーザに自動的に通知を提供する方法に関する。この方法は、ユーザに関連付けられたコンピュータ上で通知イベントの発生を判定するための少なくとも一つのルールを提供するステップと、少なくとも一つのルールを適用して通知イベントの発生を判定するステップと、通知イベントを表す通知データを生成するステップと、通知イベントに基づいて、通知を通信するための通知データをサーバシステムへのネットワークを介してユーザの電話機に送信するステップと、通知に対応する発話信号を生成するステップと、ユーザの電話機との電話接続を確立するステップと、発話信号をユーザの電話機に送信するステップと、を含む。
【００１０】
関連する態様では、本発明はユーザに自動的に通知を提供するシステムに関する。このシステムはユーザと関連付けされたコンピュータ上で作動する知的エージェントと、上述の自動通知提供方法のステップをシステムに実行せしめるプログラムコードを備える。
【００１１】
さらに関連する態様では、本発明は、上述の自動通知提供方法のステップを一つ以上のコンピュータプロセッサに実行せしめる、一つ以上のコンピュータプロセッサによって実行可能なコンピュータプログラム命令を格納するコンピュータ可読媒体に関する。
【００１２】
本発明のさらなる態様は、ユーザに通知を提供する方法に関する。この方法は、ユーザに関連付けられたコンピュータ内の知的エージェントからネットワークを介して接続要求を受信するステップと、知的エージェントからネットワークを介して通知データを受信するステップと、通知データを処理し音声通知を生成するステップと、接続要求に基づいてユーザの電話機との電話接続を確立するステップと、電話接続を介してユーザの電話機に音声通知を送信するステップと、を含む。
【００１３】
好ましくは、上記確立するステップは、接続要求からユーザ識別子を決定するステップと、データベースにアクセスしてユーザ識別子に基づいてユーザの電話番号を決定するステップと、電話番号に電話をかけるステップと、を含む。
【００１４】
関連する態様では、本発明はユーザに通知を提供するシステムに関する。このシステムはユーザおよびエージェントと通信するサーバシステムを備え、サーバシステムは上述の通知提供方法のステップを実行するようにプログラムされている。
【００１５】
さらに関連する態様では、本発明は、コンピュータ上で実行可能であり上述の通知提供方法のステップをコンピュータシステムに実行せしめるコンピュータプログラム命令を格納するコンピュータ可読媒体に関する。
【００１６】
本発明のさらに別の態様は、公衆網を介してコンピュータシステムにリモートアクセスするシステムに関する。このシステムは、公衆電話網と通信してユーザの操作する電話から音声通話を受け取り、自動的に生成された発話信号を電話に送信するサーバシステムと、公衆網を介してサーバシステムと通信し、コンピュータシステムがアクセス可能な情報にアクセスし、所定のイベントに応答して公衆網を介して情報を表すパケットデータをサーバシステムに送信するようにプログラムされたエージェントと、を備える。サーバシステムがエージェントから情報を受信すると、パケットデータに基づいて発話信号を自動的に生成し該発話信号をユーザと関連する電話機に送信するようにサーバシステムがプログラムされている。
【００１７】
一実施形態では、コンピュータシステムはファイアウォールによってサーバシステムから切り離されており、エージェントはコンピュータシステムのＩＰアドレスをサーバシステムに定期的に送信するようプログラムされている。
【００１８】
一実施形態では、コンピュータシステムはパーソナルコンピュータである。または、コンピュータシステムサーバシステムであり、ユーザはサーバシステムにユーザアカウントを有している。
【００１９】
一実施形態では、所定のイベントはエージェントから発せられる通知イベントであり、通知イベントは少なくとも一つのユーザ定義ルールに基づいて生成される。
【００２０】
好ましくは、サーバシステムは、受け取った発話信号に対して自動発話認識を使用し、送信された発話信号に対して自動テキスト音声間変換を使用して、公衆電話網を介してユーザと通信するための発話サーバを備える。
【００２１】
好ましくは、サーバシステムは、発話サーバと通信し、エージェントから情報を受け取り、エージェントと接続して発話サーバにおいてユーザから受け取った音声コマンドに対応するコマンド要求データをエージェントに送信する音声中継サーバを備える。
【００２２】
好ましくは、サーバシステムはユーザ情報データ格納部を備え、音声中継サーバは、発話サーバにおいてユーザから受け取ったユーザ認証情報をユーザ情報データ格納部と比較し、コンピュータシステムにアクセスするユーザを認証する。
【００２３】
添付の図面を参照して、例示のみを目的として本発明の実施形態を以下でさらに詳細に説明する。
【発明を実施するための最良の形態】
【００２４】
一態様では、本発明は人間の声を用いてサーバシステム（発話サーバおよび音声中継サーバを含む）と対話するための構成に関する。サーバシステムは、リモートコンピュータシステムで作動する知的エージェントと対話して、そのコンピュータシステムがアクセス可能な個人情報などの情報を検索し閲覧する。概して、本発明は、発話入力コマンドを特定のコンピュータシステム（すなわちＰＣまたはサーバ）に送信されるコンピュータコマンドへと安全に変換することを含む方法に関する。特定のコンピュータシステムとは、通話者と関連付けされたシステムまたは通話者のアカウントやユーザ固有の情報が存在するサーバに関連付けされたシステムである。この方法は、コンピュータシステムが必ずしもパブリックアドレス（ＩＰアドレス）を持たないか、またはサーバが必ずしもパブリックのＩＰアドレスを持たない場合、かつＰＣまたはサーバが常時インターネットに接続されたファイアウォールの背後にある場合に使用することができる。
【００２５】
本発明の別の態様は、ユーザのコンピュータシステム内に常駐し、コンピュータシステム内でのルールベースのイベントまたはコンピュータシステムがアクセス可能なルールベースのイベント（データベースへの新規データ項目の出現、特定の一致するキーワードを含む新たな記事のニュースサービスへの出現、またはあるキーワードやフレーズを含んだ新たなＥメールメッセージなど）に反応し、続いてサーバシステムを介して合成された音声メッセージを（携帯または地上の）電話に送出して、音声発話形式でユーザにイベントを通知するようにプログラムされた知的エージェントに関する。
【００２６】
デスクトップＰＣに格納された情報にアクセスし、デスクトップコンピュータ上の個人情報を音声に変換して電話線を介して電話に送らせる音声コマンドを利用するには、システムの三つの要素間での安全な双方向通信が必要である。発話されたコマンドまたは識別フレーズによって、元の音声通話と通話者の自宅または会社にあるデスクトップコンピュータまたはサーバシステムとの間の中継機能を果たすサーバに対する通話者の識別がなされる。通話者は、ユーザ識別番号、ＰＩＮ番号またはバイオメトリック発話パターン認識などによって自分の身元を証明しなければならず、そうすることで音声中継サーバは通話者の個人情報が入ったＰＣまたはサーバと通話者とを直接接続することができる。続いて接続がオープンとなり、通話者は発話コマンドを発して自身のパーソナルＰＣまたはサーバアカウントから情報を聞くことができる。
【００２７】
ＰＣまたはサーバの知的エージェントはインターネットやローカルアプリケーションソフトウェアプログラムなどのソースから情報を抽出することができ、その情報は音声サーバに安全に送信され、通話者がその情報を耳で聞けるように情報が発話パターンに変換される。ユーザは、発話コマンドを発することで、ユーザのデスクトップコンピュータまたはサーバ上のサービスおよびプログラムを停止および開始させたり、知的エージェントが参照またはアクセスできる情報を追加し、削除し、転送し、返信することができる。ユーザは発話コマンドを発することで、カレンダへの記入、Ｅメールまたはデータベースへの入力などの新規データオブジェクトをＰＣまたはサーバ上に編集したり作成したりもできる。
【００２８】
図１は、リモートアクセスシステム１００のブロック図を示す。リモートアクセスシステム１００は、公衆電話網による接続１１５を介して携帯電話または地上電話を用いて通話者に接続されるサーバシステム１２０を備える。サーバシステム１２０は、ユーザから受け取った発話信号を処理し、合成された発話信号で返答することによって、発話サーバ（speech server）１２２と電話機１１０のユーザとの間での言葉による対話を容易にする。
【００２９】
リモートアクセスシステム１００は、サーバ１２０からリモートに配置された一つまたは複数のコンピュータシステム（図２および図３で２８０で示す）をさらに備える。このコンピュータシステムは、インターネットなどの公衆網１４０を介して、サーバ１２０と対話する。このリモートコンピュータシステム２８０は、サーバ１２０に既知の固定ＩＰアドレスを持つパーソナルコンピュータ（ＰＣ）１４５またはサーバ１５０を備えてもよい。代替的にまたはこれに加えて、コンピュータシステム２８０は、それぞれファイアウォール１７０の背後にあるＰＣ１６０またはサーバ１６５を備えていてもよい。サーバ１５０とサーバ１６５は、サーバによりユーザアカウントがホストされるように互いに関係付けられた複数のユーザアカウント１５５または１７５をそれぞれ有していてもよい。コンピュータシステム２８０は、公衆網１４０を介して通信できるものであれば、インテリジェント携帯装置や大規模サーバシステムを含む任意の種類のコンピュータシステムであってよい。
【００３０】
ファイアウォール１７０でプロテクトされたＰＣ１６０またはサーバ１６５に対して、ファイアウォールはサーバ１２０からＩＰアドレスをわからないようにする。したがって、サーバ１２０がＰＣ１６０またはサーバ１６５と通信するために、ＰＣ１６０とサーバ１６５はそれぞれのＩＰアドレスをサーバ１２０に伝える必要がある。このような通知は、ＰＣ１６０またはサーバ１６５に常駐しＰＣ１６０またはサーバ１６５のＩＰアドレスにおけるあらゆる変更をサーバ１２０に定期的に通知するようにプログラムされた知的エージェント１８０によって実行される。代替的に、ＰＣ１６０またはサーバ１６５がファイアウォールでプロテクトされていない場合であっても、知的エージェントがそのような通知機能を実行してもよい。例えば、ＰＣ１６０がダイアルアップモデム接続によってインターネットサービスプロバイダを通してインターネット１４０と接続されている場合は、ＰＣ１６０は静的ＩＰアドレスを持っていなくてもよい。したがって、サーバ１２０がＰＣ１６０との接続を確立するためには、ＰＣ１６０はサーバ１２０に現在のＩＰアドレスを通知する必要がある。ＰＣ１６０またはサーバ１６５に常駐する知的エージェントは、ネットワーク１４０を介してサーバ１２０に通知パケットデータ１７３を送信することで、ＰＣ１６０またはサーバ１６５のＩＰアドレスをサーバ１２０に通知する。知的エージェント１８０については、図２および図３を参照して後により詳細に説明する。
【００３１】
サーバシステム１２０は、発話サーバ１２２、音声中継サーバ１２４、ユーザテーブル１３５および管理インタフェース１３８を備える。発話サーバ１２２は、接続１１５で公衆電話網を介して電話機１１０のユーザから受け取る発話を自動発話認識（ＡＳＲ：automatic speech recognition）する機能と、ユーザのＰＣ１４５、１６０またはサーバアカウント１５５、１７５から受け取る情報を電話機１１０のユーザに通信するために音声発話信号に変換する自動テキスト音声間変換（ＴＴＳ：text-to-speech）の機能を有する。発話サーバ１２２は、ＩＢＭウェブスフィア・ボイス・レスポンス・サーバ−テレフォン（IBM websphere voice response server-telephone）と、音声応答―ＴＴＳ／ＡＳＲ用のＩＢＭウェブスフィア・ボイス・サーバ（IBM websphere voice server）と接続される統合アプリケーションとを含むＩＢＭボイス・プラットフォームであることが好ましい。代替的に、発話サーバ１２２は、ＡＳＲおよびＴＴＳリソース管理を実行するＶｏｉｃｅＧｅｎｉｅ発話サーバであってもよい。
【００３２】
発話サーバ１２２で受信された電話機１１０のユーザからの発話信号が発話サーバ１２２のＡＳＲモジュールで認識されると、ＡＳＲモジュールで生成された対応するテキスト列が双方向データリンク１２５を介して音声中継サーバ１２４に送信される。音声中継サーバ１２４は、このように発話サーバ１２２から受信した変換された発話を処理し、処理された発話に基づいて適切なアクションを開始する。例えば、リモートアクセス処理の起動中に、ユーザにユーザＩＤおよびパスワードを提供するよう要求する。ユーザＩＤとパスワードが発話サーバ１２２から音声中継サーバ１２４によって受け取られると、音声中継サーバ１２４はユーザＩＤとパスワードをユーザテーブル１３５（またはデータベースの他のフォーム）のエントリと比較して、ユーザがリモートアクセスシステム１００の正当なユーザであることを認証する。ユーザがサーバ１２０によって認証されると、音声中継サーバ１２４は、発話サーバ１２２からの変換された発話を、ユーザのリモートコンピュータシステムとの対話に関するコマンドとして処理する。音声中継サーバ１２４は、ユーザテーブル１３５を用いて、各ユーザに関連付けられたコンピュータシステムの現在のＩＰアドレスまたは最新の既知ＩＰアドレスを格納する。ユーザがサーバ１２０によって認証されると、音声中継サーバ１２４によるユーザコンピュータシステムへのデータ送信は、ユーザテーブル１３５内のユーザに関連付けられたＩＰアドレスに送られる。
【００３３】
管理インタフェース１３８は、ＰＣ１４５およびサーバ１５０の固定ＩＰアドレスの入力に使用されるほか、ユーザテーブル１３５で用いられるユーザ電話番号、ユーザＩＤおよびパスワードの挿入、更新にも使用される。
【００３４】
図１は、ネットワーク１４０を介してサーバ１２０とＰＣ１４５、１６０およびサーバ１５０、１６５とを接続するデータリンク１４２を備えたリモートアクセスシステム１００を示す。データリンク１４２は、公衆網１４０で採用される適切なネットワークプロトコルにしたがった任意の種類の（仮想的または物理的）接続であってよいことは理解されるべきである。データリンク１４２が物理接続であることはまずない。さらに、データリンク１４２は、各ＰＣまたは各サーバがサーバ１２０と通信するものと同じである可能性も低い。むしろ、ＰＣ１４５、１６０またはサーバ１５０、１６５は、サーバシステム１２０とそれぞれ独立に通信する。データリンク１４２は、セキュア・ソケット・レイヤー（ＳＳＬ）接続であることが好ましい。
【００３５】
図２を参照すると、音声中継サーバ１２４がさらに詳細に示されている。音声中継サーバ１２４は、発話サーバ１２２と対話するためのいくつかの機能モジュールと、知的エージェント１８０と、ユーザテーブル１３５を備える。音声中継サーバ１２４は、発話サーバ１２２から入ってくる音声コマンドを受け取り、音声中継サーバ１２４のコマンド要求モジュール２３０と通信するために、これらのコマンドを内部データ構造（詳細は後述する）に翻訳する音声ＸＭＬ変換モジュール２１０を備える。コマンド要求モジュール２３０は、音声ＸＭＬ変換モジュール２１０を介して処理された発話コマンドに基づいて、内部データ構造を解釈しパケットデータを生成する。コマンド要求モジュール２３０は、変換された発話コマンドに対応するパケットデータをユーザに送信することによって、インターネットなどの公衆網上のデータリンク１４２を介して知的エージェント１８０と通信する。
【００３６】
音声中継サーバ１２４は、発話サーバ１２２のテキスト音声間変換機能を用いて、電話機１１０のユーザに送信するために、知的エージェント１８０（図５に関連してさらに説明する）から受け取ったパケットデータを音声ＸＭＬ変換モジュール２１０により認識される内部データ構造に変換する通知モジュール２２０をさらに備える。通知モジュール２２０は、入ってくるパケットデータを知的エージェント１８０から直接受け取ってもよいし、またはコマンド要求モジュール２３０を介して受け取ってもよい。
【００３７】
音声中継サーバ１２４は、知的エージェント１８０の常駐するコンピュータシステム２８０の定期的に送信されるＩＰアドレスを受け取るネットワークＩＤ登録モジュール２５０をさらに備える。これは、動的ＩＰアドレスを有するコンピュータシステムか、そうでなければ固定ＩＰアドレスを提供できないコンピュータシステムに常駐する知的エージェント１８０によってのみなされる。ネットワークＩＤ登録モジュール２５０はＩＰアドレス通知パケット１７３を受け取り、関連するユーザエントリとともにＩＰアドレスをユーザテーブル１３５に格納する。この目的のために、ＩＰアドレス通知パケット（単数または複数）は、更新されたＩＰアドレスが提供されたユーザＩＤ（および必要に応じてパスワードも）を指示する。知的エージェント１８０は、エージェントがユーザのコンピュータシステム２８０に最初にインストールされた時点から、音声中継サーバ１２４のＩＰアドレスを知っている。
【００３８】
音声中継サーバ１２４は、音声中継サーバ１２４とユーザコンピュータシステム２８０の知的エージェント１８０との間の通信を設定する前にユーザを認証するユーザ認証モジュール２７０も備える。ユーザ認証モジュール２７０は、発話サーバ１２２と通信し、ユーザが発したＩＤおよびパスワードの発話に対応する変換されたテキスト列を受け取る。続いて、ユーザ認証モジュール２７０はユーザテーブル１３５に問い合わせして、発話サーバ１２２から受信したユーザＩＤとパスワードの列をユーザテーブル１３５のエントリと比較する。受信列とユーザエントリとが一致すると、ユーザ認証がなされてユーザコンピュータシステム２８０とのリンクが確立され、ユーザテーブル１３５の上記ユーザについて格納されている最新のＩＰアドレスが音声中継サーバ１２４に提供され、ユーザコンピュータシステム２８０に常駐する知的エージェント１８０との通信が開始される。
【００３９】
ユーザ認証モジュール２７０において受信したユーザＩＤおよびパスワードの列がユーザテーブル１３５のエントリと一致しない場合、ユーザ認証モジュール２７０はこの不一致を発話サーバ１２２に送信し、発話サーバ１２２はこれに対応する合成音声メッセージをユーザの電話機１１０に提供する。このようなメッセージは、音声中継サーバ１２４から知的エージェント１８０に送信された起動パケットに対する応答を音声中継サーバ１２４が得られないとき、またはユーザＩＤおよびパスワードが知的エージェント１８０またはユーザコンピュータシステム２８０により認識されないときにも、発話サーバ１２２からユーザに対して送信される。
【００４０】
図３を参照すると、知的エージェント１８０がさらに詳細に示されている。知的エージェント１８０は、音声中継サーバ１２４と知的エージェント１８０間のコマンド（または初期化）関連データパケットの送信を処理するコマンド要求モジュール３１０を備える。コマンド要求モジュール３１０が音声中継サーバ１２４から初期化パケットを受け取って知的エージェント１８０の常駐するサーバであるコンピュータシステム２８０との接続を確立する場合、コマンド要求モジュール３１０は、知的エージェント１８０内のユーザ確認モジュール３７０にパケットを転送することで、初期化パケットに埋め込まれたユーザＩＤとパスワード情報とをチェックする。ユーザ確認モジュール３７０で、初期化パケット内のユーザＩＤとパスワードがサーバ２８０の正当なユーザアカウントについて格納されているユーザＩＤおよびパスワードと一致する場合、コンピュータシステムのユーザであると確認される。一致しない場合、ユーザ確認モジュール３７０はコマンド要求モジュール３１０に対して、受け取ったユーザＩＤおよびパスワードはサーバ２８０上の正当アカウントに対応しないことを知らせ、発話サーバ１２２を介してユーザに通信するための対応メッセージが音声中継サーバ１２４に送り返される。
【００４１】
知的エージェント１８０は、コマンド要求モジュール３１０および索引付与モジュール３４０と通信するキャッシュモジュール３２０をさらに備える。キャッシュモジュール３２０は、ネットワーク３９０を介して利用可能なデータソースなどの外部ソースから情報を入手することなく素早い検索が可能な個人情報またはその他の情報をローカルに格納する。
【００４２】
知的エージェント１８０は、索引付与モジュール３４０、入手（sourcing）モジュール３５０およびルールエンジン３６０をさらに備える。ルールエンジン３６０は、多くのユーザ定義ルールにしたがってスケジュールベースで情報を入手するようにプログラムされている。これらのルールは、Ｅメール、カレンダ項目、ニュース記事、データベースエントリ、または、時間とともに更新または新たに作成される情報の他の動的形態などの、入手するべき情報の種類を特定することができる。
【００４３】
ルールエンジン３６０は、（ユーザにより定義されたルールにしたがって）ユーザが興味を持つ新たな情報または更新された情報をユーザに通知することを主な目的として、入手モジュール３５０と連携して使用され情報を入手する。その結果、発話サーバ１２２によってユーザに電話をかけてめぼしい情報の詳細をユーザに読ませることが可能になる。代替的に、ルールエンジン３６０は、ユーザコンピュータシステムへの接続時にユーザが遭遇するユーザインタフェースを構成するために用いられてもよい。例えば、知的エージェント１８０は、ユーザのＥメール受信ボックスの全体を使えるようにする代わりに、ルールにしたがって、未読メールのみを提示して発話サーバ１２２を介してユーザが検索し内容を聞くようにしてもよい。
【００４４】
入手モジュールは、ネットワーク３９０またはコンピュータシステム２８０のデータソースから（ルールエンジン３６０のルールにしたがって）定期的に情報を入手する役割を有する。ネットワーク３９０は、ローカルエリアネットワークでも、インターネットなどの大規模ネットワークでもよい。入手モジュール３５０は、索引付与モジュール３４０にソース情報を提供する。索引付与モジュール３４０は情報を圧縮し索引付けしてキャッシュモジュール３２０に送る。キャッシュモジュール３２０は、圧縮され索引付けされた情報を、コンピュータシステム２８０がアクセス可能なデータソースまたはデータベース３３０に格納する。入手モジュール３５０は、ネットワーク３９０内のデータソースから情報を入手することに加えてまたはその代わりに、コンピュータシステム２８０の中から情報を入手してもよい。
【００４５】
知的エージェント１８０は、知的エージェント１８０が固定ＩＰアドレスを持たないコンピュータシステム２８０に常駐している場合、音声中継サーバ１２４のネットワークＩＤ登録モジュール２５０に定期的に（スケジュール通りに）通知パケットを送信するネットワークＩＤ通知モジュール３８０をさらに備える。
【００４６】
図４を参照すると、ユーザの電話機からコンピュータシステム２８０にリモートアクセスを確立する方法４００が示されている。方法４００はステップ４０５から開始し、ここでユーザは発話サーバ１２２に電話をかける。発話サーバ１２２は、携帯電話または地上電話網のいずれからも電話を受けることができる。ユーザは、発話サーバ１２２で作動する対話型音声応答システムによって、ユーザＩＤおよびパスワードの入力を促される。この入力は発話によっても、ユーザの電話機（または他の電信装置）１１０のキーパッドへの直接入力であっても、またはこれらの組み合わせであってもよい。ステップ４１０で、発話サーバ１２２の自動発話認識機能によってユーザの発話が一つ以上のテキスト列に変換される。ステップ４１５で、発話が認識されない場合、ステップ４２０で発話サーバ１２２はユーザにユーザＩＤとパスワードを再度提供するように要求する。
【００４７】
ステップ４１５でテキストが認識されると、ユーザＩＤとパスワード列が発話サーバ１２２から音声中継サーバ１２４に送信される。ステップ４２５で、音声中継サーバ１２４はユーザＩＤとパスワードをユーザテーブル１３５のエントリに対してチェックを行い、ユーザを認証する。ユーザＩＤとパスワードが認識されない（すなわち、ユーザテーブル１３５に含まれていない）場合は、ステップ４２０でユーザはさらに入力を促され、ステップ４１０からステップ４２５までが（所定の回数を上限として）繰り返される。
【００４８】
ステップ４２５でユーザＩＤとパスワードが認識されると、ステップ４３０で一致したユーザＩＤとパスワードに対応する最新の既知のＩＰアドレスが決定される。ステップ４３５で対応するＩＰアドレスが見つからない場合、または一致したがＩＰアドレスが音声中継サーバ１２４からの初期化パケットに応答できない場合には、ステップ４４０で、有効なＩＰアドレスまたは現在のＩＰアドレスにシステムがアクセスできないことがユーザに通知される。そして、ステップ４２０でユーザにさらに入力を促してもよいし、または音声通話を終了してもよい。
【００４９】
ステップ４３５で、ユーザＩＤに対応するＩＰアドレスがユーザテーブル１３５に存在する場合、通信初期化パケットが音声中継サーバ１２４からコンピュータシステム２８０の知的エージェント１８０に送信される。知的エージェント１８０が認証パケットへの応答に失敗しなければ、ステップ４４５で、サーバシステム１２０とユーザコンピュータシステム２８０の間で通信セッションが確立される。
【００５０】
通信セッションが確立されると、知的エージェント１８０と音声中継サーバ１２４はパケットデータを交換し、知的エージェント１８０のコマンド要求モジュール３１０を介して情報が検索され、また音声中継サーバ１２４のコマンド要求モジュール２３０からコマンドを送信してユーザによって要求された情報を検索することができる。このようなコマンド送信とそれに応答する情報検索がコンピュータシステム２８０とサーバシステム１２０の間でデータパケットの送信によって実行される一方、電話機１１０のユーザはリアルタイムで発話サーバ１２２と通信して、発話コマンドを出したりコンピュータシステム２８０で検索された情報に対応する合成発話信号を聞いたりする。
【００５１】
方法４００を使用して、ユーザがユーザコンピュータシステム２８０から離れた所にいるとき、例えば旅行中であったり自宅から仕事をしているときにユーザコンピュータシステム２８０の情報にアクセスできるようにするという、リモートアクセスシステム１００の主目的が容易になる。方法４００が実行されて知的エージェント１８０と音声中継サーバ１２４の間で通信セッションが確立されると、ユーザは必要に応じて、文書、Ｅメール、ニュース記事、カレンダ、オブジェクト、データベースエントリ、または発話と他のデータ形態との間で変換可能な他の情報またはオブジェクトを含む、情報またはオブジェクトを検索し、作成し、修正することができる。
【００５２】
別の態様では、リモートアクセスシステム１００を使用して知的エージェント１８０とサーバシステム１２０との間に自動的に接続を確立し、ユーザについて登録された電話機に自動的に電話を入れることによって、コンピュータシステム２８０が利用可能な（知的エージェント１８０によって入手され索引付与された）新たな情報または更新された情報をユーザに自動的に通知することができる。このような自動通知方法は、図５に方法５００として示されている。
【００５３】
方法５００は、ユーザに自動的に提供される情報コンテンツの入手ルールをユーザが作成することから始まる。このルールは、ステップ５０５でユーザによって作成されるが、入手すべき情報のタイプ、情報を入手すべき頻度、およびユーザに通知がなされるべき条件またはタイミングを設定する際にユーザを支援するルール作成ウィザードが使用されることが好ましい。ルールには、情報を入手するためのキーワードまたはその他の基準が指定されてもよい。
【００５４】
ステップ５１０で、上述したように知的エージェント１８０はコンピュータシステム２８０またはネットワーク３９０から情報を入手する。ステップ５１５で、知的エージェント１８０は入手情報が一つ以上のユーザ定義ルールと一致するかチェックする。情報がルールと一致しない場合、その情報は破棄されるか、または少なくとも索引付与モジュール３４０による索引付与がなされず、ステップ５１０で知的エージェントはさらに情報を入手し続ける。ステップ５１０で、情報がユーザ定義のルールの一つと一致する場合、情報は索引付与モジュール３４０およびキャッシュモジュール３２０によってコンテンツオブジェクトとして処理され（後述する）、ユーザへの通知予定時刻になるまでデータベース３３０に格納される。予定時刻になると、ユーザ定義ルールを満足する情報がキャッシュモジュール３２０からコマンド要求モジュール３１０にロードされ、ステップ５２０でパケット化されたテキストに変換される。通知情報を有する各パケットは、ユーザＩＤも含む。
【００５５】
ステップ５２５で、ステップ５２０で作成された通知情報パケットが音声中継サーバ１２４のコマンド要求モジュール２３０に送信され、通知モジュール２２０に渡される。コンピュータシステム２８０から受け取った通知情報パケットに付与されたユーザＩＤを使用して、通知モジュール２２０はユーザテーブル１３５にアクセスし、ステップ５３０でユーザＩＤに対応した電話番号を決定する。すべての通知情報パケットが音声中継サーバ１２４で受け取られると、通知モジュール２２０はパケットを処理して音声ＸＭＬ変換モジュール２１０に読み取り可能な形とし、通知情報が音声ＸＭＬオブジェクトとして発話サーバ１２２に送信される。ステップ５３５で、発話サーバ１２２は音声ＸＭＬをユーザに送信する合成発話信号へ変換する。
【００５６】
ステップ５４０で、発話サーバ１２２はユーザの電話番号にダイアルし、ユーザが電話に出ると発話信号がユーザに送信される。ユーザが電話に出なければ、サーバシステム１２０は、サーバシステム１２０に受信待機中の通知があることを示し、（方法４００にしたがって）電話をかけて通知を検索するためのリターンアクセス番号をユーザに提供するテキストメッセージ、または他の形態のショートメッセージなどのユーザに対する非音声通知を準備してもよい。
【００５７】
有利なことには、リモートアクセスシステムによって、ユーザはこのシステムがなければ所望の情報にアクセスできないような離れた場所からユーザのコンピュータシステム２８０にある情報に容易にアクセスすることが可能になる。さらに有利なことに、リモートアクセスシステム１００は、ユーザに情報を提供し、ユーザがリモートで受信したいと既に示唆している利用可能な情報をユーザに自動的に通知するように、ユーザによって事前に構成することができる。
【００５８】
一実施形態では、音声中継サーバはユーザからの発話に索引付与するために確率的索引付与技術を使用する。この索引付与技術によって、音声サーバで発話要求を受け入れ発話要求をデータ要求に変換して音声中継サーバに送る性能を改善し、効率を向上することができる。
【００５９】
音声通話者によって特定の要求が音声によりなされる確率を使用して、通話者が情報を要求する時点でどのようなキーワードがロードされるかが評価される。例えば、ユーザがサーバシステム１２０を介して聞きたいＥメールを要求すると、確率マッチングによって最もありそうな応答は、delete, remove, next, reply, respond, forward, previous, repeat（削除、移動、次、返信、応答、早送り、前、繰り返し）といったＥメールと一般に（または以前に）関連するコマンドであろう。しかしながら、ユーザがtransmit, response, subsequent, erase, replay（送信、応答、次、消去、再生）などのあまり言われそうのないコマンドを言う可能性もある。発話された音声コマンドに基づいて、サーバシステム１２０は音声コマンドのプロファイルを作成し、使用頻度に応じてコマンドをランク付けし、音声対話プロセスでの特定のイベントにコマンドを関連付ける。
【００６０】
こうして、音声中継サーバの確率的索引付与技術によって、入力としてありそうな発声と発話についての動的に作成されたパターン一致マップが提供される。ユーザがリモートアクセスシステム１００と対話するたびに、ユーザの対話内容のマッピングが改良されまた維持されて、可能性のある対話の索引付きリストが動的に改良される。その後、ユーザがシステムにアクセスすると、音声中継サーバ１２４から発話サーバ１２２に対して入力される可能性のある索引付きリストが与えられ、認識処理の成功率が前回の失敗水準を確実に上回るようになる。
【００６１】
確率的索引付与を実行するために、音声中継サーバは対話分析部と索引付きリスト生成部（ともに図示せず）とを備える。
【００６２】
対話分析部
各ユーザのシステムとの対話について、アクセスされた構成要素が分析され、対話内容が将来起こりえる音声対話としてランク付けされる。これらの対話リストは、将来の処理で利用できるように維持される。発話予測モデルが生成されてディスクまたはメモリに格納され、リアルタイムで適用されて連続使用される。このリストは、サービスの使われ方のパターンおよびプロファイリングにしたがって分類され、絶えず更新される。
【００６３】
索引リスト生成部
特定の音声対話と情報の音声ページ内容（音声ＸＭＬページ）に基づいている。この構成要素は、対話分析部で作成されたリストにアクセスして、索引付与された予測発話のリストを作成する。後者のリストは、特定の文脈に基づいて音声中継サーバ１２４で利用可能な形態とされ、必要に応じて発話サーバ１２２にロードされる文法のセットとして生成される。
【００６４】
知的エージェント１８０は、デスクトップＰＣまたはサーバ内の新たな情報や情報の変更に応答するように、ルールエンジン３６０を介してプログラムされてもよい。ルールに則って捕捉された新たな情報または変更された情報は、パケットメッセージの形で音声中継サーバに対するアラートをトリガし、このアラートは音声中継サーバによって発話パケットまたは発話信号に変換され、（携帯または地上の）電話機に送られる。ユーザは、電話に応答して、自動生成されたアラートメッセージを聞く。
【００６５】
ルールエンジンによって、ユーザが個別に選択した情報だけがユーザに通知されるようにデータソース毎に別個のプロファイルを作成することが可能となる。以下、ルールエンジン３６０の構成要素について簡単に説明する。
【００６６】
ルール作成部
この構成要素は、入力のセットを受け入れルールを作成する。この構成要素は、特定のアクションの実行に適合する条件と制約のセットを予め定義する。
【００６７】
推論（reasoning）モジュール
この構成要素は、条件セットと入力セットを分析し、ルールとポリシー規準とが合致するかをチェックする。この構成要素は、ルールを探し出し、ルールに関する許可を確認し、さらに実行時間と実行条件がルールを遵守しているかチェックする。
【００６８】
ルール検証部
この構成要素は、ルールの妥当性を評価する役割を持つ。この構成要素は、ルールの完全性、一貫性、必要条件の有無とその測定指標をチェックした後、そのルールがルール処理部で処理されるのに妥当であるとみなす。
【００６９】
ルールプロセッサ
この構成要素は、ルール検証部を使用してルールを検証する役割を持つ。次に、推論モジュールを使用してルールが実行されるべきかをチェックする。その後ルールアクションを実行する役割を持つ。
【００７０】
機能処理
ルールは通常、ルール作成部で生成された一組の文字列で構成される。この文字列は、プログラマチックインタフェースであってもよいし、これらの文字列を入力するためのユーザフォームであってもよい。入力された各文字列は、ルール検証部によって検証される。ルール検証部は、例えばルール作成部に対して、文字列に不整合な構造があること（余分な文字または非準拠の文字）や、不整合なデータ構造（例えば、ＥＵフォーマットによる２５／１２／０４といった日付は、ＵＳフォーマットの１２／２５／２００４のようにしないと処理されず、または受け入れられない）があることを知らせる。このルールは格納されて特定のユーザと関連付けされる。
【００７１】
知的エージェント１８０アプリケーションは、一人以上のユーザについて一つ以上のルールを管理するように設計される。知的エージェントに組み込まれたスケジューラは、入ってくる情報に問い合わせをし、文字列またはユーザ定義ルールを構築された情報とマッチングするように設計される。したがって、日付フィールドを持つニュース記事がユーザの選択した日付項目と比較され、一致すれば通知イベントが生成される。知的エージェントはまた、入ってくるデータ項目によってトリガされるべき能力をサポートし、これらデータ項目に対して同様のマッチング処理を実行することができる。
【００７２】
音声中継サーバ１２４は、リモートの複数のＰＣまたはサーバといくつかの接続を有していてもよい。２つのエンドポイント間での通信を処理する主要なサービスは、ＰＣまたはサーバの知的エージェントのコマンド要求モジュールと、音声中継サーバのコマンド要求モジュールである。コマンド要求モジュール内のコマンドプロセッサ（図示せず）は、リモートサービスから送受信される情報パケットを構築（constructing）および解体（de-constructing）する役割を持つ。コマンドプロセッサモジュールは、ネットワーク内のいずれかのポイントで発生しうるさまざまな要求を処理するように設計されている。
【００７３】
コマンドプロセッサは、ＴＣＰ／ＩＰ接続を介して入ってくる要求を聞く。ユーザが最初にサービスにログオンすると、ユーザ名とパスワードの連続した文字列表現として、リモートのＰＣまたはサーバの知的エージェントに証明書が送信される。これによって、ユーザの認証がなされてリモートの知的エージェントと続けて対話可能となるか、または要求が拒否される。認証が成功すると、２つのシステム間にＴＣＰ／ＩＰセッションが確立され、コマンド処理部は各端で受信された情報を処理する。連続した文字列は、知的エージェント１８０と音声中継サーバ１２４の間で受け渡しされる。多種にわたる発生要求とペイロード応答をシステムで処理可能とするメカニズムを提供する通信プロトコルが、知的エージェント１８０と音声中継サーバ１２４に実装され、通信プロトコルを用いてアクションとサービスを呼び出す。このプロトコルについて一例を示す。
【００７４】
<ServiceNameHeader><ServiceMethodName><ServiceMethodParameter1>.....<ServiceMethod ParameterN><EndOfServiceRequest>
上記の例で、Servicenameheaderは、アクセスまたは配信に必要となるデータサービスの標準名であり、methodnameは、その項目で実行すべきアクションを決定し、methodparametersは、項目のリストまたは特定のデータ要素などの動的変数である。
【００７５】
要求のデータ要素の一例は、以下の通りである。
【００７６】
<Email><Readback><Number 1><Number 2><Number 3><end>  または、
<Calendar><create><type=appointment, date=March 17, time=6.30pm, duration=1 hour>
【００７７】
このプロトコルは、音声中継サーバとＰＣまたはサーバ内の知的エージェントとの両方で、アクションまたはサービスを引き出すのにも用いられる。音声中継サーバと知的エージェントのそれぞれに対するサービスが異なるため、サービスメソッドハンドラは音声中継サーバと知的エージェントでそれぞれ異なる。例えば知的エージェントは、ＰＣやサーバに格納されたローカルの電話帳から個人名の検索を要求するといった、ユーザに音声入力を促す要求を音声中継サーバに送る。音声中継サーバ１２４は、問い合わせに応えて電話帳を開くよう知的エージェントに要求する。このプロトコルは、音声中継サーバとエンドポイントの知的エージェントとの間に双方向通信のフレームワークを提供する。
【００７８】
知的エージェントは、プログラムからの電子的な情報フィルタリングや情報検索、およびＰＣまたはサーバに接続された情報に関係するユーザ定義ルールのセットを管理する。例えば、ユーザは、データベースファイルから特定分野のエントリを読み出すルールを作成する。このエントリにルールを満足するような変更があった場合、知的エージェントはこの変更を認識して、特定のユーザの電話番号を目標とした音声中継サーバに（要約または他の形態の）対してアラートを送信し、ユーザに対して音声ストリームとしてアラートを読ませるようにする。
【００７９】
ルールが適用されるコンテンツに対する変更は、ＰＣ上でのコンテンツの入手を制御する知的エージェントソフトウェアによって監視され認識される。以下、コンテンツに対する索引付与技術について説明する。
【００８０】
知的エージェントは、キャッシュモジュール３２０内に、ルールを満足するデータ項目についてのローカルキャッシュされたオブジェクト参照を作成する。この参照は利便性と効率のために知的エージェントによって維持および管理される。オブジェクト参照内のキャッシュされた各オブジェクトは、個人支援コンテンツオブジェクト（ＰＡＣＯ：personal assistant content object）と呼ばれる。このようなオブジェクトの処理についてはさらに後述する。ローカルキャッシュされたオブジェクト参照によって、データ情報サービスのインタフェースに対する変更を簡単に追加し維持することが可能になる。
【００８１】
ＰＣまたはサーバ上のローカルデータと対話するために、知的エージェントは、「www.dimastr.com」で利用可能な（２００４年５月２１日現在）outlook redemptionなどの、マイクロソフト・アウトルック（登録商標）に対する市販のインタフェースを利用することが好ましい。ＰＣ外部のデータコンテンツは、入手モジュール３５０によって取得される。コンピュータシステム２８０がサーバシステムである場合、知的エージェントは、（２００４年５月現在、「www.compoze.com」にある）「compoze exchange connector」などの市販インタフェースを利用して、マイクロソフト・エクスチェンジ内のメールサービスおよびカレンダサービスと接続することができる。
【００８２】
知的エージェント１８０は、ユーザが自分のデスクトップＰＣやサーバ情報用に構成したいと考えるルールをカスタマイズできるように設計されたソフトウェアインタフェースを有する。知的エージェントは、ＸＭＬデータ、ＳＱＬデータ、ＨＴＭＬデータ、Ｅメールデータ、ＲＳＳニュースデータ、オペレーティングシステムデータ、ファイルデータ、ワードプロセッサ文書データなどのあらゆる構造のデータソースと通信するソフトウェアインタフェースのセットも有している。
【００８３】
音声中継サーバ１２４は、多くの重要な機能を実行する。これらのサービスまたは機能には、リモートＰＣまたはサーバとの物理ネットワーク接続の維持、データパケットの交換を実行可能なリモートＰＣまたはサーバとの論理接続の維持、存在検知（presence detection）、安全な接続管理が含まれる。これらの機能およびサービスについて、以下でより詳細に説明する。
【００８４】
論理接続を設定する前に、音声中継サーバとＰＣまたはサーバの知的エージェントとの間に一つ以上の物理接続が確立されていなければならない。音声中継サーバ、デスクトップＰＣまたはサーバのいずれにも直接到達することが不可能な場合（例えば、システムがファイアウォールの背後にあったり内部ネットワーク上にあるために、物理インターネットアドレスを持たない場合）、音声中継サーバの物理接続マネージャ（ＰＣＭ：physical connection manager）（図示せず）が、セキュアなポートを使用してリモートＰＣとの接続を確立する。セキュアポートを通じたこのＰＣＭ接続は、ＰＣまたはサーバの知的エージェントによって確立される。知的エージェントは、音声中継サーバに対して正体を明らかにし、音声中継サーバと一方向のポート接続を確立し、ＴＣＰ／ＩＰのピギーバッグ機能を使用して音声中継サーバが同様のセキュアなＴＣＰ／ＩＰ接続を介してＰＣまたはサーバと通信できるようにする。
【００８５】
音声中継サーバのみが既知のＩＰアドレスを持ち、直接に接続されることができるため、ＰＣＭは、ＰＣまたはサーバの知的エージェントを関与させて、（音声中継サーバに対して正体を明かすように）それぞれＰＣＭへの接続を開始させることに依存している。ＰＣＭは、知的エージェントの接続を維持し、接続をオーナの身元（identity）と関連付けし、ユーザからの指示があると、リモートＰＣまたはサーバで利用可能なサービスのセットにアクセスする音声コマンドを使用して、プロトコルレベルで実際のデータ交換を実行する。
【００８６】
メッセージ交換できるようになる前に、音声中継サーバとＰＣまたはサーバの知的エージェントとの間にデータパイプすなわち論理接続が存在しなければならない。音声中継サーバの論理接続マネージャ（ＬＣＭ：logical connection manager）（図示せず）は、このようなパイプを定義しパイプを確立して維持する役割を持つ。論理接続は、一つ以上の物理接続から作られる。メッセージ交換セッションに関与するいずれかのパーティのＩＰアドレスにオープンネットワークを介して到達可能である場合、サーバのＬＣＭが関与することなく、論理接続としてパーティとサービスの間で物理接続を直接設定することができる。論理接続が２つ以上の物理接続から構成されている場合、ＬＣＭはこれら物理接続の身元と状態の経過を追う必要がある。
【００８７】
音声中継サーバとリモートの知的エージェントＰＣとの間でメッセージが交換できるようになる前に、参加者の通信エンドポイント（すなわちＩＰアドレス）が既知でなければならない。音声中継サーバで作動するプレゼンスマネージャ（ＰＭ）（ネットワークＩＤ登録モジュール２５０でもある）は、この情報を追跡する役割を持つ。これは比較的受け身の構成要素である。音声中継サーバ上のＰＭにＩＰアドレスを通知するのに知的エージェントに依存している。ＰＭクライアント（ネットワークＩＤ通知モジュール３８０でもある）は、各参加クライアントの装置で作動（すなわち、知的エージェントの機能の一部として作動）して、長期にわたり定期的に音声中継サーバのＰＭに対して装置の存在を登録する必要がある。
【００８８】
プレゼンスマネージャは、ＰＣまたはサーバの知的エージェントについてのテーブルを絶えず管理しており、ＰＣまたはサーバのスイッチが入っておりその存在を明らかにしている場合には、入ってくるユーザ接続が常に確実にユーザのＰＣまたはサーバの対応するリモート知的エージェントと接続できるようにしている。
【００８９】
物理接続要求が認証済みの参加者からのものであるかを判定するために、要求者の身元を承認する必要がある。音声中継サーバの名前領域（namespace）においてユニークな識別子が、各参加ユーザおよび端末端装置に関連付けられていなければならない。このような装置はそれぞれ、やはりユニークな識別子を必要とするオーナに属する。これらの識別子は、音声中継サーバおよびリモートの知的エージェントＰＣやサーバでのサービスおよびリソースへのアクセスを制御するための基礎としての役割も果たしている。ユーザ認証モジュール２７０。セキュリティマネージャ（ＳＭ）は、（通常はデータベース内の）内部テーブルのユーザを認証するためのセキュリティポリシーを管理し、維持し、実施する役割を持つ。セキュリティマネージャは、リモートのＰＣまたはサーバへのセキュアな接続を管理する役割を持ち、したがって音声中継サーバとリモートの知的エージェントＰＣの間のデータパイプは暗号化されてもよい。セキュリティは、パケットレベルまたは接続レベル（ＳＳＬタイプのセキュアな接続）のものであってもよい。
【００９０】
知的エージェントは、ユーザからのコマンドに応答する。このコマンドは、データベース項目、Ｅメール項目、ニュース記事、個人ローカルファイル、カレンダ項目、ワードプロセッサ文書または他の構造化データなどのユーザＰＣ上の個人データを検索し、作成し、修正することを伴ってもよい。ユーザは、プログラムの起動や停止などの、個人ＰＣ上での処理を開始するコマンドを出すこともできる。有利なことには、ユーザは、Ｅメールの編集、データベース項目の削除、データベース内の項目の点検、ＰＣからのウェブページ読み出しなどの、個人ＰＣ上の特定のデータ項目を管理するコマンドを出すこともできる。
【００９１】
知的エージェントは、ＰＣにローカルに格納された情報、またはネットワーク接続を介してＰＣで利用可能な情報と通信可能である複数の定義された「データインタフェース」を有する。このようなデータインタフェースの一つは、ＳＱＬデータベースに対するものである。このインタフェースにより、知的エージェントは、ＰＣ上またはＰＣに接続されたネットワーク上の標準的なＳＱＬデータベース内のデータ項目を読み出し、更新し、削除し、追加しおよび置換することが可能となる。
【００９２】
有利なことには、（ルールエンジンを使用して）ＰＣの知的エージェントによってアラートデータが送信されるべきと判定されると、適切なリモートのユーザ電話機に電話をかけるためにアラートすなわちデータパケットが音声中継サーバに送信される。知的エージェントは、無人でかつスケジュール通りにローカル情報にアクセスするように構成される。知的エージェントのルールエンジンは組込みスケジューラを有しており、これを用いて、ユーザはローカルＰＣの情報またはＰＣが接続されたネットワーク上の情報に定期的にアクセスすることができる。ルールエンジンは、ＰＣまたはローカルネットワーク上のローカルデータと比較される特定のデータ文字列を作成する方法も提供する。
【００９３】
（ユーザが定義したルールにしたがって）「データパラメータ」の一致すなわち「データパラメータ」の充足が検出された場合、アラートメカニズムが知的エージェントをトリガして音声中継サーバに対してコマンドが送信され、正しいユーザ（すなわち、そのＰＣについて登録されたユーザ）に電話がかけられる。音声中継サーバはユーザとの電話接続を確立し、アラートを発話ストリームに変換してユーザが聞き取ることができるようにする。ユーザは、音声中継サーバに送信されるアラートをカスタマイズでき、また、ＰＣの知的エージェントの一部であるデスクトップ管理ソフトウェアツールを用いてアラートの通知頻度を設定することもできる。
【００９４】
索引付与モジュール３４０では、任意のコンテンツソースにアクセスがあるたび、個人項目についての数学的ダイジェスト（mathematical digest）が計算されて入手要素に格納される。計算されたダイジェストがその特定の項目タイプについて格納されているいずれのダイジェストとも一致しないような項目をコンテンツ入手モジュール３５０が検索した時点で、フィルタリングおよび処理のためにその項目は複製ではなくオリジナルであるとみなされる。
【００９５】
しかしながら、計算されたダイジェストがその項目タイプについて格納されているダイジェストと一致した場合、項目は複製であるとみなされ、フィルタリングおよび処理のために無視される。これによって、効率を著しく改善し知的エージェントのコンテンツフィルタリングのデータ記憶容量要件を最小化する態様で、（テキストＥメールのような）データオブジェクトを数学的に表現する方法が提供される。したがって、メールサーバ内に残っている未読のメールは、知的エージェントが認識しマッチングをする新たなデータコンテンツ項目として出現する。
【００９６】
索引付与モジュール３４０は、ダイジェスト生成部と索引ダイジェストリストリポジトリとを備える。
【００９７】
ダイジェスト生成部
この構成要素は、コンテンツソースオブジェクトを受け入れ、入力されたオブジェクトについて数学的に計算されたダイジェストを作成する。使用されるアルゴリズムは、ＭＤ５またはＳＨＡ、あるいはその２つの組み合わせとすることができる。この構成要素は、Ｅメールやニュース記事または株式相場などのコンテンツオブジェクトを受け入れ、数学的ダイジェストを返すためのインタフェースを有している。
【００９８】
索引ダイジェストリストリポジトリ
この構成要素は、様々なコンテンツソースタイプのダイジェストのリポジトリである。この構成要素は、様々なタイプのダイジェストを格納し、マッチングを行い、調整をするメカニズムを提供する。
【００９９】
リモートアクセスシステム１００は、様々なフォームファクタを用いて、音声通知を介して様々なコンテンツのタイプを監視し、フィルタリングし、エンドユーザに配信するよう要求されてもよい。このコンテンツは、変化するニーズに応じて絶えず変化する。このコンテンツソースは、処理のためにキャッシュまたは持続的なデータベース内に格納されるようになっていてもよい。コンテンツソースが下位のデータ構造を変更すると、格納もまた変更されなければならない。例えば、現在ではＥメールやニュースのコンテンツ格納が要求されるが、将来は株取引、天気情報または交通警報を格納することもあり得る。
【０１００】
多くのコンテンツを分析することによって、出典や目的、タイトルなどのコンテンツソースにおいて一貫する属性が特定された。コンテンツデータはタイプによって変化した。したがって、共通の属性をデータの持続性レベルで標準化することができ、その一方、変化する属性をアプリケーションレベルで標準化することができる。さらに、シリアル化（serialization）または逆シリアル化（deserialization）メカニズムによって、変化するコンテンツオブジェクトをデータ格納まで確実に持続させることができ、またデータ格納から確実に再生することができる。
【０１０１】
ＰＡＣＯ構造の機能要素について以下に説明する。
【０１０２】
ジェネリック（generic）ＰＡＣＯ
すべてのコンテンツソースオブジェクトはジェネリックＰＡＣＯオブジェクトとして格納することができるべきである。この構成要素は、特定のコンテンツオブジェクトからジェネリックＰＡＣＯオブジェクトに変換可能とするメカニズムを有する。
【０１０３】
ＰＡＣＯシリアライザ
この構成要素は、ジェネリックＰＡＣＯオブジェクトをシリアル化（serialize）して下位のデータ格納に適したフォーマットにすることができる。後者のフォーマットは、リレーショナルデータベース、ローカルファイル、または記憶装置であってもよい。さらに、格納されたジェネリックＰＡＣＯオブジェクトを逆シリアル化（deserialize）することもできる。
【０１０４】
ＰＡＣＯエンコーダ
ＰＡＣＯエンコーダは、シリアル化可能なジェネリックＰＡＣＯオブジェクトを、システムのセキュリティ要件に適合する形態に暗号化することができる。また、シリアル化されたオブジェクトを復号することもできる。
【０１０５】
ＰＡＣＯアクセス要素
この構成要素は、暗号化されシリアル化されたジェネリックＰＡＣＯオブジェクトを格納することができる。これは、必要なPACOAccessObjectを作成するPACOAccessObjectFactoryを有している。PACOAccessObjectは、下位のデータ格納と対話するために存在する必要がある。
【０１０６】
要件
ＰＡＣＯおよびそのデータ層モジュールは、ジェネリックコンテンツオブジェクト内にすべての異種のコンテンツオブジェクトをカプセル化するために使用されるべきである。ジェネリックコンテンツオブジェクトは、ＰＡコンテンツオブジェクトと呼ばれる。ＰＡコンテンツオブジェクトは、アプリケーションレベルで異種のコンテンツオブジェクトをジェネリックコンテンツオブジェクトにマッピングするという利点によって、高速のデータアクセスに役立つ。持続性のレベルでは、ジェネリックコンテンツオブジェクトは常に、リレーショナルデータベース内の同じテーブルにマッピングされなければならない。主要な検索可能なフィールド、すなわちソース、デスティネーション、タイトル、識別子およびそのタイプは、データベースレベルで標準化されていなければならず、一方、アプリケーション固有の詳細の領域の一貫性が、アプリケーションレベルで維持されていなければならない。これによって、データ持続性レベルにおいてただ一つの表現で、多様なコンテンツオブジェクトタイプを格納することができ、その一方、使い方が簡単であり、コンテンツタイプの変更があるデータベースに対する変更がなくなる。
【０１０７】
本発明の実施形態について例示によって説明した。本発明の主旨および範囲から逸脱することなく実施形態に対する変更や修正が可能なことは当業者には明らかであろう。
【図面の簡単な説明】
【０１０８】
【図１】一実施形態に係るリモートアクセスシステムのブロック図である。
【図２】別の実施形態に係る音声中継サーバのブロック図である。
【図３】別の実施形態に係る知的エージェントのブロック図である。
【図４】ユーザの電話機からユーザコンピュータシステムへのリモートアクセス確立方法を示す処理フロー図である。
【図５】知的エージェントで監視される情報イベントをユーザに電話で自動的に通知する方法の処理フロー図である。
【図１】
2007538432.tif 000003
【図２】
2007538432.tif 000004
【図３】
2007538432.tif 000005
【図４】
2007538432.tif 000006
【図５】
2007538432.tif 000007
【国際調査報告】
2007538432.tif 000008
2007538432.tif 000009
2007538432.tif 000010