(57)【要約】【課題】複数の第三者サービスアプリケーションが連携する場合にも、サービス矛盾や信号矛盾等の発生しない付加サービス連携を実現するサービス連携装置を提供する。【解決手段】サービス連携装置が、受信した呼制御信号に基づいて呼び出すべき付加サービスを特定するとともに、サービス競合情報記憶手段から読み出した起動制限の情報を参照することにより、特定された複数の付加サービス同士で矛盾があるかどうかをチェックし、このチェックの結果矛盾がある場合には前記呼制御信号の発側に対してエラー応答を返すサービス分析処理部を備える。【選択図】図６
2008211739.tif 000002
【特許請求の範囲】
【請求項１】
呼制御ネットワークにおける付加サービスの連携を制御するサービス連携装置であって、
付加サービスの種別同士の起動制限の情報を記憶するサービス競合情報記憶手段と、
受信した呼制御信号に基づいて呼び出すべき付加サービスを特定するとともに、前記サービス競合情報記憶手段から読み出した前記起動制限の情報を参照することにより、特定された複数の前記付加サービス同士で矛盾があるかどうかをチェックし、このチェックの結果矛盾がある場合にはエラー処理を行なうサービス分析処理部と、を具備し、
前記サービス分析処理部によるチェックの結果矛盾がない場合に付加サービスを呼び出す
ことを特徴とするサービス連携装置。
【請求項２】
請求項１に記載のサービス連携装置において、
複数の付加サービスの呼び出し順序を特定するための付加サービス情報を保持する付加サービスデータ記憶手段をさらに具備し、
前記サービス分析処理部は、前記チェックの結果前記複数のサービス同士で矛盾がなかった場合には、前記付加サービスデータ記憶手段から読み出した前記付加サービス情報に基づいて呼び出すべき付加サービスの呼び出し順序を決定し、
前記サービス分析処理部によって決定された呼び出し順序で前記付加サービスを呼び出すことを特徴とするサービス連携装置。
【請求項３】
請求項１又は２のいずれか一項に記載のサービス連携装置において、
付加サービス毎に呼制御信号の書き換えが許される範囲を表わす書き換え許可情報を記憶する書き換え許可情報記憶手段と、
受信した呼制御信号を所定の付加サービスに送信して当該付加サービスから応答の呼制御信号を受信した際に、送信時の呼制御信号と受信時の呼制御信号とを比較するとともに、この比較結果と前記書き換え許可情報記憶手段から読み出した当該付加サービスの前記書き換え許可情報に基づいて信号矛盾の可能性をチェックするサービス競合制御処理部
を更に具備することを特徴とするサービス連携装置。
【請求項４】
請求項１から３までのいずれか一項に記載のサービス連携装置において、
前記付加サービスデータ記憶手段は、当該付加サービスとの間の通信に用いる通信プロトコルを特定するための呼び出し方法情報を保持し、
前記呼び出し方法情報で規定される通信プロトコルで前記付加サービスとの間の通信を行なえるようにプロトコル変換処理を行なう
ことを特徴とするサービス連携装置。
【請求項５】
請求項１から４までのいずれか一項に記載のサービス連携装置と、
前記呼制御ネットワークを介して端末装置との間で呼制御信号を送受信するとともに、この呼制御信号に応じて付加サービスを呼び出す必要がある場合には当該呼制御信号を前記サービス連携装置に転送する呼制御装置と、
前記サービス連携装置から呼び出される付加サービスと、
からなるサービス連携システム。
【請求項６】
呼制御ネットワークにおける付加サービスの連携を制御するサービス連携方法であって、
サービス連携装置が備えるサービス競合情報記憶手段に、付加サービスの種別同士の起動制限の情報を記憶させておき、
前記サービス連携装置が備えるサービス分析処理部が、受信した呼制御信号に基づいて呼び出すべき付加サービスを特定するとともに、前記サービス競合情報記憶手段から読み出した前記起動制限の情報を参照することにより、特定された複数の前記付加サービス同士で矛盾があるかどうかをチェックし、このチェックの結果矛盾がある場合にはエラー処理を行なうとともに、
前記サービス分析処理部によるチェックの結果矛盾がない場合に付加サービスを呼び出す
ことを特徴とするサービス連携方法。
【請求項７】
呼制御ネットワークにおける付加サービスの連携を制御するサービス連携方法をコンピュータに実行させるコンピュータプログラムであって、
付加サービスの種別同士の起動制限の情報を記憶させておくサービス競合情報記憶手段を備えたコンピュータに、
受信した呼制御信号に基づいて呼び出すべき付加サービスを特定するとともに、前記サービス競合情報記憶手段から読み出した前記起動制限の情報を参照することにより、特定された複数の前記付加サービス同士で矛盾があるかどうかをチェックし、このチェックの結果矛盾がある場合にはエラー処理を行なうとともに、
付加サービス同士で矛盾があるかどうかの前記チェックの結果矛盾がない場合に付加サービスを呼び出す
処理を実行させるコンピュータプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、呼制御ネットワークにおける付加サービスを複数連携させるためのサービス連携装置、サービス連携システム、サービス連携方法、およびそのコンピュータプログラムに関する。
【背景技術】
【０００２】
通信事業者におけるＶｏＩＰ（Ｖｏｉｃｅ  ｏｖｅｒ  Ｉｎｔｅｒｎｅｔ  Ｐｒｏｔｏｃｏｌ，ＩＰ上の音声）網のような呼制御ネットワークにおける付加サービス提供方法としては、ＳＩＰ（Ｓｅｓｓｉｏｎ  Ｉｎｉｔｉａｔｉｏｎ  Ｐｒｏｔｏｃｏｌ，セッション・イニシエーション・プロトコル）サーバなどの呼制御装置において、信号着信時にユーザのサービス契約情報に応じて呼制御装置に配備されている付加サービスのプログラムモジュールを動作させ、以降の信号の転送動作をプログラムモジュールによって制御するものが一般的である。この方法では、サービスは通信事業者が運用する呼制御装置上のプログラムを呼び出すことによって実現されることから、通信事業者ではない第三者がサービスを開発することが難しい。一方、近年、多様なネットワークサービスを効率的に開発する手法として、ネットワークで接続されたサーバ上の複数のサービスを遠隔坪出により連携させ、効率的にサービスを開発する手法が一般的になり、成果を上げている。
【０００３】
以上のことから、通信事業者における呼制御ネットワークにおいて、上記のような手法を用いて、第三者が運用する遠隔のサービスを呼制御ネットワーク上のセッション制御と連携動作させるサービス開発を実現することが重要である。
【０００４】
呼制御ネットワークにおいて上記のようなサービス開発を実現する方法として、標準化団体である３ＧＰＰ（３ｒｄ  Ｇｅｎｅｒａｔｉｏｎ  Ｐａｒｔｎｅｒｓｈｉｐ  Ｐｒｏｊｅｃｔ）にてＩＭＳ（ＩＰ  Ｍｕｌｔｉｍｅｄｉａ  Ｓｕｂｓｙｓｔｅｍ，ＩＰマルチメディア・サブシステム）が標準化されている。このＩＭＳにおいては、加入者データベースに利用者毎のサービス契約情報（Ｕｓｅｒ  Ｐｒｏｆｉｌｅ，ユーザ・プロファイル）と、サービス起動条件（Ｓｅｒｖｉｃｅ  Ｐｒｏｆｉｌｅ，サービス・プロファイル）が保存される。そして、ＳＩＰサーバにおいて利用者からのＳＩＰ信号着信時にユーザ・プロファイルとサービス・プロファイルを取得し、サービス・プロファイルに含まれるＩｎｉｔｉａｌ  Ｆｉｌｔｅｒ  Ｃｒｉｔｅｒｉａ（ＩＦＣ，イニシャル・フィルタ・クライテリア）で指定されるサービス起動条件に該当する信号であった場合は、起動すべきサービスが配備されている遠隔のアプリケーションサーバに対してＳＩＰ信号を転送することにより、遠隔配備されたサービスアプリケーションとの連携を実現する。
【０００５】
非特許文献１には、ユーザ・プロファイルの抽象構造を表わすＵＭＬモデルが記載されている。
【０００６】
【非特許文献１】「3rd Generation Partnership Project; Technical Specification Group Core Network; IP Multimedia (IM) Subsystem Cx and Dx interfaces; Signaling flows and message contents (Release 5)」,３ＧＰＰ  ＴＳ  ２９．２２８  Ｖ５．１１．０（２００５−０３）,ｐ．３５−３８
【発明の開示】
【発明が解決しようとする課題】
【０００７】
上の背景技術に記載した方式により、呼制御付加サービスとして遠隔サービスアプリケーションを呼び出し、連携することは可能となる。
しかしながら、第三者が開発したアプリケーションを呼び出す場合、転送した信号に対してその呼び出されたアプリケーションがどのような改変を加えて応答信号を返してくるかを事前に知ることは不可能である。そのため、複数の付加サービスにより呼制御信号が書き換えられた結果、信号矛盾が発生し、サービスを正常に継続することが不可能となる可能性があるが、それを防ぐ手段については規定されていない。そのため、呼制御付加サービスにおいて通信事業者が提供する付加サービスと、第三者が開発した付加サービスを複数連携させたい場合は、上記のような矛盾が発生しないようにする必要がある。
【０００８】
本発明は、このような課題を解決することを目的としてなされたものであり、従来の呼制御付加サービス連携方式では実現不可能であった複数の第三者サービスアプリケーション連携において、上記の問題点を克服し、サービス矛盾や信号矛盾等の発生しない呼制御付加サービス連携を実現するサービス連携装置、サービス連携システム、サービス連携方法、およびそのコンピュータプログラムを提供することを目的とする。
【課題を解決するための手段】
【０００９】
［１］上記の課題を解決するため、本発明の一態様によるサービス連携装置は、呼制御ネットワークにおける付加サービスの連携を制御するサービス連携装置であって、付加サービスの種別同士の起動制限の情報を記憶するサービス競合情報記憶手段と、受信した呼制御信号に基づいて呼び出すべき付加サービスを特定するとともに、前記サービス競合情報記憶手段から読み出した前記起動制限の情報を参照することにより、特定された複数の前記付加サービス同士で矛盾があるかどうかをチェックし、このチェックの結果矛盾がある場合にはエラー処理を行なうサービス分析処理部とを具備し、前記サービス分析処理部によるチェックの結果矛盾がない場合に付加サービスを呼び出すことを特徴とするものである。
この構成により、サービス競合情報記憶手段に記憶された起動制限の情報に基づいて、サービス分析処理部が、受信した呼制御信号に基づいて特定される付加サービス間の矛盾をチェックし即ち起動制限をチェックし、矛盾がある場合にはエラー処理をして、矛盾がない場合のみ付加サービスを実際に呼び出す。よって、矛盾のある、即ち起動制限されている複数の付加サービスの組合せを呼び出すことを未然に防止できる。
【００１０】
ここで、付加サービスとは、特定機能の処理を実行する装置であり、例えば、アプリケーションサーバコンピュータが特定機能のコンピュータプログラムを記憶手段から読み出して実行するもの（装置）が付加サービスである。また、付加サービスを呼び出すとは、例えばサービス連携装置などといった外部の装置が、あるいは上記アプリケーションサーバコンピュータ上の他のコンピュータプログラムが、信号を送ることにより、当該特定機能のコンピュータプログラムを起動するあるいは呼び出して実行させることである。
【００１１】
［２］また、本発明の一態様によるサービス連携装置は、上記のサービス連携装置において、複数の付加サービスの呼び出し順序を特定するための付加サービス情報を保持する付加サービスデータ記憶手段をさらに具備し、前記サービス分析処理部は、前記チェックの結果前記複数のサービス同士で矛盾がなかった場合には、前記付加サービスデータ記憶手段から読み出した前記付加サービス情報に基づいて呼び出すべき付加サービスの呼び出し順序を決定し、前記サービス分析処理部によって決定された呼び出し順序で前記付加サービスを呼び出すことを特徴とするサービス連携装置である。
この構成により、付加サービスデータ記憶手段に記憶されている付加サービス情報に基づいて、サービス分析処理部が複数の付加サービスの呼び出し順を決定する。よって、複数の付加サービスを正しい順序で呼び出すことができる。つまり、呼び出し順序による矛盾を未然に防止できる。
【００１２】
［３］また、本発明の一態様によるサービス連携装置は、上記のサービス連携装置において、付加サービス毎に呼制御信号の書き換えが許される範囲を表わす書き換え許可情報を記憶する書き換え許可情報記憶手段と、受信した呼制御信号を所定の付加サービスに送信して当該付加サービスから応答の呼制御信号を受信した際に、送信時の呼制御信号と受信時の呼制御信号とを比較するとともに、この比較結果と前記書き換え許可情報記憶手段から読み出した当該付加サービスの前記書き換え許可情報に基づいて信号矛盾の可能性をチェックするサービス競合制御処理部とを更に具備することを特徴とするサービス連携装置である。
この構成により、サービス競合制御処理部は、書き換え許可情報記憶手段に記憶されている書き換え許可情報に基づき、呼び出された付加サービスが信号中の規定外の部分を書き換えてしまってないかどうかをチェックできる。よって、もし付加サービスが呼制御信号中の許可されていない部分を書き換えてしまった場合にも、それを検出して適切な処置をとることができる。
【００１３】
［４］また、本発明の一態様によるサービス連携装置は、上記のサービス連携装置において、前記付加サービスデータ記憶手段は、当該付加サービスとの間の通信に用いる通信プロトコルを特定するための呼び出し方法情報を保持し、前記呼び出し方法情報で規定される通信プロトコルで前記付加サービスとの間の通信を行なえるようにプロトコル変換処理を行なうことを特徴とするサービス連携装置である。
この構成により、サービス連携装置は、付加サービスデータ記憶手段に記憶されている呼び出し方法情報に基づき、呼制御ネットワーク側で使われているプロトコルとは異なるプロトコルで付加サービスを呼び出すことができる。つまり、付加サービスの構成のしかたに柔軟性を持たせることができるようになる。
【００１４】
［５］また、本発明の一態様によるサービスシステムは、上記のサービス連携装置と、前記呼制御ネットワークを介して端末装置との間で呼制御信号を送受信するとともに、この呼制御信号に応じて付加サービスを呼び出す必要がある場合には当該呼制御信号を前記サービス連携装置に転送する呼制御装置と、前記サービス連携装置から呼び出される付加サービスと、からなるサービス連携システムである。
この構成により、端末装置とサービス連携装置とは呼制御ネットワークを介して呼制御信号をやりとりすることができる。また、サービス連携装置の作用によって、無矛盾な付加サービスを呼び出すことが保証され、サービス連携処理が適切に実行される。
【００１５】
［６］また、本発明の一態様によるサービス連携方法は、呼制御ネットワークにおける付加サービスの連携を制御するサービス連携方法であって、サービス連携装置が備えるサービス競合情報記憶手段に、付加サービスの種別同士の起動制限の情報を記憶させておき、前記サービス連携装置が備えるサービス分析処理部が、受信した呼制御信号に基づいて呼び出すべき付加サービスを特定するとともに、前記サービス競合情報記憶手段から読み出した前記起動制限の情報を参照することにより、特定された複数の前記付加サービス同士で矛盾があるかどうかをチェックし、このチェックの結果矛盾がある場合にはエラー処理を行なうとともに、前記サービス分析処理部によるチェックの結果矛盾がない場合に付加サービスを呼び出すことを特徴とするものである。
【００１６】
［７］また、本発明の一態様によるコンピュータプログラムは、呼制御ネットワークにおける付加サービスの連携を制御するサービス連携方法をコンピュータに実行させるコンピュータプログラムであって、付加サービスの種別同士の起動制限の情報を記憶させておくサービス競合情報記憶手段を備えたコンピュータに、受信した呼制御信号に基づいて呼び出すべき付加サービスを特定するとともに、前記サービス競合情報記憶手段から読み出した前記起動制限の情報を参照することにより、特定された複数の前記付加サービス同士で矛盾があるかどうかをチェックし、このチェックの結果矛盾がある場合にはエラー処理を行なうとともに、付加サービス同士で矛盾があるかどうかの前記チェックの結果矛盾がない場合に付加サービスを呼び出す処理を実行させるコンピュータプログラムである。
この構成により、このコンピュータプログラムがコンピュータ上で実行されることにより、このコンピュータは、付加サービス同士で矛盾がある場合にはエラー処理を行ない、矛盾がない場合にのみ付加サービスを呼び出すサービス連携装置として動作することができる。
【発明の効果】
【００１７】
上記のように、本発明では、サービス分析処理部が付加サービス間の矛盾をチェックして無矛盾な場合にのみ実際に付加サービスを呼び出したり、サービス分析処理部が複数の付加サービスを呼び出す際の適切な呼び出し順序を決定したり、サービス競合制御処理部が付加サービスによる呼制御信号書き換え範囲をチェックしたりするため、呼制御ネットワークサービスの加入者が第三者によって提供されるサービスを柔軟に組み合わせ、選択することが可能となり、利便性が向上する。また、通信事業者においては、競合制御機能により第三者によるサービスによってもたらされる信号矛盾・サービス矛盾などの問題を抑えることが可能となる。
【発明を実施するための最良の形態】
【００１８】
以下、本発明の実施形態について説明する。
本実施形態では、課題を解決するサービス連携方法として、まず通信事業者が運用する呼制御装置と第三者が運用するアプリケーションサーバの間に通信路を設け、双方との信号を仲介する付加サービス連携機能部を設置する。そして、第三者が開発した付加サービスの情報を登録可能な付加サービスデータベースを用意し、サービスアプリケーション毎にアプリケーションサーバのアドレス情報等の信号転送に必要な情報と、サービス種別情報を設定可能とする。そして、そのサービス種別情報をもとに加入者が同時に契約することができるサービスに制約を設ける。
【００１９】
呼制御装置に信号が着信した場合、付加サービス連携機能部に呼制御信号を転送する。呼制御装置からの信号転送を受けた付加サービス連携機能部においては、加入者情報データベースに格納されている加入者の付加サービス契約情報と付加サービスデータベースに格納されている付加サービス情報を基に、連携サービスの呼びだし順序を確定し、その順序に応じて付加サービス機能部に配置されているプログラムモジュールの呼び出しや、呼制御信号転送による第三者サービスの呼び出しを行う。
【００２０】
また、サービス種別毎に、呼制御信号に対するヘッダ書き換え等の制御操作に制約を設け、第三者開発アプリケーション動作後の呼制御信号が制約に従っているかを監視する機能を付加サービス連携機能部に設けることにより、サービス矛盾や信号矛盾を防ぎつつ第三者開発サービスとのサービス連携を実現する。
【００２１】
図１は、本実施形態によるサービス連携システムの主要部構成を示すブロック図である。本システムは、以下の構成により、付加サービス連携機能方式を実現する。図示するように、呼制御ネットワークとアプリケーションサーバとの間にサービス連携機能部を搭載したサービス連携サーバを設けた点が、本方式の特徴である。
【００２２】
図１において、符号３０はサービス連携サーバである。また、３１はサービス連携サーバに搭載されたサービス連携機能部、４０はサービス連携サーバ３０からアクセス可能な加入者情報データベース、５０は同じくサービス連携サーバからアクセス可能な付加サービスデータベース（付加サービスデータ記憶手段）である。加入者情報データベース４０には、加入者ごとの付加サービスの契約情報が格納されている。２０は通信事業者が提供する呼制御ネットワーク（通信ネットワーク）であり、２１はこの呼制御ネットワーク上に設けられた呼制御装置である。
【００２３】
サービス連携サーバ３０はコンピュータシステムを用いて実現する。そして、サービス連携機能部３０の機能はコンピュータプログラムとしてこのコンピュータシステム内の記憶媒体に記憶されており、当該コンピュータシステムのＣＰＵ（中央処理装置）がこのプログラムを読み出して実行することにより、サービス連携機能部３１を実現する。
また、加入者情報データベース４０や付加サービスデータベース５０は、磁気ディスク装置あるいは半導体記憶装置などの記憶手段と、データを管理するデータベース管理システム（ＤＢＭＳ）とにより実現する。データベース管理システムによるデータ管理の手法は様々であるが、例えばリレーショナル型データベースやＸＭＬデータベースを用いる。
【００２４】
７０はアプリケーションサーバであり、７１はアプリケーションサーバ上に配置されたサービスアプリケーション（付加サービス）である。そして、サービス連携サーバ３０とアプリケーションサーバ７０は、情報ネットワーク６０を介して接続されており、この情報ネットワーク６０によって相互に通信可能となっている。
【００２５】
アプリケーションサーバ７０はコンピュータシステムを用いて実現する。そして、加入者の端末１０等に対して提供される付加サービスであるサービスアプリケーションの機能は、コンピュータプログラムとしてこのコンピュータシステム内の記憶媒体に記憶されており、当該コンピュータシステムのＣＰＵがこのプログラムを読み出して実行することにより、サービスアプリケーション７１を実現する。
また、情報ネットワーク６０は、インターネット（Ｔｈｅ  Ｉｎｔｅｒｎｅｔ）や企業ネットワークなどを適宜組み合わせて実現される。
【００２６】
１０は通信事業への加入者がＶｏＩＰによる音声データの送受信や映像データの送受信に用いる複数の端末であり、１１は自動音声応答、電話会議、映像配信等に用いられる複数のメディアサーバである。これら端末１０やメディアサーバ１１は呼制御ネットワーク２０に接続されており、複数の端末１０相互間あるいは端末１０とメディアサーバ１１との間で呼制御ネットワーク２０を介した通信を行なうことにより、端末１０に対するＶｏＩＰや映像配信等のネットワークサービスが提供される。なお、本実施形態では、呼制御信号としてＳＩＰ（セッション・イニシエーション・プロトコル）を用いることとしており、呼制御装置２１がＳＩＰプロキシとして呼制御信号を仲介することにより、上記の端末１０相互間あるいは端末１０とメディアサーバ１１との間の通信が行なわれる。
【００２７】
上述した構成のシステムにおいて、加入者の付加サービス契約情報に応じて呼制御信号の付加サービス（例えば、番号変換、転送、他ネットワークヘの着信通知等）を行う場合、呼制御装置２１は、呼制御信号受信時に加入者の契約情報を分析した上でその情報に基づき呼制御装置２１内に配置されたサービスアプリケーションを動作させたり、呼制御装置２１と通信可能となるように設置されたアプリケーションサーバ７０に呼制御信号を転送したりすることによって付加サービスを実現する。そして、サービス連携サーバ３０に設けられたサービス連携機能部がこれらのサービス連携を制御する役割をする。
【００２８】
図２は、加入者の契約するサービスの追加・削除等に応じて加入者情報データベース４０および付加サービスデータベース５０を維持するための構成を示すブロック図である。
図示するように、本実施形態では、加入者情報を更新する機能と付加サービスを登録する機能とが設けられている。図２において、８０は加入者情報更新サーバ、８１は加入者情報更新サーバ８０上に設けられた加入者情報更新機能部、１００は付加サービス登録サーバ、１０１は付加サービス登録サーバ１００上に設けられた付加サービス登録機能部である。なお、加入者情報更新サーバ８０と付加サービス登録サーバ１００も、サービス連携サーバ３０などと同様に、コンピュータシステムを用いて実現される。
【００２９】
加入者情報更新サーバ８０は、呼制御ネットワーク２０および情報ネットワーク６０に接続されているとともに、加入者情報データベース４０および付加サービスデータベース５０にアクセス可能となっている。また、付加サービス登録サーバ１００は、情報ネットワーク６０に接続されているとともに、付加サービスデータベース５０にアクセス可能となっている。
また、９０は保守ネットワークであり、加入者情報データベース４０および付加サービスデータベース５０はこの保守ネットワーク９０に接続されている。これにより、保守ネットワーク９０に接続されている保守用端末（図示せず）等からは、システム保守あるいはデータ保守のためにこれらのデータベースにアクセスすることが可能となっている。
【００３０】
図２に示した構成において、加入者は、加入者端末から呼制御ネットワーク２０や情報ネットワーク６０を通じて加入者情報更新サーバ８０にアクセスし、更新用ユーザインターフェースなどの機能を持つ加入者情報更新機能部８１を介して加入者情報の更新を行なう。加入者情報更新機能部８１は、加入者からの要求に基づき適宜、加入者情報データベース４０や付加サービスデータベース５０を更新する。
また、アプリケーションサービスを提供する第三者が、情報ネットワーク６０を通じて付加サービス登録サーバ１００にアクセスし、付加サービス登録機能部１０１が提供するサービス登録用のユーザインターフェースによって付加サービスデータベース５０に付加サービスに関する情報を登録する。
【００３１】
また、本システムを運用する事業者が、保守用端末から保守ネットワークを通じて加入者情報データベース４０や付加サービスデータベース５０を更新することも可能である。
なお、付加サービスデータベース５０には、サービス種別、サービスアプリケーション配置アドレス、呼び出し方法等の情報が登録されている。
【００３２】
次に、加入者情報データベース４０と付加サービデータベース５０に格納されているデータの構造について説明する。
図３は、加入者情報データベース４０に登録されているデータ構造を示す概略図である。図示するように、加入者情報データベース４０は、加入者と付加サービスとの対応関係を表わすデータを保持している。図３のデータ例では、ある加入者に対応する「加入者情報（１）」と当該加入者が契約している複数の付加サービスに対応する「付加サービス情報（１）」、「付加サービス（２）」、・・・がテーブル上で関連付けられている。
【００３３】
図４は、付加サービスデータベース５０に登録されているデータ構造を示す概略図である。図示するように、付加サービスデータベース５０は、付加サービス毎に必要なデータを保持している。図４のデータ例では、付加サービスデータベース５０「付加サービス情報（１）」、「付加サービス情報（２）」、・・・のそれぞれについて、付加サービス識別子、サービス種別、サービスアプリケーション配置アドレス、呼び出し方法、優先度等のデータを含むテーブルを有している。
上記データのうち、呼び出し方法のデータは、その付加サービスを呼び出す際に用いるプロトコル（例えば、ＳＯＡＰなど）の情報と、その付加サービスが必須のものであるかどうかを表わす必須フラグ情報とを含んでいる。必須フラグ情報が「ｏｎ」の場合には当該付加サービスは必須でありスキップすることができないことを表わしており、必須フラグ情報が「ｏｆｆ」の場合には当該付加サービスはオプショナルなものであり何らかのエラー等の場合には当該付加サービスのみをスキップして呼制御信号の転送を行なっても良いことを表わしている。
なお、この付加サービスデータベース５０のテーブル内の優先度のデータに基づき、サービスを呼び出す順序を決定することが可能となっている。
【００３４】
なお、本実施形態では、加入者情報データベース４０と付加サービスデータベース５０とは、論理的に別のデータベースないしは別のテーブルとして構成されていれば十分であり、物理的には同一の装置上に存在していても良い。
【００３５】
図５は、サービス連携機能部３１が有する書き換え許可情報記憶手段に記憶されているサービス種別データ（書き換え許可情報）のデータ構造の概略を示す概略図である。図示するように、このサービス種別データは、サービス種別情報（１）、サービス種別情報（２）・・・というサービス種別ごとに、それぞれ、許可・禁止動作種別および条件情報のデータを有している。これらのデータにより、サービス種別ごとに、呼制御信号内においてサービスアプリケーションによる書き換えが許される範囲が予め定められている。
【００３６】
具体的には、許可・禁止動作種別の項目には、当該サービス種別において、伝送されるメッセージのヘッダ内の特定領域（指定ヘッダ）の書き換えを禁止することを表わすデータあるいは特定ヘッダの書き換えを許可することを表わすデータが設定される。
許可・禁止動作種別として指定ヘッダの書き換えを禁止することを表わすデータが設定されている場合には、そのサービス種別に属するサービスは、条件情報として設定されているヘッダ項目のデータを書き換えた信号を送ることができないことを表わす。例えば、条件情報として「『Ｔｏ』または『Ｆｒｏｍ』」が設定されている場合には当該サービス種別のサービスは「Ｔｏ」ヘッダあるいは「Ｆｒｏｍ」ヘッダを書き換えた信号を送ることができない。
許可・禁止動作種別として指定ヘッダの書き換えを許可することを表わすデータが設定されている場合には、そのサービス種別に属するサービスは、条件情報として設定されているヘッダ項目に限り、そのデータを書き換えた信号を送ることができることを表わす。例えば、条件情報として「Ｔｏ」が設定されている場合には、当該サービス種別のサービスは「Ｔｏ」ヘッダのみを書き換えることができ、その他のヘッダを書き換えた信号を送ることができない。このような場合にサービスが「Ｆｒｏｍ」ヘッダを書き換えた場合には競合違反となり、エラーとなる。
【００３７】
なお、書き換え許可情報記憶手段は、半導体メモリや磁気ディスクドライブなどの記憶装置を用いる。データベース管理システムを用いてこの書き換え許可情報を管理する形態であっても良いし、他の手段によって半導体メモリ上にサービス種別データのテーブルを展開する形態であっても良い。プログラムコード上にこのサービス種別データをハードコーディングしておき、そのプログラムコードから作成された実行可能形式のプログラムをローディングする際に、同時にサービス種別データをＲＡＭ上に展開する形態であっても良い。
【００３８】
次に、より詳細な構成および処理手順について説明する。
図６は、サービス連携サーバ３０の詳細構成を示すブロック図である。サービス連携サーバ３０に搭載されたサービス連携機能部３１は、サービス分析処理部３１１と、サービス起動状態情報３１２と、サービス競合制御処理部３１３とを内部に備えている。サービス分析処理部３１１が、加入者情報データベース４０にアクセス可能となっている。サービス分析処理部３１１は、後で詳述するように、呼制御信号に含まれる情報とデータベースに保持されているデータに基づき、サービスを分析しサービス間の関係に基づきサービスを呼び出す順序を決定する。また、サービス競合制御処理部３１３は、後で詳述するように、付加サービスにより呼制御信号が書き換えられた結果として信号矛盾が発生する可能性がないかをチェックする。
【００３９】
また、サービス起動状態情報３１２には、各サービスアプリケーション７１に対応して、その状態を表わす情報（図中の、「１番目」、「２番目」、・・・）が含まれている。具体的には、サービス起動状態情報３１２には、付加サービスの実行順序と付加サービス情報等の連携状態の情報が含まれている。
【００４０】
図７は、本実施形態により２つのサービスアプリケーションが連携する場合の処理シーケンスを示すラダーチャートである。
まずステップＳ１０において、発信側の端末１０から発せられた第一の呼制御信号は、呼制御ネットワーク２０内の１つ又は複数の呼制御装置２１を経由して、着信側の端末１０を収容している呼制御装置２１に到着する。
そして、この呼制御装置２１において加入者が付加サービスに契約している可能性があると判定されると、ステップＳ１１において、呼制御装置２１は呼制御信号をサービス連携サーバ３０に転送する。
【００４１】
サービス連携サーバ３０内のサービス連携機能部３１は、この呼制御信号が到着するとサービス分析処理部３１１を動作させる。
【００４２】
サービス分析処理部３１１は、複数のサービス種別間の起動制限の情報が記述されたサービス競合情報のテーブル（サービス競合情報記憶手段）を予め保持している。このテーブルは、例えば半導体メモリなど、コンピュータシステムでアクセス可能な記憶装置を用いて実現される。ここで、複数のサービス種別間で起動制限が記述されていることは、それらのサービス間でサービス矛盾があることを表わしている。
サービス分析処理部３１１は、到着した呼制御信号に基づいて呼び出すべき付加サービスを特定する。呼び出すべき付加サービスが複数ある場合には、上記のサービス競合情報のテーブルを参照することにより、これら複数間の付加サービス同士で矛盾があるかどうかをチェックする。チェックの結果、矛盾がある場合には、サービス連携サーバ３０は、エラー処理を行なう。
ここで、エラー処理とは、例えば付加サービスデータベース５０内の呼び出し方法の情報を読み出し、そこに含まれる必須フラグ情報が「ｏｎ」となっているサービスについてはスキップすることができないためそのような付加サービスを含む矛盾がある場合には呼制御信号の転送を続行することができず、発側の端末１０に対してエラー応答を返すとともに、応答信号による書き換えを無視する等、障害処理を実施する。或いは、付加サービスデータベース５０から読み出した呼び出し方法の情報に含まれる必須フラグ情報が「ｏｆｆ」となっているサービスについてはその付加サービスの処理のみをスキップすることができるため、その付加サービスをスキップする（その付加サービスの処理を行なわない）ことにより矛盾を解消する。
上記チェックの結果、矛盾がなければ次の処理に進む。
【００４３】
次にサービス分析処理部３１１は、到着している呼制御信号に基づき、付加サービスに対応する情報がサービス起動状態情報３１２内に存在するか否かを確認する。
その結果、存在する場合には、このサービス起動状態情報３１２内に含まれているサービス実行順序の情報を使用する。
【００４４】
一方で、当該付加サービスに対応するサービス起動状態情報が存在しない場合、呼制御信号内の情報より、加入者識別情報を取得する。
そして、ステップＳ１２において、サービス分析処理部３１１は、呼制御信号内から取得された加入者識別情報に基づき、加入者情報データベース４０から当該加入者の加入者情報および付加サービス情報を取得する。このとき取得した各々の付加サービス情報の中には付加サービス識別子が含まれている。
【００４５】
そして、サービス分析処理部３１１は、上で取得した付加サービス識別子をキーとして、付加サービスデータベース５０から当該付加サービスの付加サービス情報を読み出す。そして、呼び出すべき付加サービスが複数ある場合には、付加サービス情報の中に含まれる優先度に基づき付加サービスを呼び出す順序を確定する。例えば、呼び出すべき複数の付加サービスそれぞれの優先度の数値の高い順に呼び出す。
【００４６】
なお、サービス分析処理部３１１が付加サービスの呼び出し順序を決定する方法としては、次のようにしても良い。つまり、加入者がサービス契約する際に、付加サービスデータベースに記録されている優先度の情報を基に付加サービスの実行順序が決定され、加入者情報更新サーバ８０（図２）が、加入者情報データベース４０内のサービス契約情報を更新する。このとき、加入者情報データベース４０内のサービス契約情報（付加サービスデータ記憶手段）として、付加サービスの実行順序のデータ（付加サービス情報）が書き込まれる。そして、呼び出すべき付加サービスが複数ある場合には、サービス分析処理部３１１は、付加サービス情報の中に含まれる優先度に基づき付加サービスを呼び出す順序を確定する。
【００４７】
以上のように付加サービスの呼び出し順序が決定すると、サービス分析処理部３１１は、サービス連携サーバ３０内に付加サービスの実行順序と付加サービス情報等の連携状態を保存する目的でサービス起動状態情報３１２を生成する。
【００４８】
そして、ステップＳ１３およびＳ１４においては、サービス連携サーバ３０は、サービス起動状態情報３１２で規定されている順序に基づき、順次、複数のアプリケーションサーバ７１に対して呼制御信号を送信し、各々のアプリケーションサーバ７１からの応答信号を受信する。なお、アプリケーションサーバ７１に対して呼制御信号を送信する際には、サービス競合制御処理３１３が送信信号を保存しておく。
【００４９】
アプリケーションサーバ７１からの応答信号を受信すると、サービス競合制御処理３１３が、上で保存された送信信号と受信した応答信号とを比較することにより、呼制御信号の信号差分をとる。そして、書き換え許可情報記憶手段に記憶されているサービス種別データを参照することによって、サービス種別ごとに予め定められた範囲を超えて呼制御信号が書き換えられていないかをチェックする。
【００５０】
チェックの結果、違反を検出した場合には、サービス連携サーバ３０は、発側の端末１０に対してエラー応答を返すとともに、応答信号による書き換えを無視する等、障害処理を実施する。
【００５１】
なお、上記の呼信号送受信において、付加サービスデータベース５０内の付加サービス情報で指定される呼び出し方法に応じて、信号をサービスアプリケーション７１に合わせた形式に変換して送受信する場合もある。例えば、サービスアプリケーション７１がＳＯＡＰ（Ｓｉｍｐｌｅ  Ｏｂｊｅｃｔ  Ａｃｃｅｓｓ  Ｐｒｏｔｏｃｏｌ，シンプル・オブジェクト・アクセス・プロトコル）によって実装されたサービスであった場合は、その旨の情報が付加サービス情報の呼び出し方法（呼び出し方法情報）に記録されており、サービス連携サーバ３０は、この情報に基づいてＳＩＰ信号をＳＯＡＰの形式に変換した後に、アプリケーションサーバ７０上のサービスアプリケーション７１に送信する。またこのとき、サービスアプリケーション７１からの応答の受信もＳＯＡＰにより行ない、これをＳＩＰ信号に戻す変換を行なう。
【００５２】
上記一連の動作により、全ての付加サービスの呼び出しが完了すると、ステップＳ１５において、サービス連携サーバ３０は呼制御信号を転送してきた呼制御装置２１に対して、サービスアプリケーション７１により改変を受けた呼制御信号を新たに転送する。
その後、ステップＳ１６において、呼制御装置２１では改変された信号を元に再び信号の転送を実施し、結果として着信側の端末１０まで転送を実施する。
【００５３】
そして、呼制御装置２１は、ステップＳ１７において着信側の端末１０からの応答信号を受信した場合、ステップＳ１１のときと同様に、サービス連携サーバ３０へ呼制御信号を転送する。
サービス連携サーバ３０では、既に生成したサービス起動状態情報３１２が存在するため、加入者情報データベース４０等ヘのアクセスやサービス起動状態情報３１２の新規生成は行わずに、既存のサービス起動状態情報３１２に基づいて、ステップＳ１９およびＳ２０において、先程とは逆順序でサービスアプリケーション７１の呼び出しを行う。
その後、ステップＳ２１においてサービス連携サーバ３０は呼制御装置２１に対して改変された信号を転送し、さらにステップＳ２２において呼制御装置２１はこの信号を元の発信側の端末１０に対して転送する。
【００５４】
なお、一連のサービスを実現するための複数のＳＩＰ信号の扱いと付加サービス情報との関連は、次の通りである。
予め、利用者のサービス契約により、加入者情報データベース４０の当該加入者の付加サービス情報が追加される。このとき、競合制御機能により、矛盾が発生する可能性があるサービス契約は、加入者情報更新サーバにより拒絶される。この利用者に、最初のＳＩＰ信号の着信が発生した場合（イニシャルＩＮＶＩＴＥ）、加入者情報データベース４０から当該利用者に関する付加サービス情報を読み出し、これに基づきサービス起動状態情報をメモリ上に生成する。このとき、付加サービス情報の「優先度」の項目または「サービス種別」の項目によって、呼び出し順序が決定される。後続のＳＩＰ信号（１８０  Ｒｉｎｇｉｎｇ→２００  ＯＫ→ＡＣＫ→（通話中）→ＢＹＥ→２００  ＯＫ）に関しては、上でメモリ上に生成されているサービス起動状態情報に基づいて信号の転送を行なう。
【００５５】
なお、上述した実施形態における各呼制御装置、サービス連携サーバ、アプリケーションサーバ、付加サービス登録サーバなどの装置をコンピュータで実現する場合には、この制御機能を実現するためのプログラムをコンピュータ読み取り可能な記録媒体に記録して、この記録媒体に記録されたプログラムをコンピュータシステムに読み込ませ、実行することによって実現しても良い。なお、ここでいう「コンピュータシステム」とは、ＯＳや周辺機器等のハードウェアを含むものとする。また、「コンピュータ読み取り可能な記録媒体」とは、フレキシブルディスク、光磁気ディスク、ＲＯＭ、ＣＤ−ＲＯＭ等の可搬媒体、コンピュータシステムに内蔵されるハードディスク等の記憶装置のことをいう。さらに「コンピュータ読み取り可能な記録媒体」とは、インターネット等のネットワークや電話回線等の通信回線を介してプログラムを送信する場合の通信線のように、短時刻の間、動的にプログラムを保持するもの、その場合のサーバやクライアントとなるコンピュータシステム内部の揮発性メモリのように、一定時刻プログラムを保持しているものも含んでも良い。また上記プログラムは、前述した機能の一部を実現するためのものであっても良く、さらに前述した機能をコンピュータシステムにすでに記録されているプログラムとの組み合わせで実現できるものであっても良い。
【００５６】
本発明はさらに次のような変形例でも実施することが可能である。
例えば、サービス連携機能部３１をソフトウェアとして呼制御装置２１に組み込む構成や、サービスアプリケーション７１をサービス連係機能部３１が配置されたサーバ上に配備し、サービス連係機能部３１からネットワークを介さずに直接プログラム呼び出しを行うことを可能とする構成でも良い。
【００５７】
また、上記各装置を、プログラムによって処理を実行するコンピュータシステムとしてではなく、専用のハードウェアとして実現しても良い。
【００５８】
以上、この発明の実施形態について図面を参照して詳述してきたが、具体的な構成はこの実施形態に限られるものではなく、この発明の要旨を逸脱しない範囲の設計等も含まれる。
【図面の簡単な説明】
【００５９】
【図１】本発明の実施形態によるサービス連携システムの構成を示すブロック図である。
【図２】本発明の実施形態による加入者情報データベースおよび付加サービスデータベースを維持・運用するための構成を示すブロック図である。
【図３】本発明の実施形態による加入者情報データベースのデータ格納構造を示した概略図である。
【図４】本発明の実施形態による付加サービスデータベースのデータ格納構造を示した概略図である。
【図５】本発明の実施形態によるサービス種別データのデータ格納構造を示した概略図である。
【図６】本発明の実施形態によるサービス連携サーバの詳細構成を示したブロック図である。
【図７】本発明の実施形態によるサービス連携の処理シーケンスを示したラダーチャートである。
【符号の説明】
【００６０】
２０  呼処理ネットワーク（通信ネットワーク）
２１  呼制御装置
３０  サービス連携サーバ（サービス連携装置）
３１  サービス連携機能部
４０  加入者情報データベース
５０  付加サービスデータベース（付加サービスデータ記憶手段）
６０  情報ネットワーク
７０  アプリケーションサーバ
７１  サービスアプリケーション（付加サービス）
３１１  サービス分析処理
３１２  サービス起動状態情報
３１３  サービス競合制御処理
【図１】
2008211739.tif 000003
【図２】
2008211739.tif 000004
【図３】
2008211739.tif 000005
【図４】
2008211739.tif 000006
【図５】
2008211739.tif 000007
【図６】
2008211739.tif 000008
【図７】
2008211739.tif 000009