(57)【要約】【課題】  既存のWebアプリケーションをほとんど修正することなく、複数のモーダル用のブラウザを同期させて、簡単にマルチモーダルサービス化することを目的とする。【解決手段】  同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を予め準備しておき、ブラウザからの処理要求に対して、ブラウザと同期する他のブラウザとモーダルとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択する段階と、処理要求元であるブラウザに対して、選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、ブラウザと同期する他のブラウザに対して、対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力する段階とを含む。【選択図】      図１
2005148807.tif 000002
【特許請求の範囲】
【請求項１】
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムにおけるモーダル同期制御方法であって、
予め同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を準備しておき、
ブラウザからの処理要求に対して、前記選択定義情報を参照し、前記ブラウザと同期する他のブラウザとモーダルとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択する段階と、
処理要求元であるブラウザに対して、前記選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、前記ブラウザと同期する他のブラウザに対して、前記選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力する段階と、
を含むモーダル同期制御方法。
【請求項２】
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムにおけるモーダル同期制御方法のプログラムであって、
ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、前記ブラウザと同期する他のブラウザとのモーダルの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択するステップと、
処理要求元であるブラウザに対して、前記選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、前記ブラウザと同期する他のブラウザに対して、前記選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力するステップと、
を含むモーダル同期制御方法をコンピュータに実行させるためのプログラム。
【請求項３】
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、
ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、前記ブラウザと同期する他のブラウザとのモーダルの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択する選択処理部と、
処理要求元であるブラウザに対して、前記選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、前記ブラウザと同期する他のブラウザに対して、前記選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力するコンテンツ出力部と、
を備えるマルチモーダルインターフェイスシステム。
【請求項４】
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、
同期する複数のモーダルの組み合わせを管理するとともに、各モーダルとの情報の送受信を行うモーダル管理部と、
ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、前記ブラウザと同期する他のブラウザとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択し、各モーダル毎のコンテンツ生成ファイルにて当該モーダルに対応したコンテンツを生成し、処理要求元であるブラウザに対してコンテンツ生成ファイルで生成されたコンテンツを出力するとともに、同期する他のブラウザに対してコンテンツ生成ファイルにて生成されたコンテンツを取得するための取得要求情報をモーダル管理部に通知する選択処理部と、
同期する他のブラウザから送信されてきた取得要求情報に応じて、当該取得要求情報に対応するコンテンツを当該ブラウザに出力するコンテンツ管理部と、
を備えるマルチモーダルインターフェイスシステム。
【請求項５】
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、
同期する複数のモーダルの組み合わせを管理するとともに、各モーダルとの情報の送受信を行うモーダル管理部と、
ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、前記ブラウザと同期する他のブラウザとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択し、処理要求元であるブラウザに対してコンテンツ生成ファイルで生成されたコンテンツを出力するとともに、同期する他のブラウザに対して、選択されたコンテンツ生成ファイルを識別する情報とブラウザからの処理要求に応じて実行された処理の処理結果に関する情報とを対応付けて記憶し、さらにコンテンツを取得するための取得要求情報をモーダル管理部に通知する選択処理部と、
同期する他のブラウザから送信されてきた取得要求情報に応じて、当該取得要求情報に対応するコンテンツ生成ファイルと処理結果に関する情報からコンテンツを生成し、生成したコンテンツを当該ブラウザに出力するコンテンツ管理部と、
を備えるマルチモーダルインターフェイスシステム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、複数のユーザインターフェイスを同期させる方法、それを実現するシステムおよびそのプログラムに関する。
【背景技術】
【０００２】
インターネットの普及とWeb技術の進歩と共に、ユーザはWebブラウザを使うことで、インターネット上の様々な情報をWWWサーバ(World Wide Web)から取得し、閲覧できるようになってきた。WWWサーバから取得されるコンテンツはHTML(Hyper Text Markup Language)という記述言語で記述され、Webブラウザはこれらの情報を解釈して情報を画面に表示する。
【０００３】
これらのWebシステムは、単純にサーバ上の静的なコンテンツを取得して画面に表示するだけでなく、Webブラウザからの入力データを元にサーバ側でデータベース等への情報処理を行い、その結果を元に動的にコンテンツを生成してブラウザに出力するWebアプリケーションとして進化している。これにより、ユーザはWebブラウザからオンラインショッピング等のインターネット上の各種サービスを手軽に利用できるようになってきた。
【０００４】
一方、これらのWeb技術を電話機などの音声からも利用できるようにするために、VoiceXMLというコンテンツ記述言語が提案されている。VoiceXMLシステムでは、電話機とWWWサーバの間にVoiceXMLブラウザが仲介することで、VoiceXMLブラウザがVoiceXMLを解釈してユーザとの対話を行い、ユーザからの音声認識の結果から必要に応じてWWWサーバに新しいVoiceXMLを要求する。
【０００５】
以上のように、Webブラウザ等のGUIモーダルや音声等の音声モーダルなどのユーザインターフェイスからインターネット上の各種サービスを利用できるような環境は整ってきたが、音声入力の利便性とGUIの閲覧性という互いの利便性を組み合わせた複数モーダルによる利用を行う場合、各モーダル用のブラウザを同期させるための仕組みをコンテンツ提供者側が実現する必要があり、開発者の負担が大きくなるという課題がある。
【０００６】
これに対して、複数のモーダル用ブラウザを同期させる仕組みとして、たとえば、特許文献１に示されるような複数ユーザインタフェースの同期方法とそのシステムが提案されている。この発明では、静的に存在するHTMLやVoiceXMLを各ブラウザで表示する場合に、HTMLコンテンツとVoiceXMLコンテンツのそれぞれのurl(uniform resource locator)の対応関係を同期サーバに定義しておき、一方のブラウザがurlを要求する場合に、そのurlに対応した他方のモーダル用のurlを同期するブラウザに通知し、同期するブラウザからそのurlに対応するコンテンツを取得させることで同期を行う。また、Webアプリケーションのように動的にコンテンツを生成するサーバの場合は、一方のブラウザがサブミットを行った際に、対応するブラウザにも同時にサブミットを行わせ、モーダル別に存在するCGI等のプログラムにモーダル毎に同じ処理を行わせることで、同一処理結果からモーダル別のコンテンツを生成し、コンテンツ間の同期を行う。
【特許文献１】特開２００３−１５０４４０号公報
【発明の開示】
【発明が解決しようとする課題】
【０００７】
前述した特許文献１に記載された発明では、静的に存在するモーダル毎のコンテンツを同期させる場合は問題ないが、サーバ側の処理結果からコンテンツを動的に生成するWebアプリケーションに適用する場合に問題が発生する。
【０００８】
例えばオンラインショップ等の注文システムにおいてマルチモーダルサービスを行う場合、注文システムに注文データを渡して処理結果を元にコンテンツを生成するCGIプログラムをモーダル毎に用意しておき、一方のブラウザが注文依頼を行う際に、他方の同期するモーダルにも同時に注文依頼を行わせる事で、同期を実現する。
【０００９】
しかしながら、同じ処理依頼を２つのブラウザが同時に行うため、注文システムは、同じ注文を複数回処理する二重実行の問題が発生する。これを解決する方法として、一方のCGIだけが注文システムに注文依頼を行う方法が考えられるが、注文依頼を行わないCGIも処理結果からコンテンツを生成する必要があるため、実際に処理依頼を行ったCGIから処理結果を受け取る必要がある。また、通常のシングルモーダル利用の場合はCGIの注文処理機能をオンにし、マルチモーダルで利用する場合にのみCGI機能をオフにするような処理を実現する必要がある。
【００１０】
このように、複数のブラウザに同一の処理依頼を行わせる本方式では、Webアプリケーションの開発者が実装すべき同期処理機能が煩雑であり、開発者の負担が大きいという問題がある。
【００１１】
本発明は、このような問題を解決するためになされたものであり、特定のモーダルに対するコンテンツを解釈してユーザとインタラクションを行うブラウザと、ブラウザからの要求に応じて情報処理を行い、処理結果を元にコンテンツを生成してブラウザに出力する情報処理システムにおいて、既存のWebアプリケーションをほとんど修正することなく、複数のモーダル用のブラウザを同期させて、簡単にマルチモーダルサービス化することを目的とする。
【課題を解決するための手段】
【００１２】
本発明に係るモーダル同期制御方法は、特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、いずれかのブラウザからの要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムにおけるモーダル同期制御方法であって、予め同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を準備しておき、ブラウザからの処理要求に対して、選択定義情報を参照し、ブラウザと同期する他のブラウザとモーダルとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択する段階と、処理要求元であるブラウザに対して、選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、ブラウザと同期する他のブラウザに対して、選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力する段階とを含む。
【００１３】
ここで、同期する他のブラウザに対してコンテンツの取得通知を行う段階と、同期する他のブラウザからの取得要求に応じてコンテンツを出力する段階とをさらに含む構成とすることができる。
【００１４】
また、本発明に係るプログラムは、特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、いずれかのブラウザからの要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムにおけるモーダル同期制御方法のプログラムであって、ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、ブラウザと同期する他のブラウザとのモーダルの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択するステップと、処理要求元であるブラウザに対して、選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、ブラウザと同期する他のブラウザに対して、選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力するステップとを含むモーダル同期制御方法をコンピュータに実行させるためのプログラムである。
【００１５】
本発明に係るマルチモーダルインターフェイスシステムは、特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、ブラウザと同期する他のブラウザとのモーダルの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択する選択処理部と、処理要求元であるブラウザに対して、選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、ブラウザと同期する他のブラウザに対して、選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力するコンテンツ出力部とを備える。
【００１６】
ここで、同期する複数のモーダルの組み合わせを管理するモーダル管理部をさらに備える構成とすることができる。
【００１７】
また、モーダル管理部は、ブラウザからの処理要求を受け付けるとともに、コンテンツ出力部により生成されたコンテンツを処理要求元であるブラウザに送出するように構成することもできる。
【００１８】
本発明の他の観点によるマルチモーダルインターフェイスシステムは、特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、同期する複数のモーダルの組み合わせを管理するとともに、各モーダルとの情報の送受信を行うモーダル管理部と、ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、ブラウザと同期する他のブラウザとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択し、各モーダル毎のコンテンツ生成ファイルにて当該モーダルに対応したコンテンツを生成し、処理要求元であるブラウザに対してコンテンツ生成ファイルで生成されたコンテンツを出力するとともに、同期する他のブラウザに対してコンテンツ生成ファイルにて生成されたコンテンツを取得するための取得要求情報をモーダル管理部に通知する選択処理部と、同期する他のブラウザから送信されてきた取得要求情報に応じて、当該取得要求情報に対応するコンテンツを当該ブラウザに出力するコンテンツ管理部とを備える。
【００１９】
この場合、コンテンツ管理部は、処理要求元であるブラウザに同期する他のブラウザからの取得要求に対して対応するコンテンツを出力した後、生成されたコンテンツを削除する機能をさらに備える構成とすることができる。
【００２０】
本発明のさらに他の観点によるマルチモーダルインターフェイスシステムは、特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、同期する複数のモーダルの組み合わせを管理するとともに、各モーダルとの情報の送受信を行うモーダル管理部と、ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、ブラウザと同期する他のブラウザとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択し、処理要求元であるブラウザに対してコンテンツ生成ファイルで生成されたコンテンツを出力するとともに、同期する他のブラウザに対して、選択されたコンテンツ生成ファイルを識別する情報とブラウザからの処理要求に応じて実行された処理の処理結果に関する情報とを対応付けて記憶し、さらにコンテンツを取得するための取得要求情報をモーダル管理部に通知する選択処理部と、同期する他のブラウザから送信されてきた取得要求情報に応じて、当該取得要求情報に対応するコンテンツ生成ファイルと処理結果に関する情報からコンテンツを生成し、生成したコンテンツを当該ブラウザに出力するコンテンツ管理部とを備える。
【発明の効果】
【００２１】
本発明では、モーダルの種別毎のコンテンツ生成ファイルと、同期するモーダル種別の組み合わせと適用するコンテンツ生成ファイルの組み合わせを定義するコンテンツ生成ファイルの選択定義情報を記述するだけ、既存のシングルモーダル用のWebアプリケーションを容易にマルチモーダルに対応させることが可能となる。
【発明を実施するための最良の形態】
【００２２】
〈概要構成〉
通常、Webアプリケーションの開発では、開発者の開発負担を軽減させるために、アプリケーション内の各種機能をMVC(Model, View, Controller)モデルに従ってコンポーネント化することが一般的である。MVCにおいて、Modelはデータベースへの検索処理など各種データ管理と処理ロジックを行い、ViewはModelでの処理結果を元にコンテンツを生成する機能を実現する。また、Controllerはブラウザからの入力データと内部状態から呼び出し先のModelとViewを決定し、Modelの処理結果をViewに引き渡す処理を行う。このように、MVCモデルでは、実際の処理を行うコンポーネント(ControllerとModel)と、処理結果からコンテンツを生成するコンポーネント(View)を分離する事で、View部分だけを変更することで処理ロジックを変更することなく容易に画面デザインを変更することが可能となる。本発明では、このように処理ロジック部分と画面生成部分が分離されているWebアプリケーションの特徴を生かすことで、既存アプリケーションを簡単にマルチモーダル化する手段を提供する。
【００２３】
図１に一般的なシングルモーダル用のオンラインショッピングのWebアプリケーション構成図を示す。サーバ20は、HTMLブラウザ(Webブラウザ)10からの入力データを受け取る注文受け付けコントローラ(Controllerに相当)21と、注文受け付けコントローラ21からの依頼に応じて実際の注文処理を行う注文システム(Modelに相当)22と、注文システム22の処理結果を元にhtmlコンテンツを生成するhtmlコンテンツ生成ファイル(Viewに相当)23から構成される。コンテンツ生成ファイルはJavaシステムの場合、JSP（Java Server Pages）などが使用されている。このようなWebアプリケーションを簡単にマルチモーダル化するためのモーダル同期制御方法およびマルチモーダルインターフェイスシステムの実施例について図面を参照しながら説明する。
【００２４】
<第１実施形態>
本実施形態では、商品の注文を受け付けて処理する注文システムに適用した場合を例にして説明する。
【００２５】
図２は、本発明の第１実施例形態に係るマルチモーダルインターフェイスシステムの全体構成である。
【００２６】
ここで、サーバ20は、現在同期しているモーダルおよびブラウザに関する情報を管理するモーダル管理部24、モーダル管理部24を介してブラウザからの入力データを受け取る注文受付コントローラ21、注文受付コントローラ21からの依頼に応じて実際の注文処理を行う注文システム22、コンテンツ生成ファイルの選択定義ファイル25に基づいてコンテンツ生成ファイルを選択する選択処理部26、ブラウザからの同期コンテンツ取得要求に応じてコンテンツを出力するコンテンツ管理部31を備えている。
【００２７】
同期しているモーダルが、HTMLブラウザ10とVXMLブラウザ11であるような場合、この2つのブラウザが同期していることをモーダル管理部24が管理している。モーダル管理部24が管理する管理データの一例を図４に示す。図４では、同期ID、ブラウザ識別子、モーダル名の各項目からなるテーブルで構成され、１つの同期ID内にあるモーダルがそれぞれ同期しており、各モーダルとブラウザとが対応付けられて格納される。
【００２８】
注文受付コントローラ21は、要求元ブラウザの要求に応じて注文システム22に処理依頼を行うとともに、注文システム22の処理結果に応じて適切な選択定義ファイル25に処理結果を転送する。コンテンツ生成ファイルの選択定義ファイル25の一例を図８に示す。本実施形態のコンテンツ生成ファイルの選択定義ファイル25は、注文システム22において発生しうる処理結果毎に作成される。図８に示すものは、注文システム22に注文した商品がエラーとなった場合の例であり、注文した商品が注文通りに受け付けられた場合やその他の発生しうる処理結果毎に予め設定されている。この例では、<mm:multi-modal>のタグ内に、モーダルの組み合わせがHTMLとVXMLの場合、CHTMLとVXMLの場合について、それぞれのモーダルに対応したコンテンツ生成ファイルの定義がなされており、それぞれ該当するコンテンツ生成ファイル名、たとえば、JSP（Java Server Pages）名が記述されている。
【００２９】
選択定義ファイル25は、注文受付コントローラ21から処理結果が転送されることにより実行され、実行と同時に選択処理部26が選択定義ファイルを読み取って選択処理を行う。図８の例では、定義の先頭にある「mmtaglib.jar」というライブラリが選択定義ファイル25の実行とともに起動される選択処理である。
【００３０】
選択処理部26では、選択定義ファイル25の定義内容と要求元ブラウザが同期している他のブラウザとのモーダルの組み合わせを元にして、適用すべきモーダル別のコンテンツ生成ファイル名を抽出し、抽出された各コンテンツ生成ファイルに注文受付コントローラ21から渡された処理結果を転送する。
【００３１】
ここでは、HTMLブラウザ10またはVXMLブラウザ11からの要求に応じて、選択処理部26はコンテンツ生成ファイルの選択定義ファイル25から該当するHTMLコンテンツ生成ファイル27およびVXMLコンテンツ生成ファイルを抽出し、注文システムでの情報処理結果を各コンテンツ生成ファイルに転送して、HTMLコンテンツ29およびVXMLコンテンツ30を生成する。たとえば、HTMLブラウザ10からの要求に対して、注文受付コントローラ21から図８の選択定義ファイル25を実行した場合、HTMLブラウザ10と同期する他のブラウザはVXMLブラウザ11であり、モーダルの組み合わせは「HTML」と「VXML」であることから、HTMLブラウザ10に対しては「merr_html.jsp」、VXMLブラウザ11に対しては「merr_vxml.jsp」のコンテンツ生成ファイルが選択され、処理結果をコンテンツ生成ファイルに転送する。「merr_html.jsp」の内容を図９に、「merr_vxml.jsp」の内容を図10に示す。また、各コンテンツ生成ファイルに転送される処理結果データとしては、たとえば、図７に示すように、コンテンツ内の項目名と結果データとが対応付けられたテーブルで構成することができる。ここで、生成された各コンテンツは、それぞれファイルとして保存されるものであるが、処理要求元であるブラウザに対して生成されるコンテンツはモーダル管理部24を介して送出するだけで保存しないように構成できる。
【００３２】
前述したようなコンテンツ生成ファイルに処理結果データが反映されたコンテンツの例を図12A、図12Bに示す。図12Aは、HTMLコンテンツ生成ファイル27に処理結果データが反映されたHTMLブラウザ用コンテンツを示しており、図12Bは、VXMLコンテンツ生成ファイル28に処理結果データが反映されたVXMLブラウザ用発話情報を示している。
【００３３】
このような第１実施形態における動作についてフローチャートに基づいて説明する。図３は、モーダル管理部24の動作に関するフローチャートである。
【００３４】
ステップS11では、サーバ20はイベント待ちの状態であり、ブラウザからの初期ページ取得要求があった場合にはステップS12に、終了要求があった場合にはステップS18に、コンテンツ取得要求があった場合にはステップS20にそれぞれ移行する。
【００３５】
ステップS12では、モーダル管理部24が初期ページ取得要求に含まれるモーダル種別を判別することにより、要求元ブラウザのモーダル種別を特定する。モーダル種別の判定は、たとえば、ブラウザがコンテンツ要求時に送信するHTTPヘッダ情報を元にして判定する。
【００３６】
ステップS13では、モーダル管理部24が他のブラウザとの要求を区別するためのブラウザ識別子を生成する。
【００３７】
ステップS14では、モーダル管理部24が、ブラウザからの初期ページ取得要求中に指定された同期IDがあるか否かを判別する。同期IDが指定されていないと判断した場合にはステップS15に移行し、同期IDが指定されていると判断した場合にはステップS16に移行する。
【００３８】
ステップS15では、モーダル管理部24は初期ページ取得要求元であるブラウザに対して新たな同期IDを生成する。
【００３９】
ステップS16では、モーダル管理部24が管理するモーダル管理テーブルに同期ID、ブラウザ識別子およびモーダル種別を記述する。モーダル管理テーブルは前述したように、たとえば図４に示すような構成となっている。
【００４０】
ステップS17では、モーダル管理部24はモーダル種別に応じた初期ページをブラウザ識別子とともに返信する。初期ページとして、たとえば図5Aに示すようなHTMLブラウザ用初期画面、図5Bに示すようなVXMLブラウザ用初期対話が用意されており、モーダル管理部24はこれらのコンテンツ生成データを要求元であるブラウザに送信する。また、初期ページのコンテンツ生成データとともに送信されるブラウザ識別子は、ブラウザからの処理要求の際にその要求中に含まれて送信されるものであり、モーダル管理部24はブラウザ識別子からそのブラウザのモーダル種別および同期する他のモーダルを判別できるようになる。
【００４１】
この後、ステップS11に移行する。
【００４２】
ステップS18では、モーダル管理部24は、終了要求があったブラウザのブラウザ識別子を取得する。
【００４３】
ステップS19では、モーダル管理部24は、管理しているモーダル管理テーブル中の該当するブラウザ識別子の欄を消去する。
【００４４】
この後、ステップS11に移行する。
【００４５】
ステップS20では、モーダル管理部24は、コンテンツ取得要求があったブラウザのブラウザ識別子を取得する。
【００４６】
ステップS21では、モーダル管理部24は、取得したブラウザ識別子に基づいてモーダル管理テーブルを参照し、同一の同期IDに所属するブラウザのモーダル種別を取得する。
【００４７】
ステップS22では、モーダル管理部24は、同期する全モーダルのモーダル種別とともにコンテンツ取得要求を注文受付コントローラ21に送信する。モーダル種別の送信には、たとえばHTTPヘッダを使って送信することができる。
【００４８】
ステップS23では、モーダル管理部24は、注文受付コントローラ21から処理要求元であるブラウザ用のコンテンツと、処理要求元のブラウザに同期する他のブラウザ用の同期コンテンツ取得用URLとを取得する。処理要求元のブラウザ用のコンテンツは、選択処理部26で抽出されたコンテンツ生成ファイルと、注文システム22の処理結果データとから生成されたものである。また、同期コンテンツ取得用URLは、処理要求元のブラウザに同期する他のブラウザに対して、コンテンツ生成ファイルと処理結果データから生成されたコンテンツが格納された場所を示すものである。
【００４９】
ステップS24では、モーダル管理部24は処理要求元のブラウザに対して生成されたコンテンツを送信する。
【００５０】
ステップS25では、モーダル管理部24は、処理要求元であるブラウザに同期する他のブラウザに対して、同期コンテンツ取得用URLを通知する。
【００５１】
この後、ステップS11に移行する。
【００５２】
選択処理部26の動作を図６に示すフローチャートに基づいて説明する。
【００５３】
ステップS31では、選択処理部26は注文受付コントローラ21を介して注文システム22からの処理結果と、同期するモーダル種別情報とを受け取る。
【００５４】
ステップS32では、選択処理部26は、同期するモーダル種別情報と、コンテンツ生成ファイルの選択定義情報とから、モーダル種別毎のコンテンツ生成ファイルを選択する。前述したように、選択処理部26は図８に示すような選択定義情報25から、該当するコンテンツ生成ファイル27、28を抽出する。
【００５５】
ステップS33では、選択処理部26は、選択された各コンテンツ生成ファイルに、注文システム22における処理結果データを転送する。たとえば、図９に示すようなHTMLコンテンツ生成ファイル27および図10に示すようなVXMLコンテンツ生成ファイルに、図７に示されるような処理結果データが転送され、その結果、注文システム22での処理結果が反映された各ブラウザ用のコンテンツが生成されることとなる。
【００５６】
ステップS34では、選択処理部26は、生成された各コンテンツをファイルに保存する。処理要求元に対するコンテンツは必ずしも保存する必要はなく、モーダル管理部24を介して返信するだけであってもよい。
【００５７】
ステップS35では、選択処理部26は、処理要求元であるブラウザに対して生成されたコンテンツを返信するとともに、同期する他のブラウザに対して同期コンテンツ取得用URLを通知する。
【００５８】
コンテンツ管理部31の動作について図11に示すフローチャートに基づいて説明する。
【００５９】
ステップS41では、コンテンツ管理部31はイベント待ちの状態となっており、ブラウザからコンテンツ取得要求があった場合にはステップS42に移行する。
【００６０】
ステップS42では、コンテンツ管理部31はブラウザからのコンテンツ取得要求に基づいて保存されたコンテンツを読み出して要求元のブラウザに返信する。この場合、同期コンテンツの取得通知を受けたブラウザからのコンテンツ取得要求であり、この取得要求中にはモーダル管理部24から通知された同期コンテンツ取得用URLが含まれている。コンテンツ管理部31は、ブラウザからの取得要求中に含まれる同期コンテンツ取得用URLに基づいて同期コンテンツを読み出し、これを要求元であるブラウザに送信する。
【００６１】
ステップS43では、コンテンツ管理部31はブラウザから要求されて送信済みとなったコンテンツを削除する。
【００６２】
<第２実施形態>
本発明の第２実施例形態に係るマルチモーダルインターフェイスシステムの全体構成を図13に示す。
【００６３】
この第２実施形態では、第１実施形態と同様にして、サーバ20は、現在同期しているモーダルおよびブラウザに関する情報を管理するモーダル管理部24、モーダル管理部24を介してブラウザからの入力データを受け取る注文受付コントローラ21、注文受付コントローラ21からの依頼に応じて実際の注文処理を行う注文システム22、コンテンツ生成ファイルの選択定義情報25に基づいてコンテンツ生成ファイルを選択する選択処理部26、ブラウザからの同期コンテンツ取得要求に応じてコンテンツデータを出力するコンテンツ管理部31を備えている。
【００６４】
第２実施形態では、第１実施形態のように選択処理部26によって選択されたコンテンツ生成ファイル27,28からモーダル種別毎にコンテンツファイルを生成するのではなく、コンテンツを生成するために必要となるデータだけを内部メモリに保持し必要に応じてモーダル種別毎のコンテンツを生成するようにしている。
【００６５】
モーダル管理部24の動作は、第１実施形態の場合と同様であるためここでは省略する。選択処理部26の動作を図14のフローチャートに基づいて説明する。
【００６６】
ステップS51では、選択処理部26は注文受付コントローラ21を介して注文システム22からの処理結果と、同期するモーダル種別情報とを受け取る。
【００６７】
ステップS52では、選択処理部26は、同期するモーダル種別情報と、コンテンツ生成ファイルの選択定義情報とから、モーダル種別毎のコンテンツ生成ファイルを選択する。前述したように、選択処理部26は図８に示すような選択定義情報25から、該当するコンテンツ生成ファイル27、28を抽出する。
【００６８】
ステップS53では、選択処理部26は、選択された各コンテンツ生成ファイルのうち、処理要求元であるブラウザのモーダル以外の同期するモーダルに対するコンテンツ生成ファイル名と、注文システム22における処理結果データを識別IDとともに内部テーブルに格納する。この内部テーブルは、たとえば、図15に示すように、識別ID、処理結果データID、入力モーダル名、適用するコンテンツ生成ファイル名などの項目で構成されており、各コンテンツを生成するために必要となるコンテンツデータで構成されている。処理結果データは、注文システム22の処理結果をテーブルにしたものであり、たとえば、図16に示すように各項目に対応するデータで構成され、処理結果データID（図では”errデータ１”）が付されている。
【００６９】
ステップS54では、選択処理部26は、選択された各コンテンツ生成ファイルのうち、処理要求元であるブラウザのモーダルに対応したコンテンツ生成ファイルに、注文システム22における処理結果データを転送して、コンテンツを生成する。
【００７０】
ステップS55では、選択処理部26は、処理要求元であるブラウザに対して生成したコンテンツを返信するとともに、識別IDを付加した同期コンテンツ取得用URLを生成し、同期するブラウザに対して、同期コンテンツ取得用URLを対応するブラウザに通知する。
【００７１】
コンテンツ管理部31の動作について図17に示すフローチャートに基づいて説明する。
【００７２】
ステップS61では、コンテンツ管理部31はイベント待ちの状態となっており、ブラウザからコンテンツ取得要求があった場合にはステップS62に移行する。
【００７３】
ステップS62では、コンテンツ管理部31はブラウザからのコンテンツ取得要求に基づいて、識別IDを抽出する。この場合、同期コンテンツの取得通知を受けたブラウザからのコンテンツ取得要求であり、この取得要求中にはモーダル管理部24から通知された同期コンテンツ取得用URLが含まれている。この同期コンテンツ取得用URLには、選択処理部26ｈによって生成された内部テーブルの識別IDが格納されており、コンテンツ管理部31はこの識別IDを抽出する。
【００７４】
ステップS63では、コンテンツ管理部31は、取得要求元のブラウザのモーダル種別を取得する。
【００７５】
ステップS64では、コンテンツ管理部31は、選択管理部26によって生成された内部テーブルと識別IDを元にして、要求元ブラウザのモーダル種別に対応するコンテンツ生成ファイル名および処理結果データを取得する。
【００７６】
ステップS65では、コンテンツ管理部31は、取得したコンテンツ生成ファイルに処理結果データを転送し、ブラウザに対応するコンテンツを生成する。
【００７７】
ステップS66では、コンテンツ管理部31は、生成したコンテンツを要求元のブラウザに返信する。
【００７８】
ステップS67では、コンテンツ管理部31は、送信したコンテンツの識別IDに対応する要求元ブラウザのモーダル種別の該当欄を削除する。
【００７９】
たとえば、モーダル種別がVXMLであるブラウザがコンテンツ管理部31に対して「識別id001」を指定してコンテンツ要求を行った場合は、図15の内部テーブルから適用すべきコンテンツ生成ファイル名として、「merr_vxml.jsp」と処理結果データとして「errデータ１」を抽出し、「merr_vxml.jsp」に処理結果データ「errデータ１」の内容を転送することで要求元ブラウザに対してコンテンツを生成し、生成されたコンテンツを要求元ブラウザに返信する。
【００８０】
（付記１）
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムにおけるモーダル同期制御方法であって、
予め同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を準備しておき、
ブラウザからの処理要求に対して、前記選択定義情報を参照し、前記ブラウザと同期する他のブラウザとモーダルとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択する段階と、
処理要求元であるブラウザに対して、前記選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、前記ブラウザと同期する他のブラウザに対して、前記選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力する段階と、
を含むモーダル同期制御方法。
【００８１】
（付記２）
同期する他のブラウザに対してコンテンツの取得通知を行う段階と、
前記同期する他のブラウザからの取得要求に応じてコンテンツを出力する段階と、
をさらに含む、付記１に記載のモーダル同期制御方法。
【００８２】
（付記３）
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムにおけるモーダル同期制御方法のプログラムであって、
ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、前記ブラウザと同期する他のブラウザとのモーダルの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択するステップと、
処理要求元であるブラウザに対して、前記選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、前記ブラウザと同期する他のブラウザに対して、前記選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力するステップと、
を含むモーダル同期制御方法をコンピュータに実行させるためのプログラム。
【００８３】
（付記４）
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、
ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、前記ブラウザと同期する他のブラウザとのモーダルの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択する選択処理部と、
処理要求元であるブラウザに対して、前記選択されたコンテンツ生成ファイルを適用して生成されたコンテンツを出力すると共に、前記ブラウザと同期する他のブラウザに対して、前記選択されたコンテンツ生成ファイルのうち対応するコンテンツ生成ファイルを適用して生成されたコンテンツを出力するコンテンツ出力部と、
を備えるマルチモーダルインターフェイスシステム。
【００８４】
（付記５）
同期する複数のモーダルの組み合わせを管理するモーダル管理部をさらに備える、付記４に記載のマルチモーダルインターフェイスシステム。
【００８５】
（付記６）
前記モーダル管理部は、ブラウザからの処理要求を受け付けるとともに、前記コンテンツ出力部により生成されたコンテンツを処理要求元であるブラウザに送出する、付記５に記載のマルチモーダルインターフェイスシステム。
【００８６】
（付記７）
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、
同期する複数のモーダルの組み合わせを管理するとともに、各モーダルとの情報の送受信を行うモーダル管理部と、
ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、前記ブラウザと同期する他のブラウザとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択し、各モーダル毎のコンテンツ生成ファイルにて当該モーダルに対応したコンテンツを生成し、処理要求元であるブラウザに対してコンテンツ生成ファイルで生成されたコンテンツを出力するとともに、同期する他のブラウザに対してコンテンツ生成ファイルにて生成されたコンテンツを取得するための取得要求情報をモーダル管理部に通知する選択処理部と、
同期する他のブラウザから送信されてきた取得要求情報に応じて、当該取得要求情報に対応するコンテンツを当該ブラウザに出力するコンテンツ管理部と、
を備えるマルチモーダルインターフェイスシステム。
【００８７】
（付記８）
前記コンテンツ管理部は、処理要求元であるブラウザに同期する他のブラウザからの取得要求に対して対応するコンテンツを出力した後、生成されたコンテンツを削除する機能をさらに備える、付記７に記載のマルチモーダルインターフェイスシステム。
【００８８】
（付記９）
特定のモーダルに対するコンテンツを解釈してユーザとのインタラクションを行うブラウザを各モーダル毎に備え、前記いずれかのブラウザからの処理要求に応じて情報処理を行い、処理結果を元にコンテンツを生成して各ブラウザに出力するマルチモーダルインターフェイスシステムであって、
同期する複数のモーダルの組み合わせを管理するとともに、各モーダルとの情報の送受信を行うモーダル管理部と、
ブラウザからの処理要求に対して、同期する複数のモーダルの組み合わせに応じて適用すべきモーダル種別毎のコンテンツ生成ファイルを対応付けて記憶された選択定義情報を参照し、前記ブラウザと同期する他のブラウザとの組み合わせからモーダル毎に適用すべきコンテンツ生成ファイルを選択し、処理要求元であるブラウザに対してコンテンツ生成ファイルで生成されたコンテンツを出力するとともに、同期する他のブラウザに対して、選択されたコンテンツ生成ファイルを識別する情報とブラウザからの処理要求に応じて実行された処理の処理結果に関する情報とを対応付けて記憶し、さらにコンテンツを取得するための取得要求情報をモーダル管理部に通知する選択処理部と、
同期する他のブラウザから送信されてきた取得要求情報に応じて、当該取得要求情報に対応するコンテンツ生成ファイルと処理結果に関する情報からコンテンツを生成し、生成したコンテンツを当該ブラウザに出力するコンテンツ管理部と、
を備えるマルチモーダルインターフェイスシステム。
【産業上の利用可能性】
【００８９】
以上のようにした本発明によれば、Webアプリケーション開発者は、VIEWに相当するモーダル種別毎のコンテンツ生成ファイルと、同期するモーダル種別の組み合わせと適用するコンテンツ生成ファイルの組み合わせとを定義するためのコンテンツ生成ファイルの選択定義情報を記述するだけで、既存のシングルモーダル用のWEBアプリケーションをマルチモーダルインターフェイスシステムに対応させることが可能となる。
【図面の簡単な説明】
【００９０】
【図１】シングルモーダル用Webアプリケーションの構成図。
【図２】第１実施形態のマルチモーダルインターフェイスシステムの構成図。
【図３】モーダル管理部の動作を示すフローチャート。
【図４】モーダル管理テーブルの説明図。
【図５Ａ】HTMLブラウザ用初期画面の説明図。
【図５Ｂ】VXMLブラウザ用初期対話の説明図。
【図６】モーダル管理部の動作を示すフローチャート。
【図７】処理結果データの説明図。
【図８】コンテンツ生成ファイルの選択定義情報の説明図。
【図９】HTMLコンテンツ生成ファイルの説明図。
【図１０】VXMLコンテンツ生成ファイルの説明図。
【図１１】コンテンツ管理部の動作を示すフローチャート。
【図１２Ａ】HTMLブラウザ用コンテンツのフローチャート。
【図１２Ｂ】VXMLブラウザ用コンテンツのフローチャート。
【図１３】第２実施形態の構成図。
【図１４】選択処理部の動作を示すフローチャート。
【図１５】選択処理部によって生成される内部テーブルの説明図。
【図１６】処理結果データの説明図。
【図１７】コンテンツ管理図の動作を示すフローチャート。
【図１】
2005148807.tif 000003
【図２】
2005148807.tif 000004
【図３】
2005148807.tif 000005
【図４】
2005148807.tif 000006
【図５Ａ】
2005148807.tif 000007
【図５Ｂ】
2005148807.tif 000008
【図６】
2005148807.tif 000009
【図７】
2005148807.tif 000010
【図８】
2005148807.tif 000011
【図９】
2005148807.tif 000012
【図１０】
2005148807.tif 000013
【図１１】
2005148807.tif 000014
【図１２Ａ】
2005148807.tif 000015
【図１２Ｂ】
2005148807.tif 000016
【図１３】
2005148807.tif 000017
【図１４】
2005148807.tif 000018
【図１５】
2005148807.tif 000019
【図１６】
2005148807.tif 000020
【図１７】
2005148807.tif 000021