The present invention relates to a technique for registering an image processing apparatus for a web service.
As a web service utilizing the Internet, there has been a consumables automatic ordering system in which an image processing apparatus notifies a web server of the remaining amounts of consumables such as ink and sheets and the web server automatically orders consumables from a store based on the remaining amount information of the consumables. In Japanese Patent Laid-Open No. 2017-156848 (hereinafter referred to as Document 1), a method of using an image processing apparatus for registration for such a web service as above is suggested.
However, in the technique of Document 1, it is not possible to register for a web service unless the image processing apparatus is connected to the Internet.
The information processing method according an embodiment of the present invention is an information processing method executed by an information processing apparatus which communicates with a management server and an image processing apparatus, the management server being configured to manage status information transmitted from the image processing apparatus through a network, the information processing apparatus including a first communication unit configured to communicate with the image processing apparatus without the network, the information processing apparatus being configured to perform registration for a web service, the information processing method including: obtaining first identification information from the image processing apparatus through communication by use of the first communication unit, the first identification information identifying the image processing apparatus; obtaining second identification information transmitted from the management server in response to transmission of the first identification information to the management server through the network, the second identification information identifying the image processing apparatus; and transmitting a request, to a server that provides the web service, for performing registration regarding the image processing apparatus based on the second identification information.
Further features of the present invention will become apparent from the following description of exemplary embodiments with reference to the attached drawings.
Each of
Hereinafter, a detail explanation is given of embodiments of the present invention with reference to the attached drawings. It should be noted that the following embodiments do not limit the present invention according to the claims and that every combination of the characteristics explained in the present embodiments is not essential to the solution means of the present invention.
<System Configuration>
The computer 101 and the printer 102 are capable of being connected to the Internet via a router 105. Each of the management server 103 and the service provider server 104 is connected to the Internet 100. Furthermore, the printer 102 is capable of mutually communicating with the computer 101 through a USB cable 106. That is, the printer 102 is capable of being connected to the Internet via the router 105 and also capable of being connected directly to the computer 101 without using a network. Note that the printer 102 is also capable of being connected to the computer 101 via a network such as a LAN provided by the router 105. Although USB is taken as an example of the interface for directly connecting the computer 101 and the printer 102 in the explanation of the present embodiment, the interface may be Wi-Fi Direct, Bluetooth Low Energy, etc.
The management server 103 manages information transmitted from the printer 102 and is capable of providing the information transmitted from the printer 102 to the service provider server 104 via the Internet 100. For each communication, control through HTTP, XMPP, etc., is performed. Note that, as for the protocol, another protocol may be used.
<Hardware Configuration of Computer>
The CPU 201 is a central processing unit for controlling each unit of the computer 101. The disk device 202 stores various kinds of files as well as an OS and an application 212 to be read out by the CPU 201. The external disk reading device 203 is a device for reading out data such as a file stored in an external storage medium such as an SD card. The memory 204 is configured with a RAM or the like, which is used by the CPU 201 for temporary storage of data, buffering of data, etc., as needed. The display unit 205 is configured with an LCD, for example, and displays various kinds of information. The operation unit 206 includes a keyboard, a mouse, and the like, for a user to perform various kinds of input operations. The network communication unit 207 is connected to the router 105 via the network connection unit 208. That is, the network communication unit 207 is connected to a network such as the Internet 100 via the network connection unit 208 and performs various kinds of communications. The network communication unit 207 corresponds to a wired LAN or a wireless LAN. In a case where the network communication unit 207 corresponds to a wired LAN, the network connection unit 208 is a connector for connecting a cable of a wired LAN, and, in a case where the network communication unit 207 corresponds to a wireless LAN, the network connection unit 208 is an antenna. The USB communication unit 210 is connected to various peripheral apparatuses (e.g., the printer 102) via the USB connection unit 211 and performs various kinds of communications. The above-described units are mutually connected via a bus 209. Note that, although the computer 101 is taken as an example of the information processing apparatus in the explanation of the present embodiment, the present invention is not limited thereto. For example, an information processing terminal such as a smartphone or a tablet may be used as the information processing apparatus.
<Hardware Configuration of Printer>
The scanner unit 302 optically reads a document set on a platen (not illustrated in
The CPU 305 is a central processing unit for controlling each unit in the printer 102. The program memory 306 is configured with a ROM or the like and stores various program codes and an application 316 for communicating with a server apparatus. Further, the application 316 accesses the printer unit 301 to obtain consumables information about ink, sheets, etc. The work memory 307 is configured with a RAM or the like and temporarily stores or buffers image data, a job log, etc., for executing each service. The display unit 308 is configured with an LCD, for example, and displays various kinds of information. The operation unit 309 includes a switch, etc., for a user to perform various kinds of input operations. The network communication unit 310 is connected to the router 105 via the network connection unit 311. That is, the network communication unit 310 is connected to a network such as the Internet 100 via the network connection unit 311 to perform various kinds of communications. For each communication, control through HTTP, XMPP, etc., is performed. Note that, as for the protocol, another protocol may be used. The network communication unit 310 corresponds to a wired LAN or a wireless LAN. In a case where the network communication unit 310 corresponds to a wired LAN, the network connection unit 311 is a connector for connecting a cable of a wired LAN, and, in a case where the network communication unit 310 corresponds to a wireless LAN, the network connection unit 311 is an antenna. The flash memory 312 is a non-volatile memory for storing image data, etc., received by the network communication unit 310. The USB communication unit 313 is connected to various kinds of peripheral apparatuses (e.g., the computer 101) via the USB connection unit 314 to perform various kinds of communications. The above-described units are mutually connected by a bus 315.
<Hardware Configuration of Servers>
<Sequence>
Next, an explanation is given of processing from service registration for a web service to start of utilization of the web service by use of a registration application, which is one of the applications 212 stored in the disk device 202 of the computer 101.
The series of processing illustrated in the sequence of
In S501, the printer 102 detects that the user has validated a printer information transmission setting through the operation unit 309. The printer information transmission setting is a setting for regularly or irregularly transmitting printer information, such as ink remaining amount information, from the printer 102 to the outside. Printer information is a kind of status information, which is indicative of a status of a device such as the printer 102. In the present embodiment, it is assumed that printer information is used as status information. At the point of S501, since the printer 102 is not connected to the Internet, processing triggered by validation of the printer information transmission setting is not performed.
In S502, the registration application communicates with the printer 102 via the USB cable 106 and requests the printer 102 to transmit printer identification information (also referred as first identification information) that inherently identifies the printer 102. For example, the registration application requests for the serial number and the MAC address of the printer 102 as printer identification information.
In S503, the printer 102 replies with the printer identification information to the registration application via the USB cable 106 in response to the request in S502. Note that, although it is assumed that the printer identification information is both the serial number and the MAC address of the printer 102 in the example of
In S504, the registration application transmits a printer identifier (hereinafter referred as “printer ID”) issuance request to the management server 103 via the Internet 100. A printer ID (also referred as second identification information) is information that uniquely identifies a printer 102 in the management server 103 and the service provider server 104. In the web service performed in the present embodiment, a printer 102 is identified by use of a printer ID for providing the web service. Note that the reason why the web service is performed by use of a printer ID (i.e., second identification information) instead of printer identification information (i.e., first identification information) is as follows. For example, the printer 102 may be given to another user. It is assumed that, after User A firstly receives provision of the web service by use of the printer 102, another user User B receives provision of the web service by use of the same printer 102. In this case, if the printer 102 is identified by printer identification information (i.e., first identification information), the same printer identification information (i.e., first identification information) would be used for the new and old users. Therefore, an appropriate service may not be provided.
For example, in order to prevent double registration of a printer, the service provider server 104 may reject registration of a printer that overlaps with a registered printer. In this case, if the printer is identified by printer identification information (i.e., first identification information) in the service provider server 104, the printer identification information does not change even though the printer has been given to another user. Therefore, in a case where the above-mentioned User B, to whom the printer has been given, performs registration of the printer, the service provider server 104 may reject the registration due to double registration since the printer has already been registered by User A, who has given the printer to User B.
Therefore, in the present embodiment, even for the same printer identification information (i.e., first identification information), the management server 103 issues a different printer ID (i.e., second identification information) each time issuance of a printer ID is requested. Further, the management server 103 performs processing to invalidate a previous printer ID. Further, the service provider server 104 identifies a printer 102 by use of a printer ID. That is, in the service provider server 104, even the same printer is actually managed as different printers. Therefore, it is possible to prevent the service provider server 104 from rejecting registration of a printer that has given to another user due to double registration. Further, since a previous printer ID is invalidated by the management server 103, it is possible to prevent the service provider server 104 from unnecessarily providing a service to a previous user. That is, the entire system can prevent double registration as a result.
In S504, a request for issuing such a printer ID as above is performed. The registration application notifies the management server 103 of the printer identification information of the printer 102 and requests for issuing a printer ID.
In S505, the management server 103 issues a printer ID, which is a unique value for uniquely identifying a printer in the information processing system, in response to the printer ID issuance request by the registration application. Then, the issued printer ID is stored in the management server 103 in association with the printer identification information (i.e., serial number and MAC address). Note that, in a case where a printer ID has already been issued for the same printer identification information, a newly issued printer ID may be separately stored or may be overwritten onto the existing printer ID.
In S506, the management server 103 replies with (i.e., transmits) the printer ID to the registration application. In S507, the registration application, which is replied with the printer ID, designates a URL of a web service registration page to a web browser and opens the web service registration page. Note that the web service registration page is a web page provided by the service provider server 104, and the URL of the web service registration page is preliminarily managed by the registration application. In addition, the registration application also provides the printer name of the printer 102 and the printer ID obtained from the management server 103 to the web browser and causes the web browser to transmit the printer name and the printer ID to the service provider server 104 via the Internet 100.
In S508, the service provider server 104 detects that the user has entered user information such as a user name and a mail address on the registration page 802 illustrated in
In S510, the management server 103 updates a service management table of the database 413, based on the printer ID validating notification, which is transmitted from the service provider server 104.
Note that it is possible to create a notification destination URL by various methods. For example, the service provider server 104 may issue a unique URL to the management server 103 in S509, and the URL may be registered in the service management table 900 in S510. Alternatively, the service provider server 104 may issue a general purpose URL to the management server 103 in S509, and the management server 103 may create a unique URL by adding the printer ID to the general purpose URL.
Returning back to
In S511, the printer 102 detects that the user has set up the network connection to make the printer 102 ready to communicate with the Internet. In S512, the printer 102 transmits via the Internet 100, to the management server 103, a printer information transmission setting validating notification for validating the printer information transmission setting, together with the printer identification information (i.e., serial number and MAC address).
In S513, in response to the reception of the printer identification information in S512, the management server 103 specifies the received printer identification information from among multiple printer identification information included in the printer management table 700 of the database 413 as illustrated in
In S515, the printer 102 transmits the printer identification information and the printer information, such as a status of the printer 102 and the remaining amounts of consumables, to the management server 103 via the Internet 100. In S516, the management server 103 searches the printer management table 700 of the database 413 with the printer identification information (e.g., serial number) included in the received printer information to confirm the printer ID. In S517, the management server 103 searches the service management table 900 for the printer ID confirmed in S516 and then confirms the service information associated with the printer ID. Specifically, the management server 103 confirms, from the service information, the notification information about the type of printer information to be notified to the service provider server 104 and the notification destination URL thereof. Further, the management server 103 transmits consumables information, which is included in the printer information received in S515.
The service provider server 104 stores the consumables information transmitted in S517 separately for each printer ID corresponding to a notification destination URL. Then, the service provider server 104 provides various services by use of the consumables information, the printer ID, and the user information stored in association with the printer ID in S508. For example, the service provider server 104 registers a printer ID and a mail address entered on the screen illustrated in
<Flowchart Up to Service Start State Notification by Management Server>
In S1001, the management server 103 receives a notification from the printer 102 or the service provider server 104. In S1002, the management server 103 determines whether the notification received in S1001 is a printer ID validating notification from the service provider server 104. In a case of a printer ID validating notification, the processing proceeds to S1003, and otherwise, the processing proceeds to S1005.
In S1003, the management server 103 registers a printer ID, a service identifier, the type of printer information, and a printer information notification destination URL included in the notification received in S1001 in the service management table 900 of the database 413. In S1004, the management server 103 searches the printer management table 700 of the database 413 for the printer ID included in the notification received in S1001 and confirms the state of the printer information transmission setting. In a case where the state of the printer information transmission setting is the “VALID” state, the processing proceeds to S1008, and, in a case of “INVALID” or in a case where data corresponding to the printer ID is not present in the printer management table 700, the processing is terminated. That is, in a case where the network connection setup as illustrated in S511 has been completed for the printer 102 and the state of the printer information transmission setting is “VALID”, the processing proceeds to S1008.
An explanation is given of a case where the printer information transmission setting is determined to be “INVALID” in S1004 and a case where the printer information transmission setting is determined to be “VALID” in S1004. In
In a case where the determination result in S1002 is not a printer ID validating notification, the management server 103 determines, in S1005, whether the notification received in S1001 is a printer information transmission setting validating notification, which is transmitted together with printer identification information from the printer 102. In a case of a printer information transmission setting validating notification, the processing proceeds to S1006, and otherwise, the processing is terminated. Note that, although the printer identification information in the above processing is the serial number of the printer 102, the printer identification information may be the MAC address or both of the serial number and the MAC address. In S1006, the management server 103 searches the printer management table 700 of the database 413 with the serial number received in S1005 and updates the state of the printer information transmission setting of the corresponding printer 102 to “VALID”. Note that, in S1004 as described above, in a case where the process of S1006 has already been executed for the printer ID, the processing proceeds to S1008 after the process of S1006.
In S1007, the management server 103 confirms the printer ID associated with the serial number received in S1005 from the printer management table 700 of the database 413. Then, the management server 103 searches the service management table 900 of the database 413 for the confirmed printer ID. Further, in a case where the data is present, the processing proceeds to S1008, and, in a case where the data is not present, the processing is terminated. That is, it is determined whether the printer 102, which is the transmission source that has transmitted the printer information transmission setting validating notification, is a printer that has already been in a service start state. In a case of a printer that has already been in a service start state, the processing proceeds to S1008. In a case where the process of S1003 as described above has been executed for the printer ID, the process of S1008 is executed as a result of the determination in S1007.
Then, in S1008, the management server 103 notifies the service provider server 104 that the printer 102 has been in the service start state. That is, in a case where conditions that the printer information transmission setting is “VALID” and that the registration in the service management table 900 is completed, the management server 103 issues a printer connection completion notification to the service provider server 104.
<Flowchart of Printer Information Transmission Processing by Management Server>
In S1102, the management server 103 confirms whether the type of printer information received in S1101 is consumables information or print job information. In S1103, the management server 103 searches the printer management table 700 of the database 413 for the serial number or the MAC address received in S1101. Then, the management server 103 confirms whether there is a printer ID associated with the serial number or the MAC address. In a case where there is a printer ID associated with the serial number or the MAC address, the processing proceeds to S1104. In a case where there is not a printer ID associated with the serial number or the MAC address, the processing is terminated.
In S1104, the management server 103 searches the service management table 900 of the database 413 for the printer ID confirmed in S1103 and confirms the notification destination URL and the type of the printer information to be notified to the service provider server 104. In a case where the type of printer information to be notified is included in the information received from the printer 102 in S1101, the processing proceeds to S1105, and otherwise, the processing is terminated. In a case where the type of printer information to be notified is “consumables information” in S1105, the processing proceeds to S1106, and otherwise, the processing proceeds to S1107. In S1106, in a case where there is an ink tank whose remaining ink amount is equal to or less than threshold value X based on the received consumables information, the processing proceeds to S1107, and otherwise, the processing is terminated. In S1107, out of the printer information received in S1101, the management server 103 transmits the information of the type of printer information, which has been confirmed in S1104, to the notification destination URL, which has been confirmed in S1104, and then terminates the processing.
As described above, according to the present embodiment, even in a case where the printer 102 cannot be connected to the Internet, it is possible to start and complete registration processing for a web service. Then, in a case where the printer 102 is connected to the Internet after the registration for a web service, the printer 102 becomes a service start state, and printer information according to the service is transmitted to the service provider server 104 via the management server 103. Such registration for a web service as above may be performed together in a flow of installing a printer driver and a printing application on the computer 101. Here, by connecting the printer 102 and the computer 101 by use of the USB cable 106, it is possible to complete registration for a web service at the time of staring installation of a printer driver or the like.
Note that, in the above-described example, by creating a unique notification destination URL for each printer ID, it is possible for the service provider server 104 to store printer information for each printer ID in a distinguishable manner. However, the method for the service provider server 104 to distinguish printer information is not limited thereto. For example, in S517, the management server 103 may access a general purpose URL for multiple printer IDs, and printer IDs may be notified to the service provider server 104 through the access.
In the first embodiment, an explanation has been given of a mode of performing registration processing for one web service. In the present embodiment, an explanation is given of processing in which the service provider server 104 provides multiple different web services, and registration for the multiple different web services is performed to make the multiple different web services in the start states at once. Note that the same signs are attached to the same configurations and processes of the first embodiment to omit the explanation thereof.
As described above, according to the present embodiment, it is possible to register for multiple services at once by use of one printer ID. In addition, printer information to be notified can be changed for each service.
Although printer information is taken as an example of status information in the above embodiments, the present invention is not limited thereto. Status information may be information indicative of a device state of a device such as the printer 102. Further, status information may be any kinds of information as long as the status information is information according to a service provided by a service provider server 104.
Furthermore, although the management server is illustrated as one server in the above-described embodiments, the present invention is not limited thereto. The management server may be configured with multiple servers, such as a device management server that issues a printer ID and a service management server that manages storage of status information of a printer and transmission of status information of a printer to a service provider server. The number of image processing apparatuses connected to the management server may be more than one. In addition, the management server and the service provider server may be separate servers. Further, different modules in one server may function as the management server and the service provider server, respectively.
Embodiment(s) of the present invention can also be realized by a computer of a system or apparatus that reads out and executes computer executable instructions (e.g., one or more programs) recorded on a storage medium (which may also be referred to more fully as a ‘non-transitory computer-readable storage medium’) to perform the functions of one or more of the above-described embodiment(s) and/or that includes one or more circuits (e.g., application specific integrated circuit (ASIC)) for performing the functions of one or more of the above-described embodiment(s), and by a method performed by the computer of the system or apparatus by, for example, reading out and executing the computer executable instructions from the storage medium to perform the functions of one or more of the above-described embodiment(s) and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiment(s). The computer may comprise one or more processors (e.g., central processing unit (CPU), micro processing unit (MPU)) and may include a network of separate computers or separate processors to read out and execute the computer executable instructions. The computer executable instructions may be provided to the computer, for example, from a network or the storage medium. The storage medium may include, for example, one or more of a hard disk, a random-access memory (RAM), a read only memory (ROM), a storage of distributed computing systems, an optical disk (such as a compact disc (CD), digital versatile disc (DVD), or Blu-ray Disc (BD)™), a flash memory device, a memory card, and the like.
While the present invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be accorded the broadest interpretation so as to encompass all such modifications and equivalent structures and functions.
This application claims the benefit of Japanese Patent Application No. 2018-163648, filed Aug. 31, 2018, which is hereby incorporated by reference wherein in its entirety.
Number | Date | Country | Kind |
---|---|---|---|
2018-163648 | Aug 2018 | JP | national |
Number | Name | Date | Kind |
---|---|---|---|
20150036191 | Suzuki | Feb 2015 | A1 |
20170063646 | Kawai | Mar 2017 | A1 |
20170249641 | Ohara | Aug 2017 | A1 |
20180275938 | Nagasaki | Sep 2018 | A1 |
Number | Date | Country |
---|---|---|
2017-156848 | Sep 2017 | JP |
Number | Date | Country | |
---|---|---|---|
20200073608 A1 | Mar 2020 | US |