JP5304700B2 - Status notification method and communication system - Google Patents
Status notification method and communication system Download PDFInfo
- Publication number
- JP5304700B2 JP5304700B2 JP2010069367A JP2010069367A JP5304700B2 JP 5304700 B2 JP5304700 B2 JP 5304700B2 JP 2010069367 A JP2010069367 A JP 2010069367A JP 2010069367 A JP2010069367 A JP 2010069367A JP 5304700 B2 JP5304700 B2 JP 5304700B2
- Authority
- JP
- Japan
- Prior art keywords
- information
- notification
- relay
- server
- terminal
- 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.)
- Expired - Fee Related
Links
Images
Landscapes
- Telephonic Communication Services (AREA)
Description
本発明は、ネットワークを介して接続された複数の端末を備える通信システムにおいて、端末に他の端末の状態を通知するための状態通知方法、および通信システムに関する。 The present invention relates to a state notification method and a communication system for notifying a terminal of the state of another terminal in a communication system including a plurality of terminals connected via a network.
従来、ネットワークを介して接続された複数の端末を備える通信システムにおいて、端末に他の端末の状態を通知する機能(所謂「プレゼンス機能」)が利用されている。通信システムは、複数の端末とプレゼンスサーバとを少なくとも備える。プレゼンスサーバは、各端末の状態を示すプレゼンス情報を管理する。例えば、端末Bは、他の端末Aの状態を監視する場合、端末Aの状態を端末Bに通知する旨の登録を、プレゼンスサーバに対して要求する。プレゼンスサーバは、端末Aの状態が端末Aから通知されると、端末Aの状態の通知先として登録している端末Bに、端末Aの状態を通知するためのメッセージを送信する。 2. Description of the Related Art Conventionally, in a communication system including a plurality of terminals connected via a network, a function (so-called “presence function”) for notifying a terminal of the status of another terminal is used. The communication system includes at least a plurality of terminals and a presence server. The presence server manages presence information indicating the state of each terminal. For example, when monitoring the status of another terminal A, the terminal B requests the presence server to register that the status of the terminal A is notified to the terminal B. When the state of the terminal A is notified from the terminal A, the presence server transmits a message for notifying the state of the terminal A to the terminal B registered as the notification destination of the state of the terminal A.
プレゼンスサーバは、ある端末の状態を複数の端末に通知する場合には、各端末に状態を通知するための複数の処理を並行して行わなければならなかった。プレゼンスサーバにかかる負荷の分散を図るため、例えば、特許文献1では、プレゼンス情報を格納するデータベースサーバと、プレゼンス情報が変更された旨を端末に通知する複数のプレゼンスサーバとによって端末に他の端末の状態を通知する通信システムが開示されている。 When the presence server notifies a plurality of terminals of the state of a certain terminal, the presence server has to perform a plurality of processes for notifying each terminal of the state in parallel. In order to distribute the load applied to the presence server, for example, in Patent Document 1, a database server that stores presence information and a plurality of presence servers that notify the terminal that the presence information has been changed to another terminal. A communication system for notifying the state is disclosed.
特許文献1が開示している通信システムでは、プレゼンス情報を格納するデータベースサーバは、プレゼンスサーバの各々にメッセージを送信しなければならない。従って、端末の増加に伴ってプレゼンスサーバが増加すると、データベースサーバにかかる負荷が増大する。すなわち、特許文献1が開示している通信システムは、端末数の増加に伴って増大するデータベースサーバの負荷を根本的に減少させることはできなかった。 In the communication system disclosed in Patent Document 1, a database server that stores presence information must transmit a message to each of the presence servers. Therefore, when the number of presence servers increases as the number of terminals increases, the load on the database server increases. In other words, the communication system disclosed in Patent Document 1 cannot fundamentally reduce the load on the database server that increases as the number of terminals increases.
本発明は、端末に他の端末の状態を通知する通信システムにおいて、データベースサーバにかかる負荷を減少させることができる状態通知方法、および通信システムを提供することを目的とする。 An object of the present invention is to provide a state notification method and a communication system capable of reducing a load applied to a database server in a communication system that notifies a terminal of the state of another terminal.
本発明の第一の態様に係る状態通知方法は、複数の端末と、前記複数の端末の各々の状態を示すプレゼンス情報を管理することが可能なデータベースサーバと、前記複数の端末の少なくともいずれかと前記データベースサーバとの間でメッセージを中継する複数の中継サーバとを備えた通信システムにおいて行われる状態通知方法であって、前記データベースサーバが、前記複数の端末の各々の状態の通知先である1以上の通知先端末を特定する情報を記憶手段に登録する登録ステップと、前記複数の端末のうちの一の端末である通知元端末が、接続している中継サーバを介して、前記通知元端末のプレゼンス情報を前記データベースサーバへ送信する状態通知ステップと、前記状態通知ステップで送信された前記通知元端末のプレゼンス情報を受信した前記データベースサーバが、前記登録ステップで登録された情報に基づいて、前記通知先端末を特定するための第一通知先情報と、前記通知先端末に接続している中継サーバを特定するための中継情報とを含む一の情報を、前記複数の中継サーバのいずれかに送信する第一送信ステップと、前記第一送信ステップで送信された前記一の情報を受信した中継サーバが、前記中継情報によって特定される中継サーバに、前記第一通知先情報によって特定される通知先端末を特定する第二通知先情報、および前記通知元端末のプレゼンス情報を出力する出力ステップと、前記出力ステップで出力された情報を入力した中継サーバが、自身に接続している端末のうち、前記第二通知先情報によって特定される端末に、入力したプレゼンス情報を送信する第二送信ステップとを備えている。
The status notification method according to the first aspect of the present invention includes a plurality of terminals, a database server capable of managing presence information indicating the status of each of the plurality of terminals, and at least one of the plurality of terminals. A status notification method performed in a communication system including a plurality of relay servers that relay messages to and from the database server, wherein the database server is a notification destination of the status of each of the plurality of terminals A registration step for registering information for identifying the notification destination terminal in the storage means, and the notification source terminal via a relay server to which the notification source terminal that is one of the plurality of terminals is connected Status notification step of transmitting the presence information of the notification source terminal to the database server, and the presence information of the notification source terminal transmitted in the status notification step The database server that has received the ID specifies first notification destination information for specifying the notification destination terminal and a relay server connected to the notification destination terminal based on the information registered in the registration step A first transmission step of transmitting one piece of information including relay information to one of the plurality of relay servers, and the relay server that has received the one piece of information transmitted in the first transmission step, An output step of outputting second notification destination information specifying the notification destination terminal specified by the first notification destination information and presence information of the notification source terminal to the relay server specified by the relay information; and the output step Presence that the relay server that has input the information output in
第一の態様に係る状態通知方法によると、データベースサーバは、通知先端末を特定するための情報等を含む一の情報を、複数の中継サーバのうちのいずれかに送信するだけで、通知元端末の状態を通知先端末に通知することができる。通知先端末の数が多い場合でも、データベースサーバは、情報の送受信を複数の中継サーバとの間で繰り返す必要がない。従って、通信システムは、データベースサーバにかかる負荷を増加させることなく、通知元端末の状態を通知先端末に通知することができる。 According to the state notification method according to the first aspect, the database server simply sends one piece of information including information for specifying the notification destination terminal to any one of the plurality of relay servers. The status of the terminal can be notified to the notification destination terminal. Even when the number of notification destination terminals is large, the database server does not need to repeat transmission / reception of information with a plurality of relay servers. Therefore, the communication system can notify the notification destination terminal of the state of the notification source terminal without increasing the load on the database server.
前記出力ステップにおいて、前記中継サーバは、前記第一通知先情報によって複数の通知先端末が特定され、且つ前記複数の通知先端末のうちの2以上が1つの中継サーバに接続されている場合、前記中継サーバに対し、2以上の通知先端末を特定する一の第二通知先情報を出力してもよい。通信システムは、データベースサーバにかかる負荷を減少させることができることに加え、複数の中継サーバ間で情報が送受信される回数も減少させることができる。従って、通信システムは、システム全体にかかる負荷をさらに減少させることができる。 In the output step, when the plurality of notification destination terminals are specified by the first notification destination information and two or more of the plurality of notification destination terminals are connected to one relay server in the output step, One second notification destination information specifying two or more notification destination terminals may be output to the relay server. In addition to reducing the load on the database server, the communication system can also reduce the number of times information is transmitted and received between a plurality of relay servers. Therefore, the communication system can further reduce the load on the entire system.
前記第一送信ステップにおいて、前記データベースサーバは、前記第一通知先情報および前記中継情報を含む前記一の情報を、前記プレゼンス情報を受信したことに対する応答と共に、前記プレゼンス情報を中継した中継サーバに送信してもよい。通信システムは、データベースサーバが情報を送信する回数をさらに減少させることができる。その結果、データベースサーバにかかる負荷が減少する。 In the first transmission step, the database server sends the first information including the first notification destination information and the relay information to a relay server that relays the presence information together with a response to the presence information being received. You may send it. The communication system can further reduce the number of times the database server transmits information. As a result, the load on the database server is reduced.
前記状態通知方法は、前記状態通知ステップで前記通知元端末のプレゼンス情報を中継する中継サーバが、前記プレゼンス情報を中継する際に、中継する前記プレゼンス情報を取得する第一取得ステップをさらに備えてもよい。前記出力ステップにおいて、前記中継サーバは、前記第一取得ステップで取得した前記プレゼンス情報を出力してもよい。データベースサーバは、中継サーバに送信する一の情報に通知元端末のプレゼンス情報を含める必要がない。よって、通信システムは、送受信するデータのデータ量を低下させることができる。 The status notification method further includes a first acquisition step in which a relay server that relays presence information of the notification source terminal in the status notification step acquires the presence information to be relayed when relaying the presence information. Also good. In the output step, the relay server may output the presence information acquired in the first acquisition step. The database server does not need to include the presence information of the notification source terminal in the one information transmitted to the relay server. Therefore, the communication system can reduce the amount of data transmitted and received.
前記状態通知方法は、前記状態通知ステップで送信された前記通知元端末のプレゼンス情報を受信した前記データベースサーバが、前記複数の中継サーバの各々が実行している処理に関する情報である処理情報を取得する第二取得ステップと、前記第二取得ステップで処理情報を取得した前記データベースサーバが、取得した前記処理情報に基づいて、前記通知先情報および前記中継情報を含む前記一の情報を送信する送信先の中継サーバを前記複数の中継サーバの中から選択する選択ステップとをさらに備えてもよい。前記第一送信ステップにおいて、前記データベースサーバは、前記一の情報を、前記選択ステップで選択された中継サーバに送信するとよい。データベースサーバは、各中継サーバが実行している処理の情報に応じて、情報を送信する中継サーバを選択することができる。従って、通信システムは、システムの一部に処理負担が偏ることを防止することができる。 In the status notification method, the database server that has received the presence information of the notification source terminal transmitted in the status notification step acquires processing information that is information related to processing executed by each of the plurality of relay servers. The second acquisition step, and the database server that has acquired the processing information in the second acquisition step transmits the one information including the notification destination information and the relay information based on the acquired processing information And a selection step of selecting a previous relay server from the plurality of relay servers. In the first transmission step, the database server may transmit the one information to the relay server selected in the selection step. The database server can select a relay server that transmits information in accordance with information on processing executed by each relay server. Therefore, the communication system can prevent the processing load from being biased to a part of the system.
前記第一送信ステップにおいて、前記データベースサーバは、前記通知元端末のプレゼンス情報を前記一の情報に含めて送信してもよい。前記出力ステップにおいて、前記中継サーバは、受信した前記一の情報に含まれる前記プレゼンス情報を出力してもよい。通信システムは、データベースサーバから中継サーバに送信される一の情報に通知元端末のプレゼンス情報を含めることで、通知元端末のプレゼンス情報を確実に通知先端末に通知することができる。 In the first transmission step, the database server may transmit presence information of the notification source terminal included in the one information. In the output step, the relay server may output the presence information included in the received one information. By including the presence information of the notification source terminal in one piece of information transmitted from the database server to the relay server, the communication system can reliably notify the notification destination terminal of the presence information of the notification source terminal.
前記状態通知方法は、前記中継サーバの各々と前記データベースサーバとが、前記中継サーバの各々と前記データベースサーバとの間で共通の識別子を記憶手段に記憶させる記憶制御ステップをさらに備えてもよい。前記第一送信ステップにおいて、前記データベースサーバは、前記中継情報によって特定される中継サーバとの間で共通する識別子に関する識別子情報を、前記一の情報に含めて送信してもよい。前記出力ステップにおいて、前記第一送信ステップで送信された前記一の情報を受信した中継サーバは、前記一の情報に含まれる前記識別子情報を、前記第二通知先情報および前記プレゼンス情報と共に出力すればよい。前記第二送信ステップにおいて、前記出力ステップで出力された情報を入力した中継サーバは、入力した前記識別子情報によって示される識別子が前記データベースサーバとの間で共通の識別子である場合、入力したプレゼンス情報を通知先端末に送信するとよい。通知先端末にプレゼンス情報を送信する中継サーバは、入力した第二通知先情報およびプレゼンス情報が、データベースサーバから他の中継サーバを介して出力された信頼できる情報であることを、識別子を用いて判断することができる。よって、通信システムは、正確な情報を円滑に送受信することができる。 The status notification method may further include a storage control step in which each of the relay servers and the database server stores a common identifier between each of the relay servers and the database server in a storage unit. In the first transmission step, the database server may include the identifier information related to an identifier common to the relay server specified by the relay information, and transmit the identifier information. In the output step, the relay server that has received the one information transmitted in the first transmission step outputs the identifier information included in the one information together with the second notification destination information and the presence information. That's fine. In the second transmission step, if the relay server that has input the information output in the output step has a common identifier with the database server, the input presence information May be transmitted to the notification destination terminal. The relay server that transmits the presence information to the notification destination terminal uses the identifier to indicate that the input second notification destination information and presence information are reliable information output from the database server via another relay server. Judgment can be made. Therefore, the communication system can smoothly transmit and receive accurate information.
前記複数の端末の各々は、他の端末との間でSIP(Session Initiation Protocol)に従って通信を行うSIPクライアントとして動作してもよい。前記中継サーバは、前記複数の端末間におけるSIPセッションを確立するSIPプロキシサーバとして動作してもよい。通信システムは、汎用的なSIPに従って円滑に通信を行うことができる。通信システムは、汎用的なSIPメッセージを利用して容易にプレゼンス機能を実現することができる。SIPに従って通信を行う既存の通信システムの構成を大幅に変更することなく、容易にプレゼンス機能を実現することができる。中継サーバは、複数の端末間の通信の確立とプレゼンス機能の制御とを共に実行することができる。よって、通信システムは、通信を確立するためのサーバとプレゼンス機能を制御するサーバとを別に備える必要がない。 Each of the plurality of terminals may operate as a SIP client that communicates with other terminals in accordance with SIP (Session Initiation Protocol). The relay server may operate as a SIP proxy server that establishes a SIP session between the plurality of terminals. The communication system can smoothly communicate according to general-purpose SIP. The communication system can easily realize the presence function using a general-purpose SIP message. The presence function can be easily realized without significantly changing the configuration of an existing communication system that performs communication according to SIP. The relay server can execute both establishment of communication between a plurality of terminals and control of the presence function. Therefore, the communication system does not need to include a server for establishing communication and a server for controlling the presence function.
本発明の第二の態様に係る通信システムは、複数の端末と、前記複数の端末の各々の状態を示すプレゼンス情報を管理することが可能なデータベースサーバと、前記複数の端末の少なくともいずれかと前記データベースサーバとの間でメッセージを中継する複数の中継サーバとを備えた通信システムであって、前記データベースサーバにおいて、前記複数の端末の各々の状態の通知先である1以上の通知先端末を特定する情報を記憶手段に登録する登録手段と、前記複数の端末のうちの一の端末である通知元端末において、前記通知元端末に接続している中継サーバを介して、前記通知元端末のプレゼンス情報を前記データベースサーバへ送信する状態通知手段と、前記データベースサーバにおいて、前記状態通知手段によって送信された前記通知元端末のプレゼンス情報を受信した場合に、前記登録手段によって登録された情報に基づいて、前記通知先端末を特定するための第一通知先情報と、前記通知先端末に接続している中継サーバを特定するための中継情報とを含む一の情報を、前記複数の中継サーバのいずれかに送信する第一送信手段と、前記複数の中継サーバの各々において、前記第一送信手段によって送信された前記一の情報を受信した場合に、前記中継情報によって特定される中継サーバに、前記第一通知先情報によって特定される通知先端末を特定する第二通知先情報、および前記通知元端末のプレゼンス情報を出力する出力手段と、前記複数の中継サーバの各々において、前記出力手段によって出力された情報を入力した場合に、自身に接続している端末のうち、前記第二通知先情報によって特定される端末に、入力したプレゼンス情報を送信する第二送信手段とを備えている。 A communication system according to a second aspect of the present invention includes a plurality of terminals, a database server capable of managing presence information indicating a state of each of the plurality of terminals, at least one of the plurality of terminals, and the A communication system including a plurality of relay servers that relay messages to and from a database server, wherein the database server identifies one or more notification destination terminals that are notification destinations of the states of the plurality of terminals The presence of the notification source terminal via a relay server connected to the notification source terminal in a registration unit that registers information to be stored in a storage unit and a notification source terminal that is one of the plurality of terminals Status notification means for transmitting information to the database server; and before the database server transmits the information by the status notification means. When receiving presence information of a notification source terminal, based on information registered by the registration means, first notification destination information for specifying the notification destination terminal, and a relay connected to the notification destination terminal One piece of information including relay information for specifying a server is transmitted to one of the plurality of relay servers, and is transmitted by the first transmission unit in each of the plurality of relay servers. The second notification destination information for specifying the notification destination terminal specified by the first notification destination information to the relay server specified by the relay information, and the notification source terminal In each of the output means for outputting presence information and the information output by the output means in each of the plurality of relay servers, the terminal connected to itself is connected. , The terminal identified by the second notification destination information, and a second transmission means for transmitting presence information input.
第二の態様に係る通信システムによると、データベースサーバは、通知先端末を特定するための情報等を含む一の情報を、複数の中継サーバのうちのいずれかに送信するだけで、通知元端末の状態を通知先端末に通知することができる。通知先端末の数が多い場合でも、データベースサーバは、情報の送受信を複数の中継サーバとの間で繰り返す必要がない。従って、通信システムは、データベースサーバにかかる負荷を増加させることなく、通知元端末の状態を通知先端末に通知することができる。 According to the communication system according to the second aspect, the database server simply transmits one piece of information including information for specifying the notification destination terminal to any one of the plurality of relay servers. Can be notified to the notification destination terminal. Even when the number of notification destination terminals is large, the database server does not need to repeat transmission / reception of information with a plurality of relay servers. Therefore, the communication system can notify the notification destination terminal of the state of the notification source terminal without increasing the load on the database server.
以下、本発明を具現化した第一の実施形態である通信システム100について、図面を参照して説明する。参照する図面は、本発明が採用し得る技術的特徴を説明するために用いられるものである。図面に記載されている装置の構成、各種処理のフローチャート等は、それのみに限定する趣旨ではなく、単なる説明例である。
Hereinafter, a
図1を参照して、通信システム100の概要について説明する。通信システム100は、データベースサーバ1と、複数の中継サーバ2と、複数の端末3とを備える。通信システム100が備える端末3は、音声データおよび画像データ等のデータを、ネットワーク8(図2から図4参照)を介して他の端末3との間でP2P(peer to peer)によって送受信することができる。各端末3を使用する複数のユーザは、同一拠点にいない場合でも、送受信されるデータによって遠隔会議を行うことができる。つまり、本実施形態の通信システム100は、テレビ会議を行うために用いられるテレビ会議システムである。しかし、本発明はテレビ会議システム以外の通信システムにも適用できる。例えば、所謂「チャット」を行うために文字データを送受信する通信システム、電話を行うために音声データを送受信する通信システム等にも、本発明は適用できる。
An overview of the
通信システム100では、複数の端末3がネットワーク8上で通信を開始するための双方向プロトコルとして、SIP(RFC3261)が用いられる。SIP(Session Initiation Protocol)は、ネットワーク8上でエンド・トゥ・エンドのセッションを確立するためのプロトコルであり、リアルタイムコミュニケーションを容易に実現できる。端末3の各々は、他の端末3との間でSIPに従って通信を行うSIPクライアントとして動作する。中継サーバ2の各々は、複数の端末3の間にSIPに従ってセッションを確立するSIPプロキシサーバである。SIPによるセッションの確立方法については公知であるため、詳細な説明は省略する。
In the
通信システム100は、端末3に他の端末3の状態を通知する機能(所謂「プレゼンス機能」)を有する。ユーザは、プレゼンス機能を利用することで、自らが使用する端末3と他のユーザが使用する端末3との間の通信を確立しなくても、他のユーザの状態を知ることができる。
The
一般的に、サーバは、情報を受信して応答を送信する処理に比べ、情報を送信して応答を受信する処理には適していないという性質を有する。具体的には、サーバは、プレゼンス情報を含むメッセージを他の機器に送信した場合、メッセージの応答を待機する必要がある。サーバは、メッセージの応答がない場合には、メッセージの再送等の処理を行う必要もある。特に、ある端末の状態をサーバが多数の端末に通知する場合には、多数の端末に対する処理を同時に実行しなければならないため、サーバには瞬間的に過大な負荷がかかる。サーバで行われる処理が遅延すると、プレゼンス機能の実行が停滞する。 In general, a server is not suitable for a process of transmitting information and receiving a response, compared to a process of receiving information and transmitting a response. Specifically, when the server transmits a message including presence information to another device, the server needs to wait for a message response. When there is no message response, the server also needs to perform processing such as message retransmission. In particular, when the server notifies the state of a certain terminal to a large number of terminals, processing for the large number of terminals must be executed at the same time, so that an excessive load is instantaneously applied to the server. When processing performed on the server is delayed, execution of the presence function is stagnant.
本実施形態の通信システム100は、プレゼンス機能を実行するためのサーバとして、データベースサーバ1と複数の中継サーバ2とを備える。データベースサーバ1は、複数の中継サーバ2の各々に接続している。各中継サーバ2は、1または複数の端末3に接続し、且つ中継サーバ2間で互いにメッセージを送受信することもできる。通信システム100は、プレゼンス機能を実行するための処理をデータベースサーバ1および中継サーバ2に分散させ、サーバ間におけるメッセージの送受信において特徴的な処理を行うことで、システム全体、特にデータベースサーバ1にかかる負荷を低下させることができる。通信システム100が実行する処理の詳細については後述する。
The
図2を参照して、データベースサーバ1の電気的構成について説明する。データベースサーバ1は、各端末3のプレゼンス情報を記憶して管理するサーバである。データベースサーバ1は、データベースサーバ1の制御を司るCPU10を備える。CPU10には、ROM11、RAM12、ハードディスクドライブ(以下、「HDD」という。)13、および外部通信I/F14が接続されている。ROM11は、データベースサーバ1を動作させるためのプログラムおよび初期値等を記憶している。RAM12は、制御プログラムで使用される各種の情報を一時的に記憶する。HDD13は、各種の情報を記憶する不揮発性の記憶装置である。外部通信I/F14は、データベースサーバ1をネットワーク8に接続する。
The electrical configuration of the database server 1 will be described with reference to FIG. The database server 1 is a server that stores and manages presence information of each
HDD13には、プレゼンス情報記憶エリア131、端末登録情報記憶エリア132、および識別子記憶エリア133等の各種記憶エリアが設けられている。プレゼンス情報記憶エリア131は、主にプレゼンス情報を記憶する。前述したように、プレゼンス情報は、各端末3の状態を示す情報であり、各端末3のそれぞれに対応付けられてプレゼンス情報が記憶されている。端末登録情報記憶エリア132には、端末3の各々の状態の通知先の端末3(以下、「通知先端末」という。)についての情報が記憶される。具体的には、端末登録情報記憶エリア132には、通知先端末を特定するための通知先情報と、通知先端末に接続している中継サーバ2(以下、「接続サーバ」という場合もある。)を特定するための中継情報とが、他の端末に自身の状態を通知される端末3(以下、「通知元端末」という。)の各々に対応付けて記憶される。識別子記憶エリア133には、中継サーバ2との間で共通して保持される識別子が記憶される。識別子は、中継サーバ2に送信されるメッセージに通知先情報等と共に含まれる。詳細は後述するが、中継サーバ2は、他の中継サーバ2から受信したメッセージが信頼できるメッセージであるか否かを、識別子を用いて判断する。
The
図3を参照して、中継サーバ2の電気的構成について説明する。中継サーバ2は、データベースサーバ1と端末3との間のプレゼンス情報の送受信を中継する。さらに、前述したように、中継サーバ2は、複数の端末3の間にSIPに従ってセッションを確立するSIPプロキシサーバとして動作する。中継サーバ2は、中継サーバ2の制御を司るCPU20を備える。CPU20には、ROM21、RAM22、HDD23、および外部通信I/F24が接続されている。HDD23には、プレゼンス情報記憶エリア231および識別子記憶エリア232が設けられている。中継サーバ2は、端末3とデータベースサーバ1との間で中継するプレゼンス情報をプレゼンス情報記憶エリア231に記憶することができる。識別子記憶エリア232には、データベースサーバ1との間で共通して保持される識別子が記憶される。本実施形態では、データベースサーバ1および中継サーバ2は、通知先端末の各々に対して識別子を付与する。従って、中継サーバ2は、識別子を用いたメッセージの信頼性の判断を確実に行うことができる。しかし、データベースサーバ1および中継サーバ2は、中継サーバ2の各々に対して識別子を付与してもよい。
The electrical configuration of the
図4を参照して、端末3の電気的構成について説明する。端末3は、各種の情報処理を行うことができるパーソナルコンピュータや、テレビ会議に用いられる専用端末等である。端末3は、端末3の制御を司るCPU30を備える。CPU30には、ROM31、RAM32、HDD33、外部通信I/F34、マイク35、スピーカ36、カメラ37、表示装置38、および操作部39が接続されている。マイク35は、端末3が配置された拠点の音声を入力する。スピーカ32は音声を出力する。カメラ37は、端末3が配置された拠点の映像を撮像する。表示装置38は映像を表示する。操作部39は、ユーザが端末3に各種指示を入力するために操作される。
The electrical configuration of the
図5を参照して、通信システム100で行われる処理の流れについて説明する。以下説明する処理は、データベースサーバ1のCPU10、中継サーバ2のCPU20、および端末3のCPU30によって行われる。
With reference to FIG. 5, the flow of processing performed in the
図5に示す例では、複数の端末3のうち、自身の状態が他の端末3に通知される通知元端末を、端末3Aとする。端末3Aの状態を監視する通知先端末を、端末3Bとする。複数の中継サーバ2のうち、端末3Aに接続している中継サーバ2(端末3Aの接続サーバ)を中継サーバ2Aとし、端末3Bの接続サーバを中継サーバ2Bとする。図5では、処理の流れの理解を容易にするため、通知先端末が端末3Bの1つのみである場合を例示する。なお、通知先端末が複数登録されている場合については、図6を参照して後述する。端末3Aおよび端末3Bは、以下の処理を行う前に、接続する中継サーバ2に登録要求「REGISTER」のSIPメッセージを送信して、通信システム100内で通信を行う端末3の1つとして中継サーバ2に登録するための処理を行っている。
In the example illustrated in FIG. 5, a notification source terminal that notifies its own state to another
通知元端末である端末3Aは、状態通知「PUBLISH」のSIPメッセージを、接続している中継サーバ2Aに送信する(S1)。端末3Aは、端末3Aの状態が変化した場合、および前回の「PUBLISH」送信時から所定時間が経過した場合に、「PUBLISH」を中継サーバ2Aに送信する。端末3Aは、「PUBLISH」のSIPメッセージの中に、端末3Aの状態を示すプレゼンス情報を含める。例えば、端末3Aは、ユーザが在籍中である場合には「open」、ユーザが離席中である場合には「closed」を、端末3Aの状態を示すプレゼンス情報としてメッセージ中に含める。中継サーバ2Aは、端末3Aから「PUBLISH」を受信すると、受信したメッセージに含まれるプレゼンス情報を取得し、プレゼンス情報記憶エリア231(図3参照)に記憶する(S2)。中継サーバ2Aは、受信した状態通知をデータベースサーバ1に転送する(S3)。データベースサーバ1は、受信した状態通知に含まれるプレゼンス情報を、端末3Aに対応付けてプレゼンス情報記憶エリア131(図2参照)に記憶する(S4)。
The terminal 3A, which is the notification source terminal, transmits a SIP message of status notification “PUBLISH” to the
データベースサーバ1がS4を実行する時点では、端末3Aの状態を監視する通知先端末は未だ登録されていない。よって、データベースサーバ1は、端末3Aのプレゼンス情報を送信することなく、状態通知に対する応答のみを中継サーバ2Aに返信する(S5)。中継サーバ2Aは、「PUBLISH」に対する応答を端末3Aに返信する(S6)。以上の処理(S1〜S6)によって、データベースサーバ1は端末3Aのプレゼンス情報を記憶する。
At the time when the database server 1 executes S4, the notification destination terminal that monitors the state of the terminal 3A is not yet registered. Therefore, the database server 1 returns only the response to the status notification to the
次いで、端末3Bは、状態取得登録要求「SUBSCRIBE」のSIPメッセージを、接続している中継サーバ2Bに送信する(S7)。「SUBSCRIBE」は、端末3Aの状態をデータベースサーバ1が自身へ通知する旨の登録をデータベースサーバ1に対して要求するために送信されるメッセージである。中継サーバ2Bは、受信した状態取得登録要求をデータベースサーバ1へ転送する(S8)。データベースサーバ1は、端末3Aの状態の通知先が端末3Bであることを示す通知先情報を、端末登録情報記憶エリア132(図2参照)に登録する。データベースサーバ1は、端末3Bに接続している中継サーバ2(端末3Bの接続サーバ)が中継サーバ2Bであることを示す中継情報を、端末登録情報記憶エリア132に登録する(S9)。
Next, the terminal 3B transmits a SIP message of the status acquisition registration request “SUBSCRIBE” to the
データベースサーバ1は、端末3Bに対応する識別子bを生成し、識別子記憶エリア133に記憶する(S10)。前述したように、本実施形態では端末3の各々に対応する識別子を別々に生成するが、識別子を中継サーバ2の各々に対応付けて生成してもよい。データベースサーバ1は、状態取得登録要求に対する応答メッセージに、端末3Aのプレゼンス情報と、生成した識別子bとを含めて、中継サーバ2Bに送信する(S11)。中継サーバ2Bは、受信したメッセージに含まれる識別子bを、端末3Bの識別子として識別子記憶エリア232に記憶する(S12)。その結果、識別子bがデータベースサーバ1と中継サーバ2Bとの間で共有される。
The database server 1 generates an identifier b corresponding to the terminal 3B and stores it in the identifier storage area 133 (S10). As described above, in this embodiment, an identifier corresponding to each of the
中継サーバ2Bは、「SUBSCRIBE」に対する応答を端末3Bに返信する(S13)。中継サーバ2Bは、端末3Aの状態を通知するためのSIPメッセージ「NOTIFY」に、端末3Aのプレゼンス情報を含めて、端末3Bに送信する(S14)。端末3Bは、「NOTIFY」に対する応答を中継サーバ2Bに返信する(S15)。以上の処理(S7〜S15)によって、端末3Bが端末3Aの状態の通知先としてデータベースサーバ1に登録され、且つその時点でデータベースサーバ1によって管理されている端末3Aの状態が、端末3Bに通知される。
The
通知元端末である端末3Aは、端末3Aの状態が変化した場合、または前回の「PUBLISH」送信時から所定時間が経過した場合に、状態通知「PUBLISH」のSIPメッセージを再び中継サーバ2Aに送信する(S16)。中継サーバ2Aは、受信したメッセージに含まれるプレゼンス情報を取得し(S17)、状態通知をデータベースサーバ1に転送する(S18)。データベースサーバ1は、端末3Aのプレゼンス情報を記憶する(S19)。
When the state of the terminal 3A changes or when a predetermined time has elapsed since the last transmission of “PUBLISH”, the terminal 3A that is the notification source terminal transmits the SIP message of the state notification “PUBLISH” to the
データベースサーバ1がS19を実行する時点では、端末3Aの状態の通知先として端末3Bが登録されている。この場合、データベースサーバ1は、状態通知に対する1つの応答メッセージに、通知先情報、中継情報、および識別子を含めて中継サーバ2Aに送信する(S20)。S20における通知先情報は、通知先端末が端末3Bであることを特定するための情報である。中継情報は、端末3Bに中継サーバ2Bが接続していることを特定するための情報である。識別子は、データベースサーバ1と中継サーバ2Bとが共有している、端末3Bに対応する識別子bである。本実施形態のデータベースサーバ1は、識別子を応答メッセージに直接含めている。しかし、通信システム100は、公開鍵暗号方式、チャレンジレスポンス方式等を利用し、識別子を暗号化して応答メッセージに含めてもよい。前述したS11、および後述のS22で送信されるメッセージについても同様である。
At the time when the database server 1 executes S19, the terminal 3B is registered as a notification destination of the state of the terminal 3A. In this case, the database server 1 transmits to the
中継サーバ2Aは、「PUBLISH」に対する応答を端末3Aに返信する(S21)。中継サーバ2Aは、受信したメッセージに含まれる情報から、通知先端末が端末3Bである旨、および端末3Bの接続サーバが中継サーバ2Bである旨を特定する。中継サーバ2Aは、端末3Aのプレゼンス情報を通知するための状態通知「NOTIFY」のSIPメッセージに、S17で取得した端末3Aのプレゼンス情報と、通知先端末が端末3Bであることを示す通知先情報と、識別子bとを含めて、中継サーバ2Bに送信する(S22)。中継サーバ2Aは、端末3Aからデータベースサーバ1に送信されるプレゼンス情報を中継する際に、端末3Aのプレゼンス情報を取得し(S17)、取得したプレゼンス情報を「NOTIFY」に含めることができる(S22)。よって、データベースサーバ1は、S20で送信するメッセージに端末3Aのプレゼンス情報を含める必要がない。その結果、データベースサーバ1は、S20で送信するメッセージのデータ量を低下させることができる。しかし、データベースサーバ1は、S20で送信するメッセージに端末3Aのプレゼンス情報を含めることも可能である。中継サーバ2Aは、データベースサーバ1から受信したメッセージに含まれるプレゼンス情報を、「NOTIFY」に含めてもよい(S22)。
The
中継サーバ2Bは、受信したメッセージに含まれる識別子が、端末3Bに対応付けて記憶している識別子bと一致するか否かを判断し、識別子を確認する(S23)。図5に示す例では、中継サーバ2Bが受信した識別子と、あらかじめ中継サーバ2Bが記憶している識別子とが一致している。よって、中継サーバ2Bは、中継サーバ2Aから受信したメッセージを、データベースサーバ1から送信された情報を含む信頼できるメッセージであると判断する。中継サーバ2Bは、「NOTIFY」に対する応答を中継サーバ2Aに返信する(S24)。中継サーバ2Bは、特定した通知先端末である端末3Bに、端末3Aのプレゼンス情報を含む状態通知「NOTIFY」を送信する(S25)。端末3Bは、「NOTIFY」に対する応答を中継サーバ2Bに返信する(S26)。なお、図示しないが、識別子が一致しない場合、中継サーバ2Bは、「NOTIFY」を端末3Bに送信しない。以上の処理(S20〜26)によって、S16〜S18でデータベースサーバ1に通知された端末3Aの状態が、データベースサーバ1から通知先端末(端末3B)に通知される。
The
次に、図6および図7を参照して、1つの端末3の状態を複数の端末3が監視している場合の処理の流れについて説明する。図6および図7に示す例は、図5に示す例の変形例である。図6および図7に示す例では、通知元端末である端末3A(図5参照)の状態を監視する端末3(端末3Aの通知先端末)として、端末B1、端末B2、端末B3、および端末C1がデータベースサーバ1に登録されている。端末B1〜B3は、中継サーバ2Bに接続している。端末C1は、中継サーバ2Cに接続している。以上の状態で、通知元端末である端末3Aのプレゼンス情報が、中継サーバ2Aを介してデータベースサーバ1に送信された以降の処理を、図6に示す。
Next, with reference to FIG. 6 and FIG. 7, the flow of processing when a plurality of
データベースサーバ1は、端末3Aのプレゼンス情報を受信して登録すると、応答メッセージを中継サーバ2Aに返信する(S31)。端末3Aの状態の通知先が複数存在する場合、データベースサーバ1は、複数の通知先端末の各々についての通知先情報、中継情報、および識別子を、1つの応答メッセージに全て含める。
When the database server 1 receives and registers the presence information of the terminal 3A, it returns a response message to the
図7に、図6のS31で送信される応答メッセージの一例を示す。データベースサーバ1と中継サーバ2との間で送受信されるメッセージは、SIPに準拠する必要はない。本実施形態の通信システム100は、言語およびプラットフォームに依存しないプロトコルの1つであるSOAP(Simple Object Access Protocol)に準拠している。応答メッセージには、各種情報を含めることができる。例えば、図7に示す文字列51は、端末3Aのプレゼンス情報をデータベースサーバ1が保持する有効期限(秒)を示す。
FIG. 7 shows an example of the response message transmitted in S31 of FIG. Messages sent and received between the database server 1 and the
図7に示す文字列52は、通知先情報および中継情報を含む文字列である。詳細には、文字列52の2行目は、文字列52中で特定される通知先端末の接続サーバが中継サーバ2Bであることを示す。文字列52の3〜5行目は、通知先端末が端末B1〜B3であることを示す。文字列53の2行目は、文字列53中で特定される通知先端末の接続サーバが中継サーバ2Cであることを示す。文字列53の3行目は、通知先端末が端末C1であることを示す。以上のように、データベースサーバ1は、複数の通知先端末についての通知先情報および中継情報を、1つの応答メッセージに含める。なお、図7には示していないが、本実施形態に係るデータベースサーバ1は、複数の通知先端末の各々に対応する識別子を応答メッセージに含める(図6のS31参照)。
A
図6の説明に戻る。中継サーバ2Aは、データベースサーバ1から応答メッセージを受信すると、メッセージに含まれる中継情報が示す接続サーバ(中継サーバ2Bおよび中継サーバ2C)を特定する。中継サーバ2Aは、特定した接続サーバに、端末3Aのプレゼンス情報を通知するための状態通知「NOTIFY」を送信する(S32,S33)。中継サーバ2Aは、接続サーバに接続している1または複数の通知先端末についての通知先情報および識別子を、「NOTIFY」のメッセージに含める。なお、中継サーバ2Aは、データベースサーバ1から受信した中継情報が示す接続サーバに自装置が含まれている場合(自装置に接続している通知先端末が存在する場合)には、自装置の外部通信I/F24(図3参照)に、通知先情報および端末3Aのプレゼンス情報を出力する。中継サーバ2Aの外部通信I/F24は、自装置に接続している端末3のうち、通知先情報によって特定される端末3に、端末3Aのプレゼンス情報を送信する。つまり、本発明の「出力ステップ」は、自装置以外の他の中継サーバ2に応答メッセージを送信(出力)する処理と、自装置の外部通信I/F24に通知先情報およびプレゼンス情報を出力する処理とを含む。
Returning to the description of FIG. When the
中継サーバ2Aから「NOTIFY」を受信した中継サーバ2Bは、メッセージに含まれる識別子(b1〜b3)と自身が記憶している識別子とが一致するか否かを確認する(S34)。中継サーバ2Bは、中継サーバ2Aに応答を返信する(S35)。識別子が一致した場合にのみ、中継サーバ2Bは、通知先端末である端末B1、端末B2、および端末B3に、端末3Aのプレゼンス情報を含む状態通知「NOTIFY」を送信する(S36〜S38)。なお、図示しないが、中継サーバ2Bは、端末B1〜B3から「NOTIFY」に対する応答を受信する。中継サーバ2Cも同様に、識別子(c1)を確認し(S41)、中継サーバ2Aに応答を返信する(S42)。中継サーバ2Cは、識別子が一致すれば、「NOTIFY」を端末C1へ送信する(S43)。
The
以上説明したように、第一の実施形態に係る状態通知方法によると、データベースサーバ1は、通知先情報および中継情報を含む一のメッセージを、複数の中継サーバ2のうちのいずれかに送信するだけで(図6のS31、および図7参照)、通知元端末の状態を通知先端末に通知することができる。具体的には、図6に示す例では接続サーバが中継サーバ2Bおよび中継サーバ2Cの2つ存在するが、データベースサーバ1は、中継サーバ2Aにのみメッセージを送信すればよい。通知先端末の数が多い場合でも、データベースサーバ1は、メッセージの送受信を複数の中継サーバ2との間で繰り返す必要がない。従って、通信システム100は、データベースサーバ1にかかる負荷を増加させることなく、通知元端末の状態を通知先端末に通知することができる。
As described above, according to the state notification method according to the first embodiment, the database server 1 transmits one message including notification destination information and relay information to any one of the plurality of
中継サーバ2は、通知元端末の状態通知に対する応答メッセージ(S31)をデータベースサーバ1から受信すると、複数の通知先端末を特定する通知先情報を、1つのメッセージに含めて他の中継サーバに送信することができる(S32)。従って、通信システム100は、データベースサーバ1にかかる負荷を減少させることができるだけでなく、複数の中継サーバ2間でメッセージが送受信される回数も減少させることができる。よって、通信システム100は、システム全体にかかる負荷をさらに減少させることができる。
When the
データベースサーバ1は、通知元端末の状態通知を受信したことに対する1つの応答メッセージに、通知先情報および中継情報を含めることができる(S31)。換言すると、データベースサーバ1は、状態通知に対する応答メッセージと、通知先情報および中継情報を送信するためのメッセージとを別で送信する必要がない。よって、通信システム100は、データベースサーバ1がメッセージを送受信する回数をさらに減少させることができる。その結果、データベースサーバ1にかかる負荷が減少する。
The database server 1 can include the notification destination information and the relay information in one response message for the notification of the state notification of the notification source terminal (S31). In other words, the database server 1 does not need to separately transmit a response message to the state notification and a message for transmitting the notification destination information and the relay information. Therefore, the
中継サーバ2は、通知元端末からデータベースサーバ1に送信されるプレゼンス情報を中継する際に、中継するプレゼンス情報を取得する。中継サーバ2は、他の中継サーバ2に「NOTIFY」を送信する場合には、情報を中継する際に取得したプレゼンス情報を、「NOTIFY」に含める。従って、データベースサーバ1は、中継サーバ2に送信する応答メッセージ(S31)にプレゼンス情報を含める必要がない。よって、通信システム100は、送受信するデータのデータ量を低下させることができる。
The
通知先端末にプレゼンス情報を送信する中継サーバ2は、他の中継サーバ2から受信した「NOTIFY」が、データベースサーバ1から他の中継サーバ2を介して送信された信頼できる情報であることを、識別子を用いて判断することができる。よって、通信システム100は、正確な情報を円滑に送受信することができる。通信システム100は、汎用的なSIPに従って円滑に通信を行うことができる。通信システム100は、汎用的なSIPメッセージを利用して容易にプレゼンス機能を実現することができる。SIPに従って通信を行う既存の通信システムの構成を大幅に変更することなく、容易にプレゼンス機能を実現することができる。中継サーバ2は、複数の端末3間のセッションの確立とプレゼンス機能の制御とを共に実行することができる。よって、通信システム100は、セッションを確立するためのサーバとプレゼンス機能を制御するサーバとを別に備える必要がない。
The
第一の実施形態において、データベースサーバ1が、図5のS9で通知先端末を特定する情報をHDD13に記憶させる処理が、本発明の「登録ステップ」に相当する。端末3が、図5のS1,S16で中継サーバ2を介して状態通知をデータベースサーバ1に送信する処理が、「状態通知ステップ」に相当する。データベースサーバ1が、図5のS20および図6のS31で応答メッセージを送信する処理が、「第一送信ステップ」に相当する。図5のS20および図6のS31で送信される応答メッセージが「一の情報」に相当し、応答メッセージに含まれる通知先情報が「第一通知先情報」に相当する。中継サーバ2が、図6のS32,S33で他の中継サーバ2に「NOTIFY」を送信する処理、および自装置の外部通信I/F24にプレゼンス情報と通知先情報とを出力する処理が、本発明の「出力ステップ」に相当する。図6のS32,S33で送信される「NOTIFY」に含まれる通知先情報が、「第二通知先情報」に相当する。中継サーバ2が、図5のS25および図6のS36〜S38,S43で「NOTIFY」を送信する処理が、「第二送信ステップ」に相当する。
In the first embodiment, the process in which the database server 1 stores information for specifying the notification destination terminal in the
中継サーバ2が図5のS2,S17でプレゼンス情報を取得する処理が、「第一取得ステップ」に相当する。データベースサーバ1および中継サーバ2が、図5のS10,S12で共通の識別子を記憶させる処理が、「記憶制御ステップ」に相当する。図5のS20,S22、および図6のS31,S32,S33でメッセージに含まれる識別子が「識別子情報」に相当する。
The process in which the
図5のS9で通知先端末を特定する情報をHDD13に記憶させるデータベースサーバ1のCPU10が、本発明の「登録手段」として機能する。図5のS1,S16で中継サーバ2を介して状態通知をデータベースサーバ1に送信する端末3のCPU30が、「状態通知手段」として機能する。図5のS20および図6のS31で応答メッセージを送信するデータベースサーバ1のCPU10が、「第一送信手段」として機能する。図6のS32,S33で他の中継サーバ2に「NOTIFY」を送信する処理、および自装置の外部通信I/Fにプレゼンス情報と通知先情報とを出力する処理を行う中継サーバ2のCPU20が、本発明の「出力手段」として機能する。図5のS25および図6のS36〜S38,S43で「NOTIFY」を送信する中継サーバ2のCPU20が「第二送信手段」として機能する。
The
本発明の第二の実施形態に係る通信システムが実行する状態通知方法について、図8を参照して説明する。第二の実施形態に係る通信システムでは、通知先情報および中継情報を含むメッセージ(本発明における「一の情報」)の送信先が、各中継サーバ2の処理情報に基づいて選択される点が、第一の実施形態と異なる。さらに、データベースサーバ1から中継サーバ2に送信されるメッセージに、通知元端末のプレゼンス情報が含まれる点が、第一の実施形態と異なる。上記以外の処理、および各装置の構成は、第一の実施形態における処理および構成と同じである。よって、各装置の構成には、第一の実施形態における構成と同一の番号を付し、構成の説明を省略する。
A state notification method executed by the communication system according to the second embodiment of the present invention will be described with reference to FIG. In the communication system according to the second embodiment, the transmission destination of the message including the notification destination information and the relay information (“one information” in the present invention) is selected based on the processing information of each
図8を参照して、第二の実施形態に係るデータベースサーバ1が行う中継サーバ選択処理について説明する。中継サーバ選択処理は、通知元端末から中継サーバ2を介して送信された状態通知(例えば、図5のS18)をデータベースサーバ1が受信した場合に、データベースサーバ1のCPU10によって実行される。中継サーバ選択処理では、まず、状態通知メッセージが受信される(S101)。受信されたメッセージに含まれる通知元端末のプレゼンス情報が、プレゼンス情報記憶エリア131(図2参照)に記憶される(S102)。通知先端末を特定するための通知先情報と、接続サーバを特定する中継情報と、各通知先端末に対応する識別子とが取得される(S103)。
With reference to FIG. 8, the relay server selection process which the database server 1 which concerns on 2nd embodiment performs is demonstrated. The relay server selection process is executed by the
通信システム内の各中継サーバ2の処理情報が、HDD13から取得される(S104,S105)。詳細には、通知先情報および中継情報を含むメッセージ(以下、「状態通知要求メッセージ」という。)が各中継サーバ2に前回送信された時刻が、処理情報として取得される(S104)。さらに、各中継サーバ2が状態通知要求メッセージを前回受信した際に、各中継サーバ2から他の中継サーバ2および端末3に送信されたメッセージ数Nが、処理情報として取得される(S105)。S104で取得される前回送信時刻、およびS105で取得される前回送信メッセージ数Nは、前回実行された中継サーバ選択処理のS113(後述する)において、HDD13に記憶されている。
Processing information of each
今回送信メッセージ数nが、複数の中継サーバ2の各々について算出される(S106)。今回送信メッセージ数nとは、中継サーバ2に状態通知要求メッセージを送信したと仮定した場合に、中継サーバ2が送信することになるメッセージの数である。具体的には、複数の中継サーバ2のうちの1つである中継サーバ2Aの今回送信メッセージ数nは、中継サーバ2Aに接続している通知先端末の数と、中継サーバ2A以外の中継サーバ2のうち通知先端末が少なくとも1つ接続している中継サーバ2の数(中継サーバ2A以外の接続サーバの数)との和となる。CPU10は、S103で取得した通知先情報および中継情報を用いて、各中継サーバ2の今回送信メッセージ数nを算出する。次いで、S104で取得された前回送信時刻からの経過時間Tが、中継サーバ2毎に算出される(S107)。
The number n of messages transmitted this time is calculated for each of the plurality of relay servers 2 (S106). The number n of messages to be transmitted this time is the number of messages that the
メッセージを1回送信する処理に要する平均時間tを用いて、以下の式(1)の条件を満たす中継サーバ2が存在するか否かが探索される(S108)。平均時間tの情報は、あらかじめHDD13に記憶されている。
(T−N・t)≧0・・・・・(1)
式(1)の条件を満たす中継サーバ2は、メッセージを送信する処理を既に終了していると判断される。式(1)の条件を満たす中継サーバ2(図中、「該当サーバ」と記す)が探索されたか否かが判断される(S109)。条件を満たす中継サーバ2が探索された場合には(S109:YES)、探索された中継サーバ2のうち、今回送信メッセージ数nの値が最小の中継サーバ2が、状態通知要求メッセージの送信先の中継サーバ2として選択される(S110)。
Whether or not there is a
(T−N · t) ≧ 0 (1)
It is determined that the
式(1)の条件を満たす中継サーバ2が探索されなかった場合には(S109:NO)、以下の式(1)によって算出される時間が最小となる中継サーバ2が、状態通知要求メッセージの送信先の中継サーバ2として選択される(S111)。
((N+n)・t−T)・・・・・(2)
式(2)によって算出される時間は、前回のメッセージの送信処理と今回のメッセージの送信処理とを全て終了するまでに要する時間である。なお、S110またはS111の処理で複数の中継サーバ2が候補として存在する場合には、複数の候補のうちの1つを送信先の中継サーバ2として選択すればよい。具体的には、経過時間Tが最も長い中継サーバ2を選択してもよいし、乱数等を用いてランダムに1つの中継サーバ2を選択してもよい。
When the
((N + n) · t−T) (2)
The time calculated by the equation (2) is the time required to finish all the previous message transmission processing and the current message transmission processing. When a plurality of
中継サーバ2が選択されると、選択された中継サーバ2に、S101で受信した状態通知メッセージに含まれるプレゼンス情報と、S103で取得された通知先情報、中継情報、および識別子とを含む状態通知要求メッセージが送信される(S112)。中継サーバ2の各々に対応付けて、S106で算出されたnの値が、前回送信メッセージ数NとしてHDD13に記憶される。現在時刻が、選択された中継サーバ2の前回送信時刻としてHDD13に記憶される(S113)。処理は終了する。なお、第二の実施形態に係る中継サーバ2は、図5のS22および図6のS32,S33で送信する「NOTIFY」に、状態通知要求メッセージに含まれていたプレゼンス情報を含める。
When the
以上説明したように、第二の実施形態に係る状態通知方法によると、データベースサーバ1は、各中継サーバ2が実行している処理の情報に応じて、状態通知要求メッセージの送信先の中継サーバ2を選択することができる。従って、通信システムは、システム内の特定の中継サーバ2に処理負担が偏ることを防止することができる。詳細には、データベースサーバ1は、メッセージの送信処理を最も早く終了させることができると予想される中継サーバ2に、状態通知要求メッセージを送信することができる。よって、通信システムは、プレゼンス情報の通知の遅延を最小限に抑えることができる。第二の実施形態に係る通信システムは、データベースサーバ1から中継サーバ2に送信される状態通知要求メッセージにプレゼンス情報を含めることで、プレゼンス情報を確実に通知先端末に通知することができる。
As described above, according to the status notification method according to the second embodiment, the database server 1 can transmit the status notification request message to the relay server according to the information on the processing executed by each
第二の実施形態において、データベースサーバ1が図8のS104,S105で情報を取得する処理が、本発明の「第二取得ステップ」に相当する。S104で取得される前回送信時刻、およびS105で取得される前回送信メッセージ数Nが、本発明の「処理情報」に相当する。状態通知要求メッセージが本発明の「一の情報」に相当する。データベースサーバ1が図8のS106〜S111で中継サーバ2を選択する処理が「選択ステップ」に相当する。
In the second embodiment, the process in which the database server 1 acquires information in S104 and S105 in FIG. 8 corresponds to the “second acquisition step” of the present invention. The previous transmission time acquired in S104 and the previous transmission message count N acquired in S105 correspond to the “processing information” of the present invention. The status notification request message corresponds to “one information” of the present invention. The process in which the database server 1 selects the
本発明は上記実施形態に限定されることはなく、様々な変形が可能であることは言うまでもない。上記実施形態の通信システムは、一部の情報を送受信する際にSIPメッセージを利用している。しかし、本発明は、SIPメッセージを利用せずに実現することも可能である。中継サーバ2はSIPプロキシサーバとして動作しなくてもよい。
It goes without saying that the present invention is not limited to the above-described embodiment, and various modifications are possible. The communication system of the above-described embodiment uses a SIP message when transmitting / receiving some information. However, the present invention can also be realized without using a SIP message. The
上記実施形態に係る中継サーバ2は、図6のS32で他の中継サーバ2に送信する「NOTIFY」に、複数の通知先端末に関する通知先情報および識別子を全て含める。その結果、通信システムは、複数の中継サーバ2間で送受信されるメッセージの数を減少させることができる。しかし、中継サーバ2は、通知先端末の各々に関する通知先情報および識別子を、別々に他の中継サーバ2に送信してもよい。この場合でも、通信システムは、データベースサーバ1に係る負荷を低下させることができるため、プレゼンス機能を円滑に実行することができる。
The
上記実施形態に係る中継サーバ2は、図6のS32およびS33において、送信先の中継サーバ2に接続している通知先端末についての通知先情報および識別子のみを、「NOTIFY」に含めて送信する。しかし、中継サーバ2は、データベースサーバ1から受信したメッセージに含まれる通知先情報および識別子をそのまま「NOTIFY」に含めてもよい。つまり、本発明に係る「第一通知先情報」の内容と「第二通知先情報」の内容とは同一の内容であってもよい。この場合、「NOTIFY」を受信した中継サーバ2は、自装置に接続している通知先端末を、受信した「NOTIFY」に含まれる通知先情報から特定し、特定した通知先端末にプレゼンス情報を送信すればよい。
In S32 and S33 of FIG. 6, the
第一の実施形態に係る中継サーバ2は、通知元端末から送信されるプレゼンス情報を中継する際にプレゼンス情報を取得する。中継サーバ2は、あらかじめ取得していたプレゼンス情報を、他の中継サーバ2に送信する「NOTIFY」に含める。その結果、中継サーバ2は、送受信されるメッセージのデータ量を低下させることができる。しかし、第一の実施形態に係るデータベースサーバ1は、第二の実施形態と同様に、中継サーバ2に返信する応答メッセージに、通知元端末のプレゼンス情報を含めてもよい。中継サーバ2は、データベースサーバ1から受信した応答メッセージに含まれるプレゼンス情報を、他の中継サーバ2に送信する「NOTIFY」に含めてもよい。
The
第二の実施形態に係るデータベースサーバ1は、各中継サーバ2についての前回送信時刻および前回送信メッセージ数Nを処理情報として取得し、中継サーバ2の1つを選択する。しかし、データベースサーバ1が処理情報として取得する情報、および中継サーバ2の選択方法は、変更が可能である。例えば、データベースサーバ1は、各中継サーバ2に接続している通知先端末の数を、処理情報として取得する。接続している通知先端末の数が少ない程、中継サーバ2にかかる処理負担は低い。従って、データベースサーバ1は、接続している通知先端末の数が最も少ない中継サーバ2を、状態通知要求メッセージの送信先の中継サーバ2として選択してもよい。
The database server 1 according to the second embodiment acquires the previous transmission time and the previous transmission message number N for each
上記実施形態に係るデータベースサーバ1および中継サーバ2は、識別子そのものをメッセージに含めて送信する。しかし、データベースサーバ1および中継サーバ2は、識別子そのものではなく、識別子を特定するための情報をメッセージに含めて送信してもよい。例えば、公開鍵暗号方式、チャレンジレスポンス方式等を用いて識別子を暗号化し、暗号化した符号をメッセージに含めてもよい。その結果、通信システムは、識別子がシステム外に漏れる可能性を低下させることができる。この場合、暗号化された符号が本発明の「識別子情報」に相当する。
The database server 1 and the
1 データベースサーバ
2 中継サーバ
3 端末
10 CPU
13 HDD
20 CPU
23 HDD
30 CPU
100 通信システム
1
13 HDD
20 CPU
23 HDD
30 CPU
100 communication system
Claims (9)
前記データベースサーバが、前記複数の端末の各々の状態の通知先である1以上の通知先端末を特定する情報を記憶手段に登録する登録ステップと、
前記複数の端末のうちの一の端末である通知元端末が、接続している中継サーバを介して、前記通知元端末のプレゼンス情報を前記データベースサーバへ送信する状態通知ステップと、
前記状態通知ステップで送信された前記通知元端末のプレゼンス情報を受信した前記データベースサーバが、前記登録ステップで登録された情報に基づいて、前記通知先端末を特定するための第一通知先情報と、前記通知先端末に接続している中継サーバを特定するための中継情報とを含む一の情報を、前記複数の中継サーバのいずれかに送信する第一送信ステップと、
前記第一送信ステップで送信された前記一の情報を受信した中継サーバが、前記中継情報によって特定される中継サーバに、前記第一通知先情報によって特定される通知先端末を特定する第二通知先情報、および前記通知元端末のプレゼンス情報を出力する出力ステップと、
前記出力ステップで出力された情報を入力した中継サーバが、自身に接続している端末のうち、前記第二通知先情報によって特定される端末に、入力したプレゼンス情報を送信する第二送信ステップと
を備えたことを特徴とする状態通知方法。 A plurality of terminals, a database server capable of managing presence information indicating the state of each of the plurality of terminals, and a plurality of relays for relaying messages between at least one of the plurality of terminals and the database server A state notification method performed in a communication system including a server,
A registration step in which the database server registers in the storage means information identifying one or more notification destination terminals that are notification destinations of the states of the plurality of terminals;
A status notification step in which a notification source terminal that is one of the plurality of terminals transmits presence information of the notification source terminal to the database server via a connected relay server;
The database server that has received the presence information of the notification source terminal transmitted in the status notification step, first notification destination information for specifying the notification destination terminal based on the information registered in the registration step; A first transmission step of transmitting one piece of information including relay information for specifying a relay server connected to the notification destination terminal to any of the plurality of relay servers;
The second notification in which the relay server that has received the one information transmitted in the first transmission step identifies the notification destination terminal identified by the first notification destination information to the relay server identified by the relay information An output step of outputting destination information and presence information of the notification source terminal;
A second transmission step in which the relay server that has input the information output in the output step transmits the input presence information to a terminal identified by the second notification destination information among terminals connected to the relay server; A state notification method characterized by comprising:
前記出力ステップにおいて、前記中継サーバは、前記第一取得ステップで取得した前記プレゼンス情報を出力することを特徴とする請求項3に記載の状態通知方法。 A relay server that relays the presence information of the notification source terminal in the state notification step further includes a first acquisition step of acquiring the presence information to be relayed when relaying the presence information;
The status notification method according to claim 3, wherein, in the output step, the relay server outputs the presence information acquired in the first acquisition step.
前記第二取得ステップで処理情報を取得した前記データベースサーバが、取得した前記処理情報に基づいて、前記通知先情報および前記中継情報を含む前記一の情報を送信する送信先の中継サーバを前記複数の中継サーバの中から選択する選択ステップとをさらに備え、
前記第一送信ステップにおいて、前記データベースサーバは、前記一の情報を、前記選択ステップで選択された中継サーバに送信することを特徴とする請求項1または2に記載の状態通知方法。 A second acquisition step in which the database server that has received the presence information of the notification source terminal transmitted in the state notification step acquires processing information that is information relating to processing executed by each of the plurality of relay servers; ,
The database server that has acquired the processing information in the second acquisition step has a plurality of destination relay servers that transmit the one information including the notification destination information and the relay information based on the acquired processing information. A selection step of selecting from among the relay servers of
The status notification method according to claim 1 or 2, wherein, in the first transmission step, the database server transmits the one information to the relay server selected in the selection step.
前記出力ステップにおいて、前記中継サーバは、受信した前記一の情報に含まれる前記プレゼンス情報を出力することを特徴とする請求項1から3、および5のいずれかに記載の状態通知方法。 In the first transmission step, the database server transmits presence information of the notification source terminal included in the one information,
6. The status notification method according to claim 1, wherein in the output step, the relay server outputs the presence information included in the received one information.
前記第一送信ステップにおいて、前記データベースサーバは、前記中継情報によって特定される中継サーバとの間で共通する識別子に関する識別子情報を、前記一の情報に含めて送信し、
前記出力ステップにおいて、前記第一送信ステップで送信された前記一の情報を受信した中継サーバは、前記一の情報に含まれる前記識別子情報を、前記第二通知先情報および前記プレゼンス情報と共に出力し、
前記第二送信ステップにおいて、前記出力ステップで出力された情報を入力した中継サーバは、入力した前記識別子情報によって示される識別子が前記データベースサーバとの間で共通の識別子である場合、入力したプレゼンス情報を通知先端末に送信することを特徴とする請求項1から6のいずれかに記載の状態通知方法。 Each of the relay servers and the database server further includes a storage control step of storing a common identifier between each of the relay servers and the database server in a storage unit,
In the first transmission step, the database server includes identifier information related to an identifier common to the relay server specified by the relay information, and transmits the identifier information in the one information.
In the output step, the relay server that has received the one information transmitted in the first transmission step outputs the identifier information included in the one information together with the second notification destination information and the presence information. ,
In the second transmission step, if the relay server that has input the information output in the output step has a common identifier with the database server, the input presence information The state notification method according to any one of claims 1 to 6, characterized in that:
前記中継サーバは、前記複数の端末間におけるSIPセッションを確立するSIPプロキシサーバとして動作することを特徴とする請求項1から7のいずれかに記載の状態通知方法。 Each of the plurality of terminals operates as a SIP client that communicates with another terminal in accordance with SIP (Session Initiation Protocol),
The status notification method according to claim 1, wherein the relay server operates as a SIP proxy server that establishes a SIP session between the plurality of terminals.
前記データベースサーバにおいて、前記複数の端末の各々の状態の通知先である1以上の通知先端末を特定する情報を記憶手段に登録する登録手段と、
前記複数の端末のうちの一の端末である通知元端末において、前記通知元端末に接続している中継サーバを介して、前記通知元端末のプレゼンス情報を前記データベースサーバへ送信する状態通知手段と、
前記データベースサーバにおいて、前記状態通知手段によって送信された前記通知元端末のプレゼンス情報を受信した場合に、前記登録手段によって登録された情報に基づいて、前記通知先端末を特定するための第一通知先情報と、前記通知先端末に接続している中継サーバを特定するための中継情報とを含む一の情報を、前記複数の中継サーバのいずれかに送信する第一送信手段と、
前記複数の中継サーバの各々において、前記第一送信手段によって送信された前記一の情報を受信した場合に、前記中継情報によって特定される中継サーバに、前記第一通知先情報によって特定される通知先端末を特定する第二通知先情報、および前記通知元端末のプレゼンス情報を出力する出力手段と、
前記複数の中継サーバの各々において、前記出力手段によって出力された情報を入力した場合に、自身に接続している端末のうち、前記第二通知先情報によって特定される端末に、入力したプレゼンス情報を送信する第二送信手段と
を備えたことを特徴とする通信システム。 A plurality of terminals, a database server capable of managing presence information indicating the state of each of the plurality of terminals, and a plurality of relays for relaying messages between at least one of the plurality of terminals and the database server A communication system comprising a server,
In the database server, registration means for registering in the storage means information identifying one or more notification destination terminals that are notification destinations of the states of the plurality of terminals,
In the notification source terminal that is one of the plurality of terminals, status notification means for transmitting presence information of the notification source terminal to the database server via a relay server connected to the notification source terminal; ,
In the database server, when receiving the presence information of the notification source terminal transmitted by the state notification unit, a first notification for specifying the notification destination terminal based on the information registered by the registration unit First transmission means for transmitting one piece of information including destination information and relay information for specifying a relay server connected to the notification destination terminal to any of the plurality of relay servers;
In each of the plurality of relay servers, when the one information transmitted by the first transmission unit is received, a notification specified by the first notification destination information is sent to the relay server specified by the relay information Output means for outputting second notification destination information for specifying a destination terminal, and presence information of the notification source terminal;
In each of the plurality of relay servers, when the information output by the output unit is input, presence information input to a terminal specified by the second notification destination information among terminals connected to the relay server And a second transmission means for transmitting the communication system.
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010069367A JP5304700B2 (en) | 2010-03-25 | 2010-03-25 | Status notification method and communication system |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
JP2010069367A JP5304700B2 (en) | 2010-03-25 | 2010-03-25 | Status notification method and communication system |
Publications (2)
Publication Number | Publication Date |
---|---|
JP2011205291A JP2011205291A (en) | 2011-10-13 |
JP5304700B2 true JP5304700B2 (en) | 2013-10-02 |
Family
ID=44881487
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
JP2010069367A Expired - Fee Related JP5304700B2 (en) | 2010-03-25 | 2010-03-25 | Status notification method and communication system |
Country Status (1)
Country | Link |
---|---|
JP (1) | JP5304700B2 (en) |
Families Citing this family (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP5706347B2 (en) * | 2012-01-25 | 2015-04-22 | 株式会社東芝 | Redundant control system |
EP3226525B1 (en) * | 2014-11-26 | 2020-04-29 | Ricoh Company, Ltd. | Control system, communication terminal, control device, communication system, control method, and program |
Family Cites Families (3)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
JP4591117B2 (en) * | 2005-03-03 | 2010-12-01 | 株式会社日立製作所 | Presence information distribution system |
JP2009200796A (en) * | 2008-02-21 | 2009-09-03 | Toshiba Corp | Apparatus, method and program for relaying message |
JP5265942B2 (en) * | 2008-02-27 | 2013-08-14 | 日本電信電話株式会社 | Presence information output device and presence information output method |
-
2010
- 2010-03-25 JP JP2010069367A patent/JP5304700B2/en not_active Expired - Fee Related
Also Published As
Publication number | Publication date |
---|---|
JP2011205291A (en) | 2011-10-13 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
US11134144B2 (en) | Additional information on a caller | |
CN101355797B (en) | Method for obtaining user terminal equipment information and communication service function entity | |
US8068866B2 (en) | Group communication server | |
CN101636999B (en) | Methods and apparatus for notifying clients in communication network | |
US8275894B2 (en) | System and method for providing location information of a terminal | |
US8379544B2 (en) | Communications | |
JP2006236346A (en) | Event notification method, portable terminal machine, and server | |
CN107431781B (en) | Information processing apparatus, screen switching method, non-transitory recording medium, and transmission system | |
US8386583B2 (en) | Information distribution system | |
JP2016178419A (en) | Communication controller, communication system, communication method and program | |
JP2017016328A (en) | Code structure and information processing program | |
JP6699862B2 (en) | Remote conference system, remote conference server, remote conference method and program | |
WO2015027721A1 (en) | Terminal status subscription method, apparatus and system | |
JP2016158081A (en) | Channel controller, system and channel control method | |
JP2007300243A (en) | Group speech notice method and mobile station | |
JP5304700B2 (en) | Status notification method and communication system | |
JP2007088862A (en) | Communication terminal | |
JP4901161B2 (en) | Session control system and computer program | |
JP5367477B2 (en) | Service providing system and service providing method | |
JP6369212B2 (en) | Information processing apparatus, information processing system, program, and recording medium | |
JP5512919B2 (en) | Service usage sharing method between different services | |
KR20100060355A (en) | Method for generating group messaging session in communication system and system therefor | |
JP2011022622A (en) | Proxy processor, proxy request device, and proxy process switching system | |
JP5983602B2 (en) | Call linkage system, home control device, call linkage method | |
JP4561791B2 (en) | SIP server, control method thereof, and IP telephone system |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
A621 | Written request for application examination |
Free format text: JAPANESE INTERMEDIATE CODE: A621 Effective date: 20120307 |
|
A977 | Report on retrieval |
Free format text: JAPANESE INTERMEDIATE CODE: A971007 Effective date: 20130524 |
|
TRDD | Decision of grant or rejection written | ||
A01 | Written decision to grant a patent or to grant a registration (utility model) |
Free format text: JAPANESE INTERMEDIATE CODE: A01 Effective date: 20130528 |
|
A61 | First payment of annual fees (during grant procedure) |
Free format text: JAPANESE INTERMEDIATE CODE: A61 Effective date: 20130610 |
|
R150 | Certificate of patent or registration of utility model |
Free format text: JAPANESE INTERMEDIATE CODE: R150 Ref document number: 5304700 Country of ref document: JP Free format text: JAPANESE INTERMEDIATE CODE: R150 |
|
LAPS | Cancellation because of no payment of annual fees |