The present invention relates to a printing system and a method of controlling the system.
Conventionally, in a process of trading various products, handling various articles, and the like, for example, identification codes for facilitating management, storage, and the like are added to documents, labels, cards, and the like (e.g., order forms for products and articles, delivery statements, bills, product labels, in-stock product labels, tags, medical records, and prescription). These identification codes include one-dimensional codes (e.g., barcodes), two-dimensional codes, and the like, and by the reading of such codes, handling, management, storage, and the like of documents, products, articles, and the like can be facilitated. Further, by displaying reservation confirmation data or order details in an encoded manner in systems for making reservations for concerts and the like by mobile phone or for ordering food, confirmation of reservation can be simplified.
Further, even for multifunction peripherals located in an office environment, homes, and public places, there is a technique in which information that contains a storage destination of print data is encoded and, by a multifunction peripheral reading the code, that print data is obtained and printed by the multifunctional peripheral. Japanese Patent Laid-Open No. 2020-1253 describes a technique in which a multifunction peripheral reads print information through a two-dimensional code presented by a smartphone, obtains print data from a storage destination contained in the print information, and prints the print data.
A mechanism in which a code for a print instruction is displayed on a client terminal and an image forming apparatus reads the code and performs printing has an advantage in that printing can be more easily performed compared to a mechanism in which a client terminal instructs an image forming apparatus to perform printing. However, with the mechanism in which a displayed code is read and printing is performed, there is a risk that a third party can perform printing by copying (imaging or duplicating) the displayed code and causing the copy to be read. When printing is thus instructed by a code for a print instruction being read, there is a problem that, if the code is copied and used, printing will be performed by an unexpected third party.
Embodiments of the present disclosure eliminate the above-mentioned issues with conventional technology.
A feature of embodiments of the present disclosure is to provide a technique that can address, for example, copying of a code by a third party, when displaying a code for print instruction on an information processing apparatus and, by causing an image forming apparatus to read the code, instructing the image forming apparatus to perform printing.
According to embodiments of the present disclosure, there is provided a printing system comprising an information processing apparatus, an image forming apparatus, and a server that provides a print service, the information processing apparatus comprising: one or more first controllers including one or more first processors and one or more first memories, the one or more first controllers configured to: make a request to the server for information for obtaining print data to be printed; based on the information, which is obtained from the server in response to the request, display a screen that includes a print code; make a request to the server for a verification identification number of the print data to be printed; and display on a display unit the verification identification number obtained from the server, the image forming apparatus comprising: one or more second controllers including one or more second processors and one or more second memories, the one or more second controllers configured to: read the print code displayed on the information processing apparatus; based on the read print code, display a screen for inputting the verification identification number displayed on the display unit; transmit information included in the print code and the verification identification number inputted via the screen to the server; and in a case where the server successfully verifies the verification identification number, obtain the print data to be printed from the server and print the print data to be printed, and the server comprising: one or more third controllers including one or more third processors and one or more third memories, the one or more third controllers configured to: in response to the request for the information for obtaining the print data, transmit the information for obtaining the print data to be printed to the information processing apparatus; in response to the request from the information processing apparatus, generate the verification identification number of the print data to be printed and return the verification identification number of the print data to be printed to the information processing apparatus; verify the verification identification number transmitted from the image forming apparatus; and upon successfully verifying the verification identification number, in response to a request from the image forming apparatus, perform control so as to transmit the print data to be printed to the image forming apparatus.
According to embodiments of the present disclosure, there is provided a method of controlling a printing system comprising an information processing apparatus, an image forming apparatus, and a server that provides a print service, making, for the information processing apparatus, a request to the server for information for obtaining print data to be printed; displaying, for the information processing apparatus, a screen that includes a print code based on the information, which is obtained from the server in response to the request; making, for the information processing apparatus, a request to the server for a verification identification number of the print data to be printed; displaying, for the information processing apparatus, on a display unit the verification identification number obtained from the server; reading, for the image forming apparatus, the print code displayed on the information processing apparatus; displaying, for the image forming apparatus, a screen for inputting the verification identification number displayed on the display unit based on the read print code; transmitting, for the image forming apparatus, information included in the print code and the verification identification number inputted via the screen to the server; obtaining, for the image forming apparatus, the print data to be printed from the server and printing the print data to be printed in a case where the server successfully verifies the verification identification number; transmitting, for the server, the information for obtaining the print data to be printed to the information processing apparatus in response to the request for the information for obtaining the print data; in response to the request from the information processing apparatus, generating, for the server, the verification identification number of the print data to be printed and return the verification identification number of the print data to be printed to the information processing apparatus; verifying, for the server, the verification identification number transmitted from the image forming apparatus; and upon successfully verifying the verification identification number, in response to a request from the image forming apparatus, performing, for the server, control so as to transmit the print data to be printed to the image forming apparatus.
Further features of the present disclosure will become apparent from the following description of exemplary embodiments with reference to the attached drawings.
The accompanying drawings, which are incorporated in and constitute a part of the specification, illustrate embodiments of the disclosure and, together with the description, serve to explain the principles of the disclosure.
Embodiments of the present disclosure will be described hereinafter in detail, with reference to the accompanying drawings. It is to be understood that the following embodiments are not intended to limit the claims of the present disclosure, and that not all of the combinations of the aspects that are described according to the following embodiments are necessarily required with respect to the means to solve the issues according to the present disclosure. Further, in the accompanying drawings, the same or similar configurations are assigned the same reference numerals, and redundant descriptions are omitted.
Networks 100 and 101 each are a so-called communication network realized by, for example, a LAN or WAN (e.g., the Internet), a telephone line, a dedicated digital line, an ATM or frame relay line, a cable TV line, a wireless line for data broadcasting, or the like. In the first embodiment, the Internet 100 and the local network 101 are assumed and need only be able to transmit and receive data.
An image forming apparatus 102 and a client terminal 103 can access a print service 104 by accessing the Internet 100 via the local network 101. The image forming apparatus 102 and the client terminal 103 can also access the print service 104, which is a cloud service, by directly accessing the Internet 100. The print service 104 provides a service that holds a file uploaded from the client terminal 103 or the like, generates the print data of the file upon request, and transmits the print data to the image forming apparatus 102 to be printed.
The client terminal 103 is an information processing apparatus, such as a personal computer (PC) or mobile terminal for utilizing the service described above. The client terminal 103 is a computer device that is used by a user and transmits an instruction for generating print data to the print service 104 and generates and displays a code containing print request information. Here, the code is, for example, a one-dimensional code, such as a barcode, or a two-dimensional code, such as a two-dimensional barcode. Two-dimensional codes include matrix-type and stack-type codes. In the first embodiment, a code that contains print request information will be referred to as a print code.
The image forming apparatus 102 includes a copy function, a scanner function, a fax transmission function, and the like in addition to a print function. It also includes a reader that reads a print code containing print request information generated by the client terminal 103.
The print service 104 converts document data or the like into print data that can be printed by the image forming apparatus 102 according to an instruction from the client terminal 103 and provides the print data to the image forming apparatus 102. Here, the print service 104 is made available on the Internet as a cloud service that is redundant across a plurality of servers. Further, the functions of the print service 104 may be realized by a single server or a single virtual server or may be realized by a plurality of servers or a plurality of virtual servers. Alternatively, a plurality of virtual servers may be realized by being executed on a single server.
A CPU 201 controls the entire apparatus and comprehensively controls access to various devices connected to the system bus 200. The control is based on a control program and the like stored in a ROM 202, a control program and resource data (resource information) stored in an external memory 206 connected via a disk controller (DKC) 205, or the like. A RAM 203 functions as a main memory, a work area, and the like of the CPU 201, and a memory capacity can be expanded using an optional RAM connected to an expansion port (not illustrated). A storage device 210 is an external storage device that functions as a large-capacity memory and stores a program and the like that causes the CPU 201 to function as respective functional units illustrated in
An operation panel (operation unit) 209 displays a screen and accepts an operation instruction of a user via the screen. Further, a button and a display unit for performing operations (e.g., setting of operation mode and the like of the image forming apparatus 102, display of an operation status of the image forming apparatus 102, and designation of duplication) are also arranged. The operation panel 209 also performs, for example, display of a button for inputting a verification identification number for verifying a user that made a print request, which will be described later, and that inputted information and display of a code that contains a print request. Here, the verification identification number for verifying a user that made a print request is a number, such as a password or a personal identification number (PIN). The verification identification number is a secret numerical password shared between the system and the user and is used for user authentication in the system.
A network I/F 204 includes a network interface card (NIC), and data is exchanged with an external apparatus via the interface 204. A print engine 208 utilizes known printing techniques, and preferred embodiments include, for example, an electrophotographic method, an inkjet method, a sublimation-type (thermal transfer) method, and the like. A raster controller 207 converts image data into print data, which is in Page Description Language (PDL) or Portable Document Format (PDF). A device interface (I/F) 211 is a connection interface with an external device that can be connected via a USB or the like. A reader 212 is used for reading a document or for scanning, for example, a print code that contains print request information.
A CPU 220 functions as a control unit of the information processing apparatus and executes respective programs, which are a print application 310 (
The print service 104 receives a request for generating print data and a request for generating a verification identification number from the print application 310 (
The print data generation module 303 registers the identification ID included in the received request information in print data management information held in a database 304. Then, the print data generation module 303 obtains data to be printed associated with the identification ID from a storage 305. The data to be printed is uploaded in advance from the print application 310 of the client terminal 103 or a cooperative service (not illustrated) and stored in the storage 305. Examples of cooperative services include point-of-sale information management service (POS services) and the like. The print data generation module 303 generates Page Description Language (PDL) data, which is print data, from the obtained data to be printed. Then, the print data generation module 303 stores the generated print data in the storage 305. Further, the print data generation module 303 generates a temporarily-signed print data obtainment URL for the stored print data and registers it in the print data management information of the database 304. The print data obtainment URL is a temporarily-signed URL with an expiration date. Further, a path hierarchy of the URL includes the identification ID of the print data.
Upon receiving a request for generating a verification identification number from the request receiving module 300, the verification ID generation module 302 generates a verification identification number and registers it in the print data management information of a designated identification ID of the database 304. Further, the verification ID generation module 302 registers an expiration date of the verification identification number in the print data management information. A verification identification number is a number used to confirm that a print code read by being held up to the reader 212 of the image forming apparatus 102 as a print request is valid. An expiration date of a verification identification number is a limitation to a validity of the verification identification number, and a verification identification number whose expiration date has expired will be determined to be invalid.
The print data management information includes an identification ID 1000 for identifying data to be printed, a print data obtainment URL 1001 which is a URL by which to obtain data to be printed, a verification identification number 1002, and an expiration date 1003 of the verification identification number.
The print service 104 returns the print data obtainment URL and the verification identification number to the print application 310 as a response to the print data generation request received from the print application 310 of the client terminal 103.
Regarding a print execution instruction assumed in the first embodiment, a print code generated by the print application 310, which will be described later, is read by the reader 212 of the image forming apparatus 102 upon the user holding the print code up to the reader 212 of the image forming apparatus 102. The image forming apparatus 102 decodes the read print code. The print code contains an identification ID and a print data obtainment URL, and the image forming apparatus 102 obtains print data from the print data obtainment URL obtained by decoding the print code and prints the print data.
Upon receiving from a print client 332 (
Software modules that realize these functions are stored in the storage device 225 illustrated in
The print application 310 of the client terminal 103 is an application that requests the print service 104 to generate print data, generates and displays a print code, and displays a verification identification number obtained from the print service 104.
At this time, the UI module 311 displays the obtained verification identification number in the verification identification number display portion 421. When the user presses the close button 422, the UI module 311 closes the screen of
Here, in the first embodiment, a screen that includes the print code display portion 411 of
In the first embodiment, the purpose is to prevent the screen that includes the print code display portion 411 illustrated in
An OS 320 is an OS of the image forming apparatus 102, and generally, a real-time OS is used, but recently, a general-purpose OS, such as Linux®, has sometimes been used. Regarding a virtual machine 321, Java® VM, for example, is well known. The virtual machine 321 is a virtual application execution environment that operates as an application controlled by the OS. An application management framework 322 includes a function for managing a lifecycle of an application to be managed that operates on the application execution environment provided by the virtual machine 321. It also includes a function for publishing an interface for controlling the lifecycle of an application and an interface for mediating processing requests between respective applications. Assume that a lifecycle indicates a status of an application, including installation, start, stop, and uninstallation of the application.
Description will be given assuming that the application management framework 322 is Open Services Gateway initiative (OSGi)® set forth by OSGi Alliance. The print client 332 is an application that operates in the application execution environment provided by the virtual machine 321. These applications are identified using ApplicationIDs, and lifecycles are managed by the application management framework 322. Here, applications that operate in the application management framework 322 may be held in the image forming apparatus 102 by default or may also be installed later via the application management framework 322.
A controller 330 is a control program that performs functional processing, such as printing, copying, and faxing, of the image forming apparatus 102 and manages a status of the image forming apparatus 102. When the print code display portion 411 (
Upon receiving print data transmitted from a print control module 337 of the print client 332, a job execution module 331 of the controller 330 executes print processing.
The print client 332 is a client application of the print service 104. Upon receiving a print code from the controller 330, the print code reception module 336 of the print client 332 decodes the print code and then transmits an identification ID included in the print code and issues a verification identification number input instruction to a verification ID reception module 335.
Upon receiving the instruction, the verification ID reception module 335 displays a verification identification number input screen on the operation panel (operation unit) 209. When the user inputs a verification identification number from the input screen, the verification ID reception module 335 transmits the inputted verification identification number and the identification ID to the print service 104 via an inquiry module 333.
With this, the verification ID generation module 302 of the print service 104 obtains, from the print data management information stored in the database 304, a verification identification number and an expiration date of the verification identification number, using the identification ID received from the print client 332 of the image forming apparatus 102 as a key. Further, the verification ID generation module 302 determines, from the expiration date of the verification identification number obtained from the print data management information, whether the verification identification number received from the print client 332 is before the expiration date. If it is before the expiration date, it is verified whether the verification identification number received from the print client 332 coincides with the verification identification number obtained from the print data management information. If they coincide, a response to that effect is returned to the inquiry module 333 of the print client 332.
Further, upon determining that the verification identification number is not before the expiration date, the verification ID generation module 302 clears the verification identification number and the expiration date of the verification identification number in the print data management information. Then, a response that the verification identification numbers do not coincide is returned to the inquiry module 333 of the print client 332. With this, the inquiry module 333 notifies the print control module 337 of a result of verification of the verification identification number in the print service 104. Then, upon receiving a notification that there is no problem with the verification of the verification identification number (OK), the print control module 337 obtains print data from the print data URL via a print data obtaining module 334. Then, the obtained print data is transmitted to the job execution module 331 of the controller 330. The job execution module 331 thus executes processing for printing print data.
The user presses the print button 402 in a state in which data to be printed is displayed on the client terminal 103 as in
Next, in step S503, the print application 310 generates a print code that contains the print data obtainment URL received from the print service 104 and the identification ID for identifying the data to be printed. In step S504, the UI module 311 of the print application 310 displays the generated print code on the print code display portion 411 as in
Next, the user presses the verification identification number button 412 displayed in
Next, the user causes the reader 212 of the image forming apparatus 102 to read the print code displayed on the print code display portion 411. With this, in step S508, the print client 332 of the image forming apparatus 102 decodes the print code. Then, upon successfully decoding the print code, in step S509 the print client 332 displays a screen (not illustrated) for inputting a verification identification number on the operation panel 209. Then, the user inputs, from the operation panel 209, the verification identification number displayed on the verification identification number display portion 421. With this, in step S510, the print client 332 transmits the identification ID of the data to be printed obtained by decoding the print code and the inputted verification identification number to the print service 104 and requests for verification of the verification identification number.
In step S511, the print service 104 verifies a validity of the verification identification number based on the identification ID of the data to be printed received in step S510 and returns a verification result to the print client 332. Then, when the result of the verification is that the verification identification number is valid, in step S512 the print client 332 accesses the print service 104 using the temporarily signed print data obtainment URL obtained from the print code and obtains the print data to be printed. Then, in step S513, when the print client 332 passes the print data to the job execution module 331 of the controller 330, the job execution module 331 executes processing for printing the received print data. Then, in step S514, upon receiving a print completion notification from the controller 330, the print client 332 transmits a print completion notification indicating that printing has been completed to the print service 104.
First, in step S601, the CPU 220 of the server of the print service 104 receives an identification ID and a verification identification number of print data to be printed from the print client 332 of the image forming apparatus 102. Then, the processing proceeds to step S602, and the CPU 220 obtains a verification identification number that coincides with the received identification ID and an expiration date of the verification identification number from the print data management information of the database 304. Here, if an identification ID that coincides with the received identification ID, a corresponding verification identification number, and an expiration date of that verification identification number have been obtained from the print data management information, the processing proceeds to step S603, and otherwise, the processing proceeds to step S604. In step S604, the CPU 220 terminates the processing as a verification error.
In step S603, the CPU 220 determines whether it is before an expiration date of the verification identification number transmitted from the print client 332. Here, if it is determined to be before the expiration date, the processing proceeds to step S605, and if it is determined to be not before the expiration date, the processing proceeds to step S604, and the processing is terminated as a verification error.
In step S605, the CPU 220 determines whether the verification identification number received from the print client 332 coincides with the verification identification number corresponding to the identification ID obtained in step S602 from the print data management information of the database 304. Here, if it is determined that they coincide, the processing proceeds to step S606, and the CPU 220 returns a response that verification is OK to the print client 332 and terminates the processing. Further, in step S605, if the verification identification numbers do not coincide, the processing proceeds to step S604, and the CPU 220 returns a response that verification is NG to the print client 332 and terminates the processing.
As described above, according to the first embodiment, the client terminal, which instructed printing, obtains a print data obtainment URL, which is for obtaining data to be printed, from the cloud service and generates and displays a print code that includes the URL. Further, the client terminal obtains a verification identification number that corresponds to the print code from the cloud service and displays it. The user of the client terminal causes the image forming apparatus to read the displayed print code and inputs the displayed verification identification number to the image forming apparatus. With this, the image forming apparatus transmits the inputted verification identification number to the cloud service and causes the cloud service to perform verification and, upon successful verification, obtains print data from the print data obtainment URL included in the print code and prints the print data. This makes it possible to avoid a security risk in which a print code is copied (captured in a photo or duplicated) and a third party can perform printing by causing the image forming apparatus read that copy.
When repeatedly instructing printing by the same client terminal 103, it is cumbersome and usability is poor for the user to input a verification identification number each time that they hold the displayed print code up to the image forming apparatus. Therefore, when repeatedly instructing printing from the same client terminal 103 within a predetermined period, it is possible to skip verification of a verification identification number and perform printing within a specific period or up to a specific number of times of printing. By doing so, it is possible to eliminate the hassle for the user of, for example, holding a displayed print code up to the image forming apparatus and input a verification identification number each time that they instruct printing. An example in which usability is thus improved will be described as a second embodiment. A configuration of the system, configurations of apparatuses, and the like according to the second embodiment are similar to those of the first embodiment described above, and so, description thereof will be omitted.
In the second embodiment, description will be given using an example in which, when repeatedly instructing printing from the same client terminal 103 within a predetermined period, processing for skipping verification of a verification identification number within a specific period and up to a specific number of times is executed in the image forming apparatus 102. However, the processing may be performed in the print service 104. In the second embodiment, assume that a print code generated by the print application 310 of the client terminal 103 includes an identification ID of data to be printed, a print data obtainment URL, and a client identification ID for identifying the client terminal 103.
In step S701, the CPU 201 reads a print code held up to the reader 212. Then, the CPU 201 decodes the read print code and obtains a client identification ID, an identification ID of data to be printed, and a print data obtainment URL included in the print code. Then, the processing proceeds to step S702, and the CPU 201 obtains client management information held in the RAM 203.
A client identification ID 1010 is an identification ID (identification information) for uniquely identifying the client terminal 103. A verification-complete expiration date 1011 is a date and time obtained by adding a specific period to a date and time on which verification was last completed. A number of print instructions 1012 indicates how many times a print instruction has been made since verification was last completed. A limited number of print instructions 1013 indicates the number of print instructions (specific number of times described above) that verification of a verification identification number can be skipped after verification was first completed. Here, if a verification identification number corresponding to a print code generated by the print application 310 of the client terminal 103 is before a verification-complete expiration date and the number of print instructions made using the print code does not exceed the limited number of print instructions, verification of the verification identification number is skipped.
Next, the processing proceeds to step S703, and the CPU 201 confirms whether the client identification ID obtained from the print code is present in the client management information. If the obtained client identification ID is not present in the client management information, the processing proceeds to step S704, and the CPU 201 registers the client identification ID in the client management information and the processing proceeds to verification identification number input screen display processing of step S707.
Meanwhile, in step S703, if the CPU 201 determines that the client identification ID is present in the client management information, the processing proceeds to step S705, and the CPU 201 determines whether a verification expiration date has passed based on the current date and time and the verification-complete expiration date 1011. If it is determined that the expiration date has passed, the processing proceeds to the verification identification number input screen display processing of step S707. Meanwhile, if it is determined that the expiration date has not passed, the processing proceeds to step S706, and the CPU 201 determines whether the number of print instructions exceeds the limited number of print instructions. If it is determined to be not exceeded here, the processing proceeds to step S714, and the CPU 201 skips verification of the verification identification number and the processing proceeds to print processing of step S712 (
Meanwhile, in step S706, if it is determined that the number of print instructions exceeds the limited number of print instructions, the processing proceeds to the verification identification number input screen display processing of step S707. The processing from step S707 is substantially the same as in the first embodiment (S512 to S513) described above except for steps S710 and S713. In step S707, the CPU 201 displays an input screen (not illustrated) for inputting a verification identification number. When the user inputs a verification identification number via the input screen, the processing proceeds to step S708 (
In step S712, the CPU 201 obtains print data of the data to be printed, from the print service 104 and transmits the print data to the job execution module 331 and executes print processing as described in steps S512 and S513 of
When the print code and the validity of the verification identification number are confirmed (step S710), the image forming apparatus 102 updates the verification-complete expiration date corresponding to the client identification ID. Then, when printing is completed, the number of print instructions corresponding to the client identification ID is updated (step S713).
As described above, according to the second embodiment, when printing of the same print data is repeatedly instructed by the same client terminal 103 within a specific period, if a period in which verification for a verification identification number is complete is within a specific period and the number of times of printing is within a specific number of times, verification of the verification identification number can be skipped. This eliminates the need for the user to input a verification identification number each time printing is repeated and thereby makes it possible for the user to efficiently perform printing without the hassle.?
Next, a third embodiment of the present invention will be described. In the third embodiment, when printing of the same print target is repeatedly instructed from the same client terminal 103 within a predetermined period, it is possible to skip verification of a verification identification number within a specific period and up to a specific number of times and perform printing, as in the second embodiment. A difference from the second embodiment is that, in the second embodiment, the image forming apparatus 102 determines whether it is within a specific period and a specific number of times but, in the third embodiment, the print service 104 performs the determination. A configuration of the system, configurations of apparatuses, and the like according to the third embodiment are similar to those of the first embodiment described above, and so, description thereof will be omitted.
First, in step S801, the CPU 201 reads a print code displayed on the client terminal 103 held up to the reader 212. The print code is decoded, and an identification ID of print data to be printed and a client identification ID included in the print code are obtained. Next, the processing proceeds to step S802, and the CPU 201 makes an inquiry for a last verification status of a verification identification number of the client, together with the identification IDs. Then, the processing proceeds to step S803, and the CPU 201 determines whether a verification status result from the print service 104 is skip verification and, if a status is skip verification, the processing proceeds to print processing of step S807.
Meanwhile, in step S803, if the verification status result from the print service 104 is not skip verification, the processing proceeds to step S804. In step S804, the CPU 201 displays an input screen (not illustrated) for inputting a verification identification number, as in step S707 of
First, in step S901, the CPU 220 receives communication from the print client 332 of the image forming apparatus 102. Then, the processing proceeds to step S902, and the CPU 220 determines whether received content is the verification status inquiry transmitted in step S802 of
In step S904, the CPU 220 determines whether an expiration date of a verification identification number has passed based on the current date and time and a verification-complete expiration date. If it is determined that the verification-complete expiration date has not passed, the processing proceeds to step S905, and the CPU 220 determines whether the number of print instructions of data to be printed exceeds the limited number of print instructions. If it is determined to be not exceeded here, the processing proceeds to step S906, and the CPU 220 determines to skip verification of the verification identification number and the processing proceeds to step S908.
Meanwhile, if it is determined in step S904 that the verification-complete expiration date has passed or if it is determined in step S905 that the number of print instructions exceeds the limited number of print instructions, the processing proceeds to step S907, it is determined that verification of the verification identification number is necessary, and the processing proceeds to step S908. In step S908, the CPU 220 returns to the print client 332 a response as to whether it is necessary to verify the verification identification number, based on a result of the determination of step S906 or step S907, and terminates the processing. This response is received by the image forming apparatus 102 in step S803 of
Meanwhile, in step S902, if it is determined that it is not a verification status inquiry, the processing proceeds to step S909 (
Further, in step S909, if the CPU 220 determines that it is not a request for verification of a verification identification number, the processing proceeds to step S913, and the CPU 220 determines whether the content received from the print client 332 is a print completion notification. If so, the processing proceeds to step S914, and the CPU 220 increments (+1) the number of print instructions of the print data management information, and terminates the processing. Further, in step S913, if the content received from the print client 332 is not a print completion notification, the CPU 220 terminates the processing.
As described above, according to the third embodiment, when repeatedly printing the same data to be printed, if a verification-complete period of a verification identification number is within a specific period and a specific number of print instructions has not been exceeded, input of the verification identification number by the user is skipped. This eliminates the need for the user to input a verification identification number each time the same data to be printed is repeatedly printed and thereby makes it possible for the user to efficiently perform printing without the hassle.
Embodiments of the present disclosure 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 embodiments 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 embodiments, 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 embodiments and/or controlling the one or more circuits to perform the functions of one or more of the above-described embodiments. 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 disclosure includes exemplary embodiments, it is to be understood that the disclosure 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. 2023-108520, filed Jun. 30, 2023, which is hereby incorporated by reference herein in their entirety.
Number | Date | Country | Kind |
---|---|---|---|
2023-108520 | Jun 2023 | JP | national |