(57)【要約】【課題】プレゼンス情報とスケジュール情報との同期を実現するシステム、方法、プレゼンスサーバおよびカレンダーサーバを提供する。【解決手段】スケジュール情報配信者がスケジュール情報を配信した後、カレンダーサーバは、配信されたスケジュール情報に基づいて、当該スケジュール情報配信者の現在の状態情報を生成し、当該スケジュール情報配信者のプレゼンス情報を更新するよう自動的にプレゼンスサーバに通知する。プレゼンス情報配信者が自分のプレゼンス情報を手動で変更して配信した後、プレゼンスサーバは、受信されたプレゼンス情報に基づいてイベント情報を生成して、当該プレゼンス情報配信者のスケジュール情報を更新するようカレンダーサーバに通知する。本発明の解決手段によれば、ユーザの操作が簡略化され、ユーザのプレゼンス情報とスケジュール情報をサブスクライブした異なるユーザ群が当該ユーザの現在の状態を適時に取得することができる。【選択図】図１
2009153126.tif 000002
【特許請求の範囲】
【請求項１】
プレゼンス情報とスケジュール情報との同期を実現するシステムであって、
プレゼンス情報配信者、スケジュール情報サブスクライバ、プレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）およびカレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）を含み、
前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、前記プレゼンス情報配信者から受信したプレゼンス情報に基づいて前記プレゼンス情報配信者のイベント情報を生成し、生成されたイベント情報を前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信し、
前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒから配信されたイベント情報に基づいて、自身に記憶されている前記プレゼンス情報配信者のスケジュール情報を更新し、更新されたスケジュール情報を、前記プレゼンス情報配信者のスケジュール情報をサブスクライブしたスケジュール情報サブスクライバへ配信する、
ことを特徴とするシステム。
【請求項２】
前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、セッション開始プロトコルによって、生成されたイベント情報を前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信することを特徴とする請求項１に記載のシステム。
【請求項３】
前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、さらに、前記プレゼンス情報配信者から受信したプレゼンス情報に基づいて前記プレゼンス情報配信者のイベント情報を生成する前に、前記プレゼンス情報配信者からのスケジュール情報同期要求を処理することを特徴とする請求項１に記載のシステム。
【請求項４】
スケジュール情報配信者とプレゼンス情報サブスクライバとをさらに含み、
前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、さらに、前記スケジュール情報配信者から受信したスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に前記スケジュール情報配信者の状態情報を生成し、生成された状態情報を前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信し、
前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、さらに、前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された状態情報に基づいて、自身に記憶されている前記スケジュール情報配信者のプレゼンス情報を更新し、更新されたプレゼンス情報を、前記スケジュール情報配信者のプレゼンス情報をサブスクライブしたプレゼンス情報サブスクライバへ配信する、
ことを特徴とする請求項１に記載のシステム。
【請求項５】
前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、セッション開始プロトコルによって、生成された状態情報を前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信することを特徴とする請求項４に記載のシステム。
【請求項６】
プレゼンス情報とスケジュール情報との同期を実現するシステムであって、
スケジュール情報配信者、プレゼンス情報サブスクライバ、カレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）およびプレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）を含み、
前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、前記スケジュール情報配信者から受信したスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に前記スケジュール情報配信者の状態情報を生成し、生成された状態情報を前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信し、
前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された状態情報に基づいて、自身に記憶されている前記スケジュール情報配信者のプレゼンス情報を更新し、更新されたプレゼンス情報を、前記スケジュール情報配信者のプレゼンス情報をサブスクライブしたプレゼンス情報サブスクライバへ配信する、
ことを特徴とするシステム。
【請求項７】
前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、セッション開始プロトコルによって、生成された状態情報を前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信することを特徴とする請求項６に記載のシステム。
【請求項８】
プレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）であって、
プレゼンス情報配信者から配信されたプレゼンス情報を受信するプレゼンス情報受信モジュールと、
受信されたプレゼンス情報を記憶するプレゼンス情報記憶モジュールと、
前記プレゼンス情報記憶モジュールに記憶されているプレゼンス情報を、前記プレゼンス情報配信者のプレゼンス情報を既にサブスクライブしたプレゼンス情報サブスクライバへ配信するプレゼンス情報配信モジュールと、
受信されたプレゼンス情報に基づいて、当該プレゼンス情報配信者のイベント情報を生成するイベント情報生成モジュールと、
生成されたイベント情報をカレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）へ配信するイベント情報配信モジュールと、
を含むことを特徴とするプレゼンスサーバ。
【請求項９】
前記イベント情報生成モジュールは、さらに、受信されたプレゼンス情報に基づいて当該プレゼンス情報配信者のイベント情報を生成する前に、プレゼンス情報配信者からのスケジュール情報同期要求の受信を待つことを特徴とする請求項８に記載のプレゼンスサーバ。
【請求項１０】
前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された前記プレゼンス情報配信者の状態情報を受信する状態情報受信モジュールと、
受信された状態情報に基づいてプレゼンス情報記憶モジュールに記憶されている前記プレゼンス情報配信者のプレゼンス情報を更新するプレゼンス情報更新モジュールと、
をさらに含み、
前記プレゼンス情報配信モジュールは、さらに、更新されたプレゼンス情報を前記プレゼンス情報サブスクライバへ配信する、
ことを特徴とする請求項８に記載のプレゼンスサーバ。
【請求項１１】
カレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）であって、
スケジュール情報配信者から配信されたスケジュール情報を受信するスケジュール情報受信モジュールと、
受信されたスケジュール情報を記憶するスケジュール情報記憶モジュールと、
前記スケジュール情報記憶モジュールに記憶されているスケジュール情報を、前記スケジュール情報配信者のスケジュール情報を既にサブスクライブしたスケジュール情報サブスクライバへ配信するスケジュール情報配信モジュールと、
受信されたスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に、前記スケジュール情報配信者の状態情報を生成する状態情報生成モジュールと、
生成された状態情報をプレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）へ配信する状態情報配信モジュールと、
を含むことを特徴とするカレンダーサーバ。
【請求項１２】
前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒから配信された前記スケジュール情報配信者のイベント情報を受信するイベント情報受信モジュールと、
受信されたイベント情報に基づいて前記スケジュール情報記憶モジュールに記憶されている当該スケジュール情報配信者のスケジュール情報を更新するスケジュール情報更新モジュールと、
をさらに含み、
前記スケジュール情報配信モジュールは、さらに、更新されたスケジュール情報を前記スケジュール情報サブスクライバへ配信する、
ことを特徴とする請求項１１に記載のカレンダーサーバ。
【請求項１３】
スケジュール情報に基づいてプレゼンス情報を更新する方法であって、
スケジュール情報配信者から配信されたスケジュール情報を受信した後、受信されたスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に、当該スケジュール情報配信者の状態情報を生成し、
生成された状態情報をプレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）へ配信し、前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒが、受信された状態情報に基づいて当該スケジュール情報配信者のプレゼンス情報を更新する、
ことを含むことを特徴とする方法。
【請求項１４】
前記受信されたスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に、当該スケジュール情報配信者の状態情報を生成することは、受信されたスケジュール情報に記録されている各イベントの開始時間に、それぞれ、スケジュール情報から対応イベントのイベント内容を抽出して前記状態情報とする、ことを含むことを特徴とする請求項１３に記載の方法。
【請求項１５】
前記受信されたスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に、当該スケジュール情報配信者の状態情報を生成することは、スケジュール情報から対応イベントのイベント内容を抽出するとき、対応イベントの開始時間と終了時間を抽出し、抽出された開始時間と終了時間を、抽出されたイベント内容と一緒に前記状態情報とする、ことをさらに含むことを特徴とする請求項１４に記載の方法。
【請求項１６】
前記生成された状態情報をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信することは、セッション開始プロトコルの配信メッセージに前記状態情報を搭載する、ことを含むことを特徴とする請求項１３に記載の方法。
【請求項１７】
プレゼンス情報に基づいてスケジュール情報を更新する方法であって、
プレゼンス情報配信者から配信されたプレゼンス情報を受信した後、受信されたプレゼンス情報に基づいて、当該プレゼンス情報配信者のイベント情報を生成し、
生成されたイベント情報をカレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）へ配信し、前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒが、受信されたイベント情報に基づいて当該プレゼンス情報配信者のスケジュール情報を更新する、
ことを含むことを特徴とする方法。
【請求項１８】
受信されたプレゼンス情報に基づいて当該プレゼンス情報配信者のイベント情報を生成する前に、プレゼンス情報配信者からのスケジュール情報同期要求の受信を待つ、ことをさらに含むことを特徴とする請求項１７に記載の方法。
【請求項１９】
前記受信されたプレゼンス情報に基づいて、当該プレゼンス情報配信者のイベント情報を生成することは、受信されたプレゼンス情報から、記録されている動作の内容並びに動作の開始時間および終了時間を抽出して、前記イベント情報とする、ことを含むことを特徴とする請求項１７に記載の方法。
【請求項２０】
前記生成されたイベント情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信することは、セッション開始プロトコルの配信メッセージに前記イベント情報を搭載する、ことを含むことを特徴とする請求項１７に記載の方法。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は通信技術に関し、特に、プレゼンス（Ｐｒｅｓｅｎｃｅ）サービスとカレンダー（Ｃａｌｅｎｄａｒ）サービスとを組み合わせて、プレゼンス情報とスケジュール情報との同期を実現するシステム、方法、プレゼンスサーバおよびカレンダーサーバに関する。
【背景技術】
【０００２】
Ｐｒｅｓｅｎｃｅサービスは、現在のインスタントメッセージング（ＩＭ：  Ｉｎｓｔａｎｔ  Ｍｅｓｓａｇｉｎｇ）の応用に幅広く利用されているサービスの１つであり、あるＩＭユーザがオンライン（ｏｎ  ｌｉｎｅ）状態にあるか、それともオフライン（ｏｆｆ  ｌｉｎｅ）状態にあるかのような現在の状態を他のＩＭユーザにプレゼンスすることを主な目的とする。現在、移動通信技術の発展に伴い、Ｐｒｅｓｅｎｃｅサービスもオープンモバイルアライアンス（ＯＭＡ：Ｏｐｅｎ  Ｍｏｂｉｌｅ  Ａｌｌｉａｎｃｅ）のサービスイネーブラ（Ｓｅｒｖｉｃｅ  Ｅｎａｂｌｅｒ）として、移動インスタントメッセージングに応用され、移動ユーザにサービスを提供することができる。一般的に、Ｐｒｅｓｅｎｃｅサービスにおいて、ユーザにプレゼンスする情報がプレゼンス情報と呼ばれる。ユーザの現在の状態のほかに、プレゼンス情報にはユーザの通信意図などのような各種の複雑な情報を搭載することができる。インターネット技術タスクフォース（ＩＥＴＦ：Ｉｎｔｅｒｎｅｔ  Ｅｎｇｉｎｅｅｒｉｎｇ  Ｔａｓｋ  Ｆｏｒｃｅ）によりプレゼンス情報のフォーマットが標準化され、その中にはＲＰＩＤ（Ｒｉｃｈ  Ｐｒｅｓｅｎｃｅ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｄａｔａ  Ｆｏｒｍａｔ）が含まれる。
【０００３】
Ｐｒｅｓｅｎｃｅサービスのほかに、ユーザの時間の計画および仕事の手配などを便利にするために、ネットワーク事業者によりＣａｌｅｎｄａｒサービスも提供されている。従来のＣａｌｅｎｄａｒサービスは主に２つの実現方式を含む。１つは、個人情報管理（ＰＩＭ：Ｐｅｒｓｏｎａｌ  Ｉｎｆｏｒｍａｔｉｏｎ  Ｍａｎａｇｅｒ）に基づくＣａｌｅｎｄａｒであり、例えば、パーソナルコンピュータまたはノートパソコンで作動するカレンダー機能を備える各種のソフトウェア、或いは、移動端末や携帯情報端末（ＰＤＡ）で作動するカレンダーソフトウェアなどである。このようなＰＩＭに基づくＣａｌｅｎｄａｒを利用して、ユーザは自分のＣａｌｅｎｄａｒをカスタマイズすることにより時間の計画および仕事の手配を実現することができる。しかし、ＰＩＭに基づくＣａｌｅｎｄａｒが主に個人に対してサービスを提供し、複数のユーザ間の共有を実現できないため、当該ユーザの他の関係ユーザは、当該ユーザによりカスタマイズされたＣａｌｅｎｄａｒを問い合わせできない。もう１つは、インターネットに基づくＣａｌｅｎｄａｒであり、例えば、従来のＹａｈｏｏ  Ｃａｌｅｎｄａｒ、Ｇｏｏｇｌｅ  Ｃａｌｅｎｄａｒなどである。インターネットに基づくＣａｌｅｎｄａｒの場合は、通常、ユーザにカスタマイズされたカレンダーや時間管理などの情報を含むスケジュール情報を記憶するための専用サーバがインターネットに置かれる。このようなインターネットに基づくＣａｌｅｎｄａｒによれば、ユーザは自分のＣａｌｅｎｄａｒをカスタマイズできるだけでなく、カスタマイズされたＣａｌｅｎｄａｒを自分のスケジュール情報を問い合わせる権限のあるサブスクライバ（Ｓｕｂｓｃｒｉｂｅｒ）に配信することもできる。ＩＥＴＦは１９９６年からＣａｌｅｎｄａｒの標準の策定を着手しており、その中にはＣａｌｅｎｄａｒフォーマットを規定するためのｉＣａｌｅｎｄａｒ標準が含まれる。
【発明の開示】
【発明が解決しようとする課題】
【０００４】
現段階で、ＰｒｅｓｅｎｃｅサービスとＣａｌｅｎｄａｒサービスはお互いに独立なサービスである。即ち、ネットワーク事業者から提供されたＰｒｅｓｅｎｃｅサービスとＣａｌｅｎｄａｒサービスをあるユーザが同時に利用する場合、該ユーザが自分のプレゼンス情報とスケジュール情報を異なるユーザ群にそれぞれ配信する必要があるため、ユーザの時間とネットワークリソースが浪費されてしまう。例えば、仕事が忙しい最高経営責任者（ＣＥＯ）にとって、毎日厳しいスケジュールがあり、該ＣＥＯの現在の状態およびスケジュールを秘書、家族または部下などの他の関係者に通知するために、該ＣＥＯは、ネットワーク事業者から提供されたＰｒｅｓｅｎｃｅサービスと、現在のインターネットに基づくＣａｌｅｎｄａｒサービスとを利用して、自分のプレゼンス情報とスケジュール情報をカスタマイズして、該プレゼンス情報またはスケジュール情報を問い合わせる権限のあるサブスクライバにそれぞれ配信することができる。このように、該ＣＥＯの秘書、家族または部下などの、該ＣＥＯのプレゼンス情報またはスケジュール情報を問い合わせる権限のあるサブスクライバは、該ＣＥＯの現在の状態またはスケジュールを知ることができる。しかし、従来のＰｒｅｓｅｎｃｅサービスとＣａｌｅｎｄａｒサービスがお互いに独立なサービスであるので、プレゼンス情報とスケジュール情報との一致性を確保するために、スケジュールが変わらない場合、該ＣＥＯはスケジュールに従って自分のプレゼンス情報を手動で更新する必要があり、スケジュールが変わる場合、さらに、自分のプレゼンス情報とスケジュール情報を同時に更新する必要がある。このようなプレゼンス情報とスケジュール情報の更新は非常に煩わしく、通常、多くの時間を占める。また、プレゼンス情報またはスケジュール情報の更新が適時ではなくまたは完全ではない場合には、プレゼンス情報とスケジュール情報が一致していないこともあり、サブスクライバが確実なプレゼンス情報またはスケジュール情報を取得することが確保できない。
【課題を解決するための手段】
【０００５】
上記の技術課題を解決するために、本発明はプレゼンス情報とスケジュール情報との同期を実現するシステムおよび方法を開示している。このように、ユーザが自分のプレゼンス情報だけを更新してよく、そのスケジュール情報は自動的にまたはユーザの指示で、更新されたプレゼンス情報と同期することができる。または、ユーザが自分のスケジュール情報だけを更新してよく、そのプレゼンス情報は自動的にスケジュール情報と同期する。これにより、ユーザの操作に大きな利便性を提供しており、且つ、ユーザのプレゼンス情報とスケジュール情報との一致性を確保でき、異なるサブスクライバ群が正確な情報を取得することを確保できる。
【０００６】
本発明の実施例に係るプレゼンス情報とスケジュール情報との同期を実現するシステムは、プレゼンス情報配信者、スケジュール情報サブスクライバ、プレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）およびカレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）を含み、
前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、前記プレゼンス情報配信者から受信したプレゼンス情報に基づいて前記プレゼンス情報配信者のイベント情報を生成し、生成されたイベント情報を前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信し、
前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒから配信されたイベント情報に基づいて、自身に記憶されている前記プレゼンス情報配信者のスケジュール情報を更新し、更新されたスケジュール情報を、前記プレゼンス情報配信者のスケジュール情報をサブスクライブしたスケジュール情報サブスクライバへ配信する。
【０００７】
本発明の実施例に係るプレゼンス情報とスケジュール情報との同期を実現する他のシステムは、スケジュール情報配信者、プレゼンス情報サブスクライバ、カレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）およびプレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）を含み、
前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、前記スケジュール情報配信者から受信したスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に前記スケジュール情報配信者の状態情報を生成し、生成された状態情報を前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信し、
前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅは、前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された状態情報に基づいて、自身に記憶されている前記スケジュール情報配信者のプレゼンス情報を更新し、更新されたプレゼンス情報を、前記スケジュール情報配信者のプレゼンス情報をサブスクライブしたプレゼンス情報サブスクライバへ配信する。
【０００８】
本発明の実施例に係るＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、
プレゼンス情報配信者から配信されたプレゼンス情報を受信するプレゼンス情報受信モジュールと、
受信されたプレゼンス情報を記憶するプレゼンス情報記憶モジュールと、
前記プレゼンス情報記憶モジュールに記憶されているプレゼンス情報を、前記プレゼンス情報配信者のプレゼンス情報を既にサブスクライブしたプレゼンス情報サブサクライバへ配信するプレゼンス情報配信モジュールと、
受信されたプレゼンス情報に基づいて、当該プレゼンス情報配信者のイベント情報を生成するイベント情報生成モジュールと、
生成されたイベント情報をカレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）へ配信するイベント情報配信モジュールと、を含む。
【０００９】
上記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された前記プレゼンス情報配信者の状態情報を受信する状態情報受信モジュールと、受信された状態情報に基づいてプレゼンス情報記憶モジュールに記憶されている前記プレゼンス情報配信者のプレゼンス情報を更新するプレゼンス情報更新モジュールと、をさらに含むようにしてもよい。
【００１０】
本発明の実施例に係るＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、
スケジュール情報配信者から配信されたスケジュール情報を受信するスケジュール情報受信モジュールと、
受信されたスケジュール情報を記憶するスケジュール情報記憶モジュールと、
前記スケジュール情報記憶モジュールに記憶されているスケジュール情報を、前記スケジュール情報配信者のスケジュール情報を既にサブスクライブしたスケジュール情報サブスクライバへ配信するスケジュール情報配信モジュールと、
受信されたスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に、前記スケジュール情報配信者の状態情報を生成する状態情報生成モジュールと、
生成された状態情報をプレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）へ配信する状態情報配信モジュールと、を含む。
【００１１】
上記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒから配信された前記スケジュール情報配信者のイベント情報を受信するイベント情報受信モジュールと、受信されたイベント情報に基づいて前記スケジュール情報記憶モジュールに記憶されている当該スケジュール情報配信者のスケジュール情報を更新するスケジュール情報更新モジュールと、をさらに含むようにしてもよい。
【００１２】
本発明の実施例に係るスケジュール情報に基づいてプレゼンス情報を更新する方法は、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒが、スケジュール情報配信者から配信されたスケジュール情報を受信した後、受信されたスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に、当該スケジュール情報配信者の状態情報を生成し、生成された状態情報をプレゼンスサーバＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信し、前記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒが、受信された状態情報に基づいて当該スケジュール情報配信者のプレゼンス情報を更新することを含む。
【００１３】
本発明の実施例に係るプレゼンス情報に基づいてスケジュール情報を更新する方法は、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒが、プレゼンス情報配信者から配信されたプレゼンス情報を受信した後、受信されたプレゼンス情報に基づいて、当該プレゼンス情報配信者のイベント情報を生成し、生成されたイベント情報をカレンダーサーバＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信し、前記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒが、受信されたイベント情報に基づいて当該プレゼンス情報配信者のスケジュール情報を更新することを含む。Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒが、受信されたプレゼンス情報に基づいて、当該プレゼンス情報配信者のイベント情報を生成する過程は、自動的に実行してもよく、プレゼンス情報配信者の指示を待ってもよい。当該プレゼンス情報配信者は、更新されたプレゼンス情報が短時間だけ維持すると思って、そのスケジュール情報の同期をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒに指示しない場合、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、イベント情報の生成およびＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへの配信をしない。このように、プレゼンス情報配信者が自分のプレゼンス情報を手動で変更した後、当該プレゼンス情報配信者が自分のスケジュール情報を手動で更新することなく、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、自動的にまたはプレゼンス情報配信者の指令により、プレゼンス情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信して、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒに当該プレゼンス情報配信者のスケジュール情報の更新を実現させることができる。
【発明の効果】
【００１４】
上記実施例に係るシステムおよび方法によれば、あるユーザのプレゼンス情報とスケジュール情報をサブスクライブした異なるユーザ群にとって、当該ユーザのプレゼンス情報とスケジュール情報とが一貫して一致することが確保できるだけでなく、ユーザの操作も大いに簡略化された。ユーザの時間が節約され、ユーザの効率が向上したとともに、ＰｒｅｓｅｎｃｅサービスとＣａｌｅｎｄａｒサービスを利用する際のユーザの体験も強化された。また、上記システムおよび方法によれば、ユーザが同じ内容の情報を２つのサーバにそれぞれ送信することなく、ネットワーク側、即ちＰｒｅｓｅｎｃｅ  ＳｅｒｖｅｒとＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒとの間で、プレゼンス情報とスケジュール情報との同期を実現するための情報を伝送することで、アクセスネットワーク側のリソースの占用が減少された。
【発明を実施するための最良の形態】
【００１５】
本発明の目的、解決手段をさらに明確にするように、以下、図面を参照して実施例を挙げながら、本発明についてさらに詳しく説明する。
【００１６】
従来技術の課題を解決するために、本発明の実施例は、プレゼンス情報とスケジュール情報との同期を実現するシステムを開示している。当該システムの内部構成は図１に示すように、主に、ユーザ側にあるユーザエージェント、並びに、ネットワーク側にあるプレゼンスサーバ（Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ）およびカレンダーサーバ（Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒ）を含む。
【００１７】
ここで、ユーザエージェントは移動端末に集積されてもよく、固定端末に集積されてもよい。ユーザエージェントが移動端末に集積される場合、ユーザエージェントが第３世代移動通信システムのような移動通信システムを介して、ネットワーク側にあるＰｒｅｓｅｎｃｅ  ＳｅｒｖｅｒおよびＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒに接続される。ユーザエージェントが固定端末に集積される場合、ユーザエージェントがＰＳＴＮまたはインターネットを介して、ネットワーク側にあるＰｒｅｓｅｎｃｅ  ＳｅｒｖｅｒおよびＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒに接続される。Ｐｒｅｓｅｎｃｅサービスおよび／またはＣａｌｅｎｄａｒサービスを実現するために、ユーザエージェントは、プレゼンス情報配信者とされる場合、プレゼンス情報クライアント側モジュールを含むようにしてよく、スケジュール情報配信者とされる場合、スケジュール情報クライアント側モジュールを含むようにしてよく、他のユーザのプレゼンス情報をサブスクライブしたサブスクライバとされる場合、プレゼンス情報サブスクライバクライアント側モジュールを含むようにしてよく、他のユーザのスケジュール情報をサブスクライブしたサブスクライバとされる場合、スケジュール情報サブスクライバクライアント側モジュールを含むようにしてよい。上記ユーザエージェントは、上記のプレゼンス情報配信者、スケジュール情報配信者、プレゼンス情報サブスクライバおよびスケジュール情報サブスクライバのいずれか２つまたは２つ以上の機能を併有してもよい。
【００１８】
ここで、プレゼンス情報クライアント側モジュールは、プレゼンス情報配信者と呼ばれてもよく、主に、自分のアクセスネットワークとコアネットワーク（例えば、移動通信システムまたはインターネット）を介して、当該プレゼンス情報配信者のプレゼンス情報をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信する。
【００１９】
スケジュール情報クライアント側モジュールは、スケジュール情報配信者と呼ばれてもよく、主に、自分のアクセスネットワークとコアネットワーク（例えば、移動通信システムまたはインターネット）を介して、当該スケジュール情報配信者のスケジュール情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信する。
【００２０】
プレゼンス情報サブスクライバクライアント側モジュールは、プレゼンス情報サブスクライバと呼ばれてもよく、主に、自分のアクセスネットワークとコアネットワーク（例えば、移動通信システムまたはインターネット）を介して、他のユーザのプレゼンス情報をサブスクライブする要求をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ送信し、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒからのサブスクライブされるユーザのプレゼンス情報を受信して表示する。
【００２１】
スケジュール情報サブスクライバクライアント側モジュールは、スケジュール情報サブスクライバと呼ばれてもよく、主に、自分のアクセスネットワークとコアネットワーク（例えば、移動通信システムまたはインターネット）を介して、他のユーザのスケジュール情報をサブスクライブする要求をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ送信し、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒからのサブスクライブされるユーザのスケジュール情報を受信して表示する。
【００２２】
Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、主に、プレゼンス情報配信者から配信されたプレゼンス情報を受信して記憶する機能と、プレゼンス情報サブスクライバからのプレゼンス情報をサブスクライブする要求を受信し、当該プレゼンス情報サブスクライバのサブスクライブ権限および記憶されているサブスクライブされるユーザのプレゼンス情報を問い合わせて、問い合わせ結果をプレゼンス情報サブスクライバへ返信する機能とを含む一般的な機能を実現する。具体的に、当該プレゼンス情報サブスクライバが、サブスクライブされるユーザのプレゼンス情報をサブスクライブする権限を有しない場合、プレゼンス情報のサブスクライブ失敗の情報を当該プレゼンス情報サブスクライバへ返信し、当該プレゼンス情報サブスクライバが、サブスクライブされるユーザのプレゼンス情報をサブスクライブする権限を有する場合、サブスクライブされるユーザから配信されたプレゼンス情報を当該プレゼンス情報サブスクライバへ返信する。実際に応用する際、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、受信されたプレゼンス情報を外付けプレゼンス情報データ管理サーバに記憶してもよい。
【００２３】
Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、主に、スケジュール情報配信者から配信されたスケジュール情報を受信して記憶する機能と、スケジュール情報サブスクライバからのスケジュール情報をサブスクライブする要求を受信し、当該スケジュール情報サブスクライバのサブスクライブ権限および記憶されているサブスクライブされるユーザのスケジュール情報を問い合わせて、問い合わせ結果をスケジュール情報サブスクライバへ返信する機能とを含む一般的な機能を実現する。具体的に、当該スケジュール情報サブスクライバが、サブスクライブされるユーザのスケジュール情報をサブスクライブする権限を有しない場合、スケジュール情報のサブスクライブ失敗の情報を当該スケジュール情報サブスクライバへ返信し、当該スケジュール情報サブスクライバが、サブスクライブされるユーザのスケジュール情報をサブスクライブする権限を有する場合、サブスクライブされるユーザから配信されたスケジュール情報を当該スケジュール情報サブスクライバへ返信する。実際に応用する際、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、受信されたスケジュール情報を外付けスケジュール情報データ管理サーバに記憶してもよい。
【００２４】
上記の一般的な機能以外に、Ｐｒｅｓｅｎｃｅ  ＳｅｒｖｅｒとＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、さらに、プレゼンス情報とスケジュール情報との同期を実現すべきである。つまり、スケジュール情報配信者が自分のスケジュール情報を配信した後、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、スケジュール情報配信者から配信されたスケジュール情報に基づいて当該スケジュール情報配信者の現在の状態情報を生成して、自動的にＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒに通知することにより、当該スケジュール情報配信者のプレゼンス情報をリアルタイムで更新することができる。一方、プレゼンス情報配信者がスケジュールを臨時に変更し、自分のプレゼンス情報を手動で変更して配信した後、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、自動的にまたは当該プレゼンス情報配信者の要求で、受信されたプレゼンス情報に基づいてイベント情報を生成してＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒに通知することにより、当該プレゼンス情報配信者のスケジュール情報を更新することができる。
【００２５】
上記システムはいかなるネットワークにも応用でき、例えば、ＩＰマルチメディアサブシステム（ＩＭＳ：ＩＰ  Ｍｕｌｔｉｍｅｄｉａ  Ｓｕｂｓｙｓｔｅｍ）ネットワークに応用できる。上記システムをＩＭＳネットワークに応用する場合、Ｐｒｅｓｅｎｃｅ  ＳｅｒｖｅｒとＣａｌｅｎｄａｒ  ＳｅｒｖｅｒをアプリケーションサーバとしてＩＭＳネットワークのアプリケーション層に配置してよい。ＩＭＳネットワークは、シグナリングの伝送、圧縮、ユーザ認証、認可、課金などの機能を提供することができる。ユーザがプレゼンスサービスとカレンダーサービスを使用するとき、本発明に係る情報同期メカニズムを利用することによって、アクセス側のシグナリングオーバーヘッドを軽減し、時間を節約し、効率を向上させ、ユーザ体験を大いに向上させる。
【００２６】
上記説明からわかるように、プレゼンス情報とスケジュール情報との同期は双方向の過程であり、スケジュール情報に基づいてプレゼンス情報を同期する過程と、プレゼンス情報に基づいてスケジュール情報を同期する過程との双方向の過程を含む。本発明の実施例に係るプレゼンス情報とスケジュール情報との同期を実現するシステムは、上記のいずれか一方向の情報同期のみを実現してもよく、上記双方向の情報同期を同時に実現してもよい。
【００２７】
上記プレゼンス情報とスケジュール情報との同期を実現するシステムのほかに、本発明の実施例は、上記機能を備えるＰｒｅｓｅｎｃｅ  ＳｅｒｖｅｒとＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒの構成も開示している。
【００２８】
図２に示すように、本発明の実施例に係るＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは主に、
プレゼンス情報配信者から配信されたプレゼンス情報を受信するプレゼンス情報受信モジュールと、
受信されたプレゼンス情報を記憶するプレゼンス情報記憶モジュールと、
前記プレゼンス情報記憶モジュールに記憶されているプレゼンス情報を、前記プレゼンス情報配信者のプレゼンス情報を既にサブスクライブしたプレゼンス情報サブスクライバへ配信するプレゼンス情報配信モジュールと、
受信されたプレゼンス情報に基づいて、当該プレゼンス情報配信者のイベント情報を生成するイベント情報生成モジュールと、
生成されたイベント情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信するイベント情報配信モジュールと、を含む。
【００２９】
さらに、実際に応用する際、上記イベント情報生成モジュールはさらにプレゼンス情報配信者からのスケジュール情報同期要求を受信し、前記スケジュール情報同期要求を受信してから、イベント情報の生成過程を実行する。
【００３０】
上記モジュールによれば、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、プレゼンス情報配信者から配信されたプレゼンス情報に基づいて、当該プレゼンス情報配信者のイベント情報を生成してＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信することで、プレゼンス情報に基づいてスケジュール情報を同期する過程を実現することができる。スケジュール情報に基づいてプレゼンス情報を同期する過程を実現するために、上記Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、
Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された前記プレゼンス情報配信者の状態情報を受信する状態情報受信モジュールと、
受信された状態情報に基づいてプレゼンス情報記憶モジュールに記憶されている前記プレゼンス情報配信者のプレゼンス情報を更新するプレゼンス情報更新モジュールと、をさらに含むようにしてもよい。
【００３１】
この場合に、プレゼンス情報配信モジュールは、さらに、更新されたプレゼンス情報を前記プレゼンス情報サブスクライバへ配信する。
【００３２】
図３に示すように、本発明の実施例に係るＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒは主に、
スケジュール情報配信者から配信されたスケジュール情報を受信するスケジュール情報受信モジュールと、
受信されたスケジュール情報を記憶するスケジュール情報記憶モジュールと、
前記スケジュール情報記憶モジュールに記憶されているスケジュール情報を、前記スケジュール情報配信者のスケジュール情報を既にサブスクライブしたスケジュール情報サブスクライバへ配信するスケジュール情報配信モジュールと、
受信されたスケジュール情報に含まれているイベントに基づいて、新たなイベントの開始時に、前記スケジュール情報配信者の状態情報を生成する状態情報生成モジュールと、
生成された状態情報をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信する状態情報配信モジュールと、を含む。
【００３３】
上記モジュールによれば、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、スケジュール情報配信者から配信されたスケジュール情報に基づいて、当該スケジュール情報配信者の状態情報を生成してＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信することで、スケジュール情報に基づいてプレゼンス情報を同期する過程を実現することができる。プレゼンス情報に基づいてスケジュール情報を更新する過程を実現するために、上記Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、
Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒから配信された前記スケジュール情報配信者のイベント情報を受信するイベント情報受信モジュールと、
受信されたイベント情報に基づいて、自身に記憶されている前記スケジュール情報配信者のスケジュール情報を更新するスケジュール情報更新モジュールと、をさらに含むようにしてもよい。
【００３４】
この場合に、スケジュール情報配信モジュールは、さらに、更新されたスケジュール情報を前記スケジュール情報サブスクライバへ配信する。
【００３５】
以下、本発明の実施例によって、プレゼンス情報とスケジュール情報との同期方法を詳しく説明する。
【００３６】
図４はスケジュール情報に基づいてプレゼンス情報を同期する過程を示す。この同期過程は主にスケジュール情報配信者、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒおよびプレゼンス情報サブスクライバのようなエンティティに関する。図４からわかるように、スケジュール情報に基づいてプレゼンス情報を同期する過程は主に以下のステップを含む。
【００３７】
ステップ４０１で、スケジュール情報配信者は自分のスケジュール情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信する。
【００３８】
ステップ４０２で、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、スケジュール情報を受信して記憶し、受信されたスケジュール情報に記録されている各イベントの開始時間に基づいて、新たなイベントの開始時に当該スケジュール情報配信者の状態情報を生成し、生成された状態情報をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信する。Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、受信された状態情報（即ち、スケジュール情報）に基づいて、当該スケジュール情報配信者のプレゼンス情報を更新する。
【００３９】
上記ステップ４０１〜４０２の実行中に、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された状態情報を受信するたびに、自身に記憶されている当該スケジュール情報配信者のプレゼンス情報を更新し、更新されたプレゼンス情報を、当該スケジュール情報配信者のプレゼンス情報を既にサブスクライブしたプレゼンス情報サブスクライバへ配信する。
【００４０】
本発明の好ましい実施例において、セッション開始プロトコル（ＳＩＰ）のイベント通知メカニズムを十分に利用して上記過程を実現するようにしてよい。図５は、ＳＩＰプロトコルを利用してスケジュール情報、プレゼンス情報および状態情報を搭載することにより、スケジュール情報に基づいてプレゼンス情報を同期することを実現する過程を示す。この過程は主に以下のステップを含む。
【００４１】
ステップ５１１で、スケジュール情報配信者は、ＳＩＰの配信（ＰＵＢＬＩＳＨ）メッセージを用いて、自分の配信しようとするスケジュール情報を搭載し、スケジュール情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信し、或いは、ＰＵＢＬＩＳＨメッセージを用いて、スケジュール情報を配信しようとする旨をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒに通知してから、ＨＴＴＰまたは他の方法を利用してスケジュール情報の具体的な内容をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信する。ここで、今回配信されるのがスケジュール情報であることを表すように、ＰＵＢＬＩＳＨメッセージ内のイベントのタイトルヘッダをＥｖｅｎｔ：Ｃａｌｅｎｄａｒに拡張してよい。ＩＭＳシステムにおいて、ＩＭＳシステムは、当該イベントのタイトルヘッダＥｖｅｎｔ：Ｃａｌｅｎｄａｒに基づいて、ＰＵＢＬＩＳＨメッセージをアプリケーションサーバＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへルーティングすることができる。
【００４２】
ステップ５１２で、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、スケジュール情報配信者からのＰＵＢＬＩＳＨメッセージを受信した後、２００  ＯＫメッセージを当該スケジュール情報配信者へ返信する。
【００４３】
ステップ５１３〜５１６で、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、受信されたスケジュール情報に記録されている各イベントの開始時間に基づいて、新たなイベントの開始時に当該スケジュール情報配信者の状態情報を生成し、ＳＩＰ  ＰＵＢＬＩＳＨメッセージを介して、生成された状態情報をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信する。Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された当該スケジュール情報配信者の状態情報を受信した後、２００  ＯＫメッセージをＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ返信し、自身に記憶されている当該スケジュール情報配信者のプレゼンス情報を更新し、その後、イベント通知メカニズムで、ＳＩＰの通知（ＮＯＴＩＦＹ）メッセージを介して、更新されたプレゼンス情報をプレゼンス情報サブスクライバへ配信する。プレゼンス情報サブスクライバは、Ｐｒｅｓｅｎｃｅ  ＳｅｒｖｅｒからのＮＯＴＩＦＹメッセージを受信した後、２００  ＯＫメッセージをＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ返信する（ステップ５２５〜５２６を参照）。
【００４４】
また、上記ステップ５１１〜５１６の過程と並行して、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒとプレゼンス情報サブスクライバとの間で、ＳＩＰによってプレゼンス情報のサブスクライブと通知を実現することができる。この過程は以下のステップを含む。
【００４５】
ステップ５２１で、プレゼンス情報サブスクライバは、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ上記スケジュール情報配信者のプレゼンス情報をサブスクライブする要求を、ＳＩＰのサブスクライブ（ＳＵＢＳＣＲＩＢＥ）メッセージで搭載する。
【００４６】
ステップ５２２で、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、上記ＳＵＢＳＣＲＩＢＥメッセージを受信して、当該プレゼンス情報サブスクライバが当該スケジュール情報配信者のプレゼンス情報をサブスクライブする権限を有することを確認した後、２００  ＯＫメッセージを前記プレゼンス情報サブスクライバへ返信する。
【００４７】
ステップ５２３で、Ｐｒｅｓｅｎｃｅ  ＳｅｒｖｅｒはＳＩＰのＮＯＴＩＦＹメッセージを介して、自身に記憶されている当該スケジュール情報配信者のプレゼンス情報をサブスクライバへ配信する。
【００４８】
ステップ５２４で、当該プレゼンス情報サブスクライバは、Ｐｒｅｓｅｎｃｅ  ＳｅｒｖｅｒからのＮＯＴＩＦＹメッセージを受信した後、２００  ＯＫメッセージをＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ返信する。
【００４９】
ステップ５２５で、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒから配信された当該スケジュール情報配信者の状態情報を受信した場合、自身に記憶されている当該スケジュール情報配信者のプレゼンス情報を更新した後（ステップ５１３〜５１６を参照）、イベント通知メカニズムで、ＳＩＰのＮＯＴＩＦＹメッセージを介して、更新されたプレゼンス情報をプレゼンス情報サブスクライバへ配信する。
【００５０】
ステップ５２６で、プレゼンス情報サブスクライバは、更新されたプレゼンス情報を受信した後、２００  ＯＫメッセージをＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ返信する。
【００５１】
ここからわかるように、上記スケジュール情報に基づいてプレゼンス情報を同期する過程は自動的な過程であり、ユーザがそのプレゼンス情報の設定を手動で変更することなく、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒによって実現される。
【００５２】
以下、ステップ４０２およびステップ５１３〜５１６で、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、受信されたスケジュール情報に記録されている各イベントの開始時間に基づいて、新たなイベントの開始時に当該スケジュール情報配信者の状態情報を生成する方法を詳しく説明する。本実施例において、前記状態情報は少なくとも状態の内容を含むべきであり、状態の開始時間と終了時間をさらに含むようにしてもよい。
【００５３】
本実施例において、プレゼンス情報をＲＰＩＤフォーマットで記録し、スケジュール情報をｉＣａｌｅｎｄａｒフォーマットで記録すると仮定する。
【００５４】
既知のように、ｉＣａｌｅｎｄａｒフォーマットで記録されるスケジュール情報内の１つのイベント（Ｅｖｅｎｔ）の構成は、以下の通りである。
【表１】
2009153126.tif 000003
上記構成からわかるように、上記ｉＣａｌｅｎｄａｒフォーマットのＥｖｅｎｔにおいて、ユーザ識別子（ＵＩＤ）、タイムスタンプ（ＤＴＳＴＡＭＰ）、イベントの開始時間（ＤＴＳＴＡＲＴ）と終了時間（ＤＴＥＮＤ）、１つのイベントの内容を記録したサマリー（ＳＵＭＭＡＲＹ）、クラス（ＣＬＡＳＳ）、分類（ＣＡＴＥＧＯＲＩＥＳ）、透明度（ＴＲＡＮＳＰ）などの内容を定義することができる。上記フォーマットのＥｖｅｎｔによって、スケジュール情報配信者は、自分のスケジュール情報に含まれている各イベントをＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信することができる。Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、当該スケジュール情報配信者が１つのＥｖｅｎｔの開始時間から終了時間まで当該ＥｖｅｎｔのＳＵＭＭＡＲＹに記録されている状態にあることを知ることができる。これにより、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、当該Ｅｖｅｎｔの開始時に少なくとも状態内容を含む状態情報を生成して、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信することができる。例えば、上記Ｅｖｅｎｔの構成によって、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、スケジュール情報配信者の１９９７年４月１日の１６：３０：００から１９９７年４月２日の０１：００：００までのスケジュールが「Ｌａｕｒｅｌ  ｉｓ  ｉｎ  ｓｅｎｓｉｔｉｖｉｔｙ  ａｗａｒｅｎｅｓｓ  ｃｌａｓｓ．」であることを知ることができる。これにより、１９９７年４月１日の１６：３０：００に、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、状態内容が「Ｌａｕｒｅｌ  ｉｓ  ｉｎ  ｓｅｎｓｉｔｉｖｉｔｙ  ａｗａｒｅｎｅｓｓ  ｃｌａｓｓ．」である状態情報を生成して、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信する。上記のように、生成された状態情報は当該状態の開始時間と終了時間をさらに含むようにしてもよい。
【００５５】
本実施例において、前記状態情報は、ＲＰＩＤフォーマットで記録されてもよく、他のフォーマットで記録されてもよい。上記状態情報が非標準のプレゼンス情報フォーマットで記録されている場合、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは状態情報を受信した後、自身に記憶されているプレゼンス情報を更新するために、当該状態情報を解析しておく必要がある。
【００５６】
以下、図６と図７を参照して、プレゼンス情報に基づいてスケジュール情報を同期する方法を詳しく説明する。
【００５７】
図６はプレゼンス情報に基づいてスケジュール情報を同期する過程を示す。この同期過程は主にプレゼンス情報配信者、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒ、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒおよびスケジュール情報サブスクライバのようなエンティティに関する。図６からわかるように、プレゼンス情報に基づいてスケジュール情報を同期する過程は主に以下のステップを含む。
【００５８】
ステップ６０１で、プレゼンス情報配信者は自分のプレゼンス情報をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信する。
【００５９】
ステップ６０２で、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、プレゼンス情報を受信して、自身に記憶されているプレゼンス情報を更新した後、プレゼンス情報に時間情報が含まれている場合、受信されたプレゼンス情報に記録されている動作の内容並びに当該動作の開始時間および終了時間に基づいて、イベント情報を生成し、生成されたイベント情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信することによって、そのＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒに記録されている当該プレゼンス情報配信者のスケジュール情報を更新するようにしてよい。
【００６０】
本ステップにおいて、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、プレゼンス情報を受信した後、プレゼンス情報配信者からのスケジュール情報同期要求に基づいて、上記スケジュール情報同期要求を受信してから、受信されたプレゼンス情報に基づいて前記イベント情報を生成し、生成されたイベント情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信するようにしてよい。
【００６１】
図７は、ＳＩＰプロトコルを利用してスケジュール情報とプレゼンス情報を搭載することにより、プレゼンス情報に基づいてスケジュール情報を同期することを実現する過程を示す。この過程は主に以下のステップを含む。
【００６２】
ステップ７１１で、プレゼンス情報配信者は、ＳＩＰのＰＵＢＬＩＳＨメッセージを用いて上記プレゼンス情報を搭載し、プレゼンス情報をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信する。
【００６３】
このとき、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒがプレゼンス情報配信者の指示により、当該プレゼンス情報配信者のスケジュール情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ更新するかどうかを決定する必要がある場合、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、受信されたＰＵＢＬＩＳＨメッセージに対して解析を行う。プレゼンス情報配信者がそのスケジュール情報の更新を要しないとき、今回配信されるのがプレゼンス情報でありスケジュール情報を更新する必要がないことを表すように、当該ＰＵＢＬＩＳＨメッセージ内のイベントのタイトルヘッダをＥｖｅｎｔ：Ｐｒｅｓｅｎｃｅと設定してよい。このとき、ステップ７１３〜７１４を実行する必要がない。プレゼンス情報配信者がそのスケジュール情報の同時更新を要するとき、当該ＰＵＢＬＩＳＨメッセージ内のイベントのタイトルヘッダをＥｖｅｎｔ：Ｐｒｅｓｅｎｃｅ−ｓｙｎｃ−ｃａｌｅｎｄａｒと設定してよい。Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、当該メッセージヘッダを解析すると、受信されたプレゼンス情報に基づいて前記イベント情報を生成し、生成されたイベント情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信し、即ちステップ７１３〜７１４を実行する。Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒが当該プレゼンス情報配信者のスケジュール情報を自動的に更新するように設定された場合、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、プレゼンス情報配信者からのＳＩＰのＰＵＢＬＩＳＨメッセージを受信した後、ステップ７１３〜７１４を実行する。
【００６４】
ステップ７１２で、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、プレゼンス情報配信者からのＰＵＢＬＩＳＨメッセージを受信した後、２００  ＯＫメッセージをプレゼンス情報配信者へ返信する。
【００６５】
ステップ７１３で、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒはプレゼンス情報配信者からのＰＵＢＬＩＳＨメッセージ内のイベントのタイトルヘッダがＥｖｅｎｔ：Ｐｒｅｓｅｎｃｅ−ｓｙｎｃ−ｃａｌｅｎｄａｒであることを解析した場合、または、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒが当該プレゼンス情報配信者のスケジュール情報を自動的に更新するように設定された場合、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、受信されたプレゼンス情報に基づいて、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒに記憶されている当該プレゼンス情報配信者のスケジュール情報を同期する。
【００６６】
具体的に、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、受信されたプレゼンス情報に記録されている動作の内容並びに当該動作の開始時間および終了時間に基づいて、１つのイベント情報を生成し、ＳＩＰのＰＵＢＬＩＳＨメッセージを介して、生成されたイベント情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信することによって、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒに記録されている当該プレゼンス情報配信者のスケジュール情報を更新する。
【００６７】
ステップ７１４で、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、受信されたイベント情報に基づいて、自身に記憶されている当該プレゼンス情報配信者のスケジュール情報を更新した後、２００  ＯＫメッセージをＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ返信する。
【００６８】
この後、スケジュール情報サブスクライバが当該プレゼンス情報配信者のスケジュール情報をサブスクライブし、且つこのサブスクライブが有効期間内にある場合、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、更新されたスケジュール情報を前記スケジュール情報サブスクライバへ配信する（ステップ７２３〜７２４を参照）。
【００６９】
また、上記ステップ７１１〜７１５の過程と並行して、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒとスケジュール情報サブスクライバとの間で、ＳＩＰによってスケジュール情報のサブスクライブを実現することができる。この過程は以下のステップを含む。
【００７０】
ステップ７２１で、スケジュール情報サブスクライバは、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ上記プレゼンス情報配信者のスケジュール情報をサブスクライブする要求を、ＳＩＰのサブスクライブ（ＳＵＢＳＣＲＩＢＥ）メッセージで搭載する。
【００７１】
ステップ７２２で、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、上記ＳＵＢＳＣＲＩＢＥメッセージを受信して、当該スケジュール情報サブスクライバが当該プレゼンス情報配信者のスケジュール情報をサブスクライブする権限を有することを確認した後、２００  ＯＫメッセージを前記スケジュール情報サブスクライバへ返信する。
【００７２】
ステップ７２３で、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒからのイベント情報を受信して、当該プレゼンス情報配信者のスケジュール情報を更新した後、ＳＩＰのＮＯＴＩＦＹメッセージを介して、当該プレゼンス情報配信者のスケジュール情報を当該スケジュール情報サブスクライバへ配信する。
【００７３】
ステップ７２４で、スケジュール情報サブスクライバは、Ｃａｌｅｎｄａｒ  ＳｅｒｖｅｒからのＮＯＴＩＦＹメッセージを受信した後、２００  ＯＫメッセージをＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ返信する。
【００７４】
以下、ステップ６０２およびステップ７１３で、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、受信されたプレゼンス情報に記録されている動作の内容並びに当該イベントの開始時間および終了時間に基づいて、スケジュール情報に含まれている１つのイベント情報を生成する方法を詳しく説明する。本実施例において、前記イベント情報は少なくともイベントの内容並びにその開始時間および終了時間を含む。
【００７５】
本実施例において、プレゼンス情報をＲＰＩＤフォーマットで記録し、スケジュール情報をｉＣａｌｅｎｄａｒフォーマットで記録すると仮定する。
【００７６】
既知のように、ＲＰＩＤフォーマットで記録されるプレゼンス情報の最小の集合ｔｕｐｌｅの構成例は、以下の通りである。
【表２】
2009153126.tif 000004
ここで、１つのｔｕｐｌｅで定義される要素には動作（ａｃｔｉｖｉｔｉｅｓ）が含まれ、開始時間と終了時間を含む時間属性が定義されるだけでなく、当該動作の内容も定義される。上記構成のｔｕｐｌｅによって、プレゼンス情報配信者は、自分の現在の動作並びに当該動作の開始時間および終了時間をＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信することができる。その後、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒも、プレゼンス情報配信者から配信されたプレゼンス情報から必要な情報を抽出して、当該プレゼンス情報配信者のスケジュール情報内の１つのイベント情報を生成することができる。例えば、上記ｔｕｐｌｅによって、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、プレゼンス情報配信者の１９９７年４月１日の１６：３０：００から１９９７年４月２日の０１：００：００までの動作が「Ｌａｕｒｅｌ  ｉｓ  ｉｎ  ｓｅｎｓｉｔｉｖｉｔｙ  ａｗａｒｅｎｅｓｓ  ｃｌａｓｓ．」であることを知ることができる。このように、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは、イベント内容が「Ｌａｕｒｅｌ  ｉｓ  ｉｎ  ｓｅｎｓｉｔｉｖｉｔｙ  ａｗａｒｅｎｅｓｓ  ｃｌａｓｓ．」、イベントの開始時間が１９９７年４月１日の１６：３０：００、イベントの終了時間が１９９７年４月２日の０１：００：００であるイベント情報を生成することができる。Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒは、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒから配信された上記イベント情報を受信した後、当該イベント情報に基づいて、自身に記録されているスケジュール情報を更新する。
【００７７】
本実施例において、前記イベント情報は、ｉＣａｌｅｎｄａｒフォーマットで記録されてもよく、他のいかなるフォーマットで記録されてもよい。上記イベント情報が非標準のスケジュール情報フォーマットで記録されている場合、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒはイベント情報を受信した後、自身に記憶されているスケジュール情報を更新するために、当該イベント情報を解析しておく必要がある。
【００７８】
上記実施例からわかるように、スケジュール情報配信者がスケジュール情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信した後、スケジュール情報配信者が自分のプレゼンス情報を手動でＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒへ配信することなく、Ｃａｌｅｎｄａｒ  Ｓｅｒｖｅｒはスケジュール情報に基づいて、当該スケジュール情報配信者の現在の状態を自動的にＰｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒに通知して、当該スケジュール情報配信者のプレゼンス情報の自動更新を実現することができる。一方、プレゼンス情報配信者が自分のプレゼンス情報を手動で変更した後、当該プレゼンス情報配信者が自分のスケジュール情報を手動でＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信することなく、Ｐｒｅｓｅｎｃｅ  Ｓｅｒｖｅｒは自動的にまたはプレゼンス情報配信者の指令により、プレゼンス情報をＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒへ配信して、当該プレゼンス情報配信者のスケジュール情報の更新を実現することができる。上記実施例に係るシステムおよび方法によれば、ユーザの操作が簡略化された。ネットワーク側の同期メカニズムを利用して、あるユーザのプレゼンス情報とスケジュール情報が、当該ユーザのプレゼンス情報とスケジュール情報をサブスクライブした異なるサブスクライバ群にとって、一貫して一致することを確保する。これにより、ユーザの時間が節約され、ユーザの効率が向上したとともに、ＰｒｅｓｅｎｃｅサービスとＣａｌｅｎｄａｒサービスを利用する際のユーザの体験も強化された。
【００７９】
また、上記システムおよび方法によれば、ユーザが同じ内容の情報を２つのサーバにそれぞれ送信することなく、ネットワーク側、即ちＰｒｅｓｅｎｃｅ  ＳｅｒｖｅｒとＣａｌｅｎｄａｒ  Ｓｅｒｖｅｒとの間で、プレゼンス情報とスケジュール情報との同期を実現するための情報を伝送することで、アクセスネットワーク側のリソースの占用が減少された。
【００８０】
上記は、本発明の好ましい実施例にすぎず、本発明の保護範囲を限定するものではない。本発明の精神と原則内で行われる種々の修正、均等置換え、改善などは全て本発明の保護範囲内に含まれるべきである。
【図面の簡単な説明】
【００８１】
【図１】本発明の実施例に係るプレゼンス情報とスケジュール情報との同期を実現するシステムの構成を示す図である。
【図２】本発明の実施例に係るプレゼンスサーバの内部構成を示す図である。
【図３】本発明の実施例に係るカレンダーサーバの内部構成を示す図である。
【図４】本発明の実施例に係るスケジュール情報に基づいてプレゼンス情報を同期する方法のフローチャートである。
【図５】本発明の実施例に係るセッション開始プロトコルによって、スケジュール情報に基づいてプレゼンス情報を同期することを実現する方法のフローチャートである。
【図６】本発明の実施例に係るプレゼンス情報に基づいてスケジュール情報を同期する方法のフローチャートである。
【図７】本発明の実施例に係るセッション開始プロトコルによって、プレゼンス情報に基づいてスケジュール情報を同期することを実現する方法のフローチャートである。
【図１】
2009153126.tif 000005
【図２】
2009153126.tif 000006
【図３】
2009153126.tif 000007
【図４】
2009153126.tif 000008
【図５】
2009153126.tif 000009
【図６】
2009153126.tif 000010
【図７】
2009153126.tif 000011