Management system, management program, and management method

The management system addresses high operational costs and communication issues by using cloud storage-accessing communication devices for error detection, ensuring efficient and cost-effective terminal device management.

JP7739955B2Active Publication Date: 2025-09-17BROTHER KOGYO KK
View PDF 7 Cites 0 Cited by

Patent Information

Application Number
JP2021181399
Authority / Receiving Office
JP · JP
Patent Type
Patents
Current Assignee / Owner
Filing Date
2021-11-05
Publication Date
2025-09-17
Estimated Expiration
2041-11-05

AI Technical Summary

Technical Problem

The existing system where a server actively performs determination processes increases operational costs, and communication issues between the server and management device can hinder proper information acquisition from image forming devices.

Method used

A management system utilizing first and second communication devices that access cloud storage, where the second device acquires and writes terminal information, and the first device determines errors based on execution information from the cloud storage, reducing operational costs by passive cloud storage usage.

Benefits of technology

Enables proper management of terminal devices while minimizing operational costs by using passive cloud storage and error detection, ensuring accurate information acquisition and management.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 0007739955000001
    Figure 0007739955000001
  • Figure 0007739955000002
    Figure 0007739955000002
  • Figure 0007739955000003
    Figure 0007739955000003
Patent Text Reader

Abstract

To provide a system in which a management device manages terminal devices via an intermediate device, configured so that the management device can manage the terminal devices appropriately while suppressing operation cost of the intermediate device.SOLUTION: A management system includes first and second communication devices each capable of accessing a cloud storage. The second communication device executes processing to acquire terminal information from a terminal device, and writes execution information related to the executed processing to the cloud storage. The execution information includes the terminal information. The first communication device acquires the execution information from the cloud storage, and determines whether an error state has occurred or not on the basis of the execution information. The error state indicates that the terminal information included in the acquired execution information may be inappropriate.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a technique for managing a terminal device. [Background technology]

[0002] Patent Document 1 discloses a system in which a management device manages an image forming device via a server. In this system, the server device acquires predetermined information from the image forming device and transmits the information to the management device. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Japanese Patent Application Publication No. 2019-148957 Summary of the Invention [Problem to be solved by the invention]

[0004] In the above system, the server device operates actively. That is, the server device independently performs various determination processes, such as the acquisition and transmission of the predetermined information, and notifies the management device or the image forming device of the processing results. This increases the cost of operating the server device.

[0005] Furthermore, for some reason, a situation may arise in which the management device is unable to properly obtain information about the image forming device from the server device. One example of such a situation is when the server device and the image forming device are unable to communicate normally. If such a situation occurs, the management device may be unable to properly obtain information from the server device.

[0006] Therefore, in one aspect of the present disclosure, in a system in which a management device manages terminal devices through an intermediate device, an object is to enable the management device to properly manage terminal devices while reducing the operating costs of the intermediate device. [Means for solving the problem]

[0007] According to an aspect of the present disclosure, there is provided a management system including a first communication device and a second communication device, the first communication device and the second communication device being capable of accessing cloud storage, and the second communication device being communicatively connected to at least one terminal device.

[0008] The second communication device executes a terminal information acquisition process and a writing process. The terminal information acquisition process acquires terminal information from each of the at least one terminal device, where the terminal information is information related to the corresponding terminal device.

[0009] The write process is executed in response to execution of the terminal information acquisition process. The write process includes writing execution information to the cloud storage. The execution information is information related to the executed terminal information acquisition process and includes the terminal information acquired by the terminal information acquisition process.

[0010] The first communication device executes an execution information acquisition process and an error determination process. The execution information acquisition process is a process of acquiring, from the cloud storage, the execution information written in the cloud storage.

[0011] The error determination process is a process for determining whether an error state has occurred based on the execution information acquired by the execution information acquisition process. The error state is a state in which one or more pieces of terminal information for each of the at least one terminal device included in the execution information acquired by the execution information acquisition process may not be appropriate for the execution timing of the execution information acquisition process. Note that the term "inappropriate terminal information" may also include cases in which the terminal information cannot be acquired in the first place.

[0012] In such a management system, the cloud storage functions passively with respect to the first communication device and the second communication device. That is, execution information is written to the cloud storage by the second communication device. The cloud storage does not voluntarily transmit the written execution information to the first communication device. The written execution information is acquired (i.e., read) by the first communication device. This reduces the operational costs of the cloud storage.

[0013] Furthermore, when the first communication device acquires execution information from the cloud storage, it executes an error determination process based on the acquired execution information. As a result, if an error state occurs, the first communication device can recognize that an error state has occurred through the error determination process. Therefore, the first communication device can acquire appropriate terminal information from the cloud storage, and ultimately can properly manage each terminal device.

[0014] The terminal information may include any information related to the terminal device. For example, the terminal information may include information indicating the terminal device (for example, unique information), information indicating the state or operation state of the terminal device, etc. For example, the terminal information may include the time when the terminal information was acquired from the terminal device.

[0015] The execution information may include any information related to the executed terminal information acquisition process. For example, the execution information may include only the terminal information, or may include other information in addition to the terminal information. The other information may include, for example, the start time and / or end time of the terminal information acquisition process.

[0016] The specific state determined as an error state by the error determination process may be determined in any manner. The error state may include, for example, a state in which the second communication device cannot normally write execution information to the cloud storage (specifically, for example, a state in which the second communication device cannot normally communicate with the cloud storage). Also, for example, the error state may include a state in which the second communication device cannot normally acquire terminal information from the terminal device (specifically, for example, a state in which the second communication device cannot normally communicate with the terminal device).

[0017] In another aspect of the present disclosure, a first communication device or a second communication device constituting the management system may be provided. In yet another aspect of the present disclosure, a management program that is a computer program for causing a computer to function as the first communication device, and a computer program for causing a computer to function as the second communication device may be provided. In yet another aspect of the present disclosure, a method used in the management system, a method used in the first communication device in the system, and a method used in the second communication device in the system may be provided. [Brief explanation of the drawings]

[0018] [Figure 1] 1 is a configuration diagram of a management system according to an embodiment; [Figure 2] FIG. 2A is a block diagram of a master, FIG. 2B is a block diagram of a client, and FIG. 2C is a block diagram of a first type terminal device. [Figure 3] FIG. 3A is a block diagram of a second type terminal device, and FIG. 3B is a block diagram of a cloud server. [Figure 4] FIG. 10 is an explanatory diagram illustrating an example of a management sequence by the management system. [Figure 5] FIG. 10 is an explanatory diagram illustrating an example of a schedule task table. [Figure 6] FIG. 10 is an explanatory diagram illustrating an example of a client setting table. [Figure 7] 10 is a flowchart of a periodic update process. [Figure 8]10 is a flowchart of a client-side connection error determination process. [Figure 9] 10 is a flowchart of a connector-side connection error determination process. DETAILED DESCRIPTION OF THE INVENTION

[0019] Hereinafter, exemplary embodiments of the present disclosure will be described with reference to the drawings. [1. Embodiment] (1-1) Overall structure The management system 1 according to an exemplary embodiment of the present disclosure is a network system configured to manage terminal devices 3 and 4 located at multiple locations via a cloud server 6 through cooperation between a master 10 and a client 20.

[0020] 1 is configured to be able to communicate with one or more terminal devices 3 installed at a first location via a local area network. The master 10 is further configured to be able to communicate with a cloud server 6 via a wide area network.

[0021] The client 20 is configured to be able to communicate with one or more terminal devices 3 installed at a second location via a local area network. The client 20 is further configured to be able to communicate with the cloud server 6 via a wide area network. The terminal device 4 installed at a third location is configured to be able to communicate with the cloud server 6 via the wide area network.

[0022] The local area network may include, for example, at least one of a wireless LAN and a wired LAN. The wide area network may include, for example, the Internet. A local area network may be established at a third location. In this case, the terminal device 4 may be connected to the wide area network via the local area network within the third location.

[0023] The terminal device 3 does not have the ability to use the cloud services provided by the cloud server 6. In other words, each terminal device 3 does not have the function of communicating with the cloud server 6. Hereinafter, this terminal device 3 will be particularly referred to as a first-type terminal device 3. On the other hand, the terminal device 4 is a terminal device that has the ability to use the cloud services provided by the cloud server 6. In other words, the terminal device 4 has the function of communicating with the cloud server 6. Hereinafter, this terminal device 4 will be particularly referred to as a second-type terminal device 4.

[0024] The first type terminal device 3 installed at the second base is managed by the master 10 via the client 20 and the cloud server 6. The second type terminal device 4 installed at the third base is managed by the master 10 via the cloud server 6 without via the client 20.

[0025] The terminal devices 3 and 4 managed by the master 10 may be, for example, a group of terminal devices managed by an organization such as a company. In this case, each base may be an activity base of the organization. For example, the first base where the master 10 is located may be an office that houses the management department of the organization. The other second and third bases may be branch offices of the organization that are distant from the first base.

[0026] Examples of the terminal devices 3 and 4 include a printer, a scanner, and a digital multifunction peripheral that integrates the functions of these devices. The master 10 and the client 20 are configured, for example, by installing a dedicated computer program on a personal computer.

[0027] (1-2) Equipment configuration 2A includes a control unit 11, a communication unit 12, a display unit 13, an input unit 14, and a storage unit 15. The control unit 11 includes a CPU 11a, a memory 11b, and a clock unit 11c. The CPU 11a as a processor executes processing in accordance with a computer program stored in the storage unit 15. The memory 11b is used as a work memory when the above processing is executed.

[0028] The memory unit 15 includes storage devices such as a solid state drive (SSD) and a hard disk drive (HDD), and stores various computer programs and data. The memory unit 15 stores a main management program 17. The main management program 17 is a computer program that causes the CPU 11a to implement the management functions that should be implemented by the master 10. The processing mainly performed by the control unit 11 described below may be understood to be implemented by processing executed by the CPU 11a in accordance with the computer program.

[0029] The timekeeping unit 11c outputs the current time (more specifically, a signal or data indicating the current time). The timekeeping unit 11c may have, for example, a real-time clock. The current time output by the timekeeping unit 11c includes, for example, the year, month, day, hour, and minute. However, the timekeeping unit 11c may output the current time in any manner. For example, it may include the second or the day of the week. Also, for example, the year may be omitted, or the year and month may be omitted. The current time output by the timekeeping unit 11c will hereinafter be referred to as the "master current time Tm."

[0030] The communication unit 12 is connected to a local area network of the base where the master 10 exists, and further connected to a wide area network. The communication unit 12 may be connected to the wide area network via a router (not shown).

[0031] The display unit 13 is configured to display various screens for a user who operates the master 10. An example of the display unit 13 is a liquid crystal display. An example of the various screens is a device management screen. The device management screen is a so-called portal screen in the management function realized by the master 10. The main administrator, who is a user of the master 10, can basically manage the terminal devices 3 and 4 to be managed by performing various input operations and viewing various information starting from the device management screen. The device management screen can display, for example, a list showing the operating status, log information, status information, etc. of each of the terminal devices 3 and 4 to be managed.

[0032] The input unit 14 includes one or more input devices, such as a keyboard and a pointing device, for inputting operation signals from a user operating the master 10. Specifically, the input unit 14 may include, for example, a mouse. Alternatively, the input unit 14 may include, for example, a touch panel. The touch panel may be disposed so as to overlap the entire or almost entire area of ​​the display unit 13 where an image is displayed. The control unit 11 operates in accordance with the operation signals input through the input unit 14.

[0033] 2B includes a control unit 21, a communication unit 22, a display unit 23, an input unit 24, and a storage unit 25. The control unit 21 includes a CPU 21a and a memory 21b. The CPU 21a as a processor executes processing in accordance with a computer program stored in the storage unit 25.

[0034] The storage unit 25 stores a sub-management program 27. The sub-management program 27 is a computer program that causes the CPU 21a to realize functions related to the management functions of the master 10 that should be realized by the client 20. The processing mainly performed by the control unit 21 described below may be understood to be realized by processing that the CPU 21a executes in accordance with the computer program.

[0035] The communication unit 22 is connected to a local area network of the base where the client 20 is located, and is further connected to a wide area network. The communication unit 22 may be connected to the wide area network via a router (not shown). The display unit 23 includes, for example, a liquid crystal display, and is configured to display various screens for the user operating the client 20. The input unit 24 has one or more input devices for inputting operation signals from the user operating the client 20. The control unit 21 operates in accordance with the operation signals input through the input unit 24.

[0036] 2C includes a control unit 31, a communication unit 32, a display unit 33, and an input unit 34. When the first type terminal device 3 is, for example, a digital multifunction peripheral, the first type terminal device 3 may further include a printing unit 35 and a reading unit 36. The first type terminal device 3 may include only one of the printing unit 35 and the reading unit 36.

[0037] The control unit 31 includes a CPU 31a and a memory 31b. The memory 31b may include a RAM as well as a nonvolatile memory such as a flash memory, and may store computer programs, setting data, and the like in the nonvolatile memory.

[0038] The CPU 31a as a processor performs overall control of the entire first-class terminal device by executing processes according to the computer programs stored in the memory 31b. The processes mainly performed by the control unit 31 described below may be understood to be realized by the processes executed by the CPU 31a according to the computer programs.

[0039] The communication unit 32 is connected to the local area network of the base where the first type terminal device 3 exists so as to be able to communicate with the master 10 or client 20 present there. The display unit 33 includes, for example, a liquid crystal display, and is configured to display various screens for the user operating the first type terminal device 3. The input unit 34 includes one or more input devices, such as a touch panel on the liquid crystal display, for inputting operation signals from the user.

[0040] The printing unit 35 is configured to print an image on a sheet under the control of the control unit 31. Examples of the printing unit 35 include an inkjet printer and a laser printer. According to this embodiment, status information such as the remaining amount of coloring material and log information such as the number of printed sheets are written from the first type terminal device 3 to the cloud server 6 via the client 20 in a manner described below, and are then provided to the master 10. The reading unit 36 ​​is configured to read an image of a reading target on a printed matter or the like under the control of the control unit 31.

[0041] 3A includes a control unit 41, a communication unit 42, a display unit 43, and an input unit 44. When the second type terminal device 4 is, for example, a digital multifunction peripheral, the second type terminal device 4 may further include a printing unit 45 and a reading unit 46. The second type terminal device 4 may include only one of the printing unit 45 and the reading unit 46.

[0042] The control unit 41 includes a CPU 41a and a memory 41b. The memory 41b may include a nonvolatile memory such as a flash memory, and may store computer programs, setting data, and the like.

[0043] The CPU 41a as a processor performs overall control of the entire device by executing processes in accordance with a computer program stored in the memory 41b. A communication program 47 is stored in the memory 41b. The communication program 47 is a program for using cloud services provided by the cloud server 6. The processes mainly performed by the control unit 41 described below may be understood to be realized by processes executed by the CPU 41a in accordance with the computer program.

[0044] The communication unit 42 is connected to a wide area network so as to be able to communicate with the cloud server 6. If a local area network is established at the third location, the communication unit 42 may be connected to the wide area network via the local area network. The display unit 43 includes, for example, a liquid crystal display. The input unit 44 includes one or more input devices for inputting operation signals from the user.

[0045] The printing unit 45 is configured to print an image on a sheet under the control of the control unit 41. According to this embodiment, status information such as the remaining amount of coloring material and log information such as the number of printed sheets are written from the second type terminal device 4 to the cloud server 6 in a manner described later, and are then provided to the master 10. The reading unit 46 is configured to read an image of a reading target on a printed matter or the like under the control of the control unit 41.

[0046] 3B includes a control unit 61, a communication unit 62, a first storage 63, and a second storage 64. The control unit 61 includes a CPU 61a and a memory 61b.

[0047] The CPU 61a as a processor executes processes in accordance with the computer programs stored in the memory 61b. The processes executed by the CPU 61a include processes for causing the cloud server 6 to function as cloud storage. The processes mainly performed by the control unit 61 described below may be understood to be realized by the processes executed by the CPU 61a in accordance with the computer programs.

[0048] The cloud storage includes a table storage and an object storage. When the control unit 61 executes the above process, the first storage 63 functions as a table storage, and the second storage 64 functions as an object storage.

[0049] The exemplary first storage 63 functions as a NoSQL data store and is configured to store tables each consisting of a set of schema-less entities. Each entity in a table is configured with a set of properties, and each property is configured with a key-value (i.e., value) pair.

[0050] The exemplary second storage 64 functions as an object storage that can read and write any text file and binary file as an object from the outside using the HTTP / HTTPS protocol.

[0051] Microsoft's Azure (registered trademark) is a known cloud service that provides the above-mentioned table storage and object storage. The cloud server 6 can operate in the same manner as such a cloud service.

[0052] The cloud server 6 functions passively with respect to the master 10, the client 20, and the second-type terminal device 4. That is, the cloud server 6 does not actively perform decision processing or the like itself, but does not issue commands, requests, notifications, etc. to the master 10, the client 20, and the second-type terminal device 4. The master 10, the client 20, and the second-type terminal device 4 each write necessary data to the cloud server 6 themselves as needed. Also, the master 10, the client 20, and the second-type terminal device 4 each access the cloud server 6 themselves as needed and read data stored in the cloud server 6.

[0053] The data written by the master 10 to the cloud server 6 may include, for example, data indicating various requests, notifications, etc. (hereinafter abbreviated as "notifications, etc.") targeted at a predetermined one or more of the first-type terminal devices 3 and the second-type terminal devices 4. More specifically, the data indicating notifications, etc. is written to the first storage 63, for example.

[0054] Furthermore, the master 10 writes the above-mentioned text file or binary file, etc., to the second storage 64 as necessary. Specifically, for example, when the master 10 writes data indicating a task instructing firmware update in one or more specific first-type terminal devices 3 and / or second-type terminal devices 4 to the first storage 63, the master 10 writes software (e.g., an update program) required to execute the task (i.e., firmware update) to the second storage 64.

[0055] The data read from the cloud server 6 by the client 20 may include, for example, data indicating the above-mentioned notifications and the like, targeted at a first-type terminal device 3 under the control of the client 20. "Under the control of the client 20" means, in a broad sense, that the device exists within a local area network including the client 20 and is communicatively connected to the client 20, and in a narrow sense, that the device is communicatively connected to the client 20 and is registered as a management target in the client 20 (and thus in the master 10). In this embodiment, for example, at the second base, a first-type terminal device 3 connected to the client 20 through a local area network is a first-type terminal device 3 under the control of the client 20. Furthermore, the client 20 may read files written in the second storage 64 as necessary.

[0056] The data read from the cloud server 6 by the second type terminal device 4 may include, for example, data indicating the above-mentioned notifications and the like, which is targeted at the second type terminal device 4. Furthermore, the second type terminal device 4 may read files written in the second storage 64 as necessary.

[0057] Data written to the cloud server 6 by the client 20 may include, for example, status information and log information of the type 1 terminal device 3 under the control of the client 20. As will be described later, a table (for example, a schedule task table described later) corresponding to each type 1 terminal device 3 under the control of the client 20 is generated in the first storage 63. This table includes, for example, three entities related to "log," "status," and "registration," as will be described later with reference to FIG. 5. Log information of the type 1 terminal device 3 is written to the "log" entity in the corresponding schedule task table. Status information of the type 1 terminal device 3 is written to the "status" entity or the "registration" entity in the corresponding schedule task table. In this embodiment, status information is written to, for example, the "registration" entity. Data related to the registration status of the corresponding type 1 terminal device 3 may be written to the "registration" entity by, for example, the master 10 and / or the client 20.

[0058] Furthermore, as will be described later, when the client 20 writes the status information acquired from the first type terminal device 3 to the first storage 63, the client 20 also writes the last update time Tref. The last update time Tref indicates the time when the status information was acquired from the first type terminal device 3. The last update time Tref includes, for example, the year, month, day, hour, and minute. However, the last update time Tref may be expressed in any manner, similar to the master current time Tm described above.

[0059] The last update time Tref does not necessarily have to be the time at which the client 20 actually acquires the status information from the first type terminal device 3. The last update time Tref may be a time within a predetermined range including the actual acquisition time, that is, a time within a range that can be substantially regarded (or treated) as the time at which the status information was acquired when the master 10 manages the first type terminal device 3. For example, the last update time Tref may be a predetermined time between the time at which the status information was actually acquired and the time at which the status information was written to the first storage 63. Alternatively, for example, the time at which the status information was written to the first storage 63 may be the last update time Tref.

[0060] In this embodiment, the client 20 writes the search start time Tst and the search end time Ten to the first storage 63. In this embodiment, the search start time Tst and the search end time Ten are written to, for example, the client setting table shown in Fig. 6. Details of the search start time Tst and the search end time Ten will be described later.

[0061] Furthermore, if the data written by the master 10 includes data instructing a task (for example, the above-mentioned firmware update) targeted at a first type terminal device 3 under the control of the client 20, the client 20 writes data indicating the execution result of the task to the first storage 63 of the cloud server 6. This data is also written to a table (for example, an instant task table described later) provided individually for each first type terminal device 3 for writing the execution result of the task.

[0062] The data written to the cloud server 6 by the second type terminal device 4 may include, for example, status information and log information of the second type terminal device 4. That is, in the first storage 63, similar to the above-mentioned first type terminal device 3, a table corresponding to the second type terminal device 4 (for example, the schedule task table exemplified in FIG. 5) is also generated for the second type terminal device 4. The status information of the second type terminal device 4 is written to a "status" entity and / or a "registration" entity in the corresponding schedule task table.

[0063] Furthermore, if the data written by the master 10 includes data instructing a task targeted at the second type terminal device 4, the second type terminal device 4 writes data indicating the execution result of the task to the first storage 63 of the cloud server 6. Specifically, similar to the case of the first type terminal device 3 described above, the data is written to a table (for example, an instant task table) that is provided to write the execution result of the task of the second type terminal device 4.

[0064] The data read by the master 10 from the cloud server 6 includes, for example, the various data written in the above-mentioned tables. In other words, the master 10 does not directly communicate with the clients 20 or the second-type terminal devices 4. The master 10 writes data to the cloud server 6 or reads data from the cloud server 6 as needed, thereby indirectly sending various notifications to the clients 20 and the second-type terminal devices 4 and acquiring various information from the clients 20 and the second-type terminal devices 4. The clients 20 and the second-type terminal devices 4 also write data to the cloud server 6 or read data from the cloud server 6 as needed, thereby indirectly acquiring various notifications from the master 10 and transmitting various information related to the terminal devices to the master.

[0065] (1-3) Sequence overview Next, various examples of management-related operations in the management system 1 will be explained in brief with reference to Fig. 4. First, an example of a preparatory stage for constructing the management system 1 will be explained. Note that an example of operations in this preparatory stage is not shown in Fig. 4.

[0066] In the preparation stage, the main management program 17 is installed in the master 10. As a result, the master 10 executes processing in accordance with the main management program 17. In the following explanation, "the master 10" basically means "the control unit 11 executing the main management program 17."

[0067] A cloud profile is set in the master 10. Setting the cloud profile includes setting cloud parameters. As will be described later, the client 20 and the second-type terminal device 4 execute a polling operation for the cloud server 6 and an update operation of information held in the cloud server 6, including a schedule task, which will be described later. The cloud parameters include the period of the polling operation (hereinafter referred to as the "polling period") and the execution period of the schedule task (hereinafter referred to as the "information update period"). Setting the cloud profile further includes setting a shared access signature (SAS) for using the cloud service.

[0068] The cloud profile is set, for example, in accordance with a setting operation performed by the main administrator via the input unit 14. The SAS is set individually for each of the first storage 63 and the second storage 64, that is, for each of the table storage and the object storage.

[0069] Subsequently, some or all of the configured cloud profile, including the configured cloud parameters, is uploaded from the master 10 to the first storage 63 and written to the first storage 63. Specifically, the cloud parameters are written to the first storage 63 as entities of a table.

[0070] The master 10 further exports at least a portion of the cloud profile as a client profile, i.e., data for reading at the client 20. The client profile may include, for example, the cloud parameters described above.

[0071] The exported client profile is provided to the client 20. The client profile may be provided to the client 20 by any method. For example, the client profile may be provided from the master 10 to the client 20 by email or by using an easily portable storage medium.

[0072] The sub-administrator, who is the user of the client 20, can operate the client 20 to install the sub-management program 27 on the client 20. At this time, the sub-administrator's operation imports the client profile provided by the master 10. As a result, cloud parameters and SAS according to the client profile are set on the client 20. In the following explanation, "the client 20" basically means "the control unit 21 executing the sub-management program 27."

[0073] After the above installation and settings, the client 20 becomes able to use the cloud server 6. That is, the client 20 is configured to be able to communicate information with the master 10 via the cloud server 6. Specifically, the client 20 is configured to be able to execute relay operations between the master 10 and the first type terminal device 3 via the cloud server 6, such as issuing task execution instructions from the master 10 to the first type terminal device 3 and transmitting log information and status information from the first type terminal device 3 to the master 10.

[0074] Meanwhile, an SAS is registered in the second type terminal device 4 by an input operation by a device administrator who is an administrator of the second type terminal device 4. The control unit 41 of the second type terminal device 4 in which the SAS is registered executes processing in accordance with the communication program 47. The control unit 41 executing processing in accordance with the communication program 47 is hereinafter referred to as the "cloud connector." The cloud connector references the cloud parameters written by the master 10 in the first storage 63 of the cloud server 6. The cloud connector acquires these cloud parameters and sets them in its own device.

[0075] In this way, the initial settings of the client 20 and the second type terminal device 4 (cloud connector), including the settings of the cloud parameters and SAS, are completed. Once the above-described initial settings are complete, the client 20 and the cloud connector perform an initial registration process. Specifically, the client 20 searches for a type 1 terminal device 3 that is communicably connected to the client 20. The searched type 1 terminal device 3 is then registered in the client 20 itself and also in the cloud server 6. Specifically, a schedule task table is generated individually for each type 1 terminal device 3 in the first storage 63. The initial registration information is then written to the schedule task table. Thereafter, the client 20 and the cloud connector write various information, including information acquired by the schedule task, to the schedule task table every time they execute a schedule task.

[0076] As illustrated in FIG. 5, the schedule task table is made up of a group of entities each including a plurality of properties such as a first key, a second key, a request parameter, a response parameter, a notification source, a status, a device ID, and a timestamp.

[0077] As described above, the schedule task table has three entities related to "log," "status," and "registration" for each of the terminal devices 3 and 4. The information in each entity is updated by the client 20 that manages the corresponding terminal device if the corresponding terminal device is a first-type terminal device 3, or by the cloud connector in the corresponding terminal device if the corresponding terminal device is a second-type terminal device 4.

[0078] The "Notification Source" property in an entity indicates who updated the entity; when an entity is updated by a client 20, the "Notification Source" property is updated to the value "Client", and when an entity is updated by a cloud connector, the "Notification Source" property is updated to the value "Device".

[0079] The entity related to "log" is a log entity having the value "log" of the first key, and the log information of the terminal device corresponding to the device ID described as the value of the second key is described in the response parameters. The device ID is an ID unique to each of the terminal devices 3 and 4.

[0080] When the corresponding terminal device is, for example, a printer or a digital multifunction peripheral, the log information may include information on the total number of pages printed by the terminal device. The log information may also include, as a print history, information on the user who issued the print command and the number of pages printed for each print job.

[0081] As illustrated in the lower part of Figure 5, the response parameters may include, for example, JSON data. For example, log information may be written in JSON format by associating the object identifier (OID) used in the management information base (MIB) of the corresponding parameter with its value. The descriptions "xxxxx ..." and "yyyyy ..." in the lower part of Figure 5 indicate exemplary abstract representations of object identifiers.

[0082] The initial state of the response parameter before being updated can exist as a request parameter with an initial value associated with the object identifier. In the example at the bottom of Figure 5, the initial value "%MIB(yyyyy ...)%" associated with the OID "yyyyy ..." has been rewritten to the value "4" by the update.

[0083] An entity related to "status" is a status entity having a first key value of "status", and status information for one of the terminal devices corresponding to the device ID described as the value of the second key is described in the response parameters. When the corresponding terminal device is, for example, a printer or digital multifunction peripheral, the status information may include information on the remaining amount of coloring material in the corresponding terminal device and error information such as paper jams. As with the log entity, the response parameters for the status entity may be described in JSON format.

[0084] In this embodiment, the status information is written to the "status" entity in the schedule task table of the second type terminal device 4, and the status information is written to the "registration" entity in the schedule task table of the first type terminal device 3. However, the entities to which the status information is written are not limited to this.

[0085] The entity related to "registration" is a registration entity having the value "registration" of the first key, and device information of one of the terminal devices 3, 4 corresponding to the device ID entered as the value of the second key is described in the response parameter. In the response parameter, multiple item values ​​that explain the basic configuration of the device are described as device information. Also, as described above, in the schedule task table of the first type terminal device 3, status information is also written in the "registration" entity. Note that status information may also be written in the "registration" entity in the schedule task table of the second type terminal device 4.

[0086] The entities in the schedule task table of the second type terminal device 4 are updated by the corresponding cloud connector. The entities in the schedule task table of the first type terminal device 3 are updated by the client 20 that manages the first type terminal device 3. Identification information of the client 20 that manages the first type terminal device 3 is written as part of the device information in the "registration" entity of the first type terminal device 3. The schedule task table may include data written by the master 10.

[0087] The "timestamp" property is written with the time of update each time the contents of the corresponding entity are updated. Note that in the following explanation, the term "timestamp" may refer to the time written in the property. The timestamp is managed, for example, by the cloud server 6. In other words, when any entity is updated, the cloud server 6 updates the timestamp in that entity.

[0088] In the initial registration process, the client 20 further generates a client setting table in, for example, the first storage 63 of the cloud server 6. An example of the client setting table is shown in FIG. 6. The client setting table has multiple properties that are basically similar to those of the scheduled task table. The client setting table is mainly used to write the search start time Tst and the search end time Ten when a scheduled task is executed. The search start time Tst indicates the start time of the scheduled task. The search end time Ten indicates the end time of the scheduled task. In other words, each time a scheduled task is executed, the search start time Tst and the search end time Ten are written to the "management status" property of the client setting table. The search start time Tst and the search end time Ten are written by updating (i.e., overwriting) the search start time Tst and the search end time Ten that have already been written. The search start time Tst and the search end time Ten include, for example, the year, month, day, hour, and minute. However, the search start time Tst and the search end time Ten may be expressed in any manner, similar to the master current time Tm described above.

[0089] After completing the above initial registration process, the client 20 and the cloud connector each periodically execute a schedule task according to the set information update cycle. Note that the above initial registration process may be included in the schedule task.

[0090] Specifically, a schedule task includes multiple tasks with different execution periods. Specifically, for example, it includes a first task that periodically acquires status information at an information update period and writes the information to a schedule task table, and a second task that periodically acquires log information and writes the information to a schedule task table. In this embodiment, a description of the second task will be omitted, and only the first task will be described in detail. That is, in this embodiment, a "schedule task" basically means the first task. Note that the first task and the second task may be executed independently of each other.

[0091] First, the schedule task by the client 20 will be specifically described with reference to Fig. 4. When the time to execute the schedule task arrives, the client 20 writes the search start time Tst in the client setting table (S01). The search start time Tst does not necessarily have to be the actual time at the moment the schedule task is started. The search start time Tst may be any time within a predetermined range including the time when the schedule task actually started, that is, any time within a range that can be substantially regarded (or treated) as the time when the schedule task was started when the master 10 manages the client 20 and the type 1 terminal devices 3 subordinate to it.

[0092] The client 20 that has written the search start time Tst executes a device search process (S02). The device search process includes a first process of searching for subordinate first-type terminal devices 3 and a second process of acquiring status information from each of the subordinate first-type terminal devices 3. The first process is basically the same as the initial registration process described above. Specifically, the client 20 searches again for first-type terminal devices 3 that are communicably connected to the client 20. Then, if the searched first-type terminal devices 3 include a first-type terminal device 3 that has not yet been registered in the cloud server 6, the client 20 registers the first-type terminal device 3 in itself and in the first storage, as in the initial registration process.

[0093] When the device search process is completed, the client 20 updates the terminal registration information in the first storage 63 (S03). The terminal registration information is information related to each of the first-type terminal devices 3 subordinate to the client 20, and in this embodiment, includes, for example, at least status information and the last update time Tref. That is, in this embodiment, instead of writing the status information and the last update time Tref each time status information is acquired from one first-type terminal device 3, the status information and the last update time Tref are written to the first storage 63 after acquisition of status information from all of the target first-type terminal devices 3 is completed. If a new, unregistered type 1 terminal device 3 is found by the device search process, the terminal registration information also includes information necessary for registering the new type 1 terminal device 3. In this case, a new schedule task table is generated for the new type 1 terminal device 3, and the status information and the last update time Tref are written to the new schedule task table.

[0094] In the device search process, if there is a type 1 terminal device 3 from which status information could not be normally acquired among the subordinate type 1 terminal devices 3, the client 20 does not update the status information and the last update time Tref in the schedule task table of that type 1 terminal device 3 in the first storage 63. Causes that may prevent the client 20 from normally acquiring status information from the type 1 terminal device 3 include, for example, a software error in the client 20 or the type 1 terminal device 3, the type 1 terminal device 3 being powered off, or the client 20 and the type 1 terminal device 3 being unable to communicate with each other.

[0095] When the client 20 completes updating the terminal registration information in the first storage 63 (S03), it writes the search end time Ten to the client setting table (S04). The search end time Ten indicates the time when the schedule task is completed, but does not necessarily have to be the actual time at the moment of completion (for example, the time at the moment when the update of the terminal registration information is completed). The search end time Ten may be a time within a predetermined range including the time when the update of the terminal registration information is completed, that is, a time within a range that can be substantially regarded (or treated) as the time when the update of the terminal registration information is completed (and thus the schedule task is completed) when the master 10 manages the client 20 and its subordinate type 1 terminal devices 3.

[0096] Next, a schedule task performed by the cloud connector will be described. When the time to execute the schedule task arrives, the cloud connector updates the terminal registration information in the first storage 63 (S11). The terminal registration information in this case is information related to the second type terminal device 4 in which the cloud connector is implemented, and in this embodiment, for example, includes at least current status information of the second type terminal device 4.

[0097] The client 20 and the cloud connector each execute the schedule task as described above repeatedly and periodically at an information update interval. The information update period can be updated by the master 10. That is, the master 10 can change the cloud parameters (including the information update period) uploaded to the first storage 63. On the other hand, even after the client 20 and the cloud connector have set cloud parameters for themselves by initial setting, they refer to the cloud parameters in the first storage 63 at appropriate times (for example, periodically). Then, if the cloud parameters in the first storage 63 have been updated, the client 20 and the cloud connector reflect the updated contents in their own cloud parameters.

[0098] Although not shown in the drawings, the terminal devices 3 and 4 can execute instant tasks, which are non-periodic tasks other than scheduled tasks, based on a request from the master 10. The master 10 can cause the target terminal device to execute the instant task by registering the contents of the instant task and the target terminal device in a predetermined entity (the instant task table described above) in the first storage 63.

[0099] Next, a description will be given of the periodic update process (S21 to S25) that is periodically executed, for example, at regular intervals by the master 10. The periodic update process may be executed in response to a predetermined trigger, such as an execution instruction operation by an administrator.

[0100] When the time to execute the periodic update process arrives, the master 10 acquires update data from the first storage 63 (S21). The update data specifically includes registration information for each of the managed terminal devices 3 and 4. The registration information specifically includes data for each of the "log," "status," and "registration" entities in the table (see FIG. 5). The update data further includes information from the client setting table (FIG. 6), i.e., at least the search start time Tst and the search end time Ten.

[0101] The master 10, which has acquired the update data, executes a client-side connection error determination process (S22). The client-side connection error determination process is a process for determining whether an error state related to the client 20 has occurred.

[0102] The error state related to the client 20 includes, for example, a first connection error and a second connection error. The first connection error indicates a state in which the client 20 and the cloud server 6 cannot communicate normally. The second connection error indicates a state in which the client 20 and the first type terminal device 3 cannot communicate normally.

[0103] When such an error state occurs, one or more pieces of information about each type 1 terminal device 3 included in the update data acquired in S21 may not be appropriate for the execution timing of the process in S21. That is, for example, if a second connection error occurs between a certain type 1 terminal device 3 and the client 20, status information about that type 1 terminal device 3 may not be acquired, or even if it is acquired, the status information may be old and not updated in the most recent scheduled task. Furthermore, for example, if a first connection error occurs, status information about all type 1 terminal devices 3 subordinate to the client 20 may not be acquired, or even if it is acquired, the status information may be old and not updated in the most recent scheduled task. That is, status information acquired when a first or second connection error occurs may be unreliable. Therefore, in this embodiment, whether or not an error state such as the above has occurred is determined each time status information is acquired in the periodic update process.

[0104] The client-side connection error determination process will be described in detail later with reference to FIG. 7 (S130). After executing the client-side connection error determination process, the master 10 subsequently executes the connector-side connection error determination process (S23). The connector-side connection error determination process is a process for determining whether an error state related to the cloud connector has occurred. An error state related to the cloud connector includes, for example, a state in which the cloud connector and the cloud server 6 cannot communicate normally.

[0105] If such an error state occurs in the cloud connector, the information corresponding to that cloud connector contained in the update data acquired in S21 may not be appropriate for the execution timing of the process of S21. In other words, the status information acquired in a situation where such an error state occurs may be unreliable. Therefore, in this embodiment, each time status information is acquired in the periodic update process, the cloud connector also determines whether or not such an error state has occurred.

[0106] The connector-side connection error determination process will be described in detail later with reference to FIG. 7 (S140). After executing the connector-side connection error determination process, the master 10 updates the internal registration data (S24). Specifically, the internal registration data is updated based on the update data acquired in S21. The internal registration data includes the registration information of each of the terminal devices 3 and 4 to be managed, which is stored by the master 10 itself, and other various data required for management.

[0107] Next, the master 10 updates the device management screen (S25), that is, the internal registration data updated in S24 is reflected on the device management screen. (1-4) Details of periodic update process The periodic update process by the master 10 will be described in detail with reference to Fig. 7 to Fig. 9. The periodic update process is realized by the control unit 11 (more specifically, the CPU 11a) of the master 10 executing a program corresponding to the periodic update process in the main management program 17. The control unit 11 executes the periodic update process every time the timing for executing the periodic update process arrives.

[0108] When the control unit 11 starts the periodic update process, in S110, it acquires update data from the cloud server 6. The process of S110 corresponds to the process of S21 in Fig. 4. That is, in S110, the registration information (including status information and last update time Tref), search start time Tst, search end time Ten, etc. of each of the terminal devices 3 and 4 to be managed are acquired.

[0109] In S120, the control unit 11 determines whether the cloud parameters written in the cloud server 6 have been changed since the previous periodic update process was executed. If the cloud parameters have been changed, the update data acquired in S110 is not validated this time, and the process proceeds to S170.

[0110] In S170, the control unit 11 maintains the current internally registered data. Basically, each time the master 10 executes a periodic update process, it updates the internally registered data based on the update data acquired in the periodic update process. However, if it is determined in S120 that the cloud parameters have been updated, the update data acquired in the current periodic update process is not reflected in the internally registered data. After executing S170, the control unit 11 terminates the periodic update process.

[0111] If it is determined in S120 that the cloud parameters have not been updated, the control unit 11 proceeds to S130. In S130, the control unit 11 executes a client-side connection error determination process. This process of S130 corresponds to the process of S22 in Fig. 4. Details of the client-side connection error determination process are as shown in Fig. 8.

[0112] When the control unit 11 proceeds to the client-side connection error determination process, it determines in S210 whether or not the client 20 is currently executing a device search process. In this embodiment, this determination is made, for example, based on the search start time Tst and the search end time Ten acquired in S110. Specifically, if the search start time Tst is earlier than the search end time Ten, the control unit 11 determines that the client 20 is currently executing the device search process (i.e., has not yet finished). On the other hand, if the search start time Tst is not earlier than the search end time Ten, it determines that the client 20 is not currently executing the device search process.

[0113] If it is determined in S210 that the device search process is not currently being executed, the control unit 11 proceeds to S220. In S220, the control unit 11 determines whether the client 20 is in a state of normally waiting for the execution of the next device search process (normal standby state). In this embodiment, this determination is made, for example, based on the master current time Tm and the search end time Ten acquired in S110. Specifically, the control unit 11 determines that the client 20 is in a normal standby state if the elapsed time from the search end time Ten to the master current time Tm does not exceed the information update period. On the other hand, if the elapsed time from the search end time Ten to the master current time Tm exceeds the information update period, the control unit 11 determines that the client 20 is not in a normal standby state.

[0114] If the control unit 11 determines that the client is in a normal standby state, the process proceeds to S250. On the other hand, if the control unit 11 determines that the client is not in a normal standby state, the process proceeds to S230. In S230, the control unit 11 determines that a first connection error has occurred. In other words, the determination process of S220 can be said to be a process for determining whether or not a first connection error has occurred. After the process of S230, the client-side connection error determination process ends, and the process proceeds to S140.

[0115] If it is determined in S210 that the device search process is being executed, the control unit 11 proceeds to S240. In other words, if the device search process is being executed in the client 20, the process of determining whether or not there is a first connection error in S220 is avoided.

[0116] In S240, the control unit 11 determines whether or not there is a possibility that the device search process currently being executed in the client 20 is not progressing normally. In this embodiment, this determination is made, for example, based on the master current time Tm and the search start time Tst acquired in S110. Specifically, if the elapsed time from the search start time Tst to the master current time Tm exceeds a first determination time, the control unit 11 determines that there is a possibility that the device search process is not progressing normally. On the other hand, if the elapsed time from the search start time Tst to the master current time Tm is within the first determination time, the control unit 11 determines that the device search process is progressing normally. The first determination time may be determined in any manner. For example, the first determination time may be several tens of seconds.

[0117] If it is determined in S240 that the device search process may not be proceeding normally, the control unit 11 proceeds to S230 and determines that a first connection error has occurred. If it is determined in S240 that the device search process is proceeding normally, the control unit 11 proceeds to S250. From S250 onwards, the control unit 11 determines whether or not a second connection error has occurred for each of the first type terminal devices 3 subordinate to the client 20.

[0118] That is, in S250, the control unit 11 sets one of the unchecked first type terminal devices 3 as a check target. The unchecked first type terminal device 3 means, among the first type terminal devices under the client 20, a first type terminal device 3 for which a second connection error determination (i.e., the determination in S260) has not yet been made.

[0119] In S260, the control unit 11 determines whether the elapsed time from the last update time Tref of the first type terminal device 3 to be checked to the search end time Ten is equal to or longer than the second determination time. This process can be said to be a process for determining whether the update of the terminal information of the first type terminal device 3 to be checked is delayed.

[0120] If it is determined in S260 that the elapsed time from the last update time Tref to the search end time Ten is equal to or longer than the second determination time, the control unit 11 proceeds to S270. In S270, the control unit 11 determines that a second connection error has occurred. That is, the control unit 11 determines that, for some reason, normal communication between the check target and the client 20 has not been possible, causing a delay in updating the terminal information of the check target. After processing S270, the control unit 11 proceeds to S290.

[0121] If it is determined in S260 that the elapsed time from the last update time Tref to the search end time Ten is less than the second determination time, the control unit 11 proceeds to S280. In S280, the control unit 11 validates the registration information to be checked that was acquired in S110 this time. The registration information validated here is used as update information in S150, which will be described later. After processing S280, the control unit 11 proceeds to S290.

[0122] In S290, the control unit 11 determines whether or not there are still any unchecked type 1 terminal devices 3 remaining. If there are still any unchecked type 1 terminal devices 3 remaining, the process proceeds to S250. If there are no unchecked type 1 terminal devices 3 remaining, the control unit 11 ends the client-side connection error determination process and proceeds to S140.

[0123] In S140, the control unit 11 executes a connector-side connection error determination process. This process of S140 corresponds to the process of S23 in Fig. 4. The connector-side connection error determination process is performed individually for each type 2 terminal device 4 when the update data acquired in S110 includes data for the type 2 terminal device 4. Details of the connector-side connection error determination process are as shown in Fig. 9.

[0124] When the control unit 11 proceeds to the connector-side connection error determination process, in S410, it compares the timestamp of the "status" entity corresponding to the type 2 terminal device 4 being the target of this process, among the update data acquired in S110, with the master current time Tm. Then, in S420, it determines whether the elapsed time from the timestamp to the master current time Tm is equal to or greater than the information update period. If the elapsed time from the timestamp to the master current time Tm is equal to or greater than the information update period, the process proceeds to S430. In S430, the control unit 11 determines that a cloud connector error has occurred. A cloud connector error corresponds to the error state related to the cloud connector described above, and includes, for example, a state in which the cloud connector installed in the type 2 terminal device 4 being the target of this process cannot communicate normally with the cloud server 6.

[0125] If it is determined in S420 that the elapsed time from the timestamp to the master current time Tm is shorter than the information update period, the process proceeds to S440. In S440, the control unit 11 validates the registration information of the second type terminal device 4 acquired in S110. The validated registration information is used as update information in S150, which will be described later. After the processes of S430 and S440, the control unit 11 proceeds to S150.

[0126] In S150, the control unit 11 updates the internal registration data based on the update data acquired in S110. In the following S160, the control unit 11 updates the device management screen based on the internal registration data updated in S150. The processes of S150 and S160 correspond to S24 and S25 in FIG. 4.

[0127] More specifically, in S150, the control unit 11 causes the registration information validated in S280 or S440 to be reflected in (that is, overwritten and updated) the internal registration data. On the other hand, if it is determined in S230 that a first connection error has occurred, the control unit 11 does not update the data of each of the first type terminal devices 3 subordinate to the client 20 in the internal registration data in S150. In this case, the control unit 11 may register, for each corresponding first type terminal device 3, first error information indicating that a first connection error has been determined (and therefore that the data has not been updated) in association with the first error information.

[0128] If it is determined in S270 that there is a second connection error, the control unit 11 does not update the data of the first type terminal device 3 that has been determined to have the second connection error in the internal registration data in S150. In this case, the control unit 11 may register the second error information indicating that it has been determined to have the second connection error (and therefore that the data has not been updated) in association with the corresponding first type terminal device 3.

[0129] If a cloud connector connection error is determined in S430, the control unit 11 does not update the data of the second type terminal device 4 for which a cloud connector connection error has been determined in the internal registration data in S150. In this case, the control unit 11 may register third error information indicating that a cloud connector connection error has been determined (and therefore that the data has not been updated) in association with the second type terminal device 4.

[0130] In S160, if no error is determined in S130 and S140, the control unit 11 reflects the update result in S150 on the device management screen. For example, the log information and status information displayed on the device management screen are updated to the content updated in S150. On the other hand, if an error is determined in S230, S270, or S430, the display content related to the corresponding terminal device is not updated. Alternatively, the information that was not updated may be hidden, or an image object indicating that an error has been determined may be displayed. After processing S160, the control unit 11 ends the periodic update process.

[0131] (1-5) Effects of the First Embodiment According to the first embodiment described above, the cloud server 6 functions passively with respect to the master 10 and the client 20. Therefore, the operating costs of the cloud server 6 can be reduced.

[0132] Furthermore, when the master 10 acquires update data from the cloud server 6 through the periodic update process, it determines various error conditions based on the acquired update data. As a result, if an error condition occurs, the master 10 can take appropriate action according to the error condition. For example, depending on whether an error condition has occurred, it can appropriately determine whether the acquired update data should be validated. As a result, the master 10 can appropriately manage each of the terminal devices 3 and 4 that it manages.

[0133] In this embodiment, the master 10 corresponds to an example of a first communication device in the present disclosure. The client 20 corresponds to an example of a second communication device in the present disclosure. The first type terminal device 3 corresponds to an example of a terminal device in the present disclosure. The cloud server 6 corresponds to an example of cloud storage in the present disclosure. The status information, search start time Tst, and search end time Ten correspond to an example of execution information in the present disclosure. The information update period of the status information corresponds to an example of a fixed period in the present disclosure. The search start time Tst corresponds to an example of a processing start time in the present disclosure. The search end time Ten corresponds to an example of a processing end time in the present disclosure. The master current time Tm corresponds to an example of the current time in the present disclosure. The last update time Tref corresponds to an example of an information acquisition time in the present disclosure.

[0134] The processes of S01, S03, and S04 correspond to an example of a write process in the present disclosure. The process of S02 corresponds to an example of a terminal information acquisition process in the present disclosure. The processes of S21 and S110 correspond to an example of an execution information acquisition process in the present disclosure. The process of S210 corresponds to an example of an executable determination process and an acquisition determination process in the present disclosure. The processes of S220, S240, and S260 correspond to an example of an error determination process in the present disclosure. Of these, S220 in particular corresponds to an example of a first determination process in the present disclosure, S240 corresponds to an example of a second determination process in the present disclosure, and S260 corresponds to an example of a third determination process in the present disclosure. The main management program 17 corresponds to an example of a management program in the present disclosure.

[0135] 2. Other Embodiments Although the embodiments of the present disclosure have been described above, the present disclosure is not limited to the above-described embodiments and can be implemented in various modified forms.

[0136] For example, the specific methods for making the determinations in S210, S220, S240, and S260 are not limited to the methods described above, and other methods that can achieve the purpose of the determination may be adopted. For example, in S260, if the elapsed time from the last update time Tref to the master current time Tm is equal to or longer than the second determination time, it may be determined that a second connection error has occurred.

[0137] In the above embodiment, the master 10 determines various connection errors based on the results of a scheduled task that mainly acquires status information in the client 20 and the cloud connector. However, the master 10 may determine various connection errors based on the results of a task other than the scheduled task. For example, the master 10 may determine various connection errors based on the results of a scheduled task that acquires log information and writes it to the first storage 63, or the results of the instant task described above.

[0138] The first storage 63 is not limited to a NoSQL data store, but may be an SQL database such as a relational database. At least one of the first and second bases may be provided with a second type terminal device 4. At the third base, a network system similar to that at the second base, i.e., a client 20 and a first type terminal device 3, may be provided. In the management system 1, there may be multiple network systems similar to that at the second base.

[0139] In the above embodiments, multiple functions of one component may be realized by multiple components, or one function of one component may be realized by multiple components. Furthermore, multiple functions of multiple components may be realized by one component, or one function realized by multiple components may be realized by one component. Furthermore, part of the configuration of the above embodiments may be omitted. Furthermore, at least part of the configuration of the above embodiments may be added to or substituted for the configuration of another of the above embodiments. [Explanation of symbols]

[0140] 1...management system, 3, 4...type of terminal device, 6...cloud server, 10...master, 20...client, 63...first storage.

Claims

1. a first communication device configured to be able to access cloud storage; a second communication device that is communicatively connected to at least one terminal device and that is configured to be able to access the cloud storage; Equipped with the second communication device, a terminal information acquisition process for acquiring, from each of the at least one terminal device, terminal information relating to the terminal device; a write process of writing execution information, which is information related to the terminal information acquisition process and includes the terminal information acquired by the terminal information acquisition process, to the cloud storage in response to the execution of the terminal information acquisition process; is configured to run the first communication device, an execution information acquisition process for acquiring the execution information written in the cloud storage from the cloud storage; an error determination process for determining whether or not an error state has occurred based on the execution information acquired by the execution information acquisition process, wherein the error state is a state in which one or more of the terminal information of each of the at least one terminal device included in the execution information acquired by the execution information acquisition process may not be appropriate corresponding to the execution timing of the execution information acquisition process; A management system that is configured to run

2. The management system according to claim 1, The first communication device further comprises: an executable state determination process for determining whether the management system is in an executable state in which the error determination process can be properly executed based on the execution information acquired by the execution information acquisition process; is configured to run the first communication device is configured to avoid execution of the error determination process when it is determined that the management system is not in the executable state by the executable determination process. Management system.

3. The management system according to claim 1, the second communication device is configured to repeatedly execute the terminal information acquisition process at a fixed cycle; the writing process in the second communication device is configured to rewrite the execution information written in the cloud storage with new execution information corresponding to the terminal information acquisition process currently executed, every time the terminal information acquisition process is executed; The execution information further includes a processing end time, which is an end time of the terminal information acquisition processing, the error determination process includes a first determination process of determining that the error state has occurred when the elapsed time from the processing end time included in the execution information to the current time in the first communication device exceeds the certain period. Management system.

4. 4. The management system according to claim 3, The first communication device further comprises: an acquisition in progress determination process for determining whether the second communication device is in the middle of executing the terminal information acquisition process when the execution information is acquired by the execution information acquisition process; is configured to run the first communication device is configured to avoid execution of the first determination process when it is determined that the acquisition-in-progress determination process is in the midst of execution. Management system.

5. 5. The management system according to claim 4, The execution information further includes a processing start time, which is a start time of the terminal information acquisition processing, the acquisition in progress determination process in the first communication device determines that the processing is in progress when the processing start time is earlier than the processing end time, based on the processing start time and the processing end time included in the execution information acquired by the execution information acquisition process; Management system.

6. 6. The management system according to claim 5, the error determination process includes a second determination process of determining that the error state has occurred when an elapsed time from the process start time included in the execution information to a current time in the first communication device exceeds a first determination time. configured to run Management system.

7. The management system according to any one of claims 1 to 6, the second communication device is configured to repeatedly execute the terminal information acquisition process at a fixed cycle; the writing process in the second communication device is configured to rewrite the execution information written in the cloud storage with new execution information corresponding to the terminal information acquisition process currently executed, every time the terminal information acquisition process is executed; the execution information includes a processing end time that is an end time of the terminal information acquisition processing, the terminal information for each of the at least one terminal device that is written to the cloud storage by the writing process includes an information acquisition time that is a time when the terminal information is acquired by the terminal information acquisition process; the writing process is configured to avoid rewriting the terminal information of the terminal device in the cloud storage if the terminal information of the terminal device cannot be acquired by the terminal information acquisition process; the error determination process includes a third determination process of determining that the error state has occurred when there is a terminal device for which the elapsed time from the information acquisition time to the processing end time is equal to or longer than a second determination time. Management system.

8. The management system according to any one of claims 1 to 7, the second communication device is configured to repeatedly execute the terminal information acquisition process at a fixed cycle; the first communication device is configured to be able to change the fixed period; the first communication device is configured to avoid execution of the error determination process based on the execution information acquired by the execution information acquisition process at least for the first time after the fixed period is changed. Management system.

9. A management program executable by a computer included in a first communication device in a system including a first communication device and a second communication device, each of which is configured to be able to access a cloud storage, the management program comprising: The management program is installed on the computer. an execution information acquisition process for acquiring execution information written in the cloud storage from the cloud storage, the execution information being information related to the acquisition process including the acquired terminal information, which is written to the cloud storage by the second communication device in response to the second communication device executing an acquisition process for acquiring terminal information, which is information related to each of at least one terminal device, from the terminal device; an error determination process for determining whether or not an error state has occurred based on the execution information acquired by the execution information acquisition process, wherein the error state is a state in which one or more of the terminal information of each of the at least one terminal device included in the execution information acquired by the execution information acquisition process may not be appropriate corresponding to the execution timing of the execution information acquisition process; A management program that runs the

10. A method for managing at least one terminal device by a first communication device that can access a cloud storage, via the cloud storage and a second communication device that can access the cloud storage, comprising: the second communication device is configured to, in response to executing an acquisition process for acquiring terminal information, which is information related to the terminal device, from each of the at least one terminal device, write execution information, which is information related to the acquisition process, including the acquired terminal information, to the cloud storage; The method comprises: acquiring the execution information written in the cloud storage from the cloud storage; determining whether an error state has occurred based on the execution information obtained from the cloud storage; Equipped with The error state is a state in which one or more of the terminal information of each of the at least one terminal device included in the acquired execution information may not be appropriate corresponding to the execution timing of the execution information acquisition process. Management method.

Citation Information

Patent Citations

  • Information processing program, control method and information processing device

    JP2013092953A

  • Information processor, license management system, and license management method

    JP2015095051A

  • Communication system and terminal device

    JP2018025872A

  • Management device, management system, control method for management device, and program

    JP2018156541A

  • Server device and program

    JP2019148957A