コール制御標準「CCXML」の役割を理解する――標準ベースのVoIPアプリケーションの開発が可能に

 完全なオープン標準ベースの音声アプリケーションの開発を可能にするコール制御記述言語「CCXML(Call Control XML)」に注目が集まっている。同仕様がどのような役割を担い、何を実現しようとしているのかについて紹介する。

 今や、XMLがインターネット・アプリケーションの“世界共通言語”になったというのはだれもが認める事実である。そのXMLは、W3C(World Wide Web Consortium)が策定したオープン標準仕様であり、カスタマイズが非常に容易で、かつテキスト・ベースであるため、あらゆるタイプのコンピュータ、ブラウザ、アプリケーションで利用することができる。

 アプリケーション開発コミュニティに浸透したXMLが、やがてテレフォニーやスピーチ・アプリケーションの記述にも使われるようになったのも当然の流れと言える。それが、音声操作対応のテレフォニー・アプリケーション開発仕様「VoiceXML」であり、対話型音声応答アプリケーションの対話方法を定義づけるXMLスキームとして広く利用されるようになった。

 VoiceXMLを利用する開発者は、電話をかけてきた通話者に流す音声案内を定義し、通話者が発信したトーンまたは音声を受け付けて通話者とアプリケーション間の対話を成立させる。

 VoiceXML は、通話者同士の対話方法を定義する優れた手法ではあるが、VoIPネットワークへの対応については、VoiceXMLプラットフォーム構築者の裁量にゆだねられている。しかし、アプリケーションには、すべての通話者とコール自体のやり取りを制御するための機能が必要になる。このギャップを埋めるための標準仕様として策定作業が進められているのがCCXMLである。

 CCXMLは、音声対話プラットフォームにコール制御機能を追加することによってVoiceXMLインタープリタを補完する。CCXMLとVoiceXMLを組み合わせれば、完全なオープン標準ベースの音声アプリケーションの開発が可能になるわけだ。CCXMLは現在、バージョン1.0のラストコール・ワーキング・ドラフトの段階に入っている。

 同仕様は、(中間のコール処理イベントを含む)インバウンド・コールの受け付け、(コール進行分析を含む)アウトバウンド・コールの発信、電話会議実行のためのXMLスキームを定義する役割を担う。

 VoiceXMLシステムの構造と同様に、CCXMLアプリケーションはアプリケーション・サーバ上に実装され、アプリケーションへのアクセスはHTTPを介してURLを指定することによって行う。

 一般的にCCXMLインタープリタは、プラットフォームあるいはメディア・サーバの1つのコンポーネントであり、これもVoiceXMLインタープリタと同じである。アプリケーション・プロビジョニングおよびランタイム管理は、管理インタフェースを通じてプラットフォームまたはメディア・サーバで実行される。

 個々のCCXMLアプリケーションはそれぞれCCXMLセッションと連携し、複数のコールおよび対話型(VoiceXML)アプリケーションを制御することができる。CCXMLセッションは、特定のコールに依存することなく、シングル・セッションでインバウンド・コールの受け付けとアウトバウンド・コールの発信が行われる場合もある。CCXMLの主な機能は以下のとおりである。

  • セッションの作成および切断を実行するセッション管理機能
  • かかってきた電話コールをアプリケーションに通知する接続状態イベントを受け取り、そのコールに関する情報にアクセスする機能
  • アウトバウンド・コールの開始および接続状態の報告
  • 電話会議の作成、および電話会議に繋がるコールの追加・切断
  • 電話ネットワーク内に参加する複数の人々による通話を可能にするブリッジ機能
  • 異なるターミネーション・ポイントへのコールの転送
  • VoiceXMLアプリケーション間での転送や呼び出しを制御し、すべてのコールで音声対話の実行を可能にする機能
  • アプリケーションに組み込まれているECMAscriptの実行機能

 このようにCCXMLは、音声アプリケーションに向けた電話またはVoIPネットワークのコール制御操作を定義付ける言語であり、VoiceXMLを補完し、オープン標準に完全準拠した音声アプリケーションの開発を実現する。

(サンジーブ・サワイ/Network World 米国版)

W3C(World Wide Web Consortium)
http://www.w3.org/
「CCXML」のページ
http://www.w3.org/TR/ccxml/

提供:Computerworld.jp