Image forming apparatuses, such as multifunctional peripherals (MFP), printers, and the like, may be capable of printing documents and/or images. Some printers may support a “pull printing” feature, where a pull-print server (e.g., a cloud server) may receive a print job including a document (e.g., print data) from a user device and store the print job. Further, when a user inputs a pull-print request through a printer, the printer may receive the print job from the pull-print server and perform printing.
Examples are described in the following detailed description and in reference to the drawings, in which:
In an enterprise environment, multiple computing devices (e.g., client devices) may be connected to image forming apparatuses (e.g., printers) over a network. Pull printing may refer to a printing feature where a print job can be held on a pull-print server (e.g., server-based pull printing) or on a client device/image forming apparatus (e.g., serverless pull printing) and released by a user at the image forming apparatus (e.g., a printer), which supports the printing feature. Example print job may include a document to be printed in accordance with a job specification (e.g., a number of copies, color or black/while print, a media size, and the like).
In server-based pull printing, the print job initiated from a user device may be sent to the pull-print server. Further, the pull-print server may map the print job to the user's account in the pull-print server. Furthermore, the image forming apparatus may receive the print job from the pull-print server and perform printing of the document in accordance with the job specification when the user inputs a print request through the image forming apparatus. In this example, the user may authenticate the print job at the image forming apparatus using security measures, such as personal identification number (PIN), a password, a smartcard, or the like, to release the print job. Similarly, in serverless pull printing, the print job may be held on the client device or the image forming apparatus until released by the user.
In some example pull printing scenarios, when the user pulls the print job from the server via an image forming apparatus, the image forming apparatus may not be able to execute the print job due to various reasons such as unavailable print resources (e.g., media, ink/toner, or the like), the image forming apparatus being in an error state (e.g., a connectivity issue, a paper jam, or the like), or the like. Therefore, the user may end up going to the image forming apparatus and not receiving the requested prints, which may lead to a wastage of user's time and affect user experience.
Examples described herein may provide a pull-print server to reserve a print resource on image forming apparatuses. The pull-print server may receive a print job. The pull-print server may retrieve a job specification from the print job. The job specification may indicate a media size, a media type, a quantity of media, a percentage of toner or ink, or any combination thereof. Further, the pull-print server may determine a print resource (e.g., media, ink/toner, and the like) to be reserved to execute the print job based on the job specification. Furthermore, the pull-print server may instruct network-connected image forming apparatuses to reserve the determined print resource. The pull-print server may receive an acknowledgement message from the image forming apparatuses. The acknowledgement message may indicate an availability status of the print resource. The pull-print server may send a notification indicating the print resource availability status of the image forming apparatuses to a user device. Upon receiving a pull-print request, the pull-print server may transmit the print job to an image forming apparatus to execute the print job using the reserved print resource.
Thus, examples described herein may enable a pull-print server to determine a print resource to be reserved to execute a print job and instruct a network-connected image forming apparatus to reserve the determined print resource to print the document associated with the print job. Reserving the print resource to execute the print job may avoid the wastage of user's time and also enhance the user experience.
In the following description, for purposes of explanation, numerous specific details are set forth in order to provide a thorough understanding of the present techniques. However, the example apparatuses, devices, and systems, may be practiced without these specific details. Reference in the specification to “an example” or similar language means that a particular feature, structure, or characteristic described may be included in at least that one example but may not be in other examples.
Turning now to the figures,
Example user device 102 is an electronic device supporting a printing application to generate a print job for printing. For example, user device 102 is a laptop, a desktop, a mainframe computer, a smartphone, a personal digital assistant (PDA), an Internet of Things (loT) device, or the like. Further, user device 102 may include a printer driver (e.g., to support the printing application) that is either installed in or accessible to user device 102 to generate the print job and send the print job for printing. Example image forming apparatus 102 may be a single function peripheral (SFP) or a multi-function peripheral (MFP). For example, image forming apparatus 102 is a laser beam printer (e.g., using an electrophotographic method for printing), an ink jet printer (e.g., using an ink jet method for printing), or the like.
As shown in
Referring back to
In another example, controller 108 may determine an amount of print material (i.e., ink/toner) to be reserved corresponding to each color based on the job specification when the print job is a color print job. In yet another example, controller 108 may determine an amount of black print material to be reserved based on the job specification when the print job is a monochrome black print job. For example, controller 108 processes print job stream data (e.g., red, green, and blue (RGB) raster data) from the job specification as depicted in
The amount of print material to be reserved may indicate an amount of print material that can be consumed to print the document. In the example of
For example, first page 202 and second page 204 may include monochrome contone objects, color contone objects, monochrome text objects, color text objects, monochrome line art objects, color line art objects, monochrome graphic objects, color graphic objects, monochrome low frequency halftone objects, color low frequency halftone objects, monochrome high frequency halftone objects, color high frequency halftone objects, monochrome solid fill objects, color solid fill objects, and/or the like. Further, an “object” may refer to color critical content contained within the document. The objects may be positioned on a background, composed of white space or other uniformly colored background and include, for example, text, pictures, graphics, charts, images, and the like.
Referring back to
Furthermore, transmitter 112 may transmit the document to image forming apparatus 104 to execute the print job using the reserved print resource in response to a reception of a pull-print request. In an example, controller 108 may receive the pull-print request from the user via image forming apparatus 104. Further, controller 108 may authenticate the user based on authentication information prior to the transmission of the document to image forming apparatus 104. In an example, the user provides authentication information at image forming apparatus 104 using security measures such as a personal identification number (PIN), password, smartcard, or the like to release the print job. Further, image forming apparatus 104 may send the pull-print request including the authentication information to pull-print server 100 to obtain the print job and perform printing.
In some examples, the functionalities described herein, in relation to instructions to implement functions of receiver 106, controller 108, notification unit 110, transmitter 112, and any additional instructions described herein in relation to the storage medium, may be implemented as engines or modules including any combination of hardware and programming to implement the functionalities of the modules or engines described herein. The functions of receiver 106, controller 108, notification unit 110, and transmitter 112 may also be implemented by a processor. In examples described herein, processor may include, for example, one processor or multiple processors included in a single device or distributed across multiple devices.
During operation, print resource reservation unit 306 may receive a print job including a document to be printed. In an example, print resource reservation unit 306 receives the print job from a user device 308 corresponding to a user. User device 308 may be communicatively connected to image forming apparatus 300 via a network. The network may be a local area network (LAN), a wide area network (WAN), the Internet, and/or the like. User device 308 may be an electronic device supporting a printing application to generate the print job. For example, user device 308 can be a laptop, a desktop, a mainframe computer, a smartphone, a personal digital assistant (PDA), an Internet of Things (loT) device, or the like. Further, user device 308 may include a printer driver (e.g., to support the printing application) that is either installed in or accessible to user device 308 to generate the print job and send the print job to image forming apparatus 300 for printing.
In another example, image forming apparatus 300 may include an email-based print function which allows the user to print the document by emailing the document to an email address associated with image forming apparatus 300. The document to be printed may be held on user device 308 or image forming apparatus 300 until released by the user. Further, print resource reservation unit 306 may determine that the print job includes an instruction to reserve a print resource to print the document.
Furthermore, print resource reservation unit 306 may estimate the print resource to be reserved to print the document based on job details associated with the print job. In an example, print resource reservation unit 306 is to:
In an example, print resource reservation unit 306 converts RGB data of the document to be printed to CMYK data. Further, print resource reservation unit 306 determines an amount of print material to be reserved corresponding to each color using the CMYK data.
Further, print resource reservation unit 306 may determine an availability of the estimated print resource at image forming apparatus 300. Furthermore, print resource reservation unit 306 may reserve the estimated print resource based on the availability of the estimated print resource. Upon reserving the print resource, print resource reservation unit 306 may send a notification indicating the availability of the print resource or an unavailability of the print resource to user device 308 from which the print job is originated. Furthermore, print resource reservation unit 306 may execute the print job to print the document using the reserved print resource in response to a reception of a pull-print request. The pull-print request may be provided via a user interface (e.g., a control panel) of image forming apparatus 300.
In the example shown in
Machine-readable storage medium 504 may be a random-access memory (RAM) or another type of dynamic storage device that may store information and machine-readable instructions that may be executed by processor 502. For example, machine-readable storage medium 504 may be synchronous DRAM (SDRAM), double data rate (DDR), rambus DRAM (RDRAM), rambus RAM, and the like, or storage memory media such as a floppy disk, a hard disk, a CD-ROM, a DVD, a pen drive, and the like. In an example, machine-readable storage medium 504 may be non-transitory machine-readable medium. Machine-readable storage medium 504 may be remote but accessible to pull-print server 500.
As shown in
Instructions 508 may be executed by processor 502 to process the print job to retrieve the job specification. In an example, instructions to process the print job to retrieve the job specification include instructions to process the print job to retrieve a media type, a media size, a quantity of media, a percentage of toner or ink to be consumed, or any combination thereof for executing the print job.
Instructions 510 may be executed by processor 502 to determine a print resource to be reserved to execute the print job based on the retrieved job specification. In an example, when the image forming apparatus is a color printer, instructions to determine the print resource to be reserved include instructions to:
In another example, when the image forming apparatus is a monochrome printer, instructions to determine the print resource to be reserved include instructions to determine an amount of black print material to be reserved using the RGB data.
Instructions 512 may be executed by processor 502 to notify a set of network-connected image forming apparatuses to reserve the determined print resource. In an example, instructions to notify the set of network-connected image forming apparatuses include instructions to:
Instructions 514 may be executed by processor 502 to receive an acknowledgement message from the set of image forming apparatuses. In an example, the acknowledgement message may include an availability status of the print resource.
Instructions 516 may be executed by processor 502 to send a first notification indicating the availability status of the set of image forming apparatuses to a user device. Instructions 518 may be executed by processor 502 to transmit the print job to an image forming apparatus of the set of image forming apparatuses to execute the print job using the reserved print resource based on the availability status upon receiving a pull-print request. In an example, instructions to transmit the print job to the image forming apparatus include instructions to:
In another example, instructions to transmit the print job to the image forming apparatus include instructions to:
In an example, a “secure pull print” program can be installed in an organization's network and a secured shared storage can be enabled. The storage may be a cloud storage or an inbuilt storage server. Further, the image forming apparatuses in the organization's network may be enabled with a “secure pull print” option. Furthermore, the users in the organization may be given access to the “secure pull print” program such that the users can print documents using this program in any image forming apparatus which is connected to the organization's network and has the “secure pull print” enabled. Further, the “secure pull print” program may include a “reserve resource” option along with a reservation time limit.
At 602, a print job is received by a pull-print server from a user device. An example print job includes a document to be printed and a job specification indicating instructions to print the document. At 604, the job specification associated with the print job is retrieved and a check is made to determine whether the job specification includes instructions to reserve a print resource to print the document. In an example, a user selects the “reserve resource” option (e.g., as a part of print setting) to reserve the print resource while launching the print job. When the job specification does not include instructions to reserve the print resource, the print job is executed at an image forming apparatus without reserving the print resource, at 606.
At 608, when the job specification includes instructions to reserve the print resource, the print resource to print the document is determined. For example, the print resource includes a required media type, a media size, a number of media, a percentage of toner/ink required to print the document, and the like. In an example, determining an amount of ink to print the document includes estimating an amount of print material coverage for each page of the document. Estimating the amount of print material coverage may include:
At 610, a check is made to determine whether the job specification includes instructions to reserve the print resource in specific image forming apparatuses. For example, while launching the print job, the user can choose specific network-connected image forming apparatuses (e.g., image forming apparatuses within a proximity of the user device, image forming apparatuses located in a particular floor, or the like) to reserve the print resource. When the job specification includes instructions to reserve the print resource in the specific image forming apparatuses, a notification to reserve the print resource is sent to the specified image forming apparatuses, at 612. For example, consider that the “secure pull print” network includes 10 printers, and the user has selected the option “reserve only nearby printers”. On enabling “reserve only nearby printers” option, the secure pull print server reserves the print resources in the first 3 printers that are in proximity. The pull-print server may determine the proximity using device network details from which the print job is originated, and the printer network details, for instance.
At 614, when the job specification does not include instructions to reserve the print resource in the specific image forming apparatuses, a notification to reserve the print resource is sent to a set of network-connected image forming apparatuses (e.g., the 10 printers) in the “secure pull print” network.
At 616, an acknowledge message is received from the image forming apparatuses. In an example, when the image forming apparatuses receive the notification to reserve the print resource, the image forming apparatuses may then check its available resource versus required resource. If the print resource is available, a status of the image forming apparatuses may be updated (e.g., as shown in
At 618, the availability status of the image forming apparatuses is notified to the user device. The pull-print server may consolidate data using the availability/unavailability status of the image forming apparatuses and warn the user with the “unavailable printer” list. The list may have the image forming apparatuses that could not be currently reserved for the print job. At 620, the print job is transmitted to an image forming apparatus to execute the print job using the reserved print resource upon receiving a pull-print request.
In other examples, when the user is looking for a specific image forming apparatus from the “unavailable printer” list to be locked on availability, then the user can request the same by selecting a checkbox provided against each image forming apparatus of the “unavailable printer” list. The pull-print server may keep polling the specified image forming apparatus's status (e.g., within a limited duration or till the job is not printed) and lock the print resource on the specified image forming apparatus once the specified image forming apparatus is available. The pull-print server may also notify the user regarding the availability of the specified image forming apparatus.
The above-described examples are for the purpose of illustration. Although the above examples have been described in conjunction with example implementations thereof, numerous modifications may be possible without materially departing from the teachings of the subject matter described herein. Other substitutions, modifications, and changes may be made without departing from the spirit of the subject matter. Also, the features disclosed in this specification (including any accompanying claims, abstract, and drawings), and/or any method or process so disclosed, may be combined in any combination, except combinations where some of such features are mutually exclusive.
The terms “include,” “have,” and variations thereof, as used herein, have the same meaning as the term “comprise” or appropriate variation thereof. Furthermore, the term “based on,” as used herein, means “based at least in part on.” Thus, a feature that is described as based on some stimulus can be based on the stimulus or a combination of stimuli including the stimulus. In addition, the terms “first” and “second” are used to identify individual elements and may not meant to designate an order or number of those elements.
The present description has been shown and described with reference to the foregoing examples. It is understood, however, that other forms, details, and examples can be made without departing from the spirit and scope of the present subject matter that is defined in the following claims.
Number | Date | Country | Kind |
---|---|---|---|
202141052329 | Nov 2021 | IN | national |