JP6264908B2 - Communication system and information processing server - Google Patents

Communication system and information processing server Download PDF

Info

Publication number
JP6264908B2
JP6264908B2 JP2014016894A JP2014016894A JP6264908B2 JP 6264908 B2 JP6264908 B2 JP 6264908B2 JP 2014016894 A JP2014016894 A JP 2014016894A JP 2014016894 A JP2014016894 A JP 2014016894A JP 6264908 B2 JP6264908 B2 JP 6264908B2
Authority
JP
Japan
Prior art keywords
information
relay server
server
communication
connection
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.)
Active
Application number
JP2014016894A
Other languages
Japanese (ja)
Other versions
JP2015144351A (en
Inventor
倫 渡邉
倫 渡邉
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Brother Industries Ltd
Original Assignee
Brother Industries Ltd
Priority date (The priority date 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 date listed.)
Filing date
Publication date
Application filed by Brother Industries Ltd filed Critical Brother Industries Ltd
Priority to JP2014016894A priority Critical patent/JP6264908B2/en
Publication of JP2015144351A publication Critical patent/JP2015144351A/en
Application granted granted Critical
Publication of JP6264908B2 publication Critical patent/JP6264908B2/en
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Facsimiles In General (AREA)

Description

本発明は、複数のデバイスとネットワーク通信可能なサーバを備えた通信システム等に関する。   The present invention relates to a communication system including a server capable of network communication with a plurality of devices.

複数のデバイスとネットワーク通信可能なサーバでは、例えば、データベースにおいて管理するべき情報が、複数のデバイス等から送信される。この際、デバイスから送信される情報の通信量が多くなりすぎると、サーバがダウンする虞がある。このようなことに鑑みて、下記特許文献に記載されているように、サーバのダウンに対処するための技術が開発されている。   In a server capable of network communication with a plurality of devices, for example, information to be managed in a database is transmitted from the plurality of devices. At this time, if the amount of information transmitted from the device is too large, the server may go down. In view of such a situation, as described in the following patent document, a technique for coping with server down has been developed.

特開2006−50465号公報JP 2006-50465 A

上記特許文献に記載の技術によれば、サーバのダウンに対処することは可能となるが、サーバと種々のデバイスとの間の通信経路がダウンし、その通信経路が回復した場合には、種々のデバイスから送信された情報が、サーバに集中し、サーバの処理が遅くなる虞がある。本発明は、そのような事情に鑑みてなされたものであり、サーバと種々のデバイスとの間の通信経路がダウンし、その通信経路が回復した場合において、サーバへの負荷の集中を防止するための技術を提供する。   According to the technique described in the above-mentioned patent document, it is possible to cope with the server down, but when the communication path between the server and various devices goes down and the communication path is restored, There is a possibility that the information transmitted from the device will be concentrated on the server and the server processing will be slow. The present invention has been made in view of such circumstances, and prevents concentration of load on the server when the communication path between the server and various devices goes down and the communication path is restored. Provide technology for.

上記課題を解決するために、本明細書の実施形態として記載の通信システムは、複数のデバイスと、前記複数のデバイスとネットワーク通信可能な中継サーバと、データベースとネットワーク通信可能な通信部と、プロセッサとを備える情報処理サーバと、前記データベースと前記中継サーバとクライアント装置とネットワーク通信可能なクライアント要求処理サーバと、を備えた通信システムであって、前記複数のデバイスの各々は、第1タイミングで、第1情報を前記中継サーバに送信することが可能であり、前記中継サーバは、前記第1情報を受信したことに応じて、および、所定のタイミングで前記第1情報を受信できなかったことに応じて、前記第1情報に基づく情報であって、前記複数のデバイス毎の特定の情報である第2情報を、前記データベースが備えられた装置とも、前記クライアント装置とも、前記クライアント要求処理サーバとも異なる装置に備えられたメモリに記憶するために送信することが可能であり、前記プロセッサは、前記中継サーバから送信されて前記メモリに記憶された前記第2情報を、前記メモリから、前記第1タイミングとは異なる第2タイミングで読み出す第2情報読出手段と、前記第2情報読出手段が前記第2情報を読み出したことに応じて、読み出された前記第2情報に基づく情報であって、前記データベースに記憶させるべき第3情報を、前記データベースが備えられた装置に前記通信部を介して送信する第3情報送信手段と、して機能することが可能であり、前記クライアント要求処理サーバのプロセッサは、前記第3情報送信手段によって前記データベースが備えられた装置に送信された前記第3情報を、前記クライアント装置から受信した要求情報に応じて、前記データベースから読み出す第3情報読出手段と、前記第3情報読出手段が前記第3情報を読み出したことに応じて、前記クライアント装置から受信した要求情報に対応する処理を実行する実行手段と、して機能することが可能であることを特徴とする。   In order to solve the above problems, a communication system described as an embodiment of the present specification includes a plurality of devices, a relay server capable of network communication with the plurality of devices, a communication unit capable of network communication with a database, and a processor. An information processing server comprising: a database, the relay server, and a client request processing server capable of network communication with the client device, wherein each of the plurality of devices has a first timing, The first information can be transmitted to the relay server, and the relay server cannot receive the first information in response to receiving the first information and at a predetermined timing. Accordingly, the second information is information based on the first information and is specific information for each of the plurality of devices. , Can be transmitted for storage in a memory provided in a device different from both the device provided with the database, the client device, and the client request processing server, and the processor transmits from the relay server. Second information reading means for reading the second information stored in the memory from the memory at a second timing different from the first timing, and the second information reading means reads the second information. In response, a third information that is based on the read second information and is to be stored in the database is transmitted to the device provided with the database via the communication unit. It is possible to function as information transmission means, and the processor of the client request processing server is configured to transmit the third information transmission. In response to request information received from the client device, the third information reading means for reading the third information transmitted to the device provided with the database by the stage, and the third information reading means It is possible to function as execution means for executing processing corresponding to the request information received from the client device in response to reading out the third information.

本明細書の実施形態として記載の通信システム、および情報処理サーバでは、複数のデバイスの各々から第1タイミングで、第1情報が中継サーバに送信されており、その第1情報の受信、第1情報の不受信に応じて、複数のデバイス毎の特定の情報である第2情報が、中継サーバからメモリに送信される。そして、第2情報が、メモリにおいて記憶されており、情報処理サーバは、第1タイミングとは異なる第2タイミングで、第2情報をメモリから読み出す。また、情報処理サーバは、第2情報に基づく情報であって、データベースに記憶させるべき第3情報を、第2情報を読み出したことに応じて、データベースに送信する。さらに、クライアント要求処理サーバは、クライアント装置から受信した要求情報に応じて、第3情報をデータベースから読み出し、要求情報に対応する処理を実行する。このように、構成された通信システム、および情報処理サーバでは、例えば、中継サーバと複数のデバイスとの間の通信経路がダウンし、その通信経路が回復した場合において、複数のデバイス情報が、メモリに記憶されるが、複数のデバイスから中継サーバに第1情報が送られるタイミングと異なるタイミングで、情報処理サーバは、メモリから第2情報を読み出すため、情報処理サーバの負荷を抑制することが可能となる。また、情報処理サーバからデータベースへは、第2情報に基づく第3情報を、任意のタイミングで送信することが可能であるため、情報処理サーバに負担にならないタイミングで、第3情報をデータベースへ送信することが可能である。このため、本明細書の実施形態として記載の通信システム、および情報処理サーバによれば、情報処理サーバへの負荷の集中を適切に防止することが可能となる。また、クライアント要求処理サーバが、情報処理サーバとも、中継サーバとも、メモリとも別個に備えられている。このため、クライアント要求サーバがクライアント装置からの要求に応じた処理の実行に際して、クライアント要求処理サーバの負荷が過大になったことが原因による障害が発生する虞を低減できる。   In the communication system and the information processing server described as the embodiment of the present specification, the first information is transmitted from each of the plurality of devices to the relay server at the first timing. In response to non-reception of information, second information that is specific information for each of a plurality of devices is transmitted from the relay server to the memory. The second information is stored in the memory, and the information processing server reads the second information from the memory at a second timing different from the first timing. Further, the information processing server transmits the third information that is information based on the second information and should be stored in the database to the database in response to reading the second information. Further, the client request processing server reads the third information from the database in accordance with the request information received from the client device, and executes a process corresponding to the request information. In the communication system and the information processing server thus configured, for example, when the communication path between the relay server and the plurality of devices goes down and the communication path is restored, the plurality of device information is stored in the memory. Although the information processing server reads the second information from the memory at a timing different from the timing at which the first information is sent from a plurality of devices to the relay server, the load on the information processing server can be suppressed. It becomes. Also, since the third information based on the second information can be transmitted from the information processing server to the database at an arbitrary timing, the third information is transmitted to the database at a timing that does not impose a burden on the information processing server. Is possible. For this reason, according to the communication system and the information processing server described as the embodiment of the present specification, it is possible to appropriately prevent the load from being concentrated on the information processing server. Further, the client request processing server is provided separately from the information processing server, the relay server, and the memory. For this reason, when the client request server executes a process in response to a request from the client device, it is possible to reduce the possibility of a failure due to an excessive load on the client request processing server.

また、本明細書の実施形態として記載の通信システムでは、クライアント要求処理サーバが、第3情報をデータベースから読み出したことに応じて、第3情報をクライアント装置に送信することが可能である。これにより、クライアント装置において、第3情報を活用することが可能となる。   Further, in the communication system described as the embodiment of the present specification, the client request processing server can transmit the third information to the client device in response to reading the third information from the database. As a result, the third information can be utilized in the client device.

また、本明細書の実施形態として記載の通信システムでは、中継サーバが、第1情報のうち第1周期で送信される周期情報の受信、若しくは、周期情報の不受信に応じて、デバイスと中継サーバとの間の通信状態に関する第2情報を、メモリに送信することが可能である。また、情報処理サーバが、第1周期と異なる第2周期で、第2情報をメモリから読み出し、周期情報の送信元のデバイスと中継サーバとの間の通信状態に関する第3情報を、データベースに送信することが可能である。さらに、クライアント要求処理サーバが、一のデバイスと中継サーバとの間の通信状態の問い合わせの受信に応じて、一のデバイスと中継サーバとの間の通信状態に関する第3情報を、データベースから読み出し、その第3情報をクライアント装置に送信することが可能である。これにより、クライアント装置において、一のデバイスと中継サーバとの間の通信状態を認知することが可能となる。   Further, in the communication system described as the embodiment of the present specification, the relay server relays with a device in response to reception of periodic information transmitted in the first period of the first information or non-reception of period information. The second information related to the communication state with the server can be transmitted to the memory. In addition, the information processing server reads the second information from the memory at a second period different from the first period, and transmits the third information related to the communication state between the device that is the source of the period information and the relay server to the database. Is possible. Further, the client request processing server reads, from the database, the third information related to the communication state between the one device and the relay server in response to receiving the inquiry about the communication state between the one device and the relay server, The third information can be transmitted to the client device. As a result, the client apparatus can recognize the communication state between the one device and the relay server.

また、本明細書の実施形態として記載の通信システムでは、デバイスが中継サーバに接続確立要求情報を送信することによって、接続確立型プロトコルに従った接続が、接続確立要求情報の送信元デバイスと中継サーバとの間で確立可能であり、デバイスは、第1情報のうち、接続確立型プロトコルに従った接続を維持するための維持情報を第1周期で送信することが可能である。そして、中継サーバは、維持情報の受信に応じて、維持情報の送信元デバイスと中継サーバとの間の接続が維持されていることを示す第2情報を、メモリに送信し、維持情報の不受信に応じて、維持情報を取得できなかったデバイスと中継サーバとの間の接続が維持されていないことを示す第2情報を、メモリに送信することが可能である。また、情報処理サーバは、第2情報をメモリから第2周期で読み出し、デバイスと中継サーバとの間に確立された接続の維持に関する第3情報を、データベースに送信することが可能である。これにより、適切にデバイスと中継サーバとの接続が維持されているか否かを判定できる。   Further, in the communication system described as the embodiment of the present specification, the connection according to the connection establishment type protocol is relayed between the connection establishment request information transmission source device and the device by transmitting the connection establishment request information to the relay server. The device can be established with the server, and the device can transmit the maintenance information for maintaining the connection according to the connection establishment type protocol among the first information in the first period. In response to the reception of the maintenance information, the relay server transmits second information indicating that the connection between the maintenance information transmission source device and the relay server is maintained to the memory, and the maintenance information In response to the reception, the second information indicating that the connection between the device for which the maintenance information could not be acquired and the relay server is not maintained can be transmitted to the memory. Further, the information processing server can read the second information from the memory in the second period, and transmit the third information related to maintaining the connection established between the device and the relay server to the database. Thereby, it can be determined whether or not the connection between the device and the relay server is appropriately maintained.

また、本明細書の実施形態として記載の通信システムでは、中継サーバが、維持情報の送信元デバイスと中継サーバとの間の接続が維持されていることを示す維持確認情報を、データベースに送信することが可能である。また、デバイスは、維持情報を送信した後、維持確認情報の不受信に応じて、中継サーバに接続確立要求情報と維持情報とを送信することが可能である。そして、中継サーバは、維持情報を取得できなかったデバイスと中継サーバとの間の接続が維持されていないことを示す第2情報を送信した後に、維持情報を取得できなかったデバイスから接続確立要求情報と維持情報とを受信したことに応じて、維持情報の送信元デバイスと中継サーバとの間の接続が維持されていることを示す第2情報を、メモリに送信することが可能である。これにより、デバイスと中継サーバとの再接続を適切にデータベースに記憶させることが可能となる。   In the communication system described as the embodiment of the present specification, the relay server transmits maintenance confirmation information indicating that the connection between the maintenance information transmission source device and the relay server is maintained to the database. It is possible. In addition, after transmitting the maintenance information, the device can transmit the connection establishment request information and the maintenance information to the relay server in response to the non-reception of the maintenance confirmation information. The relay server transmits the second information indicating that the connection between the device for which maintenance information cannot be acquired and the relay server is not maintained, and then requests connection establishment from the device for which maintenance information has not been acquired. In response to receiving the information and the maintenance information, the second information indicating that the connection between the maintenance information transmission source device and the relay server is maintained can be transmitted to the memory. This makes it possible to appropriately store the reconnection between the device and the relay server in the database.

また、本明細書の実施形態として記載の通信システムでは、クライアント要求処理サーバが、一のデバイスと中継サーバとの間の通信状態に関する第3情報をクライアント装置に送信した後に、一のデバイスへの指令をクライアント装置から受信したことに応じて、一のデバイスへの指令を中継サーバに送信することが可能であり、中継サーバは、一のデバイスとの間の接続が維持されている状態で一のデバイスへの指令を受信したことに応じて、一のデバイスへ指令を送信することが可能である。これにより、クライアント装置からの指令を、確実に一のデバイスに送信することが可能となる。   In the communication system described as the embodiment of the present specification, the client request processing server transmits the third information related to the communication state between the one device and the relay server to the client device, and then transmits the third information to the one device. In response to receiving the command from the client device, it is possible to send a command to one device to the relay server, and the relay server is connected to the one device while maintaining a connection. The command can be transmitted to one device in response to receiving the command to the other device. Thereby, it is possible to reliably transmit a command from the client apparatus to one device.

また、本明細書の実施形態として記載の通信システムでは、デバイスが、クライアント装置からの指令を中継サーバから受信したことに応じて、その指令に対する応答情報を、第1情報として中継サーバへ送信することが可能である。また、中継サーバは、デバイスへの指令を送信した後に、一のデバイスから応答情報を受信したことに応じて、応答情報を第2情報としてメモリに記憶することが可能であり、応答情報を第3情報として、データベースに送信することが可能である。さらに、クライアント要求処理サーバは、一のデバイスへの指令をクライアント装置から受信した後に、応答情報の読出に応じて、応答情報をクライアント装置に送信することが可能である。これにより、クライアント装置は、指令の送信確認を行うことが可能となる。   Further, in the communication system described as the embodiment of the present specification, in response to receiving a command from the client device from the relay server, the device transmits response information to the command to the relay server as first information. It is possible. Further, the relay server can store the response information in the memory as the second information in response to receiving the response information from the one device after transmitting the command to the device. 3 information can be sent to the database. Furthermore, the client request processing server can transmit the response information to the client device in response to reading of the response information after receiving a command for one device from the client device. As a result, the client device can confirm transmission of the command.

また、本明細書の実施形態として記載の通信システムでは、メモリが、情報処理サーバとも中継サーバとも異なる装置に設けられており、情報処理サーバは、メモリを備える装置から第2情報を読み出すことが可能である。これにより、第2情報を記憶するメモリと、第3情報をデータベースに送信する情報処理サーバとを別々の装置とすることが可能となり、情報処理サーバの負担を軽減することが可能となる。   In the communication system described as the embodiment of the present specification, the memory is provided in a device different from the information processing server and the relay server, and the information processing server can read the second information from the device including the memory. Is possible. As a result, the memory for storing the second information and the information processing server for transmitting the third information to the database can be provided as separate devices, and the burden on the information processing server can be reduced.

また、本明細書の実施形態として記載の通信システムは、複数の中継サーバと複数のデバイスとを備え、複数の中継サーバと複数のデバイスとのネットワーク通信を、ロードバランサによって、複数の中継サーバのいずれかに分散することが可能である。これにより、中継サーバの負担を軽減することが可能となる。   In addition, the communication system described as an embodiment of the present specification includes a plurality of relay servers and a plurality of devices, and network communication between the plurality of relay servers and the plurality of devices is performed by a load balancer. It is possible to disperse to either. As a result, the burden on the relay server can be reduced.

また、本明細書の実施形態として記載の通信システムでは、接続確立型プロトコルを、XMPP over BOSHとし、接続確立要求情報をXMPPセッション確立要求情報とし、維持情報をXMPPコネクション確立要求情報とすることが可能である。これにより、プロトコルおよび各種情報が明確となる。   In the communication system described as an embodiment of the present specification, the connection establishment type protocol may be XMPP over BOSH, the connection establishment request information may be XMPP session establishment request information, and the maintenance information may be XMPP connection establishment request information. Is possible. This makes the protocol and various information clear.

また、本明細書の実施形態として記載の情報処理サーバは、デバイス情報を、デバイスと中継サーバとの間で通信が確立していることを示す情報と、デバイスと中継サーバとの間で通信が確立していないことを示す情報とに区分けし、区分けされた情報を第3情報として、データベースに送信することが可能である。これにより、データベースに送信される第3情報の情報量を少なくすることが可能となり、情報処理サーバの負担を軽減することが可能となる。   In addition, the information processing server described as an embodiment of the present specification can communicate device information between information indicating that communication is established between the device and the relay server, and communication between the device and the relay server. It is possible to classify information into information indicating that it has not been established, and transmit the classified information as third information to the database. Thereby, it becomes possible to reduce the information amount of the 3rd information transmitted to a database, and it becomes possible to reduce the burden of an information processing server.

また、本明細書の実施形態として記載の情報処理サーバでは、所定数の第2情報を所定数以下の第3情報に処理することが可能である。これにより、データベースに送信される第3情報の情報量を少なくすることが可能となり、情報処理サーバの負担を軽減することが可能となる。   Further, in the information processing server described as the embodiment of the present specification, it is possible to process a predetermined number of pieces of second information into a predetermined number of pieces of third information or less. Thereby, it becomes possible to reduce the information amount of the 3rd information transmitted to a database, and it becomes possible to reduce the burden of an information processing server.

また、本明細書の実施形態として記載の情報処理サーバは、所定時間毎にメモリから第2情報を読み出す際、第2情報の処理時間が設定時間以上である場合には、メモリから第2情報が読み出されてから第2周期における次の周期となる前に、メモリから第2情報を読み出すことが可能である。これにより、第2情報の処理時間が長くなった場合であっても、第2情報の取得のタイミングを、ある程度、一定に保つことが可能となる。   In addition, when the information processing server described as the embodiment of the present specification reads the second information from the memory every predetermined time, the second information is read from the memory if the processing time of the second information is equal to or longer than the set time. It is possible to read the second information from the memory before the next cycle in the second cycle after the read. As a result, even when the processing time of the second information becomes longer, the acquisition timing of the second information can be kept constant to some extent.

また、本明細書の実施形態として記載の情報処理サーバは、読み出した所定数の第2情報のなかに、同一のデバイスに関する情報が存在する場合に、該同一のデバイスに関する情報のうちの最新の情報をデータベースに送信し、該同一のデバイスに関する情報のうちの最新の情報以外の情報をデータベースに送信しないことが可能である。これにより、データベースへ送信される情報量を減らすことが可能となり、情報処理サーバの負担を軽減することが可能となる。   In addition, the information processing server described as the embodiment of the present specification, when the information related to the same device exists in the read second information of the predetermined number, the latest information of the information related to the same device It is possible to send information to the database and not send information other than the latest information of the information about the same device to the database. As a result, the amount of information transmitted to the database can be reduced, and the burden on the information processing server can be reduced.

通信システム1のブロック図である。1 is a block diagram of a communication system 1. FIG. 従来の通信システム100のブロック図である。1 is a block diagram of a conventional communication system 100. FIG. 通信システム100のブロック図である。1 is a block diagram of a communication system 100. FIG. 通信システム1の動作を示すシーケンス図である。3 is a sequence diagram showing an operation of the communication system 1. FIG. 通信システム1の動作を示すシーケンス図である。3 is a sequence diagram showing an operation of the communication system 1. FIG. 複数のデバイス情報を概念的に示す図である。It is a figure which shows several device information notionally. 情報処理サーバ10の動作フローチャートを示す図である。FIG. 3 is a diagram illustrating an operation flowchart of the information processing server 10. 情報処理サーバ10の動作フローチャートを示す図である。FIG. 3 is a diagram illustrating an operation flowchart of the information processing server 10. ウェブサーバ30の動作フローチャートを示す図である。It is a figure which shows the operation | movement flowchart of the web server. ウェブサーバ30の動作フローチャートを示す図である。It is a figure which shows the operation | movement flowchart of the web server.

<実施形態>
図1に、本願に係る実施形態として例示される通信システム1のブロック図を示す。通信システム1は、情報処理サーバ10、ウェブサーバ30、中継サーバ50,70、ロードバランサ80、MFP(Multifunction Peripheralの略)82,84,86、PC(Personal Computerの略)88、サービスサーバ90、キュー92、データベース96、インターネット98を備える。
<Embodiment>
FIG. 1 shows a block diagram of a communication system 1 exemplified as an embodiment according to the present application. The communication system 1 includes an information processing server 10, a web server 30, relay servers 50 and 70, a load balancer 80, an MFP (abbreviation of multifunction peripheral) 82, 84, 86, a PC (abbreviation of personal computer) 88, a service server 90, A queue 92, a database 96, and the Internet 98 are provided.

MFP82,84,86は、プリンタ機能、スキャナ機能、コピー機能、ファクシミリ機能などを備える多機能周辺装置であり、ルータ87を介してインターネット98に接続されている。PC88は、ルータ89、および、インターネット98を介して、サービスサーバ90に各種指令等を送信する。サービスサーバ90は、インターネット98を介して、ウェブサーバ30に各種指令等を送信する。キュー92は、インターネット98を介して、中継サーバ50,70から送信された各種情報を記憶する。メモリを備えた装置である。本明細書では、キューが備えるメモリのことを指して「キュー」という文言を使う場合もある。データベース96は、インターネット98を介して、キュー92から取得した各種情報を記憶するメモリを備えた装置である。本明細書では、データベースが備えるメモリのことを指して「データベース」という文言を使う場合もある。なお、キュー92やデータベース96が備えるメモリは、RAM(Random Access Memoryの略)、フラッシュメモリー、HDD(ハードディスクの略)のいずれでもよく、これらが組み合わされて構成されていてもよい。   The MFPs 82, 84, and 86 are multifunction peripheral devices having a printer function, a scanner function, a copy function, a facsimile function, and the like, and are connected to the Internet 98 via a router 87. The PC 88 transmits various commands to the service server 90 via the router 89 and the Internet 98. The service server 90 transmits various commands and the like to the web server 30 via the Internet 98. The queue 92 stores various types of information transmitted from the relay servers 50 and 70 via the Internet 98. A device provided with a memory. In this specification, the term “queue” may be used to refer to the memory included in the queue. The database 96 is a device having a memory for storing various information acquired from the queue 92 via the Internet 98. In this specification, the term “database” may be used to refer to the memory provided in the database. Note that the memory included in the queue 92 and the database 96 may be any of RAM (abbreviation of random access memory), flash memory, and HDD (abbreviation of hard disk), or a combination of these.

情報処理サーバ10は、CPU(Central Processing Unitの略)12、記憶部14、ネットワークI/F16を主に備えている。これらの構成要素は、入出力ポート18を介して互いに通信可能とされている。   The information processing server 10 mainly includes a CPU (abbreviation of central processing unit) 12, a storage unit 14, and a network I / F 16. These components can communicate with each other via the input / output port 18.

CPU12は、記憶部14内のプログラム20に従って処理を実行する。以降、通信プログラム20aやオペレーティングシステム20bなど、プログラムを実行するCPU12のことを、単にプログラム名でも記載する場合がある。例えば、「通信プログラム20aが」という記載は、「通信プログラム20aを実行するCPU12が」ということを意味する場合がある。なお、記憶部14は、RAM(Random Access Memoryの略)、ROM(Read Only Memoryの略)、フラッシュメモリー、HDD(ハードディスクの略)、CPU12が備えるバッファなどが組み合わされて構成されている。   The CPU 12 executes processing according to the program 20 in the storage unit 14. Hereinafter, the CPU 12 that executes a program such as the communication program 20a or the operating system 20b may be simply described as a program name. For example, the description “communication program 20a” may mean “the CPU 12 executing the communication program 20a”. The storage unit 14 is configured by combining a RAM (abbreviation of random access memory), a ROM (abbreviation of read only memory), a flash memory, an HDD (abbreviation of hard disk), a buffer provided in the CPU 12, and the like.

記憶部14は、プログラム20を記憶する。プログラム20は、通信プログラム20a、オペレーティングシステム20b(OS20bと略して記載する場合もある)を含む。通信プログラム20aは、キュー92、データベース96と通信を行うためのプログラムである。記憶部14は、コンピュータが読み取り可能なストレージ媒体であってよい。コンピュータが読み取り可能なストレージ媒体とは、ROM、RAM、フラッシュメモリー、ハードディスクなどのnon−transitoryな媒体である。インターネット上のサーバなどからダウンロードされるプログラムを搬送する電気信号は、non−transitoryな媒体には含まれない。   The storage unit 14 stores the program 20. The program 20 includes a communication program 20a and an operating system 20b (sometimes abbreviated as OS 20b). The communication program 20 a is a program for communicating with the queue 92 and the database 96. The storage unit 14 may be a computer-readable storage medium. The computer-readable storage medium is a non-transitory medium such as a ROM, a RAM, a flash memory, or a hard disk. An electric signal carrying a program downloaded from a server on the Internet is not included in a non-transitory medium.

オペレーティングシステム20bは、通信プログラム20aに利用される基本的な機能を提供するプログラムである。OS20bは、記憶部14などを制御するプログラムなどを含む。   The operating system 20b is a program that provides basic functions used for the communication program 20a. The OS 20b includes a program for controlling the storage unit 14 and the like.

また、記憶部14は、データ記憶領域14aを備える。データ記憶領域14aは、各種データ等を記憶する領域である。通信プログラム20aは、OS20bを介して、各種データ等をデータ記憶領域14aに記憶させるためのデータを出力する。若しくは、通信プログラム20aは、OS20bを介して、データ記憶領域14aが記憶している各種データ等を取得する。   The storage unit 14 includes a data storage area 14a. The data storage area 14a is an area for storing various data. The communication program 20a outputs data for storing various data and the like in the data storage area 14a via the OS 20b. Alternatively, the communication program 20a acquires various data stored in the data storage area 14a via the OS 20b.

ネットワークI/F16は、インターネット98を介して外部装置と通信するものであり、インターネット98を介して、キュー92および、データベース96に接続される。これにより、情報処理サーバ10は、キュー92および、データベース96と各種データの送受信を行うことが可能である。   The network I / F 16 communicates with an external device via the Internet 98, and is connected to the queue 92 and the database 96 via the Internet 98. Thereby, the information processing server 10 can transmit / receive various data to / from the queue 92 and the database 96.

また、ウェブサーバ30は、CPU32、記憶部34、ネットワークI/F36を主に備えている。これらの構成要素は、入出力ポート38を介して互いに通信可能とされている。   The web server 30 mainly includes a CPU 32, a storage unit 34, and a network I / F 36. These components can communicate with each other via the input / output port 38.

CPU32は、記憶部34内のプログラム40に従って処理を実行する。以降、通信プログラム40aやオペレーティングシステム40bなど、プログラムを実行するCPU32のことを、単にプログラム名でも記載する場合がある。例えば、「通信プログラム40aが」という記載は、「通信プログラム40aを実行するCPU32が」ということを意味する場合がある。なお、記憶部34は、RAM、ROM、フラッシュメモリー、HDD、CPU32が備えるバッファなどが組み合わされて構成されている。   The CPU 32 executes processing according to the program 40 in the storage unit 34. Hereinafter, the CPU 32 that executes a program such as the communication program 40a and the operating system 40b may be simply described by a program name. For example, the description “communication program 40a” may mean “the CPU 32 executing the communication program 40a”. The storage unit 34 is configured by combining a RAM, a ROM, a flash memory, an HDD, a buffer included in the CPU 32, and the like.

記憶部34は、プログラム40を記憶する。プログラム40は、通信プログラム40a、オペレーティングシステム40b(OS40bと略して記載する場合もある)を含む。通信プログラム40aは、MFP82,84,86、サービスサーバ90および、データベース96と通信を行うためのプログラムである。記憶部34は、コンピュータが読み取り可能なストレージ媒体であってよい。   The storage unit 34 stores the program 40. The program 40 includes a communication program 40a and an operating system 40b (sometimes abbreviated as OS 40b). The communication program 40 a is a program for communicating with the MFPs 82, 84, 86, the service server 90, and the database 96. The storage unit 34 may be a computer-readable storage medium.

オペレーティングシステム40bは、通信プログラム40aに利用される基本的な機能を提供するプログラムである。OS40bは、記憶部34などを制御するプログラムなどを含む。   The operating system 40b is a program that provides basic functions used for the communication program 40a. The OS 40b includes a program for controlling the storage unit 34 and the like.

また、記憶部34は、データ記憶領域34aを備える。データ記憶領域34aは、各種データ等を記憶する領域である。通信プログラム40aは、OS40bを介して、各種データ等をデータ記憶領域34aに記憶させるためのデータを出力する。若しくは、通信プログラム40aは、OS40bを介して、データ記憶領域34aが記憶している各種データ等を取得する。   The storage unit 34 includes a data storage area 34a. The data storage area 34a is an area for storing various data. The communication program 40a outputs data for storing various data and the like in the data storage area 34a via the OS 40b. Alternatively, the communication program 40a acquires various data stored in the data storage area 34a via the OS 40b.

ネットワークI/F36は、インターネット98を介して外部装置と通信するものであり、インターネット98を介して、MFP82,84,86、サービスサーバ90および、データベース96に接続される。これにより、ウェブサーバ30は、MFP82,84,86、サービスサーバ90および、データベース96と各種データの送受信を行うことが可能である。   The network I / F 36 communicates with an external device via the Internet 98, and is connected to the MFPs 82, 84, 86, the service server 90, and the database 96 via the Internet 98. As a result, the web server 30 can send and receive various data to and from the MFPs 82, 84, 86, the service server 90, and the database 96.

また、中継サーバ50,70は、同じ構成であるため、中継サーバ50について説明する。中継サーバ50は、CPU52、記憶部54、ネットワークI/F56を主に備えている。これらの構成要素は、入出力ポート58を介して互いに通信可能とされている。   Moreover, since the relay servers 50 and 70 have the same configuration, the relay server 50 will be described. The relay server 50 mainly includes a CPU 52, a storage unit 54, and a network I / F 56. These components can communicate with each other via the input / output port 58.

CPU52は、記憶部54内のプログラム60に従って処理を実行する。以降、通信プログラム60aやオペレーティングシステム60bなど、プログラムを実行するCPU52のことを、単にプログラム名でも記載する場合がある。例えば、「通信プログラム60aが」という記載は、「通信プログラム60aを実行するCPU52が」ということを意味する場合がある。なお、記憶部54は、RAM、ROM、フラッシュメモリー、HDD、CPU32が備えるバッファなどが組み合わされて構成されている。   The CPU 52 executes processing according to the program 60 in the storage unit 54. Hereinafter, the CPU 52 that executes a program such as the communication program 60a and the operating system 60b may be simply described by a program name. For example, the description “communication program 60a” may mean “the CPU 52 that executes the communication program 60a”. The storage unit 54 is configured by combining a RAM, a ROM, a flash memory, an HDD, a buffer included in the CPU 32, and the like.

記憶部54は、プログラム60を記憶する。プログラム60は、通信プログラム60a、オペレーティングシステム60b(OS60bと略して記載する場合もある)を含む。通信プログラム60aは、ウェブサーバ30、MFP82,84,86および、キュー92と通信を行うためのプログラムである。記憶部54は、コンピュータが読み取り可能なストレージ媒体であってよい。   The storage unit 54 stores the program 60. The program 60 includes a communication program 60a and an operating system 60b (sometimes abbreviated as OS 60b). The communication program 60 a is a program for communicating with the web server 30, the MFPs 82, 84, 86 and the queue 92. The storage unit 54 may be a computer-readable storage medium.

オペレーティングシステム60bは、通信プログラム60aに利用される基本的な機能を提供するプログラムである。OS60bは、記憶部54などを制御するプログラムなどを含む。   The operating system 60b is a program that provides basic functions used for the communication program 60a. The OS 60b includes a program for controlling the storage unit 54 and the like.

また、記憶部54は、データ記憶領域54aを備える。データ記憶領域54aは、各種データ等を記憶する領域である。通信プログラム60aは、OS60bを介して、各種データ等をデータ記憶領域54aに記憶させるためのデータを出力する。若しくは、通信プログラム60aは、OS60bを介して、データ記憶領域54aが記憶している各種データ等を取得する。   The storage unit 54 includes a data storage area 54a. The data storage area 54a is an area for storing various data. The communication program 60a outputs data for storing various data and the like in the data storage area 54a via the OS 60b. Alternatively, the communication program 60a acquires various data stored in the data storage area 54a via the OS 60b.

ネットワークI/F56は、インターネット98を介して外部装置と通信するものであり、インターネット98を介して、ウェブサーバ30、MFP82,84,86および、キュー92に接続される。これにより、中継サーバ50は、ウェブサーバ30、MFP82,84,86および、キュー92と各種データの送受信を行うことが可能である。ただし、ネットワークI/F56は、ロードバランサ80を介して、インターネット98に接続されている。ロードバランサ80は、中継サーバ50,70とMFP82,84,86との間の通信を、中継サーバ50,70の各々に分散するものである。これにより、2台の中継サーバ50,70に、MFP82,84,86との間の通信の負荷を分散することが可能となる。なお、中継サーバ50、70は、ロードバランサ80を介して大量のMFPとの間の通信を行うことが可能である。例えば、数千台のMFPとの間の通信を行うことが可能である。   The network I / F 56 communicates with an external device via the Internet 98, and is connected to the web server 30, MFPs 82, 84, 86, and the queue 92 via the Internet 98. As a result, the relay server 50 can transmit and receive various data to and from the web server 30, the MFPs 82, 84, 86, and the queue 92. However, the network I / F 56 is connected to the Internet 98 via the load balancer 80. The load balancer 80 distributes communication between the relay servers 50 and 70 and the MFPs 82, 84 and 86 to each of the relay servers 50 and 70. Accordingly, it is possible to distribute the communication load between the MFPs 82, 84, 86 to the two relay servers 50, 70. Note that the relay servers 50 and 70 can communicate with a large number of MFPs via the load balancer 80. For example, communication with thousands of MFPs is possible.

ここで、「データ」および「情報」の文言の定義を説明する。本明細書では、「データ」と「情報」では「情報」を「データ」の上位概念として用いている。そのため、「Aデータ」を「A情報」と言い換えてもよい。また、「情報」は、「データ」としての形式(例えば、テキスト形式、バイナリ形式、フラグ形式等)が異なっていても、同一の意味内容と認識される限り、同一の情報として取り扱われる。例えば、印刷部数が2部であることを示す情報として装置が扱う限り、"COPY=2"というテキスト形式のデータと、"10"というバイナリ形式のデータとは、同じ情報である。但し、上記の「データ」及び「情報」の区別は厳密なものではなく、例外的な取り扱いも許容される。   Here, the definition of the words “data” and “information” will be described. In this specification, “data” and “information” use “information” as a superordinate concept of “data”. Therefore, “A data” may be rephrased as “A information”. Further, “information” is treated as the same information as long as it is recognized as the same meaning content even if the format as “data” (for example, text format, binary format, flag format, etc.) is different. For example, as long as the apparatus handles the information indicating that the number of copies is two, the text format data “COPY = 2” and the binary format data “10” are the same information. However, the distinction between the above “data” and “information” is not strict, and exceptional handling is allowed.

<従来の通信システムでのデバイス情報の管理>
従来の通信システムでは、上記通信システム1と異なり、情報処理サーバ10およびキュー92が設けられていなかった。このため、例えば、中継サーバ50とロードバランサ80との間で通信障害が発生した場合に、中継サーバ50とウェブサーバ30との間、および、ウェブサーバ30とデータベース96との間で、大量のデータの送受信が行われ、通信システムでのデータの送受信が不能となる虞があった。
<Management of device information in a conventional communication system>
In the conventional communication system, unlike the communication system 1, the information processing server 10 and the queue 92 are not provided. For this reason, for example, when a communication failure occurs between the relay server 50 and the load balancer 80, a large amount of data is generated between the relay server 50 and the web server 30 and between the web server 30 and the database 96. There is a possibility that data transmission / reception is performed and data transmission / reception in the communication system becomes impossible.

具体的には、図2に示すように、従来の通信システム100では、MFP82,84,86と中継サーバ50,70とは、ロードバランサ80を介して、データの送受信が行われる。また、中継サーバ50,70とウェブサーバ30との間で、データの送受信が行われ、ウェブサーバ30とデータベース96との間で、データの送受信が行われる。さらに、PC88とウェブサーバ30とは、サービスサーバ90を介して、データの送受信が行われる。   Specifically, as shown in FIG. 2, in the conventional communication system 100, the MFPs 82, 84, 86 and the relay servers 50, 70 transmit / receive data via the load balancer 80. Further, data transmission / reception is performed between the relay servers 50 and 70 and the web server 30, and data transmission / reception is performed between the web server 30 and the database 96. Furthermore, data transmission / reception is performed between the PC 88 and the web server 30 via the service server 90.

なお、MFP82,84,86と中継サーバ50,70との間のデータの送受信は、接続確立型のプロトコル、具体的には、XMPP over BOSH(eXtensible Messaging and Presence Protocol Over Bidirectional-streams Over Synchronous HTTPの略)に従って行われる。また、中継サーバ50,70とウェブサーバ30との間のデータの送受信は、HTTP(Hypertext Transfer Protocol)に従って行われる。   Note that data transmission / reception between the MFPs 82, 84, 86 and the relay servers 50, 70 is a connection establishment type protocol, specifically, XMPP over BOSH (eXtensible Messaging and Presence Protocol Over Bidirectional-streams Over Synchronous HTTP). (Omitted). Data transmission / reception between the relay servers 50 and 70 and the web server 30 is performed in accordance with HTTP (Hypertext Transfer Protocol).

通信システム100では、図2に示す構成において、MFP82,84,86と中継サーバ50,70との間での通信状態に関する情報(以下、「デバイス情報」と記載する場合がある)が、データベース96において管理されている。詳しくは、中継サーバ50,70は、デバイス情報を書き換えるべきタイミングで、デバイス情報をウェブサーバ30に送信する。例えば、MFP82と中継サーバ50との間でデータの送受信が可能な状態(以下、「オンライン状態」と記載する場合がある)から、MFP82と中継サーバ50との間でデータの送受信が不能な状態(以下、「オフライン状態」と記載する場合がある)になったと中継サーバ50が判断した場合には、中継サーバ50からウェブサーバ30に、MFP82の通信状態がオフライン状態である旨の情報が送信される。また、MFP82と中継サーバ50との間でオフライン状態からオンライン状態なった、と中継サーバ50が判断した場合には、中継サーバ50からウェブサーバ30に、オンライン状態である旨の情報が送信される。また、サービスサーバ90からウェブサーバ30を介して中継サーバに送信された要求にしたがって、中継サーバがMFP82に指示を送信し、MFP82から指示に従った応答情報が返信された場合には、中継サーバ50からウェブサーバ30に、応答情報が送信される。   In the communication system 100, in the configuration shown in FIG. 2, information relating to the communication state between the MFPs 82, 84, 86 and the relay servers 50, 70 (hereinafter sometimes referred to as “device information”) is stored in the database 96. It is managed in. Specifically, the relay servers 50 and 70 transmit the device information to the web server 30 at a timing when the device information should be rewritten. For example, a state in which data cannot be transmitted / received between the MFP 82 and the relay server 50 from a state in which data can be transmitted / received between the MFP 82 and the relay server 50 (hereinafter sometimes referred to as “online state”). (Hereinafter, sometimes described as “offline state”), the relay server 50 determines that the communication state of the MFP 82 is offline from the relay server 50 to the web server 30. Is done. If the relay server 50 determines that the MFP 82 and the relay server 50 have changed from the offline state to the online state, the relay server 50 transmits information indicating the online state to the web server 30. . When the relay server transmits an instruction to the MFP 82 in accordance with the request transmitted from the service server 90 to the relay server via the web server 30, and the response information according to the instruction is returned from the MFP 82, the relay server Response information is transmitted from 50 to the web server 30.

このように、各MFP82,84,86のデバイス情報が、データベース96に記憶されている。データベース96に記憶されているデバイス情報は、PC88からの指令に基づいて、MFP82,84,86がスキャン処理,印刷処理等を行う際に利用される。詳しくは、PC88は、サービスサーバ90およびウェブサーバ30を介して、データベース96からMFP82,84,86のデバイス情報を取得する。そして、PC88は、取得したデバイス情報に基づいて、オンライン状態となっているMFP82,84,86を指定し、その指定したMFP82,84,86にスキャン処理等の指令を送信する。この際、PC88は、スキャン処理等の指令を、サービスサーバ90を介して、ウェブサーバ30に送信する。そして、ウェブサーバ30が、ロードバランサ80を介し、中継サーバ50または70にスキャン処理等の指令を送信し、中継サーバ50または70が、指定されたMFP82,84,86にスキャン処理等の指令を送信する。これにより、PC88からの指令に従って、指定されたMFP82,84,86において、スキャン処理等が行われる。このように、通信システム100では、通信システム100を利用したMFP82,84,86による各種処理が行われる。   As described above, the device information of each MFP 82, 84, 86 is stored in the database 96. The device information stored in the database 96 is used when the MFPs 82, 84, 86 perform scan processing, print processing, and the like based on a command from the PC 88. Specifically, the PC 88 acquires device information of the MFPs 82, 84, 86 from the database 96 via the service server 90 and the web server 30. Then, the PC 88 designates the MFPs 82, 84, and 86 that are online based on the acquired device information, and transmits a command such as scan processing to the designated MFPs 82, 84, and 86. At this time, the PC 88 transmits a command such as a scan process to the web server 30 via the service server 90. Then, the web server 30 transmits a command such as scan processing to the relay server 50 or 70 via the load balancer 80, and the relay server 50 or 70 issues a command such as scan processing to the designated MFP 82, 84, 86. Send. As a result, in accordance with a command from the PC 88, the designated MFP 82, 84, 86 performs a scanning process or the like. As described above, in the communication system 100, various processes are performed by the MFPs 82, 84, and 86 using the communication system 100.

一方で、例えば、中継サーバ50とロードバランサ80との間で通信障害が発生した場合において、中継サーバ50では、中継サーバ50とMFP82,84,86との間の通信状態がオフライン状態となったと判断される。この際、中継サーバ50は、MFP82,84,86毎のデバイス情報をウェブサーバ30に送信する。つまり、MFP82のデバイス情報とMFP84のデバイス情報とMFP86のデバイス情報とが、順次、送信される。そして、ウェブサーバ30は、MFP82のデバイス情報とMFP84のデバイス情報とMFP86のデバイス情報とを、順次、データベース96に送信する。この説明では、中継サーバ50と接続されているMFPが3台であるため、ウェブサーバ30では、3回のデバイス情報の送受信が行われるが、例えば、中継サーバ50に30台のMFPが接続されている場合には、30回のデバイス情報の送受信が行われ、中継サーバ50に数千台のMFPが接続されている場合には、数千回のデバイス情報の送受信が行われる。このため、デバイス情報の送受信によりウェブサーバ30への負荷が増大し、通信システム100を利用したMFP82,84,86による各種処理を実行できなくなる虞がある。   On the other hand, for example, when a communication failure occurs between the relay server 50 and the load balancer 80, in the relay server 50, the communication state between the relay server 50 and the MFPs 82, 84, 86 is offline. To be judged. At this time, the relay server 50 transmits device information for each of the MFPs 82, 84, 86 to the web server 30. That is, the device information of the MFP 82, the device information of the MFP 84, and the device information of the MFP 86 are sequentially transmitted. Then, the web server 30 sequentially transmits the device information of the MFP 82, the device information of the MFP 84, and the device information of the MFP 86 to the database 96. In this description, since there are three MFPs connected to the relay server 50, the web server 30 transmits and receives device information three times. For example, 30 MFPs are connected to the relay server 50. The device information is transmitted and received 30 times, and when thousands of MFPs are connected to the relay server 50, the device information is transmitted and received thousands of times. For this reason, the load on the web server 30 increases due to transmission / reception of device information, and there is a possibility that various processes by the MFPs 82, 84, 86 using the communication system 100 cannot be executed.

<本発明の通信システムでのデバイス情報の管理>
このため、通信システム1では、情報処理サーバ10およびキュー92を用いて、デバイス情報の管理が行われている。具体的には、図3に示すように、通信システム1では、MFP82,84,86と中継サーバ50,70とは、ロードバランサ80を介して、データの送受信が行われる。また、中継サーバ50,70とキュー92との間で、データの送受信が行われ、キュー92と情報処理サーバ10との間で、データの送受信が行われる。さらに、情報処理サーバ10とデータベース96との間で、データの送受信が行われ、PC88とウェブサーバ30とは、サービスサーバ90を介して、データの送受信が行われる。なお、ウェブサーバ30は、データベース96および中継サーバ50,70とデータの送受信を行う。
<Management of Device Information in the Communication System of the Present Invention>
For this reason, in the communication system 1, device information is managed using the information processing server 10 and the queue 92. Specifically, as shown in FIG. 3, in the communication system 1, the MFPs 82, 84, 86 and the relay servers 50, 70 transmit / receive data via the load balancer 80. In addition, data is transmitted / received between the relay servers 50 and 70 and the queue 92, and data is transmitted / received between the queue 92 and the information processing server 10. Further, data transmission / reception is performed between the information processing server 10 and the database 96, and data transmission / reception is performed between the PC 88 and the web server 30 via the service server 90. The web server 30 exchanges data with the database 96 and the relay servers 50 and 70.

通信システム1では、図3に示す構成において、中継サーバ50,70は、デバイス情報をキュー92に送信し、キュー92は、受信したデバイス情報を記憶する。一方、情報処理サーバ10は、キュー92からデバイス情報を、所定時間毎に読み出して取得する。例えば、所定時間は5秒であってもよい。なお、所定時間ごとに取得するとは、厳密に同じ時間毎に取得することのみを意味せず、ある程度の幅を持ってよい概念である。例えば、デバイス情報を読み出してからデータベース96に記憶させるまでの処理を実行したあと、5秒を経過してから取得をする、でもよい。この際、取得されるデバイス情報の数は、所定数、例えば、6個以下とされる。つまり、キュー92に30台、もしくは数千台のMFPのデバイス情報が記憶されている場合であっても、6個のデバイス情報が送信される。このため、例えば、中継サーバ50とロードバランサ80との間で通信障害が発生したことが原因で、MFPから一定周期で中継サーバ50に届くはずの情報が届かなくなり、中継サーバが各MFPとの間がオフライン状態になったと判断し、中継サーバ50からキュー92に30個、もしくは数千個のオフライン状態を示すデバイス情報が送信された場合であっても、情報処理サーバ10とキュー92との間では、所定時間毎の1回の周期では、6個のデバイス情報が送信されるのみであることから、情報処理サーバ10に短時間で一気に負荷がかかることを抑えることが可能となる。また、中継サーバ50とロードバランサ80との間で通信障害が発生すると、MFPから中継サーバ50に送信した情報への返信が来なくなる。このため、30台、もしくは数千台のMFP各々が、中継サーバ50との間がオフライン状態となったと、近似したタイミングで判断する。そして、30台、もしくは数千台のMFP各々が、近似したタイミングで、オンライン状態にするための情報を中継サーバ50に送信することになる。この場合も、中継サーバ50からキュー92に30個、もしくは数千個のオンライン状態を示すデバイス情報が送信されることになるが、情報処理サーバ10とキュー92との間では、所定時間毎の1回の周期では、6個のデバイス情報が送信されるのみである。   In the communication system 1, in the configuration shown in FIG. 3, the relay servers 50 and 70 transmit device information to the queue 92, and the queue 92 stores the received device information. On the other hand, the information processing server 10 reads and acquires device information from the queue 92 at predetermined time intervals. For example, the predetermined time may be 5 seconds. Note that acquiring at every predetermined time does not mean acquiring at exactly the same time but is a concept that may have a certain range. For example, after the device information is read and stored in the database 96, it may be acquired after 5 seconds. At this time, the number of pieces of device information to be acquired is a predetermined number, for example, 6 or less. That is, even when the device information of 30 or thousands of MFPs is stored in the queue 92, 6 pieces of device information are transmitted. For this reason, for example, because of a communication failure between the relay server 50 and the load balancer 80, information that should have arrived at the relay server 50 at a certain period from the MFP does not arrive, and the relay server communicates with each MFP. Even if 30 or thousands of device information indicating the offline state is transmitted from the relay server 50 to the queue 92, the information processing server 10 and the queue 92 Since only six pieces of device information are transmitted in one cycle every predetermined time, it is possible to suppress the information processing server 10 from being loaded at a stretch in a short time. Further, when a communication failure occurs between the relay server 50 and the load balancer 80, a reply to the information transmitted from the MFP to the relay server 50 does not come. For this reason, each of 30 or thousands of MFPs determines that they are offline with the relay server 50 at approximate timing. Then, each of the 30 or several thousand MFPs transmits information for setting the online state to the relay server 50 at approximate timing. Also in this case, 30 or thousands of device information indicating the online state is transmitted from the relay server 50 to the queue 92. However, between the information processing server 10 and the queue 92, a predetermined time interval is transmitted. In one cycle, only 6 pieces of device information are transmitted.

また、情報処理サーバ10は、取得したMFPのデバイス情報に基づいて、オンライン状態を示すデバイスリストと、オフライン状態を示すデバイスリストを作成し、オンライン状態を示すデバイスリストを1つの情報として送信し、オフライン状態を示すデバイスリストを1つの情報として送信する。つまり、例えば、6台のMFP A〜Fのデバイス情報を受信し、MFP A,C,D,Eがオンライン状態であり、MFP B,Fがオフライン状態である場合には、MFP A,C,D,Eがオンライン状態であることを示すオンラインデバイスリストを作成し、MFP B,Fがオフライン状態であることを示すオフラインデバイスリストを作成する。そして、情報処理サーバ10は、オンラインデバイスリストとオフラインデバイスリストを、データベース96に送信する。これにより、情報処理サーバ10からデータベース96への送信回数を少なくすることが可能となり、情報処理サーバ10の負荷を抑えることが可能となる。   Further, the information processing server 10 creates a device list indicating the online state and a device list indicating the offline state based on the acquired device information of the MFP, and transmits the device list indicating the online state as one piece of information. A device list indicating an offline state is transmitted as one piece of information. That is, for example, when device information of six MFPs A to F is received, and MFPs A, C, D, and E are online and MFPs B and F are offline, MFPs A, C, An online device list indicating that D and E are online is created, and an offline device list indicating that MFP B and F are offline is created. Then, the information processing server 10 transmits the online device list and the offline device list to the database 96. As a result, the number of transmissions from the information processing server 10 to the database 96 can be reduced, and the load on the information processing server 10 can be suppressed.

このように、通信システム1では、情報処理サーバ10およびキュー92を用いて、デバイス情報の管理を行うことで、情報処理サーバ10の負荷を抑えることが可能となる。これにより、特定のサーバ等への負荷の集中を防止し、安定した通信システムを構築することが可能となる。また、通信システム1では、PC88とMFP82,84,86との間のデータの送受信および、PC88とデータベース96との間のデータの送受信は、情報処理サーバ10およびキュー92を経由することなく、行われているため、通信システム1を利用したMFP82,84,86による各種処理の実行を適切に担保することが可能となる。なお、以下に、通信システム1で、上記デバイス情報が管理される際の各装置、サーバ等の作動を、シーケンス図を用いて詳しく説明する。   Thus, in the communication system 1, it is possible to suppress the load on the information processing server 10 by managing device information using the information processing server 10 and the queue 92. Thereby, it is possible to prevent a load from being concentrated on a specific server or the like and to construct a stable communication system. In the communication system 1, data transmission / reception between the PC 88 and the MFPs 82, 84, 86 and data transmission / reception between the PC 88 and the database 96 are performed without going through the information processing server 10 and the queue 92. Therefore, it is possible to appropriately ensure the execution of various processes by the MFPs 82, 84, 86 using the communication system 1. In the following, the operation of each device, server, etc. when the device information is managed in the communication system 1 will be described in detail with reference to sequence diagrams.

<MFPと中継サーバとの間の通信確立>
通信システム1では、図4に示すように、まず、レジスタ情報が、MFP82,84,86からウェブサーバ30に送信される(M100)。レジスタ情報には、XMPP over BOSHに従ったセッション(以下、「XMPPセッション」と記載する場合がある)で利用される認証情報のMFP82,84,86への送信要求および、MFP82,84,86の固有情報が含まれる。
<Establishing communication between MFP and relay server>
In the communication system 1, as shown in FIG. 4, first, register information is transmitted from the MFPs 82, 84, 86 to the web server 30 (M100). The register information includes a request for transmitting authentication information used in a session according to XMPP over BOSH (hereinafter sometimes referred to as “XMPP session”) to the MFPs 82, 84, 86, and the MFP 82, 84, 86 Contains specific information.

レジスタ情報を受信したウェブサーバ30は、そのレジスタ情報をデータベース96に送信する(M102)。そして、データベース96は、MFP82,84,86の固有情報を登録するとともに、認証情報を生成し、認証情報をウェブサーバ30に送信する(M104)。認証情報を受信したウェブサーバ30は、その認証情報をMFP82,84,86に送信する(M106)。   Receiving the register information, the web server 30 transmits the register information to the database 96 (M102). Then, the database 96 registers unique information of the MFPs 82, 84, 86, generates authentication information, and transmits the authentication information to the web server 30 (M104). Receiving the authentication information, the web server 30 transmits the authentication information to the MFPs 82, 84, 86 (M106).

MFP82,84,86は、取得した認証情報を利用して、中継サーバ50,70との間でXMPPセッションを確立する(M108)。詳しくは、MFP82,84,86は、XMPP over BOSHに従って、認証情報を中継サーバ50,70に送信する。中継サーバ50,70は、認証情報を受信すると、XMPP over BOSHに従って、OKを示す応答情報をMFP82,84,86に送信する。このように、XMPP over BOSHに従った各種情報の送受信を通じて、MFP82,84,86と中継サーバ50,70が認証情報を取得することで、XMPPセッションが確立する。   The MFPs 82, 84, 86 use the acquired authentication information to establish an XMPP session with the relay servers 50, 70 (M108). Specifically, the MFPs 82, 84, and 86 transmit authentication information to the relay servers 50 and 70 according to XMPP over BOSH. When the relay servers 50 and 70 receive the authentication information, the relay servers 50 and 70 transmit response information indicating OK to the MFPs 82, 84, and 86 in accordance with XMPP over BOSH. As described above, the MFPs 82, 84, 86 and the relay servers 50, 70 acquire the authentication information through transmission / reception of various information according to the XMPP over BOSH, thereby establishing the XMPP session.

次に、MFP82,84,86は、中継サーバ50,70との間でXMPPに従ったコネクション(以下、「XMPPコネクション」と記載する場合がある)を確立する(M110)。詳しくは、MFP82,84,86は、中継サーバ50との間で確立したセッションを識別するセッションIDと、XMPPコネクションの確立を要求する要求情報を、中継サーバ50,70に送信する。そして、中継サーバ50,70が、セッションIDおよび要求情報を受信し、セッションIDが示すセッションが確立していることを確認すると、MFP82,84,86と中継サーバ50,70との間で、要求情報に応じたXMPPコネクションが確立する。すなわち、XMPPセッションを確立することで、MFP82,84,86と中継サーバ50との間で、XMPPコネクションを確立することが可能になる。なお、MFP82,84,86はインターネット98とルータを介して接続している。このため、MFP82,84,86からインターネット98の側へ送信された情報、および、その情報への返信はルータが通すものの、返信以外の、インターネット98の側からMFP82、84、86へ送信された情報は、ルータが通さない。しかしながら、XMPPコネクションが確立すると、確立したXMPPコネクションを用いた通信であれば、インターネット98の側からMFP82、84、86へ送信された情報をルータが通すようになる。なお、確立してから一定時間が経過すると、そのXMPPコネクションを用いた通信では、インターネット98の側からMFP82、84、86へ送信された情報をルータが通さなくなる。そのため、MFP82、84、86は、XMPPセッションが確立した後、一定周期ごとに、XMPPコネクションの確立を要求する。一定周期は、例えば2分間周期である。なお、一定周期とは、厳密に同じ時間毎を示すのみではなく、ある程度幅をもった概念である。   Next, the MFPs 82, 84, 86 establish a connection according to XMPP (hereinafter may be described as “XMPP connection”) with the relay servers 50, 70 (M 110). Specifically, the MFPs 82, 84, 86 transmit a session ID for identifying a session established with the relay server 50 and request information for requesting establishment of an XMPP connection to the relay servers 50, 70. When the relay servers 50 and 70 receive the session ID and the request information and confirm that the session indicated by the session ID has been established, the request is made between the MFP 82, 84, 86 and the relay servers 50, 70. An XMPP connection corresponding to the information is established. That is, by establishing an XMPP session, it is possible to establish an XMPP connection between the MFPs 82, 84, 86 and the relay server 50. The MFPs 82, 84, and 86 are connected to the Internet 98 via a router. For this reason, information sent from the MFP 82, 84, 86 to the Internet 98 side and a reply to the information are sent by the router, but sent from the Internet 98 side to the MFP 82, 84, 86 other than the reply. Information is not passed by the router. However, when the XMPP connection is established, if the communication uses the established XMPP connection, the router passes the information transmitted from the Internet 98 side to the MFPs 82, 84, 86. When a certain time has elapsed since the establishment, in the communication using the XMPP connection, the router does not pass the information transmitted from the Internet 98 side to the MFPs 82, 84, 86. Therefore, after the XMPP session is established, the MFPs 82, 84, and 86 request establishment of an XMPP connection at regular intervals. The constant period is, for example, a period of 2 minutes. In addition, a fixed period is not only showing exactly every same time but also a concept having a certain range.

<オンライン状態を示すデバイス情報のデータベースへの登録>
XMPPコネクションが確立すると、中継サーバ50,70は、オンライン状態を示すデバイス情報(以下、「オンラインメッセージ」と記載する場合がある)をキュー92に送信する(M112)。そのキュー92は、受信したオンラインメッセージを記憶する。一方、情報処理サーバ10は、所定時間毎に、キュー92にメッセージの問い合わせを行っている(M114)。この際、キュー92にメッセージがある場合には、情報処理サーバ10は、所定数以下のメッセージを、キュー92から取得する(M116)。そして、情報処理サーバ10は、取得した所定数以下のメッセージを処理し、上述したように、オンラインデバイスリストとオフラインデバイスリストとを作成する。
<Registering device information indicating online status in database>
When the XMPP connection is established, the relay servers 50 and 70 transmit device information indicating the online state (hereinafter may be referred to as “online message”) to the queue 92 (M112). The queue 92 stores received online messages. On the other hand, the information processing server 10 makes a message inquiry to the queue 92 every predetermined time (M114). At this time, if there is a message in the queue 92, the information processing server 10 acquires a predetermined number or less of messages from the queue 92 (M116). Then, the information processing server 10 processes the acquired predetermined number of messages or less, and creates an online device list and an offline device list as described above.

この際、情報処理サーバ10では、取得したメッセージが複数あり、それら複数のメッセージに、同一のMFPに関するデバイス情報が存在する場合には、最新のデバイス情報のみをリストに書き込み、最新のデバイス情報以外のデバイス情報のリストへの書き込みを行っていない。具体的に、例えば、情報処理サーバ10が、図6に示すような、5個のデバイス情報を、キュー92から取得した場合について説明する。図での左側の欄には、デバイス情報の対象となるMFP名が記され、中央の欄には、MFPと中継サーバ50,70とがオンライン状態であるかオフライン状態であるかが記され、右側の欄には、そのデバイス情報をキュー92が取得した時間(以下、「タイムスタンプ」と記載する場合がある)が記されている。情報処理サーバ10では、図に示す5個のデバイス情報を取得すると、まず、1番上の欄のデバイス情報が処理される。   At this time, in the information processing server 10, when there are a plurality of acquired messages and the device information related to the same MFP exists in the plurality of messages, only the latest device information is written in the list, and other than the latest device information. The device information is not written to the list. Specifically, for example, a case where the information processing server 10 acquires five pieces of device information as illustrated in FIG. In the left column of the figure, the name of the MFP that is the target of the device information is written. In the middle column, whether the MFP and the relay servers 50 and 70 are online or offline is written. In the right column, the time when the device information is acquired by the queue 92 (hereinafter may be described as “time stamp”) is written. In the information processing server 10, when the five pieces of device information shown in the figure are acquired, first, the device information in the top column is processed.

デバイス情報の処理では、MFP名がチェックされ、同一のMFPのデバイス情報のリストへの書き込みの有無がチェックされる。つまり、リストにMFP Aが書き込まれているか否かがチェックされる。1番上の欄のデバイス情報では、当然、リストへの書き込みが0であるため、リストにMFP Aが書き込まれていない。このため、1番上の欄のデバイス情報に基づいて、オンラインデバイスリストにMFP Aが書き込まれる。   In the device information processing, the MFP name is checked, and whether or not the device information of the same MFP is written to the list is checked. That is, it is checked whether MFP A is written in the list. Of course, in the device information in the top column, since writing to the list is 0, MFP A is not written to the list. Therefore, MFP A is written in the online device list based on the device information in the top column.

次に、上から2番目の欄のデバイス情報では、リストにMFP Bが書き込まれているか否かがチェックされる。リストには、MFP Aしか書き込まれていないため、MFP Bは書き込まれていない。このため、上から2番目の欄のデバイス情報に基づいて、オフラインデバイスリストにMFP Bが書き込まれる。以下、上から3番目および4番目の欄のデバイス情報で、上記チェックと同様のチェックが行われ、上から3番目の欄のデバイス情報に基づいて、オンラインデバイスリストにMFP Cが書き込まれ、上から4番目の欄のデバイス情報に基づいて、オンラインデバイスリストにMFP Dが書き込まれる。   Next, in the device information in the second column from the top, it is checked whether MFP B is written in the list. Since only MFP A is written in the list, MFP B is not written. Therefore, MFP B is written in the offline device list based on the device information in the second column from the top. Thereafter, a check similar to the above check is performed on the device information in the third and fourth columns from the top, and MFP C is written in the online device list based on the device information in the third column from the top. MFP D is written in the online device list based on the device information in the fourth column from the beginning.

続いて、上から5番目の欄のデバイス情報では、リストにMFP Aが書き込まれているか否かがチェックされるが、上述したように、オンラインデバイスリストにMFP Aが書き込まれている。このため、上から5番目の欄のデバイス情報のタイムスタンプと、オンラインデバイスリストに書き込まれているデバイス情報、つまり、1番上の欄のデバイス情報のタイムスタンプとが比較され、何れのデバイス情報が新しい情報であるかが判断される。この際、上から5番目の欄のデバイス情報が、1番上の欄のデバイス情報より新しい場合には、1番上の欄のデバイス情報が、上から5番目の欄のデバイス情報に書き換えられる。つまり、オンラインデバイスリストからMFP Aが削除され、オフラインデバイスリストにMFP Aが書き込まれる。しかし、図から解るように、上から5番目の欄のデバイス情報は、1番上の欄のデバイス情報より古い。このため、上から5番目の欄のデバイス情報は、何れのリストにも書き込まれず、破棄される。これにより、古い情報のリストへの書き込みが防止される。   Subsequently, in the device information in the fifth column from the top, whether or not MFP A is written in the list is checked, but as described above, MFP A is written in the online device list. For this reason, the time stamp of the device information in the fifth column from the top is compared with the device information written in the online device list, that is, the time stamp of the device information in the top column. Is new information. At this time, if the device information in the fifth column from the top is newer than the device information in the top column, the device information in the top column is rewritten with the device information in the fifth column from the top. . That is, MFP A is deleted from the online device list, and MFP A is written in the offline device list. However, as can be seen from the figure, the device information in the fifth column from the top is older than the device information in the top column. For this reason, the device information in the fifth column from the top is not written to any list but discarded. This prevents old information from being written to the list.

上述した手法で、オンラインデバイスリストとオフラインデバイスリストが作成されると、各々のリストが個別に、情報処理サーバ10からデータベース96に送信される。なお、図4での説明は、キュー92がオンラインメッセージを受信した場合を例にとって説明しているため、情報処理サーバ10からデータベース96には、所定のMFP名が書き込まれたオンラインデバイスリストが送信される(M118)。そして、データベース96では、所定のMFPのデバイス情報がオンライン情報に更新される。   When the online device list and the offline device list are created by the above-described method, each list is individually transmitted from the information processing server 10 to the database 96. Note that the description in FIG. 4 is given taking as an example the case where the queue 92 receives an online message, so the online device list in which a predetermined MFP name is written is transmitted from the information processing server 10 to the database 96. (M118). In the database 96, the device information of the predetermined MFP is updated to online information.

また、情報処理サーバ10では、上述したように、所定時間毎に、キュー92へのメッセージの問い合わせが行われているが、情報処理サーバ10での処理、つまり、複数のデバイス情報に基づいて、オンラインデバイスリストとオフラインデバイスリストを作成する際に、長い時間を要した場合には、所定時間を待たずに、キュー92へのメッセージの問い合わせが行われる。   Further, as described above, in the information processing server 10, a message inquiry to the queue 92 is performed every predetermined time, but based on processing in the information processing server 10, that is, based on a plurality of device information, If it takes a long time to create the online device list and the offline device list, a message inquiry to the queue 92 is made without waiting for a predetermined time.

詳しくは、情報処理サーバ10では、情報処理サーバ10での処理時間が計測されており、その処理時間が設定時間未満である場合には、所定時間毎に、キュー92へのメッセージの問い合わせが行われる。一方、処理時間が設定時間以上である場合には、キュー92へのメッセージの問い合わせが行われた後に、所定時間が経過する前に、再度、キュー92へのメッセージの問い合わせが行われる。これにより、キュー92への未登録のメッセージの長時間の放置を防止することが可能となる。   Specifically, in the information processing server 10, the processing time in the information processing server 10 is measured, and when the processing time is less than the set time, a message inquiry to the queue 92 is performed every predetermined time. Is called. On the other hand, when the processing time is equal to or longer than the set time, the message is inquired to the queue 92 again after a predetermined time elapses after the message is inquired to the queue 92. As a result, it is possible to prevent unregistered messages in the queue 92 from being left for a long time.

<デバイス情報の問い合わせ>
通信システム1では、上述したように、データベース96に記憶されているデバイス情報を利用して、MFP82,84,86による各種処理が行われる。この際、PC88からデバイス情報の問い合わせが行われる。このデバイス情報の問い合わせは、PC88からサービスサーバ90に送信される。サービスサーバ90は、そのデバイス情報の問い合わせを、ウェブサーバ30に転送する(M120)。
<Inquiry about device information>
In the communication system 1, as described above, various processes by the MFPs 82, 84, and 86 are performed using the device information stored in the database 96. At this time, an inquiry about device information is made from the PC 88. The device information inquiry is transmitted from the PC 88 to the service server 90. The service server 90 transfers the device information inquiry to the web server 30 (M120).

次に、ウェブサーバ30は、データベース96にデバイス情報の問い合わせを行う(M122)。そして、データベース96は、問い合わせに対する返信として、デバイス情報をウェブサーバ30に送信する(M124)。デバイス情報を受信したウェブサーバ30は、そのデバイス情報をサービスサーバ90に送信し(M126)、サービスサーバ90からPC88に、デバイス情報が送信される。これにより、PC88では、デバイス情報に基づいて、通信可能なMFPを特定することが可能となる。   Next, the web server 30 inquires device information from the database 96 (M122). Then, the database 96 transmits device information to the web server 30 as a reply to the inquiry (M124). The web server 30 that has received the device information transmits the device information to the service server 90 (M126), and the device information is transmitted from the service server 90 to the PC 88. As a result, the PC 88 can specify a communicable MFP based on the device information.

<通信システムを利用したMFPによるスキャン処理>
通信システム1では、上述したように、通信システム1を利用して、MFP82,84,86によってスキャン処理が行われる。具体的には、PC88において、データベース96から取得したデバイス情報に基づいて、通信可能なMFP82,84,86が特定される。そして、通信可能なMFP82,84,86から任意のMFPが決定され、その決定されたMFPによるスキャン処理の実行指示が、PC88からサービスサーバ90に送信される。スキャン指示を受信したサービスサーバ90は、図5に示すように、所定のMFPへのスキャン指示をウェブサーバ30に送信する(M128)。
<Scan processing by MFP using communication system>
In the communication system 1, as described above, scan processing is performed by the MFPs 82, 84, 86 using the communication system 1. Specifically, in the PC 88, communicable MFPs 82, 84, 86 are specified based on device information acquired from the database 96. Then, an arbitrary MFP is determined from communicable MFPs 82, 84, 86, and an instruction to execute scan processing by the determined MFP is transmitted from the PC 88 to the service server 90. Receiving the scan instruction, the service server 90 transmits a scan instruction for a predetermined MFP to the web server 30 as shown in FIG. 5 (M128).

ウェブサーバ30は、受信したスキャン指示の対象となっているMFP82,84,86に関するデバイス情報の問い合わせをデータベース96に行う(M130)。データベース96は、問い合わせに対する返信として、所定のMFP82,84,86に関するデバイス情報をウェブサーバ30に送信する(M132)。デバイス情報を受信したウェブサーバ30は、スキャン指示の対象となっているMFP82,84,86がオンライン状態であるか否かをチェックし、スキャン指示の対象となっているMFP82,84,86がオンライン状態である場合に、スキャン指示を中継サーバ50,70に送信する(M134)。また、ウェブサーバ30は、スキャン指示を中継サーバ50,70に送信した後に、スキャン指示を送信した旨の受付情報を、サービスサーバ90に送信する(M136)。   The web server 30 inquires of the database 96 about device information related to the MFPs 82, 84, and 86 that are the targets of the received scan instruction (M130). The database 96 transmits device information related to the predetermined MFPs 82, 84, 86 to the web server 30 as a reply to the inquiry (M132). The web server 30 that has received the device information checks whether or not the MFPs 82, 84, and 86 that are the target of the scan instruction are online, and the MFPs 82, 84, and 86 that are the target of the scan instruction are online. If it is in a state, a scan instruction is transmitted to the relay servers 50 and 70 (M134). Further, after transmitting the scan instruction to the relay servers 50 and 70, the web server 30 transmits reception information indicating that the scan instruction has been transmitted to the service server 90 (M136).

スキャン指示を受信した中継サーバ50,70は、スキャン指示の対象となっているMFP82,84,86に、各MFPとの間で確立しているXMPPコネクションを用いてスキャン指示を送信する(M138)。なお、図4の例では、中継サーバから、XMPPコネクションが確立しているMFPへの情報の送信は全て、XMPPコネクションを用いて行われる。スキャン指示を受信したMFP82,84,86は、スキャン処理を実行し(M140)、スキャンデータを生成する。次に、MFP82,84,86は、スキャンデータをウェブサーバ30に送信する(M142)。そして、ウェブサーバ30は、スキャンデータをサービスサーバ90に送信し(M144)、サービスサーバ90は、スキャンデータをPC88に送信する。これにより、PC88は、MFP82,84,86によって生成されたスキャンデータを取得する。なお、スキャンデータを受信したウェブサーバ30は、スキャンデータ受信を完了した旨の完了情報をMFP82,84,86に送信する(M146)。   The relay servers 50 and 70 that have received the scan instruction transmit the scan instruction to the MFPs 82, 84, and 86 that are the target of the scan instruction using the XMPP connection established with each MFP (M138). . In the example of FIG. 4, all transmissions of information from the relay server to the MFP for which the XMPP connection is established are performed using the XMPP connection. Receiving the scan instruction, the MFPs 82, 84, 86 execute scan processing (M140), and generate scan data. Next, the MFPs 82, 84, 86 transmit the scan data to the web server 30 (M142). Then, the web server 30 transmits the scan data to the service server 90 (M144), and the service server 90 transmits the scan data to the PC 88. As a result, the PC 88 acquires the scan data generated by the MFPs 82, 84, 86. The web server 30 that has received the scan data transmits completion information indicating that the scan data reception has been completed to the MFPs 82, 84, and 86 (M146).

<オフライン状態を示すデバイス情報のデータベースへの登録>
また、通信システム1では、XMPPコネクションが無効となった場合、つまり、MFP82,84,86と中継サーバ50,70との間で通信不能な状態となった場合に、データベース96のデバイス情報が、オンライン状態からオフライン状態に更新される。具体的には、XMPPコネクションが無効となると(M148)、中継サーバ50,70は、オフライン状態を示すデバイス情報(以下、「オフラインメッセージ」と記載する場合がある)をキュー92に送信する(M150)。XMPPコネクションが無効となった場合には、MFP82,84,86がXMPPコネクションを破棄する情報を中継サーバ50に送信した場合がある。MFP82,84,86から一定周期毎に中継サーバ50に送信している、XMPPコネクションの確立を要求する情報が、中継サーバ50に届かなかったため、中継サーバ50が、XMPPコネクションが無効となった、と判断した場合がある。特に、中継サーバ50とロードバランサ80との間に通信障害が発生すると、中継サーバ50は、大量のMFPとの間のXMPPコネクションが無効となった、と判断することになり、大量のオフラインメッセージがキュー92に送信されることになる。また、中継サーバ50へXMPPコネクションの確立を要求する情報がMFP82,84,86から届いていないことをロードバランサ80が判断してもよい。この場合、XMPPコネクションが無効になったことを示す情報をロードバランサ80が送信し、中継サーバ50が、受信することで、中継サーバ50も、XMPPコネクションが無効になったことを判断できる。オフラインメッセージを受信したキュー92は、受信したオフラインメッセージを記憶する。一方、情報処理サーバ10は、所定時間毎に、キュー92にメッセージの問い合わせを行っている(M152)。この際、情報処理サーバ10は、オフラインメッセージを、キュー92から取得する(M154)。オフラインメッセージを取得した情報処理サーバ10では、上述した処理が行われ、所定のMFP名が書き込まれたオフラインデバイスリストが、情報処理サーバ10からデータベース96に送信される(M156)。これにより、データベース96では、所定のMFPのデバイス情報がオフライン情報に更新される。なお、MFP82,84,86は、XMPPコネクションの確立を要求する情報に対する返信が中継サーバ50から来なかった場合に、中継サーバ50,70との間でXMPPセッションを確立(M108)と、XMPPコネクションの確立(M110)と、を試みる。すなわち、中継サーバ50とロードバランサ80との間に通信障害が発生すると、大量のMFPと中継サーバ50との間のXMPPコネクションが再度確立されるので、大量のオンラインメッセージが中継サーバ50からキュー92に送信されることになる。
<Registering device information indicating offline status into the database>
Further, in the communication system 1, when the XMPP connection becomes invalid, that is, when communication between the MFPs 82, 84, 86 and the relay servers 50, 70 becomes impossible, the device information in the database 96 is The online status is updated to the offline status. Specifically, when the XMPP connection becomes invalid (M148), the relay servers 50 and 70 transmit device information indicating an offline state (hereinafter, may be described as “offline message”) to the queue 92 (M150). ). When the XMPP connection becomes invalid, the MFPs 82, 84, 86 may transmit information for discarding the XMPP connection to the relay server 50. Since the information requesting establishment of the XMPP connection transmitted from the MFPs 82, 84, 86 to the relay server 50 at regular intervals has not arrived at the relay server 50, the relay server 50 has invalidated the XMPP connection. It may be judged. In particular, when a communication failure occurs between the relay server 50 and the load balancer 80, the relay server 50 determines that the XMPP connection with a large number of MFPs has become invalid, and a large number of offline messages. Will be sent to the queue 92. Alternatively, the load balancer 80 may determine that information requesting the relay server 50 to establish an XMPP connection has not arrived from the MFPs 82, 84, 86. In this case, when the load balancer 80 transmits information indicating that the XMPP connection has become invalid and the relay server 50 receives the information, the relay server 50 can also determine that the XMPP connection has become invalid. The queue 92 that has received the offline message stores the received offline message. On the other hand, the information processing server 10 makes a message inquiry to the queue 92 every predetermined time (M152). At this time, the information processing server 10 acquires an offline message from the queue 92 (M154). In the information processing server 10 that has acquired the offline message, the above-described processing is performed, and the offline device list in which the predetermined MFP name is written is transmitted from the information processing server 10 to the database 96 (M156). Thereby, in the database 96, the device information of the predetermined MFP is updated to offline information. The MFP 82, 84, 86 establishes an XMPP session with the relay servers 50, 70 when the reply to the information requesting establishment of the XMPP connection does not come from the relay server 50 (M 108), and the XMPP connection Is established (M110). That is, when a communication failure occurs between the relay server 50 and the load balancer 80, the XMPP connection between the large number of MFPs and the relay server 50 is reestablished. Will be sent to.

<情報処理サーバの通信プログラムおよび、ウェブサーバの通信プログラム>
上述した通信システム1でのデバイス情報のデータベース96での管理、および、通信システム1を利用したMFP82,84,86によるスキャン処理は、通信プログラム20aが情報処理サーバ10のCPU12によって実行され、通信プログラム40aがウェブサーバ30のCPU32によって実行されることで行われる。以下に、図7及び図8を用いて、通信プログラム20aが情報処理サーバ10のCPU12によって実行される際のフローを説明し、図9及び図10を用いて、通信プログラム40aがウェブサーバ30のCPU32によって実行される際のフローを説明する。
<Information server communication program and web server communication program>
The above-described management of the device information in the communication system 1 in the communication system 1 and the scan processing by the MFPs 82, 84, 86 using the communication system 1 are executed by the CPU 12 of the information processing server 10 by the communication program 20a. 40 a is executed by the CPU 32 of the web server 30. Hereinafter, a flow when the communication program 20a is executed by the CPU 12 of the information processing server 10 will be described with reference to FIGS. 7 and 8, and the communication program 40a of the web server 30 will be described with reference to FIGS. A flow when executed by the CPU 32 will be described.

情報処理サーバ10で通信プログラム20aが起動されると、図7及び図8に示すフローの処理が開始される。S100において、CPU12は、<オンライン状態を示すデバイス情報のデータベースへの登録>および、<オフライン状態を示すデバイス情報のデータベースへの登録>に記載されているように、キュー92にメッセージの問い合わせを行うためのデータを、OS20bを介して出力する。そして、S102に進む。S102において、CPU12は、キュー92への問い合わせの結果、キュー92からメッセージを取得したか否かを判定する。キュー92からメッセージを取得している場合(S102:YES)には、S104に進む。   When the communication program 20a is started in the information processing server 10, the processing of the flow shown in FIGS. 7 and 8 is started. In S100, the CPU 12 makes a message inquiry to the queue 92 as described in <Registering device information indicating online state in the database> and <Registering device information indicating offline state in the database>. Data for output is output via the OS 20b. Then, the process proceeds to S102. In S <b> 102, the CPU 12 determines whether a message has been acquired from the queue 92 as a result of the inquiry to the queue 92. If a message is acquired from the queue 92 (S102: YES), the process proceeds to S104.

S104において、CPU12は、メッセージの内容をチェックする。そして、S106に進む。S106において、CPU12は、メッセージの内容チェックの結果、メッセージのタイムスタンプが、処理済みのタイムスタンプより新しいか否かを判定する。詳しくは、メッセージが複数存在するか否かが判定され、メッセージが複数存在する場合には、メッセージの確認毎に、確認中のメッセージの対象のMFP名が、リストに書き込まれているか否かが判定される。確認中のメッセージの対象のMFP名が、リストに書き込まれている場合には、確認中のメッセージのタイムスタンプと、リストに書き込まれているMFPの基となるメッセージのタイムスタンプとが比較される。この際、確認中のメッセージのタイムスタンプが、リストに書き込まれているMFPの基となるメッセージのタイムスタンプより新しい場合(S106:YES)には、S108に進む。なお、メッセージが複数存在しない場合、および、確認中のメッセージの対象のMFP名がリストに書き込まれていない場合にも、S108に進む。   In S104, the CPU 12 checks the content of the message. Then, the process proceeds to S106. In S106, the CPU 12 determines whether the message time stamp is newer than the processed time stamp as a result of the message content check. Specifically, it is determined whether or not there are a plurality of messages. If there are a plurality of messages, each time the message is confirmed, whether or not the name of the target MFP of the message being confirmed is written in the list. Determined. If the target MFP name of the message being confirmed is written in the list, the time stamp of the message being confirmed is compared with the time stamp of the message that is the basis of the MFP written in the list. . At this time, if the time stamp of the message being confirmed is newer than the time stamp of the message that is the basis of the MFP written in the list (S106: YES), the process proceeds to S108. Note that the process also proceeds to S108 when there is no plurality of messages and when the name of the target MFP for the message being confirmed is not written in the list.

S108において、CPU12は、メッセージはオンラインメッセージであるか否かを判定する。メッセージがオンラインメッセージである場合(S108:YES)には、S110に進む。S110において、CPU12は、メッセージの対象のMFP名をオンラインデバイスリストに書き込む。そして、S114に進む。一方、メッセージがオフラインメッセージである場合(S108:NO)には、S112に進む。S112において、CPU12は、メッセージの対象のMFP名をオフラインデバイスリストに書き込む。そして、S114に進む。なお、S106で、確認中のメッセージのタイムスタンプが、リストに書き込まれているMFPの基となるメッセージのタイムスタンプより古い場合(S106:NO)にも、S114に進む。   In S108, the CPU 12 determines whether or not the message is an online message. When the message is an online message (S108: YES), the process proceeds to S110. In S110, the CPU 12 writes the name of the MFP that is the subject of the message in the online device list. Then, the process proceeds to S114. On the other hand, when the message is an offline message (S108: NO), the process proceeds to S112. In S112, the CPU 12 writes the name of the target MFP for the message in the offline device list. Then, the process proceeds to S114. In S106, if the time stamp of the message being confirmed is older than the time stamp of the message that is the basis of the MFP written in the list (S106: NO), the process also proceeds to S114.

S114において、CPU12は、取得した全てのメッセージのチェックが終了したか否かを判定する。全てのメッセージのチェックが終了していない場合(S114:NO)には、S104に戻る。一方、全てのメッセージのチェックが終了している場合(S114:YES)には、S116に進む。S116において、CPU12は、オンラインデバイスリストが空であるか否か、つまり、オンラインデバイスリストにMFP名が書き込まれているか否かを判定する。オンラインデバイスリストが空でない場合(S116:NO)、つまり、オンラインデバイスリストにMFP名が書き込まれている場合には、S118に進む。   In S114, the CPU 12 determines whether or not all the acquired messages have been checked. If all the messages have not been checked (S114: NO), the process returns to S104. On the other hand, if all messages have been checked (S114: YES), the process proceeds to S116. In S116, the CPU 12 determines whether the online device list is empty, that is, whether the MFP name is written in the online device list. If the online device list is not empty (S116: NO), that is, if the MFP name is written in the online device list, the process proceeds to S118.

S118において、CPU12は、オンラインデバイスリストに書き込まれているMFPのデバイス情報を、オンラインに変更するためのデータをデータベース96に送信するためのデータを、OS20bを介して出力する。そして、S120に進む。また、オンラインデバイスリストが空である場合(S116:YES)、つまり、オンラインデバイスリストにMFP名が書き込まれていない場合にも、S120に進む。   In S118, the CPU 12 outputs data for transmitting data for changing the device information of the MFP written in the online device list to online to the database 96 via the OS 20b. Then, the process proceeds to S120. Further, if the online device list is empty (S116: YES), that is, if the MFP name is not written in the online device list, the process proceeds to S120.

S120において、CPU12は、オフラインデバイスリストが空であるか否か、つまり、オフラインデバイスリストにMFP名が書き込まれているか否かを判定する。オフラインデバイスリストが空でない場合(S120:NO)、つまり、オフラインデバイスリストにMFP名が書き込まれている場合には、S122に進む。   In S120, the CPU 12 determines whether the offline device list is empty, that is, whether the MFP name is written in the offline device list. If the offline device list is not empty (S120: NO), that is, if the MFP name is written in the offline device list, the process proceeds to S122.

S122において、CPU12は、オフラインデバイスリストに書き込まれているMFPのデバイス情報を、オフラインに変更するためのデータをデータベース96に送信するためのデータを、OS20bを介して出力する。そして、S124に進む。また、オフラインデバイスリストが空である場合(S120:YES)、つまり、オフラインデバイスリストにMFP名が書き込まれていない場合にも、S124に進む。   In S122, the CPU 12 outputs data for transmitting data for changing the device information of the MFP written in the offline device list to offline to the database 96 via the OS 20b. Then, the process proceeds to S124. If the offline device list is empty (S120: YES), that is, if the MFP name is not written in the offline device list, the process proceeds to S124.

S124において、CPU12は、処理時間が設定時間以上であるか否かを判定する。処理時間が設定時間以上でない場合(S124:NO)には、S126に進む。また、S102でキュー92からメッセージを取得していない場合(S102:NO)にも、S126に進む。S126において、CPU12は、所定時間の経過を待つ。つまり、所定時間スリープする。そして、S100の戻り、以降の処理が行われる。一方、処理時間が設定時間以上である場合(S124:YES)には、S128に進む。S128において、CPU12は、所定時間より短い時間の経過を待つ。つまり、所定時間より短い時間スリープする。そして、S100の戻り、以降の処理が行われる。   In S124, the CPU 12 determines whether or not the processing time is equal to or longer than the set time. If the processing time is not longer than the set time (S124: NO), the process proceeds to S126. In addition, when the message is not acquired from the queue 92 in S102 (S102: NO), the process proceeds to S126. In S126, the CPU 12 waits for the elapse of a predetermined time. That is, it sleeps for a predetermined time. Then, the process returns to S100 and the subsequent processing is performed. On the other hand, when the processing time is equal to or longer than the set time (S124: YES), the process proceeds to S128. In S128, the CPU 12 waits for a time shorter than a predetermined time. That is, it sleeps for a time shorter than a predetermined time. Then, the process returns to S100 and the subsequent processing is performed.

また、ウェブサーバ30で通信プログラム40aが起動されると、図9及び図10に示すフローの処理が開始される。S200において、CPU32は、リクエストを受信したことにより発生したデータを、OS40bを介して受信したか否かを判定する。リクエストを受信していない場合(S200:NO)には、S200の処理が繰り返される。一方、リクエストを受信した場合(S200:YES)には、S202に進む。   Moreover, when the communication program 40a is started by the web server 30, the process of the flow shown in FIGS. 9 and 10 is started. In S200, the CPU 32 determines whether the data generated by receiving the request is received via the OS 40b. If the request has not been received (S200: NO), the process of S200 is repeated. On the other hand, if a request has been received (S200: YES), the process proceeds to S202.

S202において、CPU32は、受信したリクエストがレジスタ情報であるか否かを判定する。受信したリクエストがレジスタ情報である場合(S202:YES)には、S204に進む。S204において、CPU32は、<MFPと中継サーバとの間の通信確立>に記載されているように、データベース96にレジスタ情報を送信するためのデータを、OS40bを介して出力する。そして、S206に進む。S206において、CPU32は、データベース96から認証情報を受信する。そして、S208に進む。S208において、CPU32は、MFP82,84,86に認証情報を送信するためのデータを、OS40bを介して出力する。そして、S200に戻る。   In S202, the CPU 32 determines whether or not the received request is register information. If the received request is register information (S202: YES), the process proceeds to S204. In S204, the CPU 32 outputs data for transmitting register information to the database 96 via the OS 40b, as described in <Establishing communication between MFP and relay server>. Then, the process proceeds to S206. In S <b> 206, the CPU 32 receives authentication information from the database 96. Then, the process proceeds to S208. In S208, the CPU 32 outputs data for transmitting authentication information to the MFPs 82, 84, 86 via the OS 40b. Then, the process returns to S200.

また、S202で受信したリクエストがレジスタ情報でない場合(S202:NO)には、S210に進む。S210において、CPU32は、受信したリクエストがサービスサーバ90からの問い合わせであるか否かを判定する。受信したリクエストがサービスサーバ90からの問い合わせである場合(S210:YES)には、S212に進む。S212において、CPU32は、<デバイス情報の問い合わせ>に記載されているように、データベース96にデバイス情報の問い合わせを実行するためのデータを、OS40bを介して出力する。そして、S214に進む。S214において、CPU32は、データベース96からデバイス情報を受信する。そして、S216に進む。S216において、CPU32は、サービスサーバ90にデバイス情報を送信するためのデータを、OS40bを介して出力する。そして、S200に戻る。   If the request received in S202 is not register information (S202: NO), the process proceeds to S210. In S <b> 210, the CPU 32 determines whether the received request is an inquiry from the service server 90. If the received request is an inquiry from the service server 90 (S210: YES), the process proceeds to S212. In S212, the CPU 32 outputs data for executing a device information inquiry to the database 96 via the OS 40b, as described in <Device Information Inquiry>. Then, the process proceeds to S214. In S <b> 214, the CPU 32 receives device information from the database 96. Then, the process proceeds to S216. In S216, the CPU 32 outputs data for transmitting device information to the service server 90 via the OS 40b. Then, the process returns to S200.

また、S210で受信したリクエストがサービスサーバ90からの問い合わせでない場合(S210:NO)には、S218に進む。S218において、CPU32は、受信したリクエストがスキャンデータであるか否かを判定する。受信したリクエストがスキャンデータである場合(S218:YES)には、S220に進む。S220において、CPU32は、<通信システムを利用したMFPによるスキャン処理>に記載されているように、サービスサーバ90にスキャンデータを送信するためのデータを、OS40bを介して出力する。そして、S200に戻る。   If the request received in S210 is not an inquiry from the service server 90 (S210: NO), the process proceeds to S218. In S218, the CPU 32 determines whether or not the received request is scan data. If the received request is scan data (S218: YES), the process proceeds to S220. In S220, the CPU 32 outputs data for transmitting scan data to the service server 90 via the OS 40b, as described in <Scan Process by MFP Using Communication System>. Then, the process returns to S200.

また、S218で受信したリクエストがスキャンデータでない場合(S218:NO)には、S222に進む。S222において、CPU32は、上記処理と異なる他の処理を実行する。そして、S200に戻る。   If the request received in S218 is not scan data (S218: NO), the process proceeds to S222. In S222, the CPU 32 executes another process different from the above process. Then, the process returns to S200.

<変形例>
本実施形態では、デバイス情報を記憶するためのキュー92と、デバイス情報を処理するための情報処理サーバ10とが、個別の装置とされているが、キュー92と情報処理サーバ10とを1つの装置することが可能である。つまり、キュー92の機能と情報処理サーバ10の機能を備えた装置に、中継サーバ50、70は、デバイス情報を送信し、その装置が、デバイス情報を処理し、データベース96に送信することが可能である。また、キュー92と中継サーバ50、70とを1つの装置とすることが可能である。つまり、中継サーバ50は、中継サーバ50、70は、中継サーバ50、70と同じ装置に備えられたキュー92の機能によって利用可能なメモリにデバイス情報を記憶させ、情報処理サーバ10が、キュー92の機能と中継サーバ50、70の機能を備えた装置にからデバイス情報を取得することが可能である。もちろん、キュー92と中継サーバ50、70と情報処理サーバ10と、を別の装置としたほうが中継サーバ50,70や、情報処理サーバ10にかかる負担は軽減される。
<Modification>
In this embodiment, the queue 92 for storing the device information and the information processing server 10 for processing the device information are separate devices. However, the queue 92 and the information processing server 10 are combined into one. It is possible to device. That is, the relay servers 50 and 70 can transmit device information to an apparatus having the function of the queue 92 and the function of the information processing server 10, and the apparatus can process the device information and transmit it to the database 96. It is. Further, the queue 92 and the relay servers 50 and 70 can be made one device. That is, the relay server 50 stores the device information in a memory that can be used by the function of the queue 92 provided in the same apparatus as the relay servers 50 and 70, and the information processing server 10 It is possible to acquire device information from an apparatus having the above functions and the functions of the relay servers 50 and 70. Of course, if the queue 92, the relay servers 50 and 70, and the information processing server 10 are separate devices, the burden on the relay servers 50 and 70 and the information processing server 10 is reduced.

また、データベース96とウェブサーバ30とを1つの装置とすることも可能である。この場合、ウェブサーバ30は、サービスサーバ90などからのリクエストに応じて、ウェブサーバ30と同じ装置に備えられたデータベース96の機能によって利用可能なメモリに記憶されている情報を読み出して取得する。もちろん、データベース96とウェブサーバ30とを別の装置としたほうが、ウェブサーバ30にかかる負担は軽減される。   Further, the database 96 and the web server 30 can be combined into one device. In this case, in response to a request from the service server 90 or the like, the web server 30 reads and acquires information stored in a memory that can be used by the function of the database 96 provided in the same device as the web server 30. Of course, if the database 96 and the web server 30 are separate devices, the burden on the web server 30 is reduced.

また、本実施形態では、ウェブサーバ30が、MFP82,84,86からスキャンデータを取得した場合に、スキャンデータをサービスサーバ90に転送しているが、コールバック方式によるサービスサーバ90への転送方法を用いることが可能である。コールバック方式とは、ウェブサーバ30がスキャンデータを受信した場合に、スキャンデータを受信した旨の情報をサービスサーバ90に送信し、サービスサーバ90がウェブサーバ30からスキャンデータを取得する方式である。   In the present embodiment, when the web server 30 acquires scan data from the MFPs 82, 84, 86, the scan data is transferred to the service server 90. However, the transfer method to the service server 90 by the callback method is used. Can be used. The callback method is a method in which, when the web server 30 receives scan data, information indicating that the scan data has been received is transmitted to the service server 90, and the service server 90 acquires the scan data from the web server 30. .

また、ウェブサーバ30がS218で受信するリクエストは、スキャンデータのリクエストに限らない。MFP82,84,86のステータス情報や設定情報のリクエストであってもよい。   Further, the request that the web server 30 receives in S218 is not limited to a request for scan data. It may be a request for status information or setting information of the MFPs 82, 84, 86.

また、本実施形態では、デバイス情報として、中継サーバ50,70とMFP82,84,86との間の通信状態に関する情報が採用されているが、MFP毎の特定の情報であれば、種々の情報を採用することが可能である。   In this embodiment, information regarding the communication state between the relay servers 50 and 70 and the MFPs 82, 84, and 86 is employed as device information. Can be adopted.

本実施形態の情報処理サーバ10では、通信プログラム20aに基づいて実行するCPU12が、各種の処理を行う場合を説明した。しかし、この形態に限られない。通信プログラム20aに基づいて実行するCPU12が、OS20b、他のシステム、ハード構成に対して、各種の処理を行わせる指示を出す形態であってもよい。また、本実施形態のウェブサーバ30では、通信プログラム40aに基づいて実行するCPU32が、各種の処理を行う場合を説明した。しかし、この形態に限られない。通信プログラム40aに基づいて実行するCPU32が、OS40b、他のシステム、ハード構成に対して、各種の処理を行わせる指示を出す形態であってもよい。   In the information processing server 10 of the present embodiment, the case where the CPU 12 executed based on the communication program 20a performs various processes has been described. However, it is not limited to this form. The CPU 12 executed based on the communication program 20a may issue an instruction to perform various processes to the OS 20b, other systems, and hardware configurations. Moreover, in the web server 30 of this embodiment, the case where CPU32 performed based on the communication program 40a performed various processes was demonstrated. However, it is not limited to this form. The CPU 32 executed based on the communication program 40a may issue an instruction to perform various processes to the OS 40b, other systems, and hardware configurations.

また、上記実施形態では、情報処理サーバ10の通信プログラム20aの実行により図7及び図8に示すフローが実行されるが、そのフローにおいて、S100,S102,S106〜S116,S120,S124〜S128の処理を行わないことも可能である。なお、上記ステップの全ての処理を行わないのではなく、上記ステップのうち、いずれかのステップの処理を任意に加えたフローとすることも可能である。   Moreover, in the said embodiment, although the flow shown in FIG.7 and FIG.8 is performed by execution of the communication program 20a of the information processing server 10, in that flow, S100, S102, S106-S116, S120, S124-S128 are performed. It is also possible not to perform processing. It should be noted that not all the processes of the above steps are performed, but a flow in which the process of any one of the steps is arbitrarily added may be used.

また、上記実施形態では、ウェブサーバ30の通信プログラム40aの実行により図9及び図10に示すフローが実行されるが、そのフローにおいて、S200〜S212,S216〜S222の処理を行わないことも可能である。なお、上記ステップの全ての処理を行わないのではなく、上記ステップのうち、いずれかのステップの処理を任意に加えたフローとすることも可能である。   Moreover, in the said embodiment, although the flow shown in FIG.9 and FIG.10 is performed by execution of the communication program 40a of the web server 30, it is also possible not to perform the process of S200-S212 and S216-S222 in the flow. It is. It should be noted that not all the processes of the above steps are performed, but a flow in which the process of any one of the steps is arbitrarily added may be used.

また、本明細書または図面に説明した技術要素は、単独であるいは各種の組み合わせによって技術的有用性を発揮するものであり、出願時請求項記載の組み合わせに限定されるものではない。また、本明細書または図面に例示した技術は複数目的を同時に達成するものであり、そのうちの一つの目的を達成すること自体で技術的有用性を持つものである。   In addition, the technical elements described in the present specification or the drawings exhibit technical usefulness alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. In addition, the technology illustrated in the present specification or the drawings achieves a plurality of objects at the same time, and has technical utility by achieving one of the objects.

通信システム1は、通信システムの一例である。情報処理サーバ10は情報処理サーバの一例である。CPU12はプロセッサの一例である。ネットワークI/F16は通信部の一例である。ウェブサーバ30はクライアント要求処理サーバの一例である。CPU32はプロセッサの一例である。中継サーバ50,70は中継サーバの一例である。ロードバランサ80はロードバランサの一例である。MFP82,84,86はデバイスの一例である。サービスサーバ90はクライアント装置の一例である。キュー92はメモリの一例である。データベース96はデータベースの一例である。認証情報は第1情報の一例である。デバイス情報は第2情報の一例である。オンラインデバイスリストおよび、オフラインデバイスリストは第3情報の一例である。XMPP over BOSHは接続確立型プロトコルの一例である。XMPPセッションは接続確立要求情報の一例である。XMPPコネクションは維持情報の一例である。   The communication system 1 is an example of a communication system. The information processing server 10 is an example of an information processing server. The CPU 12 is an example of a processor. The network I / F 16 is an example of a communication unit. The web server 30 is an example of a client request processing server. The CPU 32 is an example of a processor. The relay servers 50 and 70 are examples of relay servers. The load balancer 80 is an example of a load balancer. The MFPs 82, 84, and 86 are examples of devices. The service server 90 is an example of a client device. The queue 92 is an example of a memory. The database 96 is an example of a database. The authentication information is an example of first information. The device information is an example of second information. The online device list and the offline device list are examples of third information. XMPP over BOSH is an example of a connection establishment type protocol. An XMPP session is an example of connection establishment request information. The XMPP connection is an example of maintenance information.

S104を実行するCPU12は、第2情報読取手段の一例である。S118,S122を実行するCPU12は、第3情報送信手段の一例である。S110,S112を実行するCPU12は、情報区分手段、および情報処理手段の一例である。S214を実行するCPU32は、第3情報読取手段の一例である。S216を実行するCPU32は、実行手段の一例である。   The CPU 12 that executes S104 is an example of a second information reading unit. The CPU 12 that executes S118 and S122 is an example of a third information transmission unit. The CPU 12 that executes S110 and S112 is an example of information sorting means and information processing means. The CPU 32 that executes S214 is an example of a third information reading unit. The CPU 32 that executes S216 is an example of an execution unit.

なお、各プログラムは一つのプログラムモジュールから構成されるものであってもよいし、複数のプログラムモジュールから構成されるものであってもよい。また、各一例は置換可能な他の構成であってもよく、本発明の範疇である。プログラム(通信プログラム20a、通信プログラム40aなど)に基づく処理を実行するコンピュータ(CPU12、CPU32など)であってもよいし、オペレーティングシステムや他のアプリケーション、プログラムなど、通信プログラム以外のプログラムに基づく処理を実行するコンピュータであってもよいし、コンピュータの指示に従って動作するハード構成であってもよいし、コンピュータとハード構成とが連動した構成であってもよい。もちろん、複数のプログラムに基づく処理を連動させて処理を実行するコンピュータであってもよいし、複数のプログラムに基づく処理を連動させて処理を実行するコンピュータの指示に従って動作するハード構成であってもよい。   Each program may be composed of one program module or may be composed of a plurality of program modules. In addition, each example may have another replaceable configuration and is within the scope of the present invention. It may be a computer (CPU 12, CPU 32, etc.) that executes processing based on a program (communication program 20a, communication program 40a, etc.), or processing based on a program other than a communication program, such as an operating system, other applications, or a program. It may be a computer that executes, a hardware configuration that operates according to instructions from the computer, or a configuration in which the computer and the hardware configuration are linked. Of course, it may be a computer that executes processes by linking processes based on a plurality of programs, or may have a hardware configuration that operates according to instructions from a computer that executes processes by linking processes based on a plurality of programs. Good.

さらに、本発明の範疇であるプログラムは、non−transitoryな記録媒体に記録されて提供されてもよい。non−transitoryな記録媒体は、CD−ROM、DVD−ROM等の他、通信ネットワークを介して情報処理サーバ10、ウェブサーバ30に接続可能なサーバ装置に搭載された記憶部を含んでもよい。そして、サーバ装置の記憶部に記憶されたプログラムは、当該プログラムを示す情報或いは信号として、インターネット等の通信ネットワークを介して配信されてもよい。   Furthermore, the program that is the category of the present invention may be provided by being recorded on a non-transitory recording medium. The non-transitory recording medium may include a storage unit mounted on a server device that can be connected to the information processing server 10 and the web server 30 via a communication network, in addition to a CD-ROM, a DVD-ROM, and the like. And the program memorize | stored in the memory | storage part of the server apparatus may be delivered via communication networks, such as the internet, as the information or signal which shows the said program.

1:通信システム、10:情報処理サーバ、12:CPU、16:ネットワークI/F、30:ウェブサーバ、32:CPU、36:ネットワークI/F、50:中継サーバ、70:中継サーバ、80:ロードバランサ、82:MFP、84:MFP、86:MFP、90:サービスサーバ、92:キュー、96:データベース
1: Communication system, 10: Information processing server, 12: CPU, 16: Network I / F, 30: Web server, 32: CPU, 36: Network I / F, 50: Relay server, 70: Relay server, 80: Load balancer, 82: MFP, 84: MFP, 86: MFP, 90: service server, 92: queue, 96: database

Claims (19)

複数のデバイスと、
前記複数のデバイスとネットワーク通信可能な中継サーバと、
データベースとネットワーク通信可能な通信部と、プロセッサとを備える情報処理サーバと、
前記データベースと前記中継サーバとクライアント装置とネットワーク通信可能なクライアント要求処理サーバと、
を備えた通信システムであって、
前記複数のデバイスの各々が前記中継サーバに接続確立要求情報を送信することによって、接続確立型プロトコルに従った接続が、前記接続確立要求情報の送信元デバイスの各々と前記中継サーバとの間に確立され、
前記複数のデバイスの各々は、
前記接続確立型プロトコルに従った接続を維持するための維持情報を含む第1情報を、第1タイミングで前記中継サーバに送信することが可能であり、
前記中継サーバは、
前記第1情報を受信したことに応じて、前記第1情報に含まれる維持情報の送信元デバイスと前記中継サーバとの間の接続が維持されていることを示す第2情報を、前記データベースが備えられた装置とも、前記クライアント装置とも、前記クライアント要求処理サーバとも異なる装置に備えられたメモリに記憶するために送信し、前記接続を確立したデバイスから、前記第1情報を受信できなかったことに応じて、維持情報を取得できなかったデバイスと前記中継サーバとの間の接続が維持されていないことを示す前記第2情報を、前記メモリに記憶するために送信することが可能であり、
前記プロセッサは、
前記中継サーバから送信されて前記メモリに記憶された前記第2情報を、前記メモリから、前記第1タイミングとは異なる第2タイミングで読み出す第2情報読出手段と、
前記第2情報読出手段によって読み出された前記第2情報を、前記複数のデバイスの各々と前記中継サーバとの間で通信が確立していることを示す通信確立情報と、前記複数のデバイスの各々と前記中継サーバとの間で通信が確立していないことを示す通信不確立情報とに区分けする情報区分手段と
前記情報区分手段によって区分けされた前記通信確立情報と前記通信不確立情報との少なくとも一方に基づく第3情報を、前記データベースが備えられた装置に前記通信部を介して送信する第3情報送信手段と、
して機能することが可能であり、
前記クライアント要求処理サーバのプロセッサは、
前記第3情報送信手段によって前記データベースが備えられた装置に送信された前記第3情報を、前記クライアント装置から受信した要求情報に応じて、前記データベースから読み出す第3情報読出手段と、
前記第3情報読出手段が前記第3情報を読み出したことに応じて、前記クライアント装置から受信した要求情報に対応する処理を実行する実行手段と、
して機能することが可能であることを特徴とする通信システム。
Multiple devices,
A relay server capable of network communication with the plurality of devices;
An information processing server including a communication unit capable of network communication with a database, and a processor;
A client request processing server capable of network communication with the database, the relay server, and the client device;
A communication system comprising:
Each of the plurality of devices transmits connection establishment request information to the relay server, so that a connection according to a connection establishment type protocol is established between each of the connection establishment request information transmission source devices and the relay server. Established,
Each of the plurality of devices is
The first information including maintenance information for maintaining a connection according to the connection establishment type protocol can be transmitted to the relay server at a first timing ,
The relay server is
In response to receiving the first information, the database includes second information indicating that a connection between a transmission source device of maintenance information included in the first information and the relay server is maintained. The first information could not be received from the device that established the connection , transmitted for storage in a memory provided in a different device than the provided device, the client device, and the client request processing server. The second information indicating that the connection between the device for which maintenance information could not be acquired and the relay server is not maintained , can be transmitted to store in the memory ,
The processor is
Second information reading means for reading the second information transmitted from the relay server and stored in the memory from the memory at a second timing different from the first timing;
Communication establishment information indicating that communication is established between each of the plurality of devices and the relay server, and the second information read by the second information reading unit; Information classification means for classifying into communication non-establishment information indicating that communication is not established between each and the relay server ;
Third information transmitting means for transmitting third information based on at least one of the communication establishment information and the communication non-establishment information classified by the information classification means to the device provided with the database via the communication unit. When,
Can function and
The client request processing server processor comprises:
A third information reading means for reading the third information transmitted from the database in response to the request information received from the client device, the third information transmitted to the device provided with the database by the third information transmitting means;
Execution means for executing processing corresponding to the request information received from the client device in response to the third information reading means reading the third information;
A communication system characterized in that the communication system can function.
前記クライアント要求処理サーバにおける前記実行手段は、
前記第3情報読出手段によって読み出された前記第3情報を、前記クライアント装置に送信することを特徴とする請求項1に記載の通信システム。
The execution means in the client request processing server includes:
The communication system according to claim 1, wherein the third information read by the third information reading unit is transmitted to the client device.
前記中継サーバは、
前記複数のデバイスの各々から送信される前記第1情報のうち、第1周期で送信される周期情報を受信したことに応じて、および、所定のタイミングで前記周期情報を受信できなかったことに応じて、前記複数のデバイスの各々と前記中継サーバとの間の通信状態に関する前記第2情報を、前記メモリに記憶するために送信することが可能であり、
前記情報処理サーバにおける前記第2情報読出手段は、
前記中継サーバから送信されて前記メモリに記憶された前記第2情報を、前記メモリから、前記第1周期とは異なる第2周期で読み出し、
前記情報処理サーバにおける前記第3情報送信手段は、
前記複数のデバイスの各々と前記中継サーバとの間の通信状態に関する前記第2情報を前記第2情報読出手段が読み出したことに応じて、前記周期情報の送信元デバイスと前記中継サーバとの間の通信状態に関する前記第3情報を、前記データベースが備えられた装置に、前記通信部を介して送信し、
前記クライアント要求処理サーバにおける前記第3情報読出手段は、
一のデバイスと前記中継サーバとの間の通信状態を問い合わせる前記要求情報を前記クライアント装置から受信したことに応じて、前記一のデバイスと前記中継サーバとの間の通信状態に関する前記第3情報を、前記データベースから読み出し、
前記クライアント要求処理サーバにおける前記実行手段は、
一のデバイスと前記中継サーバとの間の通信状態を問い合わせる前記要求情報を前記クライアント装置から受信した後に、前記第3情報読出手段が前記第3情報を読み出したことに応じて、前記第3情報読出手段によって読出された、前記一のデバイスと前記中継サーバとの間の通信状態に関する前記第3情報を前記クライアント装置に送信する処理を実行することを特徴とする請求項1または2に記載の通信システム。
The relay server is
Of the first information transmitted from each of the plurality of devices, the period information transmitted in the first period is received and the period information cannot be received at a predetermined timing. In response, the second information regarding the communication state between each of the plurality of devices and the relay server can be transmitted for storage in the memory,
The second information reading means in the information processing server includes:
Reading the second information transmitted from the relay server and stored in the memory from the memory in a second period different from the first period;
The third information transmitting unit in the information processing server includes:
In response to the second information reading means reading the second information related to the communication state between each of the plurality of devices and the relay server, the period information is transmitted between the device and the relay server. said third information on the communication state of the database provided apparatus, transmits through the front Symbol communications unit,
The third information reading means in the client request processing server includes:
In response to receiving the request information for inquiring the communication state between one device and the relay server from the client device, the third information regarding the communication state between the one device and the relay server is obtained. Read from the database,
The execution means in the client request processing server includes:
In response to the third information reading means reading the third information after receiving the request information for inquiring the communication state between one device and the relay server from the client device, the third information 3. The process according to claim 1, wherein a process of transmitting the third information regarding the communication state between the one device and the relay server read by the reading unit to the client device is executed. Communications system.
記複数のデバイスの各々は、
前記第1情報のうち、前記維持情報を第1周期で送信することが可能であり、
前記中継サーバは、
前記維持情報を受信したことに応じて、前記維持情報の送信元デバイスと前記中継サーバとの間の接続が維持されていることを示す前記第2情報を、前記メモリに記憶するために送信し、前記接続を確立したデバイスから、前記維持情報を受信できなかったことに応じて、維持情報を取得できなかったデバイスと前記中継サーバとの間の接続が維持されていないことを示す前記第2情報を、前記メモリに記憶するために送信することが可能であり、
前記情報処理サーバにおける前記第2情報読出手段は、
前記中継サーバから送信されて前記メモリに記憶された前記第2情報を、前記メモリから、前記第1周期とは異なる第2周期で読み出し、
前記情報処理サーバにおける前記第3情報送信手段は、
前記複数のデバイスの各々と前記中継サーバとの間に確立された接続が維持されているか否かを示す前記第2情報を前記第2情報読出手段が読み出したことに応じて、前記複数のデバイスの各々と前記中継サーバとの間に確立された接続の維持に関する前記第3情報を、前記データベースが備えられた装置に、前記通信部を介して送信することを特徴とする請求項1ないし3の何れか1項に記載の通信システム。
Each of the previous SL multiple devices,
Of the first information, it is possible to send a pre Ki維 lifting information in a first period,
The relay server is
In response to receiving the maintenance information, the second information indicating that the connection between the maintenance information transmission source device and the relay server is maintained is transmitted to be stored in the memory. Indicating that the connection between the device that has not obtained the maintenance information and the relay server is not maintained in response to the failure to receive the maintenance information from the device that has established the connection. Information can be transmitted for storage in the memory;
The second information reading means in the information processing server includes:
Reading the second information transmitted from the relay server and stored in the memory from the memory in a second period different from the first period;
The third information transmitting unit in the information processing server includes:
The plurality of devices in response to the second information reading means reading out the second information indicating whether or not the connection established between each of the plurality of devices and the relay server is maintained. The third information relating to maintaining a connection established between each of the servers and the relay server is transmitted to the device provided with the database via the communication unit. The communication system according to any one of the above.
前記中継サーバは、
前記維持情報を受信したことに応じて、前記維持情報の送信元デバイスに、前記維持情報の送信元デバイスと前記中継サーバとの間の接続が維持されていることを示す維持確認情報を送信することが可能であり、
前記複数のデバイスの各々は、
前記維持情報を送信した後、前記維持確認情報を受信できなかったことに応じて、前記中継サーバに接続確立要求情報と、前記維持情報と、を送信することが可能であり、
前記中継サーバは、
維持情報を取得できなかったデバイスと前記中継サーバとの間の接続が維持されていないことを示す前記第2情報を送信した後に、前記維持情報を取得できなかったデバイスから、前記接続確立要求情報と、前記維持情報と、を受信したことに応じて、前記維持情報の送信元デバイスと前記中継サーバとの間の接続が維持されていることを示す前記第2情報を、前記メモリに記憶するために送信することが可能であることを特徴とする請求項4に記載の通信システム。
The relay server is
In response to receiving the maintenance information, transmission of maintenance confirmation information indicating that a connection between the maintenance information transmission source device and the relay server is maintained to the maintenance information transmission source device. Is possible and
Each of the plurality of devices is
After transmitting the maintenance information, in response to failure to receive the maintenance confirmation information, it is possible to transmit connection establishment request information and the maintenance information to the relay server,
The relay server is
After transmitting the second information indicating that the connection between the device for which maintenance information could not be acquired and the relay server is not maintained, the connection establishment request information from the device for which the maintenance information could not be acquired And the second information indicating that the connection between the maintenance information transmission source device and the relay server is maintained in the memory in response to receiving the maintenance information. 5. The communication system according to claim 4, wherein the communication system is capable of transmitting for the purpose.
前記クライアント要求処理サーバにおける前記実行手段は、
のデバイスと前記中継サーバとの間の通信状態に関する前記第3情報を前記クライアント装置に送信する処理を実行した後に、一のデバイスへの指示を要求する前記要求情報を前記クライアント装置から受信したことに応じて、前記要求情報に基づいた、前記一のデバイスへの指示情報を前記中継サーバに送信する処理を実行することが可能であり、
前記中継サーバは、
前記一のデバイスとの間の接続が維持されている状態で前記一のデバイスへの指示情報を受信したことに応じて、前記一のデバイスへ前記指示情報を送信することが可能であることを特徴とする請求項5に記載の通信システム。
The execution means in the client request processing server includes:
After executing the process of transmitting the third information related to the communication state between one device and the relay server to the client device, the request information requesting an instruction to the one device is received from the client device. Accordingly, it is possible to execute processing for transmitting instruction information to the one device based on the request information to the relay server,
The relay server is
The instruction information can be transmitted to the one device in response to receiving the instruction information to the one device while the connection with the one device is maintained. The communication system according to claim 5, characterized in that:
前記複数のデバイスの各々は、
前記指示情報を前記中継サーバから受信したことに応じて、前記指示情報に基づいた応答情報を、前記第1情報として前記中継サーバへ送信することが可能であり、
前記中継サーバは、
前記一のデバイスへの指示情報を送信した後に、前記一のデバイスから前記応答情報を受信したことに応じて、前記応答情報を前記第2情報として前記メモリに記憶するために送信することが可能であり、
前記第3情報送信手段は、
前記応答情報を前記第2情報読出手段が読み出したことに応じて、前記応答情報を前記第3情報として、前記データベースが備えられた装置に、前記通信部を介して送信することが可能であり、
前記クライアント要求処理サーバにおける前記実行手段は、
前記一のデバイスへの指示を要求する前記要求情報を前記クライアント装置から受信した後に、前記一のデバイスに関する前記応答情報を前記第3情報読出手段が読み出したことに応じて、前記応答情報を前記クライアント装置に送信する処理を実行することが可能であることを特徴とする請求項6に記載の通信システム。
Each of the plurality of devices is
In response to receiving the instruction information from the relay server, it is possible to transmit response information based on the instruction information to the relay server as the first information,
The relay server is
After transmitting the instruction information to the one device, the response information can be transmitted to be stored as the second information in the memory in response to receiving the response information from the one device. And
The third information transmitting means includes
In response to the response information being read by the second information reading means, it is possible to transmit the response information as the third information to the device provided with the database via the communication unit. ,
The execution means in the client request processing server includes:
After the request information requesting an instruction to the one device is received from the client device, the response information is received in response to the third information reading means reading the response information related to the one device. The communication system according to claim 6, wherein a process to be transmitted to the client device can be executed.
前記メモリは、前記情報処理サーバとも、前記中継サーバとも異なる装置に設けられており、
前記第2情報読出手段は、前記通信部を介して、前記メモリを備える装置から前記第2情報を読み出すことを特徴とする請求項1ないし7の何れか1項に記載の通信システム。
The memory is provided in a device different from both the information processing server and the relay server,
The communication system according to any one of claims 1 to 7, wherein the second information reading unit reads the second information from a device including the memory via the communication unit.
前記通信システムは、
複数の前記中継サーバと、
前記複数の中継サーバと前記複数のデバイスとのネットワーク通信を、前記複数の中継サーバのいずれかに分散するロードバランサと、
を備えることを特徴とする請求項1ないし8の何れか1項に記載の通信システム。
The communication system is:
A plurality of the relay servers;
A load balancer that distributes network communication between the plurality of relay servers and the plurality of devices to any of the plurality of relay servers;
The communication system according to any one of claims 1 to 8, further comprising:
前記接続確立型プロトコルは、XMPP over BOSH(eXtensible Messaging
and Presence Protocol Over Bidirectional-streams Over Synchronous HTTP)であり
、前記接続確立要求情報はXMPPセッション確立要求情報であり、前記維持情報はXMPPコネクション確立要求情報であることを特徴とする請求項1ないし9の何れか1項に記載の通信システム。
The connection establishment type protocol is XMPP over BOSH (eXtensible Messaging
10. The Presence Protocol Over Bidirectional-streams Over Synchronous HTTP), the connection establishment request information is XMPP session establishment request information, and the maintenance information is XMPP connection establishment request information. The communication system according to any one of the above.
ネットワーク通信可能な通信部と、
プロセッサと、
を備える情報処理サーバであって、
複数のデバイスの各々が中継サーバに接続確立要求情報を送信することによって、接続確立型プロトコルに従った接続が、前記接続確立要求情報の送信元デバイスの各々と前記中継サーバとの間に確立される場合に、
前記プロセッサは、
前記複数のデバイスの各々から第1タイミングで中継サーバに送信された、前記接続確立型プロトコルに従った接続を維持するための維持情報を含む第1情報に基づく情報であって、前記中継サーバから送信されてメモリに記憶された、前記第1情報に含まれる維持情報の送信元デバイスと前記中継サーバとの間の接続が維持されているか否かを示す第2情報を、前記メモリから、前記第1タイミングとは異なる第2タイミングで読み出す第2情報読出手段と、
前記第2情報読出手段によって読み出された前記第2情報を、前記複数のデバイスの各々と前記中継サーバとの間で通信が確立していることを示す通信確立情報と、前記複数のデバイスの各々と前記中継サーバとの間で通信が確立していないことを示す通信不確立情報とに区分けする情報区分手段と
前記情報区分手段によって区分けされた前記通信確立情報と前記通信不確立情報との少なくとも一方に基づく情報であって、前記メモリが備えられた装置とは異なる装置に備えられたデータベースに記憶させるべき第3情報を、前記データベースに記憶された前記第3情報を用いた処理を、前記メモリが備えられた装置とは異なる装置であるクライアント装置から受信した要求情報に応じて行う装置であって、前記メモリが備えられた装置とは異なる装置であるクライアント要求処理サーバとネットワークを介して、接続した前記データベースが備えられた装置に、前記通信部を介して送信する第3情報送信手段と、
して機能することが可能であることを特徴とする情報処理サーバ。
A communication unit capable of network communication;
A processor;
An information processing server comprising:
Each of the plurality of devices transmits connection establishment request information to the relay server, whereby a connection according to the connection establishment type protocol is established between each of the connection establishment request information transmission source devices and the relay server. If
The processor is
Information based on first information transmitted from each of the plurality of devices to the relay server at a first timing and including maintenance information for maintaining a connection according to the connection establishment type protocol, from the relay server The second information indicating whether or not the connection between the transmission source device of the maintenance information included in the first information and the relay server transmitted and stored in the memory is maintained from the memory, Second information reading means for reading at a second timing different from the first timing;
Communication establishment information indicating that communication is established between each of the plurality of devices and the relay server, and the second information read by the second information reading unit; Information classification means for classifying into communication non-establishment information indicating that communication is not established between each and the relay server ;
Information based on at least one of the communication establishment information and the communication non-establishment information classified by the information classification means, and stored in a database provided in a device different from the device provided with the memory A device that performs processing using the third information stored in the database in response to request information received from a client device that is a device different from the device provided with the memory, A third information transmitting means for transmitting via the communication unit to a device provided with the database connected via a network with a client request processing server which is a device different from the device provided with a memory;
An information processing server characterized by being capable of functioning as a server.
前記第3情報送信手段は、
前記複数のデバイスの各々と前記中継サーバとの間の通信状態に関する前記第2情報を、前記第2情報読出手段が読み出したことに応じて、前記第2情報が対象とするデバイスと前記中継サーバとの間の通信状態に関する前記第3情報を、前記データベースが備えられた装置に、前記通信部を介して送信することを特徴とする請求項11に記載の情報処理サーバ。
The third information transmitting means includes
The device targeted by the second information and the relay server in response to the second information reading means reading out the second information related to the communication state between each of the plurality of devices and the relay server The information processing server according to claim 11, wherein the third information related to a communication state between the information processing apparatus and the information processing apparatus is transmitted to the apparatus including the database via the communication unit.
前記第2情報読出手段は、
前記中継サーバに前記複数のデバイスの各々から送信された接続確立要求情報によって前記中継サーバと前記複数のデバイスの各々との間に確立された、接続確立型プロトコルに従った接続が、前記接続を維持するために前記接続確立要求情報の送信元デバイスの各々から第1周期で送信される維持情報によって維持されているか否かを示す前記第2情報を、前記メモリから、前記第1周期とは異なる第2周期で読み出し、
前記第3情報送信手段は、
前記複数のデバイスの各々と前記中継サーバとの間に確立された接続が維持されているか否かを示す前記第2情報を前記第2情報読出手段が読み出したことに応じて、前記複数の送信元デバイスの各々と前記中継サーバとの間に確立された接続の維持に関する前記第3情報を、前記データベースが備えられた装置に、前記通信部を介して送信することを特徴とする請求項12に記載の情報処理サーバ。
The second information reading means includes
A connection according to a connection establishment type protocol established between the relay server and each of the plurality of devices based on connection establishment request information transmitted from each of the plurality of devices to the relay server, In order to maintain the second information indicating whether or not maintained by the maintenance information transmitted in each of the first period from each of the transmission source device of the connection establishment request information from the memory, the first period Read in a different second period,
The third information transmitting means includes
The plurality of transmissions in response to the second information reading means reading the second information indicating whether or not the connection established between each of the plurality of devices and the relay server is maintained. 13. The third information related to maintaining a connection established between each of the original devices and the relay server is transmitted to the apparatus provided with the database via the communication unit. Information processing server described in 1.
前記第3情報送信手段は、
前記接続を維持するための期間内に、接続確立要求情報の送信元であるデバイスから前記維持情報を受信できなかった前記中継サーバによって送信されてメモリに記憶された、前記接続確立要求情報の送信元デバイスとの接続が維持されていないことを示す前記第2情報を前記第2情報読出手段が読み出したことに応じて、前記接続確立要求情報の送信元デバイスと前記中継サーバとの間の接続が維持されていないことを示す前記第3情報を、前記データベースが備えられた装置に、前記通信部を介して送信することを特徴とする請求項13に記載の情報処理サーバ。
The third information transmitting means includes
Transmission of the connection establishment request information transmitted by the relay server that has failed to receive the maintenance information from the device that is the transmission source of the connection establishment request information and stored in the memory within the period for maintaining the connection Connection between the transmission source device of the connection establishment request information and the relay server in response to the second information reading means reading the second information indicating that the connection with the original device is not maintained The information processing server according to claim 13 , wherein the third information indicating that is not maintained is transmitted to the apparatus including the database via the communication unit.
前記第3情報送信手段は、
前記接続確立要求情報の送信元デバイスとの間の接続が維持されなくなった後に、前記接続確立要求情報の送信元デバイスから前記接続確立要求情報と、前記維持情報と、を受信した前記中継サーバによって送信されて前記メモリに記憶された、前記接続確立要求情報の送信元デバイスとの接続が維持されていることを示す前記第2情報を前記第2情報読出手段が読み出したことに応じて、前記接続確立要求情報の送信元デバイスと前記中継サーバとの間の接続が維持されていることを示す前記第3情報を、前記データベースが備えられた装置に、前記通信部を介して送信することを特徴とする請求項14に記載の情報処理サーバ。
The third information transmitting means includes
After the connection with the source device of the connection establishment request information is no longer maintained, the relay server that has received the connection establishment request information and the maintenance information from the source device of the connection establishment request information In response to the second information reading means reading the second information indicating that the connection with the transmission source device of the connection establishment request information transmitted and stored in the memory is maintained, Transmitting the third information indicating that the connection between the transmission source device of the connection establishment request information and the relay server is maintained to the apparatus including the database via the communication unit. The information processing server according to claim 14 , wherein the information processing server is characterized in that:
前記第3情報送信手段は、
一のデバイスと前記中継サーバとの間の通信状態を問い合わせる前記要求情報を前記クライアント要求処理サーバを介して前記クライアント装置から受信した前記中継サーバによって送信されて前記メモリに記憶された、前記一のデバイスと前記中継サーバとの接続が維持されていることを示す前記第2情報を前記第2情報読出手段が読み出したことに応じて、前記一のデバイスと前記中継サーバとの間の接続が維持されていることを示す前記第3情報を、前記データベースが備えられた装置に、前記通信部を介して送信し、
前記一のデバイスと前記中継サーバとの間の接続が維持されていることを示す前記第3情報を送信した後に、一のデバイスへの指示を要求する前記要求情報を、前記クライアント要求処理サーバを介して前記クライアント装置から受信して前記維持されている接続を用いて前記一のデバイスへ前記要求情報を送信して前記一のデバイスから返信された応答情報を受信した前記中継サーバによって送信されてメモリに記憶された前記応答情報を前記第2情報として前記第2情報読出手段が読み出したことに応じて、前記応答情報を前記第3情報として、前記データベースが備えられた装置に、前記通信部を介して送信することを特徴とする請求項13ないし15の何れか1項に記載の情報処理サーバ。
The third information transmitting means includes
The request information for inquiring about a communication state between one device and the relay server is transmitted from the client server received from the client device via the client request processing server and stored in the memory. The connection between the one device and the relay server is maintained in response to the second information reading means reading the second information indicating that the connection between the device and the relay server is maintained. Transmitting the third information indicating that the information has been sent to the device provided with the database via the communication unit;
After transmitting the third information indicating that the connection between the one device and the relay server is maintained, the request information for requesting an instruction to the one device is sent to the client request processing server. Sent from the client device via the relay server that has received the response information sent from the one device and sent the request information to the one device using the maintained connection. In response to the response information stored in the memory being read as the second information by the second information reading means, the communication information is added to the apparatus provided with the database as the response information as the third information. The information processing server according to claim 13 , wherein the information processing server transmits the information through the server.
前記プロセッサは、
前記第2情報読出手段によって読み出された所定数の前記第2情報を、前記所定数以下の前記第3情報に処理する情報処理手段と
して機能することが可能であり、
前記第3情報送信手段は、
前記情報処理手段によって処理された前記所定数以下の前記第3情報を、前記通信部を介して、前記データベースが備えられた装置に送信することを特徴とする請求項13ないし16の何れか1項に記載の情報処理サーバ。
The processor is
It is possible to function as information processing means for processing a predetermined number of the second information read by the second information reading means into the third information equal to or less than the predetermined number,
The third information transmitting means includes
The third information follows the predetermined number that have been processed by said information processing means, via the communication unit, one of claims 13 to 16 and transmits to the database provided apparatus 1 Information processing server according to item.
前記第2情報読出手段は、
所定時間毎に前記メモリから前記第2情報を読み出す際に、前記情報処理手段による処理時間が設定時間以上である場合には、前記メモリから前記第2情報を読み出してから前記第2周期における次の周期となる前に、前記メモリから前記第2情報を読み出すことを特徴とする請求項17に記載の情報処理サーバ。
The second information reading means includes
When reading the second information from the memory every predetermined time, if the processing time by the information processing means is a set time or more, the second information is read from the memory and then the next period in the second period. The information processing server according to claim 17 , wherein the second information is read from the memory before the period becomes.
前記第3情報送信手段は、
前記第2情報読出手段によって読み出された前記所定数の第2情報のなかに、同一のデバイスに関する前記第2情報が存在する場合には、該同一のデバイスに関する情報のうちの最新の情報を前記第3情報として、前記通信部を介して、前記データベースが備えられた装置に送信し、該同一のデバイスに関する情報のうちの最新の前記第2情報以外の前記第2情報を、前記通信部を介して、前記データベースが備えられた装置に送信しないことを特徴とする請求項17または18に記載の情報処理サーバ。
The third information transmitting means includes
If the second information relating to the same device exists in the predetermined number of second information read by the second information reading means, the latest information of the information relating to the same device is obtained. The third information is transmitted to the apparatus provided with the database as the third information, and the second information other than the latest second information among the information related to the same device is transmitted to the communication unit. The information processing server according to claim 17 or 18 , wherein the information processing server is not transmitted to a device provided with the database.
JP2014016894A 2014-01-31 2014-01-31 Communication system and information processing server Active JP6264908B2 (en)

Priority Applications (1)

Application Number Priority Date Filing Date Title
JP2014016894A JP6264908B2 (en) 2014-01-31 2014-01-31 Communication system and information processing server

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
JP2014016894A JP6264908B2 (en) 2014-01-31 2014-01-31 Communication system and information processing server

Publications (2)

Publication Number Publication Date
JP2015144351A JP2015144351A (en) 2015-08-06
JP6264908B2 true JP6264908B2 (en) 2018-01-24

Family

ID=53889145

Family Applications (1)

Application Number Title Priority Date Filing Date
JP2014016894A Active JP6264908B2 (en) 2014-01-31 2014-01-31 Communication system and information processing server

Country Status (1)

Country Link
JP (1) JP6264908B2 (en)

Families Citing this family (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP6494586B2 (en) * 2016-11-17 2019-04-03 ミネベアミツミ株式会社 Communication terminal and communication system

Family Cites Families (1)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
JP5672912B2 (en) * 2010-09-30 2015-02-18 株式会社リコー Communication system, client terminal, client terminal program, communication system program, and standby time setting method

Also Published As

Publication number Publication date
JP2015144351A (en) 2015-08-06

Similar Documents

Publication Publication Date Title
JP5703791B2 (en) Printing system and printer
US7844704B2 (en) Event notification device and event notification method
JP5810761B2 (en) Process control server and process control method
JP6056795B2 (en) Image processing system, gateway device, gateway device control method, gateway device control program
CN106330855B (en) Communication system, management server, and control method
JP2012168759A (en) Print control server and print control method
JP2013114590A (en) Server
JP6011043B2 (en) E-mail processing system and e-mail processing method
JP5839102B2 (en) Printing system and printer
JP6264908B2 (en) Communication system and information processing server
JP2014176026A (en) Relay device and fax transmission/reception program
US9250841B2 (en) Print server, control method of print server, and storage medium
JP6234875B2 (en) Image forming system and inter-user collaboration program
JP5024024B2 (en) Spool server and data communication control method
JP5537970B2 (en) Web service operation monitoring system and Web service operation monitoring method
JP5928156B2 (en) E-mail processing system and e-mail processing method
JP2021111053A (en) Mediation program, management program and device management system
US9798963B2 (en) Image forming system that reduces load for processing regarding correction of print position displacement, and method for correcting print position displacement
JP6093414B1 (en) Information processing apparatus, method, and program
JP7010028B2 (en) Image processing equipment and control program
JP6340786B2 (en) Information processing system, information processing apparatus, information processing method, and information processing program
US20240098150A1 (en) Device management system
JP6265473B2 (en) Web service system, Web service message mediation method, and proxy server
JP2024025124A (en) information processing system
JP6205982B2 (en) RELAY DEVICE, PROGRAM, AND RELAY DEVICE CONTROL METHOD

Legal Events

Date Code Title Description
A621 Written request for application examination

Free format text: JAPANESE INTERMEDIATE CODE: A621

Effective date: 20170119

A977 Report on retrieval

Free format text: JAPANESE INTERMEDIATE CODE: A971007

Effective date: 20170904

A131 Notification of reasons for refusal

Free format text: JAPANESE INTERMEDIATE CODE: A131

Effective date: 20170926

A521 Request for written amendment filed

Free format text: JAPANESE INTERMEDIATE CODE: A523

Effective date: 20171116

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: 20171128

A61 First payment of annual fees (during grant procedure)

Free format text: JAPANESE INTERMEDIATE CODE: A61

Effective date: 20171211

R150 Certificate of patent or registration of utility model

Ref document number: 6264908

Country of ref document: JP

Free format text: JAPANESE INTERMEDIATE CODE: R150