Image processing apparatus, method of providing cloud printing service, and program storage medium

By setting up a correspondence between virtual printers and physical printers in the cloud printing system, the problem of concentrated virtual printer load is solved, enabling efficient print job delivery and convenient user search, thus improving system performance and user experience.

CN114546301BActive Publication Date: 2026-03-17CANON KK
View PDF 3 Cites 0 Cited by

Patent Information

Authority / Receiving Office
CN · China
Patent Type
Patents(China)
Current Assignee / Owner
Filing Date
2021-11-16
Publication Date
2026-03-17

AI Technical Summary

Technical Problem

In a cloud printing system, when multiple printing devices are associated with a virtual printer, the load may be concentrated on the virtual printer software module, resulting in communication and performance delays and making it difficult to find the desired printing device.

Method used

By setting up a correspondence between virtual printers and one or more registered printers, the movement and transmission of print jobs can be controlled, avoiding the concentration of load on virtual printers. By employing job control and transmission control methods, print jobs can be directly transmitted to the real printer queue.

Benefits of technology

This effectively avoids the concentration of virtual printer load, improves system performance and the ease with which users can find the desired printing device, and reduces communication latency.

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure CN114546301B_ABST
    Figure CN114546301B_ABST
Patent Text Reader

Abstract

An image processing apparatus, a method of providing a cloud printing service, and a program storage medium are disclosed. A print apparatus registers the print apparatus in a cloud printing service, and generates a printer queue that stores a print job to be transmitted to the print apparatus on the cloud printing service. If the print apparatus is associated with a virtual printer on the cloud printing service, the print apparatus acquires information of a print job managed by the virtual printer from the cloud printing service. If an operation for printing the print job managed by the virtual printer is received, the print apparatus gives an instruction for moving a print job indicated based on at least the acquired information of the print job to a printer queue for the print apparatus provided on the cloud printing service, and acquires the moved print job.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] This invention relates to an image processing apparatus, a method for providing cloud printing services, and a program storage medium. Background Technology

[0002] A printing system has been proposed in which print jobs placed via the cloud are transmitted to an image processing device, such as a printing device, and executed (e.g., Japanese Patent Application Publication No. 2012-133489). In such a printing system that performs cloud printing, an administrator registers the printing device in a cloud printing service (hereinafter also referred to as CPS). Users authorized to use the cloud printing service then use a personal client terminal to search for printers registered in the CPS, add printers, set desired print settings, and transmit print jobs to the CPS. When a print job is executed, the CPS outputs the print job to the printing device, and the printing device executes the print job based on the output print job.

[0003] Examples of the above printing systems are mentioned in PWG5100.18, RFC3995, and RFC3996. These standards also define methods for cloud printing services to notify printing devices of events. As one method for implementing notifications, a notification method is defined in which the printing device periodically queries the cloud printing service and receives event notifications in response to the queries. A notification method is also defined in which the printing device and the CPS are always connected, and when an event occurs in the CPS, the event is notified to the printing device via push notification.

[0004] If an organization uses cloud printing services, then all the printers owned by that organization are registered with the cloud printing service. For example, organizations such as large companies and government agencies often own a large number of printers, and many of these printers are registered with the cloud printing service.

[0005] In the above environment, if a user searches for a printing device registered in the cloud printing service from their client terminal, dozens or hundreds of printing devices will be displayed in the search results, making it difficult to find the desired printing device.

[0006] One could imagine creating virtual printers on cloud printing services to manage multiple printing devices as a single printer, and displaying the virtual printer as a representative of the multiple printing devices in search results.

[0007] However, if a large number of printing devices are simply associated with a virtual printer, the load may concentrate on the software module implementing the virtual printer. For example, multiple printing devices may request print job data from the same virtual printer. In this case, multiple data accesses may be concentrated on the virtual printer on the cloud printing service for an extended period. Specifically, while printing device A is retrieving print job data input by user A, printing device B may respond to a request from user B to retrieve print job data input by another user B. If these multiple accesses or data transmission / reception controls utilize the virtual printer as a single software module, this can lead to communication and performance delays. Summary of the Invention

[0008] According to an embodiment of the present invention, a method for providing cloud printing services is provided. The method includes: a setting means configured to set a correspondence between a virtual printer and one or more registered printers based on user operation; a job control means configured to move the target print job to the queue of the first registered printer if a predetermined request is received from a first registered printer whose correspondence has been set via the setting means, specifying a print job stored in a queue of the virtual printer as the target; and a transmission control means configured to transmit the print job corresponding to the request to the first registered printer if a request is received from the first registered printer to retrieve a print job stored in the queue of the first registered printer.

[0009] Further features of the invention will become clear from the following description of exemplary embodiments with reference to the accompanying drawings. Attached Figure Description

[0010] Figure 1 This is a diagram illustrating an example of a printing system.

[0011] Figure 2 This is a diagram illustrating an example of print processing using a cloud printing service.

[0012] Figure 3 This is an example image illustrating a screen related to printer search.

[0013] Figure 4 This is a schematic diagram illustrating an example of the hardware configuration of a printing device.

[0014] Figure 5 This is an example of a functional block diagram of a printing device.

[0015] Figure 6This is a diagram illustrating an example of processing within the entire system.

[0016] Figure 7 This is an example of a screen displayed when searching for a virtual printer.

[0017] Figure 8 This is an example diagram illustrating a list of printers managed by a cloud printing service.

[0018] Figure 9 This is an example diagram of the setup screen in a printing device.

[0019] Figures 10A to 10C This is an example of a login screen and a screen displayed during login.

[0020] Figure 11A and 11B This is an example image showing a task list screen.

[0021] Figure 12 This is a flowchart illustrating an example of the operation process of a printing device.

[0022] Figure 13 This is a flowchart illustrating an example of the login process.

[0023] Figure 14 This is a diagram illustrating the printing process when a print job input event occurs.

[0024] Figures 15A to 15F This is a diagram illustrating an example of packets exchanged during cloud printing.

[0025] Figures 16A to 16C This is an example image showing a screen used to set up cloud printing.

[0026] Figures 17A to 17D This is an example image showing a screen used to set up cloud printing.

[0027] Figure 18 This is an example diagram illustrating the process of setting up a virtual printer.

[0028] Figure 19 This is a flowchart illustrating an example of a process performed by a printing device.

[0029] Figures 20A to 20C This is an example image showing the settings screen of the cloud printing service.

[0030] Figures 21A to 21C This is an example image showing the settings screen of the cloud printing service.

[0031] Figures 22A to 22D This is an example image showing the settings screen of the cloud printing service.

[0032] Figure 23 This is an example diagram illustrating the process of setting up a virtual printer.

[0033] Figure 24 This is a diagram illustrating an example of grouping for associated notifications.

[0034] Figure 25 This is a diagram illustrating the operation of the printing device when providing associated notifications. Detailed Implementation

[0035] (First Embodiment)

[0036] <System Configuration>

[0037] Figure 1 This is a block diagram illustrating the system configuration of this embodiment.

[0038] In this embodiment, the printing device instructs the virtual printer on the cloud printing service to move the print job corresponding to the user of the printing device to the printer queue of the printing device.

[0039] Figure 1 The system shown includes multiple printing devices 101 and 102, a cloud printing service 103, and a client terminal 104. Client terminal 104 is a computer that places print jobs into the cloud printing service 103 in response to user actions. Cloud printing service 103 is a service that stores image processing-related jobs (e.g., print jobs) received from client terminals and outputs jobs to printing devices in response to requests from printing devices. Each service provided by cloud printing service 103 is implemented using server resources (such as processors, memory, and storage devices) of a so-called general-purpose computer configured to implement the processing of this embodiment. Cloud printing service 103 can be implemented using computing resources provided, for example, by a virtual machine (cloud service), and can be implemented using an information processing device such as a server device. Cloud printing service 103 can also be implemented using multiple cooperating server devices, etc. The scope of the invention is not limited to print jobs for print processing. In addition to print processing, the invention can also be applied to jobs related to any image processing (such as image data reading processing, processing / editing processing, and delivery processing to a message sharing system).

[0040] Next, refer to Figure 2 and 3 This will briefly describe the printer's registration with the cloud printing service 103 and the use of cloud printing.

[0041] The administrator registers each of printing devices 101 and 102 in the cloud printing service 103. Figure 2(S201 to S210). Therefore, a printer queue for each printing device is generated on the cloud printing service. When a user operates the client terminal 104 to request the cloud printing service 103 to search for a printer, the search results are displayed (S211 to S214). For example, by operating... Figure 3 Screen 301 is used to perform a printer search, and the search results are displayed as shown in screen 302. When the user selects a printing device from the search results, the printing device is registered and displayed on screen 303. Figure 2 (S215 and S216 in the original text). Upon completion of registration, the user can execute a print job via cloud printing service 103 using the printing device registered on the client terminal. The user selects the printing device on the cloud printing service as the output destination printer and provides a print instruction. Client terminal 104 generates print data based on the print target data. The print job, including the generated print data and print settings, is transmitted to cloud printing service 103 (S215 and S216 in the original text). Figure 2 (S217 and S218 in the above). When a print job is placed in the printer queue of the cloud printing service 103, an event is reported one-to-one to the printing device 101, which is the printer corresponding to that queue. The printing device 101 that has received the event notification retrieves the print job from the printer queue on the cloud printing service 103 and performs the printing process (S219 to S222).

[0042] The cloud printing service 103 of this embodiment provides the ability to manage multiple printing devices under the cloud printing service 103 in association with a virtual printer. The virtual printer and association will be described later.

[0043] Will refer again Figure 1 Printing devices 101 or 102 are examples of image processing devices that obtain image processing-related jobs (print jobs) from cloud printing service 103 and perform image processing. Image processing devices to which this invention is applicable include, for example, printers, copiers, digital multifunction peripherals, and 3D printers. Printing devices 101 and 102 are communicatively connected to cloud printing service 103 via network (NW) 100 and the Internet. Client terminal 104 and cloud printing service 103 are communicatively connected to each other via the Internet. The number of printing devices is not limited to two.

[0044] <Hardware Configuration of Printing Device>

[0045] Figure 4 This is a schematic diagram illustrating an example of the hardware configuration of a printing device.

[0046] The printing apparatus 101 includes a control unit 412, an operation unit 409, a scanner 410, and a printer 411. The control unit 412 has a CPU 401 connected to a network I / F 408 and controls the entire printing apparatus 101. The operation unit 409 is a touch-operated display and, according to this embodiment, displays various setting screens. Users or administrators can perform various settings by operating the operation unit 409. The scanner 410 is a scanning engine that scans image data. The printer 411 is a printer engine that prints images on sheet material based on print jobs received from an external device via the network I / F 408. The printer 411 prints images on sheet material such as paper based on print jobs received from an external device or cloud printing service 103. The printed sheet material is output to an output tray (not shown).

[0047] The control unit 412, including the central processing unit (CPU) 401, controls the operation of the entire printing device 101. The CPU 401 reads and executes control programs stored in the ROM 402 or storage device 404, and directly or indirectly controls each processing unit of the printing device 101. The basic input / output system (BIOS) is stored in the ROM 402. ROM stands for Read-Only Memory.

[0048] RAM 403 is a storage device used as the working area of ​​CPU 401 or as the main storage device for loading software modules used to implement the present invention. RAM stands for Random Access Memory. Storage device 404 is a storage device such as HDD or SSD in which the operating system (OS) and software modules, which are the basic software, are stored. HDD stands for Hard Disk Drive. SSD stands for Solid State Drive. Storage device 404 also stores image data, print data, various setting information of printing device 101, etc.

[0049] As described above, hardware configurations such as CPU 401, ROM 402, RAM 403, and storage device 404 constitute a so-called computer. The printing device 101 may also include an ASIC or similar component that presents printed data. In this embodiment, for the sake of description, the case where a single processor (CPU 401) uses a single memory (RAM 403) to execute each process shown in the flowchart described later is illustrated; however, other modes may be used. For example, multiple processors, RAMs, ROMs, and storage devices may cooperate to execute each process shown in the flowchart described later. Processes such as printing, reading, and data transmission / reception are implemented cooperatively with hardware connected to the I / F.

[0050] The computer used as the physical resource for providing cloud printing service 103 also has the same configuration as the CPU 401 to storage device 404 and network I / F 408 included in control unit 412. The computer used as the physical resource provides each function of the cloud printing service by reading the software module group that provides the cloud printing service functionality into memory and using the processor to execute the software module group.

[0051] The printing device 101 will be further described. Scanner I / F 406 acts as an intermediary for communication between control unit 412 and scanner 410. Printer I / F 407 acts as an intermediary for communication between control unit 412 and printer 411. Network I / F 408 is an interface for connecting to NW 100, the Internet, an office local area network (LAN), etc. The configuration of printing device 102 is the same as that of printing device 101.

[0052] <Software Configuration of Printing Device>

[0053] Figure 5 This is an example of a functional block diagram of a printing device.

[0054] Figure 5 The diagram illustrates the main processing unit used to implement the present invention. Figure 5 The function of each processing unit of the printing apparatus 101 shown is through Figure 4 The CPU 401 in the system executes a program for implementing the present invention.

[0055] The printing device 101 includes a printer registration unit 2001, a virtual printer setting unit 2002, a list information acquisition unit 2003, a control unit 2004, a job acquisition unit 2005, an enable / disable setting unit 2006, a token management unit 2007, and a communication unit 2008.

[0056] The printer registration unit 2001 registers the printing device 101 in the cloud printing service 103, and generates a printer object on the cloud printing service 103 to store print jobs to be transmitted to the printing device 101. The printer object is a software module that has the function of temporarily spooling print jobs received from the outside for the printing device 101, and transmitting the spooled print jobs to the printing device 101, which has a printer engine as a physical resource. For example, according to... Figure 2The method shown in S201 to S204 performs the registration process for the printing device 101. That is, when the printer registration unit 2001 makes a registration request for the printer (printing device 101) via the communication unit 2008, the printing device 101 is registered as a printer under the cloud printing service 103. When the registration is completed, a printer object for transmitting print jobs to the printing device 101 is generated in the cloud printing service 103. An access token (first access token) for accessing the cloud printing service 103 and a query destination URL are published.

[0057] When a print job is placed in the printer queue for printing device 101, cloud printing service 103 notifies printing device 101 that a new print job has occurred (S219). Upon receiving the notification, printing device 101 sends a request to cloud printing service 103 for the print job, including a first access token (S220). Upon receiving the request, cloud printing service 103 verifies the access token and determines if the request is valid. If the request is valid, the print job is sent to printing device 101 in response to the request. Printing device 101 prints an image on a sheet based on the print job received from cloud printing service 103. When printing based on the print job is completed, the job is removed from the printer queue. As described above, print jobs placed in the printer queue for printing device 101 are sequentially transmitted to printing device 101.

[0058] Next, the virtual printer function in the cloud printing system of this embodiment will be described. On the cloud printing service 103, a virtual printer object can be generated for the purpose of managing multiple image processing devices as a single printer. In the following description, the virtual printer object provided on the cloud printing service 103 for managing multiple image processing devices as a single printer will be referred to as a virtual printer. The virtual printer can be associated with one or more subordinate real printer devices, print servers, etc., that actually perform printing. On the other hand, the virtual printer queue (virtual printer queue) is configured such that the output destination of the print job is not linked to it. Therefore, print jobs placed in the virtual printer queue are retained in the queue.

[0059] On the other hand, the virtual printer is configured to appropriately respond to queries from the associated printing device (e.g., printing device 101) regarding information related to the virtual printer queue. The printing device 101 associated with the virtual printer can obtain list information representing the bibliographical items of print jobs placed in the virtual printer queue. That is, the virtual printer acts as a front-end module that receives and temporarily stores print jobs, and also exchanges bibliographical information with the real printer until it receives an actual print request from the affiliated printing device.

[0060] In this embodiment, to prevent the load from being concentrated on the software module configuring the virtual printer, the printer object prepared for the real printer, which is another software module, outputs print jobs managed by the virtual printer. Specifically, when a predetermined request (movement request) is received from the printing device to specify a print job stored in the virtual printer queue as the target, the cloud printing service 103 performs the following processing: The cloud printing service 103 moves the print job designated as the target to the printer queue provided to the printing device (the printer queue for the real printer) (job control step). When the movement is complete, the moved print job becomes a print job managed by the printer object provided for the real printer. If the cloud printing service 103 receives a request from the printing device to retrieve a print job stored in the printer queue provided to the printing device, then the cloud printing service 103 transmits the print job corresponding to the request to the printing device (transmission control step). Therefore, print jobs placed in the printer queue for the real printer are sequentially transmitted to the real printer and printed. That is, large-scale data communication with the real printer is performed by the printer object prepared for the real printer, not the virtual printer.

[0061] This refers to the use of printer objects—software modules that prepare for real printers (with a one-to-one correspondence between printer queues and output destinations)—as backend modules for load balancing. In other words, in service 103, the processing of the software modules implementing the virtual printer and the processing of the software modules implementing the printer objects for real printers operate independently in separate processes. Therefore, it is possible to prevent the load from being concentrated on the processing used to implement the virtual printer. Specific control methods will be described below.

[0062] The virtual printer setup unit 2002 associates the printing device 101 registered in the cloud printing service 103 with a virtual printer on the cloud printing service 103. The setup unit 2002 sends a request to the cloud printing service 103 indicating that the printing device wants to be associated with the virtual printer. The cloud printing service 103 associates the printing device 101 with the virtual printer based on this request and a predefined mapping by the administrator. (See reference...) Figure 8 Describe the association.

[0063] When the setup for associating the virtual printer with the printing device 101 registered in the cloud printing service 103 is completed, an access token (second access token) for accessing the cloud printing service is issued. The second access token is stored in the token management unit 2007. The second access token is used to make queries about the virtual printer. When the association is complete, the service 103 issues a query destination URL to be used for queries about the virtual printer.

[0064] If the printing device 101 is associated with a virtual printer on the cloud printing service 103, the list information acquisition unit 2003 obtains information about print jobs managed by the virtual printer from the cloud printing service 103. Specifically, the list information acquisition unit 2003 obtains a list of print jobs managed by the virtual printer that correspond to the user logged into the printing device 101 from the cloud printing service 103. In this embodiment, the list information refers to the job's bibliographic items (items used by the user to specify the job, such as job name, file size, job generation date and time, and print settings information). The list information acquisition unit 2003 transmits a request to obtain the print job list information to the virtual printer on the cloud printing service 103 via the communication unit 2008. An access token (second access token) used to access the virtual printer and a query destination URL are used for the request to obtain the print job list information. The cloud printing service 103 specifies the target printer object based on the URL used for the request. In response to the request to obtain the print job list information, the cloud printing service 103 returns a list of print jobs placed in the printer queue of the specified printer object. If the request is determined to be invalid based on the access token and the query destination URL, then an error message is returned in response to the request.

[0065] Control unit 2004 controls the entire printing device 101. As an example of control processing, if an operation is received from the user to print a print job managed by a virtual printer, then control unit 2004 performs the following processing. Control unit 2004 gives an instruction to move the print job, based on print job information obtained at least by list information acquisition unit 2003, to the printer queue for image processing device (for printing device 101) provided on cloud printing service 103.

[0066] More specifically, firstly, the control unit 2004 acts as a display control unit and displays a job selection screen based on a list of print jobs. The control unit 2004 specifies one or more print jobs to be printed based on user actions using the job selection screen. The control unit 2004 determines whether the print jobs specified as print targets include print jobs stored in the virtual printer of the cloud printing service 103. If print jobs exist in the virtual printer, a request is sent to the cloud printing service 103 to move the print jobs to the printer queue provided to the printing device 101 and to transfer the print jobs to the printer queue of the printing device 101. In response to the instruction received from the printing device 101, the cloud printing service 103 moves (places) the print target jobs stored in the virtual printer queue of the virtual printer to the printer queue provided to the printing device 101. The communication unit 2008 performs communication with external devices.

[0067] The job acquisition unit 2005 is configured to acquire print jobs from the printer queue of the printing device 101 registered in the cloud printing service 103. Specifically, the job acquisition unit 2005 transmits a print job acquisition request to the cloud printing service 103 via the communication unit 2008. The acquisition request includes a first access token. In response to the print job acquisition request, the printer object for the printing device 101 operating on the cloud printing service 103 transmits the corresponding print job stored in the printer queue for the printing device 101 to the printing device 101.

[0068] The enable / disable setting unit 2006 serves as a second setting unit configured to enable or disable the use of the virtual printer on the cloud printing service 103. If the use of the virtual printer is enabled, the list information acquisition unit 2003 performs the process of acquiring the aforementioned print job list information from the virtual printer.

[0069] The token management unit 2007 manages a first access token for accessing the printer queue and a second access token for accessing the virtual printer. As described above, the first access token is obtained when the printer queue of the printing device 101 is registered in the cloud printing service 103. For example, the second access token is obtained during the process of associating a virtual printer with the printing device 101.

[0070] <Printing Device User Account Management>

[0071] Reference Figures 9 to 11B An example of a setup screen for a printing apparatus according to this embodiment is described.

[0072] Figure 9 This is an example of a print job retention settings screen and a user account settings screen in a printing device. Figures 10A to 10C This is an example of a login screen and a screen displayed during login. Figure 11A and 11B This is an example image showing a task list screen.

[0073] Figure 9 The "Print Job Retention Settings" on the print job retention settings screen 801 is a setting used to configure whether the printing device 101 immediately ejects received print jobs or stores received print jobs in the printing device 101's storage device and ejects print jobs only when instructed by the user. When this setting is enabled, the CPU 401 ( Figure 4 ) Perform control for storing the received print jobs in the storage device 404 of the printing device 101.

[0074] "User Login Settings" is a setting used to configure whether user authentication should be performed (if the operating unit 409 of the printing device 101 is used). If this setting is enabled, for example... Figure 10A As shown, a login screen 901 is displayed for entering a username and password, and controls are executed to allow only successfully authenticated users to use the printing device. Login can also be performed using other means, such as authentication using an IC card.

[0075] exist Figure 9 When "User Registration Settings" is selected, the User Registration Settings screen 802 is displayed. Users managed by the printing device 101 can be added, deleted, or edited using the User Registration Settings screen 802. In this example screen, two users are registered in the printing device 101, and "Alice" and "Bob" are the usernames registered in the printing device 101. Therefore, if Alice logs in to the printing device 101, the user enters "Alice" as the username to log in. "Cloud Account Name" is a setting item used to set the account name registered in the cloud printing service 103. The username managed by the printing device 101 and the account name managed by the cloud printing service 103 may or may not match.

[0076] When Alice logs into printing device 101, the following is displayed: Figure 10B The image shown is 902. Figure 11A The job list screen 903 displays a list (list information) of print jobs corresponding to the logged-in Alice. When Bob logs into the printing device 101, it displays... Figure 10C The image shown is 904. Figure 11B The job list screen 905 displays a list (list information) of print jobs corresponding to the logged-in Bob.

[0077] <The entire sequence>

[0078] Figure 6 This is a diagram illustrating an example of processing in the entire system of this embodiment. Figure 7 This is an example of a screen displayed when searching for a virtual printer. Figure 8 This is an example diagram illustrating a list of printers managed by a cloud printing service.

[0079] In this embodiment, a protocol such as the Internet Printing Protocol (IPP) is used.

[0080] The process of a user searching for and adding virtual printers registered in the cloud printing service 103 will be described. First, in S501, the client terminal 104 searches for printers in the cloud printing service 103 in response to the user's operation. Figure 7The screen 601 shown is for searching for printers.

[0081] In S502, when a printer search instruction from a user is detected, the client terminal 104 sends a printer search request to the cloud tenant associated with that user. In S503, the cloud printing service 103 returns a list of printers representing the search results to the client terminal 104. In S504, the client terminal 104 displays the received printer list, such as... Figure 7 As shown in screen 602. Here, the printers (printing devices) included in the printer list obtained from the cloud printing service 103 are, for example, printers for which sharing settings are enabled on the cloud printing service 103 side, such as... Figure 8 As shown in 701. In Figure 8 In the example shown, the sharing settings corresponding to virtual printers 501 and 502 are enabled. Therefore, virtual printers 501 and 502 are included in the returned printer list. Assuming... Figure 8 The virtual printers shown, and the relationships between them and the printers to be associated with them, are predefined by the tenant administrator, who is the service user. For example, the tenant administrator generates a configuration file that lists the definitions of the virtual printer names, the printers associated with the virtual printers, and the sharing settings for each printer. Next, the tenant administrator logs into the cloud printing service 103 and uploads the configuration file to the administrator's tenant. The cloud printing service 103 then establishes a system based on the configuration file. Figure 8 The mapping relationship is illustrated in the example. When a configuration request is received from the virtual printer configuration unit 2002 of a printing device (e.g., printing device 101), the cloud printing service 103 establishes a mapping relationship based on the configuration file. For example, it performs processes to associate printing device 101 with virtual printers 501 and 502, and processes to issue access tokens and query URLs for printing device 101 to access each virtual printer.

[0082] In S505, the user selects the desired printer from the printers included in the displayed printer list. In S506, when it is detected that any printer has been selected from the printers included in the printer list, the client terminal 104 performs the process of adding the corresponding printer to the client terminal 104. When the printer adding process is complete, the client terminal 104 displays... Figure 7 The screen 603 indicates that registration has been completed. In the example shown on screen 603, virtual printer 501 has been registered.

[0083] Multiple printers (printing devices) are registered in the cloud printing service 103, but are not included in the response to be sent to client terminal 104 by disabling the sharing setting. Sharing is only enabled for virtual printers that combine multiple printing devices, so only a limited number of virtual printers are included in the response to be sent to client terminal 104. Therefore, since a large number of printers are not displayed as search results in response to a printer search request, the user can easily search for the desired printer.

[0084] Next, in S507, the user selects any document and gives a print instruction. In S508, the client terminal 104, having received the print instruction, sends the print job to the virtual printer 501. In S509, the virtual printer 501, having received the print job, stores it in cloud storage (virtual printer queue). Therefore, the print job is placed in the virtual printer 501. Figure 7 In the example shown, the printing devices associated with the virtual printer 501 are four printing devices 101, 102, 108, and 109. Print jobs are stored in the cloud printing service 103 until a print job retrieval request is sent from any of these four printing devices. The association between the virtual printer and the printing devices will be described later.

[0085] Next, the method for outputting print jobs stored in the cloud printing service 103 will be described. Figure 6 In step S510, the user logs in to any printing device. In this embodiment, it is assumed that the user has already logged in to printing device 101. Figure 8 In the example shown, printing device 101 is associated with virtual printers 501 and 502. Therefore, in S511, the CPU 401 of printing device 101 requests virtual printer 502 to obtain a list of print jobs corresponding to the logged-in user. Specifically, CPU 401 transmits an acquisition request, wherein an access token managed by virtual printer 502 is attached to a query URL obtained when printing device 101 is associated with virtual printer 502. The acquisition request also includes information identifying the user account.

[0086] In step S513, the CPU 401 of the printing device 101 requests the virtual printer 501 to obtain a list of print jobs corresponding to the logged-in user. Specifically, the CPU 401 transmits the request, wherein an access token managed by the virtual printer 501 is attached to a query URL obtained when the printing device 101 is associated with the virtual printer 501. The request also includes information identifying the user account.

[0087] A request for a list of print jobs can be made using an operation called "Get-Jobs" as defined in IPP, for example.

[0088] Figures 15A to 15F This is a diagram illustrating an example of packets exchanged between a printing device and a cloud printing service.

[0089] In a request to retrieve a list of print jobs, for example, transmitting... Figure 15A Group 1301 in the example. In this example, since a user named Alice is logged into the printing device, this group stores account information about that user. The cloud printing service 103, having received a request to retrieve a list of print jobs, specifies the virtual printer based on the query URL of the received request. Next, the cloud printing service 103 checks whether the user's print jobs are stored in the specified virtual printer and returns the result. If the user's print jobs exist, the cloud printing service 103 returns a group including information about the corresponding job ID, such as... Figure 15B In group 1302, if no user print job exists, then return the group without storing job information in the group. Figure 6 In the example shown, in S512, the cloud printing service 103 returns a list of print jobs managed by the virtual printer 502 for user Alice to the printing device 101. In S514, the cloud printing service 103 returns the list of print jobs managed by the virtual printer 501 for user Alice to the printing device 101. Here, as an example, it is assumed that Alice's print jobs were placed in the virtual printer 501 in S508. On the other hand, it is assumed that Alice's print jobs were not placed in the virtual printer 502. In this case, the response from the virtual printer 501 includes the print job ID, while the response from the virtual printer 502 does not include the print job ID.

[0090] exist Figure 6 In S515, the CPU 401 of the printing device 101 combines the response results of the list information corresponding to each virtual printer obtained from the cloud printing service 103, and displays a job list screen including the obtained print job information. Figure 11A Screen 903 in the example is an example of the job list screen displayed in S515. In this embodiment, a case is described in which a list of print jobs stored in the virtual printer of the cloud printing service 103 is displayed, but the invention is not limited thereto. A configuration may exist in which stored print jobs directly placed into the printing device are merged and displayed on the job list screen. The job list screen serves as a job selection screen for allowing the user to select a target print job.

[0091] In S516, the CPU 401 of the printing device 101 detects that the user has selected any print job to be executed (printed) from the print jobs included in the print job list information. Next, in S517, the CPU 401 sends a print job move request to the cloud printing service 103. The move request is a request to move the print job designated as the destination from the virtual printer queue to the printer queue provided to the printing device 101. The move request includes information specifying the printer queue as the move destination and an access token corresponding to the virtual printer currently storing the print job. A print job move request can be made using a unique operation such as "Move-Job". In the print job move request, for example, transmission... Figure 15C Packet 1303 in the example. Packet 1303 illustrates what happens if a request is received for something such as... Figure 9 The print request move request grouping for the two print jobs, job numbers 1 and 2, is shown.

[0092] In group 1303, a job ID is specified to indicate the job to be moved and a printer UUID is specified to indicate the printer as the destination. In this example, since it is expected that the print job placed in virtual printer 501 will be moved to the printer queue for printing device 101, the UUID of printing device 101 is specified. In S518, the cloud printing service 103, having received the print job move request, moves the print job specified in the move request group from the printer queue of virtual printer 501 to the printer queue for printing device 101. A move request group in which the destination printer UUID and the first access token are associated with each other can be transmitted. In this case, the cloud printing service 103 specifies the destination printer queue based on the UUID. Next, the access to the printer queue is verified by using the first access token. As a result of the verification, if it is determined that the access is allowed, the cloud printing service 103 performs the process of moving the job between queues. On the other hand, if it is determined that the access is not allowed, an error is returned in response to the request.

[0093] In S519, the print object for printing device 101, whose job has been detected to have moved to the printer queue provided by the cloud printing service 103 for printing device 101, performs the following processing. The print object provides a push notification to printing device 101 indicating that a print job has been placed. For example, an operation called "Get-Notification" defined in IPP is used for the push notification. Upon startup, printing device 101 sends a notification request for a print job input event to the cloud printing service 103, maintains the connection until the event occurs, and then waits. A push notification including a Job-Fetchable event indicating that a print job has been placed is provided to printing device 101. In S520, the CPU 401 of printing device 101, having received the push notification, makes a print job retrieval request to the cloud printing service 103 to request the retrieval of the corresponding user's print job. CPU 401 includes a first access token in the retrieval request. For example, an operation called "Fetch-Job" defined in IPP is used for the print job retrieval request.

[0094] In a print job retrieval request, for example, sending Figure 15E Group 1305. In group 1305, a job ID is specified as the identifier information for the print job to be acquired. A print job acquisition request is transmitted to the printer object for printing device 101. In response to the print job acquisition request, the printer object for printing device 101 transmits data about the corresponding print job to printing device 101. For example, Figure 15F Group 1306 in the data is used to transmit data about the print job.

[0095] In S521, the printing device 101 receives data about the corresponding print job transmitted by the cloud printing service 103. In S522, the printing device 101 performs the printing process. In this embodiment, an example of applying Fetch-Job has been described, but any protocol or operation capable of obtaining print jobs, such as the Fetch-Document operation, can be used.

[0096] <Processing flow in the printing device>

[0097] Figure 12This is a flowchart illustrating an example of the operation process of the printing device in this embodiment. First, in S1001, the printing device 101 is turned on. In S1002, the CPU 401 determines whether its device (i.e., the printing device 101) has been registered in the cloud printing service 103. If the printing device 101 has been registered in the cloud printing service 103, the process proceeds to S1003. If the printing device 101 has not yet been registered in the cloud printing service 103, the process proceeds to S1004. In S1004, the CPU 401 waits until a registration processing event from the user occurs.

[0098] In S1003, CPU 401 sends an event check request to cloud printing service 103. For example, a Get-Notification request is used for the event check request. Next, in S1004, CPU 401 waits while maintaining the connection with cloud printing service 103 until an event occurs.

[0099] Next, in S1005, CPU 401 determines whether an event has occurred. If no event has occurred, the process returns to S1005. If an event has occurred, any one of the processes in S1006 to S1009 is executed based on the event. If a registration indication event has occurred, the process proceeds to S1006.

[0100] In S1006, CPU 401 registers printing device 101 in cloud printing service 103. If the registration of printing device 101 is successful, a printer queue for printing device 101 is generated in cloud printing service 103. The registration processing for printing device 101 is related to... Figure 2 The processing in S201 to S204 corresponds to this. After the registration of the printing device 101 is completed, the CPU 401 sends an event check request to the cloud printing service 103 and maintains the connection until an event occurs in the cloud printing service 103 (i.e., until a push notification is provided), and then waits.

[0101] If a login event has occurred, the process proceeds to S1007. In S1007, login processing is performed. If a print job input event has occurred, the process proceeds to S1008. In S1008, printing processing is performed. If an event indicating association with a virtual printer occurs, the process proceeds to S1009. In S1009, processing is performed to associate the virtual printer on cloud printing service 103 with printing device 101.

[0102] Figure 13 This is a flowchart illustrating an example of the login process.

[0103] First, in S1101, CPU 401 detects a login event, meaning the user has logged into printing device 101. Next, in S1102, CPU 401 determines whether printing device 101 has been registered in cloud printing service 103 and whether settings for using a virtual printer are enabled. If the virtual printer is used... Figure 16A If the operation of the cloud printing settings screen 1401 shown enables the setting item "Use Virtual Printer", then CPU 401 determines that the setting for using the virtual printer is enabled. If the setting for using the virtual printer is disabled, then the process ends and CPU 401 returns to the event wait state. If the setting for using the virtual printer is enabled, then the process proceeds to S1103.

[0104] In S1103, CPU 401 transmits a request to retrieve a list of print jobs corresponding to the logged-in user. These print jobs are managed by a virtual printer associated with the printing device 101 on the cloud printing service 103. The processing in S1103... Figure 6 The processing corresponds to S511 and S513.

[0105] Next, in S1103, CPU 401 receives a response including a list of print jobs managed by the virtual printers and corresponding to the logged-in user. Next, in S1105, CPU 401 determines whether a request to obtain the list of print jobs has been sent to all virtual printers associated with printing device 101. If there are virtual printers to which a request to obtain the list of print jobs has not yet been sent, the process returns to S1103. If a request to obtain the list of print jobs has been sent to all virtual printers associated with printing device 101, the process proceeds to S1106.

[0106] In S1106, CPU 401, for example, Figure 11A The job list screen 903 displays a list of print jobs. Next, in S1107, the CPU 401 receives an operation from the user to select any print job from the print information included in the print job list, and determines whether a print instruction is detected for the selected print job. Selecting a print job refers to selecting one or more print jobs via the job list screen. Detecting a print instruction refers to detecting the operation of selecting the "Print" button via the job list screen. If no print job is selected, the process ends and returns to the event waiting state. If a print instruction is detected after selecting one or more print jobs, the process proceeds to S1108.

[0107] In S1108, CPU 401 transmits a move request to move the selected print job to the printer queue for printing device 101. The processing in S1108 is related to... Figure 6 The processing in S517 corresponds to this. In response to this print job move request, the selected print job is moved from the virtual printer queue to the printer queue of the printing device 101. After the processing in S1108, the CPU 401 returns to the event wait state.

[0108] Figure 14 This is a flowchart illustrating an example of print processing if a print job input event has occurred.

[0109] Due to reference Figure 13 The described process involves moving print jobs from the virtual printer to the printer queue of the printing device 101 within the cloud printing service 103. Therefore, as... Figure 6 As in S519, the cloud printing service 103 provides push notifications of print job input events to the printing device 101. Therefore, in S1201, the CPU 401 detects the push notifications of print job input events.

[0110] Next, in S1202, CPU 401 sends a print job retrieval request to the printer queue of printing device 101 in cloud printing service 103. Next, in S1203, in response to the print job retrieval request, print job data is received from the printer queue. In S1204, CPU 401 performs printing processing based on the received print job data.

[0111] Next, CPU 401 determines whether all print jobs received from the printer queue have been processed. If there are unprocessed print jobs, processing returns to S1202. If all print jobs received from the printer queue have been processed, CPU 401 returns to the event wait state. According to this embodiment, the printing device 101 moves print jobs from the virtual printer queue to the printer queue of the printing device 101, makes a print job retrieval request to the printer queue, and therefore does not communicate with the virtual printer for a long time. The printer object for the printing device, as another software module, can control the transmission of print job data, control standby when printing errors occur in the real printer, etc.

[0112] As described above, in the first embodiment, the printer object for the virtual printer serves as a front-end module from the temporary storage of print jobs to the receipt of actual print requests. The printer object prepared for the real printer exchanges large amounts of data with the real printer. That is, the software module prepared for the real printer (which has a one-to-one correspondence between the printer queue and the output destination) can be used as a back-end module for load balancing. Therefore, the load on the virtual printer can be reduced, and thus cloud printing capabilities and performance can be improved.

[0113] (Second Embodiment)

[0114] In the second embodiment, the printing device searches for virtual printers registered in the cloud printing service 103. The printing device receives virtual printer candidates that can be associated with it from the cloud printing service 103 through this search. The printing device sends a request to the cloud printing service 103 to associate itself with a printing device belonging to a virtual printer selected from the received candidates by user operation. The cloud printing service 103 receives this request from the printing device, performs the process of associating the printing device with a printing device belonging to a virtual printer, and performs the process of issuing an access token and query URL for the printing device to access the virtual printer. That is, in the second embodiment, in addition to the administrator preset described in the first embodiment, a structure for generating and associating virtual printers from printing devices registered in the cloud printing service 103 is provided.

[0115] Figures 16A to 16C Figure 17 is an example of a screen displayed by a printing device and used to set up cloud printing. Figure 18 This is a diagram illustrating an example of virtual printer setup processing performed by a printing device.

[0116] Figure 16A The illustration shows the cloud printing settings screen 1401, which serves as the top-level screen for cloud printing settings. By selecting the detailed settings button corresponding to the setting item "Use Cloud Printing," the initial registration of the printing device 101 with the cloud printing service 103 begins. Selecting the detailed settings button then changes the screen displayed on the printing device 101 to... Figure 16B The cloud printing detailed settings screen 1402 is shown. When the registration button on the cloud printing detailed settings screen 1402 is selected, a registration instruction event occurs. Thereafter, authentication processing is performed by entering cloud account information, etc., as needed, and the registration of the printing device 101 is completed. When registration is complete, the printing device 101 displays the cloud printing detailed settings screen 1403. On the cloud printing detailed settings screen 1403, the registration status of the printing device 101 is set to "Registered".

[0117] Next, the virtual printer setup process will be described. The user... Figure 16AOn the cloud printing settings screen 1401 shown, the setting item "Use Virtual Printer" is set to enabled, and the detailed settings button is selected. Therefore, the screen displayed by the printing device 101 changes to... Figure 17A The virtual printer detailed settings screen 1404 is shown. In this example, virtual printer 501 has been added (registered) as a virtual printer associated with printing device 101.

[0118] When the user selects the search button on the virtual printer detailed settings screen 1404, Figure 18 In step S1501, the printing device 101 is instructed to search for a virtual printer. The virtual printer search instruction corresponds to a virtual printer association instruction event. By selecting the search button, the screen displayed on the printing device 101 changes to... Figure 17B The virtual printer search screen 1405 shown is used for... Figure 18 The account input screen displayed in S1502.

[0119] The user enters cloud account information as authentication information for accessing the cloud printing service by using the virtual printer search screen 1405. Figure 18 In S1503), select the search button. This searches for virtual printers registered in the cloud tenant corresponding to the entered cloud account information. Specifically, in Figure 18 In S1504, an authentication request is sent from the printing device 101 to the cloud printing service 103. In S1505, an authentication response is sent from the cloud printing service 103 to the printing device 101. Next, in S1506, the printing device 101 requests the cloud printing service 103 to obtain a list of virtual printers registered in the cloud tenant. In S1507, the cloud printing service 103 sends the list of virtual printers to the printing device 101. In S1508, the printing device 101 displays a screen including the received list of virtual printers. For example, the printing device 101 displays... Figure 17C The virtual printer search results screen shown is 1406.

[0120] exist Figure 18 In S1509, the user selects a desired virtual printer from the virtual printers displayed on the virtual printer search results screen 1406 and selects the Add button. In this example, assume virtual printer 502 is selected. In S1510, the printing device 101 associates (adds) the selected virtual printer with itself. When a virtual printer is added, the printing device 101 makes a connection request to the virtual printer to check communication (this is performed only once). The printing device 101 obtains an access token (second access token) from the virtual printer that responded to the connection request for subsequent access to the virtual printer.

[0121] When a virtual printer is added, the printing device 101 displays, for example... Figure 17D The virtual printer detailed settings screen 1407 shown is included in addition to virtual printer 501. Virtual printer 502 is also added as a virtual printer associated with printing device 101 in the virtual printer detailed settings screen 1407.

[0122] The printing device 101 can display a virtual printer search screen 1405 for entering authentication information each time a virtual printer is searched, or the printing device 101 can keep the virtual printer in a cache and perform a second and subsequent search. The display of the virtual printer search screen 1405 can be omitted in the second and subsequent searches.

[0123] Figure 19 This is a flowchart illustrating an example of a process performed by the printing apparatus of this embodiment.

[0124] First, in S1601, CPU 401 detects that a search instruction for the virtual printer has been given. In S1602, CPU 401 displays the account input screen. Next, in S1603, CPU 401 detects that the user has entered authentication information.

[0125] Next, in S1604, CPU 401 sends an authentication request, including the input authentication information, to cloud printing service 103. Next, in S1605, CPU 401 receives an authentication response from cloud printing service 103. Then, in S1606, CPU 401 sends a request to cloud printing service 103 to retrieve a list of virtual printers.

[0126] In S1607, CPU 401 receives a response from cloud printing service 103 including a list of virtual printers. Then, in S1608, CPU 401 displays the received list of virtual printers. Next, in S1609, CPU 401 detects that the user has selected a virtual printer. In S1610, CPU 401 requests cloud printing service 103 to associate printing device 101 as a printing device belonging to the selected virtual printer. As a result, the selected virtual printer is associated with printing device 101.

[0127] (Third Embodiment)

[0128] In this embodiment, a virtual printer can be easily created, an association between a subordinate printer and a virtual printer can be set, and the virtual printer can be changed via a web interface provided by the cloud printing service 103. The printing device 101 receives a notification from the cloud printing service 103 indicating that the printing device 101 is associated with a virtual printer, and sets the virtual printer as the printer associated with the printing device 101.

[0129] <Cloud Printing Service Screen>

[0130] Figures 20A to 22D This is an example image showing the settings screen of the cloud printing service.

[0131] The web server is operating within cloud printing service 103. In this embodiment, it is assumed that the administrator accesses the web server from a browser on any terminal and operates the settings screen. The administrator displays on the terminal... Figure 20A As shown in screen 1701, enter your cloud account information and log in to the settings screen of cloud printing service 103. As a result, the administrator logs in, and the settings are displayed on the terminal. Figure 20B The top-level screen shown is 1702.

[0132] When selecting the detailed settings button corresponding to the "Printer Management" item on the top-level screen 1702, such as... Figure 20C As shown, setup screen 1703 displays a list of printing devices registered with cloud printing service 103. The printing devices included in the list are those registered with cloud printing service 103. Figure 2 Printing devices (S201 to S204) have been successfully printed. Administrators can delete printing devices or edit remarks by selecting the edit button on settings screen 1703.

[0133] Administrator Figure 20B On the top-level settings screen 1702, select the detailed settings button corresponding to the "Virtual Printer Management" setting. Therefore, as... Figure 21A As shown, setup screen 1704 displays a list of virtual printers registered in cloud printing service 103. In this example, virtual printer 501 is already registered. Administrators can register new virtual printers in cloud printing service 103 by selecting the Create button on setup screen 1704. When the Create button is selected, the following is displayed: Figure 21B The new virtual printer creation screen in 1705.

[0134] The "Virtual Printer Name" setting is used to set the name of the virtual printer on the new virtual printer creation screen 1705. Administrators can set any virtual printer name in the "Virtual Printer Name" setting. For example, if virtual printer 502 is created as a new virtual printer, the "Virtual Printer Name" setting is set to "Virtual Printer 502". The "Virtual Printer UUID" setting is used to set the UUID of the virtual printer. The UUID is a unique identifier (ID) used to uniquely manage virtual printers in the cloud printing service 103. The cloud printing service 103 can automatically generate a UUID in response to administrator actions. If no duplicates exist, the administrator can manually set the UUID.

[0135] The "Virtual Printer Configuration" setting is used to configure and set up virtual printer capabilities. When an administrator selects the "Virtual Printer Configuration" setting, the following will be displayed: Figure 21C The setup screen 1706 is shown. Administrators use operations on setup screen 1706 to configure basic configuration and capability information for the printing device. Therefore, for example, it is possible to configure whether the printing device is a color or monochrome machine, and whether it corresponds to duplex or single-sided printing. Ideally, the configuration information configured using setup screen 1706 should be identical to the configuration information of the group of printing devices associated with the virtual printer. When the administrator selects the "Complete" button on setup screen 1706 after configuring the virtual printer's configuration and capability information, a virtual printer creation instruction is given to cloud printing service 103, and cloud printing service 103 creates the virtual printer.

[0136] On the new virtual printer creation screen 1705, the "Printer Association" setting is used to configure which printing device is associated with the virtual printer. When the administrator selects the "Printer Association" setting, as shown below... Figure 22A As shown, screen 1707 displays a list of printing devices associated with the target virtual printer (virtual printer 502 in this example).

[0137] By default, no associated printing devices exist, therefore screen 1707 does not display any printing devices associated with the virtual printer. If the administrator wants to add a new associated printing device, they should select the search button. When a search is selected, the cloud printing service 103 searches the printer queue of printing devices registered in its tenant. Figure 22B As shown, cloud printing service 103 displays screen 1708, which includes a list of registered printing devices found through a search. The printing devices displayed on screen 1708 are... Figure 2The processing in S201 to S204 refers to the printing device that has been successfully registered in the cloud printing service 103.

[0138] When the administrator selects any printing device from the list of printing devices displayed on screen 1708, the cloud printing service 103 associates the selected printing device with the virtual printer. Figure 22C The setup screen 1709 is shown. On setup screen 1709, printing devices 101 and 102 are associated with virtual printer 502. When the administrator selects the return button, the displayed screen changes to setup screen 1706. When the creation completion button is selected through the operation on setup screen 1706, the registration of the virtual printer is completed, and a message is displayed. Figure 22D The settings screen shown is 1710.

[0139] Figure 23 This is a diagram illustrating an example of the process of setting up a virtual printer in the third embodiment.

[0140] Processing and References in S1801 to S1811 Figures 20A to 22D The processing described is the same. Figure 23 The description will, as an example, describe the process of creating a virtual printer 501 and associating it with a printing device 101. First, in S1801, the administrator enters information about the newly created virtual printer 501 into the settings screen displayed on the terminal and instructs the cloud printing service 103 to create the virtual printer 501. In S1802, the cloud printing service 103 creates and manages the virtual printer 501 and the virtual printer queue within the tenant based on the creation instruction for the virtual printer 501.

[0141] In S1804, the administrator... Figure 21B On the new virtual printer creation screen 1705, the administrator selects the "Printer Association" setting. Next, in S1804, the administrator instructs the cloud printing service 103 to search for printing devices associated with virtual printer 501. In S1805 and S1807, virtual printer 501, created in cloud printing service 103, responds to the above search instruction by making a search request to the printer queues of registered printing devices within the same tenant. In S1808 and S1807, virtual printer 501 receives search responses from the printer queues of the printing devices that have responded to the search request. In this example, it is assumed that virtual printer 501 receives search responses from the printer queues of printing devices 101 and 102.

[0142] In S1809, the virtual printer 501 returns the search results for printing devices to the administrator's terminal. Therefore, the administrator's terminal displays a list of candidate printing devices to be associated with the virtual printer 501. Next, the administrator selects any printing device from the list of printing devices included in the displayed list. In this example, it is assumed that printing device 101 is selected. In S1810, information about the selected printing device 101 is transmitted to the virtual printer 501. In S1811, the virtual printer 501 sends a registration notification to the printer queue of the selected printing device 101. Therefore, the virtual printer 501 and the printing device 101 are associated with each other.

[0143] It is necessary to notify the printing device 101 of the association with the virtual printer 501 on the cloud printing service 103. Therefore, in S1812, the cloud printing service 103 provides an association notification to the printing device 101. The association notification is a push notification used to report the association between the printing device 101 and the virtual printer 501.

[0144] Figure 24 This is a diagram illustrating an example of grouping for associated notifications.

[0145] like Figure 24 As shown in group 1901, for example, an operation called "Get-Notification Response" is used to associate notifications. In the example of group 1901, "notify-subscribe-event" represents the event type. In this example, as the event type, information indicating that an event called virtual printer association has occurred is stored. Therefore, the printing device 101 that has received group 1901... Figure 12 In step S1005, an association indication event is detected. The UUID information of the virtual printer associated with printing device 101 is stored in "device-uuid". The name of the virtual printer associated with printing device 101 is stored in "device-name". The token information (second access token) used when printing device 101 connects to the associated virtual printer is stored in "access-token". If the virtual printer can be accessed using the same token information as the access token used to access the printer queue of printing device 101 on cloud printing service 103, then storing the token information in "access-token" can be omitted.

[0146] Will refer again Figure 23 In S1813, the printing device 101 that has received the association notification sets up a virtual printer corresponding to the association notification in association with the printing device 101. Processing and reference in S1813 Figure 19The process of adding a virtual printer is the same as described in S1610.

[0147] Figure 25 This is a flowchart illustrating an example of the operational processing of a printing device when providing associated notifications from a cloud printing service.

[0148] In S3001, the CPU 401 of the printing device 101 receives an association notification from the cloud printing service. In S3002, the CPU 401 sets information about the virtual printer corresponding to the association notification in association with the printing device 101. According to this embodiment, even if the virtual printer and the printing device are associated with each other on the cloud printing service 103, a notification associated with the printing device is provided, so the printing device can appropriately set up the virtual printer in response to the notification.

[0149] (Other embodiments)

[0150] The present invention can also be implemented in a process in which a program implementing one or more functions of the above embodiments is supplied to a system or device via a network or storage medium, and one or more processors in the computer of the system or device read and execute the program. The present invention can also be implemented by a circuit (e.g., an ASIC) that implements one or more functions.

[0151] While the invention has been described with reference to exemplary embodiments, it is to be understood that the invention is not limited to the disclosed exemplary embodiments. The scope of the following claims is to be given the broadest interpretation in order to cover all such modifications and equivalent structures and functions.

[0152] This application claims the benefit of Japanese Patent Application No. 2020-192506, filed on November 19, 2020, which is hereby incorporated herein by reference in its entirety.

Claims

1. A method of providing a cloud printing service, the method comprising: setting means configured to set a correspondence between a virtual printer and one or more registered printers based on a user operation; job control means configured to move a print job designated as a target to a queue of a first registered printer through which the correspondence is set by the setting means, if a predetermined request for designating the print job stored in a queue of the virtual printer as a target is received from the first registered printer; and transmission control means configured to transmit a print job corresponding to a request for acquiring a print job stored in a queue of the first registered printer to the first registered printer, if the request for acquiring the print job stored in the queue of the first registered printer is received from the first registered printer, wherein a second access token is used when a print job stored in the queue of the virtual printer is instructed to be moved to the queue of the first registered printer, and wherein a first access token is used when a print job stored in the queue of the first registered printer is acquired.

2. The method according to claim 1, further comprising: generation means configured to generate a virtual printer based on a user operation; and management means configured to manage registered printers registered in the cloud printing service, wherein the setting means sets a correspondence between the virtual printer generated by the generation means and one or more registered printers specified by a user among the registered printers managed by the management means based on a user operation.

3. The method according to claim 1, wherein the predetermined request received from the first registered printer is a move request for moving the print job designated as a target from the queue of the virtual printer to the queue of the first registered printer.

4. The method according to claim 1, further comprising: notification means configured to report that the virtual printer has been associated with the one or more registered printers, if the correspondence between the virtual printer and the one or more registered printers is set.

5. The method according to any one of claims 1 to 4, further comprising: provision means configured to provide the one or more registered printers with the first access token for accessing information managed by the virtual printer, if the correspondence between the virtual printer and the one or more registered printers is set.

6. The method according to claim 5, wherein the request for acquiring a print job stored in the queue of the first registered printer includes the second access token for accessing information managed by the first registered printer.

7. The method according to claim 1, wherein the first registered printer includes: generating means configured to register the first registered printer in the cloud print service and generate a queue in which print jobs to be transmitted to the first registered printer are stored on the cloud print service; first acquisition means configured to acquire, from the cloud print service, information of print jobs managed by a virtual printer if the first registered printer is associated with the virtual printer on the cloud print service; first request means configured to make a request for moving a print job indicated based on information of a print job acquired by at least the first acquisition means to a queue for the first registered printer provided on the cloud print service if an operation for printing a print job managed by the virtual printer is received; and second acquisition means configured to acquire a print job in a queue for the first registered printer stored on the cloud print service.

8. The method according to claim 7, wherein, the first acquisition means acquires, from the cloud print service, information of a print job corresponding to a user logged in to the first registered printer and managed by the virtual printer.

9. The method according to claim 7, wherein the first registered printer further includes: display means configured to display a job selection screen based on information of a print job acquired by the first acquisition means; and indicating means configured to indicate one or more print jobs to be a print target based on a user operation using the job selection screen, and wherein the first request means makes a request for moving the one or more indicated print jobs to a queue for the first registered printer provided on the cloud print service.

10. The method according to claim 7, wherein the first registered printer further includes: reception means configured to receive, from the cloud print service, virtual printer candidates associated with the first registered printer; and second request means configured to request the cloud print service to associate the first registered printer as a subordinate image processing device of a virtual printer selected by a user operation from among the candidates received by the reception means.

11. The method according to claim 10, wherein the first registered printer further includes: management means configured to manage the first access token for accessing a queue for the first registered printer provided on the cloud print service and the second access token for accessing a virtual printer, and wherein the second access token is issued to the first registered printer according to association based on a request from the second request means.

12. The method according to claim 7, wherein the first registered printer further includes: setting means configured to set whether or not to enable use of a virtual printer on the cloud print service.

13. A computer-readable storage medium storing a program for causing a computer to execute a method of providing a cloud printing service, the method comprising: setting a correspondence between a virtual printer and one or more registered printers based on a user operation; if a predetermined request for designating a print job stored in a queue of the virtual printer as a target is received from a first registered printer in which the correspondence is set, moving the print job designated as the target to a queue of the first registered printer; and if a request for acquiring a print job stored in a queue of the first registered printer is received from the first registered printer, transmitting the print job corresponding to the request to the first registered printer, wherein, when a print job stored in a queue of the virtual printer is instructed to be moved to a queue of the first registered printer, a second access token is used, and wherein, when a print job stored in a queue of the first registered printer is acquired, a first access token is used.

14. The storage medium according to claim 13, the first registered printer includes: wherein, a generation component configured to register the first registered printer in the cloud printing service and generate a queue in which print jobs to be transmitted to the first registered printer are stored on the cloud printing service; a first acquisition component configured to acquire information of print jobs managed by a virtual printer from the cloud printing service if the first registered printer is associated with the virtual printer on the cloud printing service; a first request component configured to make a request for moving a print job indicated based on information of print jobs acquired by at least the first acquisition component to a queue for the first registered printer provided on the cloud printing service if an operation for printing a print job managed by the virtual printer is received; and a second acquisition component configured to acquire a print job stored in a queue for the first registered printer on the cloud printing service.

15. The storage medium according to claim 14, the first acquisition component acquires information of print jobs corresponding to a user logged in to the first registered printer and managed by the virtual printer from the cloud printing service. wherein, 16. The storage medium according to claim 14, the first registered printer further includes: wherein a display component configured to display a job selection screen based on information of print jobs acquired by the first acquisition component; and an indication component configured to indicate one or more print jobs to be a print target based on a user operation using the job selection screen, and wherein the first request component makes a request for moving the one or more indicated print jobs to a queue for the first registered printer provided on the cloud printing service.

17. The storage medium according to claim 14, the first registered printer further includes: wherein ​ receiving means configured to receive, from the cloud print service, a virtual printer candidate associated with the first enrolled printer; and second requesting means configured to request the cloud print service to associate the first enrolled printer as a subordinate image processing device of a virtual printer selected by a user operation from among the candidates received by the receiving means.

18. The storage medium according to claim 17, wherein the first enrolled printer further includes: management means configured to manage the first access token for accessing a queue for the first enrolled printer provided on the cloud print service and the second access token for accessing a virtual printer, and wherein the second access token is issued to the first enrolled printer according to the association based on the request from the second requesting means.

19. The storage medium according to claim 14, wherein, the first enrolled printer further includes: setting means configured to set whether or not to enable use of a virtual printer on the cloud print service.

20. An image processing device comprising: generating means configured to enroll the image processing device in a cloud print service and generate a queue on the cloud print service storing print jobs to be transmitted to the image processing device; first acquiring means configured to acquire, from the cloud print service, information of print jobs managed by a virtual printer if the image processing device is associated with the virtual printer on the cloud print service; first requesting means configured to make a request for moving a print job indicated based on information of print jobs acquired at least by the first acquiring means to a queue for the image processing device provided on the cloud print service if an operation for printing a print job managed by the virtual printer is received; and second acquiring means configured to acquire print jobs stored in a queue for the image processing device on the cloud print service, wherein a second access token is used in a case where a print job managed by the virtual printer is indicated to be moved to a printer queue for the image processing device, and wherein a first access token is used in a case where a print job moved to a printer queue for the image processing device is acquired.

21. The image processing device according to claim 20, wherein the first acquiring means acquires, from the cloud print service, information of print jobs corresponding to a user logged in to the image processing device and managed by the virtual printer.

22. The image processing device according to claim 20, further comprising: display means configured to display a job selection screen based on information of print jobs acquired by the first acquiring means; and indicating means configured to indicate one or more print jobs to be a print target based on a user operation using the job selection screen, and wherein the first request component makes a request for moving the one or more specified print jobs to a queue for the image processing device provided on the cloud print service.

23. The image processing device according to claim 20, further comprising: a receiving component configured to receive, from the cloud print service, virtual printer candidates associated with the image processing device; and a second request component configured to request the cloud print service to associate the image processing device as a subordinate image processing device to a virtual printer selected by a user operation from among the candidates received by the receiving component.

24. The image processing device according to claim 23, further comprising: a management component configured to manage the first access token for accessing a queue for the image processing device provided on the cloud print service and the second access token for accessing a virtual printer, wherein the second access token is issued to the image processing device in accordance with the association based on a request from the second request component.

25. The image processing device according to claim 20, further comprising: a setting component configured to set whether or not to enable use of a virtual printer on the cloud print service.

Citation Information

Patent Citations

  • Printing system, printing service device, service providing device, control method and program

    JP2012133489A

  • Crusher and crushing classifier

    JP2020192506A

  • Image forming system and image forming method

    CN110096241A