JP2006319707A - Communication system, polling method, and program - Google Patents
Communication system, polling method, and program Download PDFInfo
- Publication number
- JP2006319707A JP2006319707A JP2005140760A JP2005140760A JP2006319707A JP 2006319707 A JP2006319707 A JP 2006319707A JP 2005140760 A JP2005140760 A JP 2005140760A JP 2005140760 A JP2005140760 A JP 2005140760A JP 2006319707 A JP2006319707 A JP 2006319707A
- Authority
- JP
- Japan
- Prior art keywords
- polling
- interval
- polling interval
- instant message
- switching
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Pending
Links
Images
Landscapes
- Small-Scale Networks (AREA)
- Telephonic Communication Services (AREA)
Abstract
Description
本発明は、ポーリングを行う際のポーリング間隔を制御する技術に関し、特にポーリングを行った後にインスタントメッセージの送受信を行うメッセージ通信において、サーバ−クライアント間のポーリング間隔の制御を行う技術に関するものである。 The present invention relates to a technique for controlling a polling interval when performing polling, and more particularly to a technique for controlling a polling interval between a server and a client in message communication in which instant messages are transmitted and received after polling.
一般的な企業内でのインスタントメッセージ利用の場合、インスタントメッセージサーバはインターネット上に存在し自由にアクセス可能であるが、インスタントメッセージクライアントはイントラネット内のローカルネットワーク上に存在し、ファイアウォールに阻まれて自由に通信することができないことがほとんどである。そして、ファイアウォールは、ローカルネットワークの中から外へのHTTP接続は許可するが、外から中の接続は許可しないことがほとんどである。 For instant message use in a general enterprise, the instant message server exists on the Internet and can be freely accessed, but the instant message client exists on the local network in the intranet and is blocked by a firewall. It is almost impossible to communicate. The firewall permits HTTP connection from the inside to the outside of the local network, but does not allow connection from the outside to the inside.
インターネット上において、ファイアウォールを通過しないで直接通信できる場合は直接TCPプロトコルを利用して接続を行うが、ファイアウォールを隔てた場合定期的にファイアウォール内の端末からインターネット上のサーバに対してHTTPのポーリングを行う必要がある(例えば、特許文献1)。
従来のファイアウォールを越えたインスタントメッセージング通信では、ファイアウォールに阻まれたローカルネットワーク上のインスタントメッセージクライアントが、インターネット上のインスタントメッセージサーバを通じてリアルタイムな通信を実現するためには、短い周期でHTTPポーリングを実施する必要がある。 In instant messaging communication beyond a conventional firewall, an instant message client on a local network blocked by the firewall performs HTTP polling in a short period in order to realize real-time communication through an instant message server on the Internet. There is a need.
通常、多数のインスタントメッセージクライアントが存在するため、すべてのインスタントメッセージクライアントが短い周期でHTTPポーリングを行うと、インスタントメッセージサーバ側の通信の負荷が大きくなる。このため、すべてのインスタントメッセージクライアントのHTTPポーリングの間隔を数秒単位にすることができず、数分単位とかなり大きな時間間隔が必要である。この結果、インスタントメッセージの送信先におけるインスタントメッセージの送信タイミングとインスタントメッセージの受信先におけるインスタントメッセージの受信タイミングにタイムラグが発生し、リアルタイムな通信を実現できないという問題点があった。 Usually, since there are a large number of instant message clients, if all instant message clients perform HTTP polling in a short period, the communication load on the instant message server side increases. For this reason, the interval between HTTP polling of all instant message clients cannot be set to a unit of several seconds, and a considerably large time interval of several minutes is required. As a result, there is a problem that a time lag occurs between the instant message transmission timing at the instant message destination and the instant message reception timing at the instant message destination, and real-time communication cannot be realized.
この発明は上記のような問題点を解決することを主な目的としており、ポーリングの間隔を可変とし、通常は比較的間隔の長いポーリングを実施するとともに、頻繁なポーリングが必要と予測される際にポーリングの間隔を短くすることで、ポーリング先のサーバにおける負荷を軽減することを可能とし、リアルタイムな通信を可能とすることを目的とする。 The main object of the present invention is to solve the above-mentioned problems. When polling intervals are variable, polling is usually performed with a relatively long interval, and frequent polling is expected to be required. By reducing the polling interval, it is possible to reduce the load on the polling destination server and to enable real-time communication.
本発明に係る通信装置は、
第1のポーリング間隔、第1のポーリング間隔と異なる間隔の第2のポーリング間隔のいずれによってもポーリングの実行が可能なポーリング実行部と、
第1のポーリング間隔と第2のポーリング間隔との間の切り替えを行うための切替基準を記憶する切替基準記憶部と、
切替基準が満たされているか否かを判断し、切替基準が満たされている場合に、第1のポーリング間隔と第2のポーリング間隔との間の切り替えを前記ポーリング実行部に対して指示するポーリング間隔指示部とを有することを特徴とする。
The communication device according to the present invention is
A polling execution unit capable of performing polling at any one of a first polling interval and a second polling interval different from the first polling interval;
A switching reference storage unit that stores a switching reference for switching between the first polling interval and the second polling interval;
Polling for determining whether or not a switching criterion is satisfied and instructing the polling execution unit to switch between a first polling interval and a second polling interval when the switching criterion is satisfied And an interval instruction unit.
本発明によれば、通常時は、長い間隔のポーリング間隔でポーリングを行うとともに、切替基準が満たされている場合に、短い間隔のポーリング間隔に切り替えることが可能となり、この結果、ポーリング先における負荷を軽減することができ、また、短いポーリング間隔でポーリングを実施することが可能であるため、リアルタイムな通信が可能となる。 According to the present invention, normally, polling is performed at a long polling interval, and when the switching criterion is satisfied, it is possible to switch to a short polling interval. In addition, since polling can be performed at a short polling interval, real-time communication is possible.
実施の形態1.
図1は、本実施の形態において対象とするネットワーク構成の概念図である。
Embodiment 1 FIG.
FIG. 1 is a conceptual diagram of a target network configuration in the present embodiment.
図2は、本実施の形態において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、及び予約システムの構成例を示す図である。 FIG. 2 is a diagram illustrating a configuration example of an instant message client, an instant message server, and a reservation system that are targets in the present embodiment.
図3は、本実施の形態において対象とするインスタントメッセージサーバの動作例を示すフローチャートである。 FIG. 3 is a flowchart showing an operation example of the instant message server targeted in the present embodiment.
図4は、本実施の形態において対象とするインスタントメッセージクライアントの動作例を示すフローチャートである。 FIG. 4 is a flowchart showing an operation example of the instant message client targeted in the present embodiment.
図1において、11は、インスタントメッセージを利用するユーザのクライアントであるインスタントメッセージクライアントaである。インスタントメッセージクライアントa11は、通信装置の例である。12は、インスタントメッセージクライアント間の通信を管理するインスタントメッセージサーバである。インスタントメッセージサーバ12は、ポーリング先装置の例である。13は、これらのサーバ−クライアント間を接続するインターネットである。14は、インスタントメッセージクライアントa11が接続されているローカルネットワークである。15は、ローカルネットワーク14内からインターネット13に接続する場合に通過する必要のあるファイアウォールである。16は、通信先のインスタントメッセージクライアントbである。
In FIG. 1, 11 is an instant message client a which is a client of a user who uses an instant message. The instant message client a11 is an example of a communication device. An
図2において、インスタントメッセージサーバ12は、コンテキスト通知部21とメッセージ中継部28から構成される。
In FIG. 2, the
コンテキスト通知部21は、コンテキスト情報をクライアントに通知する。なお、本実施の形態では、コンテキスト情報とは、予約システム22のスケジュール情報格納部23に格納されているスケジュール情報である。メッセージ中継部28は、インスタントメッセージクライアントa11とインスタントメッセージやその他のメッセージのメッセージ通信を行う。
The
インスタントメッセージクライアントa11は、コンテキスト取得部24、スケジュール情報記憶部25、通信制御部26、メッセージ通信部27から構成される。
The instant message client a11 includes a
メッセージ通信部27は、インスタントメッセージサーバ12に対するポーリングを実施する。また、インスタントメッセージサーバ12から、インスタントメッセージを受信する。メッセージ通信部27は、間隔の長いポーリング間隔(第1のポーリング間隔)と間隔の短いポーリング間隔(第2のポーリング間隔)のいずれによってもポーリングを実行することができる。メッセージ通信部27は、通常は、間隔の長いポーリング間隔でポーリングを実施し、特定の場合に、間隔の短いポーリング間隔でポーリングを実施する。メッセージ通信部27は、ポーリング実行部の例である。
The
コンテキスト取得部24は、インスタントメッセージサーバ12からスケジュール情報(コンテキスト情報)を取得する。なお、スケジュール情報は、インスタントメッセージクライアントa11宛てのインスタントメッセージが多くなると予測されるスケジュールが記述されている。スケジュール情報は、メッセージ通信部27が、長い間隔のポーリング間隔(第1のポーリング間隔)から短い間隔のポーリング間隔(第2のポーリング間隔)に切り替えるためのスケジュールを示すものであり、切替基準の例である。
The
スケジュール情報記憶部25は、コンテキスト取得部24が、インスタントメッセージサーバ12から取得したスケジュール情報を記憶する。スケジュール情報記憶部25は、切替基準記憶部の例である。
The schedule
通信制御部26は、スケジュール情報記憶部25に記憶されているスケジュール情報に示されたスケジュールが到来しているか否かを判断し、当該スケジュールの到来前は、間隔の長いポーリング間隔(第1のポーリング間隔)でポーリングを実行するようメッセージ通信部27に指示し、当該スケジュールの到来後は、間隔の短いポーリング間隔(第2のポーリング間隔)でポーリングを実行するようメッセージ通信部27に指示する。通信制御部26は、ポーリング間隔指示部の例である。
The
予約システム22は、インスタントメッセージサーバ12と連携した外部の予約システムである。スケジュール格納部23は、スケジュール情報を格納する。
The
次に、対象とするネットワーク環境について説明する。図1のようにインスタントメッセージクライアントa11は、ローカルネットワーク14内に存在し、インターネット13とはファイアウォール15を隔てて隔離された状態となっている。インスタントメッセージサーバ12はインターネット13に直接接続可能で、インターネット13を通じて様々な端末から自由にアクセス可能な状況である。このようなネットワーク環境が、企業内でのインスタントメッセージの通常利用形態である。例えば、ローカルネットワーク14に所属したインスタントメッセージa11と、インターネット13に直接接続されたインスタントメッセージクライアントb16間でメッセージ交換を実施する場合、インスタントメッセージサーバ12を中継する必要がある。インスタントメッセージクライアントa11からインスタントメッセージクライアントb16に対してメッセージ送信する場合は、インスタントメッセージクライアントa11からインスタントメッセージサーバ12にメッセージが通知されると、インスタントメッセージサーバ12からインスタントメッセージクライアントb16へメッセージを中継することが可能である。しかし、インスタントメッセージクライアントb16からインスタントメッセージa11に対してメッセージを送信する場合、インスタントメッセージクライアントb16から送信されたメッセージがインスタントメッセージサーバ12に通知されても、サーバ−クライアント間にファイアウォール15があるため、インスタントメッセージサーバ12からインスタントメッセージクライアントa11に対して直ちにメッセージを通知することができない。インスタントメッセージクライアントa11がインスタントメッセージサーバ12に対して、ファイアウォール15を透過する、HTTPプロトコルを使用してポーリングを定期的に実施する必要がある。
Next, the target network environment will be described. As shown in FIG. 1, the instant message client a <b> 11 exists in the
図2において、インスタントメッセージクライアントa11とインスタントメッセージサーバ12との間のメッセージ交換は、メッセージ通信部27とメッセージ中継部28との間で実施されている。メッセージ通信部27はメッセージ中継部28に対して、一定時間間隔(例えば1分)でHTTPプロトコルを使用し、ポーリングを行う。
In FIG. 2, message exchange between the instant message client a <b> 11 and the
本実施の形態では、クライアント間のメッセージ通信が、インスタントメッセージを利用した会議などに用いられ、この会議のスケジュールが予約システム22により管理され、会議のスケジュールがスケジュール情報に示されている場合を想定する。この場合に、スケジュール情報に示されているスケジュール(時間帯)は、インスタントメッセージクライアントa11宛てのインスタントメッセージが増加すると予測される時間帯であり、このため、インスタントメッセージサーバ12にインスタントメッセージクライアントa11宛てのインスタントメッセージが多数蓄積されると予測される時間帯である。このため、インスタントメッセージサーバ12のコンテキスト通知部21により、予約システム22のスケジュール情報をインスタントメッセージクライアントa11のコンテキスト取得部24に通知することにより、インスタントメッセージクライアントa11では、当該会議が実施される時間帯のポーリング間隔を短くすることができ、リアルタイム通信を効果的に行うことができる。
In the present embodiment, it is assumed that message communication between clients is used for a conference using an instant message, the conference schedule is managed by the
コンテキスト通知部21は、図3に示すように、インスタントメッセージクライアントa11のコンテキスト取得部24から接続されクライアントの識別情報を受信する(S31)と、予約システム22に対してインスタントメッセージクライアントa11のスケジュール情報があるかどうかを問い合わせる(S32)。もしスケジュールがある場合は対応するクライアントのスケジュール情報を取得し、そのスケジュール情報をコンテキスト取得部24に通知する(S33)。また、もし対応するスケジュールがない場合でも、コンテキスト取得部24に対して、スケジュールがない旨を通知する(S34)。
As shown in FIG. 3, when the
コンテキスト取得部24はコンテキスト通知部21に対して定期的に接続し、スケジュール情報の取得を試行する。もし、スケジュール情報が取得できた場合は、スケジュール情報記憶部25にスケジュールを格納する。
The
通信制御部26は、図4のように、スケジュール情報を監視し、現在時刻がスケジュールに予定された時間に該当するかどうかをチェックする(S41)(ポーリング間隔指示ステップ)。もし該当する場合は、現在短いポーリング間隔にてポーリングを実行中か否かを判断し(S42)(ポーリング間隔指示ステップ)、(すでにスケジュールが到来しているため)短いポーリング間隔にてポーリングを実行中の場合は、S41に戻り、そのまま短いポーリング間隔でのポーリングを継続し、(スケジュールの到来直後のため)長いポーリング間隔にてポーリングを実行中の場合は、通信制御部26は、メッセージ通信部27に対して短いポーリング間隔でポーリングを実行するよう指示する(S43)(ポーリング間隔指示ステップ)。そして、メッセージ通信部27は、短いポーリング間隔(例えば1秒)でポーリングを実行する(S44)(ポーリング実行ステップ)。
As shown in FIG. 4, the
一方で、S41において、現在時刻がスケジュールに該当しない場合は、通信制御部26は、現在短いポーリング間隔にてポーリングを実行中か否かを判断し(S45)(ポーリング間隔指示ステップ)、長いポーリング間隔にてポーリングを実行中の場合は、S41に戻りそのまま長いポーリング間隔でもポーリングを継続し、(スケジュールの終了直後のため)短いポーリング間隔にてポーリングを実行中の場合は、通信制御部26は、メッセージ通信部27に対して長いポーリング間隔でポーリングを実行するよう指示する(S46)(ポーリング間隔指示ステップ)。そして、メッセージ通信部27は、長いポーリング間隔(例えば1分)でポーリングを実行する(S47)(ポーリング実行ステップ)。
On the other hand, when the current time does not correspond to the schedule in S41, the
このようにして、スケジュールに該当する時間のみHTTPポーリングを短い時間間隔で実施する。 In this way, HTTP polling is performed at short time intervals only for the time corresponding to the schedule.
このように、本実施の形態では、インスタントメッセージクライアントがインスタントメッセージサーバに対してHTTPポーリングする間隔を、インスタントメッセージサーバから伝えられるスケジュール情報によって変化できるようにし、インスタントメッセージサーバは予約システムなどと連携し、インスタントメッセージクライアントに「頻繁にアクセスすべき時刻のスケジュール情報」を伝え、インスタントメッセージクライアントはそのスケジュール情報に従ってHTTPポーリング間隔を変動させることにより、必要なときにリアルタイムな通信が可能となり、通信トラフィックも少なくすることが可能となる。 Thus, in this embodiment, the interval at which the instant message client performs HTTP polling to the instant message server can be changed according to the schedule information transmitted from the instant message server, and the instant message server cooperates with the reservation system or the like. , Telling the instant message client “schedule information of times that should be frequently accessed”, and changing the HTTP polling interval according to the schedule information, the instant message client enables real-time communication when necessary, and communication traffic It can be reduced.
本実施の形態では、インスタントメッセージクライアントから必要と思われる時のみサーバに対して通信を実施しているので、短い時間間隔でサーバに対してポーリングを実施しても、全体として少ない通信トラフィックでメッセージ通信を実現することができる。つまり、短い時間間隔でのポーリングが必要なタイミングは個々のインスタントメッセージクライアントで異なるので、それぞれのインスタントメッセージクライアントが必要なタイミングでのみ短い間隔でポーリングを行い、通常時は長い間隔でポーリングを行うことにより、全体としてインスタントメッセージからのポーリングが分散することになる。そして、短い時間間隔でサーバにポーリングを実施することが可能であるため、ファイアウォール内に設置されたインスタントメッセージクライアントでも、その他のインスタントメッセージクライアントに対して、限りなくリアルタイムに近いメッセージ通信が可能となる。 In this embodiment, communication is performed with respect to the server only when it is deemed necessary from the instant message client. Therefore, even if polling is performed with respect to the server at a short time interval, the message can be transmitted with less communication traffic as a whole. Communication can be realized. In other words, the timing at which polling at a short time interval is required for each instant message client, so that each instant message client polls at a short interval only when necessary, and normally polls at a long interval. As a result, polling from instant messages is distributed as a whole. And since it is possible to poll the server at short time intervals, even instant messaging clients installed in the firewall can communicate messages in near real time to other instant messaging clients. .
なお、今回の図1では、予約システムのスケジュール情報と連動したが、例えば、複数人での会議をインスタントメッセージで実現しようとする場合、予めクライアントにスケジュールを教えておくことで、効率的なメッセージ通信が可能となる。 In FIG. 1, this time is linked with the schedule information of the reservation system. For example, when a meeting with a plurality of people is to be realized by an instant message, an efficient message can be obtained by informing the client in advance of the schedule. Communication is possible.
尚、予約システムのスケジュール情報だけではなく、その他の例えば、個人のスケジュール管理システム、個人のメール送受信時間情報等のあらゆる時間に関係する情報を取得し、クライアントに通知しても良い。 Not only the schedule information of the reservation system but also other information such as personal schedule management system and personal mail transmission / reception time information may be acquired and notified to the client.
実施の形態2.
以上の実施の形態1では、通信タイミングを制御する情報としてスケジュール情報を利用したものであるが、次に個人の位置や状態のように時と場所により変化するイベントを監視対象とし、監視対象のイベントが特定のステータスになった場合に、ポーリング間隔を切り替える実施の形態を示す。
Embodiment 2. FIG.
In the first embodiment described above, schedule information is used as information for controlling communication timing. Next, an event that changes depending on time and place, such as the position and state of an individual, is set as a monitoring target. An embodiment in which the polling interval is switched when an event has a specific status will be described.
図5は、本実施の形態が対象とするインスタントメッセージクライアントとインスタントメッセージサーバの構成例を示す図である。 FIG. 5 is a diagram illustrating a configuration example of an instant message client and an instant message server targeted by the present embodiment.
図6は、本実施の形態において対象とするインスタントメッセージサーバの動作例を示すフローチャートである。 FIG. 6 is a flowchart showing an operation example of the instant message server targeted in the present embodiment.
図7は、本実施の形態において対象とするインスタントメッセージクライアントの動作例を示すフローチャートである。 FIG. 7 is a flowchart showing an operation example of the instant message client targeted in this embodiment.
図5では、図2におけるインスタントメッセージサーバ12と接続していた予約システム22の代わりにコンテキスト情報格納部51が接続され、インスタントメッセージクライアントa11においてスケジュール情報を蓄積するスケジュール情報記憶部25の代わりにコンテキスト情報記憶部52が、そして通信制御部26にコンテキスト設定条件記憶部53が接続されている。更に、コンテキスト条件を設定するコンテキスト条件設定部54が配置されている。
In FIG. 5, a context
本実施の形態では、コンテキスト情報は、監視対象イベントのステータスを通知するステータス情報である。例えば、後述するように、周期的にある人物の位置を示すステータス情報である。インスタントメッセージサーバ12のコンテキスト通知部21からコンテキスト情報を受信するコンテキスト取得部24は、ステータス情報受信部の例である。
In the present embodiment, the context information is status information that notifies the status of the monitoring target event. For example, as will be described later, the status information indicates the position of a certain person periodically. The
そして、コンテキスト設定条件記憶部53に記憶されているコンテキスト設定条件は、コンテキスト条件設定部54により設定された条件であり、長い間隔のポーリング間隔(第1のポーリング間隔)から短い間隔のポーリング間隔(第2のポーリング間隔)に切り替えるための基準である。コンテキスト設定条件は、監視対象イベントが特定のステータスになった場合に短い間隔のポーリング間隔を実行するように指定している。例えば、ある人物が特定の位置に移動した場合に、短い間隔のポーリング間隔を実行するように指定する。コンテキスト設定条件は、切替基準の例である。
The context setting conditions stored in the context setting
次に動作について説明する。 Next, the operation will be described.
コンテキスト通知部21は、図6のように、まずコンテキスト取得部からの要求を受け付ける(S31)と、コンテキスト情報格納部51の中に該当するインスタントメッセージクライアントに通知すべきコンテキスト情報があるかどうかを判断する(S61)。もし、ある場合は、インスタントメッセージクライアントのコンテキスト情報を取得し、インスタントメッセージクライアントに通知する(S63)。もしない場合は、インスタントメッセージクライアントにはコンテキスト情報がない旨を通知する(S62)。
As shown in FIG. 6, the
メッセージ通信制御部26は、図7のように、コンテキスト情報にコンテキスト設定条件に適合するものが存在するかを判断し(S71)、図4と同様に、もしあれば短いポーリング間隔でサーバに接続を行い(S42〜S44)、もしなければ長いポーリング時間間隔でサーバに接続を行う(S45〜S47)。
As shown in FIG. 7, the message
コンテキスト設定条件は、コンテキスト条件設定部54を用いて予めインスタントメッセージクライアントでユーザが入力するものとするが、コンテキスト取得部を使用して、サーバから取得したり、その他の通信手段によって他のシステムから入手しても良い。
The context setting condition is assumed to be input by the user in advance using the instant message client using the context
コンテキスト設定条件は、例えば位置情報でいうと、ある人物が位置1から位置2に移動した場合はクライアント1とクライアント2間で通信が発生するというように記載しておく。コンテキスト情報において該当する人物の位置情報の履歴を含めて参照し、位置1から位置2に対して移動していると判断されるとメッセージ交換が開始されるものと判断し、短いポーリング間隔で通信を行う。 The context setting condition is described in terms of position information, for example, that communication occurs between the client 1 and the client 2 when a certain person moves from the position 1 to the position 2. Referring to the context information including the history of the position information of the person in question, if it is determined that the user is moving from position 1 to position 2, it is determined that message exchange is started, and communication is performed at a short polling interval. I do.
今回の図5では、サーバが管理するコンテキスト情報と連動し、コンテキスト情報を参考に通信が開始されるかどうかを判断したが、これにより実施の形態1のスケジュールのような時間のみが条件となるのではなく、例えば位置情報やユーザのこれまでの進路に関連したインスタントメッセージ通信に対応し、効率的なメッセージ通信を実現することが可能となる。 In FIG. 5 this time, it is determined whether or not communication is started with reference to the context information in conjunction with the context information managed by the server. With this, only the time as in the schedule of the first embodiment is a condition. Instead, for example, it is possible to realize efficient message communication in response to instant message communication related to location information and the user's previous course.
実施の形態3.
以上の実施の形態1では、インスタントメッセージクライアントから直接インスタントメッセージサーバに対して接続して予約システムのスケジュール情報を取得していたが、次にメールやインスタントメッセージなどの他の外部通信手段を使用してスケジュール情報をクライアントに通知する実施の形態を示す。
Embodiment 3 FIG.
In Embodiment 1 above, the instant message client directly connects to the instant message server to acquire schedule information of the reservation system. Next, other external communication means such as e-mail and instant message are used. An embodiment in which schedule information is notified to a client will be described.
図8は、本実施の形態において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、予約システム、外部通信手段の構成例を示す図である。 FIG. 8 is a diagram illustrating a configuration example of an instant message client, an instant message server, a reservation system, and an external communication unit that are targets in the present embodiment.
図9は、本実施の形態において対象とする予約システムの動作例を示すフローチャートである。 FIG. 9 is a flowchart showing an operation example of the reservation system targeted in the present embodiment.
図8において、81はメール、インスタントメッセージ等の送信を行う外部通信手段、82はコンテキスト情報を通知するコンテキスト通知部である。外部通信手段81は、外部装置の例である。 In FIG. 8, reference numeral 81 denotes an external communication means for transmitting e-mails, instant messages, and the like, and 82 is a context notification unit for notifying context information. The external communication unit 81 is an example of an external device.
次に動作について説明する。 Next, the operation will be described.
インスタントメッセージクライアントa11のコンテキスト取得部24がコンテキスト通知部21に対して事前に何らかの通信手段(例えば、直接のネットワーク接続、メール等)を用いて、予めスケジュール情報を通知するよう指示しておく。予約システム22のコンテキスト通知部82は、図9のようにインスタントメッセージクライアントからスケジュールを通知するよう指示があったかを確認し(S91)、もしなければ一定時間待機し(S92)、再度確認する。もしあれば、予約システム22に対応するクライアントのスケジュール情報があるかどうかを確認する(S32)。もしスケジュールがあれば、クライアントにスケジュール情報を、外部通信手段81を使用して通知する(S33)。もしなければスケジュールがない旨を通知する(S34)。
The
尚、今回スケジュールを通知するような指示をコンテキスト取得部24から行ったが、サーバ上で設定したり、その他の通信手段を使用して、ユーザが通知してもよい。
In addition, although an instruction to notify the schedule this time is given from the
このように、本実施の形態によれば、クライアントのスケジュールを取得するタイミングを実施の形態1のようにクライアントから通知されたタイミングではなく、事前に通知された情報を元に確認することにより、インスタントメッセージクライアントから定期的にインスタントメセージサーバに要求を出す必要がなく通信トラフィックを抑えることができる。また、外部通信手段81を使用したことにより、クライアントとサーバ間で直接通信することなく、その他の通信手段を利用してスケジュールの通知を実施することができる。 As described above, according to the present embodiment, the timing for acquiring the schedule of the client is not based on the timing notified from the client as in the first embodiment, but based on the information notified in advance, It is not necessary to send a request to the instant message server periodically from the instant message client, and communication traffic can be suppressed. Further, by using the external communication means 81, it is possible to notify the schedule using other communication means without directly communicating between the client and the server.
実施の形態4.
以上の実施の形態1では、インスタントメッセージサーバに独自の部位を追加し、予約システムのスケジュール情報をインスタントメッセージクライアントに通知していたが、次に、予約システムのスケジュール情報をプレゼンス情報として通知するようにし、インスタントメッセージサーバに修正を加えなくてもインスタントメッセージクライアントに対してスケジュールが通知できる実施の形態を示す。
Embodiment 4 FIG.
In the first embodiment described above, an original part is added to the instant message server and the schedule information of the reservation system is notified to the instant message client. Next, the schedule information of the reservation system is notified as presence information. In the embodiment, the schedule can be notified to the instant message client without modifying the instant message server.
図10は、本実施の形態において対象とするインスタントメッセージクライアント、インスタントメッセージサーバ、予約システムの構成例を示す図である。 FIG. 10 is a diagram illustrating a configuration example of an instant message client, an instant message server, and a reservation system that are targets in the present embodiment.
図11は、本実施の形態において対象とするインスタントメッセージクライアントの動作例を示すフローチャートである。 FIG. 11 is a flowchart showing an operation example of the instant message client targeted in the present embodiment.
図10において、101はクライアントからの要求に応じて購読されたプレゼンス情報を通知するプレゼンス通知部、102は様々なクライアントに関するプレゼンス情報を蓄積するプレゼンス情報格納部、103は購読を要求されたクライアントのスケジュール情報を取得するプレゼンス取得部である。プレゼンス通知部101及びプレゼンス情報格納部102は、通常、インスタントメッセージサーバに備わっている機能である。104はインスタントメッセージサーバに接続し、インスタントメッセージサーバからの要求があると予約システム22のスケジュール情報格納部23に格納されているスケジュール情報をプレゼンス情報として通知するプレゼンス通知部、105はプレゼンス情報を購読するプレゼンス購読部、106は購読したプレゼンス情報を蓄積するプレゼンス情報記憶部である。
In FIG. 10, 101 is a presence notification unit for notifying presence information subscribed in response to a request from a client, 102 is a presence information storage unit for accumulating presence information regarding various clients, and 103 is a client for which subscription is requested. It is a presence acquisition unit that acquires schedule information. The
次に動作について説明する。 Next, the operation will be described.
まず、一般的なプレゼンス情報の購読の基本的な動作を説明する。 First, the basic operation of subscribing to general presence information will be described.
インスタントメッセージサーバ12のプレゼンス取得部103はクライアントのプレゼンス情報を通知され、そのプレゼンス情報をプレゼンス情報格納部102に格納する。インスタントメッセージクライアントa11のプレゼンス購読部105は、インスタントメッセージサーバ12のプレゼンス通知部101に対して、購読したいクライアントのプレゼンス情報を通知する。プレゼンス通知部101はプレゼンス情報格納部102の中から必要なプレゼンス情報を取得し、インスタントメッセージクライアントに通知する。インスタントメッセージクライアントのプレゼンス購読部105ではプレゼンス情報をプレゼンス情報記憶部106に格納する。これがインスタントメッセージにおけるプレゼンス通知・購読の基本的な動作である。
The
本実施の形態では、予約システム22のプレゼンス通知部104において、スケジュール情報2をプレゼンス情報としてインスタントメッセージサーバ12のプレゼンス取得部103に通知する。これにより、プレゼンス取得部103により、プレゼンス情報格納部102にスケジュール情報がプレゼンス情報として格納される。インスタントメッセージクライアントa11では、プレゼンス購読部105が、予約システムのプレゼンス情報を購読するようプレゼンス通知部101に通知し、プレゼンス通知部101により予約システムのプレゼンス情報を取得し(S111)、取得したプレゼンス情報にスケジュール情報が含まれているか否かを判断し(S112)、プレゼンス情報にスケジュール情報が含まれている場合に、プレゼンス情報からスケジュール情報を取り出し、スケジュール情報記憶部25に格納する。プレゼンス情報にスケジュール情報が含まれていない場合は、当該プレゼンス情報をプレゼンス情報記憶部106に格納し、プレゼンス情報の更新を行う(S114)。通常のプレゼンス情報はプレゼンス情報記憶部106に格納し、スケジュール情報はスケジュール情報記憶部25に格納する。
In the present embodiment, the
メッセージ通信制御部は実施の形態1と同様にスケジュール情報を監視し、そのスケジュールに従いインスタントメッセージサーバ12のメッセージ中継部28へのHTTPプロトコルによるポーリング時間間隔を調整する。
The message communication control unit monitors the schedule information as in the first embodiment, and adjusts the polling time interval by the HTTP protocol to the
今回、予約システムにスケジュール情報をプレゼンス情報として通知するプレゼンス通知部を設け、プレゼンス情報としてスケジュール情報をクライアントに伝えることにより、スケジュール情報を伝えるためにインスタントメッセージングサーバに追加機能を実装することなく、スケジュール情報に応じた通信トラフィック制御を実施することができる。 This time, the reservation system is provided with a presence notification unit that notifies the schedule information as presence information, and the schedule information is transmitted to the client as presence information, so that the schedule can be transmitted without implementing an additional function in the instant messaging server. Communication traffic control according to information can be performed.
尚、今回サーバから取得したスケジュール情報をスケジュール情報記憶部25に格納したが、プレゼント情報をそのままプレゼンス情報記憶部106に格納し、メッセージ通信制御部26がプレゼンス情報記憶部106に格納されているプレゼンス情報のスケジュール該当部分を監視し、ポーリング間隔を制御しても良い。
The schedule information acquired from the server this time is stored in the schedule
なお、以上の実施の形態では、インスタントメッセージクライアントを通信装置の例として説明したが、少なくとも2種類以上のポーリング間隔でポーリングが可能であり、ポーリング間隔を変更できる通信装置であれば、インスタントメッセージクライアント以外の通信装置でもよい。 In the above embodiment, the instant message client has been described as an example of the communication device. However, the instant message client may be any communication device that can perform polling at least two kinds of polling intervals and can change the polling interval. Other communication devices may be used.
前述した各実施の形態で、インスタントメッセージクライアント(通信装置)は、コンピュータで実現できるものである。 In each of the embodiments described above, the instant message client (communication device) can be realized by a computer.
図示していないが、インスタントメッセージクライアント(通信装置)は、プログラムを実行するCPU(Central Processing Unit)を備えている。 Although not shown, the instant message client (communication device) includes a CPU (Central Processing Unit) that executes a program.
例えば、CPUは、バスを介して、ROM(Read Only Memory)、RAM(Random Access Memory)、フラッシュメモリ、通信ボード、表示装置、K/B(キーボード)、マウス、FDD(Flexible Disk Drive)、CDD(コンパクトディスクドライブ)、磁気ディスク装置、光ディスク装置、プリンタ装置、スキャナ装置等と接続可能である。 For example, the CPU is connected via a bus to a ROM (Read Only Memory), a RAM (Random Access Memory), a flash memory, a communication board, a display device, a K / B (keyboard), a mouse, an FDD (Flexible Disk Drive), and a CDD. (Compact disk drive), magnetic disk device, optical disk device, printer device, scanner device, etc. can be connected.
RAMは、揮発性メモリの一例である。ROM、フラッシュメモリ、FDD、CDD、磁気ディスク装置、光ディスク装置は、不揮発性メモリの一例である。これらは、記憶装置あるいは記憶部の一例である。 The RAM is an example of a volatile memory. ROM, flash memory, FDD, CDD, magnetic disk device, and optical disk device are examples of nonvolatile memory. These are examples of a storage device or a storage unit.
前述した各実施の形態のインスタントメッセージクライアント(通信装置)が扱うデータや情報は、記憶装置あるいは記憶部に保存され、インスタントメッセージクライアント(通信装置)の各部により、記録され読み出されるものである。 Data and information handled by the instant message client (communication device) according to each of the embodiments described above are stored in a storage device or a storage unit, and are recorded and read by each unit of the instant message client (communication device).
また、通信ボードは、例えば、LAN、インターネット、或いはISDN等のWAN(ワイドエリアネットワーク)に接続されている。 The communication board is connected to a WAN (Wide Area Network) such as a LAN, the Internet, or ISDN.
磁気ディスク装置には、オペレーティングシステム(OS)、ウィンドウシステム、プログラム群、ファイル群(データベース)が記憶されている。 The magnetic disk device stores an operating system (OS), a window system, a program group, and a file group (database).
プログラム群は、CPU、OS、ウィンドウシステムにより実行される。 The program group is executed by a CPU, OS, and window system.
上記インスタントメッセージクライアント(通信装置)の各部は、一部或いはすべてコンピュータで動作可能なプログラムにより構成しても構わない。或いは、ROMに記憶されたファームウェアで実現されていても構わない。或いは、ソフトウェア或いは、ハードウェア或いは、ソフトウェアとハードウェアとファームウェアとの組み合わせで実施されても構わない。 Each part of the instant message client (communication device) may be partly or entirely configured by a program operable by a computer. Alternatively, it may be realized by firmware stored in the ROM. Alternatively, it may be implemented by software, hardware, or a combination of software, hardware, and firmware.
上記プログラム群には、実施の形態の説明において「〜部」として説明した処理をCPUに実行させるプログラムが記憶される。これらのプログラムは、例えば、C言語やHTMLやSGMLやXMLなどのコンピュータ言語により作成される。 The program group stores a program that causes the CPU to execute the processing described as “˜unit” in the description of the embodiment. These programs are created by computer languages, such as C language, HTML, SGML, and XML, for example.
また、上記プログラムは、磁気ディスク装置、FD(Flexible Disk)、光ディスク、CD(コンパクトディスク)、MD(ミニディスク)、DVD(Digital Versatile Disk)等のその他の記録媒体に記憶され、CPUにより読み出され実行される。 The program is stored in another recording medium such as a magnetic disk device, FD (Flexible Disk), optical disk, CD (compact disk), MD (mini disk), DVD (Digital Versatile Disk), and read by the CPU. And executed.
11 インスタントメッセージクライアントa、12 インスタントメッセージサーバ、13 インターネット、14 ローカルネットワーク、15 ファイアウォール、16 インスタントメッセージクライアントb、21 コンテキスト通知部、22 予約システム、23 スケジュール情報格納部、24 コンテキスト取得部、25 スケジュール情報記憶部、26 通信制御部、27 メッセージ通信部、28 メッセージ中継部、51 コンテキスト情報格納部、52 コンテキスト情報記憶部、53 コンテキスト設定条件記憶部、54 コンテキスト条件設定部、81 外部通信手段、82 コンテキスト通知部、101 プレゼンス通知部、102 プレゼンス情報格納部、103 プレゼンス取得部、104 プレゼンス通知部、105 プレゼンス購読部、106 プレゼンス情報記憶部。
11 Instant Message Client a, 12 Instant Message Server, 13 Internet, 14 Local Network, 15 Firewall, 16 Instant Message Client b, 21 Context Notification Unit, 22 Reservation System, 23 Schedule Information Storage Unit, 24 Context Acquisition Unit, 25 Schedule Information Storage unit, 26 communication control unit, 27 message communication unit, 28 message relay unit, 51 context information storage unit, 52 context information storage unit, 53 context setting condition storage unit, 54 context condition setting unit, 81 external communication means, 82
Claims (10)
第1のポーリング間隔と第2のポーリング間隔との間の切り替えを行うための切替基準を記憶する切替基準記憶部と、
切替基準が満たされているか否かを判断し、切替基準が満たされている場合に、第1のポーリング間隔と第2のポーリング間隔との間の切り替えを前記ポーリング実行部に対して指示するポーリング間隔指示部とを有することを特徴とする通信装置。 A polling execution unit capable of performing polling at any one of a first polling interval and a second polling interval different from the first polling interval;
A switching reference storage unit that stores a switching reference for switching between the first polling interval and the second polling interval;
Polling for determining whether or not a switching criterion is satisfied and instructing the polling execution unit to switch between a first polling interval and a second polling interval when the switching criterion is satisfied A communication apparatus comprising an interval instruction unit.
第2のポーリング間隔として、第1のポーリング間隔よりも短い間隔でのポーリングの実行が可能であり、
前記切替基準記憶部は、
第1のポーリング間隔から第2のポーリング間隔への切り替えを行うための切替基準を記憶し、
前記ポーリング間隔指示部は、
通常は前記ポーリング実行部に対して第1のポーリング間隔でのポーリングを指示するとともに、切替基準が満たされている間のみ、前記ポーリング実行部に対して第2のポーリング間隔でのポーリングを指示することを特徴とする請求項1に記載の通信装置。 The polling execution unit
As the second polling interval, it is possible to execute polling at an interval shorter than the first polling interval,
The switching reference storage unit is
Storing a switching criterion for switching from the first polling interval to the second polling interval;
The polling interval instruction unit
Usually, the polling execution unit is instructed to poll at the first polling interval, and the polling execution unit is instructed to poll at the second polling interval only while the switching criterion is satisfied. The communication apparatus according to claim 1.
第2のポーリング間隔でのポーリングを実行すべき第2ポーリング間隔実行スケジュールが示された切替基準を記憶しており、
前記ポーリング間隔指示部は、
第2ポーリング間隔実行スケジュールが到来したか否かを判断し、第2ポーリング間隔実行スケジュールの到来前は、前記ポーリング実行部に対して第1のポーリング間隔でのポーリングを指示し、第2ポーリング間隔実行スケジュールの到来後は、前記ポーリング実行部に対して第2のポーリング間隔でのポーリングを指示することを特徴とする請求項2に記載の通信装置。 The switching reference storage unit is
Storing a switching criterion indicating a second polling interval execution schedule to be polled at the second polling interval;
The polling interval instruction unit
It is determined whether or not the second polling interval execution schedule has arrived. Before the second polling interval execution schedule arrives, the polling execution unit is instructed to perform polling at the first polling interval, and the second polling interval The communication apparatus according to claim 2, wherein after the execution schedule arrives, the polling execution unit is instructed to perform polling at a second polling interval.
ポーリングを行うことにより、ポーリング先であるポーリング先装置に蓄積された自装置宛ての通信メッセージを前記ポーリング先装置から受信する通信装置であり、
前記切替基準記憶部は、
前記ポーリング先装置において自装置宛ての通信メッセージが蓄積されていると予測されるスケジュールを第2ポーリング間隔実行スケジュールとして示す切替基準を記憶していることを特徴とする請求項3に記載の通信装置。 The communication device
A communication device that receives a communication message addressed to its own device stored in a polling destination device that is a polling destination from the polling destination device by performing polling,
The switching reference storage unit is
4. The communication apparatus according to claim 3, wherein a switching reference indicating a schedule for which a communication message addressed to the apparatus is accumulated in the polling destination apparatus as a second polling interval execution schedule is stored. .
ポーリング先から、切替基準を受信することを特徴とする請求項1に記載の通信装置。 The communication device
The communication apparatus according to claim 1, wherein a switching reference is received from a polling destination.
切替基準の取得が必要なタイミングごとにポーリング先に切替基準の送信要求を送信することなく、ポーリング先以外の外部装置から、切替基準を受信することを特徴とする請求項1に記載の通信装置。 The communication device
2. The communication apparatus according to claim 1, wherein the switching reference is received from an external device other than the polling destination without transmitting a transmission request for the switching reference to the polling destination at each timing when acquisition of the switching reference is required. .
インスタントメッセージサーバ装置をポーリング先とするインスタントメッセージクライアント装置であり、
前記インスタントメッセージサーバ装置からプレゼンス情報を受信する際に、切替基準を含むプレゼンス情報を受信することを特徴とする請求項1に記載の通信装置。 The communication device
An instant message client device whose polling destination is an instant message server device,
The communication apparatus according to claim 1, wherein when receiving presence information from the instant message server apparatus, the presence information including a switching criterion is received.
所定の監視対象イベントが特定のステータスになった場合に第2のポーリング間隔でのポーリングを実行するよう示す切替基準を記憶しており
前記通信装置は、更に、
前記監視対象イベントのステータスを通知するステータス情報を受信するステータス情報受信部を有し、
前記ポーリング間隔指示部は、
ステータス情報に示された前記監視対象イベントのステータスが切替基準に示された前記特定のステータスに合致するか否かを判断し、両者が合致しない場合は、前記ポーリング実行部に対して第1のポーリング間隔でのポーリングを指示し、両者が合致する場合は、前記ポーリング実行部に対して第2のポーリング間隔でのポーリングを指示することを特徴とする請求項2に記載の通信装置。 The switching reference storage unit is
A switching criterion indicating that polling is performed at a second polling interval when a predetermined monitoring target event has a specific status is stored, and the communication device further includes:
A status information receiving unit for receiving status information for notifying the status of the monitored event;
The polling interval instruction unit
It is determined whether or not the status of the monitored event indicated in the status information matches the specific status indicated in the switching criterion, and if both do not match, the first polling execution unit is informed The communication apparatus according to claim 2, wherein polling at a polling interval is instructed, and if both match, the polling execution unit is instructed to poll at a second polling interval.
第1のポーリング間隔と第2のポーリング間隔との間の切り替えを行うための切替基準が満たされているか否かを判断し、切替基準が満たされている場合に、第1のポーリング間隔と第2のポーリング間隔との間の切り替えを前記ポーリング実行ステップに対して指示するポーリング間隔指示ステップとを有することを特徴とするポーリング方法。 A polling execution step capable of performing polling at any one of a first polling interval and a second polling interval different from the first polling interval;
It is determined whether or not a switching criterion for switching between the first polling interval and the second polling interval is satisfied, and when the switching criterion is satisfied, the first polling interval and the second polling interval A polling interval instruction step for instructing the polling execution step to switch between two polling intervals.
第1のポーリング間隔と第2のポーリング間隔との間の切り替えを行うための切替基準が満たされているか否かを判断し、切替基準が満たされている場合に、第1のポーリング間隔と第2のポーリング間隔との間の切り替えを前記ポーリング実行処理に対して指示するポーリング間隔指示処理とををコンピュータに実行させることを特徴とするプログラム。 A polling execution process capable of performing polling at any one of a first polling interval and a second polling interval different from the first polling interval;
It is determined whether or not a switching criterion for switching between the first polling interval and the second polling interval is satisfied, and when the switching criterion is satisfied, the first polling interval and the second polling interval A program for causing a computer to execute polling interval instruction processing for instructing the polling execution processing to switch between two polling intervals.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005140760A JP2006319707A (en) | 2005-05-13 | 2005-05-13 | Communication system, polling method, and program |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2005140760A JP2006319707A (en) | 2005-05-13 | 2005-05-13 | Communication system, polling method, and program |
Publications (1)
Publication Number | Publication Date |
---|---|
JP2006319707A true JP2006319707A (en) | 2006-11-24 |
Family
ID=37539958
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2005140760A Pending JP2006319707A (en) | 2005-05-13 | 2005-05-13 | Communication system, polling method, and program |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP2006319707A (en) |
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010205070A (en) * | 2009-03-04 | 2010-09-16 | Ricoh Co Ltd | Information processing device, information processing method and program |
JP2017005523A (en) * | 2015-06-11 | 2017-01-05 | 三菱電機株式会社 | Video recording reservation system and video recording reservation information confirmation method |
US11317002B2 (en) | 2017-11-21 | 2022-04-26 | Hewlett-Packard Development Company, L.P. | Response delay time determination to maintain long polling connection |
-
2005
- 2005-05-13 JP JP2005140760A patent/JP2006319707A/en active Pending
Cited By (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP2010205070A (en) * | 2009-03-04 | 2010-09-16 | Ricoh Co Ltd | Information processing device, information processing method and program |
JP2017005523A (en) * | 2015-06-11 | 2017-01-05 | 三菱電機株式会社 | Video recording reservation system and video recording reservation information confirmation method |
US11317002B2 (en) | 2017-11-21 | 2022-04-26 | Hewlett-Packard Development Company, L.P. | Response delay time determination to maintain long polling connection |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CA2707536C (en) | Processing of network content and services for mobile or fixed devices | |
US8051057B2 (en) | Processing of network content and services for mobile or fixed devices | |
US7328261B2 (en) | Distributed resource manager | |
US9436414B2 (en) | Managing a printing device behind a firewall | |
US8280957B2 (en) | Presence system and method for event-driven presence subscription | |
KR100817098B1 (en) | Information exchange system, management server, and method for reducing network load used in the same | |
KR100825349B1 (en) | Information exchange system and management server, terminal unit, and method for reducing network load used in the same | |
CN101365119B (en) | Video recording balance equalizing method used for network video monitoring system | |
KR20150090191A (en) | Transmission of notifications to multiple devices associated with a user | |
CN101365118B (en) | Video monitoring system based on computer network | |
CN102739411A (en) | Providing a witness service | |
US20090112926A1 (en) | Utilizing Presence Data Associated with a Resource | |
CN101360129B (en) | Mobile phone short message sending method for network video monitoring system | |
KR20150068317A (en) | Method of failover for network device in software defined network environment | |
JP2008209982A (en) | Server device, client device, remote connection system and program | |
US7689650B1 (en) | Presence indication configuration methodology | |
JP2006319707A (en) | Communication system, polling method, and program | |
JP2006195749A (en) | Information processing system, server unit, and client terminal device | |
JP2006229634A (en) | Presence management server, and system | |
US20140244728A1 (en) | Controller, method for controlling, and computer-readable recording medium having stored therein control program | |
WO2009087885A1 (en) | Server system and method for transmitting event message of the server system, client terminal and method and program for connecting the client terminal, and recording medium | |
JP4548126B2 (en) | Registration server device and remote monitoring control system | |
JP5151232B2 (en) | Information distribution system, information distribution method, information distribution server, and information distribution program | |
JP2006285383A (en) | Trend information report system and trend information report method | |
CN114500660B (en) | Request processing method, device, equipment and computer readable storage medium |