(57)【要約】【課題】音声ブラウザの拡張性と、性能を高めるための解決策を提供すること。【解決手段】本発明は、解析された音声マークアップ言語データを解釈するように構成された、複数のサービスプロセッサを配置し、電話サービスを表す音声マークアップ言語データを、検索し、解析するように構成された、複数の音声マークアップ言語パーサーを配置する、分散音声ブラウザを使用して、呼を処理する方法を含むことができる。この複数のサービスプロセッサと、この複数のマークアップ言語パーサーを、一つ以上のセッションマネジャーの中に登録できる。したがって、受信された電話サービス要求の構成要素を、音声マークアップ言語パーサーに振り分け、解析された音声マークアップ言語データを、サービスプロセッサに振り分けることができる。【選択図】　図１
2004032742.tif 000002
【特許請求の範囲】
【請求項１】
分散音声ブラウザを使用して、通話を処理する方法であって、
解析された音声マークアップ言語データを解釈するように構成された、複数のサービスプロセッサを配置するステップと、
電話サービスを表す音声マークアップ言語データを検索しおよび解析するように構成された、複数の音声マークアップ言語パーサーを配置するステップと、
少なくとも一つのセッションマネジャーの中に、前記複数のサービスプロセッサ、および、前記複数のマークアップ言語パーサーを登録するステップと、
受信した電話サービス要求の構成要素を、前記音声マークアップ言語パーサーに振り分け、前記解析された音声マークアップ言語データを、前記サービスプロセッサに振り分け、そのことにより、前記電話サービスを実施するステップと、を含む方法。
【請求項２】
電話サービス要求を受信するステップを更に含み、前記電話サービス要求は、前記サービスプロセッサの特定の一つと関連付けられており、かつ前記電話サービスを表す前記音声マークアップ言語データの位置を指定するものである、請求項１に記載の方法。
【請求項３】
使用可能な音声マークアップ言語パーサーを決定するステップと、
前記使用可能な音声マークアップ言語パーサーに、前記指定した位置を提供するステップと、
をさらに含む、請求項２に記載の方法。
【請求項４】
前記指定した位置から前記音声マークアップ言語データを検索するステップと、
前記音声マークアップ言語データを中間フォーマットに変換するために、前記音声マークアップ言語データを解析するステップと、
をさらに含む、請求項３に記載の方法。
【請求項５】
前記解析された音声マークアップ言語データを受信するステップと、
前記関連付けられたサービスプロセッサに、前記解析された音声マークアップ言語データを提供するステップと、
をさらに含む、請求項４に記載の方法。
【請求項６】
前記解析された音声マークアップ言語データを実行して、前記電話サービスを実施するステップをさらに含む、請求項５に記載の方法。
【請求項７】
前記サービスプロセッサ、前記音声マークアップ言語パーサー、および、前記セッションマネジャーを、追加的に複製するステップとをさらに含む、請求項１に記載の方法。
【請求項８】
前記複数のサービスプロセッサを、少なくとも一つの仮想マシン内に示し、前記複数の音声マークアップ言語パーサーを、前記複数のサービスプロセッサ用の前記少なくとも一つの仮想マシンとは別の、少なくとも一つの仮想マシン内に示すステップとをさらに含む、請求項１に記載の方法。
【請求項９】
前記複数のサービスプロセッサを、少なくとも第１のコンピューティングマシン内に、前記複数の音声マークアップ言語パーサーを少なくとも第２のコンピューティングマシン内に、前記セッションマネジャーを少なくとも第３のコンピューティングマシン内に配置するステップであって、前記第１、前記第２、および、前記第３のコンピューティングマシンを、ネットワークを介して通信可能なようにリンクするステップをさらに含む、請求項７に記載の方法。
【請求項１０】
電話サービスの音声マークアップ言語表記を、検索し、解析するように構成された解析の構成要素と、
前記電話サービスの前記解析された音声マークアップ言語表記を解釈するための、実行環境を提供するように構成された電話サービス実現の構成要素と、
前記解析の構成要素、および、前記電話サービス実現の構成要素の動作を、調整するように構成されたセッション管理の構成要素と、
を含む分散音声ブラウザシステム。
【請求項１１】
前記解析の構成要素が、複数の音声マークアップ言語パーサーをさらに含む、請求項１０に記載のシステム。
【請求項１２】
前記電話サービスの構成要素が、複数のサービスプロセッサを含む、請求項１１に記載のシステム。
【請求項１３】
前記セッション管理の構成要素が、複数のセッションマネジャーを含む、請求項１２に記載のシステム。
【請求項１４】
前記音声マークアップ言語パーサーが、少なくとも一つの仮想マシン内で実行するように構成される、請求項１３に記載のシステム。
【請求項１５】
前記サービスプロセッサが、前記一つの音声マークアップ言語パーサー用の前記少なくとも一つの仮想マシンと独立している、少なくとも一つの仮想マシン内で実行するように構成される、請求項１４に記載のシステム。
【請求項１６】
前記解析の構成要素、前記セッション管理の構成要素、および、前記電話サービス実現の構成要素が、別々のコンピューティングマシン内で実行する、請求項１０に記載のシステム。
【請求項１７】
マシンによって実行可能の複数のコードセクションをもつコンピュータプログラムを記憶したコンピュータ可読記憶であって、前記コンピュータプログラムが、
解析された音声マークアップ言語データを解釈するように構成された、複数のサービスプロセッサを配置するステップと、
電話サービスを表す音声マークアップ言語データを、検索し、解析するように、構成された、複数の音声マークアップ言語パーサーを配置するステップと、
少なくとも一つのセッションマネジャーに、前記複数のサービスプロセッサ、および、前記複数のマークアップ言語パーサーを、登録するステップと、
受信した電話サービス要求の構成要素を、前記音声マークアップ言語パーサーに振り分け、前記解析された音声マークアップ言語データを前記サービスプロセッサに振り分けるステップであって、そのことにより前記電話サービスを実施するステップと、
をコンピュータに実行させるためのものである、コンピュータ可読記憶装置。
【請求項１８】
電話サービス要求を、前記サービスプロセッサの特定の一つと関連付け、前記電話サービスを表す前記音声マークアップ言語データの位置を指定する、前記電話サービス要求を受信するステップをさらに含む、請求項１７に記載のコンピュータ可読記憶装置。
【請求項１９】
使用可能な音声マークアップ言語パーサーを、決定するステップと、
前記使用可能な音声マークアップ言語パーサーに、前記指定された位置を提供するステップと、
をさらに含む、請求項１８に記載のコンピュータ可読記憶装置。
【請求項２０】
前記指定された位置から前記音声マークアップ言語データを検索するステップと、
前記音声マークアップ言語データを解析し、前記音声マークアップ言語データを中間フォーマットに変換するステップと、
をさらに含む、請求項１９に記載のコンピュータ可読記憶装置。
【請求項２１】
前記解析された音声マークアップ言語データを検索するステップと、
前記解析された音声マークアップ言語データを、前記関連付けられたサービスプロセッサに提供するステップと、
をさらに含む、請求項２０に記載のコンピュータ可読記憶装置。
【請求項２２】
前記解析された音声マークアップ言語データを実行し、前記電話サービスを実施するステップをさらに含む、請求項２１に記載のコンピュータ可読記憶装置。
【請求項２３】
前記サービスプロセッサ、前記音声マークアップ言語パーサー、および、前記セッションマネジャーを、追加的に複製するステップをさらに含む、請求項１７に記載のコンピュータ可読記憶装置。
【請求項２４】
少なくとも一つの仮想マシン内に、前記複数のサービスプロセッサを配置し、前記複数のサービスプロセッサ用の前記少なくとも一つの仮想マシンとは別の、少なくとも一つの仮想マシン内に、前記複数の音声マークアップ言語パーサーを配置するステップをさらに含む、請求項１７に記載のコンピュータ可読記憶装置。
【請求項２５】
前記複数のサービスプロセッサを、少なくとも第１のコンピューティングマシン内に配置し、前記複数の音声マークアップ言語パーサーを、少なくとも第２のコンピューティングマシン内に配置し、前記セッションマネジャーを、少なくとも第３のコンピューティングマシン内に配置するステップを有し、前記第１、前記第２、および前記第３のコンピューティングマシンが、ネットワークを介して通信可能なようにリンクされている、
請求項２４に記載のコンピュータ可読記憶装置。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は電話の分野に関し、より詳細には、電話サービスのために、音声ブラウザを使用すること関する。
【０００２】
【従来の技術】
音声ブラウザは、通常、音声認識エンジンおよび音声合成エンジンとともに動作し、ユーザは、ネットワークベースの電子コンテンツと、音声で対話できる。すなわち、このユーザは、ネットワークベースの電子文書間をナビゲートするために、音声コマンドを提供することができる。同様に、ネットワークベースの電子コンテンツを、ユーザに聴こえるように、通常は合成音声の形で提供できる。したがって、音声ブラウザは、たとえば、電話、ＰＤＡ、またはデスクトップコンピュータによって、ネットワークベースの電子コンテンツおよびアプリケーションへの、音声アクセスおよび対話式音声応答を提供できる。
【０００３】
音声ブラウザは、ＶＸＭＬ（Ｖｏｉｃｅ　Ｅｘｔｅｎｓｉｂｌｅ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）で符号化されたネットワークベースの電子コンテンツと対話するように構成できる。ＶＸＭＬは、分散音声アプリケーション用のマークアップ言語であり、合成音声、デジタル音声、音声入力とＤＴＭＦ（Ｄｕａｌ　Ｔｏｎｅ　Ｍｕｌｔｉｆｒｅｑｕｅｎｃｙ）キー入力の認識、音声入力の記録、電話、および混合イニシアチブ会話を形づける、音声ダイアログを作成するように設計されている。
【０００４】
この拡張機能を音声ブラウザが提供するので、通信製品および通信サービスのプロバイダは、電話サービスおよび／またはその特徴を提供するために、音声ブラウザ技術を使用し始めている。たとえば、音声ブラウザを、対話式音声応答システムのコンテンツ内で使用できる。しかし、現在では、音声ブラウザは、いくつかの性能に関する欠陥を被っている。具体的には、音声ブラウザは、通常、一つのコンピューティングマシン上の一つのアプリケーション動作として実施される。こうした従来の音声ブラウザの実装によっては、多量の通話量の処理は不可能であり、または、多量の通話を処理する環境において必要な、音声のセッション数をサポートすることが不可能である。さらに、一度実装されると、従来の音声ブラウザは、要求に従って拡張できない。その結果、要求が増大すると、従来の音声ブラウザの性能は低下するようになる。
【０００５】
【発明が解決しようとする課題】
本明細書で開示の発明は、音声ブラウザ拡張性と、性能を高めるための解決策を提供する。具体的には、一つのコンピューティングマシン上で実行されなければならない一つのアプリケーションとして音声ブラウザを実施するのではなく、本発明は、音声ブラウザをいくつかの構成要素に区分けする。各構成要素を、別々のコンピューティングマシン上で実行するために、分散できる。たとえば、この音声ブラウザを、解析、セッション管理およびサービス実現を扱うために、別々の構成要素に区分けできる。この音声ブラウザのさまざまな構成要素は、必要に応じて複製でき、増大したネットワーク負荷をサポートする。その結果、本発明は、増量した通話および音声セッションを、サポートできる。さらに、音声処理を増大させる必要があるときは、本発明は、増大したトラフィック（通話量）を処理するためにそれに応じて拡張させることができる。
【０００６】
【課題を解決するための手段】
本発明の一つの側面によって、分散音声ブラウザの中に通話を処理する方法を含むことができる。本方法は、解析された音声マークアップ言語データを解釈するように構成された複数のサービスプロセッサを配置し、電話サービスを表す音声マークアップ言語データを検索し解析するように構成された複数の音声マークアップ言語パーサーを配置することを、含むことができる。この複数のサービスプロセッサと複数のマークアップ言語パーサーを、一つ以上のセッションマネジャーの中に登録できる。したがって、受信された電話サービス要求の構成要素を、音声マークアップ言語パーサーに振り分け、音声マークアップ言語パーサーの結果として得られる解析された音声マークアップ言語データを、セッションマネジャーを介してサービスプロセッサに振り分けることができる。
【０００７】
たとえば、電話サービス要求を、セッションマネジャー内で受信できる。この電話サービス要求は、サービスプロセッサの特定の一つと関連付けられ、この電話サービスを表す音声マークアップ言語データの場所を指定できる。このセッションマネジャーは、使用可能な音声マークアップ言語パーサーを決定でき、この使用可能な音声マークアップ言語パーサーに対して、指定された場所を提供できる。
【０００８】
この音声マークアップ言語パーサーは、この指定された場所から、この音声マークアップ言語データを検索し、音声マークアップ言語データを解析することができ、そのことにより、音声マークアップ言語データを、サービスプロセッサによって使用できもしくは解釈することができる、中間フォーマットへ変換する。この解析された音声マークアップ言語データを、解析された音声マークアップ言語データを関連付けられたサービスプロセッサに提供できる、セッションマネジャーに提供できる。このサービスプロセッサは、この解析された音声マークアップ言語データを実行し、電話サービスを実施できる。サービスプロセッサ、音声マークアップ言語パーサーおよびこのセッションマネジャーの追加したものを、必要に応じて複製でき、増大した通話量に適応できる。
【０００９】
本発明による方法は、一つ以上の仮想マシン内に、複数のサービスプロセッサを示し、および、複数のサービスプロセッサ用の仮想マシンとは別の、一つ以上の仮想マシン内に、複数の音声マークアップ言語パーサーを示すことを含むことができる。さらに、この方法は、少なくとも第１のコンピューティングマシン内に複数のサービスプロセッサを配置し、少なくとも第２のコンピューティングマシン内に複数の音声マークアップ言語パーサーを配置し、そして、少なくとも第３のコンピューティングマシン内にセッションマネジャーを配置することを含むことができる。第１、第２、および第３のコンピューティングマシンを、ネットワークを介して、通信可能なようにリンクすることができる。
【００１０】
本発明の他の側面は、分散音声ブラウザシステムを備えることができる。このシステムは、電話サービスの音声マークアップ言語表記を解析するように構成された解析の構成要素と、電話サービスの解析された音声マークアップ言語表記を解釈するための実行環境を提供するように構成された電話サービス実現の構成要素を、有することができる。セッション管理の構成要素も、また、有することができる。このセッション管理の構成要素は、解析の構成要素と電話サービス実現の構成要素の動作を、調整するように構成することができる。
【００１１】
この解析の構成要素は、一つ以上の音声マークアップ言語パーサーを備えることができ、この電話サービス実現の構成要素は、一つ以上のサービスプロセッサを備えることができる。このセッション管理の構成要素は、一つ以上のセッションマネジャーを備えることができる。この音声マークアップ言語パーサーと、サービスプロセッサは、Ｊａｖａ（Ｒ）仮想マシンなどの仮想マシン内で実行するように、構成できる。
【００１２】
この音声マークアップ言語プロセッサのための仮想マシンは、サービスプロセッサ用の仮想マシンから独立させることができることに留意されたい。さらに、各音声マークアップ言語パーサーと、各サービスプロセッサは、独立した仮想マシン内で実行できる。この解析の構成要素、セッション管理の構成要素および電話サービスの構成要素は、別々の分散コンピューティングマシン内で実行できる。
【００１３】
図面には、現在好ましい実施形態が示されるが、本発明はこの構成および例示に限定されるものではないことは理解されたい。
【００１４】
【発明の実施の形態】
本明細書で開示の発明は、音声ブラウザ拡張性と、性能を高めるための解決策を提供する。具体的には、本発明は、音声ブラウザを、いくつかの構成要素に区分けすることができ、そのことによって、分散音声ブラウザを形成する。この分散音声ブラウザのさまざまな構成要素は、別々のコンピューティングマシン上で実行できる。音声ブラウザのこのさまざまな構成要素は、必要に応じて複製でき、増大した通話量を処理するために拡張できることに留意されたい。
【００１５】
図１は本明細書で開示の発明の構成に従った、電話サービスおよび／またはその特徴（以下、「サービス」と呼ぶ）を実施するための例示的なシステム１００を示す。図１に示すように、このシステム１００は、メディアゲートウェイ１０５、ビーン／スクリプトアプリケーション（サービスプロセッサ）１１５、セッションマネジャー１２０、ＶＸＭＬ（Ｖｏｉｃｅ　Ｅｘｔｅｎｓｉｂｌｅ　Ｍａｒｋｕｐ　Ｌａｎｇｕａｇｅ）パーサー１２５、ＨＴＴＰ（ｈｙｐｅｒ−ｔｅｘｔ　ｔｒａｎｓｆｅｒ　ｐｒｏｔｏｃｏｌ）サーバ１３０、およびデータ記憶１３５を備えることができる。このデータ記憶１３５は、文書、音声、テキストなどのようなものを指定する、一つ以上のＶＸＭＬスクリプトを有することができる。たとえば、スクリプト１０９の、このＶＸＭＬスクリプトは、電話サービスのスクリプトを実施する。このデータ記憶１３５内のＶＸＭＬスクリプトに、このＨＴＴＰサーバ１３０を介して、アクセスできる。このデータ記憶１３５は一つのデータ記憶として示されるが、これは、一つ以上の分散データ記憶として実装できることは明らかである。
【００１６】
メディアゲートウェイ１０５は、Ｔ１回線および／またはＩＳＤＮ回線などの、一つ以上のトランク通信回線に、通信できるようにリンクできる。各トランク通信引き込み回線１６５は、メディアゲートウェイ１０５とトランク通信回線１６５との間のインターフェースとして働くチャネルプロセッサ１６０と、インターフェースできる。一つのチャネルプロセッサ１６０を、対応する電話交換器の各音声回路用に備えることができる。このメディアゲートウェイ１０５は、アプリケーション表１０７、および、ビーン／スクリプトインターフェース１１０を備えることもできる。このアプリケーション表１０７は、以下では、ディレクトリ番号と呼ぶＤＮＩＳ（ｄｉａｌｅｄ　ｎｕｍｂｅｒ　ｉｎｂｏｕｎｄ　ｓｅｒｖｉｃｅｓ）間の関連を指定でき、この電話サービスのＶＸＭＬスクリプトの実施は、データ記憶１３５内に記憶される。より具体的には、このアプリケーション表１０７は、ディレクトリ番号、および、既に登録されているディレクトリ番号用の電話サービスの、リスティングを保持する。このアプリケーション表１０７は、さらに、電話サービスのさまざまなＶＸＭＬスクリプトの実施を検索できる、ネットワークの場所を指定する。
【００１７】
したがって、通話の受信時には、このメディアゲートウェイ１０５は、この通話の受信によって指定されたディレクトリ番号を判断できる。このディレクトリ番号を、アプリケーション表１０７を使用して、一つ以上のＶＸＭＬスクリプトと一致させることができる。したがって、既に登録されているディレクトリ番号のための電話サービスのＶＸＭＬスクリプトの実施の場所またはアドレスを、識別することができる。電話サービスのこのＶＸＭＬスクリプトの場所を、セッションマネジャー１２０に提供することができる。
【００１８】
このビーン／スクリプトインターフェース１１０は、一つのＬＡＮ（ローカルエリアネットワーク）を他のＬＡＮに接続する、ブリッジサービスもしくはブリッジ機能を備えることができるが、このインターフェース１１０をメディアゲートウェイ１０５内に含めることができる。このビーン／スクリプトインターフェース１１０は、サービスプロセッサ１１５と、チャネルプロセッサ１６０や音声インターフェース１４０などのメディアゲートウェイ１０５の他の構成要素との間の通信を、促進することができる。このビーン／スクリプトインターフェース１１０は、ここで記述されるサービスプロセッサ１１５によって解釈されるような、ＶＸＭＬスクリプトを介して提供できる機能範囲をサポートするように、構成できる。具体的には、ＶＸＭＬスクリプトが拡張通話制御およびＴＣＡＰ（ｔｒａｎｓａｃｔｉｏｎ　ｃａｐａｂｉｌｉｔｉｅｓ　ａｐｐｌｉｃａｔｉｏｎ　ｐａｒｔ）機能をサポートできるときは、このビーン／スクリプトインターフェース１１０も、これらの通話制御およびＴＣＡＰ機能をサポートするように構成できる。この音声インターフェース１４０は、音声認識と、テキスト音声変換（ＴＴＳ）機能を提供できる。したがって、トランク通信回線１６５を介して受信された音声を、テキストに変換でき、テキストデータを、トランク通信回線１６５を介して一人以上の加入者に提供される、音声ストリームに変換できる。
【００１９】
サービスプロセッサ１１５、セッションマネジャー１２０、およびＶＸＭＬパーサー１２５を合わせて、分散音声ブラウザの構成要素を提供する。このＶＸＭＬパーサー１２５を、実行時に示し、ＨＴＴＰサーバ１３０を介してデータ記憶１３５からＶＸＭＬスクリプトを検索できる。このＶＸＭＬパーサー１２５は、検索されたＶＸＭＬスクリプトを、このサーバプロセッサ１１５にマップでき、かつサーバ１１５によって解釈できる、中間フォーマットに変換できる。このＶＸＭＬスクリプトは、通話許可（Ａｌｌｏｗ　Ｃａｌｌ）、通話ブロック（Ｂｌｏｃｋ　Ｃａｌｌ）、通話転送（Ｆｏｒｗａｒｄ　Ｃａｌｌ）、通話選択的転送（Ｓｅｌｅｃｔｉｖｅ　Ｆｏｒｗａｒｄ　Ｃａｌｌ）、および通話ブリッジ（Ｂｒｉｄｇｅ　Ｃａｌｌ）などのＴＣＡＰ処理を定義する新規タグを含めるように、拡張できることに留意されたい。したがって、ＶＸＭＬパーサー１２５も、ＶＸＭＬスクリプトのいずれの追加拡張タグをも識別するように構成できる。
【００２０】
このサービスプロセッサ１１５は、分散コンピューティング環境内の、同じコンピュータシステム内、または、異なるコンピュータシステム内の、他の構成要素と結合できる、再使用可能なソフトウェア構成要素であることができる。一つのサービスプロセッサ１１５を、各チャネルのプロセッサ１６０の実行時に示すことができ、したがって、サービスプロセッサ１１５を、特定のチャネルプロセッサに関連付けることができる。このサービスプロセッサ１１５は、解析されたＶＸＭＬスクリプトが、このＶＸＭＬスクリプトによって指定された電話サービスを実施するための実行環境を提供する、インタープリタとして効果的に働く。したがって、このサービスプロセッサ１１５は、メディアゲートウェイ１０５の内部機能を、この電話サービスの解析されたＶＸＭＬスクリプト表記と結びつける。従って、このサービスプロセッサ１１５は、解析されたＶＸＭＬスクリプトによって指定されたような電話サービスを実行するために、ＴＴＳおよび音声認識機能にアクセスできる。たとえば、テキストおよび認識された音声を、ＶＸＭＬスクリプト、フォーム、および／または文書のフィールドへ、移植するために使用できる。
【００２１】
サービスプロセッサ１１５およびＶＸＭＬパーサー１２５は、それぞれ、Ｊａｖａ（Ｒ）仮想マシン１４５および１５５内で実行できることに留意されたい。図１は、一つのＪａｖａ（Ｒ）仮想マシン１４５および１５５内で実行する複数のサービスプロセッサ１１５およびＶＸＭＬパーサー１２５を示すが、各サービスプロセッサ１１５および各ＶＸＭＬパーサー１２５は、個々のＪａｖａ（Ｒ）仮想マシン内で実行でき、そのことによって、一つのプログラム内で発生するエラーが他のプログラムに不利な影響を与えるというリスクを最小化することができる。
【００２２】
各サービスプロセッサ１１５および各ＶＸＭＬパーサー１２５は、セッションマネジャー１２０の中に登録できる。したがって、このセッションマネジャー１２０は、サービスプロセッサ１１５およびＶＸＭＬパーサー１２５のうちのどれを通話の処理のために使用できるかを追跡できる。このセッションマネジャー１２０は、さらに、サービスプロセッサ１１５／ＶＸＭＬパーサー１２５の対の動作を調整できる。このセッションマネジャー１２０は、サービスプロセッサ１１５とＶＸＭＬパーサー１２５との間の情報を、渡すことができる。具体的に、メディアゲートウェイ１０５からセッションマネジャー１２０へ与えられる要求は、着信通話ディレクトリ番号、ＵＲＬ（ｕｎｉｖｅｒｓａｌ　ｒｅｓｏｕｒｃｅ　ｌｏｃａｔｏｒｓ）を有し電話サービスの一つ以上のＶＸＭＬスクリプト表記を指定する一つ以上のＵＲＩ（ｕｎｉｖｅｒｓａｌ　ｒｅｓｏｕｒｃｅ　ｉｄｅｎｔｉｆｉｅｒｓ）、および、この通話を受信する特定のチャネルプロセッサを表す識別子（ＩＤ）を含むことができる。このセッションマネジャー１２０は、ローカルのデータ記憶に情報を記憶できる。したがって、このセッションマネジャー１２０は、この受信ＵＲＩを提供することができる、空きＶＸＭＬパーサー１２５を決定できる。さらに、ＶＸＭＬパーサー１２５で得られた結果を、記憶されたＵＲＩ、着信通話ディレクトリ番号、およびチャネルプロセッサＩＤに従って、適切なサービスプロセッサ１１５へ戻すことができる。
【００２３】
サービスプロセッサ１１５と、ＶＸＭＬパーサー１２５を伴う場合には、複数のセッションマネジャー１２０は、一つのＪａｖａ（Ｒ）仮想マシン内で実行でき、あるいは、各セッションマネジャー１２０は、個々のＪａｖａ（Ｒ）仮想マシン内で実行できる。どの場合にも、前述したように、このサービスプロセッサ１１５、セッションマネジャー１２０、およびＶＸＭＬパーサー１２５は、コンピューティングネットワークを介して分散された、別々のコンピューティングマシン内に存在することができる。さらに、増大した処理の負荷をサポートするために、必要に応じて、これらのさまざまな構成要素を複製できる。その結果、サービスプロセッサ１１５、セッションマネジャー１２０、およびＶＸＭＬパーサー１２５を合わせて、多量のシステム要求をサポートするために調整できる、分散音声ブラウザアーキテクチャを提供する。
【００２４】
キャッシュメモリ１７０を、このセッションマネジャー１２０とこのＶＸＭＬパーサー１２５との間に配置できる。このキャッシュメモリ１７０は、多数のフェッチングを低減し、頻繁に使用されるＶＸＭＬスクリプトを解析することによって、システム性能を上げることができる。本明細書で開示の発明構成によって、さらに、一つ以上のファイアウォール１７５、１８０、１８５を備えることができる。ファイアウォールは、本明細書で開示するようなシステム１００の動作には必要ではないけれども、ファイアウォールの追加によって追加のネットワークセキュリティが提供される。具体的には、ファイアウォール１７５と１８０によって、多くの通信会社によって要求される、２重のファイアウォール保護が提供される。ファイアウォール１８５によって、ＶＸＭＬパーサー１２５を、企業または他のプライベートネットワークから分離する機能が提供できる。
【００２５】
図２は、図１のシステムによって行われるような、電話サービスの特徴を実施する方法２００を示すフローチャートである。この方法２００は、図１のシステムが、メディアゲートウェイの各チャネルプロセッサ用の少なくとも一つのサービスプロセッサに示された場合に、開始できる。さらに、ＶＸＭＬパーサーなどの一つ以上のパーサーを、このサービスプロセッサおよびパーサーが、セッションマネジャーの中に登録されるように、示すことができる。このサービスプロセッサおよびこのパーサーとの間の、一対一の対応は、必要でないことに留意されたい。どのイベントにおいても、電話交換機が通話を受信できる。電話交換機は、メディアゲートウェイの空きチャネルプロセッサを選択でき、および、通話を受信するために、たとえばインバンド・シグナリングまたはＩＳＤＮのＤチャネルを使用して、メディアゲートウェイを照会できる。このメディアゲートウェイが通話を受信したことに応答して、この電話交換機は、この通話を、選択したチャネルプロセッサに適用できる。したがって、ステップ２０５で、この通話を、メディアゲートウェイによって識別できる。ステップ２１０で、受信した通話の着信通話ディレクトリ番号を決定できる。
【００２６】
ステップ２１５で、この決定されたディレクトリ番号と関連する、一つ以上の通話処理スクリプトを識別できる。たとえば、着信通話ディレクトリ番号、および、関連するＶＸＭＬスクリプトのリスティングを調べ、既に登録されているこのディレクトリ番号のための、特定の通話処理スクリプト、または、電話サービスのＶＸＭＬスクリプト表記を決定できる。ステップ２２０で、このメディアゲートウェイは、ＴＣＰ／ＩＰ接続を介して、セッションマネジャーへ、少なくとも以下の情報を送付できる。その情報は、着信通話ディレクトリ番号、既に登録されているこのディレクトリ番号のための電話サービスの通話処理スクリプト表記を指定する一つ以上のＵＲＩ、および、この通話を受信する特定のチャネルプロセッサを表す識別子（ＩＤ）である。
【００２７】
使用可能なパーサーにこのＵＲＩを送信する前に、ステップ２２５に示すように、このセッションマネジャーは、ＴＣＰ／ＩＰ接続を介して、キャッシュメモリに照会し、ＵＲＩによって指定された通話処理スクリプトがキャッシュメモリ内に含まれているか否かを判断できる。含まれている場合は、この通話処理スクリプトは、パーサーによって既に解析され、サービスプロセッサにマップする中間フォーマットの形で存在する。したがって、この解析された通話処理スクリプトは、ステップ２３０で、キャッシュメモリから検索でき、この方法は、ステップ２５０に進むことができる。しかし、このキャッシュメモリが、ＵＲＩによって指定された通話処理スクリプトを含んでいない場合は、この方法はステップ２３５に進むことができる。
【００２８】
ステップ２３５で、このセッションマネジャーは、使用可能なパーサーを識別し、このパーサーへ、ＴＣＰ／ＩＰ接続を介して、ＵＲＩを提供できる。このセッションマネジャーは、このチャネルプロセッサのＩＤのローカルコピーを、記憶できることに留意されたい。ステップ２４０で、このパーサーは、ＨＴＴＰサーバへＨＴＴＰ要求を発行し、このＵＲＩによって指定された通話処理スクリプトを検索できる。この通話処理スクリプトは、たとえば、ＶＸＭＬ文書、ＶＸＭＬテキスト、ＶＸＭＬスクリプト、および、音声の選択された部分などの、音声マークアップ言語スクリプトを含むことができる。ステップ２４５で、このパーサーは、要求された通話処理スクリプトを、ＨＴＴＰ接続を介して、受信することができる。次いで、このパーサーは、この通話処理スクリプトを解析し、この通話処理スクリプトを、サービスプロセッサによって解釈できる中間フォーマットに変換できる。
【００２９】
ステップ２５０で、解析された通話処理スクリプトを、このパーサーから、セッションマネジャーへ、ＴＣＰ／ＩＰ接続を介して、送信することができる。このチャネルプロセッサのＩＤを保持しているセッションマネジャーは、ステップ２５５で、この通話を受信したチャネルプロセッサと関連付けられたサービスプロセッサ（スクリプト／ビーン）を識別できる。ステップ２６０で、このセッションマネジャーは、この解析された通話処理スクリプトを、識別されたサービスプロセッサへ転送できる。したがって、このサービスプロセッサは、解析された通話処理スクリプトを実行することによって、電話サービスを実施できる。ステップ２６５で、このサービスプロセッサは、メディアゲートウェイの音声プロセッサのような要求されたいずれの機能にも、この電話サービスを実施するためのビーン／スクリプトインターフェースを介して、アクセスできる。
【００３０】
本明細書で開示の発明は、音声ブラウザをいくつかの構成要素に区分けすることにより、音声ブラウザの拡張性と、性能を高める解決策を提供する。たとえば、この音声ブラウザを、解析、セッション管理およびサービス実現の処理のそれぞれを、別々のコンピューティングマシン上に配置し、および実行することができるように、別々の構成要素に区分けできる。さらに、この音声ブラウザアーキテクチャのさまざまな構成要素は、必要に応じて複製でき、本発明によって、増大した通話量をサポートすることができ、また、拡張可能な音声ブラウザの解決策を提供する。
【００３１】
本発明は、ハードウェア、ソフトウェア、または、ハードウェアとソフトウェアの組み合わせの形で実現できる。本発明は、一つのコンピュータシステム内の集約形式で実現でき、あるいは、異なる構成要素がいくつかの相互接続されたコンピュータシステムにわたって展開されている、分散形式で実現できる。いずれの種類のコンピュータシステムも、または、本明細書で記述の方法を実行するために適した他の装置が、本発明に適している。ハードウェアとソフトウェアの典型的な組み合わせは、ロードや、実行時に、本明細書で記述の方法を成し遂げるようにコンピュータシステムを制御するコンピュータプログラムをもつ、汎用目的のコンピュータシステムであることができる。
【００３２】
本発明は、また、本明細書で記述の方法の実施を可能にする全ての特徴を備えており、コンピュータシステムにロードされると、前述した方法を成し遂げることが可能である、コンピュータプログラム製品に組み込むこともできる。本明細書のコンピュータプログラムとは、いずれの言語における、命令の組のコードもしくは表記であって、情報処理能力を有するシステムが、特定の機能を、直接、もしくは、ａ）他の言語、コードもしくは表記に変換、ｂ）異なるマテリアルフォームの形の再生成、の一方もしくは両方の後に、実行させる、すべての表現を意味する。
【００３３】
本発明は、本発明の主旨もしくは本質的特性から外れることなく他の形式で具体化できる。したがって、本発明の範囲は、前述した詳細な説明ではなく、特許請求の範囲に示している。
【図面の簡単な説明】
【図１】本明細書で開示の構成に従った分散音声ブラウザを示す概略図である。
【図２】図１の分散音声ブラウザの動作方法を示すフローチャートである。
【図１】
2004032742.tif 000003
【図２】
2004032742.tif 000004