Printing control program, printing control device, and printing method

The print control program addresses the inadequacy of generic printer drivers by acquiring and notifying both generic and vendor-specific printer statuses, ensuring comprehensive status information and error resolution during printing.

JP2025115466APending Publication Date: 2025-08-07SEIKO EPSON CORP
View PDF 1 Cites 0 Cited by

Patent Information

Application Number
JP2024009932
Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
Filing Date
2024-01-26
Publication Date
2025-08-07

AI Technical Summary

Technical Problem

Generic printer drivers do not support all the statuses that can be notified by vendor-specific drivers, leading to inadequate status notification during printing processes.

Method used

A print control program that executes a first acquisition process from a generic printer driver, a second acquisition process directly from the printer, and a notification process to provide comprehensive status information, including both generic and vendor-specific statuses.

Benefits of technology

Enables sufficient status notification during printing, providing detailed error resolutions and guidance even when using generic printer drivers.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2025115466000001_ABST
    Figure 2025115466000001_ABST
Patent Text Reader

Abstract

To provide a printing control program that can gives notice about a status sufficiently in printing processing using a general-purpose printer driver.SOLUTION: A printing control program according to an aspect of the present disclosure causes a computer to execute first acquisition processing, second acquisition processing, and notification processing. The first acquisition processing is to acquire, from a general-purpose printer driver 16, a first status about a print job for a printer together with a status display instruction. The second acquisition processing is to acquire a second status about the print job different from the first status from the printer not via the general-purpose printer driver 16. The notification processing is to notify the user of a status about the print job for the printer on the basis of the first status and the second status.SELECTED DRAWING: Figure 1
Need to check novelty before this filing date? Find Prior Art

Description

[Technical Field]

[0001] The present disclosure relates to a print control program, a print control device, and a printing method. [Background technology]

[0002] Patent Document 1 discloses a technology that reduces the user's effort required to download and install a printer vendor-specific driver, even in an environment where a standard printer driver for the OS (Operating System) is installed. [Prior art documents] [Patent documents]

[0003] [Patent Document 1] Patent Publication No. 2021-43547 Summary of the Invention [Problem to be solved by the invention]

[0004] Generic printer drivers, such as the OS standard printer driver, do not support all the statuses that can be notified by vendor-specific drivers for printers, and therefore are unable to notify the status adequately. Therefore, there is a need for the development of technology that can notify the status adequately in printing processes that use generic printer drivers.

[0005] The technology described in Patent Document 1 is a technology that installs a driver specific to the installed printer vendor in order to perform printing without using the OS standard printer driver, and therefore does not solve the above problem. [Means for solving the problem]

[0006] A printing control program according to one aspect of the present disclosure causes a computer to execute a first acquisition process that acquires a first status of a printer's print job along with an instruction to display the status from a generic printer driver, a second acquisition process that acquires a second status of the print job, which is different from the first status, from the printer without going through the generic printer driver, and a notification process that notifies a user of the status of the printer's print job based on the first status and the second status.

[0007] A print control device according to one aspect of the present disclosure includes a generic printer driver, a first acquisition processing unit that acquires a first status of a print job of a printer along with an instruction to display the status from the generic printer driver, a second acquisition processing unit that acquires a second status of the print job, which is different from the first status, from the printer without going through the generic printer driver, and a notification processing unit that notifies a user of the status of the print job of the printer based on the first status and the second status.

[0008] A printing method according to one aspect of the present disclosure includes a first acquisition process that acquires a first status of a printer's print job along with an instruction to display the status from a generic printer driver, a second acquisition process that acquires a second status of the print job, which is different from the first status, from the printer without going through the generic printer driver, and a notification process that notifies a user of the status of the printer's print job based on the first status and the second status. [Brief explanation of the drawings]

[0009] [Figure 1] 1 is a block diagram showing an example of a configuration of a printing system according to an embodiment; [Figure 2] FIG. 2 is a sequence diagram illustrating a first example of a printing process in the printing system of FIG. [Figure 3] 3A and 3B are diagrams showing an example of a user interface image displayed in the printing process of FIG. 2. [Figure 4] 10A and 10B are diagrams showing other examples of user interface images displayed in the printing process of FIG. 2. [Figure 5] 3 is a flowchart for explaining an example of processing in a vendor assistant application program in the printing processing of FIG. 2. FIG. [Figure 6] 2 is a diagram showing an example of a support status database used in the printing system of FIG. 1. FIG. [Figure 7] FIG. 10 is a sequence diagram illustrating a second example of the printing process in the printing system of FIG. [Figure 8] FIG. 8 is a diagram showing an example of a user interface image displayed in the printing process of FIG. 7. [Figure 9] FIG. 2 illustrates an example of a hardware configuration of the apparatus. DETAILED DESCRIPTION OF THE INVENTION

[0010] Hereinafter, embodiments of the present invention will be described with reference to the drawings. Note that the drawings are merely examples for explaining the embodiments of the present invention. Furthermore, not all of the components described in the embodiments of the present invention are necessarily essential components of the present invention.

[0011] (Embodiment) [System Configuration] An example of the configuration of a printing system according to this embodiment will be described with reference to Fig. 1. Fig. 1 is a block diagram showing an example of the configuration of a printing system according to this embodiment.

[0012] As shown in FIG. 1, a printing system 100 according to this embodiment can include a terminal device 10, a printer A (31), a printer B (32), and a printer C (33).

[0013] The terminal device 10 is an information processing device with a communication function, such as a PC (Personal Computer), smartphone, or tablet terminal, and can be used by a user who desires to print. The terminal device 10 is connected to printer A (31), printer B (32), and printer C (33) via a network N for processes such as sending print requests. Because the terminal device 10 controls printing, it can also be called a print control device. Although not shown, the printing system 100 can be equipped with multiple terminal devices 10.

[0014] Printer A (31), printer B (32), and printer C (33) are all examples of printers that can print on media when they receive print data. Each printer produces printed materials by performing this type of printing. For convenience, the printing system 100 is described assuming a configuration that includes three printers, but it is sufficient that the system includes at least one printer. Each printer may be a device with communication and printing functions, but may also be a multifunction device with other functions such as a scanner, copy, or facsimile transmission function. Each printer may also be referred to as a printing device or an image forming device. The printing method used by each printer is not limited; various printing methods, such as inkjet printing and laser printing, can be applied.

[0015] In the printing system 100, printing is performed by a printer selected from printer A (31), printer B (32), and printer C (33) through user operation on the terminal device 10. An example configuration of the terminal device 10 will be described in detail below. Note that an explanation of the example configuration of each printer will be omitted.

[0016] [Configuration of terminal device 10] As shown in FIG. 1, the terminal device 10 may include a control unit 11, a storage unit 12, a communication unit 13, an operation unit 14, and a display unit 15.

[0017] The control unit 11 controls the entire terminal device 10. The control unit 11 can be configured to include, for example, an arithmetic processing unit, a working memory, and a storage device that stores control programs, parameters, etc. The arithmetic processing unit can be a CPU (Central Processing Unit), a GPU (Graphics Processing Unit), etc. The control unit 11 can also be configured as an SoC (System on a Chip). As can be seen from these examples, the control unit 11 can be configured to store the control program in an executable state. However, the control unit 11 can also be configured to store part of the control program as a circuit configuration such as an FPGA (Field-Programmable Gate Array), or can be configured as a dedicated circuit.

[0018] The control program may include a program for the arithmetic processing device to execute printing-related processes in cooperation with the storage unit 12, communication unit 13, operation unit 14, and display unit 15. The control program may include an OS. Since the OS is an OS installed in the terminal device 10, the type of OS will depend on the model of the terminal device 10, etc. The control program may include a web browser within or outside the OS. In the following, an example will be described in which at least a portion of the control program is stored in storage unit 12 provided separately from the control unit 11, but storage unit 12 may be part of a storage device within the control unit 11. In other words, storage unit 12 can also be considered part of the control unit 11.

[0019] The storage unit 12 is, for example, a hard disk drive, a solid state drive, or other memory storage device. As part of the control program, the storage unit 12 stores a generic printer driver 16 and a vendor auxiliary application program 17, which will be described later, in a state executable by the control unit 11. Hereinafter, the vendor auxiliary application program will be abbreviated as the vendor auxiliary App. The storage unit 12 can also store various data, such as a support status database (DB) 18 and files to be printed. The support status DB 18 can also be included in the vendor auxiliary App 17. The support status DB 18 will be described later together with an example of printing processing.

[0020] The communication unit 13 is a component that communicates wirelessly or via wire with external devices such as printer A (31), printer B (32), and printer C (33) via network N in accordance with predetermined communication standards such as various mobile communication standards and the Wi-Fi (registered trademark; the same applies below). The communication unit 13 can be configured with one or more communication interfaces that enable such communication.

[0021] The operation unit 14 is a part that accepts operations by the user of the terminal device 10, and can also be called an operation acceptance unit. The operation unit 14 can be realized by, for example, one or more of physical buttons, a touch panel mounted on the display unit 15, a pointing device, and a keyboard. In a configuration in which the operation unit 14 includes a touch panel, the display unit 15 and the touch panel can be collectively called the operation panel of the terminal device 10.

[0022] The display unit 15 is a component for displaying a user interface (UI) image for operating the terminal device 10, and is configured with a display device such as a liquid crystal display or an organic electroluminescence display. The display unit 15 may also be configured to include a display and a drive circuit for driving the display.

[0023] The generic printer driver 16 will now be described. The generic printer driver 16 is an OS-standard printer driver that is included in the OS included in the control program or is attached to the OS. The generic printer driver 16 can be a program that can control various types of printers to execute printing. The generic printer driver 16 can also be called an OS generic printing program or a generic printing program.

[0024] The generic printer driver 16 is a driver that uses a generic protocol for searching for printers and printing. The generic printer driver 16 uses, for example, mDNS / DNS-SD for searching for printers and IPP for printing on the printer. Here, DNS stands for Domain Name System. mDNS stands for multicast DNS. DNS-SD stands for DNS Service Discovery. IPP stands for Internet Print Protocol.

[0025] As can be seen from this example, the generic printer driver 16 can be, for example, an IPP Class driver. IPP is an example of a standard protocol for managing printers and controlling printing. IPP obtains and controls printer information using HTTP (Hyper Text Transfer Protocol) POST requests and responses. IPP can be used to configure the printer and obtain its status. Here, secure communication can be achieved by using HTTPS (HTTP Secure) instead of HTTP.

[0026] The vendor auxiliary app 17 will now be described. The vendor auxiliary app 17 is an application program that assists the generic printer driver 16 and is used to extend the functionality of the generic printer driver 16. Therefore, the generic printer driver 16 can have the functionality to launch the vendor auxiliary app 17 and send print jobs to the vendor auxiliary app 17. The vendor auxiliary app 17 can be, for example, a Print Support Application (PSA).

[0027] The vendor assistance app 17 can be a program that assists the generic printer driver 16 and causes a computer to execute print control suited to the capabilities of the target printer, i.e., print control that supports the printer's unique functions. The computer here refers to the terminal device 10 or the control unit 11. When the vendor assistance app 17 receives a print job from the generic printer driver 16, it can convert the print job so that printing using the specified printer's unique functions can be executed on that printer.

[0028] The vendor-auxiliary app 17 is an application program provided by a printer vendor or the like. The vendor-auxiliary app 17 can be provided to the user of the terminal device 10 by being published, for example, in an application store provided by the OS provider. Alternatively, the vendor-auxiliary app 17 can be provided to the user as being included in or attached to the OS.

[0029] The vendor assistance app 17 includes a print control program, which will be described next. That is, this print control program can also be implemented as a PSA, for example. Broadly speaking, this print control program is used to display job status, which is the status of a printer, such as printer A (31), that is printing, on the display unit 15. The status of a printer's print job can include the printer's status. In particular, this print control program enables the display unit 15 to display status that the printer can provide, even if the generic printer driver 16 cannot provide it.

[0030] Specifically, this print control program is a program that causes a computer to execute a first acquisition process, a second acquisition process, and a notification process, as described below. The computer referred to here also refers to the terminal device 10 or the control unit 11. The following describes an example in which a print request is made from the terminal device 10 to printer A (31), but the same applies to other printers.

[0031] The first acquisition process acquires a first status for the print job of printer A (31) along with an instruction to display the status from the generic printer driver 16. The first acquisition process can acquire the first status through inter-process communication between the generic printer driver 16 and the print control program. As can be seen from the fact that the first status is acquired from the generic printer driver 16, the first status is a status that can be acquired by the generic printer driver 16. Specifically, the generic printer driver 16 can acquire the status of the print job from printer A (31) using a generic protocol such as IPP.

[0032] The second acquisition process acquires a second status for the print job, which is different from the first status, from printer A (31) without going through the generic printer driver 16. The second acquisition process can acquire the second status by communicating with printer A (31) via the communication unit 13. Here, because the second status is different from the first status, it can be said to be a status that is not supported by at least the generic printer driver 16. For example, the second status can be any of all statuses that can be provided by a printer vendor-specific driver, excluding the first status. In other words, the acquireable second status can be any of all statuses that can be provided by a printer vendor-specific driver, excluding the first status. However, the first status and the second status may have some in common.

[0033] The notification process notifies the user of the terminal device 10 of the status of the print job of printer A (31) based on the first status and the second status. The notification process can be performed by displaying the status on the display unit 15. The notification process can also be accompanied by a process of outputting a notification sound from a speaker (not shown).

[0034] In other words, this embodiment can provide a printing method that includes the first acquisition process, the second acquisition process, and the notification process described above.

[0035] In other words, the terminal device 10 includes a generic printer driver 16, a first acquisition processing unit, a second acquisition processing unit, and a notification processing unit, as described below.

[0036] The first acquisition processing unit acquires a first status of the print job of printer A (31) along with an instruction to display the status from the generic printer driver 16. The first acquisition processing unit can also be called a driver processing unit because it acquires the first status by communicating with the generic printer driver 16. The second acquisition processing unit acquires a second status of the print job, which is different from the first status, from printer A (31) without going through the generic printer driver 16. The second acquisition processing unit can also be called a printer processing unit because it acquires the second status by communicating with the printer. The notification processing unit notifies the user of the status of the print job of printer A (31) based on the first status and the second status.

[0037] [Advantages of this embodiment] Before describing a more specific example of the printing process in this embodiment, the effects of this embodiment will be described.

[0038] As described above, in printing system 100, the print control program can notify the status based on the second status. Therefore, according to this embodiment, in printing processing using a generic printer driver, it is possible to notify even statuses that cannot be handled by the generic printer driver, so it can be said that sufficient status can be notified.

[0039] To further explain this effect, a comparison will be made between the present embodiment and a printing system according to a comparative example. In the printing system according to the comparative example, the printer is controlled using a generic printer driver that is built into the Windows (registered trademark; the same applies hereinafter) operating system as standard, rather than using a vendor's printer driver. The generic printer driver in this comparative example also uses a generic protocol for printer search and printing. The generic printer driver obtains the status of the print job using IPP, a generic protocol, and displays it using the OS's notification function. In the case of Windows, the status is displayed as a toast notification.

[0040] Furthermore, the generic printer driver in the comparative example also provides a mechanism for launching a vendor-assisted application program linked to the printer to customize print settings and IPP communication during printing. Regarding notifications, when the user selects the UI image of a toast notification displayed by the OS's notification function, the OS launches the generic printer driver and passes the acquired print job status to the vendor-assisted application program. This allows the vendor-assisted application program to display individual messages depending on the status. Of course, the vendor-assisted application and generic printer driver in the comparative example do not include the print control program described above.

[0041] However, because only general statuses are defined in IPP, the system according to the comparative example does not allow the generic printer driver to obtain statuses that are not defined in the detailed error definitions. Therefore, the system according to the comparative example does not allow the vendor-assisted application program to notify of statuses that are not defined in IPP, and therefore is unable to provide the user with guidance on how to resolve detailed errors that correspond to those statuses, for example.

[0042] As described above, in this comparative example, the generic printer driver does not support all statuses, so the user cannot be notified of sufficient status information during printing using the generic printer driver. On the other hand, as described above, this embodiment introduces a mechanism for acquiring additional statuses not defined by the generic printer driver, such as detailed statuses, as second statuses. Therefore, this embodiment can be said to be able to notify the user of sufficient status information compared to the comparative example, even during printing using the generic printer driver 16.

[0043] [First example of printing process] A first example of the printing process according to the present embodiment will be described with reference to Figs. 2 to 6. Fig. 2 is a sequence diagram for explaining the first example of the printing process in the printing system 100 of Fig. 1. Fig. 3 is a diagram showing an example of a UI image displayed in the printing process of Fig. 2. Fig. 4 is a diagram showing another example of a UI image displayed in the printing process of Fig. 2. The following description will also take as an example a case in which the vendor assistance App 17 implements a printing control program that performs the first acquisition process, second acquisition process, and notification process described above.

[0044] The first example is an example in which the vendor assistance application 17 displays the notified status on its own UI image.

[0045] First, user U starts an application program that starts and edits a file to be printed, such as a document file. Then, user U performs an operation on operation unit 14 to select printer A (31) in the print settings for the file to be printed, and generic printer driver 16 receives an instruction to start printing (step S1).

[0046] The generic printer driver 16 converts the file to be printed into print data, which is data in a printable format, and sends a print job including the print data to printer A (31) (step S2). Before this conversion, user U can also specify print settings that use extended functions in the vendor-assisted app 17 as print settings for printer A (31). In this case, the generic printer driver 16 launches the vendor-assisted app 17, which accepts print setting operations from user U using the extended functions, converts the data into print data based on the print settings, and generates a print job.

[0047] After processing step S2, the generic printer driver 16 periodically requests printer A (31) to obtain the job status (JS), which is the status of the print job (step S3), and receives the first status as the JS in response (step S4). The JS received here is the first status. IPP communication is preferably used for the communication in steps S3 and S4. Examples of generic statuses that can be obtained via IPP include Printing, Offline, PaperOut, Error, and UserIntervention.

[0048] The generic printer driver 16 also periodically requests the internal generic status UI image 16a to display JS (step S5), and in response, the generic status UI image 16a displays JS based on the first status received in step S4 to provide notification. The generic status UI image 16a may display the received first status itself as JS, or it may display JS that has been modified based on the first status. The generic status UI image 16a may include, for example, a message 51 indicating that the printer needs to be checked, as in the UI image 50 shown in FIG. 3. This allows the user U to check the first status on the display unit 15. FIG. 3 shows an example in which a status indicating that user action is required to correct an error state is received as the first status in step S4.

[0049] Next, the general-purpose status UI image 16a displaying the first status, such as the UI image 50, receives a selection operation from the user U via the operation unit 14 (step S6). Note that the general-purpose status UI image 16a may include a button for launching the vendor assistance app 17 or a button for obtaining a more detailed or accurate status, and may receive a selection operation for selecting the button in step S6.

[0050] The generic status UI image 16a that has accepted the selection operation in step S6 starts the vendor assistance app 17 using the first status received in step S4 as an argument (step S7). The vendor assistance app 17 determines whether or not there is insufficient information for the JS to be notified, based on the first status passed from the generic printer driver 16 (step S8). Whether or not there is insufficient information for the JS to be notified refers to whether there is additional information that can be provided or information that can be provided more accurately, and can refer to whether or not there is insufficient JS in the passed JS.

[0051] The vendor support application 17 performs processing based on the determination result in step S8 (step S9). If there is sufficient information for the JS to be notified, the vendor support application 17 does not perform the processing in step S9.

[0052] On the other hand, in step S9, if there is insufficient information for the JS to be notified, the vendor assistance app 17 requests the printer A (31) to acquire the missing status, i.e., the missing type of status, based on the first status (step S10). In this way, the second acquisition process can include a process of requesting the printer A (31) to provide, as the second status, a status of a type corresponding to the received first status. Then, the vendor assistance app 17 receives, as a response, the second status, which is the missing status, from the printer A (31) (step S11). In this way, the vendor assistance app 17 additionally acquires, as the second status, something based on the first status that was used as an argument.

[0053] The communications in steps S10 and S11 may be performed in accordance with a vendor-extended IPP protocol, or other Simple Network Management Protocol (SNMP) or a vendor-specific protocol.

[0054] Whether or not a secondary status is supported for each type depends on the printer, but examples include the following: Examples of secondary statuses include no ink remaining for each color, no remaining ink in the waste ink box, cover open (main, waste ink box), roll paper detection failed, and paper jam. Here, the waste ink box is a box for disposing of ink used for maintenance such as nozzle cleaning. Cover open is a status indicating that a cover is open. Examples of covers include the printer's main cover and the waste ink box cover, and some printers support this as a common status, while others support it as a status for each individual part. Furthermore, a paper jam status can include information indicating the location of the jammed paper.

[0055] Next, the vendor assistance app 17 displays a status based on the acquired second status on its own UI image, and also displays a detailed error resolution method corresponding to the status, thereby notifying the user U of guidance for resolving the error (step S12). A specific example of the processing of steps S8 to S12 will be described later.

[0056] The vendor support app 17 can provide such guidance by displaying, for example, a UI image 60 shown in Fig. 4. The UI image 60 is a UI image that notifies the user of JS and the like about printer A (31), and can include, along with an image 61 of printer A (31), text 62 that provides guidance on how to deal with the problem, such as a detailed method for resolving an error that corresponds to the second status, which is an additional status. The UI image 60 can also include a button 63 for closing the UI image 60.

[0057] In the example shown in FIG. 4, the second status acquired in step S11 indicates that paper jams have occurred in two locations: the manual feed tray and section G. Section G refers to the "G" portion attached to printer A (31) with a sticker or similar. Therefore, text 62 can include this status and a statement indicating that the corrective action can be found in the help section of the operation panel. Image 61 can also include arrows indicating these two locations superimposed on an illustration of printer A (31). Of course, an example is given here in which the corrective action can be found in the help section of the operation panel, but in a simpler example, text 62 can specifically state the corrective action.

[0058] To provide the guidance in step S12, the vendor assistance app 17 is configured to be able to obtain information such as text 62 indicating a solution for each type of second status and incorporate the information into the UI image 60. For example, although not shown, the vendor assistance app 17 can retain a database (not shown) that describes a solution for each second status, thereby obtaining the solution corresponding to the second status and incorporating it into the UI image 60. Note that the solution can also be incorporated into the UI image 60 by describing the solution in association with each status in the support status database 18. In other words, the relationship between the second status and the solution can be included in the vendor assistance app 17 itself, or can be stored in a table that can be referenced by the vendor assistance app 17.

[0059] In this way, by selecting a general-purpose status UI image such as UI image 50 in Fig. 3, user U can display UI image 60 in Fig. 4 and receive guidance including how to resolve the error and other countermeasures. Note that the explanation here is based on the assumption that an error has occurred, but if there is no error, UI image 60 will include information indicating the current status of printer A.

[0060] If it is determined in step S8 that there are sufficient statuses, then in step S12, the vendor assistance app 17 displays a status based only on the acquired first status on its own UI image. If information indicating a solution, such as a method for resolving an error corresponding to that status, has been obtained from the generic printer driver 16, the vendor assistance app 17 may notify the user U of the solution by displaying a UI image that also includes the solution.

[0061] However, if the vendor support app 17 displays a solution corresponding to the first status, regardless of whether information indicating a solution corresponding to that status is obtained from the generic printer driver 16, it will be easier for the user U to take action, such as resolving an error. Therefore, the vendor support app 17 can obtain information indicating a solution corresponding to the first status and incorporate it into the UI image. The relationship between the first status and the solution, like the relationship between the second status and the solution, can be included in the vendor support app 17 itself, or can be stored in a table that can be referenced by the vendor support app 17.

[0062] Just as step S8 determines whether there is any status information that is missing, that is, whether additional or more accurate information can be provided, the second acquisition process can include a determination process that determines whether the second status is necessary or unnecessary. As illustrated in steps S9 to S11, the second acquisition process may acquire the second status if it is determined that it is necessary, and not acquire the second status if it is determined that it is unnecessary. Furthermore, as illustrated in step S12, the notification process may notify the user of the status of printer A (31) based on the first status if it is determined that it is unnecessary. Also illustrated in step S12, the notification process may acquire the second status if it is determined that it is necessary, and notify the user of the status of printer A (31) based on the second status if it is determined that it is necessary.

[0063] In this way, the notified status will be based on the second status if the second status corresponds to the first status, and will be based on the first status if there is no second status corresponding to the first status. Therefore, the notified status will include the same type of status without duplication, and the user U will not be confused.

[0064] Next, a specific example of the processing of steps S8 to S12, including determining the shortage status and notifying guidance on how to deal with the situation, will be described with reference to Figures 4 to 6. Figure 5 is a flow diagram for explaining an example of processing by the vendor support App 17 in the printing processing of Figure 2. Figure 6 is a diagram showing an example of the support status DB 18 used in the printing system 100 of Figure 1.

[0065] First, as described above, the generic printer driver 16 uses the first status as an argument to start the vendor support app 17. Next, the vendor support app 17 determines whether the support status DB 18 exists in the storage unit 12 (step S21).

[0066] If the answer is YES in step S21, the vendor assistance app 17 references the support status DB 18 based on the first status and determines which status information is missing (step S22). The support status DB 18 can contain information indicating whether or not each status type is supported for each connectable printer, as shown in the example of Fig. 6. Fig. 6 gives an example in which "Valid" is written if the status is supported, and "Null" is written if the status is not supported.

[0067] The vendor assistant app 17 then references the supported status database 18. If the printer A (31) performing printing supports the same type of status as the first status, the vendor assistant app 17 determines in step S22 that there are sufficient statuses. For example, if the first status is an "out of paper error," the vendor assistant app 17 searches the supported status database 18 for printer A (31) information about "out of paper," which is the same type as the "out of paper error" status. In this case, the vendor assistant app 17 finds that information to be "valid." Therefore, the vendor assistant app 17 determines that the status is supported by the printer A (31) and that no additional information does not need to be provided, i.e., that there are sufficient statuses. In this way, if there is no status for the printer A (31) that can provide more accurate or detailed information than the information provided in the first status and the first status is sufficient, the vendor assistant app 17 determines in step S22 that there are sufficient statuses.

[0068] On the other hand, the vendor assistance app 17 references the supported status DB 18, and if there is no status of the same type as the first status, it determines in step S22 that the status is insufficient. Even if there is a status of the same type as the first status, if the information for that status on the printer A (31) that will print is "Null" and the status is not supported, the vendor assistance app 17 determines in step S22 that the status is insufficient. For example, if the first status is "User operation is required to correct the error state," this status does not exist in the supported status DB 18 illustrated in FIG. 6. Therefore, the vendor assistance app 17 determines that the status is not supported by printer A (31) but that additional information can be provided, i.e., that the status is insufficient.

[0069] In this way, the above determination process may refer to a database, such as the support status DB 18, that indicates whether the second status is necessary or unnecessary for each type of status, to determine whether the second status is necessary or unnecessary.

[0070] If the answer is YES in step S22, the vendor assistant app 17 acquires a second status, which is an additional status, from printer A (31) (step S23). Then, the vendor assistant app 17 incorporates a status based on the acquired second status into the UI image 60, displays it (step S24), and ends the process. If the answer is NO in step S22, the vendor assistant app 17 proceeds to step S24 without going through step S23, incorporates a status based on the first status into the UI image in the same way as the UI image 60, and displays it, and ends the process. In step S24, the vendor assistant app 17 may display a solution to the problem in the UI image based on the relationship between the second status or the first status and the solution, as described above.

[0071] On the other hand, if the result in step S21 is NO, the vendor support application 17 acquires a list of supported job statuses from the printer A (31) (step S25). Next, the vendor support application 17 generates the supported status DB 18 (step S26).

[0072] In step S26, for example, the vendor assistance app 17 may statically store a list of supported job statuses acquired by communicating with printer A (31) in a user environment such as the storage unit 12. After processing step S26, the vendor assistance app 17 may proceed to processing step S22.

[0073] Alternatively, the process of generating the support status DB 18 in step S26 can be executed as follows: For example, the vendor support app 17 stores a list of job statuses supported by each model as static information in advance in a user environment such as the storage unit 12. The vendor support app 17 then reads out this information for at least the printer A (31) currently performing printing, and generates the support status DB 18.

[0074] In this first example of printing processing, the vendor support app 17 can acquire and display additional missing information from printer A (31) based on the print job status acquired and displayed by the OS-standard generic printer driver 16 via IPP. This allows the vendor support app 17 to provide user U with detailed error resolution methods and other troubleshooting information corresponding to the additional status.

[0075] In other words, in the first example, not only can IPP obtain the missing status and guide the user on how to resolve the error in detail, but by obtaining and displaying only the missing information, it is possible to avoid duplication with general errors displayed by the OS and avoid user confusion.

[0076] [Second example of printing process] A second example of the printing process according to the present embodiment will be described with reference to Fig. 7 and Fig. 8. Fig. 7 is a sequence diagram for explaining the second example of the printing process in the printing system 100 of Fig. 1. Fig. 8 is a diagram showing an example of a UI image displayed in the printing process of Fig. 7.

[0077] The second example differs from the first example in that the notified status is displayed on a UI image for general status notification of the OS. In other words, the notification process in the second example notifies the status of printer A (31) via the generic printer driver 16. Therefore, the processes in steps S1 to S11 of the first example also apply to the second example.

[0078] In the second example, instead of step S12, the vendor-assisted app 17 feeds back the additional information to the general-purpose status UI image 16b of the OS. Note that the general-purpose status UI image 16b refers to a UI image configured to embed the fed-back additional information in the general-purpose status UI image 16a.

[0079] The additional information may be, for example, the UI image 60 of FIG. 4 itself, or simply text information, as long as it includes a status based on the second status or information indicating that status and how to deal with it.

[0080] When the additional information is a UI image 60, the general-purpose status UI image 16b can be a UI image that includes the UI image 60 in addition to the text 51 in the UI image 50 of Fig. 3. That is, in this case, the general-purpose status UI image 16b can be a UI image 70 shown in Fig. 8. Of course, the general-purpose status UI image 16b may be the UI image 70 of Fig. 8 without the text 51.

[0081] In the second example, in addition to the effect of the first example, the additional information is displayed using the OS's general status UI image, which has the effect of making it possible to unify the display of status and how to deal with that status to a certain extent without relying on vendor auxiliary App17.

[0082] (Other variations) The present disclosure is not limited to the above-described embodiment and may be modified as appropriate without departing from the spirit of the present disclosure. For example, the system configuration of the printing system, the configuration of each device that constitutes the system, the configuration of each program included in each device, the processing procedure of each device, etc. are not limited to those exemplified.

[0083] Each of the devices provided in the printing system according to the above-described embodiment may have, for example, the following hardware configuration. Here, in the example of Fig. 1, each device includes a terminal device and each printer. Fig. 9 is a diagram showing an example of the hardware configuration of the device.

[0084] 9 may include a processor 1001, a memory 1002, and an interface 1003. The interface 1003 may include, for example, a communication interface or an interface with an input / output device, as required depending on the device.

[0085] The processor 1001 may be, for example, a CPU, a GPU, or an MPU (Micro Processor Unit), also known as a microprocessor. The processor 1001 may include multiple processors. The memory 1002 is configured, for example, by a combination of volatile memory and non-volatile memory. The functions of each device are realized by the processor 1001 reading a program stored in the memory 1002 and executing it while exchanging necessary information via the interface 1003.

[0086] The above-described program includes instructions (or software code) that, when loaded into a computer, cause the computer to perform one or more functions described in the embodiments. The program may be stored in a non-transitory computer-readable medium or a tangible storage medium. By way of example and not limitation, computer-readable media or tangible storage media include random-access memory (RAM), read-only memory (ROM), flash memory, solid-state drive (SSD), or other memory technologies. By way of example and not limitation, computer-readable media or tangible storage media include CD-ROMs, digital versatile discs (DVDs), Blu-ray discs, or other optical disk storage, magnetic cassettes, magnetic tapes, magnetic disk storage, or other magnetic storage devices. The program may also be transmitted on a transitory computer-readable medium or communication medium. By way of example and not limitation, transitory computer-readable media or communication media include electrical, optical, acoustic, or other forms of propagated signals.

[0087] The present invention has been described above in accordance with the above-mentioned embodiment, but the present invention is not limited to the configuration of the above-mentioned embodiment, and naturally includes various modifications, alterations, and combinations that a person skilled in the art can make within the scope of the invention as defined in the claims of this application. [Explanation of symbols]

[0088] 10...terminal device, 11...control unit, 12...memory unit, 13...communication unit, 14...operation unit, 15...display unit, 16...generic printer driver, 16a...generic status UI image, 16b...generic status UI image, 17...vendor auxiliary app, 18...support status DB, 31...printer A, 32...printer B, 33...printer C, 50...UI image, 51...text, 60...UI image, 61...image, 62...text, 63...button, 70...UI image, 100...printing system, 1000...device, 1001...processor, 1002...memory, 1003...interface, N...network, U...user

Claims

1. a first acquisition process for acquiring a first status of the print job of the printer together with an instruction to display the status from the generic printer driver; a second acquisition process for acquiring a second status of the print job, which is different from the first status, from the printer without going through the generic printer driver; a notification process for notifying a user of the status of the print job of the printer based on the first status and the second status; A printing control program that causes a computer to execute the above.

2. the print control program is a Print Support Application; The print control program according to claim 1 .

3. the second acquisition process includes a process of requesting the printer to provide, as the second status, a status of a type corresponding to the first status; 3. The print control program according to claim 1.

4. the second acquisition process includes a determination process for determining whether the second status is necessary or unnecessary, and acquires the second status when it is determined in the determination process that it is necessary, and does not acquire the second status when it is determined in the determination process that it is unnecessary; If the determination process determines that the notification is unnecessary, the notification process notifies the user of the status of the printer based on the first status.

3. The print control program according to claim 1.

5. the determination process refers to a database indicating whether the second status is necessary or unnecessary for each type of print job status, and determines whether the second status is necessary or unnecessary. The print control program according to claim 4.

6. the notification process notifies the status of the printer via the generic printer driver; 3. The print control program according to claim 1.

7. Generic printer driver a first acquisition processing unit that acquires a first status of the print job of the printer together with an instruction to display the status from the generic printer driver; a second acquisition processing unit that acquires a second status of the print job, which is different from the first status, from the printer without going through the generic printer driver; a notification processing unit that notifies a user of a status of the print job of the printer based on the first status and the second status; A print control device comprising:

8. a first acquisition process for acquiring a first status of the print job of the printer together with an instruction to display the status from the generic printer driver; a second acquisition process for acquiring a second status of the print job, which is different from the first status, from the printer without going through the generic printer driver; a notification process for notifying a user of the status of the print job of the printer based on the first status and the second status; A printing method including:

Citation Information

Patent Citations

  • Information processing device and control method for information processing device, and program

    JP2021043547A