(57)【要約】【課題】  イントラネットなどの外部からの通信がファイアウォールに妨げられたインスタントメッセージング環境で、リアルタイム通信及び少ない通信トラフィックを実現する。【解決手段】  インスタントメッセージクライアント１１において、ＨＴＴＰポーリングのポーリング間隔を変更可能なメッセージ通信部２７と、インスタントメッセージサーバ１２に頻繁にアクセスすべきスケジュールを示すスケジュール情報に基づいてＨＴＴＰポーリングの時間間隔を指定する通信制御部２６を設け、通信制御部２６は、スケジュール情報に示されたスケジュールの到来前は、長い間隔のポーリング間隔でインスタントメッセージサーバ１２に対するポーリングを行うようメッセージ通信部２７に指示し、スケジュールが到来したときは、短い間隔のポーリング間隔でポーリングを行うようメッセージ通信部２７に指示する。【選択図】        図２
2006319707.tif 000002
【特許請求の範囲】
【請求項１】
第１のポーリング間隔、第１のポーリング間隔と異なる間隔の第２のポーリング間隔のいずれによってもポーリングの実行が可能なポーリング実行部と、
第１のポーリング間隔と第２のポーリング間隔との間の切り替えを行うための切替基準を記憶する切替基準記憶部と、
切替基準が満たされているか否かを判断し、切替基準が満たされている場合に、第１のポーリング間隔と第２のポーリング間隔との間の切り替えを前記ポーリング実行部に対して指示するポーリング間隔指示部とを有することを特徴とする通信装置。
【請求項２】
前記ポーリング実行部は、
第２のポーリング間隔として、第１のポーリング間隔よりも短い間隔でのポーリングの実行が可能であり、
前記切替基準記憶部は、
第１のポーリング間隔から第２のポーリング間隔への切り替えを行うための切替基準を記憶し、
前記ポーリング間隔指示部は、
通常は前記ポーリング実行部に対して第１のポーリング間隔でのポーリングを指示するとともに、切替基準が満たされている間のみ、前記ポーリング実行部に対して第２のポーリング間隔でのポーリングを指示することを特徴とする請求項１に記載の通信装置。
【請求項３】
前記切替基準記憶部は、
第２のポーリング間隔でのポーリングを実行すべき第２ポーリング間隔実行スケジュールが示された切替基準を記憶しており、
前記ポーリング間隔指示部は、
第２ポーリング間隔実行スケジュールが到来したか否かを判断し、第２ポーリング間隔実行スケジュールの到来前は、前記ポーリング実行部に対して第１のポーリング間隔でのポーリングを指示し、第２ポーリング間隔実行スケジュールの到来後は、前記ポーリング実行部に対して第２のポーリング間隔でのポーリングを指示することを特徴とする請求項２に記載の通信装置。
【請求項４】
前記通信装置は、
ポーリングを行うことにより、ポーリング先であるポーリング先装置に蓄積された自装置宛ての通信メッセージを前記ポーリング先装置から受信する通信装置であり、
前記切替基準記憶部は、
前記ポーリング先装置において自装置宛ての通信メッセージが蓄積されていると予測されるスケジュールを第２ポーリング間隔実行スケジュールとして示す切替基準を記憶していることを特徴とする請求項３に記載の通信装置。
【請求項５】
前記通信装置は、
ポーリング先から、切替基準を受信することを特徴とする請求項１に記載の通信装置。
【請求項６】
前記通信装置は、
切替基準の取得が必要なタイミングごとにポーリング先に切替基準の送信要求を送信することなく、ポーリング先以外の外部装置から、切替基準を受信することを特徴とする請求項１に記載の通信装置。
【請求項７】
前記通信装置は、
インスタントメッセージサーバ装置をポーリング先とするインスタントメッセージクライアント装置であり、
前記インスタントメッセージサーバ装置からプレゼンス情報を受信する際に、切替基準を含むプレゼンス情報を受信することを特徴とする請求項１に記載の通信装置。
【請求項８】
前記切替基準記憶部は、
所定の監視対象イベントが特定のステータスになった場合に第２のポーリング間隔でのポーリングを実行するよう示す切替基準を記憶しており
前記通信装置は、更に、
前記監視対象イベントのステータスを通知するステータス情報を受信するステータス情報受信部を有し、
前記ポーリング間隔指示部は、
ステータス情報に示された前記監視対象イベントのステータスが切替基準に示された前記特定のステータスに合致するか否かを判断し、両者が合致しない場合は、前記ポーリング実行部に対して第１のポーリング間隔でのポーリングを指示し、両者が合致する場合は、前記ポーリング実行部に対して第２のポーリング間隔でのポーリングを指示することを特徴とする請求項２に記載の通信装置。
【請求項９】
第１のポーリング間隔、第１のポーリング間隔と異なる間隔の第２のポーリング間隔のいずれによってもポーリングの実行が可能なポーリング実行ステップと、
第１のポーリング間隔と第２のポーリング間隔との間の切り替えを行うための切替基準が満たされているか否かを判断し、切替基準が満たされている場合に、第１のポーリング間隔と第２のポーリング間隔との間の切り替えを前記ポーリング実行ステップに対して指示するポーリング間隔指示ステップとを有することを特徴とするポーリング方法。
【請求項１０】
第１のポーリング間隔、第１のポーリング間隔と異なる間隔の第２のポーリング間隔のいずれによってもポーリングの実行が可能なポーリング実行処理と、
第１のポーリング間隔と第２のポーリング間隔との間の切り替えを行うための切替基準が満たされているか否かを判断し、切替基準が満たされている場合に、第１のポーリング間隔と第２のポーリング間隔との間の切り替えを前記ポーリング実行処理に対して指示するポーリング間隔指示処理とををコンピュータに実行させることを特徴とするプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、ポーリングを行う際のポーリング間隔を制御する技術に関し、特にポーリングを行った後にインスタントメッセージの送受信を行うメッセージ通信において、サーバ−クライアント間のポーリング間隔の制御を行う技術に関するものである。
【背景技術】
【０００２】
一般的な企業内でのインスタントメッセージ利用の場合、インスタントメッセージサーバはインターネット上に存在し自由にアクセス可能であるが、インスタントメッセージクライアントはイントラネット内のローカルネットワーク上に存在し、ファイアウォールに阻まれて自由に通信することができないことがほとんどである。そして、ファイアウォールは、ローカルネットワークの中から外へのＨＴＴＰ接続は許可するが、外から中の接続は許可しないことがほとんどである。
【０００３】
インターネット上において、ファイアウォールを通過しないで直接通信できる場合は直接ＴＣＰプロトコルを利用して接続を行うが、ファイアウォールを隔てた場合定期的にファイアウォール内の端末からインターネット上のサーバに対してＨＴＴＰのポーリングを行う必要がある（例えば、特許文献１）。
【特許文献１】特開２００３−３１９０６７号公報（第５８頁、第３１図）
【発明の開示】
【発明が解決しようとする課題】
【０００４】
従来のファイアウォールを越えたインスタントメッセージング通信では、ファイアウォールに阻まれたローカルネットワーク上のインスタントメッセージクライアントが、インターネット上のインスタントメッセージサーバを通じてリアルタイムな通信を実現するためには、短い周期でＨＴＴＰポーリングを実施する必要がある。
【０００５】
通常、多数のインスタントメッセージクライアントが存在するため、すべてのインスタントメッセージクライアントが短い周期でＨＴＴＰポーリングを行うと、インスタントメッセージサーバ側の通信の負荷が大きくなる。このため、すべてのインスタントメッセージクライアントのＨＴＴＰポーリングの間隔を数秒単位にすることができず、数分単位とかなり大きな時間間隔が必要である。この結果、インスタントメッセージの送信先におけるインスタントメッセージの送信タイミングとインスタントメッセージの受信先におけるインスタントメッセージの受信タイミングにタイムラグが発生し、リアルタイムな通信を実現できないという問題点があった。
【０００６】
この発明は上記のような問題点を解決することを主な目的としており、ポーリングの間隔を可変とし、通常は比較的間隔の長いポーリングを実施するとともに、頻繁なポーリングが必要と予測される際にポーリングの間隔を短くすることで、ポーリング先のサーバにおける負荷を軽減することを可能とし、リアルタイムな通信を可能とすることを目的とする。
【課題を解決するための手段】
【０００７】
本発明に係る通信装置は、
第１のポーリング間隔、第１のポーリング間隔と異なる間隔の第２のポーリング間隔のいずれによってもポーリングの実行が可能なポーリング実行部と、
第１のポーリング間隔と第２のポーリング間隔との間の切り替えを行うための切替基準を記憶する切替基準記憶部と、
切替基準が満たされているか否かを判断し、切替基準が満たされている場合に、第１のポーリング間隔と第２のポーリング間隔との間の切り替えを前記ポーリング実行部に対して指示するポーリング間隔指示部とを有することを特徴とする。
【発明の効果】
【０００８】
本発明によれば、通常時は、長い間隔のポーリング間隔でポーリングを行うとともに、切替基準が満たされている場合に、短い間隔のポーリング間隔に切り替えることが可能となり、この結果、ポーリング先における負荷を軽減することができ、また、短いポーリング間隔でポーリングを実施することが可能であるため、リアルタイムな通信が可能となる。
【発明を実施するための最良の形態】
【０００９】
実施の形態１．
図１は、本実施の形態において対象とするネットワーク構成の概念図である。
【００１０】
図２は、本実施の形態において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、及び予約システムの構成例を示す図である。
【００１１】
図３は、本実施の形態において対象とするインスタントメッセージサーバの動作例を示すフローチャートである。
【００１２】
図４は、本実施の形態において対象とするインスタントメッセージクライアントの動作例を示すフローチャートである。
【００１３】
図１において、１１は、インスタントメッセージを利用するユーザのクライアントであるインスタントメッセージクライアントａである。インスタントメッセージクライアントａ１１は、通信装置の例である。１２は、インスタントメッセージクライアント間の通信を管理するインスタントメッセージサーバである。インスタントメッセージサーバ１２は、ポーリング先装置の例である。１３は、これらのサーバ−クライアント間を接続するインターネットである。１４は、インスタントメッセージクライアントａ１１が接続されているローカルネットワークである。１５は、ローカルネットワーク１４内からインターネット１３に接続する場合に通過する必要のあるファイアウォールである。１６は、通信先のインスタントメッセージクライアントｂである。
【００１４】
図２において、インスタントメッセージサーバ１２は、コンテキスト通知部２１とメッセージ中継部２８から構成される。
【００１５】
コンテキスト通知部２１は、コンテキスト情報をクライアントに通知する。なお、本実施の形態では、コンテキスト情報とは、予約システム２２のスケジュール情報格納部２３に格納されているスケジュール情報である。メッセージ中継部２８は、インスタントメッセージクライアントａ１１とインスタントメッセージやその他のメッセージのメッセージ通信を行う。
【００１６】
インスタントメッセージクライアントａ１１は、コンテキスト取得部２４、スケジュール情報記憶部２５、通信制御部２６、メッセージ通信部２７から構成される。
【００１７】
メッセージ通信部２７は、インスタントメッセージサーバ１２に対するポーリングを実施する。また、インスタントメッセージサーバ１２から、インスタントメッセージを受信する。メッセージ通信部２７は、間隔の長いポーリング間隔（第１のポーリング間隔）と間隔の短いポーリング間隔（第２のポーリング間隔）のいずれによってもポーリングを実行することができる。メッセージ通信部２７は、通常は、間隔の長いポーリング間隔でポーリングを実施し、特定の場合に、間隔の短いポーリング間隔でポーリングを実施する。メッセージ通信部２７は、ポーリング実行部の例である。
【００１８】
コンテキスト取得部２４は、インスタントメッセージサーバ１２からスケジュール情報（コンテキスト情報）を取得する。なお、スケジュール情報は、インスタントメッセージクライアントａ１１宛てのインスタントメッセージが多くなると予測されるスケジュールが記述されている。スケジュール情報は、メッセージ通信部２７が、長い間隔のポーリング間隔（第１のポーリング間隔）から短い間隔のポーリング間隔（第２のポーリング間隔）に切り替えるためのスケジュールを示すものであり、切替基準の例である。
【００１９】
スケジュール情報記憶部２５は、コンテキスト取得部２４が、インスタントメッセージサーバ１２から取得したスケジュール情報を記憶する。スケジュール情報記憶部２５は、切替基準記憶部の例である。
【００２０】
通信制御部２６は、スケジュール情報記憶部２５に記憶されているスケジュール情報に示されたスケジュールが到来しているか否かを判断し、当該スケジュールの到来前は、間隔の長いポーリング間隔（第１のポーリング間隔）でポーリングを実行するようメッセージ通信部２７に指示し、当該スケジュールの到来後は、間隔の短いポーリング間隔（第２のポーリング間隔）でポーリングを実行するようメッセージ通信部２７に指示する。通信制御部２６は、ポーリング間隔指示部の例である。
【００２１】
予約システム２２は、インスタントメッセージサーバ１２と連携した外部の予約システムである。スケジュール格納部２３は、スケジュール情報を格納する。
【００２２】
次に、対象とするネットワーク環境について説明する。図１のようにインスタントメッセージクライアントａ１１は、ローカルネットワーク１４内に存在し、インターネット１３とはファイアウォール１５を隔てて隔離された状態となっている。インスタントメッセージサーバ１２はインターネット１３に直接接続可能で、インターネット１３を通じて様々な端末から自由にアクセス可能な状況である。このようなネットワーク環境が、企業内でのインスタントメッセージの通常利用形態である。例えば、ローカルネットワーク１４に所属したインスタントメッセージａ１１と、インターネット１３に直接接続されたインスタントメッセージクライアントｂ１６間でメッセージ交換を実施する場合、インスタントメッセージサーバ１２を中継する必要がある。インスタントメッセージクライアントａ１１からインスタントメッセージクライアントｂ１６に対してメッセージ送信する場合は、インスタントメッセージクライアントａ１１からインスタントメッセージサーバ１２にメッセージが通知されると、インスタントメッセージサーバ１２からインスタントメッセージクライアントｂ１６へメッセージを中継することが可能である。しかし、インスタントメッセージクライアントｂ１６からインスタントメッセージａ１１に対してメッセージを送信する場合、インスタントメッセージクライアントｂ１６から送信されたメッセージがインスタントメッセージサーバ１２に通知されても、サーバ−クライアント間にファイアウォール１５があるため、インスタントメッセージサーバ１２からインスタントメッセージクライアントａ１１に対して直ちにメッセージを通知することができない。インスタントメッセージクライアントａ１１がインスタントメッセージサーバ１２に対して、ファイアウォール１５を透過する、ＨＴＴＰプロトコルを使用してポーリングを定期的に実施する必要がある。
【００２３】
図２において、インスタントメッセージクライアントａ１１とインスタントメッセージサーバ１２との間のメッセージ交換は、メッセージ通信部２７とメッセージ中継部２８との間で実施されている。メッセージ通信部２７はメッセージ中継部２８に対して、一定時間間隔（例えば１分）でＨＴＴＰプロトコルを使用し、ポーリングを行う。
【００２４】
本実施の形態では、クライアント間のメッセージ通信が、インスタントメッセージを利用した会議などに用いられ、この会議のスケジュールが予約システム２２により管理され、会議のスケジュールがスケジュール情報に示されている場合を想定する。この場合に、スケジュール情報に示されているスケジュール（時間帯）は、インスタントメッセージクライアントａ１１宛てのインスタントメッセージが増加すると予測される時間帯であり、このため、インスタントメッセージサーバ１２にインスタントメッセージクライアントａ１１宛てのインスタントメッセージが多数蓄積されると予測される時間帯である。このため、インスタントメッセージサーバ１２のコンテキスト通知部２１により、予約システム２２のスケジュール情報をインスタントメッセージクライアントａ１１のコンテキスト取得部２４に通知することにより、インスタントメッセージクライアントａ１１では、当該会議が実施される時間帯のポーリング間隔を短くすることができ、リアルタイム通信を効果的に行うことができる。
【００２５】
コンテキスト通知部２１は、図３に示すように、インスタントメッセージクライアントａ１１のコンテキスト取得部２４から接続されクライアントの識別情報を受信する（Ｓ３１）と、予約システム２２に対してインスタントメッセージクライアントａ１１のスケジュール情報があるかどうかを問い合わせる（Ｓ３２）。もしスケジュールがある場合は対応するクライアントのスケジュール情報を取得し、そのスケジュール情報をコンテキスト取得部２４に通知する（Ｓ３３）。また、もし対応するスケジュールがない場合でも、コンテキスト取得部２４に対して、スケジュールがない旨を通知する（Ｓ３４）。
【００２６】
コンテキスト取得部２４はコンテキスト通知部２１に対して定期的に接続し、スケジュール情報の取得を試行する。もし、スケジュール情報が取得できた場合は、スケジュール情報記憶部２５にスケジュールを格納する。
【００２７】
通信制御部２６は、図４のように、スケジュール情報を監視し、現在時刻がスケジュールに予定された時間に該当するかどうかをチェックする（Ｓ４１）（ポーリング間隔指示ステップ）。もし該当する場合は、現在短いポーリング間隔にてポーリングを実行中か否かを判断し（Ｓ４２）（ポーリング間隔指示ステップ）、（すでにスケジュールが到来しているため）短いポーリング間隔にてポーリングを実行中の場合は、Ｓ４１に戻り、そのまま短いポーリング間隔でのポーリングを継続し、（スケジュールの到来直後のため）長いポーリング間隔にてポーリングを実行中の場合は、通信制御部２６は、メッセージ通信部２７に対して短いポーリング間隔でポーリングを実行するよう指示する（Ｓ４３）（ポーリング間隔指示ステップ）。そして、メッセージ通信部２７は、短いポーリング間隔（例えば１秒）でポーリングを実行する（Ｓ４４）（ポーリング実行ステップ）。
【００２８】
一方で、Ｓ４１において、現在時刻がスケジュールに該当しない場合は、通信制御部２６は、現在短いポーリング間隔にてポーリングを実行中か否かを判断し（Ｓ４５）（ポーリング間隔指示ステップ）、長いポーリング間隔にてポーリングを実行中の場合は、Ｓ４１に戻りそのまま長いポーリング間隔でもポーリングを継続し、（スケジュールの終了直後のため）短いポーリング間隔にてポーリングを実行中の場合は、通信制御部２６は、メッセージ通信部２７に対して長いポーリング間隔でポーリングを実行するよう指示する（Ｓ４６）（ポーリング間隔指示ステップ）。そして、メッセージ通信部２７は、長いポーリング間隔（例えば１分）でポーリングを実行する（Ｓ４７）（ポーリング実行ステップ）。
【００２９】
このようにして、スケジュールに該当する時間のみＨＴＴＰポーリングを短い時間間隔で実施する。
【００３０】
このように、本実施の形態では、インスタントメッセージクライアントがインスタントメッセージサーバに対してＨＴＴＰポーリングする間隔を、インスタントメッセージサーバから伝えられるスケジュール情報によって変化できるようにし、インスタントメッセージサーバは予約システムなどと連携し、インスタントメッセージクライアントに「頻繁にアクセスすべき時刻のスケジュール情報」を伝え、インスタントメッセージクライアントはそのスケジュール情報に従ってＨＴＴＰポーリング間隔を変動させることにより、必要なときにリアルタイムな通信が可能となり、通信トラフィックも少なくすることが可能となる。
【００３１】
本実施の形態では、インスタントメッセージクライアントから必要と思われる時のみサーバに対して通信を実施しているので、短い時間間隔でサーバに対してポーリングを実施しても、全体として少ない通信トラフィックでメッセージ通信を実現することができる。つまり、短い時間間隔でのポーリングが必要なタイミングは個々のインスタントメッセージクライアントで異なるので、それぞれのインスタントメッセージクライアントが必要なタイミングでのみ短い間隔でポーリングを行い、通常時は長い間隔でポーリングを行うことにより、全体としてインスタントメッセージからのポーリングが分散することになる。そして、短い時間間隔でサーバにポーリングを実施することが可能であるため、ファイアウォール内に設置されたインスタントメッセージクライアントでも、その他のインスタントメッセージクライアントに対して、限りなくリアルタイムに近いメッセージ通信が可能となる。
【００３２】
なお、今回の図１では、予約システムのスケジュール情報と連動したが、例えば、複数人での会議をインスタントメッセージで実現しようとする場合、予めクライアントにスケジュールを教えておくことで、効率的なメッセージ通信が可能となる。
【００３３】
尚、予約システムのスケジュール情報だけではなく、その他の例えば、個人のスケジュール管理システム、個人のメール送受信時間情報等のあらゆる時間に関係する情報を取得し、クライアントに通知しても良い。
【００３４】
実施の形態２．
以上の実施の形態１では、通信タイミングを制御する情報としてスケジュール情報を利用したものであるが、次に個人の位置や状態のように時と場所により変化するイベントを監視対象とし、監視対象のイベントが特定のステータスになった場合に、ポーリング間隔を切り替える実施の形態を示す。
【００３５】
図５は、本実施の形態が対象とするインスタントメッセージクライアントとインスタントメッセージサーバの構成例を示す図である。
【００３６】
図６は、本実施の形態において対象とするインスタントメッセージサーバの動作例を示すフローチャートである。
【００３７】
図７は、本実施の形態において対象とするインスタントメッセージクライアントの動作例を示すフローチャートである。
【００３８】
図５では、図２におけるインスタントメッセージサーバ１２と接続していた予約システム２２の代わりにコンテキスト情報格納部５１が接続され、インスタントメッセージクライアントａ１１においてスケジュール情報を蓄積するスケジュール情報記憶部２５の代わりにコンテキスト情報記憶部５２が、そして通信制御部２６にコンテキスト設定条件記憶部５３が接続されている。更に、コンテキスト条件を設定するコンテキスト条件設定部５４が配置されている。
【００３９】
本実施の形態では、コンテキスト情報は、監視対象イベントのステータスを通知するステータス情報である。例えば、後述するように、周期的にある人物の位置を示すステータス情報である。インスタントメッセージサーバ１２のコンテキスト通知部２１からコンテキスト情報を受信するコンテキスト取得部２４は、ステータス情報受信部の例である。
【００４０】
そして、コンテキスト設定条件記憶部５３に記憶されているコンテキスト設定条件は、コンテキスト条件設定部５４により設定された条件であり、長い間隔のポーリング間隔（第１のポーリング間隔）から短い間隔のポーリング間隔（第２のポーリング間隔）に切り替えるための基準である。コンテキスト設定条件は、監視対象イベントが特定のステータスになった場合に短い間隔のポーリング間隔を実行するように指定している。例えば、ある人物が特定の位置に移動した場合に、短い間隔のポーリング間隔を実行するように指定する。コンテキスト設定条件は、切替基準の例である。
【００４１】
次に動作について説明する。
【００４２】
コンテキスト通知部２１は、図６のように、まずコンテキスト取得部からの要求を受け付ける（Ｓ３１）と、コンテキスト情報格納部５１の中に該当するインスタントメッセージクライアントに通知すべきコンテキスト情報があるかどうかを判断する（Ｓ６１）。もし、ある場合は、インスタントメッセージクライアントのコンテキスト情報を取得し、インスタントメッセージクライアントに通知する（Ｓ６３）。もしない場合は、インスタントメッセージクライアントにはコンテキスト情報がない旨を通知する（Ｓ６２）。
【００４３】
メッセージ通信制御部２６は、図７のように、コンテキスト情報にコンテキスト設定条件に適合するものが存在するかを判断し（Ｓ７１）、図４と同様に、もしあれば短いポーリング間隔でサーバに接続を行い（Ｓ４２〜Ｓ４４）、もしなければ長いポーリング時間間隔でサーバに接続を行う（Ｓ４５〜Ｓ４７）。
【００４４】
コンテキスト設定条件は、コンテキスト条件設定部５４を用いて予めインスタントメッセージクライアントでユーザが入力するものとするが、コンテキスト取得部を使用して、サーバから取得したり、その他の通信手段によって他のシステムから入手しても良い。
【００４５】
コンテキスト設定条件は、例えば位置情報でいうと、ある人物が位置１から位置２に移動した場合はクライアント１とクライアント２間で通信が発生するというように記載しておく。コンテキスト情報において該当する人物の位置情報の履歴を含めて参照し、位置１から位置２に対して移動していると判断されるとメッセージ交換が開始されるものと判断し、短いポーリング間隔で通信を行う。
【００４６】
今回の図５では、サーバが管理するコンテキスト情報と連動し、コンテキスト情報を参考に通信が開始されるかどうかを判断したが、これにより実施の形態１のスケジュールのような時間のみが条件となるのではなく、例えば位置情報やユーザのこれまでの進路に関連したインスタントメッセージ通信に対応し、効率的なメッセージ通信を実現することが可能となる。
【００４７】
実施の形態３．
以上の実施の形態１では、インスタントメッセージクライアントから直接インスタントメッセージサーバに対して接続して予約システムのスケジュール情報を取得していたが、次にメールやインスタントメッセージなどの他の外部通信手段を使用してスケジュール情報をクライアントに通知する実施の形態を示す。
【００４８】
図８は、本実施の形態において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、予約システム、外部通信手段の構成例を示す図である。
【００４９】
図９は、本実施の形態において対象とする予約システムの動作例を示すフローチャートである。
【００５０】
図８において、８１はメール、インスタントメッセージ等の送信を行う外部通信手段、８２はコンテキスト情報を通知するコンテキスト通知部である。外部通信手段８１は、外部装置の例である。
【００５１】
次に動作について説明する。
【００５２】
インスタントメッセージクライアントａ１１のコンテキスト取得部２４がコンテキスト通知部２１に対して事前に何らかの通信手段（例えば、直接のネットワーク接続、メール等）を用いて、予めスケジュール情報を通知するよう指示しておく。予約システム２２のコンテキスト通知部８２は、図９のようにインスタントメッセージクライアントからスケジュールを通知するよう指示があったかを確認し（Ｓ９１）、もしなければ一定時間待機し（Ｓ９２）、再度確認する。もしあれば、予約システム２２に対応するクライアントのスケジュール情報があるかどうかを確認する（Ｓ３２）。もしスケジュールがあれば、クライアントにスケジュール情報を、外部通信手段８１を使用して通知する（Ｓ３３）。もしなければスケジュールがない旨を通知する（Ｓ３４）。
【００５３】
尚、今回スケジュールを通知するような指示をコンテキスト取得部２４から行ったが、サーバ上で設定したり、その他の通信手段を使用して、ユーザが通知してもよい。
【００５４】
このように、本実施の形態によれば、クライアントのスケジュールを取得するタイミングを実施の形態１のようにクライアントから通知されたタイミングではなく、事前に通知された情報を元に確認することにより、インスタントメッセージクライアントから定期的にインスタントメセージサーバに要求を出す必要がなく通信トラフィックを抑えることができる。また、外部通信手段８１を使用したことにより、クライアントとサーバ間で直接通信することなく、その他の通信手段を利用してスケジュールの通知を実施することができる。
【００５５】
実施の形態４．
以上の実施の形態１では、インスタントメッセージサーバに独自の部位を追加し、予約システムのスケジュール情報をインスタントメッセージクライアントに通知していたが、次に、予約システムのスケジュール情報をプレゼンス情報として通知するようにし、インスタントメッセージサーバに修正を加えなくてもインスタントメッセージクライアントに対してスケジュールが通知できる実施の形態を示す。
【００５６】
図１０は、本実施の形態において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、予約システムの構成例を示す図である。
【００５７】
図１１は、本実施の形態において対象とするインスタントメッセージクライアントの動作例を示すフローチャートである。
【００５８】
図１０において、１０１はクライアントからの要求に応じて購読されたプレゼンス情報を通知するプレゼンス通知部、１０２は様々なクライアントに関するプレゼンス情報を蓄積するプレゼンス情報格納部、１０３は購読を要求されたクライアントのスケジュール情報を取得するプレゼンス取得部である。プレゼンス通知部１０１及びプレゼンス情報格納部１０２は、通常、インスタントメッセージサーバに備わっている機能である。１０４はインスタントメッセージサーバに接続し、インスタントメッセージサーバからの要求があると予約システム２２のスケジュール情報格納部２３に格納されているスケジュール情報をプレゼンス情報として通知するプレゼンス通知部、１０５はプレゼンス情報を購読するプレゼンス購読部、１０６は購読したプレゼンス情報を蓄積するプレゼンス情報記憶部である。
【００５９】
次に動作について説明する。
【００６０】
まず、一般的なプレゼンス情報の購読の基本的な動作を説明する。
【００６１】
インスタントメッセージサーバ１２のプレゼンス取得部１０３はクライアントのプレゼンス情報を通知され、そのプレゼンス情報をプレゼンス情報格納部１０２に格納する。インスタントメッセージクライアントａ１１のプレゼンス購読部１０５は、インスタントメッセージサーバ１２のプレゼンス通知部１０１に対して、購読したいクライアントのプレゼンス情報を通知する。プレゼンス通知部１０１はプレゼンス情報格納部１０２の中から必要なプレゼンス情報を取得し、インスタントメッセージクライアントに通知する。インスタントメッセージクライアントのプレゼンス購読部１０５ではプレゼンス情報をプレゼンス情報記憶部１０６に格納する。これがインスタントメッセージにおけるプレゼンス通知・購読の基本的な動作である。
【００６２】
本実施の形態では、予約システム２２のプレゼンス通知部１０４において、スケジュール情報２をプレゼンス情報としてインスタントメッセージサーバ１２のプレゼンス取得部１０３に通知する。これにより、プレゼンス取得部１０３により、プレゼンス情報格納部１０２にスケジュール情報がプレゼンス情報として格納される。インスタントメッセージクライアントａ１１では、プレゼンス購読部１０５が、予約システムのプレゼンス情報を購読するようプレゼンス通知部１０１に通知し、プレゼンス通知部１０１により予約システムのプレゼンス情報を取得し（Ｓ１１１）、取得したプレゼンス情報にスケジュール情報が含まれているか否かを判断し（Ｓ１１２）、プレゼンス情報にスケジュール情報が含まれている場合に、プレゼンス情報からスケジュール情報を取り出し、スケジュール情報記憶部２５に格納する。プレゼンス情報にスケジュール情報が含まれていない場合は、当該プレゼンス情報をプレゼンス情報記憶部１０６に格納し、プレゼンス情報の更新を行う（Ｓ１１４）。通常のプレゼンス情報はプレゼンス情報記憶部１０６に格納し、スケジュール情報はスケジュール情報記憶部２５に格納する。
【００６３】
メッセージ通信制御部は実施の形態１と同様にスケジュール情報を監視し、そのスケジュールに従いインスタントメッセージサーバ１２のメッセージ中継部２８へのＨＴＴＰプロトコルによるポーリング時間間隔を調整する。
【００６４】
今回、予約システムにスケジュール情報をプレゼンス情報として通知するプレゼンス通知部を設け、プレゼンス情報としてスケジュール情報をクライアントに伝えることにより、スケジュール情報を伝えるためにインスタントメッセージングサーバに追加機能を実装することなく、スケジュール情報に応じた通信トラフィック制御を実施することができる。
【００６５】
尚、今回サーバから取得したスケジュール情報をスケジュール情報記憶部２５に格納したが、プレゼント情報をそのままプレゼンス情報記憶部１０６に格納し、メッセージ通信制御部２６がプレゼンス情報記憶部１０６に格納されているプレゼンス情報のスケジュール該当部分を監視し、ポーリング間隔を制御しても良い。
【００６６】
なお、以上の実施の形態では、インスタントメッセージクライアントを通信装置の例として説明したが、少なくとも２種類以上のポーリング間隔でポーリングが可能であり、ポーリング間隔を変更できる通信装置であれば、インスタントメッセージクライアント以外の通信装置でもよい。
【００６７】
前述した各実施の形態で、インスタントメッセージクライアント（通信装置）は、コンピュータで実現できるものである。
【００６８】
図示していないが、インスタントメッセージクライアント（通信装置）は、プログラムを実行するＣＰＵ（Ｃｅｎｔｒａｌ  Ｐｒｏｃｅｓｓｉｎｇ  Ｕｎｉｔ）を備えている。
【００６９】
例えば、ＣＰＵは、バスを介して、ＲＯＭ（Ｒｅａｄ  Ｏｎｌｙ  Ｍｅｍｏｒｙ）、ＲＡＭ（Ｒａｎｄｏｍ  Ａｃｃｅｓｓ  Ｍｅｍｏｒｙ）、フラッシュメモリ、通信ボード、表示装置、Ｋ／Ｂ（キーボード）、マウス、ＦＤＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ  Ｄｒｉｖｅ）、ＣＤＤ（コンパクトディスクドライブ）、磁気ディスク装置、光ディスク装置、プリンタ装置、スキャナ装置等と接続可能である。
【００７０】
ＲＡＭは、揮発性メモリの一例である。ＲＯＭ、フラッシュメモリ、ＦＤＤ、ＣＤＤ、磁気ディスク装置、光ディスク装置は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。
【００７１】
前述した各実施の形態のインスタントメッセージクライアント（通信装置）が扱うデータや情報は、記憶装置あるいは記憶部に保存され、インスタントメッセージクライアント（通信装置）の各部により、記録され読み出されるものである。
【００７２】
また、通信ボードは、例えば、ＬＡＮ、インターネット、或いはＩＳＤＮ等のＷＡＮ（ワイドエリアネットワーク）に接続されている。
【００７３】
磁気ディスク装置には、オペレーティングシステム（ＯＳ）、ウィンドウシステム、プログラム群、ファイル群（データベース）が記憶されている。
【００７４】
プログラム群は、ＣＰＵ、ＯＳ、ウィンドウシステムにより実行される。
【００７５】
上記インスタントメッセージクライアント（通信装置）の各部は、一部或いはすべてコンピュータで動作可能なプログラムにより構成しても構わない。或いは、ＲＯＭに記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェア或いは、ハードウェア或いは、ソフトウェアとハードウェアとファームウェアとの組み合わせで実施されても構わない。
【００７６】
上記プログラム群には、実施の形態の説明において「〜部」として説明した処理をＣＰＵに実行させるプログラムが記憶される。これらのプログラムは、例えば、Ｃ言語やＨＴＭＬやＳＧＭＬやＸＭＬなどのコンピュータ言語により作成される。
【００７７】
また、上記プログラムは、磁気ディスク装置、ＦＤ（Ｆｌｅｘｉｂｌｅ  Ｄｉｓｋ）、光ディスク、ＣＤ（コンパクトディスク）、ＭＤ（ミニディスク）、ＤＶＤ（Ｄｉｇｉｔａｌ  Ｖｅｒｓａｔｉｌｅ  Ｄｉｓｋ）等のその他の記録媒体に記憶され、ＣＰＵにより読み出され実行される。
【図面の簡単な説明】
【００７８】
【図１】実施の形態に係るネットワーク環境を示す概念図。
【図２】実施の形態１において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、及び予約システムの構成例を示す図。
【図３】実施の形態１において対象とするインスタントメッセージサーバの動作例を示すフローチャート。
【図４】実施の形態１において対象とするインスタントメッセージクライアントの動作例を示すフローチャート。
【図５】実施の形態２において対象とするインスタントメッセージクライアント、インスタントメッセージサーバの構成例を示す図。
【図６】実施の形態２において対象とするインスタントメッセージサーバの動作例を示すフローチャート。
【図７】実施の形態２において対象とするインスタントメッセージクライアントの動作例を示すフローチャート。
【図８】実施の形態３において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、予約システム、外部通信手段の構成例を示す図。
【図９】実施の形態３において対象とする予約システムの動作例を示すフローチャート。
【図１０】実施の形態４において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、予約システムの構成例を示す図。
【図１１】実施の形態４において対象とするインスタントメッセージクライアントの動作例を示すフローチャート。
【符号の説明】
【００７９】
１１  インスタントメッセージクライアントａ、１２  インスタントメッセージサーバ、１３  インターネット、１４  ローカルネットワーク、１５  ファイアウォール、１６  インスタントメッセージクライアントｂ、２１  コンテキスト通知部、２２  予約システム、２３  スケジュール情報格納部、２４  コンテキスト取得部、２５  スケジュール情報記憶部、２６  通信制御部、２７  メッセージ通信部、２８  メッセージ中継部、５１  コンテキスト情報格納部、５２  コンテキスト情報記憶部、５３  コンテキスト設定条件記憶部、５４  コンテキスト条件設定部、８１  外部通信手段、８２  コンテキスト通知部、１０１  プレゼンス通知部、１０２  プレゼンス情報格納部、１０３  プレゼンス取得部、１０４  プレゼンス通知部、１０５  プレゼンス購読部、１０６  プレゼンス情報記憶部。
【図１】
2006319707.tif 000003
【図２】
2006319707.tif 000004
【図３】
2006319707.tif 000005
【図４】
2006319707.tif 000006
【図５】
2006319707.tif 000007
【図６】
2006319707.tif 000008
【図７】
2006319707.tif 000009
【図８】
2006319707.tif 000010
【図９】
2006319707.tif 000011
【図１０】
2006319707.tif 000012
【図１１】
2006319707.tif 000013