Information processing device, control method for information processing device, and program
By transmitting reference print jobs specifying cloud storage locations, the apparatus enables efficient printing of large files directly from cloud storage, reducing data transfer costs and ensuring compliance with capacity limits.
Patent Information
- Application Number
- JP2021200256
- Authority / Receiving Office
- JP · JP
- Patent Type
- Patents
- Current Assignee / Owner
- Filing Date
- 2021-12-09
- Publication Date
- 2025-09-08
- Estimated Expiration
- 2041-12-09
AI Technical Summary
Cloud print services often impose capacity limits on print jobs, leading to rejected jobs when file sizes exceed the limit, and charge based on data transfer, increasing costs.
An information processing apparatus that transmits a reference print job specifying the storage location of document data in URI format, allowing the image forming apparatus to directly access the data from the cloud storage without downloading, thus avoiding capacity limits and reducing data transfer.
Reduces data transfer costs and ensures printing can be performed even with large file sizes by allowing the image forming apparatus to process print jobs directly from cloud storage, overcoming capacity limits and minimizing charges.
Smart Images

Figure 0007735172000001 
Figure 0007735172000002 
Figure 0007735172000003
Abstract
Description
[Technical Field]
[0001] The present invention relates to an information processing device, a control method for an information processing device, and a program. [Background technology]
[0002] A printing system is known in which a client terminal, which is an information processing device, transmits a print job to an image forming device via a cloud print service (see, for example, Patent Document 1). In such a printing system, the client terminal acquires document data from a storage location designated by a user, generates a print job based on the acquired document data, and transmits the print job to the image forming device via the cloud print service. [Prior art documents] [Patent documents]
[0003] [Patent Document 1] Japanese Patent Application Laid-Open No. 2012-133489 Summary of the Invention [Problem to be solved by the invention]
[0004] In some cloud print services, a print job capacity limit is set for the purpose of load reduction, etc. When a print job containing document data with a file size exceeding the capacity limit is sent to a cloud print service with such a print job capacity limit, the cloud print service will refuse to receive the print job. In other words, a problem occurs in which the print job is not sent to the image forming device, and the print job is not printed.
[0005] Furthermore, cloud services generally charge according to the amount of data transferred, which means that the cost of maintaining the cloud print service increases as the amount of data transferred increases.
[0006] An object of one aspect of the present invention is to reduce data transfer costs in printing using a cloud print service. [Means for solving the problem]
[0007] In order to achieve the above object, an information processing apparatus according to one aspect of the present invention is an information processing apparatus that transmits a print job for printing data to an image forming apparatus via a cloud print service, the information processing apparatus including a transmission unit that transmits the print job to the cloud print service, and the transmission unit transmits the reference print job to the cloud print service when the image forming apparatus has the capability to process a reference print job that specifies a storage location of the data in a predetermined format. and if the image forming device has the capability to process the reference print job and does not support the data format of the data, performing a process of transmitting a print job including data obtained by performing a predetermined conversion process on the data to the cloud print service. It is characterized by: [Effects of the Invention]
[0008] According to one aspect of the present invention, it is possible to reduce data transfer costs when printing using a cloud print service. [Brief explanation of the drawings]
[0009] [Figure 1] 1 is a configuration diagram illustrating an example of a printing system according to an embodiment of the present invention. [Figure 2] FIG. 2 is a block diagram showing the hardware configuration of the client terminal of FIG. 1. [Figure 3] FIG. 2 is a block diagram showing a hardware configuration of the image forming apparatus of FIG. 1. [Figure 4] 1. FIG. 4 is a sequence diagram showing the procedure of a printer registration process executed by the printing system of FIG. [Figure 5] FIG. 2 is a diagram for explaining setting values of an IPP in the present embodiment. [Figure 6] FIG. 10 is a sequence diagram showing a procedure of a conventional cloud print process. [Figure 7] 10 is a diagram illustrating an example of a conventional print job transmission packet from a client terminal to a cloud print service. [Figure 8] 1. FIG. 4 is a sequence diagram showing the procedure of a first cloud print process executed by the printing system of FIG. [Figure 9] 2 is an example of a print job transmission packet from the client terminal of FIG. 1 to the cloud print service. [Figure 10] FIG. 10 is a sequence diagram showing the procedure of a first cloud print process when it is determined in step S811 of FIG. 8 that the image forming apparatus does not have the capability to process the reference print job. [Figure 11] 10 is a flowchart showing the procedure of a first print control process executed by the client terminal of FIG. [Figure 12] 1. FIG. 4 is a sequence diagram showing the procedure of a second cloud print process executed by the printing system of FIG. [Figure 13] FIG. 13 is a sequence diagram showing the procedure of a second cloud print process when it is determined in step S1210 of FIG. 12 that the image forming apparatus does not have the capability to process the reference print job. [Figure 14] 10 is a flowchart showing the procedure of a second print control process executed by an application of the client terminal of FIG. [Figure 15] 1 is a configuration diagram illustrating an example of a printing system according to an embodiment of the present invention. [Figure 16] FIG. 16 is a sequence diagram showing the procedure of a third cloud print process executed by the printing system of FIG. [Figure 17] 2 is a diagram showing an example of a setting screen displayed on an output unit of the client terminal of FIG. 1. FIG. DETAILED DESCRIPTION OF THE INVENTION
[0010] An embodiment of the present invention will be described in detail below with reference to the drawings. Before describing the configuration of the printing system of this embodiment, the features of the printing system of this embodiment will be described. In the printing system of this embodiment, an administrator first registers an image forming apparatus with a tenant of a cloud print service. A tenant is a service system deployed on the cloud. Next, the administrator sets which users belonging to the tenant are permitted to use the image forming apparatus. A user permitted to use the image forming apparatus submits a print job including document data and print settings from a client terminal to the cloud print service. The cloud print service saves the received print job in storage. The image forming apparatus acquires the print job saved in the cloud print service and executes print processing for the acquired print job. The print job may be acquired by pull printing or push printing to the cloud print service.
[0011] 1 is a configuration diagram showing an example of a printing system 100 according to the present embodiment. The printing system 100 is composed of an image forming apparatus 101, a cloud integrated service 106, and one or more client terminals. In the present embodiment, as an example, a configuration will be described in which the printing system 100 includes three client terminals 102 to 104. The image forming apparatus 101, the cloud integrated service 106, and the client terminals 102 to 104 are each connected to each other so as to be able to communicate with each other via the Internet.
[0012] The image forming apparatus 101 is an image forming apparatus registered as a tenant of a cloud print service 107 of a cloud integration service 106. The image forming apparatus 101 acquires a print job from the cloud print service 107 and executes print processing of the acquired print job.
[0013] The client terminals 102 to 104 submit print jobs to a cloud print service 107 of a cloud integrated service 106. The client terminals 102 to 104 each include an application 105 for accessing the cloud print service 107. The application 105 is, for example, an internet browser, an Office app from Microsoft, or a Google Drive app from Google LLC. Note that, in this embodiment, a configuration will be described in which the client terminals 102 to 104 each include an application 105 with the same functions and configuration, but this configuration is not limiting. For example, the client terminals 102 to 104 may each include different applications as long as the applications can access the cloud print service 107. A user can use the application 105 to access the cloud print service 107 and save, edit, and issue print instructions for document data.
[0014] The cloud integrated service 106 provides multiple services such as a cloud print service 107, a cloud storage service 108, and a cloud communication service (not shown). The cloud integrated service 106 is, for example, G Suite from Google LLC or Microsoft 365. When using various services included in the cloud integrated service 106, a user can access them using the same authentication information. The authentication information is, for example, a username and a password.
[0015] The cloud print service 107 saves print jobs submitted from the client terminal 102 or the like based on instructions from a user, and transmits the print jobs to the image forming apparatus 101. The cloud storage service 108 is an online storage service that provides a service for managing document data and the like online. Examples of the cloud storage service 108 include Google Drive from Google LLC and OneDrive from Microsoft.
[0016] Next, we will explain the hardware configurations of the client terminals 102 to 104 and the cloud print service 107. In this embodiment, the client terminals 102 to 104 and the cloud print service 107 have the same hardware configuration, and the hardware configuration of the client terminal 102 will be explained below as an example.
[0017] Fig. 2 is a block diagram showing the hardware configuration of the client terminal 102 in Fig. 1. In Fig. 2, the client terminal 102 includes a CPU 201, a ROM 202, a RAM 203, an HDD 204, an input unit 205, an output unit 206, and a communication unit 207. These are connected to each other via a bus 208.
[0018] The CPU 201 directly or indirectly controls each device connected via the bus 208 and executes a program for realizing the present invention. The ROM 202 stores the BIOS and the like. The RAM 203 is used as a work area for the CPU 201 and also as a primary storage area for loading software modules for realizing the present invention. The HDD 204 stores the OS, which is basic software, and various software modules. Note that in this embodiment, the client terminal 102 may be configured to include a storage device such as an SSD (solid state drive) that has functions equivalent to those of an HDD, instead of an HDD. The input unit 205 is a keyboard, a pointing device, etc. The output unit 206 is, for example, a display that displays various information. The communication unit 207 is an interface for connecting to a network.
[0019] Fig. 3 is a block diagram showing the hardware configuration of the image forming apparatus 101 in Fig. 1. In Fig. 3, the image forming apparatus 101 includes a CPU 301, a ROM 302, a RAM 303, an HDD 304, an operation unit 305, a printer 306, and a communication unit 307. These are connected to each other via a bus 308.
[0020] The CPU 301 directly or indirectly controls each device connected via the bus 308 and executes a program for realizing the present invention. The ROM 302 stores the BIOS and the like. The RAM 303 is used as a work area for the CPU 301 and as a primary storage area for loading software modules for realizing the present invention. The HDD 304 stores the OS, which is the basic software, and various software modules. Note that in this embodiment, the image forming apparatus 101 may be configured to include an SSD (solid state drive) or the like that has equivalent functions to an HDD, instead of an HDD. The operation unit 305 is a touch-operable display. The printer 306 is a printer engine that executes printing processing of a print job received from an external device via the communication unit 307. The communication unit 307 is a network interface for connecting to the Internet or an office LAN.
[0021] 4 is a sequence diagram showing the steps of a printer registration process executed by the printing system 100 of FIG. 1. The printer registration process is a process for registering the image forming apparatus 101 with the cloud print service 107. The printer registration process is executed by the cloud print service 107 and the image forming apparatus 101. The printer registration process is executed when the image forming apparatus 101 receives a registration instruction from an administrator. This registration instruction is, for example, an operation in which the administrator selects the cloud print service 107 on the operation unit 305 of the image forming apparatus 101 and selects a registration button (not shown).
[0022] 4, first, in step S401, the image forming apparatus 101 that has received a registration instruction from an administrator transmits a registration processing request to the cloud print service 107 to register the image forming apparatus 101 in the cloud print service 107. Note that the protocol for the registration processing complies with the protocol defined by the cloud print service 107, and for example, the Register-Output-Device operation defined in PWG5100.22 is used.
[0023] In step S402, the cloud print service 107 checks the contents of the received registration processing request and transmits a registration processing response to the image forming apparatus 101 based on the results of the check. For example, if there is no problem with the contents of the received registration processing request, the cloud print service 107 performs a predetermined process to register the image forming apparatus 101 and transmits a registration processing response indicating that the registration was successful to the image forming apparatus 101. On the other hand, if there is a problem with the contents of the received registration processing request, the cloud print service 107 does not perform the predetermined process to register the image forming apparatus 101 and transmits a registration processing response indicating that the registration was unsuccessful to the image forming apparatus 101. In FIG. 4, the description will be given assuming that a registration processing response indicating that the registration was successful is transmitted to the image forming apparatus 101.
[0024] In step S403, the image forming apparatus 101, which has received the registration processing response indicating that the registration was successful, transmits a capability notification including its own capability information to the cloud print service 107. The capability notification corresponds to, for example, the Update-Output-Device-Attributes operation defined in PWG5100.18. In this embodiment, the capability notification is transmitted based on, for example, the setting values of the IPP (Internet Printing Protocol) shown in FIG. 5.
[0025] For example, the setting values of the attribute "Print-color-mode-supported" defined in IPP are "Auto," "Color," and "Monochrome." When "Auto" is selected, a color or black and white printout is output based on the settings of the image forming device 101. When "Color" is selected, a color printout is output. When "Monochrome" is selected, a color printout is output.
[0026] The setting value of the attribute "Finishing-supported" is a numerical value, and a numerical value corresponding to the finishing information supported by the image forming apparatus 101 is set. For example, when "20" is set in association with "Staple-top-left," a printed matter is output with a staple in "one place at the top left." When "22" is set in association with "Staple-top-right," a printed matter is output with a staple in "one place at the top right."
[0027] The setting values of the attribute "document-format-supported" are "application / pdf" and "image / pwg-raster." These indicate the data formats of print jobs that the image forming apparatus 101 can accept when printing. The setting values of the attribute "reference-uri-schemes-supported" are "http," "https," "ftp," and "ipp." These indicate which formats of location specification by URI are supported as a method of specifying document data of print jobs that the image forming apparatus 101 can accept when printing. In step S403, the image forming apparatus 101 transmits to the cloud print service 107 a capability notification including, as capability information, information indicating setting values supported by the image forming apparatus 101 from the multiple setting values described above.
[0028] In step S404, the cloud print service 107 receives the capability notification from the image forming device 101, checks the content of the received capability notification, and performs processing to link the capability information to the registered image forming device 101. In step S405, the cloud print service 107 completes this processing and transmits a capability notification response indicating this to the image forming device 101. Thereafter, the printer registration processing ends.
[0029] Next, a description will be given of a conventional cloud print process using the cloud print service 107. The conventional cloud print process is a process in which an image forming device 101 registered in the cloud print service 107 performs a print process on document data stored in the cloud storage service 108 in accordance with a print instruction sent to the cloud print service 107 from a conventional client terminal 102', which has a configuration similar to that of the client terminals 102 to 104. Note that in the following description, components of the client terminal 102 with "'" attached will be described as components of the client terminal 102'.
[0030] FIG. 6 is a sequence diagram showing the procedure of a conventional cloud print process. It is assumed in FIG. 6 that the printer registration process of FIG. 4 has been executed and the image forming device 101 has already been registered in the cloud print service 107. Also, in FIG. 6, it is assumed that an application 105' of a client terminal 102' has logged in to the cloud print service 107 and the cloud storage service 108. After logging in, the application 105' can access a resource specified by a URI and edit or download document data stored in the resource. The application 105' can also upload this document data and save it in the cloud print service 107. Furthermore, the application 105' can obtain printer capability information from the cloud print service 107 and issue a print instruction to the image forming device 101 registered in the cloud print service 107 via the cloud print service 107. The conventional cloud print process is executed when a user inputs a printer search instruction into the input unit 205' of the client terminal 102'.
[0031] 6, in step S601, the client terminal 102′ that has received a printer search instruction from a user sends a printer search request to the cloud print service 107. The printer search may be a method of searching by specifying all printers registered in the cloud print service 107, or a method of searching using filter conditions such as the name or location of a specific printer.
[0032] In step S602, the cloud print service 107 receives the printer search request and transmits printer list information indicating printers that match the printer search request from among the registered printers to the client terminal 102'.
[0033] In step S603, the client terminal 102' receives the printer list information and displays it on the output unit 206'. Next, in step S604, the user selects one printer, for example, the image forming device 101, from the printer list information. In step S605, the client terminal 102' detects that the image forming device 101 has been selected and sends a printer capability acquisition request to the cloud print service 107 to acquire capability information about the image forming device 101. The printer capability acquisition request corresponds to, for example, the Get-Printer-Attributes operation of IPP.
[0034] In step S606, in accordance with the received printer capability acquisition request, the cloud print service 107 transmits a printer capability response including capability information of the image forming device 101 to the client terminal 102′. This enables the client terminal 102′ to display print settings and generate a print job that matches the capabilities of the image forming device 101, based on the capability information of the image forming device 101 included in the received printer capability response.
[0035] Next, in step S607, the user opens the document data stored in the cloud storage service 108 using the application 105' and issues a print instruction for the document data. Upon detecting the user's print instruction, the application 105' sends, in step S608, a request to acquire the document data specified by the user to the cloud storage service 108. Upon receiving the request to acquire the document data, the cloud storage service 108 sends the requested document data to the application 105' in step S609.
[0036] In step S610, the application 105' transmits the document data acquired from the cloud storage service 108 and a request to start printing the document data to the CPU 201' of the client terminal 102'. In this way, the CPU 201' is notified that an instruction to print the document data acquired from the cloud storage service 108 has been issued. Next, in step S611, the client terminal 102' displays a print screen on the output unit 206' for making print settings for the acquired document data.
[0037] Next, in step S612, the user selects the cloud print service 107 as the print destination on the print screen and issues an instruction to send a print job of the document data. In step S613, the client terminal 102′ that has accepted the print job sending instruction sends a print job including the acquired document data and the print settings set on the print screen to the cloud print service 107. The print job corresponds to, for example, an IPP Print-Job operation. FIG. 7 shows an example of a conventional print job sending packet from the client terminal 102′ to the cloud print service 107. In FIG. 7, "color" and "two-position binding on the left" are set as the print settings, and PDF is set as the document format of the print job. Note that the entity of the document data is recorded in the Document Content.
[0038] In step S614, the cloud print service 107 saves the received print job in its storage. Next, in step S615, the cloud print service 107 notifies the image forming apparatus 101 that the print job has been submitted. The notification in step S615 corresponds to, for example, an IPP Get-Notifications operation. Note that, in the present embodiment, a configuration will be described in which a PUSH notification is sent from the cloud print service 107 to the image forming apparatus 101 in step S615, but the configuration is not limited to this. For example, a PULL notification may be sent from the image forming apparatus 101 to the cloud print service 107 to inquire about the presence or absence of an event.
[0039] Upon receiving the notification, the image forming apparatus 101 makes a print job acquisition request to the cloud print service 107 in step S616. The print job acquisition request corresponds to, for example, the IPP Fetch-Job operation. Upon receiving the print job acquisition request, the cloud print service 107 acquires the requested print job from its own storage and transmits the acquired print job to the image forming apparatus 101 in step S617.
[0040] In step S618, the image forming apparatus 101 executes the print processing of the received print job. Upon completing the print processing, in step S619, the image forming apparatus 101 transmits a completion notification indicating that the print processing has been completed to the cloud print service 107.
[0041] In step S620, the cloud print service 107, which has received the completion notification, deletes the print job saved in its own storage in step S614. Next, in step S621, the cloud print service 107 sends a print job completion notification to the client terminal 102′, and ends this process.
[0042] Here, the cloud print service 107 may impose a capacity limit on print jobs for the purpose of load reduction, etc. If a print job containing document data with a file size exceeding the capacity limit is sent to the cloud print service 107 that imposes such a capacity limit on print jobs, the cloud print service 107 will refuse to receive the print job. In other words, a problem occurs in that the print job is not sent to the image forming apparatus 101, and the print process of the print job is not executed.
[0043] In contrast, in this embodiment, if the image forming apparatus 101 has the ability to process a reference print job that specifies the storage location of document data in URI format, the reference print job is sent to the cloud print service 107.
[0044] Fig. 8 is a sequence diagram showing the steps of a first cloud print process executed by the printing system 100 of Fig. 1. Note that, in Fig. 8 as in Fig. 6, it is assumed that the printer registration process of Fig. 4 described above has been executed and the image forming device 101 has already been registered in the cloud print service 107. Also, in Fig. 8, it is assumed that the application 105 of the client terminal 102 has logged in to the cloud print service 107 and the cloud storage service 108. The first cloud print process is executed when the user inputs a printer search instruction into the input unit 205 of the client terminal 102.
[0045] 8, first, steps S801 to S806, which are the same as steps S601 to S606, are performed. Next, in step S807, the user opens document data stored in the cloud storage service 108 using the application 105 and issues a print instruction for the document data. Upon detecting the user's print instruction, the application 105 sends a URI indicating the storage location of the document data specified by the user and a print start request for the document data to the CPU 201 of the client terminal 102 in step S808. Note that if the document data that is the target of the print instruction is data stored in the local storage of the client terminal 102, the application 105 sends drawing data required for printing based on the document data and a print start request to the client terminal 102. In this embodiment, it is assumed that, as an example of a URI indicating the storage location of the document data specified by the user, a URI with a data format of https, "https: / / example.com / my.cloudstrage / personal / username / Documents / Printdocument1.pdf," is sent to the CPU 201 of the client terminal 102. Next, in step S809, the client terminal 102 displays on the output unit 206 a print screen for making print settings for the document data.
[0046] Next, in step S810, the user selects the cloud print service 107 as the print destination from the print screen and issues an instruction to send a print job of document data. In step S811, the client terminal 102, having received the instruction to send the print job, determines whether the image forming device 101 has the ability to process the reference print job based on the capability information included in the printer capability response sent from the cloud print service 107 in step S806. For example, if the capability information includes "https," which indicates the data format of the URI sent from the application 105 in step S808, the client terminal 102 determines that the image forming device 101 has the ability to process the reference print job. On the other hand, if the capability information does not include "https," which indicates the data format of the URI sent from the application 105 in step S808, the client terminal 102 determines that the image forming device 101 does not have the ability to process the reference print job.
[0047] If it is determined in step S811 that the image forming apparatus 101 has the capability to process the reference print job, the client terminal 102 transmits the reference print job to the cloud print service 107 in step S812. The reference print job is a print job that specifies the storage location of document data specified by the user in URI format, and corresponds to, for example, the IPP Print-URI operation. The print job transmitted in step S812 also includes access information, such as an access token, that enables the image forming apparatus 101 to acquire the document data from the cloud print service 107. It is assumed that the access token is assigned when the reference print job is generated by the client terminal 102. FIG. 9 shows an example of a print job transmission packet from the client terminal 102 in FIG. 1 to the cloud print service 107. In FIG. 9, the print settings are set to "color" and "two-position binding on the left side," and the document format of the print job is set to PDF. The storage location of the document data is also set in https format, and an access token is also set.
[0048] Next, steps S813 to S816, which are the same processes as steps S614 to S617, are performed. Next, in step S817, the image forming apparatus 101 acquires a URI indicating a storage location of the document data from the received print job. Next, in step S818, the image forming apparatus 101 transmits a document data acquisition request, which includes the acquired URI and the access token included in the received print job, to the cloud storage service 108.
[0049] In step S819, the cloud storage service 108 transmits document data corresponding to the received acquisition request to the image forming apparatus 101. In step S820, the image forming apparatus 101 executes print processing based on the received document data and the print job transmitted from the cloud print service 107 in step S816. Upon completion of the print processing, steps S821 to S823, which are the same as steps S619 to S621, are performed, and this processing ends.
[0050] As described above, in the embodiment described above, the image forming device 101 acquires the document data stored in the cloud print service 107 based on the URI included in the print job, without downloading the document data to the client terminal 102, and prints the acquired document data.
[0051] Next, the processing performed when it is determined in step S811 that the image forming apparatus 101 does not have the capability to process a reference print job will be described with reference to the sequence diagram shown in Fig. 10. If it is determined in step S811 that the image forming apparatus 101 does not have the capability to process a reference print job, the client terminal 102 transmits a document data acquisition request to the cloud storage service 108 in step S1001 of Fig. 10, similar to step 608 described above. Upon receiving this acquisition request, the cloud storage service 108 transmits the requested document data to the client terminal 102 in step S1002, similar to step S609.
[0052] Next, in step S1003, the client terminal 102 transmits a print job including the acquired document data to the cloud print service 107. Next, the processes of steps S813 to S816 and S820 to S822 described above are performed, and this process ends. The search process, the process of generating a print job including document data, and the process of transmitting the print job described with reference to FIGS. 8 and 10 are realized by a print framework incorporated in the OS (operating system) of the client terminal 102. When the client terminal 102 generates a print job including document data, the client terminal 102 may be configured to convert the document data using a printer driver that constitutes the print framework. In this case, the printer driver converts the document data into data such as PDF and generates a print job including the converted document data.
[0053] Fig. 11 is a flowchart showing the procedure of the first print control process executed by the client terminal 102 of Fig. 1. The first print control process is realized by the CPU 201 of the client terminal 102 executing a program stored in the ROM 202 or HDD 204. The first print control process is executed in step S808 when the application 105 transmits to the client terminal 102 a URI indicating the storage location of document data designated by the user and a request to start printing the document data.
[0054] In FIG. 11, first, the CPU 201 receives a URI and a print start request from the application 105 (step S1101). Next, the CPU 201 displays a print screen on the output unit 206 (step S1102) (see, for example, step S809). On this print screen, the user can set print settings such as the number of copies to print, color, or monochrome. The user can also select a cloud print service or a printer connected to the local network as the print destination. The user can then issue a print job transmission instruction using the selected settings.
[0055] When the CPU 201 receives a print job transmission instruction from the user (step S1103), it determines whether the print destination setting on the print screen is the cloud print service 107 (step S1104).
[0056] If it is determined in step S1104 that the print destination setting on the print screen is not the cloud print service 107, the CPU 201 executes print processing using the specified print method (step S1105). For example, if the print destination setting on the print screen is a printer connected to the local network, the CPU 201 acquires document data from the cloud storage service 108. The CPU 201 sends a print job including the acquired document data and the print settings set on the print screen to the printer specified by the user, and causes the printer to execute print processing of the print job. This process then ends.
[0057] If it is determined in step S1104 that the print destination setting on the print screen is the cloud print service 107, the CPU 201 determines whether the image forming apparatus 101 has the capability to process the reference print job (step S1106) (see, for example, step S811). In step S1106, as described above, the determination is made based on the capability information included in the printer capability response sent from the cloud print service 107 in step S806.
[0058] If it is determined in step S1106 that the image forming apparatus 101 has the capability to process the reference print job, the CPU 201 transmits the reference print job to the cloud print service 107 (step S1007) (see, for example, step S812). Based on this print job, the processes of steps S813 to S822 described above are performed. Next, the CPU 201 receives a print job completion notification from the cloud print service 107 (step S1108), and ends this process.
[0059] If it is determined in step S1106 that the image forming apparatus 101 is not capable of processing the reference print job, the CPU 201 acquires document data from the cloud storage service 108 (step S1109) (see, for example, steps S1001 and S1002). Next, the CPU 201 generates a print job including the acquired document data and transmits the generated print job to the cloud print service 107 (step S1110) (see, for example, step S1003). Note that if the CPU 201 receives drawing data necessary for printing based on the document data and a print start request, it skips the acquisition process, generates a print job including print data based on the drawing data received from the application 105, and transmits the generated print job to the cloud print service 107. Based on this print job, the processes of steps S813 to S816 and S820 to S822 described above are performed. Thereafter, the process proceeds to step S1108.
[0060] According to the above-described embodiment, if the image forming apparatus 101 has the capability to process a reference print job that specifies the storage location of document data in URI format, the reference print job is sent to the cloud print service 107. In other words, if the image forming apparatus 101 has the capability to process a reference print job, a print job that includes document data with a file size that exceeds the capacity limit of the cloud print service 107 will not be sent to the cloud print service 107. Furthermore, the image forming apparatus 101 can obtain the document data to be printed from the storage location specified in the reference print job. This makes it possible to avoid a situation in which printing cannot be performed due to the capacity limit of the cloud print service 107.
[0061] In the above-described embodiment, document data specified by the user is acquired from the cloud storage service 108, which stores multiple pieces of document data. This makes it possible to avoid a situation in which printing cannot be performed due to a capacity limit of the cloud print service 107 in a configuration in which document data is acquired from the cloud storage service 108.
[0062] In the above-described embodiment, the cloud storage service 108 and the cloud print service 107 are accessed using the same authentication information. That is, access is performed using authentication information corresponding to the logged-in user. This makes it possible to avoid a situation in which printing cannot be performed due to a capacity limit of the cloud print service 107 in a configuration in which communication is performed with the cloud integrated service 106, which includes the cloud storage service 108 and the cloud print service 107 that can be accessed using the same authentication information.
[0063] Note that, although the present embodiment has exemplified a case in which an access token is assigned when the client terminal 102 generates a reference print job, the process of assigning an access token can also be performed on the cloud print service 107. Specifically, the cloud print service 107 requests the cloud storage service 108 to issue an access token required to access data identified by a URI included in the reference print job. The cloud storage service 108 issues an access token with an expiration date that is the same as the storage period (e.g., three days) of the print job, and transmits the access token to the cloud print service 107. The cloud print service 107 assigns the received access token to the reference print job, and transmits the reference print job to the image forming apparatus 101.
[0064] Although the present invention has been described using the above-mentioned embodiment, the present invention is not limited to the above-mentioned embodiment. For example, the application 105 of the client terminal 102 may be configured to directly send a print job to the cloud print service 107.
[0065] FIG. 12 is a sequence diagram showing the steps of a second cloud print process executed by the printing system 100 of FIG. 1. The second cloud print process is similar to the first cloud print process described above, and the following describes the differences from the first cloud print process. In the second cloud print process, as in the first cloud print process, it is assumed that the printer registration process of FIG. 4 described above has been executed and the image forming device 101 has already been registered in the cloud print service 107. In the second cloud print process, as in the first cloud print process, it is assumed that the application 105 of the client terminal 102 has logged in to the cloud print service 107 and the cloud storage service 108. The second cloud print process is executed when the user inputs a printer search instruction on the application 105.
[0066] 12, in step S1201, the application 105 that has accepted a printer search instruction from the user transmits a printer search request to the cloud print service 107, similar to step S801. In step S1202, the cloud print service 107 that has received the printer search request transmits to the application 105 printer list information indicating a printer that matches the printer search request from among the multiple registered printers.
[0067] In step S1203, the application 105 receives the printer list information and displays it on the output unit 206. Next, in step S1204, the user selects one printer, for example, the image forming device 101, from the printer list information. In step S1205, the application 105 detects that the image forming device 101 has been selected and, similar to step S805, transmits a printer capability acquisition request to the cloud print service 107 to acquire capability information about the image forming device 101. Next, in step S1206, the cloud print service 107 transmits a printer capability response including the capability information about the image forming device 101 to the application 105 in accordance with the received printer capability acquisition request.
[0068] Next, in step S1207, the user opens the document data stored in the cloud storage service 108 using the application 105 and issues a print instruction for the document data. Upon detecting the print instruction, the application 105 displays a print screen on the output unit 206 in step S1208. Next, in step S1209, the user selects the cloud print service 107 as the print destination from the print screen and issues an instruction to send a print job for the document data. Next, in step S1210, similar to step S811, the application 105 determines whether the image forming device 101 has the capability to process the reference print job based on the capability information included in the printer capability response sent from the cloud print service 107 in step S1206.
[0069] If it is determined in step S1210 that the image forming apparatus 101 has the capability to process the reference print job, the application 105 in step S1211 transmits the reference print job to the cloud print service 107. Next, steps S1212 to S1222 are performed, which are the same processes as steps S813 to S823 described above.
[0070] If it is determined in step S1210 that the image forming apparatus 101 does not have the capability to process the reference print job, the application 105 transmits a document data acquisition request to the cloud storage service 108 in step S1301 of FIG. 13. Upon receiving this acquisition request, the cloud storage service 108 transmits the requested document data to the application 105 in step S1302. Next, in step S1303, the application 105 transmits a print job including the acquired document data to the cloud print service 107. Next, the processes of steps S1212 to S1215 and S1219 to S1222 described above are performed.
[0071] 14 is a flowchart showing the procedure of the second print control process executed by the application 105 of the client terminal 102 in FIG. 1. The second print control process is similar to the first print control process described above, but differs from the first print control process in that the main subject is the application 105. The following describes the differences from the first print control process. The second print control process is executed when the user issues a print instruction for document data in step S1207.
[0072] In FIG. 14, when the application 105 receives a print instruction from the user (step S1401), it displays a print screen on the output unit 206 (step S1402) (see, for example, step S1208). This print screen is not a print screen provided in the operating system of the client terminal 102, but a print screen provided by the application 105. On this print screen, the user can also set print settings such as the number of copies to be printed, color, or monochrome. The user can also select a cloud print service or a printer connected to the local network as the print destination. The user can issue a print job transmission instruction with the selected settings. Next, when the application 105 receives a print job transmission instruction from the user (step S1403), it determines whether the print destination setting on this print screen is the cloud print service 107 (step S1404).
[0073] If it is determined in step S1404 that the print destination setting on this print screen is not the cloud print service 107, the application 105 executes the print process using the instructed print method (step S1405), similar to step S1105. Thereafter, this process ends.
[0074] If it is determined in step S1404 that the print destination setting on this print screen is the cloud print service 107, the application 105 determines whether the image forming device 101 has the capability to process the reference print job (step S1406), similar to step S1106 (see, for example, step S1210).
[0075] If it is determined in step S1406 that the image forming apparatus 101 has the capability to process the reference print job, the application 105 transmits the reference print job to the cloud print service 107 (step S1407) (see, for example, step S1211), as in step S1107. Based on this print job, the processes of steps S1212 to S1222 described above are performed. Next, the application 105 receives a print job completion notification from the cloud print service 107 (step S1408), and ends this process.
[0076] If it is determined in step S1406 that the image forming apparatus 101 is not capable of processing the reference print job, the application 105 acquires document data from the cloud storage service 108 (step S1409) (see, for example, steps S1301 and S1302). Next, the CPU 201 transmits a print job including the acquired document data to the cloud print service 107 (step S1410) (see, for example, step S1303). Based on this print job, the processes of steps S1212 to S1215 and S1219 to S1222 described above are performed. Thereafter, the process proceeds to step S1408, and this process ends.
[0077] 12 to 14 can also achieve the same effects as the processes in FIGS. 8, 10, and 11 described above. The process of S1410 can be modified as follows: The application 105 transmits the acquired document data (actual data) and a print start request to the print framework of the client terminal 102. The print framework of the client terminal 102 generates a print job based on the document data using a printer driver, and transmits the generated print job to the cloud print service 107. That is, only when the other party supports reference print jobs, the application is configured to handle the generation, transmission, etc. of the reference print job. On the other hand, when the other party does not support reference print jobs, a print process is requested to the print framework of the client terminal 102 described in the first embodiment.
[0078] In the first and second print control processes described above, a configuration has been described in which a reference print job is transmitted when it is determined that the image forming device 101 has the capability to process the reference print job, but the configuration is not limited to this. For example, in addition to the result of this determination, it may also be determined whether the image forming device 101 supports the data format of the document data, based on this determination result, whether to transmit a reference print job or a print job including document data.
[0079] For example, when printing document data in an office document format, such as WORD or Excel, stored in the cloud storage service 108, if a reference print job is used, the image forming apparatus 101 will acquire the document data in the office document format directly from the cloud storage service 108. If the image forming apparatus 101 does not support document data in the office document format, the image forming apparatus 101 will be unable to print the document data acquired from the cloud storage service 108. Meanwhile, when generating a print job to be sent to the image forming apparatus 101 via the cloud print service 107, the application 105 or the client terminal 102 performs a conversion process to convert the document data in the office document format into a format suitable for printing, such as PDF, and includes the converted document data in the print job. This allows the image forming apparatus 101 to appropriately execute printing based on the acquired print job. In light of these factors, in this embodiment, whether to send a reference print job or a print job including document data is determined based on the determination result of whether the image forming apparatus 101 is capable of processing a reference print job, as well as the determination result of whether the image forming apparatus 101 supports the data format of the document data.
[0080] For example, if the image forming device 101 has the capability to process the reference print job but does not support the data format of the document data, the application 105 or the client terminal 102 sends a print job including document data converted into a format suitable for printing to the cloud print service 107. On the other hand, if the image forming device 101 has the capability to process the reference print job and supports the data format of the document data, the application 105 or the client terminal 102 sends the reference print job to the cloud print service 107. By controlling in this manner, it is possible to avoid a situation in which printing cannot be performed due to the image forming device 101 not supporting the data format of the document data.
[0081] Furthermore, the cloud print service 107 may be provided with a format conversion function, and modified as follows: When an instruction to print data in a format that the cloud print service 107 can convert is received, the application 105 or the client terminal 102 sends the reference print job to the cloud print service 107, regardless of whether the image forming apparatus 101 has the ability to process the reference print job. Upon receiving the reference print job, the cloud print service 107 identifies the data format based on the URI included in the reference print job. The cloud print service 107 then determines whether the image forming apparatus 101 supports the reference print job and whether the image forming apparatus 101 supports printing of data in that format. If the cloud print service 107 determines that the image forming apparatus 101 supports the reference print job and that the image forming apparatus 101 supports printing of data in that format, it transfers the reference print job to the image forming apparatus 101. On the other hand, if the cloud print service 107 determines that the image forming apparatus 101 does not support the reference print job, or that the image forming apparatus 101 supports the reference print job but does not support printing of data in the format, the cloud print service 107 performs a conversion process. Specifically, the cloud print service 107 converts the document data into a format supported by the image forming apparatus 101, and transmits a print job including the converted document data to the image forming apparatus 101.
[0082] Furthermore, in the second print control process described above, the client terminal 102 is provided with the application 105, but this is not limiting. The application 105 may be a web application running on an internet browser. In this case, for example, the cloud integrated service 106 provides the internet browser with screen data and control JavaScript (registered trademark) for a web application, such as an Office or chat application. The internet browser displays an operation screen for the web application based on the provided screen data and JavaScript. Thereafter, the backend server of the cloud integrated service 106 and the internet browser work together to perform print control processing. Specifically, the backend server performs search processing, screen generation processing, and determination processing, while the internet browser performs screen display processing and user operation reception processing. In this case, if the image forming apparatus 101 has the ability to process the reference print job, the web application sends the reference print job to the cloud print service 107. If the image forming apparatus 101 does not have the ability to process the reference print job, the web application sends a print job including document data to the cloud print service 107. Note that the print job including the document data can also be configured to be transmitted via the print framework of the client terminal 102, as explained in the modified example of the second embodiment.
[0083] Furthermore, in the first print control process and the second print control process described above, whether to transmit a reference print job or a print job including document data may be determined based on the determination result of whether the image forming apparatus 101 has the capability to process a reference print job and whether the size of the document data is less than a predetermined size. For example, if the size of the document data is equal to or greater than the remaining storage capacity of the cloud print service 107, the cloud print service 107 cannot receive a print job including this document data due to the capacity exceeding the limit. Therefore, if the image forming apparatus 101 has the capability to process a reference print job and the size of the document data is equal to or greater than the remaining storage capacity of the cloud print service 107, the reference print job is transmitted to the cloud print service 107. On the other hand, if the size of the document data is less than the remaining storage capacity of the cloud print service 107, the transmission of the print job including this document data is not prevented due to the capacity exceeding the limit. Therefore, if the image forming apparatus 101 has the capability to process a reference print job and the size of the document data is less than the remaining storage capacity of the cloud print service 107, the print job including this document data is transmitted to the cloud print service 107. By controlling in this way, it is possible to avoid a situation in which printing cannot be performed due to the remaining capacity of the storage of the cloud print service 107.
[0084] In the above-described embodiment, the cloud print service 107 and the cloud storage service 108 are included in the cloud integrated service 106, but the present invention is not limited to this configuration. For example, the cloud print service 107 and the cloud storage service 108 may be provided independently.
[0085] 15 is a configuration diagram showing an example of a printing system 1500 according to the present embodiment. Unlike the above-described printing system 100, the printing system 1500 has a configuration in which a cloud print service 107 and a cloud storage service 108 are provided independently. The image forming apparatus 101, the cloud print service 107, the cloud storage service 108, and the client terminals 102 to 104 are all connected to each other so that they can communicate with each other via the Internet. In the printing system 1500, the cloud print service 107 and the cloud storage service 108 each use different authentication information when accessing them.
[0086] FIG. 16 is a sequence diagram showing the steps of a third cloud print process executed by the printing system 1500 of FIG. 15. The third cloud print process is similar to the first cloud print process described above, and the following describes the differences from the first cloud print process. In the third cloud print process, as in the first cloud print process, it is assumed that the printer registration process of FIG. 4 described above has been executed and the image forming device 101 has already been registered in the cloud print service 107. The third cloud print process is executed when the user inputs a printer search instruction into the input unit 205 of the client terminal 102. In the third cloud print process, it is assumed that the settings on the setting screen 1700 of FIG. 17 have been made in advance.
[0087] FIG. 17 is a diagram showing an example of a setting screen 1700 displayed on the output unit 206 of the client terminal 102 in FIG. 1. The setting screen 1700 includes a check box 1701, a combo box 1702, a username setting field 1703, a password setting field 1704, an OK button 1705, and a cancel button 1706. The check box 1701 is a check box for setting whether to prioritize reference printing when reference printing using a reference print job is executable. The combo box 1702 is a combo box for selecting one cloud storage from multiple cloud storages managed by the cloud storage service 108. The username setting field 1703 is used to input a username to be used when connecting to the cloud storage selected in the combo box 1702. The password setting field 1704 is used to input a password to be used when connecting to the cloud storage selected in the combo box 1702. When the OK button 1705 is selected, the setting values set on the setting screen 1700 are saved in the HDD 204 of the client terminal 102, and the setting screen 1700 closes. When the cancel button 1706 is selected, the setting values set on the setting screen 1700 are not saved in the HDD 204 of the client terminal 102, and the setting screen 1700 is closed.
[0088] 16, first, steps S1601 to S1611 are performed, which are the same as steps S801 to S811 described above. If it is determined in step S1611 that the image forming apparatus 101 has the capability to process the reference print job, the client terminal 102 performs a process of checking the destination cloud storage service in step S1612. In this checking process, the client terminal 102 checks whether the information in the base part of the URI sent from the application 105 in step S1608 corresponds to the setting value of the combo box 1702 acquired from the HDD 204. For example, assume that the URI sent from the application 105 is "https: / / example.com / my.cloudstrage / personal / username / Documents / Printdocument1.pdf." In this case, the information in the base part of this URI is "https: / / example.com / my.cloudstrage." Here, the client terminal 102 previously stores information in the base part of the URI corresponding to the cloud storage indicated by the setting value of the combo box 1702 stored in the HDD 204. In step S1608, the client terminal 102 checks whether the information on the base part of the URI sent from the application 105 matches the information on the base part of the URI stored in advance. If the check shows that the information matches, the process proceeds to step S1613.
[0089] In step S1613, the client terminal 102 obtains from the HDD 204 the username and password to be used when connecting to the cloud storage service 108. Next, in step S1614, the client terminal 102 performs a login process to the cloud storage service 108 using the obtained username and password. Note that in the present embodiment, the login process is performed using the username and password obtained in step S1613, but this configuration is not limiting. For example, in step S1613, the client terminal 102 may display a dialog on the output unit 206 that prompts the user to input a username and password, and perform the login process using the input username and password. Next, in step S1614, the cloud storage service 108 transmits an access token to the client terminal 102. Next, steps S1616 to S1627 are performed, which are the same processes as steps S812 to S823 described above.
[0090] In the above-described embodiment, different authentication information is used to access the cloud storage service 108 and the cloud print service 107. This makes it possible to avoid a situation in which printing cannot be performed due to a capacity limit of the cloud print service 107 in a configuration in which the cloud storage service 108 and the cloud print service 107 are provided independently.
[0091] In the above-described embodiment, the configuration may be such that a cloud storage service that can be accessed with the same authentication information as the cloud print service is used preferentially, as in the printing system 100, and if such a service does not exist, any cloud storage service is used.
[0092] Furthermore, in the above-described embodiment, if the application 105 holds a username and password that serve as authentication information for the cloud storage service 108, the application 105 may send a print start request including this username and password to the client terminal 102 in step S1608, and the client terminal 102 may use this information to obtain an access token in step S1203.
[0093] Furthermore, in the above-described embodiment, if the application 105 holds an access token for the cloud storage service 108, the application 105 may send a print start request including this access token to the client terminal 102 in step S1608, and the client terminal 102 may send a print job based on the acquired access token without performing the processing of steps S1614 and S1615.
[0094] In the above-described embodiment, a print screen displayed on the output unit 206 of the client terminal 102 may display options for the user to select either “normal printing” or “reference printing.” Based on the option selected by the user, it may be determined whether to send a reference print job or a print job including document data. For example, if the user selects the “reference printing” option, the client terminal 102 or the application 105 sends a reference print job specifying the storage location of the document data in URI format to the image forming apparatus 101 without retrieving the document data specified by the user from the cloud storage service 108. On the other hand, if the user selects the “normal printing” option, the client terminal 102 or the application 105 retrieves the document data specified by the user from the cloud storage service 108 and sends a print job including the retrieved document data to the image forming apparatus 101. Note that the user may select “normal printing” when, for example, they want to save and check the contents of the print job on the client terminal 102 or when the image forming apparatus 101 cannot access the cloud storage service 108 due to security or other restrictions.
[0095] In the above-described embodiment, a print screen displayed on the output unit 206 of the client terminal 102 may display an ON / OFF button for a download print function that downloads document data and then prints the print job. The user may select the ON / OFF button to determine whether to send a reference print job or a print job including document data. For example, if the OFF button is set as the default setting for the download print function and the OFF button is selected as the default setting, the client terminal 102 or the application 105 sends a reference print job specifying the storage location of the document data in URI format to the image forming apparatus 101 without obtaining the document data specified by the user from the cloud storage service 108. On the other hand, if the user selects the ON button for the download print function, the client terminal 102 or the application 105 obtains the document data specified by the user from the cloud storage service 108 and sends a print job including the obtained document data to the image forming apparatus 101. This control allows the user's intention to easily be reflected in determining whether to use a reference print job or a print job including document data.
[0096] In the above-described embodiment, the configuration in which document data is stored in the cloud storage service 108 has been described, but the configuration is not limited to this. For example, the configuration may be such that the document data is stored in storage of the client terminal 102, such as the HDD 204, or the configuration may be such that the document data is stored in storage of the client terminals 103 and 104 other than the client terminal 102.
[0097] The present invention can also be realized by supplying a program that realizes one or more functions of the above-described embodiments to a system or device via a network or a storage medium, and having one or more processors in the computer of the system or device read and execute the program. The present invention can also be realized by a circuit (e.g., ASIC) that realizes one or more functions. [Explanation of symbols]
[0098] 101 Image forming device 102 client terminals 105 Applications 107 Cloud Print Service 108 Cloud Storage Services 201 CPU
Claims
1. An information processing apparatus that transmits a print job for printing data to an image forming apparatus via a cloud print service, a sending unit for sending the print job to the cloud print service; The information processing device is characterized in that the sending means sends the reference print job to the cloud print service if the image forming device has the ability to process a reference print job that specifies the storage location of the data in a predetermined format, and if the image forming device has the ability to process the reference print job but does not support the data format of the data, it sends a print job to the cloud print service that includes data that has been subjected to a predetermined conversion process on the data.
2. 2. The information processing apparatus according to claim 1, wherein the reference print job includes a token required for accessing a storage location of the data.
3. 3. The information processing device according to claim 1, wherein the sending unit sends the reference print job to the cloud print service if the image forming device has the capability to process the reference print job and the data volume is equal to or larger than a predetermined volume.
4. The system further includes an acquisition unit for acquiring data designated by a user from a cloud storage that stores a plurality of data items; The information processing device according to any one of claims 1 to 3, characterized in that, when the image forming device does not have the ability to process a reference print job that specifies the storage location of the data in a predetermined format, the sending means uses the acquisition means to send a print job generated based on data acquired from the data storage location to the cloud print service.
5. The information processing apparatus according to claim 4 , wherein the cloud storage and the cloud print service are accessed using the same authentication information.
6. The information processing apparatus according to claim 4 , wherein the cloud storage and the cloud print service are accessed using different authentication information.
7. An application and an operating system run on the information processing device, the sending means provided by the application sends a request to start printing the data to a print framework of the operating system if the image forming device does not have the capability to process the reference print job; 2 . The information processing apparatus according to claim 1 , wherein the print framework, upon receiving the print start request, performs processing to transmit a print job including data obtained by performing a predetermined conversion process on the data to the cloud print service.
8. The information processing device described in claim 7, characterized in that the sending means provided by the application sends the reference print job when the data to be printed is data stored in a cloud print service and the image forming device has the ability to process the reference print job, while when the data to be printed is local data stored in the local storage of the information processing device, it sends a request to the print framework to start printing of the data regardless of whether the image forming device has the ability to process the reference print job.
9. 1. A control method for an information processing apparatus that transmits a print job for printing data to an image forming apparatus via a cloud print service, comprising: a sending step of sending the print job to the cloud print service; The control method for an information processing device is characterized in that the sending process sends the reference print job to the cloud print service if the image forming device has the ability to process a reference print job that specifies the storage location of the data in a predetermined format, and if the image forming device has the ability to process the reference print job but does not support the data format of the data, sends a print job to the cloud print service that includes data that has been subjected to a predetermined conversion process.
10. 9. A program for causing a computer to execute each means of the information processing apparatus according to claim 1.
Citation Information
Patent Citations
Printing system, printing service device, service providing device, control method and program
JP2012133489A
printer
JP2012187867A
Printing system, information processing apparatus, image forming apparatus, and program
JP2015108951A
Document management system and management method
JP2020053939A