次に、図1から図4を参照しながら本発明の例示の実施形態について説明する。
図1は現状技術の通信システムを概略的に示す図である。図1に表されている抽象概念は、ある特定の通信システムに関連づけることを意図するものではなく、また、通信システム上に存在し得るすべての可能なノードを描くことを意図するものでもなく、代わりに、最新の通信システムにおいて通常実装されている、本発明を例示するために関連性のあるノードを描くことを意図するものであるということに留意されたい。しかし、図1の実施形態のいくつかをより好く例示するために、本システムはいくつかの事例においてIPマルチメディアサブシステム(IMS)を組み込んだ3Gシステムのいくつかのノードを表すものとして仮定されている。
図1のシステムでは、複数のアクセスポイント(110、111、112、113)がユーザ端末(101、102)の物理的(有線又は無線による)接続を提供しており、ユーザ端末が、前記システムによって又は前記システムを介して提供されるサービスへアクセスできるようになっている。例えば、図1の通信システムが様々なアクセスタイプをサポートすることを意図する、IMSを有する3Gシステムを表しているものと仮定すると、アクセス110と113は、移動端末(101、102)へ無線アクセスを提供するUMTS無線基地局を表しているのに対して、アクセス111と112は、それぞれ、ローカルエリアネットワーク(LAN)及び無線ローカルエリアネットワーク(WLAN)を表していると考えることができる。この事例(IMS)では、(ゲートウェイGPRSサポートノード(GGSN)、メディア・ゲートウェイなどのような)或る別のノードがシステムの内部に存在する場合もある。但し、これらのノードは明瞭さを旨として図1には示していない。
ノード120、121、122はシステムと接続されたユーザ端末と関係するシグナリングを処理する。これらのルーティングノードの各々は、2G又は3Gシステムなどにおいて一般に構成されているように、ルーティングノードに接続されているいくつかのアクセスポイントにサービスを提供している状態で表されている。しかしながら、通信システムの特徴に応じて、ユーザ端末が直接接続できるルーティングノードが設けられる場合もある。図1に示す構成では、ルーティングノード120は、アクセス110を介してシステムと接続されたユーザ端末101への/からのシグナリングを供する機能を果たす一方で、ルーティングノード121は、WLAN112に接続されたユーザ端末102への/からのシグナリングを供する機能を果たすように割り当てられている。実施例として、ルーティングノード120、121、122は、IMSシステムの呼セッション制御ファンクション(CSCF)であってもよい。
図1のシステムは、位置登録ノード130を介して、システムのユーザの登録情報を記憶する動的登録機能をそのユーザへ提供するものである。例として示されているこの事例では、位置登録ノード130は、ルーティングノード120からサービスを受けるものとして端末101のユーザの登録情報を保持し、そして、ルーティングノード121からサービスを受けるものとして端末102のユーザの登録情報を保持することになる。例えば、端末101がアクセス113のカバー範囲にローミングを行ったり、あるいは、例えば、端末102のスイッチが切られたりした場合、関与しているルーティングノードが通知する登録イベントに従って、対応する登録情報は位置登録ノード130において更新される。実施例として、位置登録ノード130はIMSシステムのホーム加入者サーバであってもよい。
所定のユーザ用として登録されている端末への/からのシグナリングを処理するために現在割り当てられているルーティングノードに関する情報を取得するために、ノード130に記憶された登録情報は、ルーティングノードによって、更に、アプリケーションサーバによっても利用可能である。例えば、ノード121が、通信セッションの確立を要求するシグナリングメッセージであって、(前記ユーザに割り当てられた移動加入者ISDN番号(MSISDN)又はユニフォームリソース識別子(URI)などの)端末101のユーザの識別子を含むシグナリングメッセージを端末102から受信すると、ノード121は位置登録ノード130に問い合わせを行うことができ、次いで、ルーティングノード120へ向けて要求をルーティングするための情報を取得することになる。
ノード140と141はアプリケーションサーバ(AS)を表す。これらのノードは、サービスロジックのホストとして機能して、1以上の特定のサービスを達成する。例えば、ノード140は、プレゼンスサービスを提供するためにプレゼンス情報を管理するように構成されたプレゼンスサーバであってもよい。手短に言えば、他の機能の中でも特に、プレゼンスサーバは、(例えば、所定のユーザが通信システムにおいて現在端末に登録されているかどうかを示す「オンライン」/「オフライン」状態情報などの)他のユーザ又はグループのユーザの状態に関係する情報、並びに、前記情報を提供できるようにシステム内の別のノードから得られる必要なデータを取得することに対するユーザの申込み(サブスクリプション)を管理する。上記理由によって、AS140は、プレゼンスサーバの役割において、所定ユーザの登録情報を取得するために、(直接的にあるいは間接的に)例えば位置登録ノード130と通信を行う必要が生じることもあり得る。
図1に表されているノードのすべては、必ずしも所定のネットワーク通信事業者のネットワーク領域に属している必要はないという点に留意されたい。例えば、2G又は3Gシステムの通信事業者は、通信事業者間でのローミングを可能にするために自分のシステムの相互接続を行えるように、ノードを使用している。更に、所定の通信事業者に加入しているユーザに提供されるサービスのなかには、前記通信事業者のネットワーク領域に属しているASによって提供されるものもあれば、別のプロバイダのネットワーク領域に属しているASから提供される別のサービスもあり得る。一例として、AS141は、2G又は3Gシステムのネットワーク通信事業者ではない専用のサービスプロバイダに属していると仮定することができる。したがって、相互接続ネットワーク150は、例えば、イントラネットとインターネットのうちの少なくともいずれかのような1以上の基底を成す通信ネットワークの複数の通信リンクを概略的に表すことになる。
次に、ルーティングノード120の単純化された内部構造及び位置登録ノード130について、可能な実装構成をコンピュータベースの装置と見なして、図2を参照しながら説明する。この可能な実装構成は、最新の通信システムのほとんどの場合そうであるように、通信ノード用として望ましい実装構成である。
(SGSN、HSS、CSCFなどのような)通信システムにより、あるいは、通信システムを介して提供されるサービスにおいて、サービスを提供したり、それらサービス間を仲介したりする通信ノードは、特定の構成の詳細に関わらず、1以上の機能モジュールから構成されていると考えることができる。これら機能モジュールの各々は、前記ノードによって実行される全体の機能のうちの特定の(サブ)機能を実行するように構成され、最終的には他の機能モジュールのうちのいくつかと協働するように構成される。更に、いくつかの実装構成では、所定のノードの機能性は種々の物理的マシンにわたって分散されていてもよい。個々の物理的マシンは前記ノードに割り当てられた全体の機能性の一部を実行することになる。通信システムにおけるノードの機能が(例えば、電気通信の標準規格又は或る別の機能モジュールの文献によって)規定されると、(単複の)対応する物理的マシンの実現を構成することは当業者にとっての日常業務となる。
特に、コンピュータベースの装置として実現されたルーティングノード120あるいは位置登録ノード130は、物理的マシンの内部に配置されるか、種々の一体に動作する物理的マシンに沿って分散することができるソフトウェア及びハードウェアを備える。前記ノードのある特定の機能モジュールのうちのいずれかが、ソフトウェア、ハードウェア、又はこれら双方の組み合わせを備えることができるコンピュータベースの装置として実装される。その場合、前記機能モジュールは、ある特定の(サブ)ノードの機能を実行し、更に継続する場合は、その機能モジュールのうちの別の機能モジュールを実装するソフトウェア部分とハードウェア部分のうちの少なくともいずれかと協動するように設計される。ソフトウェアは、1以上のコンピュータプログラム(コンピュータ可読プログラムコード)を含むものであってもよく、コンピュータベースの装置が、通信ノードの特定の機能性に基づくものである前記プログラム内の特定のプログラム命令によって所定の態様に従って該プログラムを動作させると、このコンピュータプログラムは実行する。
したがって、図2を参照しながら行われる説明は、ルーティングノード120の、並びに、位置登録ノード130のいくつかの機能コンポーネントについて記述するものとなるが、当業者には周知であってそれゆえ本発明の理解には不要なものである、可能な物理的実現形態に関する特定の構成の詳細には踏み込まない。
図2に示す簡略化された内部構造は、処理モジュール、通信モジュール、データ記憶モジュール及び内部通信バスを含み、内部通信バスは、これらモジュール間のデータ通信及び協働を可能にする。位置登録ノード130に関連して示されている類似の構造には、処理モジュール301、通信モジュール302、データ記憶モジュール303及び内部通信バス304が含まれる。ここで、固有の特徴に応じて、ルーティングノードのなかには(例えば、メディアトランスコーディングとメディアルーティングの少なくともいずれかを達成するために)別のモジュールを含むことができるものもあることに留意されたい。このようなルーティングノードについては、単純さを旨として、図2に示すノード120を表す単純化された構造には図示されていない。
処理モジュール(201、301)のうちのいずれも、例えば、負荷分散モード又はアクティブバックアップモードで動作するように構成することができる1以上のプロセッサ(2010、3010)を含むことができる。
図1に例示のシナリオでは、ルーティングノード120内のプロセッサ2010は、ユーザ端末101に関係するシグナリングを処理するためのサービスロジックを実行する。特に、ノード120が、「サービングCSCF」(S−CSCF)をその役割とするCSCFであると仮定すると、サービスロジックは、ユーザ端末101用のセッション制御を実行することと、端末101と交換されるメッセージ、並びに、当該端末のために送信されるメッセージ又は当該端末のために別のノードから受信されたメッセージをモニタすることによって、当該端末により確立されるあらゆる通信に関連するセッション状態を維持管理することとを含むことになる。ユーザ端末101に関係するシグナリングには、サービスに関係するシグナリングだけでなく、登録メッセージも含まれているため、S−CSCF120内のプロセッサ2010によって実行されるサービスロジックには、前記端末を介して登録されるユーザの登録イベントを通知するための位置登録ノード130との通信処理が更に含まれている。プロセッサ2010によって実行されるサービスロジックは、後程詳述する本発明の新規の機能性によって更に拡張される。
位置登録ノード130内のプロセッサ3010は、通信システムの通信事業者のネットワーク領域のいくつかの(又はすべての)ユーザの登録情報を処理するためのサービスロジックを実行する。図1に例示のシナリオにおいて、プロセッサ3010は、ルーティングノード120、121と122から受信した登録イベントの通知を処理し、次いで、通知された登録イベントに従って端末101と102のユーザに関する登録情報を更新する。プロセッサ3010によって実行されるサービスロジックは後程詳述する本発明の新規の機能性によって更に拡張される。
ルーティングノード120と(ルーティングノード121、122;位置登録ノード130、アプリケーションサーバ140、141;ユーザ端末101、102などのような)別のエンティティとの間での通信は、2つの通信装置2021と2022を備えるものとして図2に例示されている通信モジュール202を介して実行される。同様に、システム(120、121、122、140、141)における位置登録ノード130と別のノードとの間の通信は、2つの通信装置3021と3022とを備えるものとして図2に例示されている通信モジュール302を介して実行される。一般に、メッセージが送信されることになると、処理モジュールは、通信モジュールに対してメッセージの送信を要求し、次いで、必要なデータを通信モジュールに提供する。そして、通信モジュールによってメッセージが受信された場合には、通信モジュールは、必要な処理をトリガするために、関連する内容を処理モジュールへ転送する。
実装構成に左右されるが、通信装置(2021、2022、3021、3022)のなかには、特定の種類の通信に専用のものであってもよい。この通信は例えば、標準化されているか、あるいは、独自仕様のシグナリングインタフェースが用いられている或る別のノードとの通信や、所定のタイプの通信プロトコルのみに関する通信などである。また、実装構成の詳細に左右されるが、通信装置のなかには、2以上の通信プロトコルに従ってこれらのノードのうちのいずれかによって実行できる任意の種類の通信処理に適合できるものもある。例えば、(ルーティングノード120などの)S−CSCFと、(位置登録ノード130などの)HSSとの間で、数ある中でも特に、ユーザの登録情報を通知するメッセージを伝えるために、「DIAMETER」プロトコル(IETF RFC3588、2003年9月)を用いることができる。この通信プロトコル(並びに別のプロトコル)は、新たな又は修正されたコンテンツを伝えることができるように容易に拡張して、後程説明するように本発明の達成を図るものである。
ルーティングノード120又は位置登録ノード130における通信装置の数は、これらノードの個々の容量に応じて変更することが可能であり、全体のシグナリングと比較してこれらノードのそれぞれに対して推定される外部シグナリングの処理を行うようにすることができる。やはり実装構成の詳細に左右されるが、(202などの)通信モジュールは、いくつかの機能的又は物理的エレメント(ハードウェア、ソフトウェア又はこれらの組み合わせ)を備えることができる。これらのエレメントは、所定の通信プロトコルスタックの一部のような、その他の(プロトコル専用)部分が、対応する通信装置に常駐している(2021、2022などの)1以上の通信装置においてよく見られるものである。
データ記憶モジュール203と303は、ルーティングノード120及び位置登録ノード130それぞれの動作に必要なデータを記憶する。コンピュータベースの通信ノード内のデータ記憶モジュールは1以上のデータ記憶装置を備えることができる。図2に示されている例では、ルーティングノード120内のデータ記憶モジュール203は記憶装置2031と2032を備え、更に、位置登録ノード130内のデータ記憶モジュール303は記憶装置3031と3032を備える。メモリチップ及び磁気ディスク又は光ディスクはデータ記憶装置の例である。ある種のデータのデータアクセススピード、記憶装置の信頼性などのような基準に応じて、通信ノードの記憶装置モジュールは、1以上の同じ種類の記憶装置を備えている場合もあれば、異なる種類の記憶装置を備えている場合もある。
実装構成のオプションに従って、或る種のノードのデータ記憶モジュールは、同じ物理的マシンの内部にすべて存在する場合もあれば、種々の記憶装置マシンの間に分散されている場合もある。例えば、位置登録ノードの場合、ルーティングノードと交換される位置登録関連シグナリングを処理する2以上のフロントエンド位置登録マシンにアクセス可能な大容量記憶の専用データベースに加入者情報データを記憶する最近のトレンドが存在する。上記マシンは、(基本処理データ及び動的登録データなどの)或る別のデータをローカルに保持している。特定のノードによって処理されたデータが同じ物理的マシン内に格納されているか否かは本発明にとって無関係なことである。
物理的データ配信の詳細に関係なく、図2は、ルーティングノード120と位置登録ノード130とによって処理することができるデータの若干を概略的に示す図である。これについて次に説明する。
ノード120の動作は命令(CI−11...,CI−1N)を備えるコンピュータ可読プログラムコード203−1によって制御される。これらの命令は、プロセッサ2010によって実行されると、今まで説明したルーティングノードとしての実行を該プロセッサ2010に行わせ、更に、本発明の実施形態による新たな機能も実行させる。
参照番号203−2は、ルーティングノード120からサービスを受けるように割り当てられたユーザ端末に個々に関係する複数のデータレコード記録(SCTX−N)を表す。これらのデータの性質はシステムの固有の特徴に応じて大幅に変動する場合がある。しかし、ユーザが、異なるアクセスポイントから接続できる端末から登録を行うことができるシステムでは、割り当てられたルーティングノードは、端末が使用するアクセスポイントの必要なアドレス情報を記憶するために用いられ、それによって、アクセスポイントを経由して前記端末へ向けてシグナリングのルーティングを行うことができるようになっている。
例えば、IMSシステムの中へ登録されると、ルーティングノード120がユーザ端末101に割り当てられているS−CSCFであれば、S−CSCF120は端末101へのアクセスサービスを提供している「プロキシ−CSCF」(P−CSCF)に関するデータを保持することになる。この事例では、S−CSCF120は、端末101を介して登録された、ユーザの若干のユーザプロファイルデータも保持することになる。このユーザプロファイルデータは、(位置登録ノード130などの)HSSから受信されたものとなる。また、ユーザ端末101が、(ユーザ端末102とのマルチメディアセッション、AS141とのサービスセッションなどの)サービスに関与しているものであれば、ステートフルSIPプロキシのようなS−CSCF120は、前記サービスと関連付けて交換されるシグナリングに従って、前記端末に対する若干のサービス状態データを保持することになる(例えば、前記端末及び、該端末及を介して交換されるサービスに関係する一連のメッセージにより駆動されるステートマシンを実装することによって、サービス状態データは更新済みのサービス状態データを保持することになる)。
本発明のいくつかの実施形態を達成するために、ルーティングノード120は、次に説明する更なる若干のデータを記憶することも可能である。
例えば、ルーティングノード120は1以上の活動テンプレート203−3を記憶することができる。本発明に従う活動テンプレートは、ルーティングノードによって使用できる1組の1以上のデータであり、前記ノードを介して交換される所定のユーザ又は端末に関するシグナリングが報告する必要があるサービス活動に関連するものであるかどうかを判定するためのものである。サービス活動の判断基準、あるいは換言すれば、ユーザ又は端末がサービスに関与していると判断する必要があるかどうかを判定するための基準は、ユーザが、サービスを要求する(すなわち、発呼側として行動する)か、サービスを終端する(すなわち、着呼側として行動する)かどうかに応じて必ずしも決める必要があるとはかぎらず、活動テンプレートのデータに応じて決める必要があるという点に留意されたい。
これらのデータの性質及び構造は、検出を希望する対象のサービス活動イベントの種類又は収集すべき情報の詳細さの程度対実装構成の複雑さとの間のバランスのような要因に応じて、複数の実現代替例に従って変動することが考えられる。これらの代替例のいくつかについて以下説明する。
単純な実装代替例では、活動テンプレートはシグナリングメッセージ識別子(I−SG)又はサービス識別子(I−SR)を含むものであってもよい。サービス識別子はシグナリングメッセージの中で伝えることができる(例えば、同じ種類のシグナリングメッセージが異なるサービス要求を伝えることができる場合など)。したがって、ルーティングノード120が、ユーザ端末101から発信した又はこれに着信するシグナリングのルーティングに関与しているとき、前記端末に関係する(すなわち:ユーザ端末101から受信され、ユーザ端末101へ送信され、ユーザ端末101へ送信されるべき、あるいは、ユーザ端末101のために送信される)メッセージの識別子が、対応する活動テンプレート203−3に記憶されている識別子に一致するかどうかのチェックを行うことが可能となる。また、ルーティングノード120は、該ルーティングノードのメッセージ識別子にとどまらず、メッセージの内容を検査することができる。この検査は、メッセージの更に別の内容(例えば、メッセージに含まれているサービス識別子又は他の任意のサービス関連データ)と活動テンプレートの内容との間でのマッチングを判断するための検査である。したがって、活動テンプレートは、上記に追加して、又は、上記とは別に、メッセージ内の特別の内容を同定するために使用できる識別子を備えることが可能となる。
場合によっては、所定の一連のシグナリングメッセージに関するサービスに関してユーザの活動を設定することが適している場合もある。例えば、ユーザが自分の端末から所定のサービスを要求した場合、ユーザが前記サービスに対して「アクティブ」であるか否かを考慮する必要があるかどうかの決定は、最終的に、例えば同じフローでのその後のメッセージに基づいて行うか、その後のメッセージの内容に基づいて行うかの少なくともいずれかとなる、前記要求の結果に基づいて行うことができる。上記理由によって、活動テンプレートは一連のシグナリングメッセージ(I−SQ)を特定し、最終的に、それらの最後の内容のうちのいくつかを同定する1以上の識別子を含むようにすることも可能である。
上述したメッセージと、一連のシグナリングメッセージと、内容とのうちの少なくともいずれかの識別子、及び、マッチングのために活動テンプレート(I−SG、I−SQ、I−SR)に記憶することができる対応する識別子は、同じ識別子である必要はなく、単に相互の識別のために使用可能なものであればよいという点に留意されたい。例えば、シグナリングメッセージの形で伝えられる、いわば「標準的」識別子間での対応付け、及び、テンプレートで用いられる対応する(すなわち内部)識別子は、単純な変換テーブルによって簡単に設定することができる。
ルーティングノード120におけるユーザ活動の検出を容易に行うために、(インテリジェントネットワーク(IN)処理又はカスタマイズされたアプリケーションモバイル拡張ロジック(CAMEL)処理又はIMSシステムにおいてモデル化されたサービス制御における「初期フィルタ基準」(IFC)の「トリガ」などの)第3者の補助的処理のトリガを行うためのような、所定のメッセージの送受信に関連づけられた処理を行う際に、その種のノードにおいて現在用いることができる或る既存のデータも、本発明の目的のために、例えば活動テンプレートとしてルーティングノード120により利用することができる。詳細には、但し必ずしも以下の記載に限定されるわけではないが、いくつかのルーティングノード内の第3者の補助的処理用ロジックが、ユーザ端末に関係する一連のメッセージによって駆動される処理状態を有する呼状態/サービス状態モデルを予め実装しているため、ルーティングノードにおいてある特定の一連のメッセージがユーザ活動を決定できるように考慮されるときはいつでも、上記実施形態を適用することができる。
ルーティングノード120において、同じ活動テンプレート203−3を利用して、任意の登録済みユーザ端末用として交換されるシグナリングのチェックを行うようにすることができる。
上記とは別に、活動テンプレートを特定のユーザ用として、あるいは特定のユーザ端末用として、若しくは所定の組のユーザ又は端末用として適用するように設定することも可能である。ルーティングノードが、(例えば登録段階で、位置登録ノードから、そして端末から)ユーザの、及び、ユーザ端末の1以上の識別子を受信することができる限り、(MSISDNなどの)ユーザ識別子又は(国際移動端末装置識別子(IMEI)などの)端末識別子と、対応する適用可能な活動テンプレートとの間の関係をルーティングノードにおいて確立することによって、この実施形態を達成することが可能となる。この事例では、好ましくは、ユーザ端末101が最初の登録を要求するとき、位置登録ノード130からルーティングノード120において受信することができるユーザプロファイルデータの一部と共に、あるいは、ユーザプロファイルデータの一部として、所定のルーティングノード120において特定のユーザに適用される活動テンプレートを受信できることが望ましい。
したがって、所定の時点にルーティングノードからサービスを受けることができる複数のユーザのために、異なる活動テンプレートを適用できる場合もあれば、複数のユーザのうちのいく人かのユーザ又はすべてのユーザのために同じテンプレートを適用できる場合もあれば、あるいは、複数のユーザのうちのいくら人かのユーザ又はすべてのユーザのために適用できるテンプレートが皆無の場合さえある。いく人かのユーザのために異なる活動テンプレートを定義することによって、通信システムの通信事業者は或る複数グループのユーザの活動情報を取得し、したがって、例えば、システムに最近登録したユーザや、新たなサービスをテストするために選択されたユーザなどの行動を分析することが可能となる。
ノード130の処理は、命令(CI−11...,CI−1N)を含むコンピュータ可読プログラムコード303−1によって制御される。プロセッサ3010によって実行されると、これらの命令は、今まで説明した位置登録ノードとしてプロセッサ3010を実行させ、次いで、本発明の実施形態による新たな機能も実行する。
ノード130は、該ノードが位置登録ノードとして機能するように割り当てられている個々のユーザ用の複数のユーザデータレコード303−2を記憶する。所定のユーザに対して、該ユーザの対応するレコード(USRC−X)は、ユーザが登録されているか否か(REG)を提示する登録情報(303−2R)と、特定の通信システムの特徴に応じて変更が可能な若干の別の情報とを記憶する。例えば、所定のユーザデータレコード(USRC−X)の登録情報303−2Rは、前記ユーザ用としてシステムに登録されている端末のシグナリングを処理するために現在割り当てられているルーティングノードの情報(NOD−120)を、もし何か存在する場合には、含むようにすることも可能である。
GSM又はIMSのような通信システムでは、ユーザUSRC−Xのユーザデータレコードの中に、一般にユーザプロファイルデータ又はユーザ会員登録データとして知られているユーザについてのより静的な情報も記憶されている。この情報は、ユーザ側で発呼するか、着呼するかの少なくともいずれかのサービスを処理するために利用可能な情報(例えば、所定のサービスが許されているかどうか、着呼に応答がなかった場合の代替の宛先の識別子、前記ユーザに関係する所定のサービスを処理するように割り当てられているASの識別子などの情報)を含むものであってもよい。これらの通信システムでは、位置登録ノードを介してシステムの中へユーザが登録したことを提示する登録イベントが、ルーティングノードによって位置登録ノードに通知されると、これらのデータ(図2には詳述せず)のうちの若干のデータが(HLR、HSSなどの)位置登録ノードから(MSC、S−CSCFなどの)ルーティングノードへ転送される。
本発明によれば、位置登録ノード130はユーザ活動情報を受信する。このユーザ活動情報はルーティングノード(120、121、122)によって収集され、次いで、関係するユーザの登録イベントと共にこれらルーティングノードから位置登録ノード130へ通知されるものである。
所定のユーザのために、ルーティングノード120は、適用可能な活動テンプレートに従って、登録期間中活動情報を収集し、次いで、この活動情報を位置登録ノード130へ転送する。この登録期間は、ユーザのユーザ端末101が最初の登録を行ってから、ユーザ端末101がシステムから登録を解除するまでの経過時間を含むことができる。上記とは別に、いくつかの通信システムの場合のように、すでに登録されているユーザ端末の登録処理は、(主としてセキュリティ上の理由から)定期的に実行されるが、最初の登録と後続する再登録との間に含まれる時間と、後続する再登録間の時間と、最初の登録又は最後の再登録と後続する登録取消との間の時間と、のうちの少なくともいずれかの時間をカバーする登録期間を設定することができる。したがって、ルーティングノード120は、前記ユーザの登録イベントを通知するメッセージの中でユーザのユーザ活動情報が位置登録ノード130へ送信されるまで、例えば対応するユーザの記録(SCTX−N)に上記情報を記憶することができる。
ユーザ活動情報がルーティングノード120を介して交換される所定の一連のシグナリングメッセージに従って決定される場合、該ユーザ活動情報は同じ又は同様の一時記憶基準を用いることができる。したがって、例えば、ユーザ端末が(サービスなどの対をなす相手側から)第2のメッセージ「Y」によって後程応答されることになる第1のメッセージ「X」を送信した場合にそのユーザはサービスに対してアクティブであるとマークすべきである旨が、適用可能な活動テンプレートに記憶されている一連の(単複の)識別子によって提示されている場合は、ルーティングノード120は、メッセージ「X」が受信された旨を提示しているマークを一時的に記憶することが可能となり、それによって、メッセージ「Y」が同じシグナリングシーケンスの中で生じた場合、この情報をチェックして、ルーティングノード120に記憶されている当該ユーザに関連するユーザ活動情報をこれに従って更新することが可能となる。
上記とは別に、ルーティングノード120が、端末に関係する一連のメッセージにより駆動されるステートマシンを通信セッションの範囲内で保持していれば、活動テンプレートは、ユーザ端末用の所定の一連のメッセージが出現したことを意味するある特定のサービス状態を示す識別子を含むことが可能となる。その結果、テンプレートに規定されている或る一定の状態への推移は、位置登録ノード130へ後程通知すべき、対応するユーザにとって必要な活動情報をルーティングノード120に記憶させることになる。サービス状態を示す識別子に加えて、活動テンプレートは、メッセージの識別子と、メッセージ内の内容を示す識別子とのうちの少なくともいずれかの識別子(例えば、サービスを示す識別子又はサービス固有の内容を示す識別子)を含むようにすることも可能である。この識別子は、テンプレートの中に定義されている或る一定のサービス状態の際に受信されると、位置登録ノード130へ後程通知すべき、対応するユーザにとって必要な活動情報をルーティングノード120に記憶させることになる。
図2は本発明の実施形態を示す図であり、位置登録ノード130は、前記ユーザの残りのデータ(USRC−X)と関連付けて、ユーザの活動情報303−2Aを記憶する。別の実施形態を予見することも可能であり、その場合、例えば、位置登録ノード130は、ユーザデータレコード303−2から独立に上記情報を記憶するか、該情報を別のノードへ転送するかの少なくともいずれかが行われる。該別のノードとは例えば、前記記憶用に割り当てられるか、前記データの後続する後処理を実行するように構成されるかの少なくともいずれかが行われるノードである。いずれの場合にせよ、位置登録ノード130によって保持されるユーザの活動情報は、位置登録ノード130がルーティングノード(120、121、122)から受信する活動情報に応じて決められる。このルーティングノードには、前記ユーザによって、(101などの)(単複の)ユーザ端末が登録される。したがって、前記情報は位置登録ノード130によって保持されている活動情報と呼ばれてはいるが、この情報の可能な内容に関係する、本明細書で後述する実施例は、位置登録ノードへ転送されるまではルーティングノードによって一時的に保持される活動情報に対しても同様に適用可能であり、また、ルーティングノードから位置登録ノードへ転送される活動情報に対しても同様に適用可能である。
シンプルな実現形態では、ユーザの活動情報303−2Aは、活動テンプレート内の確立された活動基準に基づいてユーザがアクティブになっているかどうかを提示するシンプルなフラグ(ACT)を含むことができる。更に複雑な実現形態では、活動情報303−2Aは、ユーザが前記基準に従って関与してきたサービス(SRVX、SRVY)を示す1以上の識別子のリスト、並びに、前記活動がいつ起こったかを示すタイムスタンプ(T1、T2)も含むことができる。これらのタイムスタンプは、ルーティングノード120から受信した時間情報に従って設定することができるか、例えば、ルーティングノードから登録イベント通知を受信する際に位置登録ノード130により設定することができる。
本発明の1つの実施形態に従ってユーザ活動情報を収集する方法のステップが図3に例示されている。この実施形態は、ルーティングノードから位置登録ノードへユーザの活動情報が通知される登録期間について以下の取り決めを考慮するものである。すなわち、第1の登録期間は、端末からのユーザの最初の登録と、前記ユーザの後続する再登録による終了との間の時間をカバーする。これに続く登録期間は、後続する再登録間の時間をカバーし、最後の登録期間は、再登録と最終的登録解除との間の時間をカバーすることになる。
ステップ410で、ルーティングノードにおいてユーザの最初の登録イベント(I−REG EVNT)が検出される。ユーザ端末とルーティングノードとの間の通信システム内のシグナリングが、例えば、(IMSシステムにおける場合のような)SIPプロトコルに準拠する場合、このイベントは、そのS−CSCFにまだ登録していないユーザのためのREGISTERメッセージのS−CSCFにおける受信に関連することになる場合がある。ステップ420において、ルーティングノードは、この登録イベントを位置登録ノードへ通知するメッセージ(REGNOTF)を送信する。最初の登録の場合のように、この実行時点において、ルーティングノードはまだユーザ活動情報を位置登録ノードに報告していないため、メッセージは、(メッセージの中で特定される)ユーザが端末から登録したことを提示する情報を単に伝えるだけのものである。上記とは別に、メッセージは、無効な活動を示すための予め定められた内容を示すユーザ活動情報を伝えるための特定の情報要素を含むようにしてもよい。
登録イベントを通知するメッセージの受信時に、位置登録ノードは通知された登録イベントに従ってステップ430でユーザの登録情報(303−2R)を更新する。本事例では、位置登録ノードは、ユーザがシステムに登録されていることと、登録イベントを通知した特定のルーティングノードに関する情報とを記憶することができる。次いで、ステップ440において、位置ノードは関係するユーザの活動情報を更新する。本事例によれば、ルーティングノードから活動情報が報告されないという理由によって、ステップ440は、例えば、事前に記憶されているユーザの活動情報(303−2A)に関して位置登録ノードに最終的にアクションを行わせるようなことはできない。上記とは別に、位置登録ノードは、ルーティングノードから受信した時刻に関連づけられたタイムスタンプを記憶することができる。このタイムスタンプは、当該ルーティングノードから当該ユーザに対して後続して通知される活動情報(もし何らかの活動情報が存在する場合)とその後関連づけるようにすることができる。
ステップ450において、ルーティングノードは、ステップ410において受信された登録イベントが登録解除(D−REG)であるかどうかをチェックする。本方法を例示する本事例に示すように、処理された登録イベントは最初の登録であったため、判定チェックにより「ノー(N)」と判定され、本方法はステップ460へ進むことになる。
ユーザ端末の最初の登録が達成されるとすぐに、ルーティングノードはステップ460において活動モニタプロセスを実行する(上記最初の登録には、登録のルーティングノードからのユーザ端末の認証、位置登録ノードからの受信確認などのような、図3に示されていない更に別のステップが含まれる場合がある)。この活動モニタプロセスについては図3で詳述する。
例示の本実施形態によれば、活動モニタプロセス460は、関係するユーザに関するメッセージが受信されるまではアイドル状態である。ステップ4610は、処理トリガとして、ユーザ端末からの発信メッセージ(O−MSG)のルーティングノードにおける到着(又は処理)、並びに、ユーザ端末へ送信されようとしているメッセージ(T−MSG)のルーティングノードにおける到着(又は処理)を表す。しかし、このトリガは、(例えば、ルーティングノードから別のノードへ向けて更にルーティングされる、端末からのメッセージの受信結果としての)端末用として送信すべきメッセージの送信(又は処理)に関係する場合もあるし、あるいは、(例えば、端末のユーザへ向けてアドレス指定されたメッセージのルーティングノードにおける受信結果としての)端末へ送信されようとしているメッセージの送信(又はメッセージ処理)に関係する場合もある。
ステップ4620において、メッセージは対応する活動テンプレート(203−3)の内容についてチェックされる。
トリガステップ4610とチェックステップ4620との間の関係は、ルーティングノードに登録されているすべてのユーザ端末の活動がモニタされるかどうかに関係する実施形態に左右される場合があることに留意されたい。例えば、ルーティングノードからサービスを受けるすべてのユーザのために同じ活動テンプレートが用いられる訳ではない場合は、前述の活動テンプレートの割り当てに関係する実施形態のうちのいずれかに従って、ステップ4610において処理されたメッセージの中で受信されたユーザの識別子又はユーザ端末の識別子に関係する活動テンプレートが存在するかどうかのチェックをルーティングノードはまず行うことができる(図3には示されていないステップ)。
上記とは別に、ルーティングノードは、ユーザ用として作成された一時セッションレコードの中に特別のマークを設定することができる。いくつかの実装構成では、そして、主として、サービス状態情報を記憶するために、端末から発信されるか、又は端末において着信するサービス要求の結果として、ユーザ端末とのシグナリングダイアログが形成されるとき、ルーティングノードによってセッションレコードが作成される。この事例では、ステップ4610においてシグナリングメッセージを処理するとき、ルーティングノードは、別のステップの機能を実行する前に、対応するセッションレコードがマークされているかどうかのチェックを行うことも可能である。
上記とは別に、同じ活動テンプレートが、ルーティングノードに登録されている端末を持っている数人のユーザに適用される場合、関係するユーザの対応するユーザデータレコード(SCTX−N)は、対応するテンプレートのチェック(図3にはされていないステップ)がこのユーザ端末に関係する何らかのシグナリングダイアログに対して進行しているか否か、そして、上記チェックがこのステップにおいて進行しているか否かを設定するマークを含むようにすることも可能である。
したがって、ステップ4620のチェックが進行しているか否かを判定し、進行している場合、適用可能な活動テンプレートの選択を行うための、図3には示されていない更なるステップが存在してもよい。
次いで、実行はステップ4630へ進み、このステップで、活動テンプレート内に設定されている活動基準と、処理されたメッセージ及び該メッセージの内容のうちの少なくとも一方との間でのマッチングに基づいて、ルーティングノードは活動情報を記憶する。記憶された情報、あるいはステップ4630においてルーティングノードにより更新された情報は、可能なユーザ活動情報の構造及び内容と関連付けて前述の実施形態に従って変更することができる。このユーザ活動情報は、単純なマークから特定のサービス、時間、サービス固有のデータ、ユーザの識別子などに関係する更に複雑でかつ詳細な情報までの範囲をカバーすることも可能である。次いで、監視プロセス460は再びアイドル状態へ戻ることになる。
ステップ470において、ユーザの後続する登録イベント(S−REG EVNT)がルーティングノードにおいて検出される。端末からすでに登録されているユーザにとって、上記イベントは登録解除になり得るし、あるいはシステムが定期的登録を必要とするものであれば、再登録になり得る。前述したように、今回このイベントは再登録であると仮定することができる。通信システムがIMSのようなSIPベースのシステムであれば、このイベントは、S−CSCFを介してすでに登録している端末を有するユーザからのSIPメッセージREGISTERの前記S−CSCFにおける受信に関連するものである可能性がある。
次いで、ルーティングノードでの実行は再びステップ420へ進み、このステップで、位置登録ノードに登録イベント(本事例では再登録)を通知するメッセージ(REGNOTF)の送信を行う。最初の登録(I−REG EVNT)が受信されてから、ユーザが監視プロセス(460)により検出されたサービスに関与していると仮定すると、上記メッセージは、前述したように、関係するユーザの、(単複の)サービスに関する単純な又は複雑な活動情報を含み得るその事実を示す情報要素を伝えるものとなる。ルーティングノードは位置登録ノードへ活動情報を報告すると、オプションとして(本事例では最初の登録から後続する再登録までの)登録期間の間収集された活動情報を削除することができる。
再登録イベントを通知するメッセージの受信時に、位置登録ノードは、前述したようにステップ430と440を実行する。ユーザがあるサービスに関与していたと仮定すると、ステップ440で位置登録ノードは、前記メッセージ(REGNOTF)でルーティングノードから受信した活動情報に従って、前に記憶されたユーザの活動情報(303−2A)を更新する。位置登録ノードは別の若干のデータを追加することも可能である。例えば、位置登録ノードは、受信した活動情報と関連付けて、関係する登録期間を示す関係しているタイムスタンプを記憶することができる。例として挙げる事例では、タイムスタンプは、この登録イベントが受信された時刻あるいは最初の登録イベントが受信された時刻と関連づけられるものであってもよい(例えばタイムスタンプは、アクティブではないということを示す最初の登録が報告されたとき(ステップ440の最初の実行時)に記憶されたものであってもよい)。
ステップ450において、ルーティングノードは、ステップ410において受信された登録イベントの性質のチェックを行う。登録解除でもないと仮定されている本事例の場合のように、新たな(後続する)登録イベント(S−REG EVNT)が受信されるまで、モニタリングステップ460における実行が進行する。
次いで、ステップ470において登録解除とは異なる登録イベントがルーティングノードにおいて検出される限り、サイクル420〜460のステップは反復され得る。したがって、本発明の実施形態によれば、ユーザの活動がルーティングノードによってモニタされる登録期間と、位置登録ノードに通知される対応する活動情報とは、最初の登録と登録解除との間の時間と、最初の登録と再登録との間の時間と、後続する再登録間の時間と、再登録と後続する登録取消との間の時間とを含むことができる。例えば、ステップ470において登録解除が検出された場合、前述したようにステップ420〜440が実行することになり、次いで、ユーザ活動情報を収集する本方法の実行指令はステップ450のチェック時に停止することになる。
通信システム固有の特徴に応じて、種々の事例でルーティングノードにより登録解除イベントの検出を行うことができる。第1の事例は、ルーティングノードにおける、ユーザ端末からの登録解除要求メッセージの受信であってもよい。例えば、SIPシグナリングの場合、0秒という時間切れ値を示すREGISTERメッセージを送信することによって上記受信を達成することができる。第2の事例は登録期間中のタイム・アウトとすることができる。この状況では、登録済みのユーザ端末が指定された時間間隔内に再登録できなかった結果、ルーティングノードはこのユーザ端末を登録なしと見なして、登録解除イベントを位置登録ノードへ通知することになる。第3の事例は通信システムから起動する管理上の処理手順に関連づけることができる。例えば、通信システムにおいてユーザ用として登録された端末は、端末が盗まれたり、会員登録が終了したり、プリペイドクレジットが支払い額を超過したりしたような場合、自動的に登録解除を行うことができる。IMSシステムにおける特別の事例では、HSSから得られる(特定のアプリケーションサーバなどの)サービスプラットフォームから、関係する端末に割り当てられたS−CSCFへ登録終了要求を送信することによって、管理上の登録解除を達成することが可能となる。これらすべての登録解除の場合、ステップ470において登録解除イベントが検出されるとすぐに、ステップ470において、本方法の実行指令がステップ420〜440を続行し、次いで、ステップ450のチェック時に停止する。
動的登録機能を提供する通信システムにおいて、同じユーザがシステムにおける自分の存在を異なるアクセスポイントから登録することが可能であるが、これらのアクセスポイントは割り当てられたルーティングノードの変化を伴う場合がある。したがって、前記ユーザがユーザ端末を用いてローミングを行う場合は異なるルーティングノードから同じユーザの活動情報が位置登録ノードにおいて収集されることになる可能性がある。
図4は図1の通信システムに示すいくつかのエンティティのインタラクションを含み、図3のステップのうちのいくつかを例示する単純化されたシグナリングフローを示す図である。説明を更に明瞭にするために、図3は、これらのエンティティ間で生じる可能性があるすべての最後的なシグナリングは示さず、単に本発明の説明に関連性のあるシグナリングフローのみを示している。
一事例として、通信システムは、IMSシステムであると仮定することができる。この場合、ルーティングノード120と121はS−CSCFであり、位置登録ノード130はHSSであり、アプリケーションサーバ140はプレゼンスサーバであり、そして、ユーザ端末101は当初はIMSにまだ登録されていない、IMS能力を備えたユーザ装置である。明瞭さを旨として、ユーザ端末への/からのシグナリング及びメディアのルーティングにおいて介在し得るノードではあるが、本発明のこの実施形態にとっては示す必要のない、更にいくつかのノード(ベース無線ステーション、SGSN、GGSN、メディア・ゲートウェイ、並びに、「問い合わせ」又は「プロキシ」の役割を果たす別のCSCF(I−CSCF、P−CSCF)など)は図示していない。しかし、当業者には以下で明らかなように、別の実施形態もまた可能な実施形態であり、その場合、これらノードのなかのいくつかのノードを本発明によって達成するように構成することも可能である。例えば、SGSNがGPRS登録イベントを通知するとき、SGSNはユーザ活動情報を収集し、HLRへ又はHSSへこの活動情報を報告することが可能である。
フロー501において、登録メッセージREGISTERが、ユーザ端末101からS−CSCF120へ到着する。S−CSCF120は、ユーザ端末がシステムの中へまだ登録されていないことを検出し(例えば、S−CSCF120は、パラメータ「完全性の保護(integrity protected)」が「設定なし(no)」を示していることをチェックする)。次いで、フロー502において最初の登録をHSS130へ通知する。IMSシステムにおいて、この最初の登録は、「登録」を示す情報(REG)を含むDIAMETERメッセージ「サーバ割当て要求」(SAR)を送信することにより達成される。この「登録」情報(REG)には、ユーザ端末がユーザの識別子の最初の登録を行ったことが示されている。例として示されているこの事例について考えてみると、S−CSCF120がまだ当該ユーザについての活動情報を何も収集していないため、SARメッセージ502は活動情報を伝えることはない。登録イベントを通知するメッセージの中で、ユーザに関連する活動がない旨を報告するために、種々の実施形態が可能である。例えば、ルーティングノードS−CSCF120は、位置登録ノード130によって「活動なし」と解釈できる所定のデフォルト値を含むある特定の情報要素を送信することができる。上記とは別に、この特定の情報要素を省略することも可能であり、このことがやはり、「活動なし」と位置登録ノードHSS130によって解釈され得る。
次いで、例示のように、HSS130は、端末101のユーザの登録情報と、前記ユーザの活動情報とをそれぞれ更新するステップ430と440を実行する。例示の事例では、端末101のユーザがS−CSCF120を介して最初の登録を行う場合、HSSはメッセージ502の中で報告される活動情報をまだ何も受信せず、S−CSCF120の識別子及び(単複の)登録ユーザ識別子を特に含む、登録情報(REG)のみを受信することになる。IMSでは、割り当てられたS−CSCFが、その機能のいくつかを達成するためにユーザに関係する若干のデータを必要とするため、フロー503においてHSSはDIAMETERメッセージ「サーバ割当て応答」(SAA)によりS−CSCF120に対して応答する。このDIAMETERメッセージには、関係するユーザのユーザプロファイルデータ(P)が含まれている。更に、本発明の1つの実施形態によれば、SAAメッセージは、前記ユーザの活動をモニタするために適用可能な活動テンプレートデータ(AT)を更に備えることができる。S−CSCFは、これを介して前記ユーザが登録される間に、S−CSCFが前記ユーザ用として又はその端末用として記憶する動的データのうちのいずれかのデータと関連付けて、上記活動テンプレートデータを記憶することができる。
次いで、S−CSCF120は、フロー504において、例えば、SIP 200 OKメッセージを用いて登録の結果をユーザ端末101へ通知し、次いで、活動モニタプロセス460を開始する。図3と関連して前述したように、プロセス460はS−CSCF120において動作し、適用可能な活動テンプレートに照らしてユーザ端末101に関連するシグナリングメッセージのチェックを行うと共に、登録期間の間この情報がHSSへ通知されるまで、ユーザ活動を適宜記録する。IMSにおける認証手続きに熟知している当業者であれば理解するように、フロー501と504との間にはいくつかの別のシグナリングフローが存在し得る。これらのシグナリングフローは最初のREGISTERにおいて示されるユーザ識別子の認証を意図するものである(フロー501)。前述したように、明瞭さを旨としてこれらのフローは図4には示されていない。
端末101のユーザが登録期間中に関与することができるいくつかのサービスを例示するために、後続するフロー505〜514が図4に示されている。図示の第1の例はプレゼンスサービスに関連するものである。要するに、このサービスは、通信システムがユーザ端末のプレゼンス情報を収集し、提供する能力を与えるものである。この情報は、ユーザ端末からか、システム内のいくつかのノードからかの少なくともいずれかから得られる入力から取得することが可能であり、次いで、別のユーザ端末へ、通常、要求時及び認証時に提供されるものである。第2に示す例は2つのユーザ端末間でのマルチメディアコールである。
端末101のユーザが第2のユーザに関するプレゼンス情報の取得を望む場合、該ユーザは、自分の端末を介してこのサービスを要求し、フロー505においてユーザ端末は、「イベント」パラメータの中で「存在」を示すと共に前記別のユーザを特定する、SIPメッセージSUBSCRIBEの送信を行う。このメッセージは、第2のユーザのプレゼンス情報がユーザ端末101へ通知されるべき期間を、例えばパラメータ「満期(Expires)」で示すようにしてもよい。
フロー506において、S−CSCF120は受信したサービス要求の対応するノードへのルーティングを行う。(前述の3GPP TS24.141に規定されているような)IMSシステムにおけるプレゼンスサービス処理手順によれば、S−CSCF120は、ユーザの識別子の分析に基づいて、第2のユーザのシグナリングサービスを提供している(別のS−CSCFなどの)ルーティングノードへ向けて要求のルーティングを行うことになる。次いで、S−CSCF120は、前記要求を前記第2のユーザのプレゼンス情報サービスを提供している対応するプレゼンスサーバへ転送することが望ましい。しかし、この転送は図4には単純化されて描かれている。そして、S−CSCF120とプレゼンスサーバ140との間での直接シグナリングのフローが明瞭さを旨として示されている。
S−CSCF120における監視プロセス460は、対応する(すなわち汎用、ユーザ固有などの)活動テンプレートに照らしてメッセージ(受信した505又は送信する506)のチェックを行うことができる。したがって、活動判断基準に応じて、監視プロセス460は、例えば、ユーザがSUBSCRIBEメッセージを送信したという単なる事実によって、端末101のユーザを現在の登録期間においてアクティブなユーザとしてマークしなければならないと決定するようにしてもよい。上記とは別に、監視プロセス460は、上記メッセージのいくつかの別の内容に応じて、例えば、メッセージが「イベントパラメータ」において「存在」を示しているかどうか、サービス要求(「満期(Expire)」パラメータ)に示されている加入登録期間が或る一定値を超えているかどうかの少なくともいずれかに応じて、ユーザがアクティブであるとして(また、記憶済みの対応する追加情報について言及済みの事例のうちのいずれかのオプションとして)ユーザをマークしなければならないと決定するようにしてもよい。
また、上記サービス要求はプレゼンスサーバから何らかの方法で(承認又は拒絶などの)受信確認を受けることを必要とするため、S−CSCF120は、活動テンプレートのチェックを行うことによって、サービス要求の結果に応じてユーザをアクティブなユーザとしてマークすべきであるか否かを決定することが可能となる。この結果、S−CSCF120は、例えば、現在のシグナリングセッションにおいて承認を示す後続のシグナリングをプレゼンスサーバ140から受信するまで待機するか、あるいは、サービス実行に関連する後続の(例えば、後程言及するNOTIFYメッセージなどの)シグナリングフローが受信されるまで待機することになる。
例えば、活動テンプレートは、(メッセージドリブン(駆動)のサービス状態変数を参照して)特定のシーケンス中で受信される所定のシグナリングメッセージを同定するためのデータを含むものであってもよい。更に、活動テンプレートは、(加入登録時刻などの)或る特定のパラメータに応じて、(プレゼンスサービスなどの)所定のサービスに関してユーザをアクティブなユーザとしてマークするように設定するデータを含むことができるため、(後程言及するNOTIFYメッセージなどにより)サービスが承認されるか、実行された場合にのみ、S−CSCF120は、サービス要求(505)又はサービス確立中に交換される何らかの別のメッセージの中で伝えられたいくつかのデータを記憶して、将来これらのデータをチェックできるようにすることが可能となる。
プレゼンス登録要求506の受信時に、プレゼンスサーバ140は、この要求の発信者に対して必要な認証チェックを行って、該発信者が第2のユーザに関するプレゼンス情報を受信できるようにすることを保証することが可能となる。認証条件が満たされれば、プレゼンスサーバは、フロー507においてSIP 200 OKメッセージを送信することによって要求を承認し、この要求はフロー508においてS−CSCF120から要求元のユーザ端末101へ転送されることになる。上述のように、S−CSCF120は、適用可能な活動テンプレートの内容に従って、成功した要求(フロー507、508)を処理するときに、端末101のユーザに関連する活動情報を記憶することができる(図3、ステップ4630)。上記とは別に、例えば、第2のユーザのプレゼンス情報を伝える通知(例えば、「イベント」パラメータ内で「存在」を示すSIPメッセージNOTIFYなど)がプレゼンスサーバ140から受信されたときに、適用可能な活動テンプレートが、このサービスに関連してユーザをアクティブなユーザとしてマークすべきである旨を提示している場合は、S−CSCF120内の監視プロセスは後続するシグナリングメッセージを待ち受けることができる(図4には図示されていないフロー)。この事例では、活動テンプレートは、例えば、NOTIFYメッセージと、その内容と、一連の以前のメッセージ(SUBSCRIBE、200 OK)とのうちの少なくともいずれかのメッセージを特定するための、S−CSCF120内の監視プロセスによって使用可能な識別子(又は複数の識別子)を含むことができる。
S−CSCF120を経由して通信システムの中へ登録を行いながら、端末101のユーザは別のユーザとの通信を要求することも可能である。この事例では、ユーザ端末101はフロー509において、宛先ユーザの識別子を含むSIP INVITEメッセージを送信する。端末101のユーザがビデオとオーディオとを好適に含むマルチメディア通信を確立したいと思った場合、INVITEメッセージは、これらの種類の通信に関して端末101がサポートするコーデックに関する(セッション記述プロトコル(SDP)固有のエレメントの内部に埋め込まれた)情報を含む。この内容は、S−CSCF120内の監視プロセス460によって、適用可能な活動テンプレートに対して照合されてもよいし、あるいは、前述したように、S−CSCF120によって保持しておいて、別のメッセージを処理する際に将来照合できるようにしてもよい。例えば、ビデオを含む通信が相手側のユーザ端末により提供され、次いで、受け付けられた場合、このサービスに関連してユーザをアクティブなユーザと見なすことができる。
フロー510において、S−CSCF120は宛先識別子の分析を行い、その宛先へ向けてINVITEメッセージのルーティングを行う。(例えば前述の3GPP TS23.228に記載されているような)IMSにおけるセッション開始手順によれば、S−CSCF120は、宛先ネットワーク領域のI−CSCFへ向けてメッセージのルーティングを行うことができる。次いで、上記I−CSCFは、宛先ユーザ端末に割り当てられたS−CSCFの識別子を取得するためにHSSへ問合せを行うことが望ましい。次いで、I−CSCFは、受信したINVITEをS−CSCFへ転送することになる。これらのフローは、単純を旨として、S−CSCF120とS−CSCF121との間での直接シグナリングを例示する図4には示されていない。この図では、最後のフローは宛先ユーザ端末のシグナリングを提供するように割り当てられたS−CSCFとなるように仮定されている。
S−CSCF121はINVITEメッセージを宛先端末へ向けて転送することになる(このフローは図4には図示していない)。この後、通信要求がまず宛先端末によって受け付けられて、かつ、呼が応答される前に、種々の進行メッセージがS−CSCF120においてS−CSCF121から受信され、次いで、フロー511と512によって図4に概略的に例示されているように進行メッセージが発信側端末101へ向けて転送される。これらのフロー、並びに、反対方向に進む(図4には示されていない)別の進行フローは、特に、呼が応答された際に発信側端末と宛先端末との間で交換されるメディアを最終的に搬送することになるメディアチャネルについてのネゴシエーションを行うことを目的として発生する。S−CSCF120におけるこれらのシグナリングフローのプロセスは、ステートマシンを駆動することができ、また、監視プロセス460において用いることができ、それによって、対応するメッセージ及び該メッセージの内容を活動テンプレート内のデータに照らしてチェックし、当該ユーザに関連する、S−CSCF120に記憶されている活動情報を(必要に応じて)更新できるようにするものである。例えば、ビデオを交換するためのメディアチャネルをユーザ端末間において確立することが同意された場合にサービス「マルチメディア通信」に関連してユーザをアクティブなユーザとしてマークすることを提示するデータを、活動テンプレートは含むことが可能である。
INVITEメッセージへの最終応答は、フロー513でS−CSCF121からS−CSCF120において受信される。この応答は、呼が応答を受けたときに宛先端末から送信されるSIPメッセージ200 OKのS−CSCF121での受信に起因して生じ得るものである。S−CSCF120は、これに応えて、現在進行中の通信セッションの状態を更新し、次いでフロー514においてSIPメッセージ200 OKを発信側端末101へ向けて転送する。例えば、SIP INVITEメッセージへの最終応答がSIP 200 OKメッセージである場合にサービス「マルチメディア通信」に関連して端末101のユーザをアクティブなユーザであると見なさなければならないことが適用可能な活動テンプレートにより提示されていれば、これに従って、S−CSCF120内の監視プロセス460はこのユーザに関連する活動情報を更新することになる。前述したように、この更新は、一連のメッセージや、メッセージが受信されるセッション状態に照らしてのメッセージなどのチェックを行うために必要なデータを活動テンプレート内に設定することにより行うことができる。また、例えば、確立された通信がビデオチャネルを含む場合にのみユーザをマークすべき旨が活動テンプレートによって提示されている場合は、サービスのシグナリング(509〜514)内で伝えられる若干のデータをS−CSCF120により保持することが可能となる。
フロー515において、S−CSCF120はユーザ端末101から登録解除要求を受信する。IMSにおいて、この登録解除要求は、パラメータ「満期(Expires)」にゼロ値を含むSIPメッセージREGISTERにより達成される。登録イベントをHSS130に通知するために、フロー516において、S−CSCFは「ユーザ登録解除」を示す情報(REG)を含むDIAMETERメッセージ(SAR)を送信する。本発明によれば、上記メッセージは関わりのある登録期間におけるユーザの活動情報(ACT)を更に含む。例示の事例では、登録期間は、端末101のユーザの最初の登録501/502と後続する登録解除515/516との間の時間を含む。前述したように、フロー516において送信される活動情報は実施形態により変動する場合がある。例えば、活動情報は、当該時間においてユーザがサービスに対してアクティブであったかどうかを提示する単純な(例えば非構造的な)情報要素を含むようにすることも可能である。
上記とは別に、活動情報は、更に複雑な情報を伝えることも可能であり、例えば、ユーザが関与したサービスの識別子、並びに、ユーザが発呼側として関与したか、着呼側として関与したかどうか、サービスが行われた時刻、継続時間などを提示する追加情報を含む1以上の情報要素を含むようにすることも可能である。
メッセージ516の受信時に、HSS130はステップ430を実行して、対応する登録情報303−2Rを更新し、次いで、ステップ440を実行して、関係するユーザの活動情報303−2Aを更新する。ステップ440において、HSSは受信された活動情報をローカルに記憶することが可能であり、例えば、前に記憶した活動情報に受信した情報を追加したり、あるいは前に記憶した活動情報に対して上書きしたりすることが可能である。
上記とは別に、あるいは、上記に更に追加して、HSS130は、(定期的に、要求時に、あるいは、ユーザの活動情報に変化が生じたときなどに)受信された(又は以前に記憶された)活動情報を別のノード(図4には図示せず)へ転送することができる。この別のノードは、例えば、アプリケーションサーバ(AS)などであってもよく、該アプリケーションサーバは、1以上のHSSからこの種の情報を受信するように割り当てることができ、更に、或るユーザ又はユーザグループにおける或るサービスの利用レートやユーザの行動などを判断することを目的として、受信したデータの後処理を実行することができる。IMSにおいて、この転送は、HSSとアプリケーションサーバ(AS)との間で3GPPにより標準化された所謂「Sh」インタフェースにより達成することができる。例えば、DIAMETERメッセージ「ユーザデータ要求」(UDR)及びユーザデータ応答(UDA)を修正して、このメッセージが「ユーザ活動情報」を示す新規のデータ参照を含むようにすることができる。これによって、所望の場合に、ユーザのユーザ活動情報をASがHSSから取得することが可能となる。また、ユーザの活動データが変化したときにASがHSSから通知を受けるように、ASが申込んでおくことができる。この機能を達成するために、DIAMETERメッセージ「通知要求の申込み」(SNR)を修正して、「ユーザ活動情報」を示す新規のデータ参照を含むようにすることができる。次いで、HSSにおいてユーザのユーザ活動情報の内容が変化したとき、HSSは、含まれているデータとして「ユーザ活動情報」を示す修正済みDIAMETERメッセージ「通知要求プッシュ」(PNR)によって、「通知要求」に申し込んでいる(単複の)ASにその変化を通知することになる。
前述のAS内のサービスロジックは、例えば、(ユーザがサービスに関与した最後の時点はいつであったか、どのようなサービスであったかなどのような)或るユーザの活動のレベルに応じて、そのユーザに関する何らかの特定の機能を実行するように構成されてもよいし、また、(サービス利用統計を作成するためのような)サービス又はユーザグループに関する何らかのの特定の機能をも実行するように構成されてもよい。
HSS130は、フロー517においてDIAMETERメッセージ「サーバ割当て応答」(SAA)によってS−CSCF120に応答することで、フロー516において通知された登録解除に対する受信確認を行う。次に、S−CSCF120はフロー518において、ユーザ端末101へ向けてフロー515において要求された登録解除に対する受信確認を送信する。S−CSCF120における監視プロセス460は、同じユーザの前回の登録イベントに後続するユーザの登録イベントの処理中にいつであっても、停止することができる。例えば、監視プロセス460は(図4に図示のように)フロー515の登録解除要求の受信時に、フロー518においてユーザ端末へ向けて送信される確認の送信時に、あるいは登録解除の処理中の他の任意の時点に停止することができる。
図4と関連して説明した実施形態は、IMSシステムにおけるノード及びシグナリング処理手順について考察したものである。この特定の通信システムにおけるある特定の特徴として、複数の異なる識別子をユーザに対して割り当てることができるという点が挙げられる。この識別子によってユーザを特定し、別のユーザから着信を受けることが可能となる。(「パブリックユーザアイデンティティ」としてIMSにおいて知られている)1以上のこれらの識別子は、登録及び登録解除のメッセージREGISTERにおいて参照することが可能であり、それによってユーザはS−CSCFを介して(明示的に又は暗黙のうちに)ユーザ端末から1以上のユーザの識別子の登録と登録解除の少なくともいずれかを行うことができるようになる。IMSにおいて、所定のユーザに関連する加入登録データ及び登録情報を記憶するように割り当てられているHSSは、前記ユーザのすべての最終的な識別子の登録状態を追跡するために使用することができる。というのも、これらすべての識別子は同じIMSの加入登録に属し、対応するユーザの加入登録レコードUSRC−Xと関連づけて記憶されているからである。したがって、このHSSは、S−CSCFのうちのいずれからであっても報告される登録イベントに従って同じユーザの活動情報を収集することが可能となり、その場合、前記ユーザは端末を介して1以上のユーザ識別子の登録を行うことが可能となる。したがって、HSSは、ユーザが関与していたサービスにおいて登録され使用されていた前記ユーザの識別子とは独立に、ユーザに関連するユーザ活動情報を記憶し、更新することが可能となる。上記とは別に、HSSは、例えば、前記ユーザのユーザ活動を報告するS−CSCFを介してどの(単複の)ユーザ識別子が登録されるかのチェックを最初に行うことによって、ユーザ識別子毎に活動情報を記憶することができる。この活動情報の記憶は、ユーザがサービスに関与していたときユーザが使用していたユーザ識別子をS−CSCFからHSSへ送信される活動情報の中に含めることにより達成することも可能である。
現在、通信ノードは、ほとんどの場合、コンピュータベースのマシンに実装されている。したがって、コンピュータ可読プログラムコードを含むコンピュータプログラムは、通信システムのコンピュータベースのマシンにロードされ、それにより、これらのマシンは、該マシンが実装している通信ノードに対して指定されている特定の機能性に応じて、それぞれのプログラムコードにより定められているような所定の方法に従って動作することになる。したがって、当業者は、コンピュータプログラムの作成と修正の少なくともいずれかを行う際に、本発明の教示から逸脱することなく、これらの教示を容易に適用して、記載の実施形態のうちのいずれかに従って動作させるべく、コンピュータベースのルーティングノード又は位置登録ノードにロードするのに適したコンピュータプログラムの作成と修正の少なくともいずれかを行うことが可能となる。
例示として、本発明を限定しない方法で、いくつかの典型的な実施形態に関して本発明を説明した。当業者であれば種々の変形例を容易に理解することができよう。そのため、本発明は、請求の範囲を考慮して解釈され、限定されるべきものである。