Image forming apparatus and computer program for the image forming apparatus
By implementing a dual transmission unit system with varying intervals, the image forming apparatus efficiently responds to job stop commands, ensuring rapid termination of image formation.
Patent Information
- Application Number
- JP2021208599
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-12-22
- Publication Date
- 2026-01-27
- Estimated Expiration
- 2041-12-22
AI Technical Summary
Existing image forming technologies do not account for the server stopping a print job, leading to inefficiencies in quickly halting image formation.
The image forming apparatus includes a first transmission unit that sends inquiry requests at a first interval and a second transmission unit that sends requests at a shorter second interval when a job stop instruction is received, allowing for quicker response to job stop commands from the server.
This configuration enables the image forming apparatus to rapidly receive job stop responses, facilitating swift termination of image formation.
Smart Images

Figure 0007806482000001 
Figure 0007806482000002 
Figure 0007806482000003
Abstract
Description
[Technical Field]
[0001] This specification discloses a technique related to an image forming apparatus that executes image formation in response to receiving a job execution response from a server. [Background technology]
[0002] Patent Document 1 discloses a system including an image forming device, a cloud print server, and a client terminal. The image forming device repeatedly sends an event confirmation request to the cloud print server. When the cloud print server receives a print job transmission command from the client terminal, it sends an event confirmation response indicating the existence of a print job to the image forming device in response to the event confirmation request received from the image forming device. This causes the image forming device to execute the print job. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Publication No. 2020-192730 Summary of the Invention [Problem to be solved by the invention]
[0004] The above-described technology does not take into consideration the fact that the cloud print server receives a command to stop the execution of a print job from a client terminal. This specification provides a technology that enables an image forming apparatus to quickly stop image formation.
[0005] The image forming apparatus disclosed in this specification may include an image forming engine, a first transmission unit that repeatedly transmits an inquiry request to a server at a first interval, wherein the server, when receiving a job execution instruction from a terminal device, transmits a job execution response to the image forming apparatus indicating that a job should be executed in response to the inquiry request received from the image forming apparatus, the first transmission unit; an image forming control unit that, when the job execution response is received from the server, controls the image forming engine to start image formation; and a second transmission unit that, when the job execution response is received from the server, repeatedly transmits the inquiry request to the server at a second interval shorter than the first interval, wherein, when the server receives a job stop instruction from the terminal device, the server transmits a job stop response to the image forming apparatus indicating that the job should be stopped in response to the inquiry request received from the image forming apparatus, the second transmission unit may be configured to stop the image formation when the job stop response is received from the server.
[0006] According to the above configuration, when the image forming apparatus receives a job execution response from the server, the image forming apparatus repeatedly transmits an inquiry request to the server at a second interval that is shorter than the first interval. Therefore, the image forming apparatus can receive a job stop response from the server more quickly than in a configuration in which the image forming apparatus repeatedly transmits an inquiry request to the server at the first interval after image formation has started. This allows the image forming apparatus to quickly stop image formation.
[0007] A computer program for implementing the image forming apparatus, a computer-readable recording medium storing the computer program, and a method executed by the image forming apparatus are also novel and useful. Also novel and useful is a system including the image forming apparatus and other devices (e.g., a server, a terminal device, etc.). [Brief explanation of the drawings]
[0008] [Figure 1] 1 shows the configuration of a communication system. [Figure 2]A sequence diagram of the registration process is shown. [Figure 3] 1 shows a sequence diagram of a printing process. [Figure 4] The sequence diagrams show a case A in which a cancel instruction is sent to the print intermediary server and a case B in which a cancel operation is executed by the printer. [Figure 5] Sequence diagrams are shown for case C, in which printing is completed, and case D, in which an error occurs. DETAILED DESCRIPTION OF THE INVENTION
[0009] (Configuration of communication system 2; Figure 1) As shown in FIG. 1, the communication system 2 includes a printer 10, a terminal device 50, and a print intermediary server 100. The printer 10 and the terminal device 50 belong to a LAN (abbreviation for Local Area Network) 4. The LAN 4 may be a wired LAN or a wireless LAN. The print intermediary server 100 is connected to the Internet 6. The printer 10 and the terminal device 50 can communicate with the print intermediary server 100 via the LAN 4 and the Internet 6. In a modified example, the printer 10 and the terminal device 50 do not need to belong to the same LAN 4. For example, the printer 10 may belong to the LAN 4 (i.e., be able to communicate with the print intermediary server 100 via the LAN 4), and the terminal device 50 may be able to communicate with the print intermediary server 100 using cellular communication such as 4G or 5G.
[0010] (Printer 10 configuration) The printer 10 is a peripheral device (for example, a peripheral device of a terminal device 50) that can execute a printing function. The printer 10 includes an operation unit 12, a display unit 14, a communication interface 16, a print engine 18, and a control unit 30. The units 12 to 30 are connected to a bus line (reference numerals omitted).
[0011] The operation unit 12 has a plurality of buttons. The display unit 14 is a display for displaying various information. The display unit 14 also functions as a so-called touch panel (i.e., an operation unit operated by a user). The communication interface 16 is connected to the LAN 4. The print engine 18 is a printing mechanism such as an inkjet type or a laser type.
[0012] The control unit 30 includes a CPU 32 and a memory 34. The CPU 32 executes various processes in accordance with a program 36 stored in the memory 34. The memory 34 is configured by a volatile memory, a non-volatile memory, or the like.
[0013] (Configuration of the print intermediary server 100) The print intermediary server 100 is a server that provides a so-called cloud printing service. In this embodiment, the print intermediary server 100 is not a server installed by the vendor of the printer 10, but a server installed by a business that provides the cloud printing service. In a modified example, the print intermediary server 100 may be a server installed by the vendor of the printer 10. An example of a cloud printing service is the Google (registered trademark) Cloud Print service. The print intermediary server 100 converts image data received from, for example, the terminal device 50 to generate print data, and transmits the print data to the printer 10. Hereinafter, the print intermediary server 100 will be simply referred to as the "server 100."
[0014] (Registration process: Figure 2) Referring to FIG. 2, a process for registering information about the printer 10 with the server 100 so that the printer 10 can receive a cloud printing service from the server 100 will be described.
[0015] In the following, when describing the processing executed by the CPU 32 of the printer 10 in accordance with the program 36, the description will be focused on the printer 10 rather than the CPU 32. Furthermore, all of the following communications executed by the printer 10 are executed via the communication interface 16. Therefore, in the following, when describing the processing related to communication, the phrase "via the communication interface 16" will be omitted.
[0016] In response to receiving an operation (not shown) from the user, the terminal device 50 accesses, for example, a web server in the printer 10. Then, in response to receiving a further operation from the user for the printer 10 to receive the cloud printing service, the terminal device 50 transmits a registration instruction to the printer 10 at T10.
[0017] When the printer 10 receives a registration instruction from the terminal device 50 at T10, the printer 10 transmits a registration request including a printer ID, which is information for identifying the printer 10, to the server 100 at T12.
[0018] When the server 100 receives a registration request from the printer 10 in T12, it generates a PIN code in T14 and stores the printer ID included in the registration request in association with the generated PIN code. Next, in T20, the server 100 transmits the PIN code and a login URL (short for Uniform Resource Locator) to the printer 10. The login URL is information indicating the location of authentication screen data (described below) within the server 100.
[0019] When the printer 10 receives the PIN code and the URL from the server 100 in T20, it transmits them to the terminal device 50 in T22.
[0020] When the terminal device 50 receives the PIN code and the URL from the printer 10 in T22, it displays them in T30. Next, when the terminal device 50 accepts an operation to select a URL from the user in T32, it transmits an authentication request including the URL to the server 100 in T40.
[0021] When the server 100 receives an authentication request from the terminal device 50 in T40, the server 100 transmits, in T42, authentication screen data identified by the URL included in the authentication request to the terminal device 50. The authentication screen data is data representing an authentication screen for inputting a PIN code.
[0022] When the terminal device 50 receives the authentication screen data from the server 100 in T42, it displays the authentication screen represented by the authentication screen data in T44. Next, in T46, the terminal device 50 accepts input of the PIN code displayed in T30 from the user. In this case, the terminal device 50 transmits the input PIN code to the server 100 in T50.
[0023] When the server 100 receives a PIN code from the terminal device 50 in T50, it authenticates the received PIN code in T52. Specifically, the server 100 determines whether the received PIN code has been stored. If the server 100 determines that the received PIN code has been stored, that is, if authentication is successful, it generates an access token (hereinafter referred to as AT (short for Access Token)), which is a unique character string, in T54. Next, in T56, the server 100 identifies the printer ID (see T14) associated with the received PIN code and stores the identified printer ID in association with the generated AT. Then, in T60, the server 100 transmits an authentication notification including the generated AT to the printer 10.
[0024] When the printer 10 receives an authentication notification from the server 100 in T60, the printer 10 stores the AT included in the authentication notification in the memory 34 in T62. Next, the printer 10 sends Create-Printer-Subscrip- tions (hereinafter referred to as "CPS") to the server 100. The CPS is a command for registering a new event as a Subscrip- tion in the server 100. The CPS includes the printer ID, the AT stored in T62, job-Fetchable, and job-state-changed. job-Fetchable is a command for causing the server 100 to monitor for receipt of a print instruction and notify the printer 10 that the print instruction has been received. job-state-changed is a command for causing the server 100 to monitor for changes in the status of the print job and notify the printer 10 that a change in the status of the print job has occurred.
[0025] When the server 100 receives the CPS from the printer 10 in T70, it authenticates the AT included in the CPS. If the authentication is successful, the server 100 stores job-Fetchable and job-state-changed in association with the printer ID included in the CPS in T72. As a result, in response to receiving a print instruction including the printer ID of the printer 10, the server 100 notifies the printer 10 of that fact, and in response to receiving a job change instruction (e.g., a cancel instruction) including the printer ID of the printer 10, the server 100 notifies the printer 10 of that fact. This completes the registration process.
[0026] (Printing process: Figure 3) Next, the printing process executed by the printer 10 will be described with reference to Fig. 3. The process in Fig. 3 is a continuation of the process in Fig. 2.
[0027] In this embodiment, once the processing of FIG. 2 is completed, the printer 10 operates in Polling Mode (hereinafter referred to as "PM"). PM is a mode for repeatedly sending polling signals to the server 100 and receiving print data from the server 100. In T100, the printer 10 sends a Get-Notification (Polling Mode) Request (hereinafter referred to as "GN(PM)Req") to the server 100. The GN(PM)Req corresponds to the above-mentioned polling signal. Although not shown in the figure, the GN(PM)Req includes the printer ID of the printer 10. The same applies to the following GN(PM)Reqs.
[0028] When the server 100 receives a GN(PM)Req from the printer 10 at T100, it determines whether or not there is a print job to be executed by the printer 10 identified by the printer ID included in the GN(PM)Req. If the server 100 has already received a print instruction from the terminal device 50 to cause the printer 10 to execute printing, it determines that there is a print job to be executed by the printer 10, and sends a Get-Notification(Polling Mode)Response (hereinafter referred to as "GN(PM)Res") including a JobID to the printer 10. If the server 100 has not already received the above print instruction from the terminal device 50, it determines that there is no print job to be executed by the printer 10, and sends a GN(PM)Res without a JobID to the printer 10. Both the GN(PM)Res including a JobID and the GN(PM)Res without a JobID include interval information indicating the interval of 30s (s stands for seconds) until the next GN(PM)Req is sent. In a modified example, the interval information may indicate an interval greater than or less than 30 seconds. Since the server 100 has not yet received a print instruction at time T100, at time T102 the server 100 transmits a GN(PM)Res that does not include a JobID to the printer 10.
[0029] When the printer 10 receives a GN(PM)Res from the server 100 at T102, the printer 10 waits for 30 seconds indicated by the interval information included in the GN(PM)Res. After 30 seconds have passed, the printer 10 sends a GN(PM)Req to the server 100 at T104, and receives a GN(PM)Res that does not include a JobID from the server 100 at T106. In this way, the printer 10 repeatedly sends a GN(PM)Req to the server 100 each time 30 seconds have passed since the printer 10 received a GN(PM)Res that does not include a JobID from the server 100. For this reason, the printer 10 can repeatedly send a GN(PM)Req to the server 100 at intervals according to instructions from the server 100.
[0030] Although not shown in the figure, the terminal device 50 accepts a print operation from the user to cause the printer 10 to execute printing. The print operation includes an operation to specify the printer ID of the printer 10 and an operation to specify image data representing the image to be printed. When the terminal device 50 accepts the print operation from the user, in T110, it transmits a print instruction including the specified printer ID and the specified image data to the server 100.
[0031] When the server 100 receives a print instruction from the terminal device 50 in T110, it generates a JobID, which is an ID that identifies the print job, in T112. The server 100 further converts the image data included in the print instruction to generate print data in a data format that can be interpreted by the printer 10. The server 100 then stores the printer ID included in the print instruction, the generated JobID, the generated print data, and the status "printing" in association with each other.
[0032] Thereafter, in T120, when the server 100 receives a GN(PM)Req from the printer 10, the server 100 stores the JobID etc. in association with the printer ID included in the GN(PM)Req (see T112), and therefore determines that there is a print job to be executed by the printer 10. In this case, in T122, the server 100 sends a GN(PM)Res including the JobID to the printer 10.
[0033] When the printer 10 receives a GN(PM)Res including a JobID from the server 100 in T122, it sends a Fetch-job Request including the JobID to the server 100 in T130, and receives a Fetch-job Response from the server 100 in T132. The Fetch-job Response includes job information indicating printing conditions (e.g., paper size, number of colors, number of copies, etc.).
[0034] Next, in T140, the printer 10 sends a Fetch-Document Request to the server 100, and in T142 receives a Fetch-Document Response from the server 100. The Fetch-Document Response includes the print data generated in T112. In this case, in T150, the printer 10 (i.e., the CPU 32) controls the print engine 18 (specifically, supplies job information and print data to the print engine 18) to start printing in accordance with the job information and print data.
[0035] The GN(PM)Res at T122 includes interval information indicating 30 seconds. However, after 5 seconds, which is shorter than 30 seconds, have elapsed, the printer 10 sends a GN(PM)Req to the server 100 at T160, and receives a GN(PM)Res from the server 100 at T162. The GN(PM)Res does not include a job ID and includes interval information indicating 30 seconds. However, after 5 seconds, which is shorter than 30 seconds, have elapsed, the printer 10 sends a GN(PM)Req to the server 100 at T164, and receives a GN(PM)Res from the server 100 at T166. In this way, when the printer 10 receives a GN(PM)Res including a JobID from the server 100 (T122), the printer 10 repeatedly sends a GN(PM)Req to the server 100 at intervals of 5 seconds, which is shorter than 30 seconds, even though the interval information included in the GN(PM)Res indicates 30 seconds.
[0036] (Various cases A to D: Figures 4 and 5) Next, with reference to Figures 4 and 5, various cases A to D that are realized after printing is started in Figure 3 will be described. Case A in Figure 4 is a case where an instruction to cancel printing is sent from the terminal device 50. Case B is a case where an operation to cancel printing is executed on the printer 10. Case C in Figure 5 is a case where printing is completed successfully. Case D is a case where a printing error occurs.
[0037] (Case A: Figure 4) First, a description will be given of Case A in Fig. 4. The printer 10 transmits a GN(PM)Req to the server 100 in T200, and receives a GN(PM)Res from the server 100 in T202.
[0038] Although not shown in the figure, the terminal device 50 accepts a cancel operation to cancel printing from the user. In this case, the terminal device 50 transmits a cancel instruction including the printer ID of the printer 10 to the server 100 in T210.
[0039] When the server 100 receives a cancellation instruction from the terminal device 50 in T210, it identifies the Job ID (see T112 in FIG. 3) associated with the printer ID included in the cancellation instruction in T212, and deletes the print data associated with the identified Job ID. The server 100 then associates the printer ID, the identified Job ID, and the status "cancelled" and stores them.
[0040] Thereafter, when the server 100 receives a GN(PM)Req from the printer 10 in T220, it identifies the JobID and status "Cancelled" (see T212) associated with the printer ID included in the GN(PM)Req, and in T222 sends a GN(PM)Res including the cancellation information to the printer 10.
[0041] When the printer 10 receives a GN(PM)Res containing cancellation information from the server 100 in T222, it executes cancellation processing in T230. The cancellation processing includes providing an instruction to the print engine 18 indicating that printing should be canceled and deleting the received print data. This causes the print engine 18 to stop printing.
[0042] When the printer 10 receives the GN(PM)Res in T222, it changes the interval for repeatedly sending the GN(PM)Req. Specifically, after waiting for 30 seconds indicated by the interval information included in the GN(PM)Res in T222, the printer 10 sends a GN(PM)Req to the server 100 in T240, and then receives a GN(PM)Res that does not include a job ID from the server 100 in T242. In this way, after printing is canceled, the printer 10 can repeatedly send a GN(PM)Req to the server 100 at intervals according to instructions from the server 100.
[0043] According to the above Case A, when the printer 10 receives a GN(PM)Res including a job ID from the server 100 (T122 in FIG. 3), the printer 10 repeatedly sends a GN(PM)Req to the server 100 at intervals of 5 seconds, which is shorter than the 30 seconds indicated by the interval information included in the GN(PM)Res (T160, T164; T200, T220 in FIG. 4). Therefore, compared to a configuration in which the printer 10 repeatedly sends a GN(PM)Req to the server 100 at 30-second intervals after printing has started, the printer 10 can quickly receive a GN(PM)Res including cancellation information from the server 100 (T222). This allows the printer 10 to quickly cancel printing.
[0044] (Case B: Figure 4) Next, a description will be given of Case B. The printer 10 transmits a GN(PM)Req to the server 100 at T250 and T254, and receives a GN(PM)Res from the server 100 at T252 and T256.
[0045] The printer 10 accepts a cancel operation from the user to cancel printing in T260 before 5 seconds have elapsed since receiving the GN(PM)Res in T256. The cancel operation may be performed on a button constituting the operation unit 12, or on a button displayed on the display unit 14, which functions as a so-called touch panel. In this case, the printer 10 executes a cancel process in T262. This cancel process is the same as the cancel process in T230 in Case A.
[0046] Although not shown in the figure, when the printer 10 accepts the cancel operation in T260, it sends information to the server 100 indicating that the cancel operation has been accepted. As a result, the job ID, print data, and status "printing" associated with the printer ID are deleted in the server 100.
[0047] When the printer 10 accepts the cancel operation in T262, it changes the interval for repeatedly sending a GN(PM)Req. Specifically, after waiting for 30 seconds indicated by the interval information included in the GN(PM)Res in T256, the printer 10 sends a GN(PM)Req to the server 100 in T270, and receives a GN(PM)Res that does not include a job ID from the server 100 in T272. In this way, after printing is canceled, the printer 10 can repeatedly send a GN(PM)Req to the server 100 at intervals according to instructions from the server 100.
[0048] (Case C: Figure 5) Next, a description will be given of Case C. The printer 10 transmits a GN(PM)Req to the server 100 at T300 and T304, and receives a GN(PM)Res from the server 100 at T302 and T306.
[0049] The printer 10 completes printing at T310 before 5 seconds have elapsed since receiving the GN(PM)Res of T306, without receiving a GN(PM)Res containing cancellation information from the server 100 (see T222 in Figure 4) or accepting a cancellation operation from the user (see T260 in Figure 4).
[0050] Although not shown in the figure, when printing is completed in T310, the printer 10 sends information indicating that printing has been completed to the server 100. As a result, the job ID, print data, and status "printing" associated with the printer ID are deleted from the server 100.
[0051] When printing is completed in T310, the printer 10 changes the interval for repeatedly sending a GN(PM)Req. Specifically, after waiting for 30 seconds indicated by the interval information included in the GN(PM)Res in T306, the printer 10 sends a GN(PM)Req to the server 100 in T320, and receives a GN(PM)Res that does not include a job ID from the server 100 in T322. In this way, after printing is completed, the printer 10 can repeatedly send a GN(PM)Req to the server 100 at intervals according to instructions from the server 100.
[0052] (Case D: Figure 5) Next, a description will be given of Case D. The printer 10 transmits a GN(PM)Req to the server 100 at T330 and T334, and receives a GN(PM)Res from the server 100 at T332 and T336.
[0053] At T340, a printing error occurs in the print engine 18 before 5 seconds have elapsed since the GN(PM)Res at T336 was received. The printing error may be, for example, a paper jam, running out of paper, or a lack of color materials for printing. In this case, the printer 10 stops sending GN(PM)Req. That is, the printer 10 does not send a GN(PM)Req to the server 100 even after 5 seconds have elapsed since the GN(PM)Res at T336 was received. Furthermore, the printer 10 does not send a GN(PM)Req to the server 100 even after 30 seconds have elapsed since the GN(PM)Res at T336 was received. The printer 10 stops sending GN(PM)Req until the printing error is resolved. This reduces the processing load on the printer 10 and the communication load between the printer 10 and the server 100.
[0054] Thereafter, the user performs an operation to resolve the printing error (for example, refilling printing paper), and the printing error is resolved at T342. In this case, the printer 10 sends a GN(PM)Req to the server 100 at T350 and T354, and receives a GN(PM)Res from the server 100 at T352 and T356. That is, the printer 10 resumes repeatedly sending a GN(PM)Req to the server 100 at 5-second intervals. Therefore, if the server 100 receives a cancel instruction from the terminal device 50, the printer 10 can quickly receive a GN(PM)Res containing cancellation information from the server 100. In this case D, after T356, the same processes as T310 to T322 of case C are executed.
[0055] (Correspondence) The printer 10 and the print engine 18 are examples of an "image forming device" and an "image forming engine," respectively. The GN(PM)Req is an example of an "inquiry request." The GN(PM)Res including a JobID (see T122 in FIG. 3) and the GN(PM)Res not including a JobID (such as T102 in FIG. 3) are examples of a "job execution response" and a "job non-execution response," respectively. The print instruction of T110 in FIG. 3 is an example of a "job execution instruction." The cancel instruction of T210 in FIG. 4 is an example of a "job stop instruction." The GN(PM)Res including cancellation information (T222 in FIG. 4) is an example of a "job stop response." The cancel operation of T260 in FIG. 4 is an example of a "stop operation." 30 s and 5 s are examples of a "first interval" and a "second interval," respectively.
[0056] T100, T104, and T120 in Fig. 3, T240 and T270 in Fig. 4, and T320 in Fig. 5 are examples of processing executed by the "first transmission unit." T150 in Fig. 3 is an example of processing executed by the "image formation control unit." T160, T164, etc. in Fig. 3 are examples of processing executed by the "second transmission unit."
[0057] Although specific examples of the present invention have been described above in detail, these are merely examples and do not limit the scope of the claims. The technology described in the claims includes various modifications and variations of the specific examples exemplified above. Modifications of the above-mentioned embodiments are listed below.
[0058] (Variation 1) In the above embodiment, it is assumed that the server 100 receives a cancel instruction from the terminal device 50 (see Case A in FIG. 4). Alternatively, the server 100 may receive a pause instruction from the terminal device 50 at T210 in FIG. 4. In this case, the server 100 sends a GN(PM)Res including pause information to the printer 10 at T222. The printer 10 stops printing at T230. However, the printer 10 does not delete the print data. Therefore, the printer 10 can resume printing when it receives a GN(PM)Res including information to resume printing from the server 100. In this variation, the pause instruction and the GN(PM)Res including pause information are examples of a "job stop instruction" and a "job stop response," respectively. In another variation, the server 100 may receive an interrupt instruction from the terminal device 50 at T210 in FIG. 4. In this case, the server 100 sends a GN(PM)Res including interrupt information to the printer 10 at T222. At T230, the printer 10 stops printing. However, the printer 10 does not delete the print data. The printer 10 receives new print data to be interrupted from the server 100 and executes printing in accordance with the new print data. The printer 10 then resumes the stopped printing. In this modified example, the interrupt instruction and the GN(PM)Res including the interrupt information are examples of a "job stop instruction" and a "job stop response," respectively.
[0059] (Variation 2) A scanner may be used instead of the printer 10. In this case, a scan intermediary server is used instead of the print intermediary server 100. In this variation, each process is executed as follows: At T110 in FIG. 3, a scan instruction is communicated instead of a print instruction. T140 and T142 are not executed. At T150, scanning of the original is started. At T230 or T262 in FIG. 4, the scan is canceled. At T310 in FIG. 5, when the scan is completed, the scan data is sent from the scanner to the terminal device 50 via the scan intermediary server. In this variation, the scanner and scan engine are examples of an "image forming device" and an "image forming engine", respectively.
[0060] (Variation 3) When the printer 10 executes the cancellation process at T230 or T262 in Fig. 4, the printer 10 may start repeatedly sending a GN(PM)Req to the server 100 at intervals other than 30 seconds (for example, 20 seconds, 40 seconds, etc.). Also, when the printer 10 completes printing at T310 in Fig. 5, the printer 10 may start repeatedly sending a GN(PM)Req to the server 100 at intervals other than 30 seconds. Generally speaking, the "first transmission unit" does not need to repeatedly send an inquiry request to the server at the first interval when a job stop response is received from the server, when image formation is completed, or when a stop operation is performed on the operation unit.
[0061] (Variation 4) The GN(PM)Res does not have to include interval information. Before receiving a GN(PM)Res including a JobID from the server 100, the printer 10 may repeatedly send a GN(PM)Req at intervals (e.g., 20 seconds) predetermined by the program 32. Then, after receiving a GN(PM)Res including a JobID from the server 100, the printer 10 may repeatedly send a GN(PM)Req at intervals shorter than the above intervals (e.g., 10 seconds). Generally speaking, the "job execution response" and the "job non-execution response" do not have to include interval information.
[0062] (Variation 5) The printer 10 does not have to stop sending GN(PM)Req when a printing error occurs at T340 in Fig. 5. Generally speaking, when an error occurs in the image forming engine, the printer 10 does not have to stop repeatedly sending query requests to the server.
[0063] (Variation 6) In the above embodiment, the first GN(PM)Req after printing is completed at T310 in Fig. 5 is transmitted 30 seconds after the previous GN(PM)Req. Alternatively, the first GN(PM)Req after printing is completed may be transmitted 5 seconds after the previous GN(PM)Req, with the second and subsequent GN(PM)Reqs being transmitted at 30-second intervals. Similarly, the first GN(PM)Req after a cancellation process is executed at T230 or T262 in Fig. 4 may be transmitted 5 seconds after the previous GN(PM)Req, with the second and subsequent GN(PM)Reqs being transmitted at 30-second intervals.
[0064] (Variation 7) In the above embodiment, the CPU 32 of the printer 10 executes the program 36 to realize the processes shown in Figures 2 to 5. Alternatively, any of the processes may be realized by hardware such as a logic circuit.
[0065] The technical elements described in this specification or drawings exhibit technical utility either alone or in various combinations, and are not limited to the combinations described in the claims at the time of filing. Furthermore, the technologies illustrated in this specification or drawings simultaneously achieve multiple objectives, and achieving one of those objectives is itself technically useful. [Explanation of symbols]
[0066] 2: Communication system, 4: LAN, 6: Internet, 10: Printer, 12: Operation unit, 14: Display unit, 16: Communication interface, 18: Print engine, 30: Control unit, 32: CPU, 34: Memory, 36: Program, 50: Terminal device, 100: Print intermediary server
Claims
1. An image forming apparatus, an image forming engine; a first transmission unit that repeatedly transmits an inquiry request to a server at a first interval, and when the server receives a job execution instruction from a terminal device, the first transmission unit transmits a job execution response to the image forming device, in response to the inquiry request received from the image forming device, indicating that the job should be executed; an image forming control unit that controls the image forming engine to start image formation when the job execution response is received from the server; a second transmission unit that, when the job execution response is received from the server, repeatedly transmits the inquiry request to the server at the second interval even if the job execution response does not include interval information indicating a second interval shorter than the first interval, and when the job execution response is not received from the server, the interval at which the inquiry request is repeatedly transmitted is maintained at the first interval, and when the server receives a job stop instruction from the terminal device, the second transmission unit transmits a job stop response to the image forming device indicating that the job should be stopped in response to the inquiry request received from the image forming device, When the job stop response is received from the server, the image forming apparatus stops the image forming.
2. The image forming apparatus according to claim 1 , wherein the first transmission unit repeatedly transmits the inquiry request to the server at the first interval when the job stop response is received from the server.
3. When the server does not receive the job execution instruction from the terminal device, the server transmits to the image forming device, in response to the inquiry request received from the image forming device, a job non-execution response indicating that the job should not be executed, the job non-execution response including interval information indicating the first interval; 3. The image forming apparatus according to claim 1, wherein the first transmitting unit transmits the inquiry request to the server when the first interval indicated by the interval information included in the job non-execution response has elapsed since the job non-execution response was received from the server.
4. the job execution response includes the interval information indicating the first interval; 4. The image forming apparatus according to claim 1, wherein the second transmitting unit transmits the inquiry request to the server when the second interval, which is shorter than the first interval, has elapsed since the job execution response was received from the server, even though the interval information included in the job execution response indicates the first interval.
5. 5. The image forming apparatus according to claim 1, wherein the first transmission unit repeatedly transmits the inquiry request to the server at the first interval when the image formation is completed without receiving the job stop response from the server.
6. The image forming apparatus further comprises: An operation unit that is operated by a user, When a stop operation for stopping the image formation is executed on the operation unit, the image formation is stopped even if the job stop response is not received from the server, The image forming apparatus according to claim 1 , wherein the first transmission unit repeatedly transmits the inquiry request to the server at the first interval when the stop operation is performed on the operation unit.
7. The image forming apparatus according to claim 1 , wherein if an error occurs in the image forming engine after the image formation has started, the image forming apparatus stops repeatedly sending the inquiry request to the server.
8. The image forming apparatus according to claim 7 , wherein the second transmission unit resumes repeatedly transmitting the inquiry request to the server at the second interval when the error is resolved.
9. the image forming engine is a print engine, The image forming apparatus according to claim 1 , wherein the image formation is printing of an image on a print medium.
10. the job stop instruction is an instruction to cancel the job, The image forming apparatus according to claim 1 , wherein the job stop response indicates that the job should be canceled.
11. A computer program for an image forming apparatus, comprising: The computer of the image forming apparatus is composed of the following parts: a first transmission unit that repeatedly transmits an inquiry request to a server at a first interval, and when the server receives a job execution instruction from a terminal device, the first transmission unit transmits a job execution response to the image forming device, in response to the inquiry request received from the image forming device, indicating that the job should be executed; an image forming control unit that controls an image forming engine of the image forming apparatus to start image formation when the job execution response is received from the server; a second transmission unit that, when the job execution response is received from the server, repeatedly transmits the inquiry request to the server at the second interval even if the job execution response does not include interval information indicating a second interval shorter than the first interval, and when the job execution response is not received from the server, the interval at which the inquiry request is repeatedly transmitted is maintained at the first interval, and when the server receives a job stop instruction from the terminal device, transmits a job stop response to the image forming device indicating that the job should be stopped in response to the inquiry request received from the image forming device, The computer program product, wherein the image formation is stopped when the job stop response is received from the server.
Citation Information
Patent Citations
Printer
JP2004130784A
Image forming device, image forming device control method and program
JP2020192730A
Printing system, printer, control method, and program
JP2021149869A