Information processing device, method, and program

JP2026126782APending Publication Date: 2026-08-05CANON KK
View PDF 1 Cites 0 Cited by

Patent Information

Authority / Receiving Office
JP · JP
Patent Type
Applications
Current Assignee / Owner
CANON KK
Filing Date
2025-01-24
Publication Date
2026-08-05

AI Technical Summary

Benefits of technology

【0012】 本発明によれば、ローカルプリンタドライバとともにインストールされるクラウドプリントサービスと通信することが可能な拡張アプリケーションを用いることで、クラウドプリントサービスと連携した印刷システムを提供することができる。

✦ Generated by Eureka AI based on patent content.

Smart Images

  • Figure 2026126782000001_ABST
    Figure 2026126782000001_ABST
Patent Text Reader

Abstract

By using an extension application that is installed along with the local printer driver and is capable of communicating with cloud printing services, a printing system that works in conjunction with cloud printing services is provided. [Solution] The information processing device is connected via a communication network to a cloud print service that holds received print jobs and to a printer. The information processing device searches for printers on the communication network and obtains first device identification information for cooperation with the cloud print service from printers registered with the cloud print service that respond to the search. Based on the first device identification information, the device installs a program that sends print jobs output by the printer driver corresponding to the printer to the cloud print service.
Need to check novelty before this filing date? Find Prior Art

Description

Technical Field

[0001] The present invention relates to a mechanism for realizing a printing system in cooperation with a cloud printing service, particularly to an information processing apparatus, method, and program.

Background Art

[0002] In recent years, a general-purpose printer driver (local printer driver) that directly communicates with an image forming apparatus using an industry standard protocol such as IPP (Internet Printing Protocol) has been considered. The local printer driver can communicate with printers of a plurality of printer vendors. Therefore, by using the local printer driver, a user can send a print job to an image forming apparatus without installing a vendor-specific printer driver.

[0003] Furthermore, printing using a cloud printing service has been considered. In the cloud printing service, a printer driver for the cloud printing service (cloud printer driver) is installed in an information processing apparatus. In the cloud printing service, the information processing apparatus uses the cloud printer driver to send a print job to the cloud printing service, and the cloud printing service sends the print job to the image forming apparatus to execute printing.

[0004] With printing using a cloud printer driver, it becomes possible to output printed matter with a high degree of freedom. For example, a company A tenant of a cloud printing service used by a certain company A registers employees working for company A as users and registers and uses the image forming apparatuses of company A. As a result, registered users of company A can freely print from any registered image forming apparatus owned by company A when executing printing from an in-house terminal.

[0005] The above-mentioned local printer driver handles print jobs printed by image forming machines from various vendors, and therefore has limitations on the items and functions that can be set as print settings. Therefore, as described in Patent Document 1, it is conceivable to install an extended application using printer identification information to extend the print queue associated with the printer driver. This would enable the implementation of a user interface (UI) for vendor-specific print settings and print job editing functions. [Prior art documents] [Patent Documents]

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

[0007] In this context, cloud printing services sometimes offer features that allow users to control available print settings or limit the number of pages that can be printed within a certain period. The settings for at least one of these features are managed by the cloud printing service tenant. Therefore, it is difficult for local printer drivers to implement the various controls provided by the cloud printing service based on the settings managed by the cloud printing service tenant.

[0008] Furthermore, current operating systems do not provide a mechanism for installing and using extension applications for cloud printing services. This is because extension applications are installed in the operating system by being linked to model identification information, including the hardware ID (HWID), obtained from the printer. Currently, there is no mechanism provided to obtain something like the model identification information of the cloud printing service itself.

[0009] Therefore, the present invention aims to provide a printing system that works in conjunction with a cloud print service by using an extension application that is installed together with the local printer driver and is capable of communicating with the cloud print service. [Means for solving the problem]

[0010] To achieve the above objective, the present invention has the following configuration. That is, according to one aspect of the present invention, an information processing device is connected by a communication network to a cloud print service that holds print jobs received from the information processing device and to a printer, A search means for searching for a printer on the aforementioned communication network, An acquisition means for acquiring first device identification information for linking with the cloud print service from a printer registered with the cloud print service that responded to the search, The system includes an installation means for installing a program that, based on the first device identification information, sends print jobs output by the printer driver corresponding to the printer to the cloud print service. An information processing device characterized by the above is provided.

[0011] Furthermore, according to another aspect of the present invention, a program that runs on a computer connected via a communication network to a cloud print service that holds received print jobs and a printer, A monitoring means for monitoring print jobs output by a printer driver corresponding to the aforementioned printer, If there is a print job, a transmission means sends the print job to the cloud print service. A program is provided to make the computer function. [Effects of the Invention]

[0012] According to the present invention, a printing system that works in conjunction with a cloud print service can be provided by using an extended application that is capable of communicating with a cloud print service installed together with the local printer driver. [Brief explanation of the drawing]

[0013] [Figure 1] Network configuration diagram in the embodiment. [Figure 2] A block diagram showing an example of the hardware configuration in the embodiment. [Figure 3] Module configuration diagram of the printing system in cloud printing. [Figure 4A] A sequence diagram showing the steps taken until the print settings extension application is installed in the embodiment. [Figure 4B] Sequence diagram (continued) showing the process until the print settings extension application is installed in the embodiment. [Figure 5] A sequence diagram showing the process of printing on a client terminal with an extended application installed, according to Embodiment 1. [Figure 6] A flowchart illustrating the processing of the client terminal in the embodiment. [Figure 7] A flowchart illustrating the printer's processing in the embodiment. [Figure 8] A sequence diagram showing the process of printing on a client terminal with an extended application installed, according to Embodiment 2. [Modes for carrying out the invention]

[0014] Hereinafter, embodiments will be described in detail with reference to the accompanying drawings. Note that the following embodiments do not limit the invention according to the claims. Although a plurality of features are described in the embodiments, not all of these plurality of features are essential for the invention, and the plurality of features may be arbitrarily combined. Further, in the accompanying drawings, the same or similar configurations are given the same reference numerals, and redundant descriptions are omitted. [Embodiment 1] In Embodiment 1, an extended application is installed in association with a local printer driver, and a printing system will be described in which the extended application stops the transmission of a print job from the driver and transfers the print job to a cloud print service. In this embodiment and Embodiment 2, the extended application is referred to as a print setting extension application or a print setting extended application, and both are the same thing.

[0015] ●System Configuration FIG. 1 shows a configuration diagram of the printing system in this embodiment. The client terminal 101 and the printer 104 are connected via a communication protocol A. Also, the client terminal 101 and the printer 104 are each network-connected to the cloud print system 102 via a communication protocol B. Further, the client terminal 101 is network-connected to an application management server 103 and an online support server 105 via a communication protocol B.

[0016] The printer 104 has a function of cooperating with the cloud print system 102 and is a printer corresponding to the print service provided by the cloud print system 102. The cloud print system 102 refers to a server device for providing a cloud print service. That server device is called a cloud print server, and the cloud print service may also be referred to as including the hardware of the cloud print server that provides the cloud print service.

[0017] Next, the hardware configuration of the system in this embodiment will be described using Figure 2.

[0018] Figure 2(a) is a block diagram showing the hardware configuration of the client terminal 101. The client terminal 101 is also called a terminal device or information processing device.

[0019] The client terminal 101 includes a display unit 216, an operation unit 217, a storage unit 214, a control unit 211, and a network communication unit 215.

[0020] The memory unit 214 refers to a non-volatile storage device such as a hard disk or SSD, which is capable of storing and rewriting digital data.

[0021] The control unit 211 includes the CPU 212 and memory 213, and controls the overall operation of the client terminal 101. The CPU 212 loads programs stored in the storage unit 214 into memory 213 and executes them. Memory 213 is the main memory of the CPU 212 and is used as a work area and a temporary storage area for deploying various programs.

[0022] The network communication unit 215 is a device that communicates with an external network (communication network) and performs input / output or transmission / reception of digital data with servers, client terminals, etc.

[0023] The display unit 216 is a device for displaying visual information to the user in real time, such as a liquid crystal display. The operation unit 217 is a device for receiving input from the user via a keyboard, mouse, or the like. A device that combines the functions of both the display unit 216 and the operation unit 217, such as a touch panel, may also be used.

[0024] The application management server 103 and the online support server 105 may also be implemented with the same hardware configuration as the client terminal 101. However, the application management server 103 and the online support server 105 do not need to have a display unit 216 and an operation unit 217.

[0025] Figure 2(b) is a block diagram showing the hardware configuration of the cloud print system 102. The cloud print system 102 comprises a storage unit 224, a control unit 221, and a network communication unit 225. The functions and control of the cloud print system 102 are provided by the CPU 222 executing a program loaded into the memory 223.

[0026] The descriptions of the memory unit 224, control unit 221, and network communication unit 225 are the same as those for the client terminal 101 and will therefore be omitted.

[0027] Although the cloud print system 102 is described as consisting of a single information processing device having the hardware configuration shown in Figure 2(b), the cloud print system 102 may also be composed of multiple information processing devices as shown in Figure 2(b).

[0028] Figure 2(c) is a block diagram showing the hardware configuration of printer 104. Printer 104 comprises a display unit 236, an operation unit 237, a storage unit 234, a control unit 231, a network communication unit 235, and a printing unit 238. The functions of printer 104 are provided by the CPU 232 executing a program loaded into memory 233.

[0029] The display unit 236 is a device that displays information to the user in real time, such as a touch panel or LEDs attached to the printer 104.

[0030] The operation unit 237 is a device for receiving input from the user and may include a touch panel as well as hard keys such as a numeric keypad. The storage unit 234 and control unit 231 are equivalent to those of the client terminal 101, so their explanation is omitted.

[0031] The network communication unit 235 is a device that communicates with an external network and is primarily responsible for receiving print data and transmitting information about the printer 104's status, such as errors, to an external server.

[0032] The printing unit 238 is a device that performs printing processing by carrying out a series of operations including paper feeding, printing, and paper ejection on paper prepared in a cassette or tray. The printing method is not particularly limited and can be electrophotographic or inkjet. Finishing devices such as a duplex unit, stapling, and punching used during paper ejection are also included in the printing unit 238.

[0033] In this embodiment, a single-function printer that only performs printing functions is described as an example of printer 104, but a multi-function printer (multifunction device) that also has scanning and faxing functions may also be used.

[0034] ●Software module configuration Next, Figure 3 will be used to illustrate the module configuration diagram of the printing system in this embodiment of cloud printing. The client terminal 101 and the printer 104 are connected via network 106. The client terminal 101 is connected to the cloud printing system 102, the application management server 103, and the online support server 105 via network 107. The printer 104 is connected to the cloud printing system 102 via network 107.

[0035] Figure 3 shows one client terminal 101 and one printer 104, but there may be multiple client terminals 101 and printers 104.

[0036] Furthermore, the cloud print system 102, the application management server 103, and the online support server 105 may be server systems composed of multiple information processing devices. By making each server a server system composed of multiple information processing devices, the load can be distributed among the multiple information processing devices.

[0037] Furthermore, the cloud print system 102, the application management server 103, and the online support server 105 may be virtually configured within a single information processing device.

[0038] Network 106 is assumed to be a network such as an internal LAN. Network 107 is assumed to be a WAN such as the Internet, connecting the client terminal 101 and printer 104 to the server. However, network 107 may also be a closed network such as an internal LAN.

[0039] The client terminal 101 is an information processing device such as a PC, tablet, or smartphone, and is a terminal that is directly operated by the user. Any application software can be executed on the client terminal 101. Programs such as the operating system (OS) 313, local printer driver 311, and print settings extension application 312 run on the client terminal 101.

[0040] To reiterate, in this embodiment, the local printer driver is a printer driver that communicates directly with the image forming apparatus (printer) using an industry-standard protocol such as IPP. The local printer driver may be a general-purpose printer driver that is included as standard in the Windows® operating system, for example, and is compatible with printers from various printer vendors. In this embodiment, the local printer driver 311 is shown as a program that provides some of the functions of the operating system (OS) 313, and is included in the OS 313 in the diagram. The print settings extension application 312 is sometimes called an extension application because it extends the functions of the OS 313.

[0041] The printer 104 is a device that actually prints onto a recording medium such as paper, and is an image forming apparatus that converts print data received via the network 107 into image data and prints it.

[0042] The printer 104 can receive print data from the client terminal 101 via the cloud print system 102, or it can receive print data directly from the client terminal 101 without going through the cloud print system 102.

[0043] Printer 104 receives print data generated by the local printer driver 311 of client terminal 101, which is then duplicated by the print settings extension application 312 and transferred to the cloud print system 102, via the network 107. Printer 104 can also receive print data generated by the local printer driver 311 of client terminal 101 without going through the cloud print system 102.

[0044] The cloud print system 102 receives print commands and print data from external sources. Furthermore, the cloud print system 102 sends the received print data to a designated printer 104. The designated printer 104 may be any printer registered with the cloud print system 102. The cloud print service 102 also holds the received print data and may send the held print data to the printer 104 upon request. A cloud print service 312 exists on the cloud print system 102. The cloud print service is sometimes referred to as CPS.

[0045] The cloud print system 102 receives the print job data that the print settings extension application 312 duplicated when printing was performed by the local printer driver 311, using the network 107. The printer management service 322 registers the printer 104.

[0046] The application management server 103 stores and manages various applications. The application management server 103 receives application identification information and download requests from client terminals 101, and sends the application identified based on the received identification information to the client terminals 101. The application management service 331 on the application management server 103 distributes the applications to the client terminals 101. One of the applications distributed to the client terminals 101 is the print settings extension application 312.

[0047] The online support server 105 is a server device that provides the online support service 351. The online support service 351 is a server device that provides the client terminal 101 with a file containing information to extend the functionality of the client terminal 101.

[0048] ●Installation procedure for the print settings extension application Next, using Figures 4A and 4B, an example of the procedure for installing the print settings extension application in this embodiment and an example of the sequence between each software and print service will be explained. In Figures 4A and 4B, the processing for printer 104 is performed by its CPU 232. For client terminal 101, the processing is shown by its OS 313, but the execution entity is CPU 212. The printer management service 322 and the online support service 351 are implemented by the CPUs of the cloud print system 102 and the online support server 105 executing programs, and these CPUs execute the procedures shown in the figures. The application management service 331 is implemented by the CPU of the application management server 331 executing programs, and these CPUs execute the procedures shown in the figures.

[0049] First, printer 104 is registered with the cloud print service 321 by the printer management service 422 in response to user operations. This registers printer 104, for example, as a printer in the tenant to which the user who performed the operation belongs. A tenant is the scope of the cloud print service, and resources such as users and printers are registered for each tenant, allowing users to utilize the service within that tenant.

[0050] When registration is performed at this time, the printer management service 422 in S4001 sends identification information (CPS integration HWID) to the printer 104 for installing a printer driver extension application for cloud print service integration. This identification information is also called cloud print service integration device identification information or integration device identification information. In addition, the printer 104 may be configured to install a cloud service integration application in order to communicate with the tenant of the cloud print service 321 and provide print management functions. The cloud service integration application holds, for example, a cloud print service tenant URL (CPS tenant URL) that indicates the communication destination address of the cloud print system 102, in particular the tenant of the printer 104. It then works in cooperation with the cloud print service 321 to support processing such as the execution of print job data held by the cloud print service 321.

[0051] In S4002, OS313 of client terminal 104 receives a request from the user to search for available printers and sends a printer search request to the network accordingly.

[0052] When printer 104 receives a printer discovery request via S4003, it determines whether printer 104 is registered with the cloud print service 321. For example, this determination can be made using a cloud service integration application installed to utilize the cloud print service 321. In this case, if the cloud service integration application is installed on printer 104, it is determined to be registered; otherwise, it is determined to be unregistered.

[0053] Printer 104 sets the device identification information (HWID) to be transmitted when a registration request is received from an information processing device such as a client terminal 101, according to the result of the printer registration status determination in the cloud print service 102 in S4003. If printer 104 is already registered with the cloud print service 321, in S4004, printer 104 sets the cloud print service integration HWID as the HWID to be used by printer 104, instead of the model-specific HWID as the model identification information. The cloud print service integration HWID is the one received in S4001. On the other hand, if printer 104 is not registered with the cloud print service 321, in S4005, printer 104 sets the model-specific HWID as the HWID to be used by printer 104. The model-specific HWID may be, for example, identification information given to printer 104 during manufacturing.

[0054] In S4006, printer 104 sends the printer name and HWID to the client terminal 101, specifically to OS313, as a response to the printer discovery request in S4002.

[0055] In S4007, the client terminal 101, having received a response from the printer 104, requests the capabilities information (also called configuration information) of the printer 104. In S4008, the printer 104 responds to the OS 313 of the client terminal 101 with the capabilities information of the printer 104. The capabilities information may be information indicating, for example, the devices and functions that the printer 104 has and their details. Alternatively, the client terminal 101 may request the capabilities information of the printer 104 from the printer management service 322 instead of the printer 104. In that case, the printer management service 322 sends the capabilities information of the printer 104 to the client terminal 101. In this case, the printer management service 322 may have obtained the capabilities information of the printer 104 when the printer was registered, or it may obtain the latest capabilities information from the printer 104 when the client terminal 101 requests it.

[0056] Furthermore, if the cloud print service 321 does not remember the response to the attribute queried by the client terminal 101's OS 313, it will not respond to OS 313.

[0057] Next, the OS313 on the client terminal 101 starts installing the local printer driver 311 based on the device identification information and printer name of the printer selected by the user (printer 104 in this example). The local printer driver 311 to be installed can be one that is standard on the OS313, and if there is a printer driver suitable for printer 104, for example, a printer vendor-dependent printer driver, that will suffice. Alternatively, if there is no such driver, a vendor-independent general-purpose printer driver will suffice.

[0058] In S4009, OS313 generates a print queue for the local printer driver 311, which contains basic device capability information included with OS313. Device capability information refers to definition information necessary to generate the printer driver's print setting capability information, such as XML-based information like PrintDeviceCapabilities. For example, various settings can be made from the printer driver's user interface screen depending on the device capability information. Basic device capability information may be vendor-independent information about the capabilities of the printer 104.

[0059] Subsequently, OS313 updates the device capability information that constitutes the local printer driver 311 using capability information obtained from the cloud print service 321. The updated device capability information reflects the capability information obtained from the printer 104, and if capability information including vendor-dependent functions has been received, it will also include that device capability information.

[0060] With the above steps, the installation of the local printer driver 311 is complete. The installed local printer driver 311 is associated with a print port directed to the printer 104, allowing the client terminal 101 to directly send print data to the printer 104 and perform printing.

[0061] Next, OS313 starts the installation process of an application (print settings extension application 312) that is linked to printer 104 and extends the local print driver 311. Refer to Figure 4B from here. Note that the process in Figure 4B is performed when printer 104 is registered with the cloud print service 321, and if printer 104 is not registered, the sequence may be terminated at S4009. Whether or not printer 104 is registered with the cloud print service 321 can be determined by the client terminal 101 based on the HWID, for example, if the HWID received at S4006 is configured to be identifiable as either for CPS linkage or model-specific. Alternatively, at S4006, information regarding registration can also be sent from printer 104 to the client terminal 101, and the presence or absence of registration can be determined based on that information. Alternatively, after S4009, the client terminal 101 may query printer 104 or the printer management service 322.

[0062] First, OS413 performs a process to add identification supplement information to the device identification information. This is a necessary process when obtaining the extended setup information file (also called Exinf) 700 from the online support server 105, and it is sufficient if the string is different from the normal device identification information. The device identification information with the added identification supplement information is also called the extended device identification information.

[0063] In S4010, the OS313 of client terminal 101 sends a request to the online support service 351 to search for an extended setup information file containing extended device identification information, along with the extended device identification information. If device identification information without additional identification information is sent, the search result will either return a setup information file containing that device identification information, or no search result will be found. In that case, the printer driver provided by the printer 104 vendor, which is included in the returned setup information file, will be installed. Furthermore, because the device identification information does not have additional identification information, as explained later, it becomes impossible to identify the extended setup information file, and therefore it becomes impossible to extract the application ID of the print setting extended application 312 contained therein.

[0064] On the other hand, by using the extended device identification information to which additional identification information has been added, the target extended setup information file can be identified, and the application ID of the print setting extended application 312 can be extracted from it.

[0065] When online support service 351 receives a request to search for an extended setup information file, it determines whether it possesses an extended setup information file containing the target extended device identification information. In S4011, if online support service 351 possesses an extended setup information file containing the device identification information received along with the Exinf search request, it returns the extended setup information file to OS313. At this time, the contents of the extended setup information file are written to the registry.

[0066] Next, OS313 on S4012 installs the extended setup information contained in the extended setup information file received from online support service 351. Then, OS313 on S4013 extracts the application ID from the installed extended setup information.

[0067] The online support service 351 does not need to respond if it cannot find an extended setup information file containing the target device identification information. In this case, the OS 313 will abort the application installation process, leaving the local printer driver installation complete, for example, due to a timeout. Instead of a timeout, the online support service 351 may return a response indicating that the relevant extended setup information file is not found, and the client terminal 101 may abort the process accordingly.

[0068] In S4015, OS313 requests the application management service 331 to send an application whose application ID matches the one extracted in S4013. To do this, for example, the application ID can be sent along with the application request.

[0069] The application management service 331 determines whether it has a program that matches the requested application ID, for example, the print settings extension app 312. If it does, in S4016 the application management service 331 sends the print settings extension app 312 that matches the requested application ID to the client terminal 101.

[0070] In S4017, OS313 installs the acquired print settings extension application 312, associating it with the print queue on the client terminal. Specifically, for example, the installation of the print settings extension application 312 saves the application ID as print queue information in the OS313 registry. When the generated print queue is called, OS313 uses this information to launch the installed print settings extension application 312. Since the print queue is associated with the printer driver, the association with the print queue can also be said to be an association with the printer driver.

[0071] On the other hand, if the system does not have a print settings extension application that matches the requested application ID, it will not return a response and a timeout will occur. As a result, in S4018, the OS313 of client terminal 101 will abort the application (print settings extension application) installation process, even though the installation of the local printer driver 311 is complete. At this point, the application management service 331 will return a response indicating that the corresponding extension application does not exist, and the OS313 of client terminal 101 may abort the process accordingly.

[0072] As described above, when installing the printer driver on a client terminal, the print settings extension application can be obtained and installed for printers registered with the cloud print service. In this case, as long as the printer is registered with the cloud print service, the print settings extension application will be installed automatically without user intervention. This print settings extension application 312 monitors the print port of the local printer driver to detect when printing is initiated and performs the appropriate processing. Details of the processing are explained below.

[0073] ● Procedure for printing Next, using Figure 5, we will explain an example of the procedure for a user to perform printing in this embodiment, as well as the sequence between each software and print service.

[0074] Of the following steps, steps S5001 to S5005 are performed when the print settings extension application 312 is first installed on the client terminal 101. Furthermore, the processing from S5006 onwards can be executed if S5005 has already been executed. Therefore, if these steps have been performed once and the print settings extension application 312 holds the tenant URL of the cloud print system 102, steps S5001 to S5005 may be omitted. Also, similar to Figures 4A and 4B, in Figure 5, the processing of the client terminal 101, printer 104, and cloud print system 102 is performed by the execution of programs by their respective CPUs. The sequence in Figure 5 is executed, for example, in response to an operation by the user on the client terminal 101, which requests the printer 104 to access the cloud print service 321, for example, a URL. This operation can be achieved, for example, by accessing a predetermined access destination provided by the server running on the printer 104 using a browser.

[0075] First, client terminal 101, on which the print settings extension application 312 is installed on S5001, requests the printer 104 to provide the URL of the cloud print service tenant (CPS tenant URL) to which the printer is registered.

[0076] S5002 determines whether printer 104 is registered with the cloud print service 321 of the cloud print system 102. One way to determine this is to check if the cloud service integration application, which is installed on printer 104 to use the services provided by the cloud print service 321, is installed on printer 104.

[0077] If printer 104 cannot be confirmed to be registered with the cloud print service 321, printer 104 sends error information to the print settings extension application 312 via S5003.

[0078] If an error is received in S5004, client terminal 101 will terminate processing in S5004.

[0079] If it is confirmed that printer 104 is registered with the cloud print service 321, printer 104 sends the tenant URL of the cloud print service 321 to client terminal 101 in S5005. The tenant URL can be obtained, for example, from information held by the cloud service integration application installed on printer 104. However, the URL sent in S5005 may be a URL for obtaining print settings for hold printing from the cloud print service 321.

[0080] The steps described above are the procedure to be performed when the print settings extension application 312 is installed for the first time. The acquired CPS tenant URL is stored in a designated storage location and referenced when needed. Once the client terminal 101 has acquired the CPS tenant URL, it only needs to perform the following steps: S5006 and below.

[0081] In S5006, the print settings application 312 of the client terminal 101, which has obtained the tenant URL, enters a state of waiting for the execution of a print job submission. This is intended to detect when a print job submission is executed on the communication port of the local printer driver 311 installed on the client terminal 101, which is configured to send a print job to the printer 104.

[0082] When a user prints from client terminal 101, S5007 executes the extended print settings provided by the print settings extension application 312 of client terminal 101. S5007 is a process that accepts operations such as displaying the user interface (UI) for print settings provided by the local printer driver 311, and may display the UI accordingly and proceed to the next step.

[0083] In S5008, the print settings extension application 312 of the client terminal 101 requests the cloud print service 321 of the cloud print system 102 to retain settings on the tenant, based on the URL obtained in S5005. Tenant settings are mainly set by the tenant administrator and include print settings that are permitted to be used when printing via the cloud print service 321. These include, for example, allowing users to print only in black and white and prohibiting color printing, or recommending 2-in-1 printing. Furthermore, the settings requested in S5008 include settings (tenant URL) to be retained in the cloud.

[0084] In S5009, the cloud print service 321 of the cloud print system 102 sends configuration values ​​held by the tenant to the client terminal 101. The configuration values ​​sent in S5009 include configuration values ​​(tenant URL) to be stored in the cloud. When the client terminal 101 sends print job data to the tenant URL included in the configuration values ​​obtained in S5009, that print job data is stored in the cloud print service 321 that received it.

[0085] In S5010, the print settings extension application 312 on the client terminal 101 presents (displays) an extended print settings screen that applies the information received in S5009, and the user applies the desired print settings. Here, the user may input print settings based on the setting values ​​obtained from the cloud print service 321. The obtained setting values ​​may be fixed values, for example, or values ​​that indicate limits on the setting values, including upper and lower limits. If it is a fixed value, the setting value cannot be changed, and if it is a value that indicates a limit, the setting may be set within the range that conforms to that limit.

[0086] After the user applies the print settings, they instruct the local printer driver 311 on the client terminal 101 to execute printing. In response, the local printer driver 311 on the client terminal 101 attempts to send print job data to the print port, such as the configured IP address, via S5011. Print job data is the data that constitutes the print job, and here it includes the target content as well as the print settings. However, if information other than the content to be printed, such as print settings, is considered separate print job information from the print job data, then the targets of transmission will be the print job data and print job information.

[0087] In S5012, the print settings extension application 312, which was waiting for job submission via S5006, detects the execution of a print job on the monitored print port and stops the print process on the client terminal 101. This stops the print job that was about to be sent from the client terminal 101 to the printer 104.

[0088] In S5013, the print settings extension application 312 on client terminal 101 sends the print job data that was being attempted to be printed in S5011 to the cloud print system 102. The destination is the CPS tenant URL obtained in S5009.

[0089] In S5014, after completing the reception of the print job data in S5013, the cloud print system 102 sends a notification to the print settings extension application 312 on the client terminal 101 indicating that the reception of the print job data has been completed. At this point, the print job data sent from the client terminal 101 is held by the cloud print service 102. Therefore, the processing from S5015 onwards may be performed asynchronously with the processing up to this point.

[0090] A user who wants to print using S5015 logs in to printer 104, and the client terminal 101 holds the user ID of the logged-in user. Note that the printer the user logs into does not necessarily have to be printer 104; any printer registered in the tenant of the cloud print system 102 will suffice.

[0091] In S5016, printer 104 requests a list of print jobs associated with the logged-in user from the cloud print system 102. Along with this request, the logged-in user's user ID is also sent.

[0092] In S5017, the cloud print system 102 creates a list of print jobs associated with the user ID received in S5016.

[0093] In S5018, the cloud print system 102 sends the list of print jobs created in S5017 to the printer 104.

[0094] When the user selects a job to print and instructs it to run, printer 104 in S5019 requests cloud print system 102 to send the selected job data.

[0095] In S5020, the cloud print system 102 sends the print job data instructed in S5019 to the printer 104.

[0096] In S5021, printer 104 performs output processing (printing) of the print job received by S5020.

[0097] If S5009 fails to obtain the tenant URL for holding or a setting value containing it, the print job may be sent to printer 104 without performing a hold print. In this case, the print settings application 312 should stop monitoring the transmission of print job data by the local printer driver 311 and leave the processing to the local printer driver 311.

[0098] Additionally, while S5005 and S5009 obtain URLs for configuration and sending print job data, S5005 can obtain both URLs from the printer in a single transaction.

[0099] As described above, even when printing using a local printer driver, the print settings extension application allows the print job data to be sent to the cloud print service instead of the output printer of the local printer driver. Although the printer to which the print job data is sent by the local printer driver 311 and the printer that receives and executes the print job data from the cloud print service 321 are the same printer, these may be different printers.

[0100] ● Processing of the print settings extension application 312 Next, using the flowchart shown in Figure 6, we will explain the process implemented based on the print settings extension application 312 (extension application program) executed on the client terminal 101. The process in Figure 6 is the procedure for the client terminal 101 in Figure 5, and is implemented when the CPU 212 of the client terminal 101 executes a program, particularly the print settings extension application 312.

[0101] When a user operates a client terminal and starts the printing process, the print settings extension application 312 in S601 determines whether it has the tenant URL for the cloud print service 321. If it has the tenant URL, it proceeds to S609; otherwise, it proceeds to S602.

[0102] In S602, the print settings extension application 312 requests the OS 313 for the IP address of the printer 104, which is the destination of the print job, and which is held by the local printer driver 311 associated with the print settings extension application 312 when it is installed.

[0103] On S603, OS313 notifies the print settings extension application 312 of the IP address of printer 104.

[0104] On S604, the print settings extension application 312 uses the IP address obtained by S603 to request the tenant URL of the cloud print service 321 held by the printer 104.

[0105] If printer 104 is registered with the cloud print service 321, the print settings extension application 312 in S605 receives the tenant URL of the cloud print service 321 held by printer 104 from printer 104.

[0106] In S606, the print settings extension application 312 stores the tenant URL received from printer 104. Here, if printer 104, which was the target of the request in S604, is registered with the cloud print service 321, the tenant URL can be received from that printer.

[0107] In S607, the print settings extension application 312 starts monitoring the communication port used by the local printer driver 311, which was associated with the print settings extension application 312 when it was installed, when sending a print job.

[0108] In S608, the print settings extension application 312 determines whether to detect the execution of a print job using the job submission port of the monitored local printer driver 311. If a job submission is detected, it transitions to S609; otherwise, it transitions to S607 and continues monitoring the job submission port.

[0109] On S609, the print settings extension application 312 stops the execution of print jobs that OS313 is running, which were detected on S608.

[0110] In S610, the print settings extension application 312 requests the print job data that was stopped in S609 from OS313.

[0111] On S611, the print settings extension application 312 receives print job data from OS313, which received a job stop request from the print settings extension application 312 on S610.

[0112] In S612, the print settings extension application 312 sends the print job data obtained in S611 to the tenant URL of the cloud print service 321 it holds. Then the process ends.

[0113] If the tenant URL for storage cannot be obtained in S605, the process may be terminated.

[0114] By following the steps described above, the print settings extension application stops the local printer driver from sending print job data directly to the printer, retrieves the print job data, and sends it to the cloud print service. This allows users to enjoy the cloud print service even without a CPS printer driver to send print job data to the cloud print service, for example, by using a local printer driver provided by the OS.

[0115] ● Sending the tenant URL for the cloud print service via the printer. Next, we will explain the process of sending the tenant URL for the cloud print service, which is executed by the printer, using the flowchart shown in Figure 7. Figure 7 is a flowchart related to the processing of the printer 104, which receives a CPS tenant URL request from the client terminal 101 in S5001 of Figure 5. The procedure in Figure 7 is realized by the execution of a program by the CPU 232 of the printer 104. Therefore, the explanation of Figure 7 will be mainly written from the perspective of the CPU 232.

[0116] First, CPU232 in S701 receives a tenant URL request from the print settings extension application 312. This process corresponds to S5001 in Figure 5.

[0117] In S702, the CPU 232 of printer 104 determines whether the cloud service integration application for connecting with the cloud print service 321 is installed. If the cloud service integration application is installed, the process transitions to S703; otherwise, it transitions to S705.

[0118] In S703, the CPU232 of printer 104 determines whether it can obtain the tenant URL from the cloud service integration application. If the tenant URL can be obtained, it transitions to S704; otherwise, it transitions to S705.

[0119] If the tenant URL is successfully obtained, the CPU 232 of printer 104 in S704 sends the tenant URL of the cloud print service 321 to the print settings extension application 312.

[0120] If the cloud service integration application is not installed on printer 104, or if the tenant URL cannot be obtained from the application, CPU 232 in S705 notifies the print settings extension application 312 of an error.

[0121] Following the above procedure, printers registered with the client print service can send the CPS tenant URL to the client terminal upon request. Upon receiving the CPS tenant URL, the client terminal can use it to send print job data to the cloud print service.

[0122] ● Effects of the embodiment According to this embodiment, a printing system that works in conjunction with a cloud print service can be provided by using an extended application that can communicate with the cloud print service. In this printing system, the client terminal uses, for example, a local printer driver that is included as standard with the OS, and does not require a special printer driver for CPS integration. Furthermore, even when using a local printer driver, the print settings of the cloud print service can be applied.

[0123] For more details, on client terminals, when installing the local printer driver for a printer registered with the client print service, the extended application can be installed along with the local printer driver. On client terminals where the extended application is installed, print jobs created using the local printer driver are sent to the client print service instead of the printer associated with the local printer driver. Furthermore, before sending a print job, the settings and print settings (or their restrictions) can be obtained from the cloud print service and reflected in the print settings of the print job being sent. These procedures are performed without any special user intervention when using the printer, provided that the printer is registered with the cloud print service and the cloud service integration application is registered with the printer. Therefore, users of client terminals can use the cloud print service without performing any operations to use the cloud print service.

[0124] Furthermore, the print settings extension app makes the cloud print service appear to the client terminal user (including application programs) as if it were a locally connected printer. Therefore, it is possible to treat the cloud print service in the same way as a locally connected printer.

[0125] [Embodiment 2] In Embodiment 2, the print settings extension application 312 is installed in association with the local printer driver. The print settings extension application 312 transfers print jobs executed by the local printer driver to the cloud print service, and the print settings extension application 312 deletes the print jobs. This configuration will be described below.

[0126] The network system configuration diagram in this embodiment is the same as that shown in Figure 1 of Embodiment 1. The hardware configuration of the system in this embodiment is the same as that shown in Figure 2 of Embodiment 1. The module configuration in this embodiment is the same as that shown in Figure 3 of Embodiment 1. The procedure for installing the print settings extension application 312 in this embodiment, as well as the sequence between each software and print service, is the same as that shown in Figure 4 of Embodiment 1.

[0127] ● Procedure for printing Next, using Figure 8, an example of the procedure for a user to perform printing in this embodiment, as well as an example of the sequence between each software and print service, will be explained. Figure 8 shows the sequence of printing in this embodiment, replacing Figure 5 of Embodiment 1. In Figure 8, the processing of the client terminal 101, printer 104, and cloud print system 102 is also performed by the execution of programs by their respective CPUs. In this embodiment, the transmission of print job data from the client terminal 101 is not stopped, and the printer 104 deletes the print job data received from the client terminal 101 without printing it.

[0128] The processing from S8001 to S8010 is the same as that from S5001 to S5010 in Embodiment 1.

[0129] In S8011, client terminal 101 sends print job data with print settings applied in S8010 to printer 104. This transmission is performed by local printer driver 311.

[0130] In S8012, printer 104 deletes the print job data received by S8011. This occurs, for example, when a cloud service integration application installed on printer 104 to work with a cloud print service deletes the print job data received from client terminal 101.

[0131] In S8013, client terminal 101 sends print job data to the cloud print system 102 that is the same as the print job data sent to printer 104 in S8011. This transmission is performed by the print settings extension application 312.

[0132] From S8014 onwards, the procedure is the same as from S5014 onwards in Embodiment 1. In this embodiment, the printer 104 to which print job data is sent by the local printer driver 311 and the printer 104 that acquires and executes print job data from the cloud print service 321 are the same printer. However, these may, of course, be different printers.

[0133] As described above, the same effects as in Embodiment 1 can be obtained in this embodiment as well.

[0134] If the tenant URL for saving the print job cannot be obtained with S8009, the print job may be sent to printer 104 without performing saved printing. In that case, the print settings application 312 should stop monitoring the transmission of print job data by the local printer driver 311 and leave the processing to the local printer driver 311.

[0135] Additionally, while S8005 and S8009 obtain URLs for configuration and sending print job data, S8005 can obtain both URLs from the printer in a single transaction.

[0136] [Other examples] 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.

[0137] ●Summary of Embodiments The above embodiments can be summarized as follows: (Item 1) An information processing device connected via a communication network to a cloud print service that holds print jobs received from the information processing device and to a printer, A search means for searching for a printer on the aforementioned communication network, An acquisition means for acquiring first device identification information for linking with the cloud print service from a printer registered with the cloud print service that responded to the search, The system includes an installation means for installing a program that, based on the first device identification information, sends print jobs output by the printer driver corresponding to the printer to the cloud print service. An information processing device characterized by the following: (Item 2) The information processing device described in item 1, The acquisition means further acquires the printer name from the printer, The installation means further installs the printer driver corresponding to the first device identification information and the printer name as the printer driver corresponding to the printer, and associates the program with the printer driver. An information processing device characterized by the following: (Item 3) An information processing device as described in item 1 or 2, The installation means obtains information associated with the first device identification information from the first server, and obtains the program corresponding to the program identification information contained in the information from the second server and installs it. An information processing device characterized by the following: (Item 4) The information processing device described in item 3, The acquisition means acquires a second device identification information unique to the printer from a printer that is not registered with the cloud print service in response to the search, The installation means will not install the program if it cannot obtain the first device identification information and cannot obtain the information associated with the first device identification information from the first server. An information processing device characterized by the following: (Item 5) An information processing device described in any one of items 1 to 4, The program is executed, the program monitors the print jobs output by the printer driver, and if such print jobs exist, the print jobs are sent to the cloud print service. An information processing device characterized by the following: (Item 6) The information processing device described in item 5, The program, when it detects a print job being output by the printer driver, stops the printer driver from outputting the print job and sends the print job to the cloud print service. An information processing device characterized by the following: (Item 7) An information processing device as described in item 5 or 6, The program, when it detects a print job being output by the printer driver, sends the print job to the cloud print service without stopping the printer driver's output of the print job. The print job output to the printer by the printer driver is deleted by the printer. An information processing device characterized by the following: (Item 8) An information processing device described in any one of items 5 to 7, The program obtains print settings from the cloud print service and sends the print settings based on the obtained print settings to the cloud print service as the print settings for the print job. An information processing device characterized by the following: (Item 9) A program for causing a computer to function as an information processing device as described in any one of items 1 through 8. (Item 10) A method for installing a program in an information processing device connected via a communication network to a cloud print service that holds print jobs received from the information processing device and a printer, The search means of the information processing device includes a search step of searching for a printer on the communication network, The acquisition means of the information processing device includes an acquisition step of acquiring first device identification information for linking with the cloud print service from a printer registered with the cloud print service that responded to the search, The installation means for the information processing device includes an installation step of installing a program that, based on the first device identification information, sends print jobs output by a printer driver corresponding to the printer to the cloud print service. A method for installing the program characterized by the above. (Item 11) A program that runs on a computer connected via a communication network to a cloud print service that holds received print jobs and a printer, A monitoring means for monitoring print jobs output by a printer driver corresponding to the aforementioned printer, If there is a print job, a transmission means sends the print job to the cloud print service. A program that makes a computer function. (Item 12) The program described in item 11, The aforementioned printer is a printer that has been registered with the aforementioned cloud printing service. The program further causes the computer to function as an acquisition means for obtaining the destination of the request for setting values ​​from the printer to the cloud print service. The transmission means, in response to the request for the setting value, obtains the destination of the print job and transmits the print job to the destination. A program characterized by the following features. (Item 13) A program as described in item 11 or 12, The aforementioned printer is a printer that has been registered with the aforementioned cloud printing service. The program further causes the computer to function as an acquisition means for obtaining the destination of the print job from the printer to the cloud print service, The transmission means transmits the print job to the destination of the print job. A program characterized by the following features. (Item 14) A program as described in item 12 or 13, If the transmission means has already obtained the destination, it will send the print job to the obtained destination. A program characterized by the following features. (Item 15) A program as described in item 12 or 13, If the destination of the print job cannot be obtained by the acquisition means, the monitoring means will not monitor the print job output by the printer driver. A program characterized by the following features. (Item 16) A program described in any one of items 11 to 15, The transmission means, when it detects a print job being output by the printer driver, stops the printer driver from outputting the print job and sends the print job to the cloud print service. A program characterized by the following features. (Item 17) A program described in any one of items 11 through 16, The transmission means, when it has a print job output by the printer driver, transmits the print job to the cloud print service without stopping the output of the print job by the printer driver. The print job output to the printer by the printer driver is deleted by the printer. A program characterized by the following features. (Item 18) A program described in any one of items 11 through 17, The program further causes the computer to function as a second acquisition means for obtaining print settings from the cloud print service, The transmission means transmits the print settings based on the print settings acquired by the second acquisition means as the print settings for the print job to the cloud print service. A program characterized by the following features.

[0138] 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, claims are attached to disclose the scope of the invention. [Explanation of symbols]

[0139] 101 Client terminals, 102 Cloud print system, 103 Application management server, 104 Printer, 105 Online support server

Claims

1. An information processing device connected via a communication network to a cloud print service that holds print jobs received from the information processing device and to a printer, A search means for searching for a printer on the aforementioned communication network, An acquisition means for acquiring first device identification information for linking with the cloud print service from a printer registered with the cloud print service that responded to the search, The system includes an installation means for installing a program that, based on the first device identification information, sends print jobs output by the printer driver corresponding to the printer to the cloud print service. An information processing device characterized by the following:

2. An information processing apparatus according to claim 1, The acquisition means further acquires the printer name from the printer, The installation means further installs the printer driver corresponding to the first device identification information and the printer name as the printer driver corresponding to the printer, and associates the program with the printer driver. An information processing device characterized by the following:

3. An information processing apparatus according to claim 1, The installation means obtains information associated with the first device identification information from the first server, and obtains the program corresponding to the program identification information contained in the information from the second server and installs it. An information processing device characterized by the following:

4. An information processing apparatus according to claim 3, The acquisition means acquires a second device identification information unique to the printer from a printer that is not registered with the cloud print service in response to the search, The installation means will not install the program if it cannot obtain the first device identification information and cannot obtain the information associated with the first device identification information from the first server. An information processing device characterized by the following:

5. An information processing apparatus according to claim 1, The program is executed, the program monitors the print jobs output by the printer driver, and if such print jobs exist, the print jobs are sent to the cloud print service. An information processing device characterized by the following:

6. An information processing device according to claim 5, The program, when it detects a print job being output by the printer driver, stops the printer driver from outputting the print job and sends the print job to the cloud print service. An information processing device characterized by the following:

7. An information processing device according to claim 5, The program, when it detects a print job being output by the printer driver, sends the print job to the cloud print service without stopping the printer driver's output of the print job. The print job output to the printer by the printer driver is deleted by the printer. An information processing device characterized by the following:

8. An information processing apparatus according to claim 5, The program obtains print settings from the cloud print service and sends the print settings based on the obtained print settings to the cloud print service as the print settings for the print job. An information processing device characterized by the following:

9. A program for causing a computer to function as an information processing device according to any one of claims 1 to 8.

10. A method for installing a program in an information processing device connected via a communication network to a cloud print service that holds print jobs received from the information processing device and a printer, The search means of the information processing device includes a search step of searching for a printer on the communication network, The acquisition means of the information processing device includes an acquisition step of acquiring first device identification information for linking with the cloud print service from a printer registered with the cloud print service that responded to the search, The installation means for the information processing device includes an installation step of installing a program that, based on the first device identification information, sends print jobs output by a printer driver corresponding to the printer to the cloud print service. A method for installing the program characterized by the above.

11. A program that runs on a computer connected via a communication network to a cloud print service that holds received print jobs and a printer, A monitoring means for monitoring print jobs output by a printer driver corresponding to the aforementioned printer, If there is a print job, a transmission means sends the print job to the cloud print service. A program that makes a computer function.

12. The program according to claim 11, The aforementioned printer is a printer that has been registered with the aforementioned cloud printing service. The program further causes the computer to function as an acquisition means for obtaining the destination of the request for setting values ​​from the printer to the cloud print service. The transmission means, in response to the request for the setting value, obtains the destination of the print job and transmits the print job to the destination. A program characterized by the following features.

13. The program according to claim 11, The aforementioned printer is a printer that has been registered with the aforementioned cloud printing service. The program further causes the computer to function as an acquisition means for obtaining the destination of the print job from the printer to the cloud print service, The transmission means transmits the print job to the destination of the print job. A program characterized by the following features.

14. A program according to claim 12 or 13, If the transmission means has already obtained the destination, it will send the print job to the obtained destination. A program characterized by the following features.

15. A program according to claim 12 or 13, If the destination of the print job cannot be obtained by the acquisition means, the monitoring means will not monitor the print job output by the printer driver. A program characterized by the following features.

16. The program according to claim 11, The transmission means, when it detects a print job being output by the printer driver, stops the printer driver from outputting the print job and sends the print job to the cloud print service. A program characterized by the following features.

17. The program according to claim 11, The transmission means, when it has a print job output by the printer driver, transmits the print job to the cloud print service without stopping the output of the print job by the printer driver. The print job output to the printer by the printer driver is deleted by the printer. A program characterized by the following features.

18. The program according to claim 11, The program further causes the computer to function as a second acquisition means for obtaining print settings from the cloud print service. The transmission means transmits the print settings based on the print settings acquired by the second acquisition means as the print settings for the print job to the cloud print service. A program characterized by the following features.