Patent Description:
Conventionally, there is a known device management system, which is provided with a network interface card and which manages peripheral devices (hereinafter referred to as network devices) having a Simple Network Management Protocol (SNMP) agent function. In recent years, there is a demand to add peripheral devices that are locally connected to an information processing device, such as a personal computer, via a Universal Serial Bus (USB), to devices to be managed as with the network devices described above. Hereinafter, the devices locally connected is also referred to as local information devices. In addition, there is a known technique in which the information processing device acquires device information from the local information device using, between the information processing device and the local information device, a combination of a specific protocol, such as USB communication, and a printing language, such as a Printer Job Language (PJL).

Regarding the above, there are <CIT> and <CIT>. <CIT> and <CIT> disclose a configuration that enables a device management apparatus to remotely manage a local information device locally connected to a personal computer via a USB or the like.

However, when a local connection such as the USB communication between the information processing device and the local information device is disconnected, information on the local information device managed by one of the device management apparatus and information processing device is not changed, so that the device management may not be appropriately performed. For example, there may be a case in which the information processing device transmits old information in response to an inquiry from the device management apparatus.

<CIT> discloses a user terminal communicably connected to a server device via a network, includes: an information acquisition unit that acquires, terminal information including a terminal ID of the user terminal, peripheral device information including a device type and a serial number of a peripheral device connected to the user terminal via an interface for peripheral device connection, which is different from a network interface connected to the network; and a transmission/reception unit that transmits the terminal information and the peripheral device information to the server device.

<CIT> provides a server and a system that are configured to make it easier to register a plurality of authentication information on each of the plurality of information devices.

<CIT> describes a system and method for registering an image forming apparatus in a print server when the image forming apparatus is used on a temporarily basis, and for unregistering the image forming apparatus from the print server after the temporary use ends.

In light of the above-described problem, the disclosure is to provide an information processing device capable of managing information on an information device even when a state of a connection between the information processing device and the information device locally connected to the information processing device changes.

According to an embodiment of the disclosure, the information processing device (<NUM>) can appropriately manage information on the information device (<NUM>) even when a connection state between the information processing device (<NUM>) and the information device (<NUM>) locally connected to the information processing device (<NUM>) changes.

The accompanying drawings are intended to depict example embodiments of the present disclosure and should not be interpreted to limit the scope thereof.

The terminology used herein is for describing particular embodiments only and is not intended to be limiting of the present disclosure. It will be further understood that the terms "includes" and/or "including", when used in this specification, specify the presence of stated features, integers, steps, operations, elements, and/or components, but do not preclude the presence or addition of one or more other features, integers, steps, operations, elements, components, and/or groups thereof. In describing preferred embodiments illustrated in the drawings, specific terminology is employed for the sake of clarity.

Embodiments according to the present disclosure are described below. However, the present disclosure is not intended to be limited to the embodiments described herein.

A description is now given of a device management system <NUM> for managing one or more devices to be managed, according to an embodiment of the disclosure, with reference to <FIG> (<FIG> and <FIG>).

A description is now given of an overall configuration of the device management system <NUM> according to the present embodiment, with reference to <FIG> is an illustration of the overall configuration of the device management system <NUM> that includes a device management apparatus <NUM> and an information processing device <NUM>, according to the present embodiment. The device management system <NUM> illustrated in <FIG> includes a data center <NUM> connected to the Internet <NUM>, a Local Area Network (LAN) <NUM> connected to the Internet <NUM> via a router or the like, and a plurality of devices on the LAN <NUM>.

The data center <NUM> manages firmware and software such as an application. The data center <NUM> includes a group of servers that performs license authentication, such as activation or deactivation of the software. The software to be managed includes software such as device management software and a printer driver. The firmware includes firmware such as an application of a device, for example. An example of the application includes a Software Development Kit (SDK) application developed by using a software development kit, for controlling a device.

The LAN <NUM> is a network built in an organization <NUM>, such as a government agency, an educational institution, or a company, and a plurality of nodes are connected to the LAN <NUM>. In the example illustrated in <FIG>, one or more first information devices <NUM> and <NUM>, an administrator terminal <NUM>, the device management apparatus <NUM>, and one or more information processing devices <NUM> are set to the nodes connected to the LAN <NUM>.

These devices <NUM>, <NUM>, <NUM>, <NUM>, and <NUM> communicate each other through the LAN <NUM> by a packet communication based on Transmission Control Protocol (TCP)/Internet Protocol (IP). The LAN <NUM> may be, for example, a wired or a wireless local area network in compliance with a standard such as the 1000Base-TX Ethernet (registered trademark) or the Institute of Electrical and Electronics Engineers (IEEE) <NUM>. Some or all of these devices <NUM>, <NUM>, <NUM>, <NUM>, and <NUM> are connected to the data center <NUM> through the Internet <NUM>.

The device management apparatus <NUM> is a computer on which device management software for managing one or more information devices to be managed is installed and has various functions for managing the information devices to be managed.

Examples of the first information devices <NUM> and <NUM> connected to the LAN <NUM> illustrated in <FIG> include a Multifunction Peripheral/Printer/Product (MFP), a printer, a facsimile communication device, a projector, and an interactive electronic whiteboard, each of which includes a network interface card. The first information devices <NUM> and <NUM> are devices to be managed by the device management apparatus <NUM>, and each of the information devices <NUM> and <NUM> transmits information on the own device in response to a request received from the device management apparatus <NUM>. Hereinafter, the information on a device is also referred to as device information.

The administrator terminal <NUM> is a terminal device for remotely accessing a user interface of the device management software provided by the device management apparatus <NUM> and is used, by a system administrator or the like, for operating the device management system <NUM>. The access to the user interface of the device management software is not limited to an external terminal device such as the administrator terminal <NUM> and may be performed via a display device or an input device of the device management apparatus <NUM>.

The information processing device <NUM> is a computer device such as a personal computer, which is generally used by a user. The information processing device <NUM> is locally connected to one or more second information devices 194a and 194b via a Universal Serial Bus (USB) cable or the like. Hereinafter, the one or more second information devices 194a and 194b are also collectively or individually referred to as (a) second information device(s) <NUM>, when being unnecessary to be distinguished from each other. The second information device <NUM> is a device that is connected to the information processing device <NUM> and has a USB port, for example. Examples of the second information device <NUM> include an MFP, a printer, a facsimile communication device, a projector, and an interactive electronic whiteboard, however, the embodiments are not intended to be limited to these.

In addition, in the description of the embodiment, a wired USB connection is used as an example of a local connection, and the embodiment is applicable to a local connection of wired USB connection. However, the embodiments are not intended to be limited to the wired USB connection. In other one or more embodiments, any connection using, for example, a wireless USB, Bluetooth (registered trademark), or the like may be used as a local connection between a computer and a device.

In the example of <FIG>, one or more third information devices 192a and 192b are also locally connected to the device management apparatus <NUM>. Hereinafter, the one or more third information devices 192a and 192b are also collectively or individually referred to as (a) third information device(s) <NUM>, when being unnecessary to be distinguished from each other. In the present embodiment, the devices to be managed by the device management apparatus <NUM> include, in addition to the first information devices <NUM> and <NUM>, which are connected using a network connection, the third information devices 192a and 192b, which are locally connected to the device management apparatus <NUM>, and the second information devices 194a and 194b, which are locally connected to the information processing device <NUM>. Hereinafter, the first information devices <NUM> and <NUM> are also referred to as network information devices <NUM> and <NUM>. In addition, hereinafter, the second information device <NUM> and the third information device <NUM> are also referred to as a local information device <NUM> and a local information device <NUM>, respectively.

Before a detailed description of the device management system <NUM> according to the present embodiment is given, a description of a typical device management method for managing information devices that are locally connected is given, with reference to <FIG>.

<FIG> is a sequence diagram illustrating a typical process of acquiring information on the local information device <NUM> locally connected to the information processing device <NUM> in the device management system <NUM>.

In S800, the device management apparatus <NUM> requests the information processing device <NUM> to set for periodic device information collection, through a network such as the LAN <NUM>. The periodic device information collection indicates collecting device information periodically. In S801, the information processing device <NUM> sets the local information device <NUM> to perform the periodic device information collection.

In S802, upon detecting that a time for the periodic device information collection has come, the local information device <NUM> collects information on the own device, namely the local information device <NUM> collects information on the local information device <NUM>, which is device information. In S803, the local information device <NUM> transmits the device information to the information processing device <NUM> to which the own device (local information device <NUM>) is locally connected. In S804, the information processing device <NUM> stores the device information received, from the local information device <NUM> through the local connection, in an external storage device, for example.

In S805, the device management apparatus <NUM> detects that a scheduled time has come and starts periodic polling. In S806, the device management apparatus <NUM> transmits a request for device information to the information processing device <NUM> through a network such as the LAN <NUM>. Hereinafter, the request for device information is also referred to as a device information acquisition request. At this time, in addition to the information processing device <NUM>, a device information acquisition request is transmitted to the network information devices <NUM> and <NUM>, however a description thereof is omitted here.

In S807, in response to the device information acquisition request, the information processing device <NUM> acquires information on corresponding local information devices from the external storage device. In S808, the information processing device <NUM> filters all the device information to extract only necessary device information and transmits the extracted device information after the filtering to the device management apparatus <NUM> through a network such as the LAN <NUM>.

With the process described above, the device management apparatus <NUM> can acquire the information on the local information device <NUM> locally connected to the information processing device <NUM> connected to the own device (device management apparatus <NUM>) through the network. However, in a case in which the periodic device information collection is not performed due to a predetermined reason, the device information stored in the external storage device of the information processing device <NUM> is not to be updated, and this may cause the following problems. Even when the device management apparatus <NUM> performs the periodic polling, the information on the local information device <NUM> that is not updated is transmitted, which means old information is transmitted, and, accordingly, the management or maintenance of the information devices may be failed to be performed appropriately.

Examples of the predetermined reason may include a case in which a power supply of the local information device <NUM> is turned off, a case in which the local communication, such as a USB communication, is inactive, a case in which the USB cable is disconnected, a case in which the USB cable is plugged into a wrong USB terminal or a different USB terminal, and a case in which the local information device <NUM> has been replaced.

For example, in a company, it is general for staff members to turn off a power supply of an information device after finishing his or her job, and the USB communication becomes inactive after turning off the power supply. In addition, when a user trips over the USB cable, which is a wired cable, the USB cable may be physically disconnected from the USB terminal, causing the USB communication to be inactive. In addition, when the USB cable is plugged into a wrong USB terminal or a different USB terminal, a USB port name sometimes changes, and in such a case, the USB communication with the original USB port becomes inactive. In addition, when the local information device <NUM> is replaced with another one due to breakdown, device information also changes. In such a case, the device information stored in the external storage device of the information processing device <NUM> is different from information on the local information device <NUM> that is newly replaced and the information on the local information device <NUM> that is newly replaced may be processed as information on a new information device.

In addition, in the device management system <NUM>, by performing another process as illustrated in <FIG>, the device management apparatus <NUM> can acquire device information from the local information device <NUM> locally connected to the information processing device <NUM>, as with the network information devices <NUM> and <NUM> connected to the device management apparatus <NUM> through a network. <FIG> is a sequence diagram illustrating a typical process of acquiring device information from the information device locally connected to an information processing device <NUM> in a device management system <NUM> in a manner substantially same as or similar to an information device connected through a network.

In the process illustrated in <FIG>, the device management apparatus <NUM> starts periodic polling in S901. In S902, the device management apparatus <NUM> transmits a device information acquisition request to the information processing device <NUM>. In S903, in response to the device information acquisition request, the information processing device <NUM> acquires device information from the local information device <NUM> locally connected to the information processing device <NUM> and transmits the acquired device information to the device management apparatus <NUM>. In S904, the device management apparatus <NUM> stores the received device information in an external storage device, for example.

However, the USB communication is used not only for acquiring the device information but also for processing including printing processing using the local information device <NUM>. Accordingly, a communication speed of the USB communication is slow, and collecting the device information takes time. If the device management apparatus <NUM> often acquires the device information as illustrated in <FIG>, namely, for example, if the USB communication is used more often for acquiring the device information than for the printing processing, performance of the printing processing using the local information device <NUM> can be degraded. For this reason, in general, as illustrated in <FIG>, when the local information device <NUM> does not perform printing processing, the local information device <NUM> collects the device information and transmits the collected device information to the information processing device <NUM> and the external storage device of the information processing device <NUM> temporarily stores the received device information and then transmits the device information to the device management apparatus <NUM> at a timing of the periodic polling.

A detailed description is now given of the device management system <NUM> according to the present embodiment, which can overcome the problem described above, with reference to <FIG> (<FIG> and <FIG>).

A description is now given of a hardware configuration of a computer <NUM> that is used as each one of the device management apparatus <NUM> and the information processing device <NUM> according to the present embodiment, with reference to <FIG> is a block diagram illustrating the hardware configuration of the computer <NUM>. The computer <NUM> is typically a general-purpose computer, such as a personal computer, server computer, or the like.

The computer <NUM> illustrated in <FIG> includes a single-core or multi-core Central Processing Unit (CPU) <NUM>, a Random-Access Memory (RAM) <NUM>, a Read Only Memory (ROM) <NUM>, a Hard Disk Drive (HDD) <NUM>, a driver <NUM>, and a communication device <NUM>. The computer <NUM> may include an input device <NUM> and a display <NUM> if necessary.

The CPU <NUM> controls the overall operation, such as performing internal operation, of the computer <NUM>. The RAM <NUM> provides a working area for the CPU <NUM>. The ROM <NUM> stores a control program such as Basic Input/Output System (BIOS), etc. The HDD <NUM> stores an Operating System (OS) for controlling the computer <NUM>, a program for implementing functional units, which are described later, various types of system information, and various types of configuration information. The HDD <NUM> may be connected via a Serial AT Attachment (SATA) interface or a USB cable, for example. A recording medium <NUM> is detachably inserted into the driver <NUM>, and the driver <NUM> reads from or writes to the inserted recording medium <NUM>.

The input device <NUM> is an input device such as a mouse or a touch screen panel, for example. The display <NUM> is a display device such as a liquid crystal display or an organic electroluminescence (EL) display, for example. The input device <NUM> and the display <NUM> provide a user interface for receiving various types of instructions input according to a user operation. The communication device <NUM> is an interface device such as a Network Interface Card (NIC) or USB, for example. In the embodiment illustrated in <FIG>, the communication device <NUM> connects the computer <NUM> to a keyboard <NUM>, the information device <NUM> or <NUM>, the LAN <NUM>.

The above described hardware components are connected to each other through a built-in bus that is a common path for exchanging data by each circuit, or via an appropriate interface. The computer <NUM> according to the present embodiment reads a program from the ROM <NUM> or the HDD <NUM> and develops the read program onto a work space provided by the RAM <NUM>, so that each of the functions described later or each of the processes described later is implemented, as the device management apparatus <NUM> or the information processing device <NUM> under the control of the CPU <NUM>.

A detailed description is now given of functions, which are for managing a local information device, of the device management apparatus <NUM> according to the present embodiment, with reference to <FIG> is a block diagram illustrating functions, which are implemented on the device management apparatus <NUM> and related to the management of the information on the local information device <NUM>, according to the present embodiment.

As illustrated in <FIG>, functional blocks (a functional configuration) <NUM> on the device management apparatus <NUM> include a main processing unit <NUM>, a user interface (UI) control unit <NUM>, a device information control unit <NUM>, a device information acquisition control unit <NUM>, a device setting control unit <NUM>, a device search unit <NUM>, a device communication control unit <NUM>, and a network communication monitoring unit <NUM>.

The main processing unit <NUM> controls various tasks (search, polling, setting, etc.) for device management. The UI control unit <NUM> controls generation and display of a device management screen to be displayed on a web browser and controls user operation.

The device information control unit <NUM> writes device information to an external or internal storage device (RAM <NUM>, HDD <NUM>, etc.), acquires device information from the storage device, and deletes device information stored in the storage device. The device information control unit <NUM> also controls searching a device by the device search unit <NUM>, controls acquiring device information by the device information acquisition control unit <NUM>, and controls settings for a device by the device setting control unit <NUM>.

The device information acquisition control unit <NUM> acquires device information using, for example, a Simple Network Management Protocol (SNMP) communication using one of a standard Management Information Base (MIB) and a private MIB, a simple object access protocol (SOAP) communication using a web service, etc. The device setting control unit <NUM> sets a device, using, for example, a SNMP communication using MIB or a SOAP communication using a web service, etc. The device search unit <NUM> searches for a device using, for example, broadcasting or a <NUM>: <NUM> communication, which is designated an IP address range, etc. The device search unit <NUM> also selects a protocol for performing a search for a device using, for example, a SNMP communication using a standard MIB, USB port search of a USB printer, etc..

The device communication control unit <NUM> controls access to a device using, for example a SNMP communication using an IP address, a SOAP communication, and a USB communication using a USB port. The network communication monitoring unit <NUM> controls communication between the own device (device management apparatus <NUM>) and a local information device (timeout monitoring, protocol transmission and reception management, etc.).

The functional blocks <NUM> of the device management apparatus <NUM> according to the present embodiment further include a local communication control unit <NUM> and a local communication monitoring unit <NUM>.

The local communication control unit <NUM> controls a USB communication, such as transmission and reception management using a USB port. The local communication monitoring unit <NUM> can receive an offline notification from the local information device <NUM>, receive an online notification from the local information device <NUM>, receive a USB communication disconnection notification from the OS, and detect the non-USB-communication.

In the present embodiment, the local communication monitoring unit <NUM> serves as a determination unit that determines a connection state between the device management apparatus <NUM> and the local information device <NUM>. A storage device such as the HDD <NUM> or the RAM <NUM> included in the device management apparatus <NUM> stores the device information acquired from the local information device <NUM>, when the connection state between the device management apparatus <NUM> and the local information device <NUM> indicates that the communication is active (first state). In the present embodiment, the storage device serves as a storage unit. When the connection state between the device management apparatus <NUM> and the local information device <NUM> indicates that communication is inactive (second state), the device information control unit <NUM> deletes information on the local information device <NUM>, which is managed in the storage device by the device management apparatus <NUM>. The device information control unit <NUM> serves as a device information deletion unit.

The state in which the communication is active (first state) means that the device management apparatus <NUM> and the local information device <NUM> can communicate with each other by a wired or wireless communication, and the local information device <NUM> is powered on and activated. The state in which the communication is inactive (second state) means one or both of a state in which the wired or wireless communication between the device management apparatus <NUM> and the local information device <NUM> is disconnected and a state in which the local information device <NUM> is powered off and deactivated.

The local communication monitoring unit <NUM> detects a change in the communication state, in which the communication becomes inactive (second state), based on at least one of an offline event notified in response to shutdown of the local information device <NUM>, a reply from the local information device <NUM> in response to a try to establish a wired or wireless communication with the local information device <NUM>, and a communication disconnection event notified in response to disconnection of the wired or wireless communication from the local information device <NUM>.

A detailed description is now given of functions, which are for managing a local information device, of the information processing device <NUM> according to the present embodiment, with reference to <FIG> is a block diagram illustrating functions, which are implemented on the information processing device <NUM> and related to the management of the information on the local information device, according to the present embodiment.

As illustrated in <FIG>, functional blocks (a functional configuration) <NUM> on the information processing device <NUM> include an operating system (OS) <NUM> and local connection control software <NUM> installed on the OS <NUM>.

The local connection control software <NUM> is an application that monitors the local information device <NUM>, which is in a local connection state or connected via a USB. In the embodiment, the local connection control software <NUM> is remotely installed on the information processing device <NUM> from the device management apparatus <NUM> or installed on the information processing device <NUM> using an install medium, in advance, for example. An installation method of the local connection control software <NUM> is not particularly limited.

The local connection control software <NUM> includes a main processing unit <NUM>, a device information control unit <NUM>, a device information acquisition control unit <NUM>, a device setting control unit <NUM>, a device search unit <NUM>, an SNMP communication control unit <NUM>, and a network communication monitoring unit <NUM>.

The main processing unit <NUM> controls processing in relation to the local information device <NUM>, which is in relation to the device management apparatus <NUM>. The device information control unit <NUM> writes device information to an external or internal storage device (RAM <NUM>, HDD <NUM>, etc.), acquires device information from the storage device, and deletes device information stored in the storage device. The device information control unit <NUM> also controls searching a device by the device search unit <NUM>, controls acquiring device information by the device information acquisition control unit <NUM>, and controls settings for a device by the device setting control unit <NUM>.

The device information acquisition control unit <NUM> acquires device information by a local communication protocol such as a USB communication protocol and periodically receives the device information from the local information device <NUM>. The device information acquisition control unit <NUM> serves as an acquisition unit that acquires the device information from the local information device <NUM>.

The device setting control unit <NUM> sets the local information device <NUM> to transmit the device information periodically to the information processing device <NUM>. The device setting control unit <NUM> serves as a setting unit that sets for device information collection. The device search unit <NUM> searches a port of a USB printer possessed by the OS.

The SNMP communication control unit <NUM> controls SNMP communication with the device management apparatus <NUM>. The network communication monitoring unit <NUM> controls communication between the own device (information processing device <NUM>) and the device management apparatus <NUM> (timeout monitoring, protocol transmission and reception management, etc.).

The functional blocks <NUM> of the information processing device <NUM> according to the present embodiment further include a local communication control unit <NUM> and a local communication monitoring unit <NUM>.

The local communication control unit <NUM> controls a USB communication, such as management of transmission and reception using a USB port. The local communication monitoring unit <NUM> receives an offline notification from the local information device <NUM>, receives an online notification from the local information device <NUM>, receives a USB communication disconnection notification from the OS <NUM>, and detects the non-USB-communication.

In the present embodiment, the local communication monitoring unit <NUM> serves as a determination unit that determines a connection state between the information processing device <NUM> and the local information device <NUM>. In the present embodiment, the network communication monitoring unit <NUM> serves a device information transmission unit that transmits the device information acquired from the local information device <NUM> to the device management apparatus <NUM>, when the connection state between the information processing device <NUM> and the local information device <NUM> indicates that communication is active (first state). When the connection state between the information processing device <NUM> and the local information device <NUM> indicates that communication is inactive (second state), the device information control unit <NUM> deletes information on the local information device <NUM>, which is managed in the storage device by the information processing device <NUM>. In the present embodiment, the device information control unit <NUM> serves as a device information deletion unit. The device information acquired from the local information device <NUM> is stored in the storage device included in the information processing device <NUM> or may be stored in an external storage device connected to the information processing device <NUM>.

The state in which the communication is active (first state) means that the information processing device <NUM> and the local information device <NUM> communicate with each other by a wired or wireless communication, and the local information device <NUM> is powered on and activated. The state in which the communication is inactive means one or both of a state in which the wired or wireless communication between the information processing device <NUM> and the local information device <NUM> is disconnected and a state in which the local information device <NUM> is powered off and deactivated.

The local communication monitoring unit <NUM> can detect change in the communication state, in which the communication becomes inactive (second state), based on at least one of an offline event notified in response to shutdown of the local information device <NUM>, a reply from the local information device <NUM> in response to a try to establish a wired or wireless communication with the local information device <NUM>, and a communication disconnection event notified in response to disconnection of the wired or wireless communication from the local information device <NUM>.

The offline event is an event generated by the OS <NUM> based on a notification transmitted to the information processing device <NUM> to notify disconnection from the USB communication before the local information device <NUM> shuts down. In addition, the OS such as Windows (registered trademark) determines the USB communication disconnection when a signal unique to the USB is not detected within a set time by a USB signal detecting means. In such a case, the USB communication disconnection event is notified to an application running on the OS.

As examples of a method of acquiring the device information from the local information device <NUM>, the following methods can be used. The OS such as Windows (registered trademark) uses a printer job control language when transmitting or receiving data to or from the local information device <NUM>, such as a printer or an MFP, via a USB. As the printer job control language, PJL is known, but the PJL has its own extension to the manufacturer specification conforming to the PJL language, and it is possible to "program a function of insert another sheet (slip sheet function)" between a plurality documents to be printed out. By adding a command to acquire device information to this function extension, it is possible to acquire information on the local information device <NUM>, such as a printer or an MFP.

A detailed description is now given of a process of deleting information on the local information device <NUM> that is disconnected from communication to prevent transmission of erroneous information to the device management apparatus <NUM>, according to one or more embodiments, with reference to <FIG> (<FIG> and <FIG>).

<FIG> is a sequence diagram illustrating a periodic polling process in which a connection state between the information processing device <NUM> and the local information device <NUM> is determined based on an offline event, in the device management system <NUM> according to an exemplary embodiment.

The process illustrated in <FIG> is started when a power supply of the local information device <NUM> is turned off in S101. In S102, the local information device <NUM> performs shutdown processing. In S103, the local information device <NUM> transmits an offline notification to the information processing device <NUM>. As an example of the offline notification, a PJL command, such as "@ PJL ECHO POWEROFF <CR> <LF>", is used and transmitted to the information processing device <NUM>.

In S104, in the information processing device <NUM>, the OS <NUM> notifies the local connection control software <NUM> of an offline event, and the local communication monitoring unit <NUM> detects the offline event.

In S105, the local connection control software <NUM> of the information processing device <NUM> issues an instruction to cause the device information control unit <NUM> to delete, from a storage device, information on the local information device <NUM> related to the offline event, resulting in deletion of the device information. Because of this, the storage device stores information indicating that there is no information on the local information device <NUM>, accordingly.

A description is now given of the instruction to delete the device information. The instruction to delete the device information is a delete command with information identifying an information device as a search key. The OS <NUM> stores, in a management area of the OS <NUM> (registry in a case of Windows (registered trademark)), basic information on a local information device connected to a USB. The basic information includes for example, a USB port name, a manufacturer name, a serial number, and a model name. In the storage device of the information processing device <NUM>, information on each information device can be managed in association with identification information for identifying a corresponding information device. An instruction to delete device information using corresponding identification information as a key is generated. Then, device information corresponding to the identification information is deleted from among the device information for all of the local information devices, stored in the storage device of the information processing device <NUM>.

In some embodiments, the information processing device <NUM> receives, from the device management apparatus <NUM>, a request (acquisition request) for information (device information) on the local information device <NUM> managed by local connection control software <NUM> and receives, from the device management apparatus <NUM>, an identifier (ID), which is generated from a USB port name and a serial number. In this case, in the storage device of the information processing device <NUM>, the device information can be managed in association with the ID. An instruction to delete device information using a corresponding ID as a key is generated, and the corresponding device information is deleted from among the device information for all of the local information devices stored in the storage device of the information processing device <NUM>.

In the flow illustrated in <FIG>, the device management apparatus <NUM> detects that a time to start the periodic polling has come in S106. In S107, the device management apparatus <NUM> transmits a device information acquisition request to the information processing device <NUM>. In S107, in addition to the information processing device <NUM>, a device information acquisition request may be transmitted to the network information devices <NUM> and <NUM>.

In S108, in response to the device information acquisition request, the local connection control software <NUM> of the information processing device <NUM> acquires information on the corresponding local information device <NUM> from the storage device. In S109, the local connection control software <NUM> of the information processing device <NUM> filters all of the device information to extract necessary device information, and then transmits the extracted device information to the device management apparatus <NUM>. When the storage device of the information processing device <NUM> stores no device information related to the local information device <NUM>, the information processing device <NUM> transmits, to device management apparatus <NUM>, information indicating that there is no device information, which is stored in the storage device.

<FIG> is a sequence diagram illustrating a periodic polling process in which a connection state between the information processing device <NUM> and the local information device <NUM> is determined based on a non-communication check, in the device management system <NUM> according to an exemplary embodiment. The non-communication check, or a communication check, is performed by the information processing device <NUM> in a manner that the information processing device <NUM> monitors a communication established between the information processing device <NUM> and the local information device <NUM> to determine whether the local information device <NUM> is online or offline.

The process illustrated in <FIG> is started when the power supply of the local information device <NUM> is turned off in S201. In S202, the local information device <NUM> performs shutdown processing, and in response to the processing, the local information device <NUM> becomes offline, without transmitting an offline notification to the information processing device <NUM>, which is different from the process illustrated in <FIG> (Step S203).

In S204, the local connection control software <NUM> starts a periodic non-USB-communication check in preparation for a case where the offline notification could not be transmitted for some reason. In S204, the local connection control software <NUM> performs the communication check by the local communication monitoring unit <NUM> and detects the offline. When a reply in response to the communication check message is not received within a predetermined time, offline is detected.

In S206, the local connection control software <NUM> issues an instruction to cause the device information control unit <NUM> to delete, from the storage device, information on the local information device <NUM> related to the non-communication, resulting in deletion of the device information. The subsequent processing from S207 to S210 is substantially the same as the processing from S106 to S109 illustrated in <FIG>.

<FIG> is a sequence diagram illustrating a periodic polling process in which a connection state between the information processing device <NUM> and the local information device <NUM> is determined based on a local communication disconnection event, in the device management system <NUM> according to an exemplary embodiment.

The process illustrated in <FIG> is started when the information processing device <NUM> detects that a cable used for connecting to the local information device <NUM> is disconnected in S301. The local connection control software <NUM> monitors a local communication disconnection event from the OS <NUM>, in preparation for a case where the USB cable is disconnected for some reason. In S302, in the information processing device <NUM>, the OS <NUM> notifies the local connection control software <NUM> of a local communication disconnection event, and the local communication monitoring unit <NUM> detects the local communication disconnection event.

In S303, the local connection control software <NUM> issues, in response to the local communication disconnection event, an instruction to cause the device information control unit <NUM> to delete information on the local information device <NUM> from the storage device, resulting in deletion of the device information. The subsequent processing from S304 to S307 is substantially the same as the processing from S106 to S109 illustrated in <FIG>.

A description is now given of a periodic polling process in which a connection state between the information processing device <NUM> and the local information device <NUM> is determined based on an online notification from the local information device <NUM>, in the device management system <NUM> according to an exemplary embodiment of the disclosure, with reference to <FIG> is a sequence diagram illustrating the periodic polling process in which the connection state between the information processing device <NUM> and the local information device <NUM> is determined based on an online notification from the local information device <NUM>, in the device management system <NUM> according to the exemplary embodiment of the disclosure.

The process illustrated in <FIG> is started when the power supply of the local information device <NUM> is turned on in S401. In S402, the local information device <NUM> performs start-up (activation) processing. In S403, the local information device <NUM> transmits an online notification to the information processing device <NUM>. As an example of the online notification, a PJL command is used in a same manner as the offline notification described above.

In S404, in the information processing device <NUM>, the OS <NUM> notifies the local connection control software <NUM> of an online event. In S405, the local connection control software <NUM> determines whether an ID included in the notification of the online event is identical to an ID stored in the external storage device (i.e., ID of the local information device related to previous device information). When the ID included in the notification of the online event is not identical to the ID stored in the external storage device, the local connection control software <NUM> determines that the local information device <NUM> is disconnected from the communication and issues an instruction to delete information on the local information device <NUM>, resulting in deletion of the device information, which is the information on the disconnected local information device <NUM>. This means that the storage device stores information indicating that there is no information on the local information device <NUM>, accordingly.

In S406, the local connection control software <NUM> sets the local information device <NUM> to perform the periodic device information collection. As an example of a setting method, a PJL command, such as "@ PJL USTATUS DEVICEINFO = ON <CR> <CF>", is used and transmitted to the local information device <NUM>.

In S407, upon detecting that a time for the periodic device information collection has come, the local information device <NUM> collects information on the own device (local information device <NUM>). In S408, the local information device <NUM> transmits the device information to the information processing device <NUM> to which the own device (local information device <NUM>) is locally connected. In S409, the information processing device <NUM> stores the device information received from the local information device <NUM> in the storage device.

In S410, the device management apparatus <NUM> detects that a time to start the periodic polling has come. In S411, the device management apparatus <NUM> transmits a device information acquisition request to the local connection control software <NUM> of the information processing device <NUM>. In S412, in response to the device information acquisition request, the local connection control software <NUM> acquires information on the corresponding local information device <NUM> from the external storage device. In S413, the local connection control software <NUM> of the information processing device <NUM> filters all of the device information to extract necessary device information, and then transmits the extracted device information to the device management apparatus <NUM>.

Because this processing step is performed after the online event in the process illustrated in <FIG>, the information on the local information device <NUM> is stored in the external storage device of the information processing device <NUM>, and the device information is transmitted to the device management apparatus <NUM>.

When the power supply of the local information device <NUM> is turned on, there is a case in which old device information remains in the external storage device of the information processing device <NUM>. For example, when the local information device <NUM> is broken down, there may be a case in which the device is replaced, and the old device information may be transmitted to the device management apparatus <NUM> until a next time for the periodic device information collection comes. However, according to the flow illustrated in <FIG>, identity of the local information device <NUM> connected to a port is determined, and when the identity is not confirmed, the corresponding device information is deleted. This prevents that the old device information is erroneously transmitted.

A description is now given of and a periodic polling process performed based on an instruction to turn on or off the power supply of the local information device <NUM> in the device management system <NUM> according to another embodiment, with reference to <FIG> (<FIG> and <FIG>). <FIG>, which includes <FIG> and <FIG>, is a sequence diagram illustrating the periodic polling process performed based on an instruction to turn on or off a power supply of the local information device <NUM>, in the device management system <NUM> according to an embodiment of the disclosure. In an exemplary embodiment, the information processing device <NUM> connected to the local information device <NUM> includes an information device power control unit to control the power supply of the local information device <NUM> based on the communication with the device management apparatus <NUM>.

In S501, the device management apparatus <NUM> notifies the information processing device <NUM> of completion of the periodic polling. In S502, the local connection control software <NUM> on the information processing device <NUM> instructs the local information device <NUM> to turn off the power. In S503, the local information device <NUM> performs shutdown processing. In S504, the local information device <NUM> transmits an offline notification to the information processing device <NUM>.

In S504, in the information processing device <NUM>, the OS <NUM> notifies the local connection control software <NUM> of an offline event. In S506, the local connection control software <NUM> issues an instruction to delete, from the storage device, information on the local information device <NUM> related to the offline event, resulting in deletion of the device information.

In S507, the device management apparatus <NUM> instructs the information processing device <NUM> to start the periodic polling. In S508, the local connection control software <NUM> instructs the local information device <NUM> to turn on the power. In S509, the local information device <NUM> performs start-up processing. In S510, the local information device <NUM> transmits an online notification to the information processing device <NUM>.

In S511, in the information processing device <NUM>, the OS <NUM> notifies the local connection control software <NUM> of an online event. In S512, the local connection control software <NUM> determines whether an ID included in the notification of the online event is identical to an ID stored in the storage device (ID of the local information device related to previous device information). When the ID included in the notification of the online event is not identical to the ID stored in the external storage device, the local connection control software <NUM> issues an instruction to delete information on the local information device <NUM>, resulting in deletion of the device information. In S513, the information processing device <NUM> sets the local information device <NUM> to perform the periodic device information collection.

In S514, upon detecting that a time for the periodic device information collection has come, the local information device <NUM> collects information on the own device. In S515, the local information device <NUM> transmits the device information to the information processing device <NUM> to which the own device is locally connected. In S516, the information processing device <NUM> stores the device information received from the local information device <NUM> in the external storage device.

In S517, the device management apparatus <NUM> detects that a time to start the periodic polling has come. In S518, the device management apparatus <NUM> transmits a device information acquisition request to the local connection control software <NUM> of the information processing device <NUM>.

In S519, in response to the device information acquisition request, the local connection control software <NUM> acquires information on the corresponding local information device <NUM> from the external storage device. In S520, the local connection control software <NUM> filters all of the device information to extract necessary device information, and then transmits the extracted device information to the device management apparatus <NUM>.

In the above description with reference to <FIG> (<FIG> and <FIG>), the information processing device <NUM> acquires information on the local information device <NUM> and transmits the acquired device information to the device management apparatus <NUM> in response to a request from the device management apparatus <NUM>. However, in some embodiments, the device management apparatus <NUM> may manage the local information device <NUM> connected to the own device (device management apparatus <NUM>). In such a case, a process is almost the same as the one illustrated in <FIG> in which the local information device <NUM> is replaced with the local information device <NUM>, and that the execution entity of each process for the information device <NUM> is the device management apparatus <NUM> and device information is stored in an own storage device without transmitting the device information to the outside.

As described above, according to the above-described embodiments, the information processing device can manage information on an information device appropriately even when the connection state with the local information device locally connected changes.

According to the embodiments described above, the connection state of an information device locally connected to the device management apparatus <NUM> or the information processing device <NUM> is determined, and when the connection state is a non-communication state (for example, offline, power off, cable disconnection, communication disconnection, etc.), information on the information device managed by the device management apparatus <NUM> or the information processing device <NUM> is deleted. This prevents that old device information is kept transmitting in response to an inquiry from the device management apparatus <NUM>. The device management apparatus <NUM> can always acquire the latest device information, resulting in facilitating providing a service (maintenance, etc.) to the local devices.

In the above-described example embodiment, a computer can be used with a computer-readable program, described by object-oriented programming languages such as C++, C#, Java (registered trademark), or legacy programming languages such as machine language, assembler language, C language to control functional units used for the apparatus or system. The computer software can be provided to the programmable device using any storage medium or carrier medium for storing processor-readable code such as a floppy disk, a Compact Disk Read Only Memory (CD-ROM), a CD-Rewritable CD-(RW) a Digital Versatile Disk Read Only Memory (DVD-ROM), a DVD Recording only/Rewritable (DVD-R/RW), a Blu-ray disc, an Electrically Erasable and Programmable Read Only Memory (EEPROM), an Erasable Programmable Read Only Memory (EPROM), a memory card or stick such as USB memory, a memory chip, a Mini Disk (MD), a Magneto Optical disc (MO), magnetic tape, a hard disk in a server, a solid state memory device or the like, but not limited these.

The present disclosure may be implemented in any convenient form, for example using dedicated hardware, or a mixture of dedicated hardware and software. The present disclosure may be implemented as computer software implemented by one or more networked processing apparatuses. The processing apparatuses can compromise any suitably programmed apparatuses such as a general purpose computer, personal digital assistant, mobile telephone (such as a WAP or <NUM>-compliant phone) and so on. Since the present disclosure can be implemented as software, each and every aspect of the present disclosure thus encompasses computer software implementable on a programmable device. The computer software can be provided to the programmable device using any conventional carrier medium (carrier means). The carrier medium can compromise a transient carrier medium such as an electrical, optical, microwave, acoustic or radio frequency signal carrying the computer code. An example of such a transient medium is a TCP/IP signal carrying computer code over an IP network, such as the Internet. The carrier medium can also comprise a storage medium for storing processor readable code such as a floppy disk, hard disk, CD ROM, magnetic tape device or solid state memory device.

Claim 1:
An information processing device (<NUM>), comprising:
a determination unit (<NUM>, <NUM>) configured to determine a connection state between the information processing device (<NUM>) and an information device (<NUM>) locally connected to the information processing device (<NUM>);
an information control unit (<NUM>, <NUM>) configured to write to an internal storage unit (<NUM>, <NUM>) device information of the information device (<NUM>) acquired from the information device (<NUM>); and
an information transmission unit (<NUM>, <NUM>) configured to transmit, to a device management apparatus (<NUM>) connected to the information processing device (<NUM>) through a network, the device information of the information device (<NUM>) acquired from the information device (<NUM>), the connection state being a first state;
wherein
the first state is a state in which the information processing device (<NUM>) and the information device (<NUM>) are communicably connected to each other by either a wired connection or a wireless connection and the information device (<NUM>) is turned on, and
the second state is one of a state in which communication between the information processing device (<NUM>) and the information device (<NUM>) is disconnected and a state in which the information device (<NUM>) is turned off;
the information control unit (<NUM>, <NUM>) is further configured to delete from the internal storage unit (<NUM>, <NUM>) the device information of the information device (<NUM>) managed by the information processing device (<NUM>), the connection state being the second state.