(57)【特許請求の範囲】
【請求項１】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置とで構成されるネットワークアプリケーション分散実行システムにおいて、
前記ネットワークアプリケーションサーバは、
一の端末装置にサービス一覧を送付し、この一覧の中から選択されたサービスの当該端末装置からの要求に応じて、該選択されたサービスに対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする第１の手段と、
一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする第２の手段と、
一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする第３の手段と、
一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置およびその接続相手先の端末装置にそれぞれダウンロードする第４の手段と、
前記第１乃至第４の手段の何れかによる動作を、一の端末装置から受信した最初の接続要求情報に応じて選択的に実行する管理制御手段と、
を有し、
各端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの起動或いは動作制御に必要な契機であるトリガーの発火条件として設定する手段を有することを特徴とするネットワークアプリケーション分散実行システム。
【請求項２】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置とで構成されるネットワークアプリケーション分散実行システムにおいて、
前記ネットワークアプリケーションサーバは、前記端末装置から受信した最初の接続要求情報に応じて前記端末装置にサービス一覧を送付し、この一覧の中から選択されたサービスの当該端末装置からの要求に対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする手段を有し、
前記端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第１の接続状態イベントを、当該ネットワークアプリケーションプログラムの起動に必要な契機である第１のトリガーの発火条件として設定し、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第２の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第２のトリガーの発火条件として設定する手段を有することを特徴とするネットワークアプリケーション分散実行システム。
【請求項３】
前記ネットワークアプリケーションプログラムは、自動コールバックサービスをネットワークアプリケーションとして実行させるプログラムであり、
前記第１のトリガーの発火条件としての前記第１の接続状態イベントは、前記端末装置の接続相手先の端末装置が通話中であることであり、前記第２のトリガーの発火条件としての前記第２の接続状態イベントは、前記接続相手先の端末装置の前記第１のトリガーを発火させた通話が終了したことであり、
前記第２のトリガーが発火した場合には、前記端末装置は接続相手先の端末装置への接続要求を行うことを特徴とする請求項２に記載のネットワークアプリケーション分散実行システム。
【請求項４】
前記接続要求情報は加入者識別情報であることを特徴とする請求項２又は３に記載のネットワークアプリケーション分散実行システム。
【請求項５】
前記端末装置は、前記ダウンロードしたネットワークアプリケーションを起動させるトリガーが発火した場合に、該ネットワークアプリケーションにより実行するサービスを開始する前に、該開始の可否をユーザに問い合わせる手段を有することを特徴とする請求項１乃至４の何れか一項に記載のネットワークアプリケーション分散実行システム。
【請求項６】
前記端末装置は、前記ダウンロードしたネットワークアプリケーションを起動させるトリガーが発火した場合に、該ネットワークアプリケーションにより実行するサービスを開始させる前に、該開始の可否をユーザに問い合わせる手段と、前記ユーザが前記サービスの開始に同意したときにのみ、第２のトリガー以降のトリガーを設定する手段と、を有することを特徴とする請求項２又は３に記載のネットワークアプリケーション分散実行システム。
【請求項７】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおいて、
前記ネットワークアプリケーションサーバは、前記端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを前記端末装置にダウンロードする手段を有し、
前記端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じて前記データベースからネットワークアプリケーションサービスの実行に必要な情報を取得する手段と、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する手段と、前記トリガーが発火した場合に前記データベースにアクセスするアクセス手段とを有することを特徴とするネットワークアプリケーション分散実行システム。
【請求項８】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおいて、
前記ネットワークアプリケーションサーバは、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置およびその接続相手先の端末装置にそれぞれダウンロードする手段を有し、
前記一の端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じて前記データベースからネットワークアプリケーションサービスの実行に必要な情報を取得する手段と、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する手段と、該トリガーが発火した場合に前記データベースにアクセスするアクセス手段とを有し、
前記接続相手先の端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する手段と、該トリガーが発火した場合に前記データベースにアクセスするアクセス手段とを有することを特徴とするネットワークアプリケーション分散実行システム。
【請求項９】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおいて、
前記ネットワークアプリケーションサーバは、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする手段を有し、
前記接続相手先の端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する手段と、前記トリガーが発火した場合に前記データベースにアクセスするアクセス手段とを有することを特徴とするネットワークアプリケーション分散実行システム。
【請求項１０】
前記アクセス手段は、前記データベースにアクセスし、該データベースに情報を記録することを特徴とする請求項７乃至９の何れか一項に記載のネットワークアプリケーション分散実行システム。
【請求項１１】
前記トリガーの発火条件としての接続状態イベントは、端末装置間の通信が終了したことであり、
前記アクセス手段は、端末装置間の通信時間の情報を前記データベースに記録することを特徴とする請求項１０に記載のネットワークアプリケーション分散実行システム。
【請求項１２】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおいて、
前記ネットワークアプリケーションサーバは、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする手段を有し、
前記接続相手先の端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第１の接続状態イベントを前記データベースにアクセスする契機である第１のトリガーの発火条件として設定し、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第２の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第２のトリガーの発火条件として設定する手段と、前記第１のトリガーが発火した場合に前記データベースにアクセスするアクセス手段と、を有することを特徴とするネットワークアプリケーション分散実行システム。
【請求項１３】
前記第１のトリガーの発火条件としての前記第１の接続状態イベントは、前記一の端末装置から前記接続相手先の端末装置への接続要求であり、前記第２のトリガーの発火条件としての前記第２の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の接続可能時間の残りがわずかとなることであり、
前記接続相手先の端末装置は、前記第１のトリガーが発火した場合には、前記データベースにアクセスし、前記一の端末装置との間の接続可能時間の情報を問い合わせ、前記第２のトリガーが発火した場合には、前記一の端末装置との間の接続可能時間の残りがわずかである旨を前記一の端末装置に通知することを特徴とする請求項１２に記載のネットワークアプリケーション分散実行システム。
【請求項１４】
前記接続相手先の端末装置は、更に、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第３の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第３のトリガーの発火条件として設定し、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第４の接続状態イベントを前記データベースにアクセスする契機である第４のトリガーの発火条件として設定する手段を有し、
前記第３のトリガーの発火条件としての前記第３の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の接続可能時間がゼロになることであり、前記第４のトリガーの発火条件としての前記第４の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の通信が切断されたことであり、
前記接続相手先の端末装置は、前記第３のトリガーが発火した場合には、前記一の端末装置との通信の切断を要求し、前記第４のトリガーが発火した場合には、前記データベースにアクセスし該データーベースに情報を記録することを特徴とする請求項１３に記載のネットワークアプリケーション分散実行システム。
【請求項１５】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置とで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、
一の端末装置にサービス一覧を送付し、この一覧の中から選択されたサービスの当該端末装置からの要求に応じて、該選択されたサービスに対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする第１の過程と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする第２の過程と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする第３の過程と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置およびその接続相手先の端末装置にそれぞれダウンロードする第４の過程と、の４つの過程の何れかを、一の端末装置から受信した最初の接続要求情報に応じて選択的に前記ネットワークアプリケーションサーバが実行する管理制御過程と、
各端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの起動或いは動作制御に必要な契機であるトリガーの発火条件として設定する過程と、
を有することを特徴とするネットワークアプリケーションの実行方法。
【請求項１６】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置とで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、
前記ネットワークアプリケーションサーバが、前記端末装置から受信した最初の接続要求情報に応じて前記端末装置にサービス一覧を送付し、この一覧の中から選択されたサービスの当該端末装置からの要求に対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする過程と、
前記端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第１の接続状態イベントを、当該ネットワークアプリケーションプログラムの起動に必要な契機である第１のトリガーの発火条件として設定する過程と、
前記端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第２の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第２のトリガーの発火条件として設定する過程と、
を有することを特徴とするネットワークアプリケーションの実行方法。
【請求項１７】
前記ネットワークアプリケーションプログラムは、自動コールバックサービスをネットワークアプリケーションとして実行させるプログラムであり、
前記第１のトリガーの発火条件としての前記第１の接続状態イベントは、前記端末装置の接続相手先の端末装置が通話中であることであり、前記第２のトリガーの発火条件としての前記第２の接続状態イベントは、前記接続相手先の端末装置の前記第１のトリガーを発火させた通話が終了したことであり、
前記第２のトリガーが発火した場合には、前記端末装置は接続相手先の端末装置への接続要求を行うことを特徴とする請求項１６に記載のネットワークアプリケーションの実行方法。
【請求項１８】
前記接続要求情報は加入者識別情報であることを特徴とする請求項１６又は１７に記載のネットワークアプリケーションの実行方法。
【請求項１９】
前記ダウンロードしたネットワークアプリケーションを起動させるトリガーが発火した場合に、前記端末装置が、該ネットワークアプリケーションにより実行するサービスを開始する前に、該開始の可否をユーザに問い合わせる過程を有することを特徴とする請求項１５乃至１８の何れか一項に記載のネットワークアプリケーションの実行方法。
【請求項２０】
前記ダウンロードしたネットワークアプリケーションを起動させるトリガーが発火した場合に、前記端末装置が、該ネットワークアプリケーションにより実行するサービスを開始する前に、該開始の可否をユーザに問い合わせる過程と、
前記ユーザが前記サービスの開始に同意したときにのみ、前記端末装置が、第２のトリガー以降のトリガーを設定する過程と、
を有することを特徴とする請求項１６又は１７に記載のネットワークアプリケーションの実行方法。
【請求項２１】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、
前記ネットワークアプリケーションサーバが、前記端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを前記端末装置にダウンロードする過程と、
前記端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じて前記データベースからネットワークアプリケーションサービスの実行に必要な情報を取得する過程と、
前記端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する過程と、
前記トリガーが発火した場合に、前記端末装置が、前記データベースにアクセスするアクセス過程と、
を有することを特徴とするネットワークアプリケーションの実行方法。
【請求項２２】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、
前記ネットワークアプリケーションサーバが、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置およびその接続相手先の端末装置にそれぞれダウンロードする過程と、
前記一の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じて前記データベースからネットワークアプリケーションサービスの実行に必要な情報を取得する過程と、
前記一の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する過程と、
前記トリガーが発火した場合に、前記一の端末装置が、前記データベースにアクセスするアクセス過程と、
前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する過程と、
前記トリガーが発火した場合に、前記接続相手先の端末装置が、前記データベースにアクセスするアクセス過程と、
を有することを特徴とするネットワークアプリケーションの実行方法。
【請求項２３】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、
前記ネットワークアプリケーションサーバが、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする過程と、
前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する過程と、
前記トリガーが発火した場合に、前記接続相手先の端末装置が、前記データベースにアクセスするアクセス過程と、
を有することを特徴とするネットワークアプリケーションの実行方法。
【請求項２４】
前記アクセス過程では、前記データベースにアクセスし、該データベースに情報を記録することを特徴とする請求項２１乃至２３の何れか一項に記載のネットワークアプリケーションの実行方法。
【請求項２５】
前記トリガーの発火条件としての接続状態イベントは、端末装置間の通信が終了したことであり、
前記アクセス過程では、端末装置間の通信時間の情報を前記データベースに記録することを特徴とする請求項２４に記載のネットワークアプリケーションの実行方法。
【請求項２６】
ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、
前記ネットワークアプリケーションサーバが、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする過程と、
前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第１の接続状態イベントを前記データベースにアクセスする契機である第１のトリガーの発火条件として設定する過程と、
前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第２の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第２のトリガーの発火条件として設定する過程と、
前記第１のトリガーが発火した場合に、前記接続相手先の端末装置が、前記データベースにアクセスするアクセス過程と、
を有することを特徴とするネットワークアプリケーションの実行方法。
【請求項２７】
前記第１のトリガーの発火条件としての前記第１の接続状態イベントは、前記一の端末装置から前記接続相手先の端末装置への接続要求であり、前記第２のトリガーの発火条件としての前記第２の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の接続可能時間の残りがわずかとなることであり、
前記アクセス過程では、前記接続相手先の端末装置が、前記一の端末装置との間の接続可能時間の情報を問い合わせ、
前記第２のトリガーが発火した場合に、前記接続相手先の端末装置が、前記一の端末装置との間の接続可能時間の残りがわずかである旨を前記一の端末装置に通知する過程を有することを特徴とする請求項２６に記載のネットワークアプリケーションの実行方法。
【請求項２８】
前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第３の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第３のトリガーの発火条件として設定する過程と、
前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第４の接続状態イベントを前記データベースにアクセスする契機である第４のトリガーの発火条件として設定する過程と、
を有し、
前記第３のトリガーの発火条件としての前記第３の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の接続可能時間がゼロになることであり、前記第４のトリガーの発火条件としての前記第４の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の通信が切断されたことであり、
更に、前記第３のトリガーが発火した場合に、前記接続相手先の端末装置が、前記一の端末装置との通信の切断を要求する過程と、
前記第４のトリガーが発火した場合に、前記接続相手先の端末装置が、前記データベースにアクセスし該データーベースに情報を記録する過程と、
を有することを特徴とする請求項２７に記載のネットワークアプリケーションの実行方法。
【発明の詳細な説明】
【０００１】
【発明の属する技術分野】
本発明は、集中型交換網用に開発されたネットワークアプリケーションを分散型交換網に適用することを可能にするネットワークアプリケーション分散実行システムに関する。
【０００２】
【従来の技術】
交換システムのネットワーク制御機能を抽象化し、それらを利用するアプリケーション・プログラミング・インタフェース（Application Programming Interface: ＡＰＩ）を提供するシステムはネットワークのオープンＡＰＩと呼ばれ、交換網やメディア蓄積・合成トランク、多地点会議制御トランクなどのネットワーク内通信資源を利用したネットワークサービスアプリケーションを提供するプラットフォームになっている。
【０００３】
最近では、こうしたＡＰＩセットを標準化するＪＡＩＮやＰａｒｌａｙなどの団体が登場しており、これらの団体により標準化されたＡＰＩに基づいて開発されたネットワークアプリケーションは、そのＡＰＩが対応する、実現形態の異なる様々な交換システムの間で共通に利用することができ、全体として、ネットワークアプリケーション開発期間の低減に役立っている。
【０００４】
ＪＡＩＮやＰａｒｌａｙなど既存のネットワークＡＰＩで記述されたアプリケーションの実行環境と交換システムとの間のインタフェースは、従来、アプリケーションを実行するサーバと交換機内部の制御装置との間の接続により実現されていた。これにより、交換機内部の制御装置内で管理される接続呼に対してアプリケーションからイベント検出および制御操作を行うことを可能にしていた。
【０００５】
このＡＰＩセットは、その機能に応じて次のように呼ばれる７個のＡＰＩを含んでいる。
（１）イベント収集型ＡＰＩ
（２）状態収集型ＡＰＩ
（３）接続先制御型ＡＰＩ
（４）ユーザインタラクション型ＡＰＩ
（５）データベースアクセス型ＡＰＩ
（６）処理呼び出し型ＡＰＩ
（７）処理終了型ＡＰＩ
これらのＡＰＩの組み合わせによりネットワークアプリケーションを構築することができる。
【０００６】
一方、最近になって、インターネットプロトコルを用いて交換サービス網を構成する、いわゆるボイス・オーバ・インターネット・プロトコル（ＶｏＩＰ）網が構築されるようになり、交換網制御のアーキテクチャが根本的に変化し始めている。
【０００７】
このＶｏＩＰ網においては、各端末装置に呼状態保持機能と相互接続機能とが配備されており、各端末装置は、ディレクトリ・サーバから獲得された接続先アドレス情報を用いて、交換機を介することなく、直接、相手側の端末装置と接続することが可能である。
【０００８】
こうした分散型の接続制御を行うことにより、交換網サービスに必要なサーバの負荷を大幅に低減することができる。
【０００９】
【発明が解決しようとする課題】
しかしながら、前述のネットワークアプリケーションの接続先であった交換機の制御装置に対応する機能モジュールは分散解消されていた。すなわち、分散型の接続制御においては、交換機を介することなく通信が行われるため、アプリケーション実行環境（後述する図７参照）は通信を制御することができなかった。このため、この分散型交換網に対しては、集中型交換網用に開発されたネットワークアプリケーションを適用することができないという問題点があった。
【００１０】
本発明は、このような問題点に鑑みてなされたものであり、集中型交換網用に開発されたネットワークアプリケーションを分散型交換網に適用することを可能にするネットワークアプリケーション分散実行システムを提供することを目的とする。
【００１１】
【課題を解決するための手段】
この目的を達成するため、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置とで構成されるネットワークアプリケーション分散実行システムにおいて、前記ネットワークアプリケーションサーバは、一の端末装置にサービス一覧を送付し、この一覧の中から選択されたサービスの当該端末装置からの要求に応じて、該選択されたサービスに対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする第１の手段と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする第２の手段と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする第３の手段と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置およびその接続相手先の端末装置にそれぞれダウンロードする第４の手段と、前記第１乃至第４の手段の何れかによる動作を、一の端末装置から受信した最初の接続要求情報に応じて選択的に実行する管理制御手段と、を有し、各端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの起動或いは動作制御に必要な契機であるトリガーの発火条件として設定する手段を有することを特徴とするネットワークアプリケーション分散実行システムを提供する。
【００１２】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置とで構成されるネットワークアプリケーション分散実行システムにおいて、前記ネットワークアプリケーションサーバは、前記端末装置から受信した最初の接続要求情報に応じて前記端末装置にサービス一覧を送付し、この一覧の中から選択されたサービスの当該端末装置からの要求に対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする手段を有し、前記端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第１の接続状態イベントを、当該ネットワークアプリケーションプログラムの起動に必要な契機である第１のトリガーの発火条件として設定し、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第２の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第２のトリガーの発火条件として設定する手段を有することを特徴とするネットワークアプリケーション分散実行システムを提供する。
【００１３】
本発明のネットワークアプリケーション分散実行システムにおいては、前記ネットワークアプリケーションプログラムは、自動コールバックサービスをネットワークアプリケーションとして実行させるプログラムであり、前記第１のトリガーの発火条件としての前記第１の接続状態イベントは、前記端末装置の接続相手先の端末装置が通話中であることであり、前記第２のトリガーの発火条件としての前記第２の接続状態イベントは、前記接続相手先の端末装置の前記第１のトリガーを発火させた通話が終了したことであり、前記第２のトリガーが発火した場合には、前記端末装置は接続相手先の端末装置への接続要求を行うことを好ましい一例としている。
【００１４】
本発明のネットワークアプリケーション分散実行システムにおいては、前記接続要求情報は加入者識別情報であることを好ましい一例としている。
【００１５】
本発明のネットワークアプリケーション分散実行システムにおいては、前記端末装置は、前記ダウンロードしたネットワークアプリケーションを起動させるトリガーが発火した場合に、該ネットワークアプリケーションにより実行するサービスを開始する前に、該開始の可否をユーザに問い合わせる手段を有することが好ましい。
【００１６】
或いは、本発明のネットワークアプリケーション分散実行システムにおいては、前記端末装置は、前記ダウンロードしたネットワークアプリケーションを起動させるトリガーが発火した場合に、該ネットワークアプリケーションにより実行するサービスを開始させる前に、該開始の可否をユーザに問い合わせる手段と、前記ユーザが前記サービスの開始に同意したときにのみ、第２のトリガー以降のトリガーを設定する手段と、を有することも好ましい。
【００１７】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおいて、前記ネットワークアプリケーションサーバは、前記端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを前記端末装置にダウンロードする手段を有し、前記端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じて前記データベースからネットワークアプリケーションサービスの実行に必要な情報を取得する手段と、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する手段と、前記トリガーが発火した場合に前記データベースにアクセスするアクセス手段とを有することを特徴とするネットワークアプリケーション分散実行システムを提供する。
【００１８】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおいて、前記ネットワークアプリケーションサーバは、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置およびその接続相手先の端末装置にそれぞれダウンロードする手段を有し、前記一の端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じて前記データベースからネットワークアプリケーションサービスの実行に必要な情報を取得する手段と、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する手段と、該トリガーが発火した場合に前記データベースにアクセスするアクセス手段とを有し、前記接続相手先の端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する手段と、該トリガーが発火した場合に前記データベースにアクセスするアクセス手段とを有することを特徴とするネットワークアプリケーション分散実行システムを提供する。
【００１９】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおいて、前記ネットワークアプリケーションサーバは、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする手段を有し、前記接続相手先の端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する手段と、前記トリガーが発火した場合に前記データベースにアクセスするアクセス手段とを有することを特徴とするネットワークアプリケーション分散実行システムを提供する。
【００２０】
本発明のネットワークアプリケーション分散実行システムにおいては、前記アクセス手段は、前記データベースにアクセスし、該データベースに情報を記録することを好ましい一例としている。
【００２１】
この場合、前記トリガーの発火条件としての接続状態イベントは、端末装置間の通信が終了したことであり、前記アクセス手段は、端末装置間の通信時間の情報を前記データベースに記録することが好ましい。
【００２２】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおいて、前記ネットワークアプリケーションサーバは、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする手段を有し、前記接続相手先の端末装置は、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第１の接続状態イベントを前記データベースにアクセスする契機である第１のトリガーの発火条件として設定し、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第２の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第２のトリガーの発火条件として設定する手段と、前記第１のトリガーが発火した場合に前記データベースにアクセスするアクセス手段と、を有することを特徴とするネットワークアプリケーション分散実行システムを提供する。
【００２３】
本発明のネットワークアプリケーション分散実行システムにおいては、前記第１のトリガーの発火条件としての前記第１の接続状態イベントは、前記一の端末装置から前記接続相手先の端末装置への接続要求であり、前記第２のトリガーの発火条件としての前記第２の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の接続可能時間の残りがわずかとなることであり、前記接続相手先の端末装置は、前記第１のトリガーが発火した場合には、前記データベースにアクセスし、前記一の端末装置との間の接続可能時間の情報を問い合わせ、前記第２のトリガーが発火した場合には、前記一の端末装置との間の接続可能時間の残りがわずかである旨を前記一の端末装置に通知することを好ましい一例としている。
【００２４】
この場合、前記接続相手先の端末装置は、更に、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第３の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第３のトリガーの発火条件として設定し、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第４の接続状態イベントを前記データベースにアクセスする契機である第４のトリガーの発火条件として設定する手段を有し、前記第３のトリガーの発火条件としての前記第３の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の接続可能時間がゼロになることであり、前記第４のトリガーの発火条件としての前記第４の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の通信が切断されたことであり、前記接続相手先の端末装置は、前記第３のトリガーが発火した場合には、前記一の端末装置との通信の切断を要求し、前記第４のトリガーが発火した場合には、前記データベースにアクセスし該データーベースに情報を記録することが好ましい。
【００２５】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置とで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、一の端末装置にサービス一覧を送付し、この一覧の中から選択されたサービスの当該端末装置からの要求に応じて、該選択されたサービスに対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする第１の過程と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする第２の過程と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする第３の過程と、一の端末装置から受信した最初の接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置およびその接続相手先の端末装置にそれぞれダウンロードする第４の過程と、の４つの過程の何れかを、一の端末装置から受信した最初の接続要求情報に応じて選択的に前記ネットワークアプリケーションサーバが実行する管理制御過程と、各端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの起動或いは動作制御に必要な契機であるトリガーの発火条件として設定する過程と、を有することを特徴とするネットワークアプリケーションの実行方法を提供する。
【００２６】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置とで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、前記ネットワークアプリケーションサーバが、前記端末装置から受信した最初の接続要求情報に応じて前記端末装置にサービス一覧を送付し、この一覧の中から選択されたサービスの当該端末装置からの要求に対応するネットワークアプリケーションプログラムを当該端末装置にダウンロードする過程と、前記端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第１の接続状態イベントを、当該ネットワークアプリケーションプログラムの起動に必要な契機である第１のトリガーの発火条件として設定する過程と、前記端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第２の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第２のトリガーの発火条件として設定する過程と、を有することを特徴とするネットワークアプリケーションの実行方法を提供する。
【００２７】
本発明のネットワークアプリケーションの実行方法においては、前記ネットワークアプリケーションプログラムは、自動コールバックサービスをネットワークアプリケーションとして実行させるプログラムであり、前記第１のトリガーの発火条件としての前記第１の接続状態イベントは、前記端末装置の接続相手先の端末装置が通話中であることであり、前記第２のトリガーの発火条件としての前記第２の接続状態イベントは、前記接続相手先の端末装置の前記第１のトリガーを発火させた通話が終了したことであり、前記第２のトリガーが発火した場合には、前記端末装置は接続相手先の端末装置への接続要求を行うことを好ましい一例としている。
【００２８】
また、本発明のネットワークアプリケーションの実行方法においては、前記接続要求情報は加入者識別情報であることを好ましい一例としている。
【００２９】
本発明のネットワークアプリケーションの実行方法においては、前記ダウンロードしたネットワークアプリケーションを起動させるトリガーが発火した場合に、前記端末装置が、該ネットワークアプリケーションにより実行するサービスを開始する前に、該開始の可否をユーザに問い合わせる過程を有することが好ましい。
【００３０】
或いは、本発明のネットワークアプリケーションの実行方法においては、前記ダウンロードしたネットワークアプリケーションを起動させるトリガーが発火した場合に、前記端末装置が、該ネットワークアプリケーションにより実行するサービスを開始する前に、該開始の可否をユーザに問い合わせる過程と、前記ユーザが前記サービスの開始に同意したときにのみ、前記端末装置が、第２のトリガー以降のトリガーを設定する過程と、を有することも好ましい。
【００３１】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、前記ネットワークアプリケーションサーバが、前記端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを前記端末装置にダウンロードする過程と、前記端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じて前記データベースからネットワークアプリケーションサービスの実行に必要な情報を取得する過程と、前記端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する過程と、前記トリガーが発火した場合に、前記端末装置が、前記データベースにアクセスするアクセス過程と、を有することを特徴とするネットワークアプリケーションの実行方法を提供する。
【００３２】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、前記ネットワークアプリケーションサーバが、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置およびその接続相手先の端末装置にそれぞれダウンロードする過程と、前記一の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じて前記データベースからネットワークアプリケーションサービスの実行に必要な情報を取得する過程と、前記一の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する過程と、前記トリガーが発火した場合に、前記一の端末装置が、前記データベースにアクセスするアクセス過程と、前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する過程と、前記トリガーが発火した場合に、前記接続相手先の端末装置が、前記データベースにアクセスするアクセス過程と、を有することを特徴とするネットワークアプリケーションの実行方法を提供する。
【００３３】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、前記ネットワークアプリケーションサーバが、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする過程と、前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機であるトリガーの発火条件として設定する過程と、前記トリガーが発火した場合に、前記接続相手先の端末装置が、前記データベースにアクセスするアクセス過程と、を有することを特徴とするネットワークアプリケーションの実行方法提供する。
【００３４】
本発明のネットワークアプリケーションの実行方法においては、前記アクセス過程では、前記データベースにアクセスし、該データベースに情報を記録することを好ましい一例としている。
【００３５】
この場合、前記トリガーの発火条件としての接続状態イベントは、端末装置間の通信が終了したことであり、前記アクセス過程では、端末装置間の通信時間の情報を前記データベースに記録することが好ましい。
【００３６】
また、本発明は、ネットワークアプリケーションプログラムを格納したネットワークアプリケーションサーバと、前記ネットワークアプリケーションサーバから前記ネットワークアプリケーションプログラムをダウンロードして実行する手段を有する端末装置と、ネットワークアプリケーションサービスの実行に必要な情報を格納するデータベースとで構成されるネットワークアプリケーション分散実行システムにおけるネットワークアプリケーションの実行方法において、前記ネットワークアプリケーションサーバが、一の端末装置から受信した最初の接続要求情報に応じて当該接続要求情報に対応するネットワークアプリケーションプログラムを当該端末装置の接続相手先の端末装置にダウンロードする過程と、前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第１の接続状態イベントを前記データベースにアクセスする契機である第１のトリガーの発火条件として設定する過程と、前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第２の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第２のトリガーの発火条件として設定する過程と、前記第１のトリガーが発火した場合に、前記接続相手先の端末装置が、前記データベースにアクセスするアクセス過程と、を有することを特徴とするネットワークアプリケーションの実行方法を提供する。
【００３７】
本発明のネットワークアプリケーションの実行方法においては、前記第１のトリガーの発火条件としての前記第１の接続状態イベントは、前記一の端末装置から前記接続相手先の端末装置への接続要求であり、前記第２のトリガーの発火条件としての前記第２の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の接続可能時間の残りがわずかとなることであり、前記アクセス過程では、前記接続相手先の端末装置が、前記一の端末装置との間の接続可能時間の情報を問い合わせ、前記第２のトリガーが発火した場合に、前記接続相手先の端末装置が、前記一の端末装置との間の接続可能時間の残りがわずかである旨を前記一の端末装置に通知する過程を有することを好ましい一例としている。
【００３８】
この場合、前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第３の接続状態イベントを、当該ネットワークアプリケーションプログラムの動作制御に必要な契機である第３のトリガーの発火条件として設定する過程と、前記接続相手先の端末装置が、前記ダウンロードしたネットワークアプリケーションプログラムに応じた第４の接続状態イベントを前記データベースにアクセスする契機である第４のトリガーの発火条件として設定する過程と、を有し、前記第３のトリガーの発火条件としての前記第３の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の接続可能時間がゼロになることであり、前記第４のトリガーの発火条件としての前記第４の接続状態イベントは、前記一の端末装置と前記接続相手先の端末装置との間の通信が切断されたことであり、更に、前記第３のトリガーが発火した場合に、前記接続相手先の端末装置が、前記一の端末装置との通信の切断を要求する過程と、前記第４のトリガーが発火した場合に、前記接続相手先の端末装置が、前記データベースにアクセスし該データーベースに情報を記録する過程と、を有することが好ましい。
【００５１】
以下、例えば、特開平１１−２３９０９４号公報に記載されている従来のネットワークアプリケーション実行システムと本発明に係るネットワークアプリケーション分散実行システムとの比較を概略的に説明する。
【００５２】
図７は従来のネットワークアプリケーション実行システムの構成を示すブロック図である。
【００５３】
この従来のネットワークアプリケーション実行システムは、第一及び第二の端末装置２０１、２０２と、各端末装置２０１、２０２に対応する移動体交換機２１１、２１２と、各移動体交換機２１１、２１２を相互に接続する一般公衆網２２０と、移動体交換機２１１、２１２と接続し、移動体交換機２１１、２１２を制御することにより、各端末２０１、２０２に付加価値サービスを提供するアプリケーション実行環境２３０と、からなる。
【００５４】
例えば、第一の端末装置２０１があるアプリケーション（例えば、本発明の第二の実施形態として以下に挙げる番号変換アプリケーション）を用いて第二の端末装置２０２と通信を行う場合の動作は以下のようになる。
【００５５】
移動体交換機２１１は第一の端末装置２０１からの発呼要求を受信すると、アプリケーション実行環境２３０に対してその旨を通知する。アプリケーション実行環境２０３は接続先の番号変換を施した後、移動体交換機２１１に対して、その発呼要求を移動体交換機２１２に転送するように指示する。その結果、第一の端末装置２０１は、移動体交換機２１１、一般公衆網２２０及び移動体交換機２１２を介して、第二の端末装置２０２と通信を開始することができる。
【００５６】
従来のネットワークアプリケーション実行システムにおいては、移動体交換機２１１、２１２にのみ上述のＡＰＩセットが組み込まれていた。
【００５７】
従って、第一の端末装置２０１と第二の端末装置２０２との間におけるアプリケーションの実行は移動体交換機２１１、２１２を介して行われなければならなかった。
【００５８】
図８は本発明に係るネットワークアプリケーション分散実行システムの構成を示すブロック図である。
【００５９】
本発明に係るネットワークアプリケーション分散実行システムは、複数の端末装置３０１、３０２と、各端末装置３０１、３０２を相互に接続する一般公衆網３２０と、からなる。
【００６０】
本発明に係るネットワークアプリケーション分散実行システムにおいては、従来のネットワークアプリケーション実行システムとは異なり、上述のＡＰＩが定義されている移動体交換機を有してはおらず、各端末装置３０１、３０２において、予め上述のＡＰＩが定義されている。すなわち、本発明における各端末装置３０１、３０２は、端末装置としての機能の他に、従来のネットワークアプリケーション実行システムにおける移動体交換機２１１、２１２としての機能を併せ持っている。
【００６１】
このため、例えばアプリケーションサーバーから各端末装置３０１、３０２にアプリケーションがダウンロードされると、各端末装置３０１、３０２は、従来のネットワークアプリケーション実行システムにおいては用いられていた移動体交換機を介することなく、直接各端末装置３０１、３０２相互間において、そのアプリケーションを実行することが可能になる。
【００６２】
このため、従来のネットワークアプリケーション実行システムと比較して、移動体交換機そのものを省くことが可能になり、システムの構造の単純化を図ることができる。
【００６３】
【発明の実施の形態】
図１及び図２は本発明の第一の実施形態に係るネットワークアプリケーション分散実行システムを示す。図１は、本実施形態に係るネットワークアプリケーション分散実行システムの構成を示すブロック図であり、図２は、図１に示したネットワークアプリケーション分散実行システムの動作を示すフローチャートである。
【００６４】
本実施形態においては、イベント収集型ＡＰＩ、状態収集型ＡＰＩ、接続先制御型ＡＰＩ、ユーザインタラクションＡＰＩ、データベースアクセス型ＡＰＩ、処理呼び出し型ＡＰＩ及び処理終了型ＡＰＩのそれぞれが用いられている。
【００６５】
なお、本実施形態は、ネットワークアプリケーションとして、自動コールバックサービスアプリケーションを例に用いる。この自動コールバックサービスは，電話をかけた相手が通話中だった場合に起動され，相手の電話が終わったことをトリガーとして，自動的に電話をかけ直すサービスである。
【００６６】
図１は、本実施形態に係るネットワークアプリケーション分散実行システム１０のブロック図である。
【００６７】
本実施形態に係るネットワークアプリケーション分散実行システム１０は、ネットワークアプリケーションサーバ１００、第一の端末装置１１０及び第二の端末装置１２０から構成されている。
【００６８】
ネットワークアプリケーションサーバ１００は，アプリケーション記憶部１０１と、加入者情報記憶部１０２と、加入者／アプリケーション情報管理部１０３と、メッセージ送受信部１０４と、から構成されている。
【００６９】
アプリケーション記憶部１０１はサービスアプリケーション（アプリケーション実行スクリプト）を記憶する。このアプリケーション記憶部１０１に記憶されているアプリケーション実行スクリプトは、もともと集中型交換網向けに開発されたものである。
【００７０】
加入者情報記憶部１０２は、加入者と各加入者が使用しているアプリケーションとの間の対応関係を記憶する。
【００７１】
加入者／アプリケーション情報管理部１０３は、アプリケーション記憶部１０１及び加入者情報記憶部１０２の管理を行う。
【００７２】
例えば，加入者からの要求に対して、要求されたサービスを実施するネットワークアプリケーションを加入者の端末装置にダウンロードさせる際の許諾権管理を行う。
【００７３】
メッセージ送受信部１０４は、第一及び第二の端末装置１１０、１２０との間でメッセージその他のデータ交換を行う。
【００７４】
第一の端末装置１１０は、入力装置１１１、出力装置１１２、アプリケーション制御部１１３、状態変化検出部１１４、接続状態制御部１１５、メッセージ送受信部１１６、アプリケーション記憶部１１７及び呼状態記憶部１１８から構成されている。
【００７５】
入力装置１１１は、例えば、数字その他の記号を示すキーとして構成することができる。また、例えば、第一の端末装置１１０が出力装置１１２として液晶画面を有する場合には、入力装置１１１は、液晶画面上に積層されたタッチパネルとして構成することができる。また、例えば、入力装置１１１は話者の音声認識を行うことができるように構成し、話者の音声を直接に入力するようにすることもできる。
【００７６】
出力装置１１２は、例えば、文字その他の記号を表す液晶画面からなる。さらには、音声メッセージを伝えるスピーカーを備えることも可能である。
【００７７】
アプリケーション制御部１１３は、ネットワークアプリケーションの実行と、アプリケーション記憶部１１７の管理とを行う。
【００７８】
状態変化検出部１１４は、ネットワークアプリケーションから指定されたイベントを監視し、イベントが発生したことをアプリケーション制御部１１３に通知する。イベントは、例えば、呼の接続が完了した場合や、接続が終了した場合、端末装置の位置が変更した場合等に発生する。
【００７９】
接続状態制御部１１５は、呼状態記憶部１１８の管理、呼状態の遷移処理、呼状態の遷移処理に伴うメッセージ作成処理その他の処理を行う。また、接続状態が変化した場合には、接続状態制御部１１５は、状態変化検出部１１４にその旨を通知する。
【００８０】
メッセージ送受信部１１６は、別個の端末装置及びネットワークアプリケーションサーバ１００との間でメッセージその他のデータ交換を行う。
【００８１】
アプリケーション記憶部１１７は、ネットワークアプリケーションサーバ１００からダウンロードしてきたアプリケーション実行スクリプトを記憶する。
【００８２】
呼状態記憶部１１８は、自端末装置及び対向端末装置の呼状態を記憶する。
【００８３】
アプリケーション制御部１１３は、アプリケーション記憶部１１７の他に、入力装置１１１、出力装置１１２、状態変化検出部１１４、接続状態制御部１１５及びメッセージ送受信部１１６の制御も行うようになっている。
【００８４】
アプリケーション制御部１１３は次の７個のＡＰＩを含むＡＰＩセットを備えている。
（１）イベント収集型ＡＰＩ
（２）状態収集型ＡＰＩ
（３）接続先制御型ＡＰＩ
（４）ユーザインタラクション型ＡＰＩ
（５）データベースアクセス型ＡＰＩ
（６）処理呼び出し型ＡＰＩ
（７）処理終了型ＡＰＩ
アプリケーション制御部１１３は、このＡＰＩセットを用いて、入力装置１１１、出力装置１１２、状態変化検出部１１４、接続状態制御部１１５及びメッセージ送受信部１１６に対する制御を行う。このＡＰＩセットは、もともと集中型交換機向けのネットワークアプリケーション開発に用いられることが想定されて作られているが、本実施形態によれば、機能モジュールが分散した分散型交換網（本実施形態においては、呼状態の管理を分散した各端末装置１１０、１２０がそれぞれ行っている）においても適用することが可能になっている。
【００８５】
第二の端末装置１２０は、入力装置１２１、出力装置１２２、アプリケーション制御部１２３、状態変化検出部１２４、接続状態制御部１２５、メッセージ送受信部１２６、アプリケーション記憶部１２７及び呼状態記憶部１２８から構成されている。
【００８６】
入力装置１２１、出力装置１２２、アプリケーション制御部１２３、状態変化検出部１２４、接続状態制御部１２５、メッセージ送受信部１２６、アプリケーション記憶部１２７及び呼状態記憶部１２８は、それぞれ第一の端末装置１１０における入力装置１１１、出力装置１１２、アプリケーション制御部１１３、状態変化検出部１１４、接続状態制御部１１５、メッセージ送受信部１１６、アプリケーション記憶部１１７及び呼状態記憶部１１８と同一の構成及び機能を有している。
【００８７】
本実施形態においては、第一の端末装置１１０及び第二の端末装置１２０は、端末間での呼の生成、修正、中断を行うためのシグナリングプロトコルとしてＳＩＰ(Session Initiation Protocol)を拡張したプロトコルを用いるものと仮定する。ＳＩＰの仕様はＩＥＴＦ(Internet Engineering Task Force)発行のＲＦＣ２５４３に記述されている。ただし、本実施形態においては、単純化のため、プロトコル動作に必要なメッセージを省略する場合がある。
【００８８】
図２は、図１に示したネットワークアプリケーション分散実行システム１０の動作を示すフローチャートである。以下、図２を参照して、ネットワークアプリケーション分散実行システム１０の動作を説明する。
【００８９】
第一の端末装置１１０のユーザが入力装置１１１を介して第一の端末装置１１０の電源をＯＮにすると（ステップＳ１）、第一の端末装置１１０のアプリケーション制御部１１３はそれをトリガーとして、使用可能なサービスを選択するためのアプリケーションを起動する。
【００９０】
このアプリケーションは、次のようにして、処理呼び出し型ＡＰＩにより、ネットワークアプリケーションサーバ１００から、端末装置を使用している各ユーザが使用可能なサービスの一覧リストを取得する。
【００９１】
先ず、処理呼び出し型ＡＰＩが呼び出されると、第一の端末装置１１０のアプリケーション制御部１１３はネットワークアプリケーションサーバ１００に第一の端末装置１１０のユーザの加入者識別情報を伝える（ステップＳ２）。
【００９２】
この加入者識別情報を受信したネットワークアプリケーションサーバ１００は、その加入者識別情報に基づいて、第一の端末装置１１０のユーザが使用可能なサービスの一覧リストを生成し、第一の端末装置１１０に送信する（ステップＳ３）。
【００９３】
第一の端末装置１１０は、受信したサービス一覧リストを、例えば、出力装置１１２の表示画面に表示する（ステップＳ４）。
【００９４】
第一の端末装置１１０のユーザは、出力装置１１２の表示画面に表示されたサービスの中から、使用したいサービスを選択し、入力装置１１１を介して、そのサービスを指定する（ステップＳ５）。
【００９５】
サービスが指定されると、アプリケーション制御部１１３は、ユーザが選択したサービスを実行するためのネットワークアプリケーションのダウンロードをネットワークアプリケーションサーバ１００に要求する（ステップＳ６）。
【００９６】
次いで、第一の端末装置１１０は、該当するネットワークアプリケーションをネットワークアプリケーションサーバ１００からダウンロードする（ステップＳ７）。
【００９７】
ここで、ネットワークアプリケーションサーバ１００へのネットワークアプリケーションのダウンロードの要求（ステップＳ６）及びネットワークアプリケーションサーバ１００からのネットワークアプリケーションのダウンロード（ステップＳ７）は、アプリケーション実行スクリプトがデータベースアクセス型ＡＰＩを使用することにより、実現される。
【００９８】
ネットワークアプリケーションサーバ１００からダウンロードされたネットワークアプリケーションはメッセージ送受信部１１６を介してアプリケーション制御部１１３に送られる。
【００９９】
アプリケーション制御部１１３は、受信したネットワークアプリケーションを起動するための第一のトリガーを状態変化検出部１１４に設定する（ステップＳ８）。
【０１００】
本実施形態においては、ネットワークアプリケーション起動のための第一のトリガーを、「第一の端末装置１１０が相手側端末装置が通話中であること検知したとき」すなわち「相手側端末装置からＢＵＳＹメッセージを受け取ったとき」に設定する。
【０１０１】
この第一のトリガーの設定は、アプリケーション制御部１１３が、イベント収集型ＡＰＩを介して、状態変化検出部１１４に対して行う。
【０１０２】
さらに、イベントの検知は接続状態制御部１１５によって行われるため、状態変化検出部１１４は、接続状態制御部１１５に対して、イベントが発生したときには、その旨を状態変化検出部１１４に通知するように指示する（ステップＳ９）。
【０１０３】
ここで、第一の端末装置１１０のユーザが第二の端末装置１２０に電話をかける場合を想定する（ステップＳ１０）。
【０１０４】
先ず、ユーザが入力装置１１１を介して、相手方の端末装置の電話番号を入力すると、アプリケーション制御部１１３は接続状態制御部１１５に対して接続要求を行う（ステップＳ１１）。
【０１０５】
この接続要求に対して、接続状態制御部１１５は、メッセージ送受信部１１６を介して、第二の端末装置１２０に対してＩＮＶＩＴＥメッセージを送信する（ステップＳ１２）。
【０１０６】
ここで、第二の端末装置１２０は、第一の端末装置１１０が電話をかけてくる前に、既に第三の端末装置１３０と接続状態になっているものとする（ステップＡ１、Ａ２及びＡ３）。
【０１０７】
このため、第二の端末装置１２０は、第一の端末装置１１０から発信されたＩＮＶＩＴＥメッセージに対して、ＢＵＳＹメッセージを返信する（ステップＳ１３）。
【０１０８】
第一の端末装置１１０が第二の端末装置１２０からＢＵＳＹメッセージを受信すると、ステップＳ９において設定された状態変化検出部１１４から接続状態制御部１１５への指示に従って、接続状態制御部１１５は、状態変化検出部１１４に対して、指定されたイベントが発生したことを通知する(ステップＳ１４）。
【０１０９】
この通知に応答して、状態変化検出部１１４はステップＳ８において設定された第一のトリガーを発火させ、その結果、自動コールバックサービスアプリケーションが起動される。
【０１１０】
このとき、第一のトリガーが発火したことは、状態変化検出部１１４から、アプリケーション制御部１１３に対して、イベント収集型ＡＰＩを介して、通知される（ステップＳ１５）。
【０１１１】
次いで、アプリケーション制御部１１３は、自動コールバックサービスを開始する前に、第一の端末装置１１０のユーザに対して、出力装置１１２を介して、自動コールバックサービスを実行しても良いかどうかを尋ねる（ステップＳ１６）。
【０１１２】
第一の端末装置１１０のユーザがそれに同意すると（ステップＳ１７）、第一の端末装置１１０のアプリケーション制御部１１３は、次の動作を起動させるために必要な第二のトリガーを設定する（ステップＳ１８）。
【０１１３】
ここで、第一の端末装置１１０のユーザに対する自動コールバックサービスの実行の可否の問い合わせ（ステップＳ１６）及びその問い合わせに対する第一の端末装置１１０のユーザの同意の受領（ステップＳ１７）はアプリケーション制御部１１３がユーザーインタラクション型ＡＰＩを介して行う。
【０１１４】
本実施形態においては、「第二の端末装置１２０が切断状態になった場合」が第二のトリガーとして設定される。この第二のトリガーの設定は状態収集型ＡＰＩを使用して行われる。
【０１１５】
第一の端末装置１１０は、リモートにある第二の端末装置１２０の状態遷移を検知するため、第二の端末装置１２０に対して、第二の端末装置１２０が切断状態になった場合に第一の端末装置１１０にその旨の通知を行うように指定するメッセージ(SUBSCRIBE)を送信する（ステップＳ１９）。
【０１１６】
第二の端末装置１２０が第三の端末装置１３０からＢＹＥメッセージを受け取り（ステップＳ２０）、切断状態に状態遷移すると、第二の端末装置１２０は、ステップＳ１９において指定されたメッセージ(SUBSCRIBE)に従って、切断状態になったことを示すメッセージ(NOTIFY)を第一の端末装置１１０の状態変化検出部１１４に伝える（ステップＳ２１）。
【０１１７】
第一の端末装置１１０が第二の端末装置１２０からこのメッセージを受信すると、ステップＳ１８において設定した第二のトリガーが発火し（ステップＳ２２）、自動コールバックサービスアプリケーションが次の命令を実行する。
【０１１８】
第二のトリガーが発火したことは、状態収集型ＡＰＩを介して、状態変化検出部１１４からアプリケーション制御部１１３に対して通知される。
【０１１９】
アプリケーション制御部１１３は、自動コールバックサービスアプリケーションに従って、第一の端末装置１１０のユーザに対して、出力装置１１２を介して、自動コールバックを行っていることを通知する（ステップＳ２３）。
【０１２０】
ここで、自動コールバックを行っている旨の通知はユーザーインタラクション型ＡＰＩを介して実施される。
【０１２１】
次いで、自動コールバックサービスアプリケーションは第一の端末装置１１０の接続状態制御部１１５に指示を出し、第二の端末装置１２０と接続することを要求する（ステップＳ２４)。この要求は、接続先制御型ＡＰＩを介して実施される。
【０１２２】
この要求に応じて、接続状態制御部１１５はメッセージ送受信部１１６を介して第二の端末装置１２０にＩＮＶＩＴＥメッセージを送出する（ステップＳ２５）。
【０１２３】
第二の端末装置１２０のユーザが電話に応じた場合、第二の端末装置１２０は第一の端末装置１１０に対してＯＫメッセージを送信する（ステップＳ２６）。
【０１２４】
第二の端末装置１２０が第一の端末装置１１０からＯＫメッセージを受け取ると、第一の端末装置１１０及び第二の端末装置１２０はそれぞれ接続状態に遷移し（ステップＳ２７）、第一の端末装置１１０と第二の端末装置１２０との間で通話が可能となる。
【０１２５】
通話が可能となった後は、自動コールバックサービスアプリケーションは、処理終了型ＡＰＩを用いて、アプリケーション実行スクリプトの実行状態を終了し、接続中の呼に対する制御権を放棄する。
【０１２６】
図３は本発明の第二の実施形態に係るネットワークアプリケーション分散実行システムの構成を示すブロック図である。
【０１２７】
本実施形態においては、ネットワークアプリケーションとして、番号変換アプリケーションを例に用いる。この番号変換アプリケーションは、予め指定された接続先アドレスへの接続要求が発生した場合、番号変換表にアクセスし、接続元アドレスと接続先アドレスとから転送先アドレスを決定し、転送を行う。この番号変換アプリケーションを使えば、例えば、取引先の代表番号に電話をかけるだけで、該当する取引先部署の内線に自動的に電話を転送させることが可能になる。
【０１２８】
以下に用いる例では、さらに、接続していた時間をデータベースに書き込み、接続時間の把握を行うものとする。
【０１２９】
図３に示すように、本実施形態に係るネットワークアプリケーション分散実行システム２０は、第一の実施形態に係るネットワークアプリケーション分散実行システム１０の構造に加えて、データベース１４０が加えられている。
【０１３０】
データベース１４０は、第一の端末装置１１０のメッセージ送受信部１１６と接続されており、予め作成された番号変換表を記憶しているとともに、第一の段末装置１１０の通信時間を記録する。
【０１３１】
図４は、図３に示したネットワークアプリケーション分散実行システム２０の動作を示すフローチャートである。以下、図４を参照して、本実施形態に係るネットワークアプリケーション分散実行システム２０の動作を説明する。
【０１３２】
第一の端末装置１１０のユーザーが、入力装置１１１を介して、アプリケーション制御部１１３に対して、あるアドレス（例えば、取引先の代表アドレス）に電話をかけるように要求すると（ステップＴ１）、アプリケーション制御部１１３は接続状態制御部１１５にその要求を伝える（ステップＴ２）。
【０１３３】
ここで、第一の端末装置１１０に対して、ネットワークアプリケーションサーバ１００は、SIPにおけるプロキシーサーバ（端末間でのSIPメッセージ交換を仲介するサーバ）として登録されているものとする。
【０１３４】
アプリケーション制御部１１３からの要求に応答して、接続状態制御部１１５は、メッセージ送受信部１１６を介して、ネットワークアプリケーションサーバ１００に対して、INVITEメッセージを送信する（ステップＴ３）。
【０１３５】
アプリケーションサーバ１００は、受け取ったINVITEメッセージの接続元アドレスと接続先アドレスとに基づいて、該当する番号変換アプリケーションを判別し、第一の端末装置１１０にその番号変換アプリケーションをダウンロードする（ステップＴ４）。
【０１３６】
第一の端末装置１１０はダウンロードしたアプリケーションをアプリケーション制御部１１３において起動させ、アプリケーション制御部１１３から、データベースアクセス型ＡＰＩを介して、データベース１４０内に記憶されている番号変換表にアクセスを行い（ステップＴ５）、データベース１４０から転送先番号を取得する（ステップＴ６）。
【０１３７】
次に、アプリケーション制御部１１３は、状態収集型ＡＰＩを介して、状態変化検出部１１４に対して、接続が切断されたというイベントが発生したときに、その旨の通知がアプリケーション制御部１１３に対して行われるように、トリガーを設定する（ステップＴ７）。
【０１３８】
このイベントは、接続状態制御部１１５によって検知されるイベントであるため、状態変化検出部１１４は接続状態制御部１１５に対して、「接続が切断した状態への遷移」というイベントが発生したときには、その旨の通知を行うように設定を行う（ステップＴ８）。
【０１３９】
次いで、アプリケーション制御部１１３は、番号変換アプリケーションに従って、ステップＴ６において取得された転送先アドレスへの接続要求を、接続先制御型ＡＰＩを介して、接続状態制御部１１５に伝える（ステップＴ９）。
【０１４０】
この接続要求を受けた接続状態制御部１１５は、転送先である第二の端末装置１２０に対してINVITEメッセージを送信する（ステップＴ１０）。
【０１４１】
第二の端末装置１２０は、第一の端末装置１１０からの接続要求を受理すると、OKメッセージを第一の端末装置１１０に返信し（ステップＴ１１）、第一の端末装置１１０及び第二の端末装置１２０は接続状態に遷移する（ステップＴ１２）。これにより、第一の端末装置１１０及び第二の端末装置１２０間での通話が可能になる。
【０１４２】
第二の端末装置１２０が接続を切断することを決定すると、第二の端末装置１２０からBYEメッセージが第一の端末装置１１０の接続状態制御部１１５に発信される（ステップＴ１３）。
【０１４３】
第一の端末装置１１０の接続状態制御部１１５が接続を切断することを受理すると、第二の端末装置１２０に対してOKメッセージを返信する（ステップＴ１４）。
【０１４４】
これによって、ステップＴ８で指定された「接続が切断した状態への遷移」というイベントが発生するため、接続状態制御部１１５は状態変化検出部１１４に対してイベント発生の通知を行う（ステップＴ１５）。
【０１４５】
状態変化検出部１１４は、状態収集型ＡＰＩを介して、ステップＴ７で設定されたトリガーを発火させ、アプリケーション制御部１１３への通知を行う（ステップＴ１６）。
【０１４６】
アプリケーション制御部１１３は、データベースアクセス型ＡＰＩを介して、データベース１４０に転送先との接続時間を記録する（ステップＴ１７）。
【０１４７】
上述の第二の実施形態においては、第一の端末装置１１０がデータベース１４０に対して接続時間を書き込んでいたが、第三の実施形態として以下に述べるように、第二の端末装置１２０のメッセージ送受信部１２６をデータベース１４０に接続させておくことにより、データベース１４０への接続時間の書込を第二の端末装置１２０が行うようにさせることもできる。
【０１４８】
図５は第三の実施形態に係るネットワークアプリケーション分散実行システムの動作を示すフローチャートである。
【０１４９】
第三の実施形態に係るネットワークアプリケーション分散実行システムにおいては、データベース１４０は第二の端末装置１２０のメッセージ送受信部１２６に接続されており、第二の実施形態とは異なり、第一の端末装置１１０のメッセージ送受信部１１６には接続されていない。この点以外の構造は第二の実施形態に係るネットワークアプリケーション分散実行システム２０と同じである。
【０１５０】
図５のステップＴ１からＴ１２までは図４に示したステップＴ１からＴ１２までと同じであるので説明を省略する。
【０１５１】
本実施形態に係るネットワークアプリケーション分散実行システムの動作が第二の実施形態における動作と異なるのは、ステップＴ３において、アプリケーションサーバ１００が第一の端末装置１１０からINVITEメッセージを受信した後に、第二の端末装置１２０にもアプリケーションをプッシュする点である（ステップＵ１）。
【０１５２】
第一の端末装置１１０が接続を切断すること決定すると、第一の端末装置１１０の接続状態制御部１１５はBYEメッセージを第二の端末装置１２０に発信する（ステップＵ２）。
【０１５３】
第二の端末装置１２０が接続を切断することを受理すると、第一の端末装置１１０の接続状態制御部１１５に対してOKメッセージを返信する（ステップＵ３）。
【０１５４】
ステップＵ１において第二の端末装置１２０にダウンロードされたアプリケーションは、接続状態が切断状態に遷移したことをトリガーとして、データベース１４０に接続時間を書き込む（ステップＵ４）。
【０１５５】
上述の第三の実施形態においては、データベース１４０は第二の端末装置１２０のメッセージ送受信部１２６にのみ接続されており、第一の端末装置１１０のメッセージ送受信部１１６には接続されていないものとしたが、データベース１４０を第二の端末装置１２０のメッセージ送受信部１２６及び第一の端末装置１１０のメッセージ送受信部１１６の双方に接続させることにより、第一の端末装置１１０及び第二の端末装置１２０の何れもがデータベース１４０に対して接続時間を書き込むことができるようにすることも可能である。
【０１５６】
以下に、第四の実施形態に係るネットワークアプリケーション分散実行システムを説明する。
【０１５７】
本実施形態においては、ネットワークアプリケーションとして、プリペイドアプリケーションを例に用いる。このプリペイドアプリケーションは、接続元もしくは接続先のユーザーが予め払い込んだ金額に相当する時間だけ通話を可能にするものである。残りの接続可能時間はデータベースに記憶されている。
【０１５８】
以下に述べる第四の実施形態においては、接続先の端末装置が、データベースにアクセスすることにより、接続元の接続可能時間を取得し、残り時間がなくなる前に、接続元に対して、残り時間が少ないことを通知する。接続可能時間がゼロになったときは、接続先の端末装置が、接続を切断する。また、接続先の端末装置は、切断後に、接続した時間をデータベースに書き込む。
【０１５９】
図６は、第四の実施形態に係るネットワークアプリケーション分散実行システムのブロック図である。
【０１６０】
本実施形態に係るネットワークアプリケーション分散実行システムは、図３に示した第二の実施形態に係るネットワークアプリケーション分散実行システムと同一の構造を有している。なお、本実施形態におけるデータベース１４０は、予め接続可能時間を記憶しており、さらに、接続切断後に通話時間を記録する。
【０１６１】
図６は、本実施形態に係るネットワークアプリケーション分散実行システムの動作を示すフローチャートである。以下、図６を参照して、本実施形態に係るネットワークアプリケーション分散実行システムの動作を説明する。
【０１６２】
本実施形態においては、ネットワークアプリケーションサーバ１００は、第一の端末装置１１０に対して、SIPにおけるリダイレクトサーバ（接続元の端末装置に対して転送先の通知を行うサーバ）として登録されているものとする。
【０１６３】
第一の端末装置１１０が第二の端末装置１２０に接続するために、INVITEメッセージを発信する。ネットワークアプリケーションサーバ１００は、第一の端末装置１１０に対して、プロキシーサーバとして登録されているため、INVITEメッセージはネットワークアプリケーションサーバ１００に到達する（ステップＶ１）。
【０１６４】
アプリケーションサーバ１００は、受け取ったINVITEメッセージの接続元アドレスと接続先アドレスとに基づいて、該当するプリペイドアプリケーションを判別し、第二の端末装置１２０のアプリケーション制御部１２３にそのプリペイドアプリケーションをプッシュする（ステップＶ２）。
【０１６５】
アプリケーション制御部１２３は、状態収集型ＡＰＩを介して、状態変化検出部１２４に対して、第一の端末装置１１０からの接続要求があった場合に通知を行うように、第一のトリガーを設定する（ステップＶ３）。
【０１６６】
この「第一の端末装置１１０からの接続要求があった」というイベントは、接続状態制御部１２５によって検知されるイベントであるため、状態変化検出部１２４は、接続状態制御部１２５に対して、第一のイベント通知を行うように設定を行う（ステップＶ４）。
【０１６７】
アプリケーションサーバ１００は、ステップＶ２において第二の端末装置１２０にプリペイドアプリケーションをプッシュした後、第一の端末装置１１０に対して、転送先である第二の端末装置１２０の接続先アドレスを通知するメッセージ（Moved Temporarily）を送信する（ステップＶ５）。
【０１６８】
次いで、第一の端末装置１１０は第二の端末装置１２０に対して接続要求メッセージ(INVITE)を送信する（ステップＶ６）。
【０１６９】
第二の端末装置１２０の接続状態制御部１２５は接続要求メッセージ(INVITE)を受信すると、状態変化検出部１２４に対して、第一のイベント通知を行う（ステップＶ７）。
【０１７０】
第一のイベント通知を受けた状態変化検出部１２４は状態収集型ＡＰＩを介して第一のトリガーを発火させ、アプリケーション制御部１２３に対して、第一のトリガーが発火した旨の通知を行う（ステップＶ８）。
【０１７１】
次いで、アプリケーション制御部１２３は第一の端末装置１１０から受信したINVITEメッセージに含まれる第一の端末装置１１０のアドレスに基づいて、接続可能な時間をデータベース１４０に問い合わせる（ステップＶ９）。この問い合わせにはデータベースアクセス型ＡＰＩが用いられる。
【０１７２】
データベース１４０は、検索して得られた接続可能時間を第二の端末装置１２０に送信する（ステップＶ１０）。
【０１７３】
次いで、第二の端末装置１２０のアプリケーション制御部１２３は、接続が切断したときに、その旨を知らせる第二のトリガーがアプリケーション制御部１２３に送られてくるように、状態変化検出部１２４に対して設定を行う（ステップＶ１１）。
【０１７４】
接続が切断されたというイベントは、接続状態制御部１２５によって検知されるイベントであるため、このイベントが発生したときに、その旨を知らせる第二のイベント通知が接続状態制御部１２５から送られてくるように、状態変化検出部１２４は接続状態制御部１２５に対して、必要な設定を行う（ステップＶ１２）。
【０１７５】
次いで、アプリケーション制御部１２３は、第一の端末装置１１０と接続するために、接続状態制御部１２５に対して、接続先制御型ＡＰＩを介して、接続を要求する（ステップＶ１３）。
【０１７６】
接続要求を受信すると、接続状態制御部１２５は、メッセージ送受信部１２６を介して、OKメッセージを第一の端末装置１１０に送信する（ステップＶ１４）。
【０１７７】
これにより、第一及び第二の端末装置１１０、１２０は接続状態に遷移し、通話が可能となる（ステップＶ１５）。
【０１７８】
次いで、アプリケーション制御部１２３はデータベース１４０から取得した接続可能時間に基づいて、残り時間がわずか（例えば、残り３０秒）になったときに、第一の端末装置１１０にその旨を知らせる時刻を決定し、その時刻になったときに、その旨をアプリケーション制御部１２３に知らせる第三のトリガーを状態変化検出部１２４に対して設定する（ステップＶ１６）。
【０１７９】
ステップＶ１６において設定した時刻になると、第三のトリガーが発火し（ステップＶ１７）、アプリケーション制御部１２３は、ユーザーインタラクション型ＡＰＩを介して、接続状態制御部１２５に対して、接続可能時間があとわずかであることを第一の端末装置１１０に知らせるように要求する（ステップＶ１８）。
【０１８０】
接続状態制御部１２５は、この要求に応答して、メッセージ送受信部１２６を介して、MESSAGEメッセージを第一の端末装置１１０に送信する（ステップＶ１９）。このMESSAGEメッセージにより、第一の端末装置１１０の出力装置１１２に接続可能時間があとわずかである旨が表示される。
【０１８１】
さらに、アプリケーション制御部１２３は、接続可能時間がゼロになったときに、アプリケーション制御部１２３に対してその旨の通知が送られてくるように、第四のトリガーを状態変化検出部１２４に対して設定する（ステップＶ２０）。
【０１８２】
接続可能時間がゼロになると、第四のトリガーが発火し（ステップＶ２１)、アプリケーション制御部１２３は、接続状態制御部１２５に対して、接続先制御型ＡＰＩを介して、接続を切断するように要求する（ステップＶ２２）。
【０１８３】
この接続切断要求に応答して、接続状態制御部１２５は、メッセージ送受信部１２６を介して、BYEメッセージを第一の端末装置１１０に送信する（ステップＶ２３）。
【０１８４】
第一の端末装置１１０が接続の切断を受理すると、OKメッセージが第一の端末装置１１０から第二の端末装置１２０に返信される（ステップＶ２４）。
【０１８５】
接続状態から切断状態へと遷移したことに伴い、接続状態制御部１２５から状態変化検出部１２４に対して、ステップＶ１２において設定された第二のイベント通知が行われる(ステップＶ２５）。
【０１８６】
第二のイベント通知を受けた状態変化検出部１２４は、状態収集型ＡＰＩを介して、第二のトリガーを発火させ、アプリケーション制御部１２３に対して、第二のトリガーが発火した旨の通知を行う（ステップＶ２６）。
【０１８７】
次いで、アプリケーション制御部１２３は、データベースアクセス型ＡＰＩを介して、データベース１４０に、第一の端末装置１１０との転送先との接続時間を記録する（ステップＶ２７）。
【０１８８】
【発明の効果】
以上のように、本発明によれば、集中型交換網システム向けに開発されたネットワーク・アプリケーションを分散型交換網システム上で実行させることができるようになり、分散型システムのメリットを活かしながら、サービスアプリケーションの流用を促進することができる。
【図面の簡単な説明】
【図１】本発明の第一の実施形態に係るネットワークアプリケーション分散実行システムの構成を示すブロック図である。
【図２】図１に示した第一の実施形態に係るネットワークアプリケーション分散実行システムの動作を示すフローチャートである。
【図３】本発明の第二の実施形態に係るネットワークアプリケーション分散実行システムの構成を示すブロック図である。
【図４】図３に示した第二の実施形態に係るネットワークアプリケーション分散実行システムの動作を示すフローチャートである。
【図５】第三の実施形態に係るネットワークアプリケーション分散実行システムの動作を示すフローチャートである。
【図６】第四の実施形態に係るネットワークアプリケーション分散実行システムの動作を示すフローチャートである。
【図７】従来のネットワークアプリケーション実行システムの概略的な構成を示すブロック図である。
【図８】本発明に係るネットワークアプリケーション分散実行システムの概略的な構成を示すブロック図である。
【符号の説明】
１０  本発明の第一の実施形態に係るネットワークアプリケーション分散実行システム
１００  ネットワークアプリケーションサーバ
１０１  アプリケーション記憶部
１０２  加入者情報記憶部
１０３  加入者／アプリケーション情報管理部
１０４  メッセージ送受信部
１１０  第一の端末装置
１１１  第一の端末装置における入力装置
１１２  第一の端末装置における出力装置
１１３  第一の端末装置におけるアプリケーション制御部
１１４  第一の端末装置における状態変化検出部
１１５  第一の端末装置における接続状態制御部
１１６  第一の端末装置におけるメッセージ送受信部
１１７  第一の端末装置におけるアプリケーション記憶部
１１８  第一の端末装置における呼状態記憶部
１２０  第二の端末装置
１２１  第一の端末装置における入力装置
１２２  第一の端末装置における出力装置
１２３  第一の端末装置におけるアプリケーション制御部
１２４  第一の端末装置における状態変化検出部
１２５  第一の端末装置における接続状態制御部
１２６  第一の端末装置におけるメッセージ送受信部
１２７  第一の端末装置におけるアプリケーション記憶部
１２８  第一の端末装置における呼状態記憶部
１４０  データベース
【図１】
0003743620.tif 000002
【図２】
0003743620.tif 000003
【図３】
0003743620.tif 000004
【図４】
0003743620.tif 000005
【図５】
0003743620.tif 000006
【図６】
0003743620.tif 000007
【図７】
0003743620.tif 000008
【図８】
0003743620.tif 000009