(57)【特許請求の範囲】
【請求項１】
インターネットおよび通信網に接続されたクライアント装置と、前記インターネットに接続され、前記クライアント装置のウェブブラウザにおいて実行されるインターネットアプリケーションと第１の通信アプリケーションとを記憶する連携アプリケーション配信ウェブサーバ装置と、前記クライアント装置のアプリケーションランタイムにおいて実行される第２の通信アプリケーションを記憶する通信アプリケーション配信ウェブサーバ装置とを具備するインターネット・通信網連携アプリケーション提供システムにおいて、
前記クライアント装置は、
当該クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作しているか否かを判定する手段と、前記第２の通信アプリケーションが動作していない場合に、前記連携アプリケーション配信ウェブサーバ装置から前記第１の通信アプリケーションをダウンロードする手段と、当該ダウンロードした第１の通信アプリケーションを前記ウェブブラウザに実行させる手段と、前記実行された第１の通信アプリケーションを介して通信網と通信を行う手段と、して機能させるための前記インターネットアプリケーションを前記連携アプリケーション配信ウェブサーバ装置からダウンロードするダウンロード部と、
前記ダウンロード部がダウンロードした前記インターネットアプリケーションを実行する実行部と、
を備える
ことを特徴とするインターネット・通信網連携アプリケーション提供システム。
【請求項２】
前記インターネットアプリケーションは、前記クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作していない場合に、前記通信アプリケーション配信ウェブサーバ装置から前記第２の通信アプリケーションをダウンロードする手段と、当該ダウンロードした第２の通信アプリケーションを前記アプリケーションランタイムに実行させる手段と、して機能させる
ことを特徴とする請求項１に記載のインターネット・通信網連携アプリケーション提供システム。
【請求項３】
前記インターネットアプリケーションは、前記クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作している場合に、当該第２の通信アプリケーションを介して通信網と通信を行う手段として機能させる
ことを特徴とする請求項１または請求項２のいずれか１項に記載のインターネット・通信網連携アプリケーション提供システム。
【請求項４】
インターネットおよび通信網に接続されたクライアント装置と、前記インターネットに接続され、前記クライアント装置のウェブブラウザにおいて実行されるインターネットアプリケーションと第１の通信アプリケーションとを記憶する連携アプリケーション配信ウェブサーバ装置と、前記クライアント装置のアプリケーションランタイムにおいて実行される第２の通信アプリケーションを記憶する通信アプリケーション配信ウェブサーバ装置とを具備するインターネット・通信網連携アプリケーション提供システムにおいて、
前記クライアント装置のダウンロード部が、当該クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作しているか否かを判定する手段と、前記第２の通信アプリケーションが動作していない場合に、前記連携アプリケーション配信ウェブサーバ装置から前記第１の通信アプリケーションをダウンロードする手段と、当該ダウンロードした第１の通信アプリケーションを前記ウェブブラウザに実行させる手段と、前記実行された第１の通信アプリケーションを介して通信網と通信を行う手段と、して機能させるための前記インターネットアプリケーションをダウンロードするステップと、
前記クライアント装置の実行部が、前記ダウンロードしたインターネットアプリケーションを実行するステップと、
を含むことを特徴とするインターネット・通信網連携方法。
【請求項５】
前記インターネットアプリケーションは、前記クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作していない場合に、前記第２の通信アプリケーションを前記通信アプリケーション配信ウェブサーバ装置からダウンロードする手段と、当該ダウンロードした第２の通信アプリケーションを前記アプリケーションランタイムに実行させる手段と、して機能させる
ことを特徴とする請求項４に記載のインターネット・通信網連携方法。
【請求項６】
前記インターネットアプリケーションは、前記クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作している場合に、当該第２の通信アプリケーションを介して通信網と通信を行う手段として機能させる
ことを特徴とする請求項４または請求項５のいずれか１項に記載のインターネット・通信網連携方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ユーザがウェブブラウザによってアプリケーションを実行するインターネットアプリケーションシステムに係り、特に、インターネットとＳＩＰ（Ｓｅｓｓｉｏｎ  
Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ）ネットワーク等の通信網との連携を可能とするインターネット・通信網連携アプリケーション提供システムおよびインターネット・通信網連携方法に関する。
【背景技術】
【０００２】
インターネットの爆発的な普及およびブロードバンド化により、インターネット上の様々なサービスをウェブブラウザによって利用することが一般的になっている。ユーザは、ウェブブラウザを用いてインターネットのウェブサーバ上にあるＨＴＭＬ（Ｈｙｐｅｒ  
Ｔｅｘｔ  Ｍａｒｋｕｐ  Ｌａｎｇｕａｇｅ）によって記述されたウェブページにアクセスし、インターネットサービスを利用する。近年は、ＪａｖａＳｃｒｉｐｔ（登録商標）などウェブブラウザ上のスクリプトエンジンで実行されるスクリプト言語や、プラグインによってＦｌａｓｈ（登録商標）、Ｊａｖａ（登録商標）などの実行環境により、単なるＨＴＭＬ以上の機能を備えたリッチインターネットアプリケーションも広く利用されている。
【０００３】
一方、２００８年３月に商用サービスが開始された次世代の通信網であるＮＧＮ（Ｎｅｘｔ  Ｇｅｎｅｒａｔｉｏｎ  Ｎｅｔｗｏｒｋ）は、インターネットにはない帯域保証型などの特徴を生かしたサービスを提供することが可能であり、インターネットと連携することにより、それぞれの特徴を生かした連携サービスが提供可能であると期待されている。ＮＧＮの通信機能を利用するためには、次世代ネットワークの主要プロトコルであるＳＩＰによるシグナリングを行う必要がある。
【０００４】
そのようなＳＩＰネットワークとインターネットの連携サービスを提供するリッチインターネットアプリケーション（以下、連携ＲＩＡという）を、ＳＩＰに関する専門知識を持たない既存のインターネット系開発者でも容易に可能とするための技術が提案されている（例えば、非特許文献１および非特許文献２参照）。
【先行技術文献】
【非特許文献】
【０００５】
【非特許文献１】西村豪生、大西浩行、「Ｗｅｂ−ＳＩＰ連携リッチインターネットアプリケーションの実現方式に関する一考察」、信学総大、Ｂ−１９−１７、松山、２００９年５月
【非特許文献２】西村豪生、大西浩行、飯尾政美、「Ｗｅｂ−ＳＩＰ連携リッチインターネットアプリケーションにおけるＳＩＰ通信機能部の実装と評価」、信学ソ大、Ｂ−１９−６、新潟、２００９年９月
【発明の概要】
【発明が解決しようとする課題】
【０００６】
非特許文献１および非特許文献２には、連携ＲＩＡだけでなく、ＳＩＰコンポーネントもリッチインターネットアプリケーションとして実行時に端末に動的に配備する手法の実現方式として２つの方法が記載されている。１つは、ＳＩＰコンポーネントを連携ＲＩＡが埋め込まれたＨＴＭＬに埋め込む方式である。もう１つは、ＳＩＰコンポーネントをブラウザ外のアプリケーションとして起動する方式である。
【０００７】
ＳＩＰコンポーネントを連携ＲＩＡが埋め込まれたＨＴＭＬに埋め込む方式では、毎回ＳＩＰコンポーネントを起動するため中程度の起動遅延が生じる。一方、ＳＩＰコンポーネントをブラウザ外のアプリケーションとして起動する方式では初回実行時はブラウザ外のアプリケーションであるＳＩＰコンポーネントを起動するため大きな起動遅延が生じるが、二回目以降の起動時は既に実行中のＳＩＰコンポーネントを再利用するため、小起動遅延での実行が可能である。そのため、動的にＳＩＰコンポーネントを端末に配備する方式を用いてリアルタイムサービスを提供する場合、二回目以降の実行時の遅延時間が小さいＳＩＰコンポーネントをブラウザ外のアプリケーションとして起動する方式が最適である。
【０００８】
しかしながら、ＳＩＰコンポーネントをブラウザ外のアプリケーションとして起動する方式では、初回実行時には、ＳＩＰネットワークと連携するリッチインターネットアプリケーションの起動遅延時間が増加するという問題がある。
【０００９】
本発明は、このような事情に鑑みてなされたもので、通信網と連携するリッチインターネットアプリケーションの起動遅延時間をより減少させることができるインターネット・通信網連携アプリケーション提供システムおよびインターネット・通信網連携方法を提供することを目的とする。
【課題を解決するための手段】
【００１０】
本発明は、インターネットおよび通信網に接続されたクライアント装置と、前記インターネットに接続され、前記クライアント装置のウェブブラウザにおいて実行されるインターネットアプリケーションと第１の通信アプリケーションとを記憶する連携アプリケーション配信ウェブサーバ装置と、前記クライアント装置のアプリケーションランタイムにおいて実行される第２の通信アプリケーションを記憶する通信アプリケーション配信ウェブサーバ装置とを具備するインターネット・通信網連携アプリケーション提供システムにおいて、前記クライアント装置は、当該クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作しているか否かを判定する手段と、前記第２の通信アプリケーションが動作していない場合に、前記連携アプリケーション配信ウェブサーバ装置から前記第１の通信アプリケーションをダウンロードする手段と、当該ダウンロードした第１の通信アプリケーションを前記ウェブブラウザに実行させる手段と、前記実行された第１の通信アプリケーションを介して通信網と通信を行う手段と、して機能させるための前記インターネットアプリケーションを前記連携アプリケーション配信ウェブサーバ装置からダウンロードするダウンロード部と、前記ダウンロード部がダウンロードした前記インターネットアプリケーションを実行する実行部と、を備えることを特徴とするインターネット・通信網連携アプリケーション提供システムである。
【００１１】
この構成によれば、第２の通信アプリケーションがアプリケーションランタイムで動作していない場合、第１の通信アプリケーションを起動させて第１の通信アプリケーションを介して通信網と通信を行うため、通信網と連携するインターネット・通信網連携アプリケーションの起動遅延時間をより減少させることができる。
【００１２】
また、本発明のインターネット・通信網連携アプリケーション提供システムにおいて、前記インターネットアプリケーションは、前記クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作していない場合に、前記通信アプリケーション配信ウェブサーバ装置から前記第２の通信アプリケーションをダウンロードする手段と、当該ダウンロードした第２の通信アプリケーションを前記アプリケーションランタイムに実行させる手段と、して機能させることを特徴とする。
【００１３】
この構成によれば、第２の通信アプリケーションを介して通信網と通信を行う前に、予め、第２の通信アプリケーションをダウンロードし、ダウンロードした第２の通信アプリケーションをアプリケーションランタイムに実行させることができる。
【００１４】
また、本発明のインターネット・通信網連携アプリケーション提供システムにおいて、前記インターネットアプリケーションは、前記クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作している場合に、当該第２の通信アプリケーションを介して通信網と通信を行う手段として機能させることを特徴とする。
【００１５】
この構成によれば、予めアプリケーションランタイムで動作している第２の通信アプリケーションを介して通信網と通信を行うことができるため、通信網と連携するインターネット・通信網連携アプリケーションの起動遅延時間をより減少させることができる。
【００１６】
また、本発明は、インターネットおよび通信網に接続されたクライアント装置と、前記インターネットに接続され、前記クライアント装置のウェブブラウザにおいて実行されるインターネットアプリケーションと第１の通信アプリケーションとを記憶する連携アプリケーション配信ウェブサーバ装置と、前記クライアント装置のアプリケーションランタイムにおいて実行される第２の通信アプリケーションを記憶する通信アプリケーション配信ウェブサーバ装置とを具備するインターネット・通信網連携アプリケーション提供システムにおいて、前記クライアント装置のダウンロード部が、当該クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作しているか否かを判定する手段と、前記第２の通信アプリケーションが動作していない場合に、前記連携アプリケーション配信ウェブサーバ装置から前記第１の通信アプリケーションをダウンロードする手段と、当該ダウンロードした第１の通信アプリケーションを前記ウェブブラウザに実行させる手段と、前記実行された第１の通信アプリケーションを介して通信網と通信を行う手段と、して機能させるための前記インターネットアプリケーションをダウンロードするステップと、前記クライアント装置の実行部が、前記ダウンロードしたインターネットアプリケーションを実行するステップと、を含むことを特徴とするインターネット・通信網連携方法である。
【００１７】
また、本発明のインターネット・通信網連携方法において、前記インターネットアプリケーションは、前記クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作していない場合に、前記第２の通信アプリケーションを前記通信アプリケーション配信ウェブサーバ装置からダウンロードする手段と、当該ダウンロードした第２の通信アプリケーションを前記アプリケーションランタイムに実行させる手段と、して機能させることを特徴とする。
【００１８】
また、本発明のインターネット・通信網連携方法において、前記インターネットアプリケーションは、前記クライアント装置を、前記アプリケーションランタイムにおいて前記第２の通信アプリケーションが動作している場合に、当該第２の通信アプリケーションを介して通信網と通信を行う手段として機能させることを特徴とする。
【発明の効果】
【００１９】
本発明によれば、第２の通信アプリケーションがアプリケーションランタイムで動作していない場合、第１の通信アプリケーションを起動させて第１の通信アプリケーションを介して通信網と通信を行うため、通信網と連携するインターネット・通信網連携アプリケーションの起動遅延時間をより減少させることができる。
【図面の簡単な説明】
【００２０】
【図１】本発明の一実施形態によるインターネット・通信網連携アプリケーション提供システムの構成を示すブロック図である。
【図２】本実施形態におけるＳＩＰネットワークとインターネットが連携したアプリケーションの初回実行時の手順を示したシーケンス図である。
【図３】本実施形態におけるＳＩＰネットワークとインターネットが連携したアプリケーションの二回目以降の実行時の手順を示したシーケンス図である。
【図４】本実施形態におけるＳＩＰネットワークとインターネットが連携したアプリケーションの実行手順を示したフローチャートである。
【発明を実施するための形態】
【００２１】
最初に、実施形態の概要を述べる。本実施形態によるインターネット・通信網連携アプリケーション提供システムにおいては、ＳＩＰ通信アプリケーションと、ブラウザ上でユーザインタフェースを提供するリッチインターネットアプリケーションとを分離する。ウェブ系開発者は、リッチインターネットアプリケーション部のみを従来から持つウェブ系の開発知識のみを用いて実装する。ＳＩＰ通信アプリケーションはＳＩＰの専門知識を持った開発者によって実装される。リッチインターネットアプリケーション内でＳＩＰネットワークとの連携を行いたい場合には、ＳＩＰ通信アプリケーションが提供するインタフェース（ＡＰＩ：Ａｐｐｌｉｃａｔｉｏｎ  Ｐｒｏｇｒａｍ  Ｉｎｔｅｒｆａｃｅ）経由でシグナリングをＳＩＰ通信アプリケーションに依頼する。また、リッチインターネットアプリケーションとＳＩＰ通信アプリケーションを一つのＨＴＭＬに埋め込むことで、ＨＴＭＬに記述されたスクリプト言語を両者の通信インタフェースとして用いる。
【００２２】
以下、図面を参照し、さらに詳細に説明する。図１は、本発明の一実施形態によるインターネット・通信網連携アプリケーション提供システム（以下、連携アプリケーション提供システムという）の全体の構成図である。連携アプリケーション提供システム００は、ＳＩＰネットワーク５０とインターネット４０とに接続されたクライアント２０と、インターネット４０上に存在する連携アプリケーション配信サーバ１０と、インターネット４０上に存在するＳＩＰコンポーネント配信ウェブサーバ３０から構成される。
【００２３】
連携アプリケーション配信ウェブサーバ１０は、ＳＩＰネットワーク５０とインターネット４０双方と連携するサービスを提供するウェブサイトである。連携アプリケーション配信ウェブサーバ１０には、ウェブサイトの内容が記述されたＨＴＭＬ１１と、連携サービスを提供するリッチインターネットアプリケーションである連携ＲＩＡ１２と、ＳＩＰ通信機能を持ったリッチインターネットアプリケーションであるＳＩＰコンポーネントＡ１３とが記憶されている。
【００２４】
ＳＩＰコンポーネントＡ１３は、ＳＩＰ通信機能を共通コンポーネントとして分離したものである。連携ＲＩＡ１２が、ＳＩＰコンポーネントＡ１３が提供するＡＰＩ経由でＳＩＰネットワーク５０との連携を依頼すると、ＳＩＰコンポーネントＡ１３はＳＩＰネットワーク５０上の対向ＳＩＰ端末５１とＳＩＰメッセージを交換することによって、連携ＲＩＡ１２が必要なＳＩＰ通信を代行する。
【００２５】
ＳＩＰコンポーネント配信ウェブサーバ３０は、共通コンポーネントであるＳＩＰ通信機能をもったリッチインターネットアプリケーションであるＳＩＰコンポーネントであるＳＩＰコンポーネントＢ３１を提供するウェブサーバである。ＳＩＰコンポーネントＢ３１は、ＳＩＰコンポーネントＡ１３が提供するＡＰＩと論理的に同等のＡＰＩを提供しており、連携ＲＩＡ１２が必要なＳＩＰ通信を代行する。連携ＲＩＡ１２はＳＩＰコンポーネントＡ１３またはＳＩＰコンポーネントＢ３１のどちらのＡＰＩを使っても必要なＳＩＰ通信を行うことが出来る。
【００２６】
クライアント２０は、ウェブブラウザ２１とアプリケーションランタイム（ＳＩＰ−Ｂ）２５とを具備した端末である。ウェブブラウザ２１はウェブサイトへのアクセス機能を有し、ＵＲＬを入力することで特定のウェブサイトへアクセスし、そのウェブサイトのコンテンツをダウンロードして端末に表示する。ウェブブラウザ２１は、ＨＴＭＬ１１に記述されたスクリプトを実行するスクリプト実行エンジン２２と、リッチインターネットアプリケーションを実行するアプリケーションランタイムを具備する。アプリケーションランタイムは、連携ＲＩＡ１２を実行するためのランタイムエンジンであるアプリケーションランタイム（ＲＩＡ）２３と、ＳＩＰコンポーネントＡ１３を実行するためのアプリケーションランタイム（ＳＩＰ−Ａ）２４とから構成される。アプリケーションランタイム（ＳＩＰ−Ｂ）２５はブラウザ外で実行されるリッチインターネットアプリケーションのランタイムエンジンであり、ＳＩＰコンポーネントＢ３１を実行するために用いられる。
【００２７】
図１に示す例では、アプリケーションランタイム（ＲＩＡ）２３とアプリケーションランタイム（ＳＩＰ−Ａ）２４とは別のランタイムエンジンとして記述されているが、これが同一であってもかまわない。その場合は、同一のアプリケーションランタイム上で連携ＲＩＡ１２とＳＩＰコンポーネントＡ１３とは実行されるが、両者はそれぞれ独立した異なるインスタンスとして実行されるため、リッチインターネットアプリケーションのふるまいは二つのアプリケーションランタイムがある場合と論理的に同一である。
【００２８】
次に、本実施形態における連携アプリケーションのダウンロード、実行手順について図を参照して説明する。図２は、本実施形態において、連携アプリケーション提供システムにおけるＳＩＰネットワークとインターネットが連携したアプリケーションの初回実行時の手順を示したシーケンス図である。
【００２９】
クライアント２０はウェブブラウザ２１を用いてＵＲＬを入力し、連携アプリケーション配信ウェブサーバ１０にアクセスする（ステップＳ０１）。すると、連携アプリケーション配信ウェブサーバ１０は、ＨＴＭＬ１１をウェブブラウザ２１に送信する。これにより、ウェブブラウザ２１はＨＴＭＬ１１を取得する（ステップＳ０２）。ＨＴＭＬ１１には画面の描画情報に加えて、このサイトにはリッチインターネットアプリケーションである連携ＲＩＡ１２（インターネットアプリケーション）が埋め込まれているという情報が含まれている。
【００３０】
ウェブブラウザ２１はＨＴＭＬ１１ａ（以下、クライアント２０にダウンロードされたＨＴＭＬおよびアプリケーションにはサフィックスａを付ける）を解釈し、ＨＴＭＬ１１内に記述されたスクリプトをスクリプト実行エンジン２２（ダウンロード部）によって実行（ステップＳ０３）することで、そこに埋め込まれた連携ＲＩＡ１２をインターネット経由でダウンロードし、ブラウザ２１上のアプリケーションランタイム（ＲＩＡ）２３（実行部）によって連携ＲＩＡ１２ａを実行する（ステップＳ０４〜ステップＳ０６）
【００３１】
アプリケーションランタイム（ＲＩＡ）２３によって実行された連携ＲＩＡ１２ａは、ＳＩＰネットワーク５０と連携するために、ＳＩＰコンポーネントのＡＰＩ呼び出しを試みる。まず、連携ＲＩＡ１２ａは、アプリケーションランタイム（ＳＩＰ−Ｂ）２５上でＳＩＰコンポーネントＢ３１ａ（第２の通信アプリケーション）が実行されているか否かを判定する（ステップＳ０７）。この判定は、連携ＲＩＡ１２ａが、アプリケーションランタイム（ＳＩＰ−Ｂ）２５に問い合わせ、アプリケーションランタイム（ＳＩＰ−Ｂ）２５上で実行しているリッチインターネットアプリケーションの状態を取得することで行うことが出来る。なお、アプリケーションランタイム（ＳＩＰ−Ｂ）２５上でＳＩＰコンポーネントＢ３１ａが実行されているか否かの判定による遅延時間を最小化することが重要であるため、本来ＳＩＰコンポーネントＢ３１ａが使用するべきポート番号が占有されている場合は、アプリケーションランタイム（ＳＩＰ−Ｂ）２５上でＳＩＰコンポーネントＢ３１ａが実行されていると判定するなど、簡便な方法で行っても良い。
【００３２】
ＳＩＰネットワークとインターネットが連携したアプリケーションの初回実行時には、ＳＩＰコンポーネントＢ３１ａはアプリケーションランタイム（ＳＩＰ−Ｂ）２５上で実行されていない。そのため、連携ＲＩＡ１２ａは、アプリケーションランタイム（ＳＩＰ−Ｂ）２５上でＳＩＰコンポーネントＢ３１ａが実行されていないと判定する（ステップＳ０８）。その後、連携ＲＩＡ１２ａは、スクリプト実行エンジン２２上で実行されているＨＴＭＬのインタフェース経由で、スクリプト実行エンジン２２にＳＩＰコンポーネントの起動を要求する（ステップＳ０９）
【００３３】
スクリプト実行エンジン２２は、ＳＩＰコンポーネントの起動が要求されると、まず連携アプリケーション配信ウェブサーバ１０からＳＩＰコンポーネントＡ１３（第１の通信アプリケーション）をインターネット４０経由でダウンロードし、ブラウザ２１上のアプリケーションランタイム（ＳＩＰ−Ａ）２４によってＳＩＰコンポーネントＡ１３ａを実行する（ステップＳ１０〜ステップＳ１２）。これは、ＳＩＰコンポーネントＡ１３ａの起動時間がＳＩＰコンポーネントＢ３１ａの起動時間よりも短いため、ＳＩＰコンポーネントＡ１３ａを用いた方が遅延時間を最小化することができるからである。
【００３４】
ＳＩＰコンポーネントＡ１３ａが起動されたことをスクリプト実行エンジン２２から連携ＲＩＡ１２ａに通知されると、連携ＲＩＡ１２ａは、ＳＩＰコンポーネントＡ１３ａに、ＳＩＰコンポーネントＡ１３ａのＡＰＩ経由でＳＩＰ通信を依頼する（ステップＳ１３、ステップＳ２１４）。ＳＩＰコンポーネントＡ１３ａは、適切なＳＩＰ通信の交換を行い、ＳＩＰネットワーク５０上の対向ＳＩＰ端末５１との連携を行う（ステップＳ１５）。
【００３５】
なお、スクリプト実行エンジン２２は、ＳＩＰコンポーネントの起動要求を受け付けると、ＳＩＰコンポーネントＡ１３ａだけではなく、ＳＩＰコンポーネントＢ３１ａをＳＩＰコンポーネント配信ウェブサーバ３０からインターネット４０経由でダウンロードし、アプリケーションランタイム（ＳＩＰ−Ｂ）２５によってＳＩＰコンポーネントＢ３１ａを実行する（ステップＳ１６〜ステップＳ１８）。この処理は、ＳＩＰコンポーネントＡ１３ａの起動処理（ステップＳ１０〜ステップＳ１２）と並行して行うことも可能である。ただし、非特許文献２によると、ＳＩＰコンポーネントＢ３１ａの起動時間はＳＩＰコンポーネントＡ１３ａの起動時間よりも長い。そのため、ＳＩＰコンポーネントＡ１３ａの起動を優先するために、ＳＩＰコンポーネントＡ１３ａの起動処理と並行して行うのではなくＳＩＰコンポーネントＡ１３ａの起動が完了した後に、ＳＩＰコンポーネントＢ３１ａの起動を実行する方が望ましい。
【００３６】
ＳＩＰコンポーネントＡ１３ａは、ユーザが連携アプリケーション配信ウェブサーバ１０によって提供されるサービスの利用を終了して、ウェブブラウザ２１が別のサイトに接続する際（別サイトに遷移する際）に終了する（破棄される）。ただし、ＳＩＰコンポーネントＢ３１ａはウェブブラウザ２１とは独立したアプリケーションランタイム（ＳＩＰ−Ｂ）２５上で実行されているため、そのまま実行状態を維持する。これにより、ウェブブラウザ２１が二回目以降に連携アプリケーション配信ウェブサーバにアクセスした場合には、アプリケーションランタイム（ＳＩＰ−Ｂ）２５上で実行中のＳＩＰコンポーネントＢ３１ａを利用することによって、ＳＩＰコンポーネントを利用するまでの遅延時間を減少させることができる。
【００３７】
図３は、本実施形態において、インターネット・通信網連携アプリケーション提供システムにおけるＳＩＰネットワークとインターネットが連携したアプリケーションの二回目以降の実行時の手順を示したシーケンス図である。
【００３８】
クライアント２０はウェブブラウザ２１を用いてＵＲＬを入力し、連携アプリケーション配信ウェブサーバ１０にアクセスする（ステップＴ０１）。すると、連携アプリケーション配信ウェブサーバ１０は、ＨＴＭＬ１１をウェブブラウザ２１に送信する。これにより、ウェブブラウザ２１はＨＴＭＬ１１を取得する（ステップＴ０２）。ウェブブラウザ２１はＨＴＭＬ１１ａを解釈し、ＨＴＭＬ１１内に記述されたスクリプトをスクリプト実行エンジン２２によって実行（ステップＴ０３）することで、そこに埋め込まれた連携ＲＩＡ１２をインターネット経由でダウンロードし、ブラウザ２１上のアプリケーションランタイム（ＲＩＡ）２３によって連携ＲＩＡ１２ａを実行する（ステップＴ０４〜ステップＴ０６）
【００３９】
アプリケーションランタイム（ＲＩＡ）２３によって実行された連携ＲＩＡ１２ａは、ＳＩＰネットワーク５０と連携するために、ＳＩＰコンポーネントのＡＰＩ呼び出しを試みる。まず、連携ＲＩＡ１２ａは、アプリケーションランタイム（ＳＩＰ−Ｂ）２５上でＳＩＰコンポーネントＢ３１ａが実行されているか否かを判定する（ステップＴ０７）
【００４０】
ＳＩＰネットワークとインターネットが連携したアプリケーションの二回目以降の実行時には、初回実行時に起動したＳＩＰコンポーネントＢ３１ａがアプリケーションランタイム（ＳＩＰ−Ｂ）２５上で実行されている。そのため、連携ＲＩＡ１２は、アプリケーションランタイム（ＳＩＰ−Ｂ）２５上でＳＩＰコンポーネントＢ３１ａが実行されていると判定する（ステップＴ０８）。その場合、連携ＲＩＡ１２はＳＩＰコンポーネントＢ３１ａのＡＰＩ経由で、ＳＩＰコンポーネントＢ３１ａにＳＩＰ通信を依頼する。ＳＩＰコンポーネントＢ３１ａは、ＳＩＰ通信を代行して対向ＳＩＰ端末５１との連携を行う（ステップＴ０９、ステップＴ１０）。
【００４１】
これは、ＳＩＰコンポーネントＡ１３ａを起動し、ＳＩＰコンポーネントＡ１３ａにＳＩＰ通信を代行してもらうよりも、既に起動しているＳＩＰコンポーネントＢ３１ａにＳＩＰ通信を代行してもらう方がＳＩＰコンポーネントを利用するまでの遅延時間を減少させることができるからである。そのため、ＳＩＰネットワークとインターネットが連携したアプリケーションの二回目以降の実行時には、連携ＲＩＡ１２ａは、ＳＩＰコンポーネントＡ１３ａのダウンロードと、アプリケーションランタイム（ＲＩＡ）上でのＳＩＰコンポーネントＡ１３ａの実行は行わない。
【００４２】
次に、フローチャートを参照して、連携アプリケーション提供システムにおける、ＳＩＰネットワークとインターネットが連携したアプリケーションの実行手順について説明する。図４は、本実施形態において、連携アプリケーション提供システムにおけるＳＩＰネットワークとインターネットが連携したアプリケーションの実行手順を示したフローチャートである。
【００４３】
クライアント２０はウェブブラウザ２１に連携アプリケーション配信ウェブサーバ１０のＵＲＬを入力することにより、連携アプリケーション配信ウェブサーバ１０に記憶されているＨＴＭＬ１１を取得する。ウェブブラウザ２１はＨＴＭＬ１１ａを解釈し、ＨＴＭＬ１１内に記述されたスクリプトをスクリプト実行エンジン２２によって実行（ステップＦ１）することで、そこに埋め込まれた連携ＲＩＡ１２をインターネット経由でダウンロードし、ブラウザ２１上のアプリケーションランタイム（ＲＩＡ）２３によって連携ＲＩＡ１２ａを実行する（ステップＦ２）
【００４４】
アプリケーションランタイム（ＲＩＡ）２３によって実行された連携ＲＩＡ１２ａがＳＩＰネットワーク５０との通信を行う場合、連携ＲＩＡ１２ａはアプリケーションランタイム（ＳＩＰ−Ｂ）２５上でＳＩＰコンポーネントＢ３１ａが実行中であるか否かを判定する（ステップＦ３，Ｆ４）。
【００４５】
もし、ＳＩＰコンポーネントＢ３１ａが実行中ではない場合、連携ＲＩＡ１２ａは、スクリプト実行エンジン２２上で実行されているＨＴＭＬのインタフェース経由で、スクリプト実行エンジン２２にＳＩＰコンポーネントの起動を要求する。スクリプト実行エンジン２２は、連携アプリケーション配信ウェブサーバ１０からＳＩＰコンポーネントＡ１３をインターネット４０経由でダウンロードし、ブラウザ２１上のアプリケーションランタイム（ＳＩＰ−Ａ）２４によってＳＩＰコンポーネントＡ１３ａを実行する（ステップＦ５）。
【００４６】
ＳＩＰコンポーネントＡ１３ａが起動されたことをスクリプト実行エンジン２２から連携ＲＩＡ１２ａに通知されると、連携ＲＩＡ１２ａは、ＳＩＰコンポーネントＡ１３ａに、ＳＩＰコンポーネントＡ１３ａのＡＰＩ経由でＳＩＰ通信を依頼する（ステップＦ６）。ＳＩＰコンポーネントＡ１３ａは、適切なＳＩＰ通信の交換を行い、ＳＩＰネットワーク５０上の対向ＳＩＰ端末５１との連携を行う（ステップＳ７）。また、スクリプト実行エンジン２２は、ＳＩＰコンポーネントＢ３１ａをＳＩＰコンポーネント配信ウェブサーバ３０からインターネット４０経由でダウンロードし、アプリケーションランタイム（ＳＩＰ−Ｂ）２５によってＳＩＰコンポーネントＢ３１ａを実行する（Ｆ８）。
【００４７】
ＳＩＰコンポーネントＢ３１ａが既にアプリケーションランタイム（ＳＩＰ−Ｂ）２５上で動作していた場合は、連携アプリケーション配信ウェブサーバ１０からのＳＩＰコンポーネントＡ１３のダウンロードは行われず、連携ＲＩＡ１２ａは、ただちにＳＩＰコンポーネントＢ３１ａに、ＳＩＰコンポーネントＢ３１ａのＡＰＩ経由でＳＩＰ通信を依頼する（ステップＦ９）。ＳＩＰコンポーネントＢ３１ａは、適切なＳＩＰ通信の交換を行い、ＳＩＰネットワーク５０上の対向ＳＩＰ端末５１との連携を行う（ステップＳ１０）。
【００４８】
上述したとおり、本実施形態における連携アプリケーション提供システムは、ウェブブラウザ２１のアプリケーションランタイム（ＳＩＰ−Ａ）２４上で動作するＳＩＰコンポーネントＡ１３と、ウェブブラウザ２１とは別のアプリケーションランタイム（ＳＩＰ−Ｂ）２５上で動作するＳＩＰコンポーネントＢ３１とを備える。すなわち、ＳＩＰコンポーネントをリッチインターネットアプリケーションとして実行時に端末に動的に配備する手法として、ＳＩＰコンポーネントを連携ＲＩＡが埋め込まれたＨＴＭＬに埋め込む方式（ＳＩＰコンポーネントＡ１３）と、ＳＩＰコンポーネントをブラウザ外のアプリケーションとして起動する方式（ＳＩＰコンポーネントＢ３１）とを備える。
【００４９】
ＳＩＰコンポーネントを連携ＲＩＡが埋め込まれたＨＴＭＬに埋め込む方式では、通常のサイト読み込みに加え、ＳＩＰコンポーネントであるリッチインターネットアプリケーションを起動するため、その分サイト表示遅延が増加する傾向にある。一方、ＳＩＰコンポーネントをブラウザ外のアプリケーションとして起動する方式では、起動時にはブラウザ外のアプリケーションであるＳＩＰコンポーネントを起動するため大きな起動遅延が生じる。しかしながら、二回目以降の起動時は既に実行中のＳＩＰコンポーネントを再利用するため、小起動遅延での実行が可能である。
【００５０】
そのため、連携リッチインターネットアプリケーションの初回起動時には、起動が速いＳＩＰコンポーネントＡ１３ａを起動して、ＳＩＰコンポーネントＡ１３ａのＡＰＩを経由して対向ＳＩＰ端末５１との連携を行うとともに、ＳＩＰコンポーネントＢ３１ａを起動する。これにより、ウェブブラウザ２１とは別のアプリケーションランタイム（ＳＩＰ−Ｂ）２５上で動作するＳＩＰコンポーネントＢ３１のＡＰＩを経由して対向ＳＩＰ端末５１との連携を行うよりも、ＳＩＰネットワークと連携するリッチインターネットアプリケーションの起動遅延時間を減少させることができる。
【００５１】
また、リッチインターネットアプリケーションの初回実行が終了した場合、ウェブブラウザ２１のアプリケーションランタイム（ＳＩＰ−Ａ）２４上で動作しているＳＩＰコンポーネントＡ１３ａは停止されるが、ウェブブラウザ２１とは別のアプリケーションランタイム（ＳＩＰ−Ｂ）２５上で動作するＳＩＰコンポーネントＢ３１は動作し続ける。そのため、２回目以降の起動時には、既に起動されているＳＩＰコンポーネントＢ３１ａのＡＰＩを経由して対向ＳＩＰ端末５１との連携を行うことで、ＳＩＰコンポーネントＡ１３ａの起動を待つ必要がなくなるため、ＳＩＰネットワークと連携するリッチインターネットアプリケーションの起動遅延時間を減少させることができる。
【００５２】
なお、上述した本実施形態における連携アプリケーション配信ウェブサーバ１０が備える各部の機能全体あるいはその一部と、クライアント２０が備える各部の機能全体あるいはその一部と、ＳＩＰコンポーネント配信ウェブサーバ３０が備える各部の機能全体あるいはその一部とは、これらの機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。
【００５３】
また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶部のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時刻の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時刻プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００５４】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【符号の説明】
【００５５】
００・・・連携アプリケーション提供システム、１０・・・連携アプリケーション配信ウェブサーバ、１１・・・ＨＴＭＬ、１２・・・連携ＲＩＡ、１３・・・ＳＩＰコンポーネントＡ、２０・・・クライアント、２１・・・ウェブブラウザ、２２・・・スクリプト実行エンジン、２３・・・アプリケーションランタイム（ＲＩＡ）、２４・・・アプリケーションランタイム（ＳＩＰ−Ａ）、２５・・・アプリケーションランタイム（ＳＩＰ−Ｂ）、３０・・・ＳＩＰコンポーネント配信ウェブサーバ、３１・・・ＳＩＰコンポーネントＢ、４０・・・インターネット、５０・・・ＳＩＰネットワーク、５１・・・対向ＳＩＰ端末
【図１】
0005461163.tif 000002
【図２】
0005461163.tif 000003
【図３】
0005461163.tif 000004
【図４】
0005461163.tif 000005