(57)【要約】【課題】コスト効率よくかつタイムリーに電話交換機を開発するための解決策を提供すること。【解決手段】電話サービスを実施するこの方法は、電話交換機からコールを受信すること、および受信したコールを電話サービスの音声マークアップ言語文書実装にマッチさせることを含むことができる。その音声マークアップ言語文書は、データ記憶装置から取り出すことができる。受信したコールが、取り出された音声マークアップ言語文書に従って処理され、それによって電話サ−ビスを実施することができる。
2005535166.tif 000002
【特許請求の範囲】
【請求項１】
電話交換機からコールを受信するステップと、
前記受信したコールを電話サービスの音声マークアップ言語文書実装にマッチさせるステップと、
前記音声マークアップ言語文書をデータ記憶装置から取り出すステップと、
前記取り出された音声マークアップ言語文書に従って前記コールを処理して前記電話サービスを実施するステップと
を含む電話サービスを実施する方法。
【請求項２】
前記受信したコールからコールされたディレクトリ番号を識別するステップと、
前記ディレクトリ番号を前記音声マークアップ言語文書のネットワーク・ロケーションと突き合わせるステップであって、前記ディレクトリ番号が、前記電話サービスの前記音声マークアップ言語文書実装に登録されているステップとをさらに含む、請求項１に記載の方法。
【請求項３】
前記コールされたディレクトリ番号および前記音声マークアップ言語文書の前記ネットワーク・ロケーションをセッション・マネジャに送信するステップをさらに含む、請求項２に記載の方法。
【請求項４】
さらに前記取り出すステップが、
前記ネットワーク・ロケーションを音声マークアップ言語パーサに提供するステップと、
前記パーサが、前記ネットワーク・ロケーションから前記音声マークアップ言語文書を取り出すステップと、
前記音声マークアップ言語文書を構文解析して中間的なフォーマットにするステップと、
前記構文解析された音声マークアップ言語文書を前記セッション・マネジャに提供するステップとを含む、請求項３に記載の方法。
【請求項５】
さらに前記処理ステップが、
前記構文解析された音声マークアップ言語文書を、前記音声マークアップ言語文書を実行するためのサービス・プロセッサに提供するステップを含む、請求項４に記載の方法。
【請求項６】
複数のディレクトリ番号に関連付けられた電話サービスの音声マークアップ言語文書実装の複数のアドレスを有し、コールを受信するように構成されたコール・プロセッサ・ユニットと、
前記コールを受信したことに応答して、前記音声マークアップ言語文書を前記アドレスから取り出し、前記音声マークアップ言語文書を構文解析するように構成された音声マークアップ言語パーサと、
前記構文解析された音声マークアップ言語文書を実行して前記電話サービスを実施するように構成されたサービス・プロセッサと、
前記音声マークアップ言語パーサおよび前記サービス・プロセッサの動作を調整するように構成された少なくとも１つのセッション・マネジャと
を含む電話サービスを実施するためのシステム。
【請求項７】
さらに前記コール・プロセッサ・ユニットが、
前記サービス・プロセッサへのインターフェースを含み、前記インターフェースがブリッジ・サービス機能を実施するように構成される、請求項６に記載のシステム。
【請求項８】
前記インターフェースが、使用可能にされたＴＣＡＰである、請求項７に記載のシステム。
【請求項９】
前記音声マークアップ言語パーサ、前記サービス・プロセッサ、および前記少なくとも１つのセッション・マネジャが、それぞれ別々の計算機中に配置される、請求項６に記載のシステム。
【請求項１０】
前記音声マークアップ言語パーサおよび前記サービス・プロセッサが、それぞれ独立した仮想マシン上でそれぞれ走る、請求項６に記載のシステム。
【請求項１１】
前記音声マークアップ言語文書を含むデータ記憶装置をさらに含む、請求項１０に記載のシステム。
【請求項１２】
前記音声マークアップ言語文書の取出しを容易にするために、前記データ記憶装置および前記音声マークアップ言語パーサに通信可能にリンクするサーバをさらに含む、請求項１１に記載のシステム。
【請求項１３】
前記セッション・マネジャと前記音声マークアップ言語パーサの間に配置され、取り出された音声マークアップ言語文書を頻繁に記憶するように構成されたキャッシュ・メモリをさらに含む、請求項１２に記載のシステム。
【請求項１４】
電話交換機からコールを受信するステップと、
前記受信したコールを電話サービスの音声マークアップ言語文書実装にマッチさせるステップと、
データ記憶装置から前記音声マークアップ言語文書を取り出すステップと、
前記取り出された音声マークアップ言語文書に従って前記コールを処理して前記電話サービスを実施するステップと
をマシンに実施させるためのマシン実行可能な複数のコード・セクションを有するコンピュータ・プログラムを記憶しているマシン可読ストレージ。
【請求項１５】
前記受信したコールからコールされたディレクトリ番号を識別するステップと、
前記ディレクトリ番号を前記音声マークアップ言語文書のネットワーク・ロケーションと突き合わせるステップであって、前記ディレクトリ番号が、前記電話サービスの前記音声マークアップ言語文書実装に登録されているステップとをさらに含む、請求項１４に記載のマシン可読ストレージ。
【請求項１６】
前記コールされたディレクトリ番号および前記音声マークアップ言語文書の前記ネットワーク・ロケーションをセッション・マネジャに送信するステップをさらに含む、請求項１５に記載のマシン可読ストレージ。
【請求項１７】
さらに前記取り出すステップが、
前記ネットワーク・ロケーションを音声マークアップ言語パーサに提供するステップと、
前記パーサが前記音声マークアップ言語文書を前記ネットワーク・ロケーションから取り出すステップと、
前記音声マークアップ言語文書を構文解析して中間的なフォーマットにするステップと、
前記構文解析された音声マークアップ言語文書を前記セッション・マネジャに提供するステップとを含む、請求項１６に記載のマシン可読ストレージ。
【請求項１８】
さらに前記処理ステップが、
前記構文解析された音声マークアップ言語文書を、前記音声マークアップ言語文書を実行するためのサービス・プロセッサに提供するステップを含む、請求項１７に記載のマシン可読ストレージ。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、電話の分野に関し、より詳細には、電話のサービスおよび機能を提供するためのコール処理アーキテクチャに関する。
【背景技術】
【０００２】
遠隔通信会社は、新しい電話サービスまたは電話機能あるいはその両方（総称的に「サービス」という）を絶えず作成し加入者に提供している。新しい電話サービスの開発は、コストと時間のかかる作業である。従来、電話サービスは、電話交換機レベルで行われているため、通常、新サービスの開発には、そのサービスが実施される特定の電話交換機のプログラミングにかなりの経験を有する専門要員が必要である。さらに、電話サービスを低レベルで実施する場合は、開発者が電話交換機の知識を有するだけではなく、その基礎となる様々な遠隔通信プロトコルおよびコール処理機能に関するかなりの知識および理解も有する必要がある。また開発後も、電話サービスが適正に機能し他の電話サービスを妨害しないことを保証し、問題を識別および隔離するために、高度に訓練された要員が必要である。
【０００３】
電話サービスの開発は、メーカ独自の内部プロトコルおよびオペレーション・システムが電話交換機でしばしば使用されることによりさらに複雑になる。すなわち、開発者がある特定のタイプの電話交換機に関して精通していても、その開発者は、任意の効率で同じ機能を他のタイプの電話交換機上に実装することができない。電話交換機がメーカごとに異なるという性質上、所与の電話交換機を扱える開発者の数が制限され、それによって電話サービスを開発するコストが増加するようになる。さらに、電話サービスの開発コストに加えて、電話サービスをあるタイプの電話交換機から他のタイプに移植することは容易ではない。その結果、類似した同様の機能も電話交換機ごとに再設計する必要がある。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
本明細書に開示する本発明は、コスト効率よくかつタイムリーに電話交換機を開発するための解決策を提供する。
【課題を解決するための手段】
【０００５】
本発明によれば、メーカ独自の交換機レベルで電話サービスを開発するのではなく、標準化されたスクリプト言語（scripting language）を用いて電話サービスを開発することができる。電話サービスの開発のために、ＶＸＭＬ（VoiceExtensible Markup Language）などの言語を用いると、電話プロトコル、コール処理、または電話交換機特有のプログラミング技法あるいはそれらの組合せに関する経験を有する人々だけではなく、扱うことが可能な電話サービス開発者の数もさらに広がる。その結果、スクリプト言語およびマークアップ言語開発技法に熟知しているはずのウェブ設計者および他の者も電話サービスを開発することができるようになる。
【０００６】
本発明の一態様は、電話サ−ビス機能を実施する方法を含むことができる。この方法は、電話交換機からコールを受信すること、および受信したコールを電話サービス機能の音声マークアップ言語文書実装にマッチさせることを含むことができる。例えば、コールされたディレクトリ番号は、受信したコールから識別することができる。そのディレクトリ番号を音声マークアップ言語文書のネットワーク・ロケーションと突き合わせることができる。特に、ディレクトリ番号は、電話サービスの音声マークアップ言語文書実装に登録することができる。コールされたディレクトリ番号および音声マークアップ言語文書のネットワーク・ロケーションをセッション・マネジャに提供することができる。
【０００７】
音声マークアップ言語文書は、データ記憶装置から取り出すことができる。例えば、指定されたネットワーク・ロケーションから音声マークアップ言語文書を取り出すことが可能な音声マークアップ言語のパーサ（parser）に、ネットワーク・ロケーションを提供することができる。音声マークアップ言語パーサは、この音声マークアップ言語文書を構文解析して中間的なフォーマットにし、それをセッション・マネジャに提供することができる。受信したコールを、取り出された音声マークアップ言語文書に従って処理して電話サービスを実施することができる。具体的には、構文解析された音声マークアップ言語文書を、この音声マークアップ言語文書を実行するためのサービス・プロセッサに提供することができる。
【０００８】
本発明の他の態様は、１つまたは複数のディレクトリ番号を電話サービスの少なくとも１つの音声マークアップ言語文書実装に登録することを含めた、電話サービスを実施する方法を含むことができる。ディレクトリ番号を音声マークアップ言語文書のネットワーク・ロケーションと関連付けることができる。この方法はさらに、ディレクトリ番号のうちの１つからコールを受信すること、およびコールしているディレクトリ番号が登録されている電話サービスの音声マークアップ言語文書実装のネットワーク・ロケーションを識別することを含むことができる。コールしているディレクトリ番号が登録されている電話サービスの音声マークアップ言語文書実装を、識別されたネットワーク・ロケーションから取り出し、次いで、それを実行して受信したコールを処理することができる。
【０００９】
本発明の他の態様は、電話サービス機能を実施するためのシステムを含むことができる。このシステムは、コールを受信するように構成されたコール・プロセッサ・ユニットを含むことができる。このコール・プロセッサ・ユニットは、１つまたは複数のディレクトリ番号に関連付けられた電話サービスの音声マークアップ言語文書実装の１つまたは複数のアドレスを含むことができる。システムはまた、受信したコールに応答して、指定されたアドレスから音声マークアップ言語文書を取り出し音声マークアップ言語文書を構文解析するように構成された音声マークアップ言語パーサを含むこともできる。
【００１０】
システムはさらに、構文解析された音声マークアップ言語文書を実行して電話サービス機能を実施するように構成されたサービス・プロセッサと、音声マークアップ言語パーサおよびサービス・プロセッサの動作を調整するように構成された少なくとも１つのセッション・マネジャとを含むことができる。特に、コール・プロセッサ・ユニットはさらに、サービス・プロセッサへのインターフェースを含むことができる。このインターフェースは、ブリッジ・サービス機能を実施するように構成され、使用可能にされたＴＣＡＰ（transaction capabilities application part）とすることができる。音声マークアップ言語パーサおよびサービス・プロセッサをそれぞれ、Ｊａｖａ（Ｒ）仮想マシンなどのそれぞれ独立した仮想マシン上で走るように構成することができる。さらに、音声マークアップ言語パーサ、サービス・プロセッサ、およびセッション・マネジャはそれぞれ、例えば、ネットワークを介して分散された別個の計算機（computingmachine）中に位置することができる。音声マークアップ言語文書を含むデータ記憶装置、ならびに、データ記憶装置および音声マークアップ言語パーサに通信可能にリンクされたサーバもこのシステム中に含めることもできる。サーバは、音声マークアップ言語文書の取出しを容易にすることができる。さらに、キャッシュ・メモリを含めることもできる。キャッシュ・メモリは、セッション・マネジャと音声マークアップ言語パーサの間に配置することができる。キャッシュ・メモリは、システム性能の改善のために、取り出された音声マークアップ言語文書を頻繁に記憶するように構成することができる。
【００１１】
現在好ましい実施形態が図面で示されているが、図示の特定の構成および手段に本発明を限定するものではないことを理解されたい。
【発明を実施するための最良の形態】
【００１２】
本明細書に開示の本発明は、電話サービスの標準化されたスクリプト言語実装の使用を容易にするためのコール処理アーキテクチャを提供する。具体的には、本発明は、ＶＸＭＬ（Voice Extensible Markup Language）などのスクリプト言語を電話サービスの開発に使用できる環境を提供し、それによって、開発者が電話プロトコルまたは交換機あるいはその両方を理解する必要性を軽減できるようにする。本発明によると、実行されたとき特定の電話サービスを実施する音声マークアップ言語スクリプトと、受信されたディレクトリ番号を相互に関係付けることができる。電話サービスがＶＸＭＬなどのスクリプト言語で符号化されるので、電話プロトコルまたは交換機機能あるいはその両方に関する知識をほとんどまたはまったく有していない開発者がその電話サービスを書くことができる。さらに、標準のウェブ開発ツールを使用してそのＶＸＭＬアプリケーション・データを開発することもできる。
【００１３】
図１は、ここに開示された本発明の構成に従って電話サービスまたは機能あるいはその両方（以下「サービス」という）を実施するための例示的なシステム１００を示す概略図である。図１で示すように、システム１００は、メディア・ゲートウェイ１０５、ｂｅａｎ／スクリプト（bean/script）・アプリケーション（サービス・プロセッサ）１１５、セッション・マネジャ１２０、ＶＸＭＬパーサ１２５、ＨＴＴＰ（ハイパーテキスト転送プロトコル）サーバ１３０、およびデータ記憶装置１３５を含むことができる。データ記憶装置１３５は、文書、オーディオ、テキストなどを指定する１つまたは複数のＶＸＭＬスクリプトを含むことができる。ＶＸＭＬスクリプト、例えばスクリプト１０９は電話サービスのスクリプト実装である。データ記憶装置１３５内のＶＸＭＬスクリプトには、ＨＴＴＰサーバ１３０を介してアクセスすることができる。データ記憶装置１３５は、単一のデータ記憶装置として図示されているが、１つまたは複数の分散型データ記憶装置としても実装できることを理解されたい。
【００１４】
メディア・ゲートウェイ１０５は、Ｔ１回線またはＩＳＤＮ回線あるいはその両方などの１つまたは複数の遠隔通信幹線１６５に通信可能にリンクすることができる。各着信遠隔通信幹線１６５は、メディア・ゲートウェイ１０５と遠隔通信幹線１６５の間のインターフェースとして働くチャネル・プロセッサ１６０とインターフェースをとることができる。対応する電話交換機の音声回路ごとに１つのチャネル・プロセッサ１６０を含めることができる。メディア・ゲートウェイ１０５はまた、アプリケーション・テーブル１０７およびｂｅａｎ／スクリプト・インターフェース１１０を含むことができる。アプリケーション・テーブル１０７は、（以下ディレクトリ番号と呼ぶ）ダイアル番号識別サービス（ＤＮＩＳ）と、データ記憶装置１３５に記憶されている電話サービスのＶＸＭＬスクリプト実装との間の関連を指定することができる。より具体的には、アプリケーション・テーブル１０７は、ディレクトリ番号およびディレクトリ番号が登録されている電話サービスのリストを維持する。アプリケーション・テーブル１０７はさらに、電話サービスの様々なＶＸＭＬスクリプト実装を取り出すことができるネットワーク・ロケーションを指定する。
【００１５】
したがって、着信コールを受信すると、メディア・ゲートウェイ１０５が着信コールで指定されたディレクトリ番号を指定することができる。アプリケーション・テーブル１０７を用いて、ディレクトリ番号を１つまたは複数のＶＸＭＬスクリプトと突き合わせることができる。すなわち、ディレクトリ番号が登録されている電話サービスのＶＸＭＬスクリプト実装のロケーションまたはアドレスを識別することができる。セッション・マネジャ１２０に電話サービスのＶＸＭＬスクリプトのロケーションを提供することができる。
【００１６】
あるローカル・エリア・ネットワーク（ＬＡＮ）を他のＬＡＮに接続するためのブリッジ・サービスまたは機能を含むことのできるｂｅａｎ／スクリプト・インターフェース１１０を、メディア・ゲートウェイ１０５中に含めることができる。ｂｅａｎ／スクリプト・インターフェース１１０は、サービス・プロセッサ１１５と、チャネル・プロセッサ１６０や音声インターフェース１４０など、メディア・ゲートウェイ１０５の他のコンポーネントとの間の通信を容易にすることができる。このｂｅａｎ／スクリプト・インターフェース１１０は、ここで検討するサービス・プロセッサ１１５で解釈されるＶＸＭＬスクリプトによって提供可能なある範囲の機能をサポートするように構成することができる。具体的には、ＶＸＭＬスクリプトは拡張コール制御およびＴＣＡＰ（transaction capabilities application part）機能をサポートできるので、ｂｅａｎ／スクリプト・インターフェース１１０も、これらのコール制御およびＴＣＡＰ機能をサポートするように構成することができる。音声インターフェース１４０は、音声認識ならびにＴＴＳ（text-to-speech、音声合成）機能を提供することができる。したがって、遠隔通信幹線１６５を介して受信した音声をテキストに変換することができ、そのテキスト・データをオーディオ・ストリームに変換して遠隔通信幹線１６５を介して１人または複数の加入者に提供することができる。
【００１７】
全体として、サービス・プロセッサ１１５、セッション・マネジャ１２０、およびＶＸＭＬパーサ１２５は、分散型音声ブラウザのコンポーネントを提供する。ＶＸＭＬパーサ１２５は、実行時にインスタンス化され、ＨＴＴＰサーバ１３０を介してデータ記憶装置１３５からＶＸＭＬスクリプトを取り出すことができる。ＶＸＭＬパーサ１２５は、取り出したＶＸＭＬスクリプトを、サービス・プロセッサ１１５にマップされそれによって解釈され得る中間的なフォーマットに変換することができる。特に、ＶＸＭＬスクリプトを拡張して、Allow Call、Block Call、Forward Call、Selective Forward Call、およびBridgeCallなどのＴＣＡＰトランザクションを定義する新しいタグを含めることができる。したがって、ＶＸＭＬパーサ１２５はまた、ＶＸＭＬスクリプトへのどんな新しい追加の拡張タグも識別するように構成することができる。
【００１８】
サービス・プロセッサ１１５は、分散型コンピュータ環境における同じまたは異なるコンピュータ・システム中の他のコンポーネントと組み合わせることのできる再使用可能なソフトウェア・コンポーネントとすることができる。１つのサービス・プロセッサ１１５を、チャネル・プロセッサ１６０ごとに実行時にインスタンス化することができ、したがって、その特定のチャネル・プロセッサと関連付けることができる。サービス・プロセッサ１１５は、事実上、構文解析されたＶＸＭＬスクリプトのための実行環境を提供するインタープリータとして働き、そのＶＸＭＬスクリプトで指定された電話サービスを実施する。したがって、サービス・プロセッサ１１５はメディア・ゲートウェイ１０５の内部機能を電話サービスの構文解析されたＶＸＭＬスクリプト表現にマッチさせる。図示のように、サービス・プロセッサ１１５は、メディア・ゲートウェイ１０５の音声インターフェース１４０に通信可能にリンクすることができる。したがって、サービス・プロセッサ１１５は、構文解析されたＶＸＭＬスクリプトで指定された電話サービスを実施するためにＴＴＳおよび音声認識機能にアクセスすることができる。例えば、テキストおよび認識された音声を、ＶＸＭＬのスクリプト、フォーム、または文書あるいはそれらの組合せのフィールドを取り込むために使用することができる。
【００１９】
特に、サービス・プロセッサ１１５およびＶＸＭＬパーサ１２５は、それぞれＪａｖａ（Ｒ）仮想マシン１４５、１５５上で実行され得る。図１では、単一のＪａｖａ（Ｒ）仮想マシン１４５、１５５上で実行される複数のサービス・プロセッサ１１５およびＶＸＭＬパーサ１２５を示しているが、サービス・プロセッサ１１５およびＶＸＭＬパーサ１２５のそれぞれを１つの独立したＪａｖａ（Ｒ）仮想マシン１４５、１５５上で実行することも可能であり、それにより、１つのプログラム内で生じたエラーが他に悪影響を与えるリスクが最小になる。
【００２０】
サービス・プロセッサ１１５およびＶＸＭＬパーサ１２５のそれぞれは、セッション・マネジャ１２０に登録することができる。したがって、セッション・マネジャ１２０は、どのサービス・プロセッサ１１５およびＶＸＭＬパーサ１２５がコール処理に利用可能であるか追跡することができる。セッション・マネジャ１２０はさらに、サービス・プロセッサ１１５／ＶＸＭＬパーサ１２５の対の動作を調整することができる。セッション・マネジャ１２０は、サービス・プロセッサ１１５とＶＸＭＬパーサ１２５の間で情報の受渡しができる。具体的には、メディア・ゲートウェイ１０５からセッション・マネジャ１２０に提供される要求は、コールされたディレクトリ番号と、電話サービスの１つまたは複数のＶＸＭＬスクリプト表現を指定するＵＲＬ（universal resource locators）を含む１つまたは複数のＵＲＩ（universal resourceidentifiers）と、コールを受信した特定のチャネル・プロセッサを表す識別子とを含むことができる。セッション・マネジャ１２０は、ローカル・データ記憶装置に情報を保存することができる。したがって、セッション・マネジャ１２０は、受信したＵＲＩの送り先である利用可能な（free）ＶＸＭＬパーサ１２５を決定することができる。さらに、保存されたＵＲＩ、コールされたディレクトリ番号、およびチャネル・プロセッサ識別子に従って、ＶＸＭＬパーサ１２５からの結果が適正なサービス・プロセッサ１１５に送り返される。
【００２１】
サービス・プロセッサ１１５およびＶＸＭＬパーサ１２５の場合もそうであったが、複数のセッション・マネジャ１２０は単一のＪａｖａ（Ｒ）仮想マシン上で実行され、あるいは各セッション・マネジャ１２０がそれぞれ１つの独立したＪａｖａ（Ｒ）仮想マシン上で実行され得る。いずれにしても前述のように、サービス・プロセッサ１１５、セッション・マネジャ１２０、およびＶＸＭＬパーサ１２５は、コンピューティング・ネットワーク全体に分散された別々の計算機中に存在することができる。さらに、増えた処理負荷をサポートする必要に応じて、この様々なコンポーネントを複製することができる。したがって、サービス・プロセッサ１１５、セッション・マネジャ１２０、およびＶＸＭＬパーサ１２５は、全体として、大容量のシステム要求をサポートするように拡大できる分散型音声ブラウザ・アーキテクチャを提供する。
【００２２】
キャッシュ・メモリ１７０は、セッション・マネジャ１２０とＶＸＭＬパーサ１２５の間に配置することができる。キャッシュ・メモリ１７０は、頻繁に使用されるＶＸＭＬスクリプトのフェッチおよび構文解析回数を減らすことによってシステム性能を高めることができる。ここに開示の本発明の構成はさらに、１つまたは複数のファイア・ウォール１７５、１８０、１８５を含むことができる。ファイア・ウォールは、ここに開示のシステム１００の動作に必要なものではないが、ファイア・ウォールを追加することにより、追加のネットワーク・セキュリティが提供される。具体的には、ファイア・ウォール１７５および１８０は、多くの遠隔通信会社で必要とされる２重のファイア・ウォール保護を提供する。ファイア・ウォール１８５は、ＶＸＭＬパーサ１２５を企業または他の専用ネットワークから隔離することができる。
【００２３】
図２は、図１のシステムで行われる電話サービス機能を実施する方法２００を示す流れ図である。この方法２００は、図１のシステムが少なくとも１つのサービス・プロセッサをメディア・ゲートウェイの各チャネル・プロセッサごとにインスタンス化した状態から開始することができる。さらに、ＶＸＭＬパーサなど１つまたは複数のパーサを、サービス・プロセッサおよびパーサがセッション・マネジャに登録されるようにインスタンス化することができる。特に、サービス・プロセッサとパーサの間の対応が１対１である必要はない。いずれにしても、電話交換機はコールを受信することができる。電話交換機は、メディア・ゲートウェイの利用可能なチャネル・プロセッサを選択し、例えばバンド内信号またはＩＳＤＮのＤチャネルを用いて、メディア・ゲートウェイがコールを受け入れるかどうか照会することができる。メディア・ゲートウェイがそのコールを受け入れたことに応答して、電話交換機は選択されたチャネル・プロセッサにそのコールを適用することができる。したがって、ステップ２０５で、コールをメディア・ゲートウェイで識別することができる。ステップ２１０で、受信したコールのコールされたディレクトリ番号を決定することができる。
【００２４】
ステップ２１５で、決定されたディレクトリ番号に関連付けられた１つまたは複数のコール処理スクリプトが識別される。例えば、コールされたディレクトリ番号および関連するＶＸＭＬスクリプトのリストに照会し、ディレクトリ番号が登録されている特定のコール処理スクリプトまたは電話サービスのＶＸＭＬスクリプト表現を決定することができる。ステップ２２０で、メディア・ゲートウェイは、ＴＣＰ／ＩＰ接続を介して少なくとも以下の情報、すなわち、コールされたディレクトリ番号と、ディレクトリ番号が登録されている電話サービスのコール処理スクリプト表現を指定する１つまたは複数のＵＲＩと、コールを受信した特定のチャネル・プロセッサを表す識別子とをセッション・マネジャに送ることができる。
【００２５】
ステップ２２５で示すように、利用可能なパーサにＵＲＩを送信するのに先立って、セッション・マネジャは、ＴＣＰ／ＩＰ接続を介してキャッシュ・メモリに照会してそのＵＲＩで指定されたコール処理スクリプトがキャッシュ・メモリ内に含まれているかどうか判定することができる。コール処理スクリプトが含まれていた場合、それはすでにパーサによって構文解析され中間フォーマットで存在しており、サービス・プロセッサにマップされる。したがって、ステップ２３０で、構文解析されたコール処理スクリプトをキャッシュ・メモリから取り出すことができ、この方法はステップ２５０に進むことができる。しかし、キャッシュ・メモリがＵＲＩで指定されたコール処理スクリプトを含まない場合は、ステップ２３５に進むことができる。
【００２６】
ステップ２３５で、セッション・マネジャは、利用可能なパーサを識別し、そのパーサにＴＣＰ／ＩＰ接続を介してＵＲＩを提供することができる。特に、セッション・マネジャはチャネル・プロセッサ識別子のローカル・コピーを保存することができる。ステップ２４０で、パーサは、ＵＲＩで指定されたコール処理スクリプトを取り出すためのＨＴＴＰ要求をＨＴＴＰサーバに発行することができる。コール処理スクリプトは、例えばＶＸＭＬ文書、テキスト、スクリプト、ならびにオーディオの選択された部分などの音声マークアップ言語スクリプトを含むことができる。ステップ２４５で、パーサは、ＨＴＴＰ接続を介して要求したコール処理スクリプトを受信することができる。次いで、パーサは、そのコール処理スクリプトを構文解析して、それをサービス・プロセッサが解釈できる中間的なフォーマットに変換することができる。
【００２７】
ステップ２５０で、ＴＣＰ／ＩＰ接続を介して、構文解析されたコール処理スクリプトをパーサからセッション・マネジャに送信することができる。ステップ２５５で、チャネル・プロセッサ識別子を保持しているセッション・マネジャは、コールを受信したチャネル・プロセッサに関連付けられたサービス・プロセッサ（スクリプト／ｂｅａｎ）を識別することができる。ステップ２６０で、セッション・マネジャは、その識別されたサ−ビス・プロセッサに構文解析された処理スクリプトを送信することができる。したがって、サービス・プロセッサは、構文解析された処理スクリプトを実行することにより電話サービスを実施することができる。ステップ２６５で、サービス・プロセッサは、ｂｅａｎ／スクリプト・インターフェースを介して、メディア・ゲートウェイの音声プロセッサなど必要な任意の機能にアクセスして電話サービスを実施することができる。
【００２８】
ここに開示した本発明は、電話交換機特有でもなく、また電話プロトコルに関する開発者の知識にも依存しない形で、コスト効率よくかつタイムリーに電話サービスを開発するための解決策を提供する。本発明を用いると、ウェブ・アプリケーションおよびＶＸＭＬの知識を有する人が電話サービス機能を実施できるようになる。本発明はまた、電話サービスの開発に必要な時間に関して、従来の交換機レベルの開発技法より大幅な改善を提供することができる。
【００２９】
本発明は、ハードウェア、ソフトウェア、またはそれらの組合せで実現することができる。本発明は、１つのコンピュータ・システムへの集中方式で、または様々なエレメントがいくつかの相互接続されたコンピュータ・システム全体に広がった分散方式で実現することができる。ここに説明した方法を実行するように適合されたどんな種類のコンピュータ・システムまたは他の装置も適切であるといえる。典型的なハードウェアとソフトウェアの組合せは、ロードされ実行されたときにここで説明した方法を実行するようにコンピュータ・システムを制御するプログラムを有する汎用コンピュータ・システムとすることができる。
【００３０】
本発明はまた、ここに説明した方法を実施可能にするすべての機能を備え、コンピュータ・システムにロードされたときにその方法を実行できるコンピュータ・プログラム製品に組み込むこともできる。本文脈中のコンピュータ・プログラムとは、直接に、あるいは以下のａ）他の言語、コード、または表記に変換する、ｂ）異なる材料形態で複製するのどちらかまたはその両方の後に、情報処理能力を有するシステムに特定の機能を実施させることを目的とした１組の命令の、任意の言語、コード、または表記による表現を意味する。
【００３１】
本発明は、その趣旨または本質的な属性から逸脱せずに他の形態で実施することができる。したがって、前述の明細書ではなく、本発明の範囲を示す添付の特許請求の範囲を参照されたい。
【図面の簡単な説明】
【００３２】
【図１】本明細書に開示された本発明の構成による電話サービス機能を実施するための例示的なシステムを示す概略図である。
【図２】図１のシステムによって行われる電話サービス機能を実施する方法を示す流れ図である。
【図１】
2005535166.tif 000003
【図２】
2005535166.tif 000004
【手続補正書】
【提出日】平成16年10月6日(2004.10.6)
【手続補正１】
【補正対象書類名】特許請求の範囲
【補正対象項目名】全文
【補正方法】変更
【補正の内容】
【特許請求の範囲】
【請求項１】
少なくともサービス・プロセッサ（１１５）と、セッション・マネジャ（１２０）と、音声マークアップ言語（ＶＸＭＬ）パーサ（１２５）とを含む通信システム（１００）中で、受信したコールに応答して電話サービスを実行する方法であって、
第１の計算機中の選択されたセッション・マネジャ（１２０）が、受信したコールに応答して第２の計算機中の選択されたＶＸＭＬパーサ（１２５）に、前記電話サービスの、ＶＸＭＬ文書形式で記憶された実装を要求するステップと、
前記第２の計算機中の前記選択されたＶＸＭＬパーサ（１２５）が、前記ＶＸＭＬ文書から中間的なフォーマットを生成し、前記中間的なフォーマットを第３の計算機中の選択されたサービス・プロセッサ（１１５）に送達するステップと、
前記第３の計算機中の前記選択されたサービス・プロセッサ（１１５）が、前記中間的なフォーマットを受信し、前記電話サービスを実行するステップと
を含む方法
【請求項２】
前記セッション・マネジャ（１２０）が、前記電話サービスの前記記憶された実装の前記対応する中間的なフォーマットが前記セッション・マネジャ（１２０）と前記ＶＸＭＬパーサ（１２５）の間に配置されたキャッシュ・メモリ（１７０）中で利用可能かどうかを検査するステップと、見つけた中間的なフォーマットを前記キャッシュ・メモリ（１７０）から取り出すステップと、前記中間的なフォーマットを、選択されたＶＸＭＬパーサ（１２５）には要求せずに、前記電話サービスを実行するための前記選択されたサービス・プロセッサ（１１５）に送達するステップとをさらに含む、請求項１に記載の方法。
【請求項３】
複数のディレクトリ番号に関連付けられた電話サービスの音声マークアップ言語（ＶＸＭＬ）文書実装の複数のアドレスを有し、コールを受信するように構成されたメディア・ゲートウェイ（１０５）と、
前記コールを受信したことに応答して、前記ＶＸＭＬ文書を前記アドレスから取り出し、前記ＶＸＭＬ文書を構文解析して中間的なフォーマットにするように構成された少なくとも１つのＶＸＭＬパーサ（１２５）と、
中間的なフォーマットである前記構文解析されたＶＸＭＬ文書を実行して前記電話サービスを実施するように構成された少なくとも１つのサービス・プロセッサ（１１５）と、
前記ＶＸＭＬパーサ（１２５）および前記サービス・プロセッサ（１１５）の動作を調整するように構成された少なくとも１つのセッション・マネジャ（１２０）とを含み、
前記ＶＸＭＬパーサ（１２５）、前記サービス・プロセッサ（１１５）、および前記セッション・マネジャ（１２０）がそれぞれ別々の計算機中に配置される、電話サービスを実施するためのシステム（１００）。
【請求項４】
さらに前記メディア・ゲートウェイ（１０５）が、
前記サービス・プロセッサへのインターフェースを含み、前記インターフェースがブリッジ・サービス機能を実施するように構成される、請求項３に記載のシステム。
【請求項５】
前記インターフェースが、使用可能にされたＴＣＡＰである、請求項４に記載のシステム。
【請求項６】
前記別々の計算機が、それぞれ独立した仮想マシンである、請求項３に記載のシステム。
【請求項７】
前記音声マークアップ言語文書を含むデータ記憶装置をさらに含む、請求項３に記載のシステム。
【請求項８】
前記音声マークアップ言語文書の取出しを容易にするために、前記データ記憶装置および前記音声マークアップ言語パーサ（１２５）に通信可能にリンクするサーバをさらに含む、請求項７に記載のシステム。
【請求項９】
前記セッション・マネジャ（１２０）と前記音声マークアップ言語パーサ（１２５）の間に配置され、取り出された音声マークアップ言語文書を頻繁に記憶するように構成されたキャッシュ・メモリ（１７０）をさらに含む。請求項８に記載のシステム。
【請求項１０】
プログラムをコンピュータ上で走らせたときに請求項１または２による方法を実施するためのソフトウェア・コード部分を含むコンピュータ・プログラム。
【請求項１１】
コンピュータ使用可能媒体上に記憶されている、請求項１０に記載のコンピュータ・プログラム。
【国際調査報告】
2005535166.tif 000005
2005535166.tif 000006
2005535166.tif 000007