(57)【要約】  イベント発生装置のリソースに負荷をかけることなく、イベント発生装置が発生したイベントをイベント通知受信端末が遅延せずに検出すること。  イベント通知仲介システムは、イベントを発生するイベント発生装置から、イベントが発生したことを示すイベント通知を受信するイベント通知受信部と、イベント通知を送信すべきイベント通知受信端末を特定する受信端末特定部と、イベント通知をイベント通知受信端末にリアルタイムに送信するイベント通知送信部とを備える。
2009088048.tif 000002
【特許請求の範囲】
【請求項１】
イベントを発生するイベント発生装置から、イベントが発生したことを示すイベント通知を受信するイベント通知受信部と、
前記イベント通知を送信すべきイベント通知受信端末を特定する受信端末特定部と、
前記イベント通知を前記イベント通知受信端末にリアルタイムに送信するイベント通知送信部と
を備えるイベント通知仲介システム。
【請求項２】
イベント通知の種類に対応づけて、当該イベント通知を送信すべき少なくとも１つの前記イベント通知受信端末の識別情報を格納する識別情報格納部
をさらに備え、
前記受信端末特定部は、前記イベント通知受信部が受信した前記イベント通知の種類に基づき、前記識別情報格納部を参照して、前記イベント通知受信部が受信した前記イベント通知を送信すべき前記イベント通知受信端末を特定する
請求項１に記載のイベント通知仲介システム。
【請求項３】
前記イベント通知受信端末との永続的なコネクションを確立するコネクション確立部
をさらに備え、
前記イベント通知送信部は、前記コネクション確立部が確立した前記永続的なコネクションを介して、前記イベント通知を前記イベント通知受信端末に送信する
請求項１または２に記載のイベント通知仲介システム。
【請求項４】
前記イベント通知送信部は、イベントに関連する情報を、前記イベント通知に付帯させて前記イベント通知受信端末に送信する
請求項１乃至３のいずれかに記載のイベント通知仲介システム。
【請求項５】
前記イベント通知送信部は、イベントの詳細情報の取得先へのアクセス情報を、前記イベント通知に付帯させて前記イベント通知受信端末に送信する
請求項１乃至４のいずれかに記載のイベント通知仲介システム。
【請求項６】
前記イベント通知受信部が受信した前記イベント通知の履歴を格納する履歴格納部と、
前記イベント通知の履歴の問い合わせ情報を前記イベント通知受信端末から受信する問い合わせ情報受信部と、
前記問い合わせ情報で特定される前記イベント通知を、前記履歴格納部から取得する履歴取得部と、
前記履歴取得部が取得した前記イベント通知を、前記問い合わせ情報を送信した前記イベント通知受信端末に送信する履歴送信部と
をさらに備える請求項１乃至請求項５のいずれかに記載のイベント通知仲介システム。
【請求項７】
イベントを発生するイベント発生装置から、イベントが発生したことを示すイベント通知を受信するイベント通知受信段階と、
前記イベント通知を送信すべきイベント通知受信端末を特定する受信端末特定段階と、
前記イベント通知を前記イベント通知受信端末にリアルタイムに送信するイベント通知送信段階と
を備えるイベント通知仲介方法。
【請求項８】
コンピュータを、
イベントを発生するイベント発生装置から、イベントが発生したことを示すイベント通知を受信するイベント通知受信部、
前記イベント通知を送信すべきイベント通知受信端末を特定する受信端末特定部、および
前記イベント通知を前記イベント通知受信端末にリアルタイムに送信するイベント通知送信部
として機能させるプログラム。
【発明の詳細な説明】
【技術分野】
【０００１】
本発明は、イベント通知仲介システム、イベント通知仲介方法、およびプログラムに関する。なお、本出願は、下記の日本出願に関連する。文献の参照による組み込みが認められる指定国については、下記の出願に記載された内容を参照により本出願に組み込み、本出願の一部とする。
特願２００８−２８１６５    出願日  ２００８年１月１０日
【背景技術】
【０００２】
従来のインターネットを介したネットワークアプリケーションにおいては、イベント発生源の端末（以下、「イベント発生装置」という。）におけるイベントの発生を、ネットワークの構造上、イベントの通知を必要とする端末（以下、「イベント通知受信端末」という。）に能動的に通知できない場合がある。たとえば、通信経路上にファイヤーウオールが設けられている場合、通信経路上においてパケットフィルタリングが行なわれている場合などには、イベントの発生をイベント通知受信端末に能動的に通知できない場合がある。この場合、イベント通知受信端末が、ポーリングを用いて、イベント発生装置に対してイベントの発生の有無を定期的に問い合わせることにより、イベントの発生の有無を定期的に確認する。なお、現時点で先行技術文献の存在を認識していないので、先行技術文献に関する記載を省略する。
【発明の開示】
【発明が解決しようとする課題】
【０００３】
しかしながら、従来技術では、イベント発生装置がイベントを発生してから、イベント通知受信端末がイベントの発生を検出するまで、問い合わせ間隔を最大とする遅延が生じる。一方、遅延時間を短縮するために問い合わせ間隔を短くしてしまうと、問い合わせ回数が増えるので、問い合わせに対する応答処理をおこなうイベント発生装置のリソースに負荷がかかる。このように、従来技術では、イベント発生装置のリソースに負荷をかけることなく、イベント発生装置が発生したイベントをイベント通知受信端末が遅延せずに検出することができない。そこで本発明の１つの側面においては、上記の課題を解決することのできる「イベント通知仲介システム、イベント通知仲介方法、およびプログラム」を提供することを目的とする。この目的は請求の範囲における独立項に記載の特徴の組み合わせにより達成される。また従属項は本発明の更なる有利な具体例を規定する。
【課題を解決するための手段】
【０００４】
上記課題を解決するために、本発明の第１の態様のイベント通知仲介システムは、イベントを発生するイベント発生装置から、イベントが発生したことを示すイベント通知を受信するイベント通知受信部と、イベント通知を送信すべきイベント通知受信端末を特定する受信端末特定部と、イベント通知をイベント通知受信端末にリアルタイムに送信するイベント通知送信部とを備える。【０００５】
上記イベント通知仲介システムにおいて、イベント通知の種類に対応づけて、当該イベント通知を送信すべき少なくとも１つのイベント通知受信端末の識別情報を格納する識別情報格納部をさらに備えてもよく、受信端末特定部は、イベント通知受信部が受信したイベント通知の種類に基づき、識別情報格納部を参照して、イベント通知受信部が受信したイベント通知を送信すべきイベント通知受信端末を特定してもよい。【０００６】
上記イベント通知仲介システムにおいて、イベント通知受信端末との永続的なコネクションを確立するコネクション確立部をさらに備えてもよく、イベント通知送信部は、コネクション確立部が確立した永続的なコネクションを介して、イベント通知をイベント通知受信端末に送信してもよい。【０００７】
上記イベント通知仲介システムにおいて、イベント通知送信部は、イベントに関連する情報を、イベント通知に付帯させてイベント通知受信端末に送信してもよい。【０００８】
上記イベント通知仲介システムにおいて、イベント通知送信部は、イベントの詳細情報の取得先へのアクセス情報を、イベント通知に付帯させてイベント通知受信端末に送信してもよい。【０００９】
上記イベント通知仲介システムにおいて、イベント通知受信部が受信したイベント通知の履歴を格納する履歴格納部と、イベント通知の履歴の問い合わせ情報をイベント通知受信端末から受信する問い合わせ情報受信部と、問い合わせ情報で特定されるイベント通知を、履歴格納部から取得する履歴取得部と、履歴取得部が取得したイベント通知を、問い合わせ情報を送信したイベント通知受信端末に送信する履歴送信部とをさらに備えてもよい。【００１０】
本発明の第２の態様のイベント通知仲介方法は、イベントを発生するイベント発生装置から、イベントが発生したことを示すイベント通知を受信するイベント通知受信段階と、イベント通知を送信すべきイベント通知受信端末を特定する受信端末特定段階と、イベント通知をイベント通知受信端末にリアルタイムに送信するイベント通知送信段階とを備える。【００１１】
本発明の第３の態様のプログラムは、コンピュータを、イベントを発生するイベント発生装置から、イベントが発生したことを示すイベント通知を受信するイベント通知受信部、イベント通知を送信すべきイベント通知受信端末を特定する受信端末特定部、およびイベント通知をイベント通知受信端末にリアルタイムに送信するイベント通知送信部として機能させる。【００１２】
なお、上記の発明の概要は、本発明の必要な特徴の全てを列挙したものではない。また、これらの特徴群のサブコンビネーションもまた、発明となりうる。
【図面の簡単な説明】
【００１３】
【図１】実施形態に係る通信システム１０の一例を示す。
【図２】イベント通知仲介装置１０２の機能構成の一例を示す。
【図３】識別情報格納ＤＢ１０４に記憶されている情報の一例を示す。
【図４】履歴格納ＤＢ１０６に記憶されている情報の一例を示す。
【図５】通信システム１０による処理の手順の一例を示す。
【図６】通信システム１０による処理の手順の他の一例を示す。
【図７】イベント通知仲介装置１０２のハードウェア構成の一例を示す。
【発明を実施するための最良の形態】
【００１４】
以下、発明の実施の形態を通じて本発明を説明するが、以下の実施形態は請求の範囲にかかる発明を限定するものではない。また、実施形態の中で説明されている特徴の組み合わせの全てが発明の解決手段に必須であるとは限らない。【００１５】
図１は、実施形態に係る通信システム１０の一例を示す。通信システム１０は、イベント通知仲介システム１００、サーバ１１０、および複数の端末１２０を備える。イベント通知仲介システム１００、サーバ１１０、複数の端末１２０は、それぞれ、インターネットなどの通信ネットワーク１５０に接続されている。【００１６】
サーバ１１０は、イベント発生装置として機能する。複数の端末１２０は、それぞれ、イベント通知受信端末として機能する。【００１７】
サーバ１１０は、第１の通信経路を介して、複数の端末１２０のそれぞれとのデータ通信をおこなう。これにより、サーバ１１０は、第１の通信経路を介して、複数の端末１２０のそれぞれに対して、ＷＥＢサービスなどのネットワークアプリケーションサービスを提供する。第１の通信経路とは、サーバ１１０と端末１２０との一問一答型の通信経路を示す。また、第１の通信経路とは、通信ネットワーク１５０を介し、イベント通知仲介システム１００を介さない、サーバ１１０と端末１２０との間の通信経路を示す。たとえば、サーバ１１０は、第１の通信経路において、要求−応答型の通信方式を用いて、複数の端末１２０のそれぞれとのデータ通信をおこなう。【００１８】
イベント通知仲介システム１００は、イベント通知仲介サービスを提供する。イベント通知仲介サービスとは、上記したネットワークアプリケーションサービスとは独立したサービスであって、サーバ１１０が発生したイベントのイベント通知を、サーバ１１０から仲介して端末１２０へ送信するサービスを示す。【００１９】
具体的には、イベント通知仲介システム１００は、第２の通信経路を介して、サーバ１１０とのデータ通信をおこなうことにより、サーバ１１０に対して、イベント通知仲介サービスを提供する。また、イベント通知仲介システム１００は、第３の通信経路を介して、複数の端末１２０のそれぞれとデータ通信をおこなうことにより、複数の端末１２０のそれぞれに対して、イベント通知仲介サービスを提供する。【００２０】
第２の通信経路とは、通信ネットワーク１５０を介した、サーバ１１０とイベント通知仲介システム１００との間の通信経路を示す。なお、第２の通信経路は、通信ネットワーク１５０とは別の通信ネットワークを介した通信経路であってもよい。第３の通信経路とは、通信ネットワーク１５０を介した端末１２０とイベント通知仲介システム１００との間の通信経路を示す。なお、第３の通信経路は、通信ネットワーク１５０とは別の通信ネットワークを介した通信経路であってもよい。【００２１】
イベント通知仲介システム１００は、イベント通知仲介装置１０２を有する。イベント通知仲介装置１０２は、第２の通信経路において、サーバ１１０と永続的または非永続的なコネクションを形成する。また、イベント通知仲介装置１０２は、第３の通信経路において、複数の端末１２０のそれぞれと永続的なコネクションを形成する。【００２２】
これにより、サーバ１１０は、第１の通信経路を介さずに、第２の通信経路および第３の通信経路を介して、イベント通知を、当該イベント通知を送信すべき端末１２０へ送信する。具体的には、サーバ１１０は、第２の通信経路において、能動的に、または要求−応答型の通信方式を用いて、イベント通知をイベント通知仲介装置１０２へ送信する。そして、イベント通知仲介装置１０２は、第３の通信経路において、要求−応答型の通信方式を用いずに、既に形成されている端末１２０との永続的なコネクションを介して、能動的にイベント通知を端末１２０へ送信する。これにより、イベント通知仲介装置１０２は、第３の通信経路を介して、サーバ１１０から受信したイベント通知をリアルタイムに端末１２０へ送信する。イベント通知を受信した端末１２０は、受信したイベント通知の種類に応じた処理を実行する。【００２３】
イベント通知仲介システム１００は、識別情報格納ＤＢ１０４をさらに有する。識別情報格納ＤＢ１０４は、イベント通知の種類を識別するための識別情報（以下、「イベント通知ＩＤ」と示す。）に対応づけて、当該イベント通知を送信すべき端末１２０の識別情報を格納する識別情報格納部として機能する。【００２４】
イベント通知仲介装置１０２は、識別情報格納ＤＢ１０４を参照し、サーバ１１０から受信したイベント通知のイベント通知ＩＤに対応付けられている端末１２０を、イベント通知を送信すべき端末１２０として特定し、特定した端末１２０へ、サーバ１１０から受信したイベント通知を送信する。たとえば、イベント通知仲介装置１０２は、イベント通知ＩＤだけが示されているイベント通知を、端末１２０へ送信する。【００２５】
イベント通知仲介装置１０２は、イベントに関連する情報を、イベント通知に付帯させてイベント通知受信端末に送信してもよい。たとえば、イベントに関連する情報とは、イベントの発生日時、イベントの発生場所、イベントの内容、端末１２０がおこなう処理の識別情報、端末１２０が処理に用いるパラメータなどを示す。端末１２０は、イベント通知に付帯されているイベントに関連する情報に基づいて、イベント通知の種類に応じた処理を実行してもよい。【００２６】
イベント通知仲介装置１０２は、イベントの詳細情報の取得先へのアクセス情報を、イベント通知に付帯させて端末１２０に送信してもよい。イベントの詳細情報の取得先へのアクセス情報は、端末１２０がイベントの詳細情報の取得先に直接的にアクセスすることが可能なＵＲＬ、ＩＰアドレスなどであってもよい。また、イベントの詳細情報の取得先へのアクセス情報は、端末１２０がイベントの詳細情報の取得先に間接的にアクセスすることが可能な識別情報であってもよい。なお、イベントの詳細情報の取得先は、サーバ１１０であってもよく、通信システム１０が備えるその他の情報処理装置であってもよい。端末１２０は、イベント通知に付帯されているアクセス情報に基づいて、イベントの詳細情報の取得先から、イベントの詳細情報を取得し、取得したイベントの詳細情報に基づいて、イベント通知の種類に応じた処理を実行してもよい。【００２７】
識別情報格納ＤＢ１０４は、イベント通知ＩＤに対応づけて、イベント通知を送信すべき少なくとも一つの端末１２０の識別情報を格納する。イベント通知仲介装置１０２は、識別情報格納ＤＢ１０４を参照し、サーバ１１０から受信したイベント通知のイベント通知ＩＤに対応付けられている複数の端末１２０を、イベント通知を送信すべき複数の端末１２０として特定した場合、特定した複数の端末１２０へ、略同時に、サーバ１１０から受信したイベント通知を送信する。【００２８】
端末１２０は、取得したいイベント通知のイベント通知ＩＤの識別情報格納ＤＢ１０４への登録を、イベント通知仲介装置１０２に要求する機能を有してもよい。イベント通知仲介装置１０２は、端末１２０が登録を要求したイベント通知ＩＤを識別情報格納ＤＢ１０４に登録する機能を有してもよい。たとえば、端末１２０が、取得したいイベント通知のイベント通知ＩＤをイベント通知仲介装置１０２へ送信する。そして、イベント通知仲介装置１０２が、受信したイベント通知ＩＤと、当該イベント通知ＩＤの送信元の端末１２０の識別情報とを対応付けて識別情報格納ＤＢ１０４へ登録する。【００２９】
イベント通知仲介システム１００は、履歴格納ＤＢ１０６をさらに有する。履歴格納ＤＢ１０６は、イベント通知受信部が受信したイベント通知の履歴を格納する履歴格納部として機能する。イベント通知仲介装置１０２は、サーバ１１０から受信したイベント通知を履歴格納ＤＢ１０６へ登録する。【００３０】
端末１２０は、イベント通知ＩＤが示されている履歴問い合わせ情報を、イベント通知仲介装置１０２へ送信してもよい。履歴問い合わせ情報とは、以前に発生したイベントの履歴を問い合わせるための情報を示す。イベント通知仲介装置１０２は、端末１２０から受信した履歴問い合わせ情報のイベント通知ＩＤで特定されるイベント通知を、履履歴格納ＤＢ１０６から取得し、取得したイベント通知を、履歴問い合わせ情報を送信した端末１２０へ送信してもよい。【００３１】
図２は、イベント通知仲介装置１０２の機能構成の一例を示す。イベント通知仲介装置１０２は、コネクション確立部２０１、イベント通知受信部２０２、受信端末特定部２０４、およびイベント通知送信部２０６を備える。コネクション確立部２０１は、イベント通知受信端末との永続的なコネクションを確立する。イベント通知受信部２０２は、サーバ１１０から、イベントが発生したことを示すイベント通知を受信する。【００３２】
受信端末特定部２０４は、イベント通知受信部２０２が受信したイベント通知を送信すべき端末１２０を特定する。たとえば、受信端末特定部２０４は、イベント通知受信部２０２が受信したイベント通知のイベント通知ＩＤに基づき、識別情報格納ＤＢ１０４を参照して、イベント通知受信部２０２が受信したイベント通知を送信すべき少なくとも一つの端末１２０を特定する。【００３３】
イベント通知送信部２０６は、イベント通知受信部２０２が受信したイベント通知を、受信端末特定部２０４が特定した端末１２０にリアルタイムに送信する。イベント通知送信部２０６は、コネクション確立部２０１が確立した永続的なコネクションを介して、イベント通知を端末１２０に送信してもよい。イベント通知送信部２０６は、イベントに関連する情報を、イベント通知に付帯させて端末１２０に送信してもよい。イベント通知送信部２０６は、イベントの詳細情報の取得先へのアクセス情報を、イベント通知に付帯させて端末１２０に送信してもよい。【００３４】
本実施形態のイベント通知仲介装置１０２は、履歴登録部２１０、問い合わせ情報受信部２１２、履歴取得部２１４、および履歴送信部２１６をさらに備える。【００３５】
履歴登録部２１０は、イベント通知受信部２０２が受信したイベント通知の履歴を、履歴格納ＤＢ１０６へ登録する。問い合わせ情報受信部２１２は、履歴問い合わせ情報を端末１２０から受信する。【００３６】
履歴取得部２１４は、問い合わせ情報受信部２１２が受信した履歴問い合わせ情報で特定されるイベント通知を、履歴格納ＤＢ１０６から取得する。履歴送信部２１６は、履歴取得部２１４が取得したイベント通知を、履歴問い合わせ情報を送信した端末１２０に送信する。【００３７】
図３は、識別情報格納ＤＢ１０４に格納されている情報の一例を示す。識別情報格納ＤＢ１０４には、項目「イベント通知ＩＤ」と項目「イベント通知受信端末」とを有する情報が格納されている。【００３８】
項目「イベント通知ＩＤ」には、サーバ１１０から送信されるイベント通知の種類を識別するためのイベント通知ＩＤが設定される。項目「イベント通知受信端末」には、項目「イベント通知ＩＤ」に設定されたイベント通知ＩＤと対応付けて、当該イベント通知ＩＤを有するイベント通知を送信すべき端末１２０の識別情報が設定される。【００３９】
たとえば、図３に示す例では、項目「イベント通知ＩＤ」にイベントＩＤ「０００１」が設定されている。また、イベントＩＤ「０００１」に対応する項目「イベント通知受信端末」には、識別情報「端末１２０Ａ」が設定されている。【００４０】
たとえば、イベント通知仲介装置１０２は、イベントＩＤ「０００１」を有するイベント通知をサーバ１１０から受信した場合、図３に示す識別情報格納ＤＢ１０４に基づいて、イベントＩＤ「０００１」に対応付けられている識別情報「端末１２０Ａ」を有する端末１２０を、受信したイベント通知を送信すべき端末１２０として特定し、特定した端末１２０へ、受信したイベント通知を送信する。【００４１】
また、図３に示す例では、項目「イベント通知ＩＤ」にイベントＩＤ「０００３」が設定されている。また、イベントＩＤ「０００３」に対応する項目「イベント通知受信端末」には、識別情報「端末１２０Ａ」および識別情報「端末１２０Ｂ」が設定されている。【００４２】
たとえば、イベント通知仲介装置１０２は、イベントＩＤ「０００３」を有するイベント通知をサーバ１１０から受信した場合、図３に示す識別情報格納ＤＢ１０４に基づいて、イベントＩＤ「０００３」に対応付けられている、識別情報「端末１２０Ａ」を有する端末１２０および識別情報「端末１２０Ｂ」を有する端末１２０のそれぞれを、受信したイベント通知を送信すべき端末１２０として特定し、特定したそれぞれの端末１２０へ、略同時に、受信したイベント通知を送信する。【００４３】
図４は、履歴格納ＤＢ１０６に記憶されている情報の一例を示す。履歴格納ＤＢ１０６には、項目「受信日時」および項目「イベント通知ＩＤ」を有する情報が格納されている。【００４４】
項目「受信日時」には、サーバ１１０がイベントを発生した日時が設定される。なお、項目「受信日時」には、当該履歴格納ＤＢ１０６に登録されたイベント通知の登録日時、サーバ１１０がイベント通知を送信した日時、イベント通知仲介装置１０２がイベント通知を受信した日時などが設定されてもよい。項目「イベント通知ＩＤ」には、項目「受信日時」に設定された日時と対応付けて、当該履歴格納ＤＢ１０６に登録されたイベント通知の種類を識別するためのイベント通知ＩＤが設定される。履歴格納ＤＢ１０６には、項目「受信日時」に設定された日時と対応付けて、当該履歴格納ＤＢ１０６に登録されたイベント通知を送信したイベント発生装置の識別情報がさらに設定されてもよい。【００４５】
図４に示す例では、履歴格納ＤＢ１０６には、イベント通知の履歴として、履歴４０１、履歴４０２、履歴４０３、履歴４０４、および履歴４０５が格納されている。【００４６】
たとえば、履歴４０１においては、項目「受信日時」にサーバ１１０がイベントを発生した日時として「２００８（年）１２（月）１２（日）  １２（時）３４（分）５６．０１５（秒）」が設定されている。また、上記日時に対応する項目「イベント通知ＩＤ」には、イベント通知ＩＤ「０００１」が設定されている。【００４７】
また、履歴４０２においては、項目「受信日時」にサーバ１１０がイベントを発生した日時として「２００８（年）１２（月）１２（日）  １３（時）３４（分）２１．９３５（秒）」が設定されている。また、上記日時に対応する項目「イベント通知ＩＤ」には、イベント通知ＩＤ「０００２」が設定されている。【００４８】
また、履歴４０３、履歴４０４においては、履歴４０１と同様に、項目「イベント通知ＩＤ」には、イベント通知ＩＤ「０００１」が設定されている。また、履歴４０５においては、履歴４０２と同様に、項目「イベント通知ＩＤ」には、イベント通知ＩＤ「０００２」が設定されている。【００４９】
たとえば、イベント通知仲介装置１０２は、イベントＩＤ「０００１」を含む履歴問い合わせ情報をいずれかの端末１２０から受信した場合、図４に示す履歴格納ＤＢ１０６から、項目「イベント通知ＩＤ」にイベント通知ＩＤ「０００１」が設定されている履歴４０１、履歴４０３、履歴４０４をそれぞれ取得し、取得したこれらのイベント通知の履歴を、履歴問い合わせ情報を送信した端末１２０へ送信する。【００５０】
なお、履歴格納ＤＢ１０６は、項目「イベント通知ＩＤ」に設定されているイベント通知ＩＤごとに、イベントに関連する情報およびイベントの詳細情報の取得先へのアクセス情報の少なくともいずれか一方を対応付けてさらに格納してもよい。【００５１】
図５は、通信システム１０による処理の手順の一例を示す。まず、イベント通知の送信先の端末１２０が、イベント通知仲介装置１０２に対して、永続的なコネクションの確立を要求する（Ｓ５００）。なお、イベント通知仲介装置１０２が、イベント通知の送信先の端末１２０に対して、永続的なコネクションの確立を要求してもよい。つぎに、コネクション確立部２０１が、イベント通知の送信先の端末１２０との永続的なコネクションを確立する（Ｓ５０１）。【００５２】
つぎに、サーバ１１０が、イベントを発生する（Ｓ５０２）。つぎに、サーバ１１０が、Ｓ５０２で発生したイベントのイベント通知をイベント通知仲介装置１０２へリアルタイムに送信する（Ｓ５０４）。【００５３】
イベント通知仲介装置１０２においては、イベント通知受信部２０２が、サーバ１１０から送信されたイベント通知を受信する（Ｓ５１２）。また、履歴登録部２１０が、Ｓ５１２で受信したイベント通知の履歴を、履歴格納ＤＢ１０６へ登録する（Ｓ５１４）。また、受信端末特定部２０４が、Ｓ５１２で受信したイベント通知を送信すべき端末１２０を特定する（Ｓ５１６）。そして、イベント通知送信部２０６が、Ｓ５１２で受信したイベント通知を、Ｓ５０１で確立した永続的なコネクションを介して、Ｓ５１６で特定した端末１２０にリアルタイムに送信する（Ｓ５１８）。【００５４】
イベント通知の送信先の端末１２０は、イベント通知仲介装置１０２から送信されたイベント通知を受信する（Ｓ５２２）。そして、イベント通知の送信先の端末１２０は、Ｓ５２２で受信したイベント通知によって特定されるイベントの詳細を問い合わせるための詳細問い合わせ情報をサーバ１１０へ送信する（Ｓ５２４）。【００５５】
サーバ１１０は、端末１２０から送信された詳細問い合わせ情報を受信する（Ｓ５３２）。そして、サーバ１１０は、Ｓ５３２で受信した詳細問い合わせ情報によって特定されるイベントの詳細を示すイベント詳細情報を、詳細問い合わせ情報を送信した端末１２０へ送信する（Ｓ５３４）。【００５６】
イベント詳細情報の送信先の端末１２０は、サーバ１１０から送信されたイベント詳細情報を受信する（Ｓ５４２）。そして、イベント詳細情報の送信先の端末１２０は、Ｓ５４２で受信したイベント詳細情報の内容に応じた処理を実行する（Ｓ５４４）。【００５７】
図６は、通信システム１０による処理の手順の他の一例を示す。まず、いずれかの端末１２０が、履歴問い合わせ情報を、イベント通知仲介装置１０２へ送信する（Ｓ６０２）。ここで、端末１２０は、あらかじめ確立されているイベント通知仲介装置１０２との永続的なコネクションを介して、履歴問い合わせ情報を、イベント通知仲介装置１０２へ送信してもよい。【００５８】
イベント通知仲介装置１０２においては、問い合わせ情報受信部２１２が、履歴問い合わせ情報を端末１２０から受信する（Ｓ６１２）。また、履歴取得部２１４が、Ｓ６１２で受信した履歴問い合わせ情報で特定されるイベント通知を、履歴格納ＤＢ１０６から取得する（Ｓ６１４）。また、履歴送信部２１６が、Ｓ６１４で取得したイベント通知を、履歴問い合わせ情報を送信した端末１２０に送信する（Ｓ６１６）。ここで、履歴送信部２１６は、あらかじめ確立されている端末１２０との永続的なコネクションを介して、Ｓ６１４で取得したイベント通知を、履歴問い合わせ情報を送信した端末１２０に送信してもよい。【００５９】
イベント通知の送信先の端末１２０は、イベント通知仲介装置１０２から送信されたイベント通知を受信する（Ｓ６２２）。そして、イベント通知の送信先の端末１２０は、Ｓ６２２で受信したイベント通知によって特定されるイベントの詳細を問い合わせるための詳細問い合わせ情報をサーバ１１０へ送信する（Ｓ６２４）。【００６０】
サーバ１１０は、端末１２０から送信された詳細問い合わせ情報を受信する（Ｓ６３２）。そして、サーバ１１０は、Ｓ６３２で受信した詳細問い合わせ情報によって特定されるイベントの詳細を示すイベント詳細情報を、詳細問い合わせ情報を送信した端末１２０へ送信する（Ｓ６３４）。【００６１】
イベント詳細情報の送信先の端末１２０は、サーバ１１０から送信されたイベント詳細情報を受信する（Ｓ６４２）。そして、イベント詳細情報の送信先の端末１２０は、Ｓ６４２で受信したイベント詳細情報の内容に応じた処理を実行する（Ｓ６４４）。【００６２】
以上、本実施形態のイベント通知仲介システム１００によれば、サーバ１１０と端末１２０とが、第１の通信経路上において、要求−応答型の通信方式を用いて、ネットワークアプリケーションサービスのデータ通信をおこなう場合であっても、第２の通信経路を利用して、サーバ１１０で発生したイベントのイベント通知をサーバ１１０からリアルタイムに受信し、受信したイベント通知をリアルタイムに端末１２０に送信する。このため、サーバ１１０のリソースおよび第１の通信経路に負荷をかけることなく、サーバ１１０が発生したイベントを端末１２０が遅延せずに検出することができる。【００６３】
また、本実施形態のイベント通知仲介システム１００によれば、サーバ１１０から受信したイベント通知を、当該イベント通知を送信すべき複数の端末１２０へ略同時にリアルタイムに送信することができる。このため、サーバ１１０のリソースおよび第１の通信経路に負荷をかけることなく、サーバ１１０が発生したイベントを、当該イベントを必要とする複数の端末１２０のそれぞれが遅延せずに検出することができる。【００６４】
また、本実施形態のイベント通知仲介システム１００によれば、第３の通信経路における端末１２０との永続的なコネクションを介して、サーバ１１０から受信したイベント通知を、当該イベント通知を送信すべき端末１２０へ送信することができる。このため、第１の通信経路においてサーバ１１０と端末１２０とが永続的なコネクションを確立することができない場合であっても、第３の通信経路における永続的なコネクションを介して、能動的にイベント通知を端末１２０へ送信することができる。【００６５】
また、本実施形態のイベント通知仲介システム１００によれば、イベントの通知の履歴を、履歴格納ＤＢ１０６に格納しておく。このため、複数の端末１２０のそれぞれは、何らかのトラブルによりイベント通知仲介システム１００からリアルタイムに送信されたイベントを受信できなかった場合でも、履歴問い合わせ情報をイベント通知仲介システム１００に送信することにより、任意のタイミングで、受信できなかったイベント通知を受信することができる。【００６６】
本実施形態のイベント通知仲介システム１００は、たとえば、インターネット上のＷＥＢサーバ（本実施形態のサーバ１１０に相当する）に設けられたＷＥＢページのデータの更新（本実施形態のイベントに相当する）が発生した場合に当該更新内容を当該更新内容に応じた処理をするＷＥＢ端末（本実施形態の端末１２０に相当する）へ通知する処理をおこなう、ＷＥＢシステム（本実施形態の通信システム１０に相当する）に適用することができる。この場合、ＷＥＢシステムにおいて、ＷＥＢサーバのリソースおよびインターネット上の通信経路に負荷をかけることなく、ＷＥＢサーバで発生したＷＥＢページの更新を、ＷＥＢ端末が遅延せずに検出できる。【００６７】
また、本実施形態のイベント通知仲介システム１００は、たとえば、震度計、雨量計などのセンサーを管理するインターネット上の災害検出管理サーバ（本実施形態のサーバ１１０に相当する）が、震度計、雨量計などのセンサーによる災害の発生の検出（本実施形態のイベントに相当する）した場合に、当該災害の発生の検出を、警報処理装置（本実施形態の端末１２０に相当する）へ通知する処理をおこなう、災害通知システム（本実施形態の通信システム１０に相当する）に適用することができる。この場合、災害通知システムにおいて、災害検出管理サーバのリソースおよびインターネット上の通信経路に負荷をかけることなく、災害検出管理サーバで発生した災害の発生の検出を、警報処理装置が遅延せずに検出できる。【００６８】
図７は、イベント通知仲介装置１０２のハードウェア構成の一例を示す。イベント通知仲介装置１０２は、ホスト・コントローラ１５８２により相互に接続されるＣＰＵ１５０５、ＲＡＭ１５２０、グラフィック・コントローラ１５７５、および表示デバイス１５８０を備える。また、イベント通知仲介装置１０２は、Ｉ／Ｏ（入出力）コントローラ１５８４によりホスト・コントローラ１５８２に接続される通信Ｉ／Ｆ１５３０、ＲＯＭ１５１０、ハードディスクドライブ１５４０、および外部メモリドライブ１５６０を備える。【００６９】
ＣＰＵ１５０５は、ＲＯＭ１５１０、ＲＡＭ１５２０、またはハードディスクドライブ１５４０に格納されたプログラムに基づいて動作して、イベント通知仲介装置１０２が備える各ハードウェアを制御する。グラフィック・コントローラ１５７５は、ＲＡＭ１５２０等から取得した画像データを、表示デバイス１５８０上に表示させる。【００７０】
Ｉ／Ｏ（入出力）コントローラ１５８４は、マウス、キーボードなどの入出力デバイスをさらに接続する。通信Ｉ／Ｆ１５３０は、ネットワークを介して外部から受け取ったプログラムまたはデータを、ＲＯＭ１５１０、ＲＡＭ１５２０、またはハードディスクドライブ１５４０に提供する。ＲＯＭ１５１０は、イベント通知仲介装置１０２の起動時にＣＰＵ１５０５が実行するブート・プログラム、イベント通知仲介装置１０２のハードウェアに依存するプログラム等を格納する。【００７１】
ハードディスクドライブ１５４０は、ＣＰＵ１５０５が使用するプログラムおよびデータを格納する。外部メモリドライブ１５６０は、外部メモリ１５９５から読み取ったプログラムまたはデータを、ＲＯＭ１５１０、ＲＡＭ１５２０、またはハードディスクドライブ１５４０に提供する。【００７２】
ＣＰＵ１５０５は、ＲＯＭ１５１０、ＲＡＭ１５２０、またはハードディスクドライブ１５４０に格納されているプログラムを実行することにより、イベント通知仲介装置１０２を、コネクション確立部２０１、イベント通知受信部２０２、受信端末特定部２０４、イベント通知送信部２０６、履歴登録部２１０、問い合わせ情報受信部２１２、履歴取得部２１４、および履歴送信部２１６として機能させる。ＣＰＵ１５０５により実行されるプログラムは、外部メモリ１５９５等の記録媒体に格納されて提供されてもよく、外部の情報処理装置からネットワークを介して提供されてもよい。なお、識別情報格納ＤＢ１０４および履歴格納ＤＢ１０６は、イベント通知仲介装置１０２が備える、ＲＯＭ１５１０、ＲＡＭ１５２０、ハードディスクドライブ１５４０、外部メモリ１５９５のいずれかによって実現されてもよく、外部の記憶装置によって実現されてもよい。【００７３】
以上、本発明を実施の形態を用いて説明したが、本発明の技術的範囲は上記実施の形態に記載の範囲には限定されない。上記実施の形態に、多様な変更または改良を加えることが可能であることが当業者に明らかである。その様な変更または改良を加えた形態も本発明の技術的範囲に含まれ得ることが、請求の範囲の記載から明らかである。【００７４】
請求の範囲、明細書、および図面中において示した装置、システム、プログラム、および方法における動作、手順、ステップ、および段階等の各処理の実行順序は、特段「より前に」、「先立って」等と明示しておらず、また、前の処理の出力を後の処理で用いるのでない限り、任意の順序で実現しうることに留意すべきである。請求の範囲、明細書、および図面中の動作フローに関して、便宜上「まず、」、「次に、」等を用いて説明したとしても、この順で実施することが必須であることを意味するものではない。
【符号の説明】
【００７５】
１０  通信システム
１００  イベント通知仲介システム
１０２  イベント通知仲介装置
１０４  識別情報格納ＤＢ
１０６  履歴格納ＤＢ
１１０  サーバ
１２０  端末
１５０  通信ネットワーク
２０１  コネクション確立部
２０２  イベント通知受信部
２０４  受信端末特定部
２０６  イベント通知送信部
２１０  履歴登録部
２１２  問い合わせ情報受信部
２１４  履歴取得部
２１６  履歴送信部
４０１  履歴
４０２  履歴
４０３  履歴
４０４  履歴
４０５  履歴
１５０５  ＣＰＵ
１５１０  ＲＯＭ
１５２０  ＲＡＭ
１５３０  通信Ｉ／Ｆ
１５４０  ハードディスクドライブ
１５６０  外部メモリドライブ
１５７５  グラフィック・コントローラ
１５８０  表示デバイス
１５８２  ホスト・コントローラ
１５８４  Ｉ／Ｏコントローラ
１５９５  外部メモリ
【図１】
2009088048.tif 000003
【図２】
2009088048.tif 000004
【図３】
2009088048.tif 000005
【図４】
2009088048.tif 000006
【図５】
2009088048.tif 000007
【図６】
2009088048.tif 000008
【図７】
2009088048.tif 000009
【国際調査報告】
2009088048.tif 000010
2009088048.tif 000011