Printing apparatus, control method thereof, and program

The printing apparatus addresses print job compatibility issues by registering and transmitting data to ensure virtual printers can handle print jobs compatible with their capabilities, enabling seamless printing when a physical printer is assigned.

JP2026086865APending Publication Date: 2026-05-26CANON KK

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
CANON KK
Filing Date
2026-02-27
Publication Date
2026-05-26

AI Technical Summary

Technical Problem

When a virtual printer is not associated with a physical printer, print jobs sent to it are saved without actual printing, and mismatches between the capabilities of the virtual and physical printers can result in undesired print outcomes or failure.

Method used

A printing apparatus that communicates with a first server system to register as a destination printer, acquires print data using IPP operations, and transmits data to a printer for printing, ensuring print jobs conform to predetermined capability information.

Benefits of technology

Ensures that print jobs submitted to a virtual printer without an associated physical printer are compatible with the printer's capabilities, allowing seamless printing when a physical printer is later assigned.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026086865000001_ABST
    Figure 2026086865000001_ABST
Patent Text Reader

Abstract

This invention provides a printing device, a control method, and a program that, when creating a virtual printer, prevents situations where the user cannot obtain the desired print result by setting predetermined capability information if the virtual printer is not associated with a printing device. [Solution] A first server system provides a first cloud print service 104 that provides print data to a printer, and registers the first cloud print service as a destination printer with respect to a second server system that provides a second cloud print service 105, and obtains print data from the second server system that has registered the first cloud print service as a destination printer using IPP (Internet Printing Protocol) operations, and provides print data based on the obtained print data to the printer 107.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a printing apparatus, a control method thereof, and a program.

Background Art

[0002] Cloud print services have been popular for a long time. By using this service, users can print documents from mobile terminals such as notebook PCs and smartphones even when they are away from the printer. Generally, when using a cloud print service, it is necessary to register the printer with the cloud print service and add the information of the printer registered with the cloud print service to the mobile terminal. Here, when registering a printer with the cloud print service, not only a real printer can be registered, but also a printer can be registered as a virtual printer. Here, in order to distinguish between a virtual printer and a real printer, a real printer will be referred to as a "physical printer". By creating a virtual printer and associating the virtual printer with a physical printer, printing can be performed using the physical printer. At this time, the virtual printer and the physical printer do not have to correspond one-to-one.

[0003] By associating a plurality of physical printers with a virtual printer, when a user sends a print job to the virtual printer, the cloud print service can determine an appropriate physical printer for the print job and request the physical printer to perform printing. Also, efficient printing can be performed with a plurality of printers, such as a standby printer associated with the virtual printer acquiring the print job by itself and performing printing.

[0004] On the other hand, virtual printers can be created even when there is no physical printer. For example, a virtual printer can be created first, and then, once the client terminal recognizes the physical printer, that physical printer can be registered to the virtual printer. Also, if a physical printer is replaced, unassociating it from the virtual printer may result in the virtual printer no longer having a physical printer associated with it.

[0005] Patent Document 1 describes a method for easily specifying desired print attributes in an environment where there is no dependency between the client computer and the virtual printer on the server computer. In this method, if there is a difference between the print attributes of the print job and the capabilities of the printer, the print attributes are changed to match the printer before printing. [Prior art documents] [Patent Documents]

[0006] [Patent Document 1] Japanese Patent Publication No. 2003-5927 [Overview of the project] [Problems that the invention aims to solve]

[0007] If no physical printer is associated with a virtual printer, when a client terminal sends a print job to that virtual printer, the print job is saved on the client terminal or the cloud server, and no actual printing occurs. Subsequently, when a physical printer is associated with this virtual printer, the saved print job is sent to the associated physical printer and printing is performed. However, in this case, if there is a mismatch between the capabilities of the virtual printer and the physical printer, the client terminal may create a print job that the physical printer cannot execute. In this case, printing will be performed according to the capabilities of the physical printer, which may result in situations where the user does not get the print result they want, or where printing does not occur at all.

[0008] The object of the present invention is to solve at least one of the problems of the prior art described above.

[0009] The object of the present invention is to provide a technology that prevents situations in which the user cannot obtain the desired print result by setting predetermined capability information when a virtual printer is created and no virtual printer printing device is associated with it. [Means for solving the problem]

[0010] To achieve the above objective, a printing apparatus according to one aspect of the present invention has the following configuration. That is, A printing device that communicates with a first server system that provides a first cloud print service for sending print data to a printer, The aforementioned first server system is A registration means for registering the printing device as a destination printer with a second server system that provides a second cloud print service for sending print data to a printer, An acquisition means for acquiring print data from the second server system, which has registered the aforementioned printing device as a destination printer, by using IPP (Internet Printing Protocol) operations, It includes a transmission means for transmitting print data based on the acquired print data to a printer that has requested print data, The aforementioned printing device is characterized by having the ability to receive transmitted print data and perform printing. [Effects of the Invention]

[0011] According to the present invention, when a virtual printer is created, if a virtual printer printing device is not associated with it, a print job conforming to predetermined capability information can be submitted to the virtual printer by setting that capability information.

[0012] Other features and advantages of the present invention will become apparent from the following description with reference to the accompanying drawings. In the accompanying drawings, the same or similar components are given the same reference numeral. [Brief explanation of the drawing]

[0013] The attached drawings are included in the specification and constitute part thereof, illustrating embodiments of the present invention and are used together with the description to explain the principles of the present invention. [Figure 1] A diagram illustrating the configuration of a printing system according to Embodiment 1 of the present invention. [Figure 2] A block diagram illustrating an example of the hardware configuration of a server providing a CPS according to Embodiment 1. [Figure 3] A functional block diagram illustrating an example of the configuration of a software module operating on a CPS according to Embodiment 1. [Figure 4] This diagram illustrates an example of the operation flow for creating a virtual printer on the CPS settings screen according to Embodiment 1. [Figure 5A] This diagram illustrates an example of a screen and operation flow for managing registered devices registered in the CPS according to Embodiment 1. [Figure 5B] This diagram illustrates an example of a screen and operation flow for managing registered devices registered in the CPS according to Embodiment 1. [Figure 6] A sequence diagram illustrating an example of the process of registering a virtual printer registered in the CPS according to Embodiment 1 to an external CPS. [Figure 7] This figure shows an example of registration information for registering a virtual printer registered in the CPS according to Embodiment 1 to an external CPS. [Figure 8] A diagram showing an example of the registration destination URL of an external CPS stored in the CPS configuration DB according to Embodiment 1, and the communication protocol used. [Figure 9] This figure shows an example of the virtual printer capability settings stored in the CPS settings database according to Embodiment 1. [Figure 10]Sequence diagram for explaining an example of the processing flow when assigning an image forming apparatus, which is a physical printer, to a virtual printer in Embodiment 1. [Figure 11] Sequence diagram for explaining an example of the processing flow when an external CPS according to Embodiment 1 receives a print job from a client terminal and performs printing. [Figure 12] Diagram showing a comparison example of the attributes of a print job input from a client terminal according to Embodiment 1 and the attributes of the print job at the time of input to the image forming apparatus. [Figure 13] Sequence diagram for explaining an example of the processing flow when performing a print process via CPS using a client terminal in Embodiment 1. [Figure 14] Sequence diagram for explaining an example of the deletion process of the print job shown in screen 504 of FIG. 5A and screen 508 of FIG. 5B. [Figure 15A] Diagram for explaining an example of the screen and operation flow for managing registered devices registered in the CPS according to Embodiment 2. [Figure 15B] Diagram for explaining an example of the screen and operation flow for managing registered devices registered in the CPS according to Embodiment 2. [Figure 16] Diagram showing an example of a setting example of the capability information of a virtual printer stored in the setting DB of the CPS according to Embodiment 2. [Figure 17] Diagram showing an example of a virtual printer capability selection screen provided by the CPS according to Embodiment 3. [Figure 18] Diagram showing a setting example of the capability information of a virtual printer stored in the setting DB of the CPS according to Embodiment 3.

MODE FOR CARRYING OUT THE INVENTION

[0014] Embodiments of the present invention will be described in detail below with reference to the attached drawings. Note that the following embodiments do not limit the invention to the claims. While multiple features are described in the embodiments, not all of these features are essential to the invention, and the features may be combined in any way. Furthermore, in the attached drawings, the same or similar configurations are given the same reference numerals, and redundant descriptions are omitted.

[0015] [Embodiment 1] Figure 1 is a diagram illustrating the configuration of a printing system according to Embodiment 1 of the present invention.

[0016] Client terminals 101 and 102 submit print jobs to their respective cloud print services (hereinafter referred to as CPS). CPS 104 receives print jobs from client terminal 101 and also acquires print jobs from external CPS 105. External CPS 105 receives and stores print jobs from client terminal 102. Here, CPS 104 is named "CompanyA.example1.co.jp" and external CPS 105 is named "CompanyA.example2.co.jp". Image forming apparatuses 107 to 110 are image forming apparatuses (printing apparatuses) that acquire print jobs from CPS 104 and execute the printing process. In this embodiment, it is assumed that CPS 104 and CPS 105 are different types of cloud print services provided by different service providers. Furthermore, CPS 104 and CPS 105 provide cloud print services to multiple different tenants. A tenant is an organizational unit that provides various services and manages resources on a cloud platform.

[0017] Each of the above components is connected to each other via network 100 so that they can communicate with one another. Network 100 is a mobile communication network such as the Internet, LAN, WAN, LTE, 5G, or a combination thereof. Network 100 only needs to be capable of sending and receiving data.

[0018] Figure 2 is a block diagram illustrating the hardware configuration of the server (information processing device) that provides the CPS104 according to Embodiment 1.

[0019] The CPU 201 directly or indirectly controls each connected device (ROM, RAM, etc.) and executes a program to realize the functions according to Embodiment 1. The ROM 202 stores the boot program, BIOS, etc. The RAM (main memory) 203 is used as the work area of ​​the CPU 201. It is also used as a primary storage unit for loading software modules to realize the functions according to Embodiment 1. The auxiliary storage unit 204 is an HDD (hard disk drive) or SSD (solid state drive) that stores the basic software, such as the OS and software modules. The input unit 205 includes a keyboard and a pointing device. The output unit 206 has, for example, a display unit. This display unit may also have a touch panel function. The input unit 205 and the output unit 206 do not necessarily have to be directly connected and may be connected via a network using an I / F (interface) 207, which will be described later. The I / F 207 is an interface for connecting to the network 100. In this way, the hardware such as the CPU 201, ROM 202, RAM 203, etc. constitute a so-called computer. Furthermore, this server may also be equipped with an ASIC for rendering print data. For illustrative purposes, Embodiment 1 illustrates a case where one CPU 201 uses one memory (RAM 203) to execute each process shown in the flowchart described later, but other configurations are also possible. For example, multiple processors, RAM, ROM, and storage can work together to execute each process shown in the flowchart described later. Alternatively, each process can be executed using multiple server computers. In addition, technologies such as virtualization and containers may be used as appropriate to achieve appropriate resource management for multiple tenants.

[0020] Figure 3 is a functional block diagram illustrating the configuration of a software module operating on the CPS104 according to Embodiment 1. Each software module is stored in the auxiliary storage unit 204, and the CPU 201 loads the software module into the RAM 203 and executes it, thereby realizing the functions shown in this block diagram.

[0021] The transmitting / receiving unit 301 processes communication between the client terminal 101 or the image forming apparatus 107's web browser and the CPS, and transmits and receives data. The control unit 302 executes processing according to the request received by the transmitting / receiving unit 301. The page generation unit 303 generates a web page to return a response to the web browser. The setting management unit 304 stores various setting information related to the CPS 104, information on the cooperating external CPS 105, and information on image forming apparatuses registered in the CPS 104 in the setting DB (database) 307, and controls the retrieval of this information. The authentication unit 305 uses the authentication DB 308, which stores user account information for each CPS, to authenticate users who request to log in to the CPS 104 and to control user authentication requests to external CPSs. The print management unit 306 controls the saving of print jobs received from the client terminal 101 or print jobs acquired from external CPSs in the print job DB 309, and performs image processing such as rendering on print jobs. CPS104 manages the configuration DB307, authentication DB308, job DB308, and print job DB309 on a per-tenant basis. Therefore, users belonging to CompanyA's tenant can use resources (e.g., printers) managed by CompanyA's tenant. However, users belonging to CompanyA's tenant cannot use resources (e.g., printers) managed by a different tenant (e.g., a tenant of a different organization, such as CompanyB).

[0022] Figure 4 illustrates the workflow for creating a virtual printer using the CPS settings screen according to Embodiment 1. This diagram explains the workflow for creating a virtual printer without assigning a physical printer, and then adding the virtual printer.

[0023] First, the tenant administrator requests access to the URL of the CPS104 web server from the web browser on the client terminal 101. Hereafter, the tenant administrator will be simply referred to as the administrator. The transmit / receive unit 301 of the CPS104, upon receiving this access request, forwards the access request received from the web browser on the client terminal 101 to the control unit 302. The control unit 302 interprets the access request, generates response data in the page generation unit 303, and sends the login screen 401, which is the response data, to the client terminal 101 via the transmit / receive unit 301.

[0024] The administrator enters user information, including the administrator username and password, which are pre-registered in the CPS104, via the login screen 401. This user information is then checked against the user information stored in the authentication DB 308 by the authentication unit 305 of the CPS104, and a determination is made as to whether authentication is successful based on that user information. If authentication is successful, the registered device list screen 402 of the CPS104 is displayed.

[0025] The administrator can operate the CPS104 settings change and the registration process for the external CPS105 via screen 402. The CPS104 is controlled by the settings management unit 304 while updating the contents of the settings DB 307.

[0026] In the example shown in screen 402, it is assumed that image forming apparatuses 107-110 are already registered in CPS104. This means that any client terminal compatible with CPS104 can submit print jobs to image forming apparatuses 107-110 via CPS104. The "Name" in screen 402 is the device name (color MFP or BW-MFP) of image forming apparatuses 107-110 registered in CPS104, and is the name displayed on client terminal 101 when searching for a printer from client terminal 101. The "External CPS Registration" column indicates whether the image forming apparatus is registered in the external CPS. In this case, all image forming apparatuses 107-110 are not registered in the external CPS.

[0027] Next, if the administrator wants to create a virtual printer, they select "Virtual Printer Settings" 410 on screen 402. This displays the virtual printer settings screen 403. This virtual printer settings screen 403 is where you configure the virtual printer to be created, setting the name of the virtual printer and which image forming machine (physical printer) to assign to it. On this virtual printer settings screen 403, we will not assign any image forming machines to the virtual printer and set the name of the virtual printer to "Color MFP Series". If you select "OK" here, the virtual printer configured on screen 403 will be created, the setting management unit 304 will save the information of the virtual printer to the setting DB 307 and return to screen 404.

[0028] On screen 404, the virtual printer created on the virtual printer settings screen 403 is registered under the name "Color MFP Series," and "Unassigned" is displayed, indicating that no actual printer (image forming machine) has been assigned to that virtual printer.

[0029] Next, to reassign the image forming apparatus to this virtual printer, select the radio button corresponding to "Color MFP Series" in the registered device list on screen 404 and select "Virtual Printer Settings" 411. This displays the virtual printer settings screen (same as screen 403) which shows the settings for the "Color MFP Series". At this time, it refers to the settings stored in the settings DB 307 and displays the same as the virtual printer settings screen 403 described above. The administrator then selects the image forming apparatus to be assigned to the virtual printer of the "Color MFP Series". If you select Color MFP 107-109, which corresponds to image forming apparatuses 107-109, it will be displayed as shown on screen 405. If you select "OK" at this point, the virtual printer will be reconfigured as set on the virtual printer settings screen 405, the settings management unit 304 will save the virtual printer information to the settings DB 307, and the screen will transition to screen 406. On the virtual printer settings screen 405, image forming apparatuses 107-109 are assigned to the virtual printer, "Color MFP Series".

[0030] Screen 406 shows that the image forming units 107-109, which are color MFPs, are assigned to the virtual printer "Color MFP Series" whose settings were changed on screen 405.

[0031] Figures 5A and 5B illustrate the screen and operation flow for managing registered devices registered in the CPS104 according to Embodiment 1.

[0032] Screen 502 in Figure 5A is the same screen as screen 404 in Figure 4. When the administrator selects "Edit" 521 on screen 502, they are redirected to the device editing screen 503, where they can edit registered device information. Here, for example, the device name and installation location can be edited. Although not shown in the diagram, it is also possible to enable editing of device information such as user access settings on this device editing screen 503.

[0033] Furthermore, on screen 502, the administrator can select a specific device and then select "Delete" 522 on screen 502 to proceed to the device deletion confirmation screen 504. This device deletion confirmation screen 504 is a screen to confirm the deletion of the device information to the administrator. If "Yes" is selected here and the deletion is executed, the system proceeds to the device deletion confirmation screen 505 shown in Figure 5B. In this way, the administrator can confirm that the device in question has been deleted from CPS304. After that, if "OK" is selected on the device deletion confirmation screen 505, the system returns to the registered device list screen 506. At this point, screen 506 displays only the device information that remains after the device information has been deleted.

[0034] Next, with reference to Figures 5A to 9, the process of registering device information to the external CPS 105 will be explained. Figures 5A and 5B show examples of setting screens provided by the CPS 104 according to Embodiment 1, which are accessed and operated by the administrator from the web browser of the client terminal 101.

[0035] Figure 6 is a sequence diagram illustrating the process of registering a virtual printer registered in CPS104 according to Embodiment 1 to an external CPS105. Figure 7 is a diagram showing an example of registration information for registering a virtual printer registered in CPS104 according to Embodiment 1 to an external CPS105. Figure 8 is a diagram showing an example of the registration destination URL of the external CPS105 stored in the settings DB507 and the communication protocol to be used. Note that this information may be changeable by the administrator. Figure 9 is a diagram showing an example of the virtual printer capability settings stored in the settings DB507 of CPS104 according to Embodiment 1. These capability settings are stored in the settings DB507 in advance. For printing capabilities such as color, the minimum capability that any printer can handle is set. For example, the color setting may be set to monochrome only, and stapling and punching capabilities may be set to none.

[0036] In the initial state, the registered device list of CPS104 is as shown in screen 502. That is, in S601, client terminal 101 logs into CPS104, image forming machines 107-110 are registered in CPS104, and the virtual printer "Color MFP Series" is registered without any image forming machines (actual printers) being assigned to it.

[0037] On screen 502, if a specific device is selected and "External CPS Integration" 523 is selected, the screen transitions to the external CPS integration screen 507.

[0038] When "Register" is selected on the external CPS linkage screen 507, the system transitions to the external CPS registration screen 510. Figure 5A shows an example of the external CPS registration screen 510 displayed on the client terminal 101, where the user selects which external CPS to register CPS 104 to. At this time, in S602, the administrator sets CPS 105 as the external CPS to register and "Color MFP Series" as the device name to register on this external CPS registration screen 510, and selects "Execute Registration" 524. The setting management unit 304 of CPS 104, having received the information entered on this external CPS registration screen 510, refers to the external CPS destination URL list in Figure 8 stored in the setting DB 507 and confirms the URL that is the registration destination for external CPS 105. From this, it is determined that the registration URL for external CPS 105 is "https: / / check.example2.co.jp". Therefore, in S603, CPS 104 sends a device registration request to this destination (URL). Upon receiving this registration request, the external CPS105 responds in S604 with a URL for entering authentication information and a temporary password for authentication (PIN code in Embodiment 1).

[0039] Upon receiving a response from the external CPS105, CPS104, in S605, sends an authentication information input screen, such as screen 511 in Figure 5A, to the web browser of the client terminal 101. The administrator, after viewing screen 511, opens the displayed URL in their web browser and enters the account information registered with the external CPS105, as shown in screen 512 in Figure 5B. This sends the user information entered on screen 512 from the web browser to the external CPS105.

[0040] Upon receiving the user information, the external CPS105 performs authentication processing based on that user information in S607. If authentication is successful, it performs registration processing based on the received registration request in S608. Then, in S609, the external CPS105 sends a registration success response and access token information to be used for subsequent communication to the CPS104. Upon receiving this registration success, the CPS104 displays a registration success screen, such as screen 513 in Figure 5A, in S610. Subsequently, in S611, the CPS104 performs registration processing for detailed device information.

[0041] Figure 8 shows an example of the registered destination URL of the external CPS105 stored in the setting DB307 of the CPS104 according to Embodiment 1, and the communication protocol used.

[0042] As can be seen from Figure 8, the external PS105 uses IPP as its communication protocol, so as shown in Figure 7, the detailed registration information is updated in the IPP format. Furthermore, the detailed device information is read from pre-stored device information, such as shown in Figure 9. Thus, as shown in screen 514 of Figure 5A, the process of registering the virtual printer "Color MFP Series" registered in the CPS104 to the external CPS105 can be completed.

[0043] Thus, although it is actually a CPS, by registering its information as an image forming apparatus, the external CPS105 cannot determine whether it is an actual image forming apparatus or a CPS and considers them to be equivalent. Furthermore, as shown in Figure 9, it is registered with the external CPS105 as having the minimum capabilities of a printer. As a result, when a print job is submitted by a user via the external CPS105 when no image forming apparatus is assigned to the virtual printer, a print job that can be printed by any image forming apparatus is generated. Since this print job is then sent from the external CPS105 to the CPS104, even if an image forming apparatus is later assigned to the virtual printer and the print job is to be processed, printing can be executed without any inconsistencies between the printing capabilities of the image forming apparatus and the print settings of the print job.

[0044] Next, referring to Figures 4 and 10, the process of assigning an image forming apparatus to a virtual printer that is not yet assigned to a physical printer according to Embodiment 1 will be explained.

[0045] Figure 10 is a sequence diagram illustrating the processing flow when assigning an image forming apparatus, which is a real printer, to a virtual printer in Embodiment 1.

[0046] Here, at the start of the sequence, the virtual printer settings screen 403 in Figure 4 is set to a state where a virtual printer "Color MFP Series" with no image forming apparatus assigned is created.

[0047] When the administrator logs into CPS104 from the web browser of client terminal 101 using S1001, the registered device list screen 404 of CPS104 shown in Figure 4 is displayed. On this screen 404, the administrator selects "Color MFP Series" and then selects "Virtual Printer Settings" 411, which transitions to the virtual printer settings screen 405 using S1002.

[0048] On screen 405, the name of the virtual printer can be changed, and the associated image forming machine can be selected. Here, the color MFPs corresponding to image forming machines 107-109 will be assigned collectively to a virtual printer called "Color MFP Series". When the administrator selects the target image forming machine and clicks "OK" on screen 405, in S1003, the setting management unit 304 saves the virtual printer's capability information to the setting DB 307. Then, in S1004, it is checked whether the virtual printer is registered with the external CPS 105. If the virtual printer is registered with the external CPS 105, in S1005, detailed information about the virtual printer is sent to the external CPS 105 where it is registered. This detailed information about the virtual printer includes the virtual printer's capability information. This capability information may be based on AND conditions or OR conditions for the associated image forming machines. It may also be selectable by setting. Once the process of assigning an image forming machine to the virtual printer is complete, a registered device list like screen 405 is displayed. On the other hand, if the virtual printer is not registered with the external CPS105 in S1004, screen 405 will be displayed without taking any action.

[0049] Referring to Figures 11 and 12, the process when the external CPS 105 according to Embodiment 1 receives a print job from the client terminal 102 and prints will be described.

[0050] Figure 11 is a sequence diagram illustrating the processing flow when the external CPS 105 according to Embodiment 1 receives a print job from the client terminal 102 and prints it. Figure 12 is a diagram illustrating a comparison of the attributes of a print job submitted from the client terminal 102 according to Embodiment 1 and the attributes of the print job at the time it is submitted to the image forming apparatus 107. Here, we will explain using an example where user Alice prints using the client terminal 102. Here, the client terminal 102 is Windows® OS, the external CPS 105 is Azure®, and from Figure 9, the communication protocol used by the external CPS 105 is IPP (Internet Printing Protocol).

[0051] First, in S1101, Alice logs in to the external CPS105 from client terminal 102 using the external CPS105 account name "aaaAlice@companyA.example2.co.jp" registered in the external CPS105. In this embodiment, it is assumed that the user account for logging in to client terminal 102 is managed by a management service on the cloud platform providing the external CPS105 (for example, Azure Active Directory). However, it is not limited to this. For example, client terminal 102 may be managed by local Active Directory (AD). In this case, Alice may first log in to the local AD with a different account, and after logging in, enter the external CPS105 account to link it with the external CPS105. The OS of client terminal 102 remembers the link between the local AD account and the cloud management service account, reducing the effort required for user input in subsequent instances.

[0052] Next, in S1102, client terminal 102 searches for printers registered in external CPS 105. This search includes information that identifies the tenant. For example, if Alice performs the search, the tenant of external CPS 105 (ompanyA.example2.co.jp) stores the information registered in S611 mentioned above. Therefore, the "Color MFP series," which is an image forming apparatus associated with the tenant to which Alice belongs (ompanyA.example2.co.jp), is found.

[0053] Next, Alice selects a print job and instructs the "Color MFP Series" to execute the print. Upon receiving this print execution instruction, the client terminal 102 sends the print job to the external CPS 105 in S1103. Here, as shown in Figure 9, the "Color MFP Series" has only minimal capabilities, so the created print job can be printed by any image forming apparatus. Upon receiving this print job, the external CPS 105 saves the print job to its storage in S1104.

[0054] On the other hand, since the "Color MFP Series" is registered with the external CPS105, the CPS104 periodically checks in S1105 whether or not there are print jobs for the image forming apparatus 107 in the external CPS105. In Embodiment 1, the CPS104 sends a request to the external CPS105 to check for print jobs at regular time intervals. This polling interval may be an interval specified by the external CPS105, or an interval set in the CPS104. Alternatively, instead of checking by polling, the external CPS105 and CPS104 may be assumed to be constantly connected, and when a print job is saved in the external CPS105, the existence of the print job may be notified to the CPS104 by push notification.

[0055] In S1105, if CPS104 determines that there is a print job, in S1106 it requests external CPS105 to acquire the print job. At this time, since CPS104 makes the request based on the access token obtained in S609, external CPS105 determines that CPS104 is a trusted party. Then, in S1107, external CPS105 sends the requested print job to CPS104. At this time, the communication protocol adopted by external CPS105 is, for example, IPP, so the print job is in IPP format as shown in 1201 of Figure 12, and S1103, S1105~S1107 are also executed using IPP operations.

[0056] Having acquired the print job, CPS104 first determines in S1108 whose print job it is. If it is the IPP protocol, it will determine this by checking fields such as "Requesting-user-name". From 1201 in Figure 12, Alice's external CPS105 account information is obtained, and this is queried against the authentication information stored in the authentication DB307 to identify Alice's CPS104 account.

[0057] Next, the system refers to the access permission list set for the image forming apparatus 107 to determine whether Alice is an authorized user of the image forming apparatus 107. If Alice is an authorized user, the acquired print job is discarded, and an access error response is sent to the external CPS 105. On the other hand, if Alice is an authorized user, in S1109 the acquired print job is saved to the print job DB 309 of the CPS 104. Then, in S1110, the CPS 104 notifies the external CPS 105 that it has finished acquiring the print job. Upon receiving the notification that the print job acquisition is complete, the external CPS 105 determines in S1111 that the print job is no longer needed and deletes it.

[0058] Next, in S1112, CPS104 converts the data attributes of the print job so that it can send and receive data with the image forming apparatus 107. Here, the data attributes of the print job are converted from the communication protocol format of the external CPS105 (e.g., IPP) to the communication protocol format adopted by CPS104 (e.g., HTTP). Assuming that CPS104 employs a proprietary HTTP-based protocol, for example, it converts the print job attributes to those shown in 1202 of Figure 12. Here, the value of "Requesting-user-name" is converted from authentication information (not shown) to "Alice" or "Alice@companyA.example1.co.jp" which CPS104 can interpret.

[0059] Since the image forming apparatus 107 is registered in CPS104, in S1113, the image forming apparatus 107 periodically checks CPS104 at regular intervals to see if there are any print jobs addressed to it. This polling interval may be the interval specified by CPS104 or the interval set in the image forming apparatus 107. Alternatively, instead of checking by polling, CPS104 and the image forming apparatus 107 may be assumed to be constantly connected, and when a print job is saved in CPS104, the image forming apparatus 107 may be notified of the existence of the print job by a push notification. In this case, the print job confirmation request would want to check all print jobs addressed to the image forming apparatus 107, which can be achieved, for example, in the case of IPP, by storing False in the "Which-jobs" attribute.

[0060] Alternatively, if the image forming apparatus 107 is login-managed, a print job confirmation request may be sent when a specific user logs in. In this case, the print job confirmation request will only send confirmation requests for the jobs of the logged-in user. For example, in the case of IPP, this can be achieved by setting the "Which-jobs" attribute to True and storing Alice's username or account information in an attribute that can identify the user, such as "Requesting-user-name" or "Requesting-user-uri".

[0061] In response to the print job confirmation in S1113, the CPS104 checks the assignment of a virtual printer, and if the image forming apparatus 107 is assigned to the virtual printer "Color MFP Series", it notifies the image forming apparatus 107 that there is a print job.

[0062] When the image forming apparatus 107 determines that there is a print job addressed to it, in S1114 it requests the acquisition of the print job using the communication protocol (e.g., HTTP) adopted by the CPS 104. As a result, in S1115, the print job is sent from the CPS 104 to the image forming apparatus 107. Upon receiving this print job, the image forming apparatus 107 executes the printing process based on the print job in S1116 and outputs the print result. At this time, if the image forming apparatus 107 has a hold setting enabled, it does not execute the printing process based on the print job, but instead saves the print job to the auxiliary storage device of the image forming apparatus 107. When printing is completed, in S1117 the image forming apparatus 107 notifies the CPS 104 that it has completed acquiring the print job. As a result, in S1118 the CPS 104 deletes the print job, and this series of processes ends.

[0063] In this way, the system can identify which user a print job submitted to the external CPS 105 is intended for, and transmit the information to the image forming apparatus 107 via the CPS 104 for printing.

[0064] Next, an example of the process when Alice uses client terminal 101 to perform a print operation via CPS104 will be explained with reference to Figure 13.

[0065] Figure 13 is a sequence diagram illustrating the processing flow when performing a print operation via CPS104 using the client terminal 101 in Embodiment 1.

[0066] First, in S1301, Alice logs in to CPS104 from client terminal 101. This login can be done via methods such as logging into the CPS104 web server or using a dedicated application for CPS104. The CPS104 account used is "Alice@companyA.example1.co.jp".

[0067] Next, in S1302, the client terminal 101 sends a search request to the CPS 104 to find a printer that Alice can use. Upon receiving this printer search request, the CPS 104 refers to the authentication information (not shown) in S1303 and responds with information on a printer that Alice can use. In this case, it responds with the image forming apparatus 107. Then, in S1304, Alice selects an arbitrary print job and sends the print job to the CPS 104. Here, the communication protocol used is the communication protocol adopted by the CPS 104 (for example, HTTP), and the attributes of the print job data are in the format shown in 1202 of Figure 12. After this, the processing in S1305 to S1311 is the same as S1109, S1113 to S1118 in Figure 11 above, so the explanation is omitted.

[0068] As explained above, CPS104 can not only acquire print jobs from the external CPS105, but also have the functionality to receive print jobs from client terminals as a CPS itself.

[0069] Figure 14 is a sequence diagram illustrating the process of deleting print jobs, as shown in screen 504 of Figure 5A and screen 508 of Figure 5B.

[0070] If the administrator wants to remove a registered device, including a virtual printer, from CPS104, in S1401, they select the device to be removed from the registered device list screen 502 in Figure 5A and select "Delete" 522. Upon receiving this deletion instruction, CPS104 determines whether the device is already registered with the external CPS105. Here, we assume it is already registered with the external CPS105. In this case, the information of CPS104 registered with the external CPS105 must first be deleted. Therefore, in S1402, CPS104 sends a request to the external CPS105 to delete the device information registered in S608 in Figure 6. Upon receiving this deletion request, the external CPS105 executes the deletion process for the device in S1403.

[0071] Meanwhile, after CPS104 sends a deletion request to external CPS105, S1404 deletes the information of the device to be deleted from CPS104's configuration DB307. Note that if the device is not registered with external CPS105, processes S1402 and S1403 are skipped. Also, if the administrator wants to delete only the registration to external CPS105 and not delete the registration from CPS104 on the external CPS linkage deletion screen 508, process S1404 is skipped.

[0072] As explained above, even when linked with an external CPS, device deletion can be performed without any registration inconsistencies.

[0073] As described above, Embodiment 1 allows for the creation of a virtual printer without associating it with a physical printer. A pre-registered physical printer can then be assigned to this virtual printer. Furthermore, since the virtual printer is registered as having the minimum necessary printer capabilities, when a print job is submitted by a user, a print job that can be printed on any printing device is generated and sent. Therefore, even if a printing device (physical printer) is later assigned to the virtual printer, printing can be executed without any inconsistencies between the printing capabilities of that device and the print settings of the print job.

[0074] [Embodiment 2] Embodiment 2 describes an example in which the administrator can set the capabilities information of the virtual printer when registering the virtual printer with an external CPS. Note that the configuration of the printing system, as well as the hardware configuration of the server and image forming apparatus, etc., in Embodiment 2 are the same as those in Embodiment 1 described above, so their descriptions will be omitted.

[0075] Figures 15A and 15B illustrate the screens and operation flow for managing registered devices registered in the CPS according to Embodiment 2, and depict screens related to the external CPS linkage operation shown in Figures 5A and 5B. In Figures 15A and 15B, the external CPS registration screen 1510 and the virtual printer capability setting screen 1515 are added in place of the external CPS registration screen 510 in Figure 5A. Also, screens 1502, external CPS linkage screen 1507, and screens 1511-1514 are the same as screens 502, 507, and 511-514 in Figures 5A and 5B, respectively, so their explanations are omitted.

[0076] Figure 16 shows an example of the settings for virtual printer capability information stored in the setting DB307 of the CPS104 according to Embodiment 2.

[0077] The administrator accesses and operates the system from a web browser on a client terminal, and the operation from screen 1502 to screen 1507 is the same as in Embodiment 1. After that, selecting "Register" on the external CPS linkage screen 1507 transitions to the external CPS registration screen 1510. On this external CPS registration screen 1510, the external CPS to be registered and the name of the registration device are set, as in Embodiment 1. Furthermore, the capability information of the virtual printer can be set. Selecting "Set virtual printer capability information" 1520 on the external CPS registration screen 1510 transitions to the virtual printer capability information setting screen 1515 shown in Figure 15B.

[0078] The virtual printer capability information settings screen 1515 allows you to configure the virtual printer's capabilities, including print settings such as color and duplex printing. Furthermore, there is a checkbox 1521 to select whether or not to configure the virtual printer capability information. If "OK" is selected with checkbox 1521 checked, the virtual printer capabilities configured on this screen are written to the virtual printer capability settings data shown in Figure 16. In this case, the "Virtual Printer Capability Information Settings" on the external CPS registration screen 1510 will display "Enable". On the other hand, if "OK" is selected with checkbox 1521 unchecked, the virtual printer capability information is not written to the virtual printer capability settings data. In this case, the "Virtual Printer Capability Information Settings" on the external CPS registration screen 1510 will display "Disable".

[0079] Subsequently, when "Execute Registration" 1522 is selected on the external CPS registration screen 1510, the configuration of the virtual printer's capabilities information to the external CPS 105 can be completed by performing the operations from screen 1511 to screen 1514, similar to Embodiment 1.

[0080] In the screen operations described above, the processes from S601 to S610 in the aforementioned Embodiment 1 are performed. Subsequently, when sending detailed information of the virtual printer, if "Set virtual printer capability information" on screen 1510 in Figure 15A is set to "Yes", the virtual printer capability information stored in data 1600 is sent. If "Set virtual printer capability information" on the external CPS registration screen 1510 is set to "No", the default capability information stored in the setting DB 307 shown in Figure 16 is sent.

[0081] As described above, according to Embodiment 2, when registering a virtual printer with an external CPS, the administrator can also configure the printing capabilities and post-processing of the virtual printer. If the administrator does not configure the printing capabilities of the virtual printer, the default printing capabilities of the virtual printer will be used.

[0082] [Embodiment 3] Embodiment 3 describes an example of setting default printing capabilities for each product series in the process of setting the capabilities of a virtual printer when registering the virtual printer with an external CPS. Embodiment 3 describes the method of individually setting the capabilities of a virtual printer in Embodiment 2 by selecting from a number of predetermined combinations of default printing capabilities. Note that the configuration of the printing system, and the hardware configuration of the server and image forming apparatus in Embodiment 3 are the same as in Embodiment 1 described above, so their descriptions will be omitted.

[0083] Figure 17 shows an example of the virtual printer capability selection screen provided by the CPS104 according to Embodiment 3. In Embodiment 3, settings are made using the same screen transitions as in Figures 15A and 15B. However, instead of the virtual printer capability information setting screen 1515 in Figure 15B, the screen shown in Figure 17 is displayed.

[0084] Figure 18 shows an example of the virtual printer capability settings stored in the CPS104 setting DB307 according to Embodiment 3.

[0085] The capability settings for "Default (General Settings)," "ImageRunner ADV Series," "ImageCLASS Series," and "Inkjet Printer Series" are pre-saved in the settings DB307. "Default (General Settings)" saves the minimum capabilities of the basic printer. Other capability settings save the basic capabilities corresponding to the printer product series.

[0086] Currently, the administrator accesses and operates the system from a web browser on a client terminal, and the operation from screen 1502 in Figure 15A to the external CPS registration screen 1510 is the same as in Embodiment 2. After that, selecting "Set virtual printer capability information" 1520 on the external CPS registration screen 1510 transitions to the virtual printer capability selection screen in Figure 17.

[0087] On this virtual printer capability selection screen, you can select the type of device you plan to register. The user selects the device type based on the type of printer they intend to associate with the virtual printer, and then selects OK. For example, if the printer to be associated with the virtual printer is an inkjet printer, select "Inkjet Printer Series". If the printer to be associated has not yet been decided, select "General Settings". In the example in Figure 17, "ImageRunner ADV Series" is selected.

[0088] When OK is selected on the virtual printer capability selection screen, the system returns to screen 1510 in Figure 15A, and the printer is registered in the same manner as in Embodiment 2. Subsequently, when sending detailed information about the virtual printer, the capability setting information corresponding to the item selected on the virtual printer capability selection screen in Figure 17 is read from the setting DB 307 shown in Figure 18, and this capability information is sent to the external CPS 105.

[0089] As described above, according to Embodiment 3, the user can configure the capabilities of the actual printer to be registered with the virtual printer simply by selecting the printing capability corresponding to the type of actual printer to be registered with the virtual printer.

[0090] (Other embodiments) The present invention can also be realized by supplying a program that implements one or more of the functions of the above-described embodiments to a system or device via a network or storage medium, and by having one or more processors in the computer of that system or device read and execute the program. It can also be realized by a circuit (e.g., an ASIC) that implements one or more functions.

[0091] The present invention is not limited to the embodiments described above, and various modifications and variations are possible without departing from the spirit and scope of the invention. Accordingly, the following claims are attached to make the scope of the invention public. [Explanation of Symbols]

[0092] 101…Client terminal, 104…CPS, 105…External CPS, 107~110…Image forming apparatus, 201…CPU, 202…ROM, 304…Setting management unit, 307…Setting DB, 510,1510…External CPS registration screen

Claims

1. A printing device that communicates with a first server system that provides a first cloud print service for sending print data to a printer, The first server system described above is A registration means for registering the printing device as a destination printer with a second server system that provides a second cloud print service for sending print data to a printer, An acquisition means for acquiring print data from the second server system, which has registered the aforementioned printing device as a destination printer, by using IPP (Internet Printing Protocol) operations, It includes a transmission means for transmitting print data based on the acquired print data to a printer that has requested print data, The aforementioned printing device is characterized by receiving transmitted print data and performing printing.

2. The printing device according to claim 1, characterized in that the first server system specifies a name when registering the printing device as a destination printer with the second server system.

3. The printing apparatus according to claim 1 or 2, characterized in that the second cloud print service is a cloud print service that transmits print data to a printing apparatus.

4. The printing apparatus according to any one of claims 1 to 3, characterized in that the print data based on the acquired print data is converted into print data in the format of a protocol used by the first server system to communicate with the printer.

5. The printing device according to any one of claims 1 to 4, characterized in that the printer capability information stored in the second cloud print service when the printing device is registered as a destination printer is registered using the attribute name and attribute value defined in the IPP.

6. The printing apparatus according to claim 5, characterized in that the stored printer capability information includes information regarding color settings.

7. The printing apparatus according to any one of claims 1 to 6, characterized in that the first server system is a computer system including a plurality of server computers.

8. A control method for controlling a printing device that communicates with a first server system that provides a first cloud print service for sending print data to a printer, The first server system registers the printing device as a destination printer with a second server system that provides a second cloud print service for sending print data to a printer; The acquisition step involves acquiring print data from the second server system, which has registered the aforementioned printing device as a destination printer, by using IPP (Internet Printing Protocol) operations. A transmission step that transmits print data based on the acquired print data to a printer that has requested print data, A control method characterized by having the following features.

9. The control method according to claim 8, characterized in that, in the registration step, when registering the first server system as a destination printer with respect to the second server system, a name is specified.

10. The control method according to 8 or 9, characterized in that the second cloud print service is a cloud print service that sends print data to a printer.

11. The control method according to any one of claims 8 to 10, characterized in that the print data based on the acquired print data is print data converted into print data in the format of a protocol used by the first server system to communicate with the printer.

12. The control method according to any one of claims 8 to 11, characterized in that the printer capability information stored in the second cloud print service when the first server system is registered as a destination printer is registered using the attribute name and attribute value defined in the IPP.

13. The control method according to claim 12, characterized in that the stored printer capability information includes information regarding color settings.

14. The control method according to any one of claims 8 to 13, characterized in that the first server system is a computer system including a plurality of server computers.

15. A program for causing a computer to function as one of the means of a printing apparatus according to any one of claims 1 to 7.