A printing system that includes a personal computer, a primary printer and an alternate printer is described. The primary printer and the alternate printer each include an embedded web server. The primary printer can serve a first program to the personal computer upon request. The first program enables the computer to use the primary printer to print a document. In addition, the first program enables the computer to display a hyperlink referring to a second program if the primary printer fails to successfully print the document. The second program enables the computer to print the document using the alternate printer.
|
18. A server, comprising:
apparatus to respond to a pre-defined request over a network from a client by serving a first program of instructions to the client; and wherein the first program of instructions enables the client to:
initiate printing of the document by a first printer;
detect if the first printer encounters an event while printing the document;
automatically display a selectable link referring to a second program of instructions that enables the client to use an alternate printer to print at least a portion of the document; and
wherein the first program of instructions is web content and the server is a web server.
13. A printing device, comprising:
a web server configured to respond to a pre-defined request received over a network from a computer by serving a first program of computer readable instructions to the computer, the first program for enabling the computer to:
(a) initiate the printing of a document by using the printing device;
(b) detect if the first printing device encounters an event while printing the document; and
(c) if the event is detected, display a selectable link referring to a second program of instructions that enables the computer to use an alternate printer to print at least a portion of the document;
(d) wherein the first program is web content.
15. A printing system, comprising:
(a) a client; and
(b) a server operable to receive a pre-defined request from the client and to respond thereto by serving a first program of instructions to the client; and wherein the first program of instructions enables the client to:
initiate printing of the document by a first printer;
detect if the first printer encounters an event while printing the document;
automatically display a selectable link referring to a second program of instructions that enables the client to use an alternate printer to print at least a portion of the document;
wherein the first program of instructions is web content and the server is a web server.
6. A server, comprising:
(a) means for receiving a request from a computer;
(b) means for responding to the request by transmitting a first program of computer readable instructions to the computer, the first program for enabling the computer to;
(i) initiate the printing of a document by a first printer;
(ii) monitor the first printer to detect if the first printer encounters an event while printing the document;
(iii) if the event is detected, display a selectable link referring to a second program of instructions that enables the computer to use an alternate printer to print at least a portion of the document; and
(c) wherein the second program is web content served by a remote server.
1. In a computer, a method of printing a document, comprising:
(a) initiating the printing of the document by a first printer;
(b) detecting that the first printer has encountered an event; and
(c) automatically displaying a selectable link referring to a network resource that enables the computer to print at least a portion of the document using a second printer;
wherein step (c) is automatically performed in response to step (b);
wherein the event occurs while the first printer is printing the document;
wherein the event is an error condition that results in the first printer not printing a portion of the document;
wherein the link is a hyperlink and the resource is web content provided by a remote server.
2. The method of
3. The method of
5. The method of
(d) receiving user input indicating the identity of the network resource;
(e) generating the hyperlink based upon the user input.
9. The server of
10. The server of
11. The server system of
12. The server of
(iv) respond to the event being detected by generating at least one parameter that indicates the boundary between the portion of the document that was printed and the portion that was not; and
(v) configure the link so that the when the link is selected the computer operates to transmit the following to a second server: a request for the second program of instructions and the at least one parameter.
17. The system of
19. The server of
|
A Personal computer is often connected to one or more printers over a network in order to enable document printing. Typically, in such an environment, a user of the PC prints a document by causing the PC to send a print job describing the document to one of the networked printers. The printer responds to the print job by printing the document.
Occasionally a printer that is presently processing a print job may encounter an event that results in the printer failing to successfully print the job. For example, a printer may fail to print the present job due to the depletion of some consumable, such as print media, ink, toner, etc. A printer may also fail to print the present job if certain internal components fail.
When a print job fails to print, the user may or may not wish to re-print the job using a back-up printer. For example, a user may wish to re-print a single copy print job using a back-up printer if the original printer only printed a portion of the job. A user, however, may not wish to re-print a multi-copy print job if the original printer successfully printed an adequate number of document copies prior to the job failure. Accordingly, it would be desirable to provide a user with the option of re-printing a job using a back-up printer.
According to one embodiment, the invention provides a computer implemented method of printing a document. The method may include, for example, initiating the printing of the document by a first printer, detecting that the first printer has encountered an event and displaying a selectable link referring to a network resource that enables the computer to print at least a portion of the document using a second printer.
According to another embodiment, the invention provides a server. The server may include, for example, apparatus to receive a request from a computer and apparatus to respond to the request by transmitting a first program of computer readable instructions to the computer. The first program enables the computer to: initiate the printing of a document by a first printer; detect if the first printer encounters an event while printing the document; and if the event is detected, display a selectable link referring to a second program of instructions that enables the computer to use an alternate printer to print at least a portion of the document.
According to another embodiment, the invention provides a computer readable medium embodying a program of instructions for causing a computer to perform method steps. The method steps may include, for example, detecting that a first printer has encountered an event while the first printer is processing a print job; and in response to detecting the event, displaying a selectable link referring to a network resource that enables the computer to initiate the printing of at least a portion of the document using a second printer.
According to yet another embodiment, the invention provides a printing device. The printing device includes apparatus to respond to a pre-defined request received over a network from a computer by transmitting a first program of computer readable instructions to the computer. The first program for enabling the computer to: initiate the printing of a document by using the printing device; detect if the first printing device encounters an event while printing the document; and if the event is detected, display a selectable link referring to a second program of instructions that enables the computer to use an alternate printer to print at least a portion of the document.
Other aspects and advantages of the present invention will become apparent from the following detailed description, taken in conjunction with the accompanying drawings, illustrating by way of example the principles of the invention.
As used herein, the phrase “Web content” refers to a program of computer readable instructions that may be executed by a Web Browser. Thus, for example, Web content may be a set of instructions written in any of the following languages (the following is a non-exhaustive list): HTML, Java, JavaScript, C-Sharp code, etc.
Additionally, it is known in the art that Web pages often include one more “hyperlinks”. Typically, a hyperlink is displayed on a Web page as a highlighted word or phrase. A hyperlink may also appear as a graphic. In order to activate a hyperlink, a user typically selects it by using a pointer device, such as a mouse.
It is also known in the art that hyperlinks may be configured to cause a computer to perform various functions. For example, a Web page (presently being displayed by a Browser) may include a hyperlink that refers to another Web page (target page) that is located on a remote server. Selecting the hyperlink causes the Browser to retrieve the target page from the remote server and to display it. This same hyperlink may also include parameters that are passed to the server when the target page is requested.
As shown in
In this embodiment, the PC 104 runs a local operating system, such as a version of Windows or Windows NT. In order for a user to access the PC 104, the user first logs on. This involves the user establishing his/her online identity by inputting a user name and a password. For ease of discussion, a user presently logged into the PC 104 may be referred to as the “active user”.
As shown, the PC 104 includes a display monitor 116, a processing unit 118, user input devices 120 and a memory 122. Stored in the memory 122 are a Web Browser 124 and a word processing application 125. The processing unit 118 can retrieve and execute these two applications upon receiving an appropriate request from the user. The Web Browser 124 enables the PC 104 to run Web content and function as a Web client in the system 102.
The Web browser 124 includes a program interface function (PI function) 126. Web content running in the browser 124 can call the PI function 126 in order to access a particular electronic document. For ease of discussion, the document accessed by use of the PI function 126 may be referred to herein as the “active job document”.
It is noted that the call to invoke the PI function 126 is device independent and is in accordance with a pre-defined standard. For ease of discussion, this standard will be referred to herein as the “Web imaging standard”. The standard call to invoke the PI function 126 may be referred to herein as the “Web image” call.
In the present embodiment, each user of the PC 104 can make a document his/her own job document. From this group of documents, the document that qualifies as the “active job document”, at any point in time, is the one belonging to the active user. Thus, for example, assume user “A” makes document “A” his/her job document. Assume also that user “B” makes document “B” his/her job document. Under these conditions, when user “A” is the active user, the PI function 126 operates to link Web content to document “A”. When, however, user “B” is the active user, the PI function 126 operates to link WEB content to document “B”.
It is noted that a user may use the word processing application 125 to make a job document. It is also noted that other applications that run on the PC 104 may also provide a user with the ability to make a job document. Web content may also be configured to allow a user to make a job document.
At step 206, the application 125 is assumed to receive a user request to open a particular document. At step 208, the application 125 responds to the request by opening and displaying the document.
At step 210, the user inputs a request to make the open document the user's job document. In response to this user request, the application 125 follows a pre-determined procedure to make the document the user's job document (step 212). This involves configuring the PC 104 so that the PI function 126 will operate to link Web content (which calls the PI function) to the user specified document whenever the present user is the active user.
It is noted that certain aspects of the procedure followed in step 212 may be governed by the Web imaging standard. For example the Web imaging standard may specify the formatting of a job document (e.g., PDF). If so, the procedure may involve converting the document from its present format to the format specified by the standard. Other aspects of the procedure, however, may be governed by user preferences (e.g., the storage location of the job document). It is contemplated, for example, that the user may be given the option to specify the location he/she wishes to store his/her job document. This location may be a local or a remote storage location.
Turning again to
As shown, the primary printer 106 includes an embedded WEB server 132. The embedded WEB server 132 can serve Web content 136 to a Web client, via the network 110, upon receiving an appropriate request. In some implementations, the Web content 136 may be generated dynamically. In other implementations, the Web content 136 is permanently stored in a local memory. For ease of discussion, the Web content 136 will be referred to as the “primary printer” (PP) Web content 136.
The alternate printer 108 includes an embedded Web server 142. The embedded Web server 142 can serve Web content 144 to Web clients via the network 110 upon receiving an appropriate request. In some implementations, the Web content 144 may be generated dynamically upon receiving the request. In other implementations, the Web content 144 is permanently stored in a local memory. For ease of discussion, the Web content 144 will be referred to as the “alternate printer” (AP) Web content 144.
In general, the PP Web content 136 is intended to provide clients that adhere to the Web imaging standard with a Web based printing service. For ease of discussion, this printing service will generally be referred to as the “primary printing service”. In particular, the PP Web content 136 provides such clients with the ability to print a document using the primary printer 106.
As will be seen below, the AP Web content 144 also provides Web clients with a printing service. The printing service provided by the AP Web content 144 may be referred to as the “alternate printing service”. The alternate printing service can be used as a “back-up” to the primary printing service in the event of a job failure.
Turning first to
The user can interact with the GUI to request the PP Web content 136. The Browser 124 receives this user request at step 306. In response, the Browser 124 retrieves the PP Web content 136 by sending an appropriate request to the embedded Web server 132 (step 308). At step 310, the Web Browser 124 executes the PP Web content 136.
Next, the PP Web content 136 operates to display a graphical user interface that allows the user to select various printing options that are offered specifically by the primary printer 106 (step 404). For ease of discussion, the user interface displayed at step 404 may be referred to as the “PP GUI”.
The PP GUI allows the user to select various print options that are offered by the primary printer 106 and to then request that the document be printed. Additionally, the PP GUI also provides a print preview image of the active job document. The print preview image is based upon the imaging information received at step 402
As shown, the PP GUI 502 includes a print preview image 504. The print preview image 504 provides a visual representation of how the active job document will be printed using the primary printer 106. The PP GUI 502 also allows the user to select various print options. For example, the PP GUI 502 allows the user to select a document collation option and a duplex printing option. In addition, the user can enter a number of copies he/she wishes to print of the active job document. After the user has selected his/her desired options, the user can then request the active job document be printed by selecting an “OK” button 512.
Referring again to
In response to this user input, the PP Web content 136 operates to access the active job document by again calling the interface function 126 (step 410). The PP Web content 136 then makes use of the imaging information received at step 410 and the user input received at step 406 to generate a print job. (step 411). For ease of discussion, the print job created at this step will be referred to as the “PP print job”. The PP print job is suitable to print the active job document according to the print settings receives at step 406.
At step 412, the PP Web content 136 causes the PP print job to be transmitted to the printer 106 via the network 110. The primary printer 106 receives the PP print job and begins processing it.
The PP Web content 136 then begins monitoring the primary printer 106 to determine the present status of the PP print job (step 414). In particular, the PP Web content 136 monitors the PP printer 106 to determine the total number of pages that have been successfully printed. If the PP print job is a multi-copy job, the PP printer 106 also determines the total number of copies that have been successfully printed.
Additionally, the PP Web content 136 monitors the primary printer 106 to determine if the primary printer has encountered an event (job failure) that results in the printer being unable to successfully print at least a potion of the PP print job. As indicated above, a job failure may occur for various reasons. For example, a critical component in the primary printer 106 might fail while the printer is printing the PP print job.
Assuming the PP Web content 136 does not detect a job failure event at step 414, the PP Web content 136 proceeds to display the present status of the PP print job to the user (step 423). In this example, the PP Web content 136 provides this information dynamically on a Web page. For ease of discussion, the Web page displayed at step 423 may be referred to as the “job status page”. The job status page may indicate the total number of pages that have been successfully printed, the number of copies that have been successfully printed, etc.
The PP Web content 136 continues to monitor the primary printer 106 to obtain the present status of the PP print job and updates the job status page with this information until either a job failure event is detected or the PP print job is successfully printed.
If a job failure is detected (decision step 420), the PP Web content 136 proceeds to automatically update the job status page to display a hyperlink (step 424). The hyperlink refers to the AP Web content 144. For ease of discussion, this hyperlink may be referred to as the “AP hyperlink”. As will be seen, the AP hyperlink enables re-printing of the active job document using the alternate printer 108.
The information block 606 also indicates that the user may re-print the active job document by selecting the AP hyperlink 608.
Next, the AP Web content 144 causes the PC 104 to display a graphical user interface (AP GUI) for printing the active job document using the alternate printer 108 (step 804). The AP GUI may be similar to the PP GUI. The AP GUI, however, is based upon the capabilities of the alternate printer 108.
It is assumed the user interacts with the AP GUI in order to select various print options and to then request the active job document be printed. The PC 104 receives this user input at step 806 and at step 810.
In response to this user input, the AP Web content 144 creates a print job (step 811). For ease of discussion, the print job created at step 811 will be referred to as the “AP print job”. The AP print job is suitable to cause the alternate printer 108 to print the active job document according to the print settings received at step 806.
At step 812, the AP Web content 144 causes the AP print job to be transmitted to the alternate printer 108. The alternate printer 108 receives the AP print job and begins processing the AP print job in an appropriate manner. In this example, the operation of the AP Web content 144 then halts. In other embodiments, the AP Web content 144 may proceed to perform steps similar to the ones depicted in
From the forgoing illustrative embodiment, it will be appreciated that a printing service provided by the invention offers a number of advantages. The primary printing service just described, for example, enables clients to print a document using a particular printer and provides a link to a back-up printing service in the event of a job failure. Importantly, this gives the user the option to use the back-up printing service to re-print his/her document. The user, therefore, can decide (based upon his own personal preference) whether to use the back-up printing service. In the embodiment just described the primary printing service provides the user with information, via the job status page, that can be useful to the user in this decision.
It is noted that there are a number of variations of the embodiment just described. In a first variation, for example, the AP Web content upon being downloaded immediately operates to print the active job document without further interaction from the user.
In a second variation, the PP Web content, upon detecting a job failure condition, operates to define a set of parameter values. The parameter values indicate the boundary between the portion of the PP print job that was successfully printed and the portion that was not. The AP hyperlink displayed at step 424 is configured to, upon being selected, cause the browser 124 to transmit a request for the AP Web content, along with the parameters, to the AP embedded Web server.
The AP Web server is configured to respond to the parameter values and the request by generating AP Web content. The AP Web content enables the personal computer to print only the portion of the PP print job that was not successfully printed. In yet another variation, the AP Web content provides the user of the personal computer with the option of re-printing the entire PP print job or just the portion that failed to print.
In yet another variation, a user or system administrator selects the preferred “back-up” printing service. This preference may be stored locally by the client or may be stored in a remote storage location that is associated with the user. The PP Web content is configured to read the user's preference and to generate a link to this preferred back-up printing service when a job failure is detected.
It is also noted that the Web imaging standard represents just one model that enables a user to designate a document that he/she wishes to be accessed by Web based services. There are other models that can be used that also provide a user with this capability. For example, the operation of the client to allow a user to make a job document and to link the job document to Web content may instead be performed by a remote server. According to one specific implementation, the remote server provides a user with a means for selecting a document to be his/her job document. Upon receiving the selection, the server operates to link the selected document to an identifier assigned to the user. This ID may be the user's login name and password. The ID is subsequently used to link Web content to the user-selected document. (This connection is performed at the server, rather than within the web browser as was described earlier.) For example, at run time the Web content may request the user to input his/her ID. Upon receiving this input, the Web content sends the user's ID to the server to obtain the document (i.e., the user's job document) that is linked to the user's ID. In this manner, therefore, the Web server is able to access the user's pre-selected job document and use that document to synthesize Web content based on that access.
It is important to also note that the present invention may be embodied in the form of a “computer readable medium” that has any one of the programs described above embodied therein. For example, a memory that stores (either temporarily or permanently) the PP Web content just described may be considered an embodiment of the invention. It is noted that the phrase “computer readable medium” can refer to any medium that can contain, store or propagate computer readable instructions. Thus, in this context, computer readable medium may refer to a medium such as a CD ROM or to signals that are used to communicate computer readable instructions (e.g., the PP Web content) over a network, such as the public Internet. A computer readable medium may also refer to a carrier wave.
Although several specific embodiments of the invention has been described and illustrated, the invention is not to be limited to specific forms or arrangements of parts so described and illustrated. The invention is limited only by the claims and the equivalents thereof.
Simpson, Shell S., Foster, Ward S., Livingston, Kris R.
Patent | Priority | Assignee | Title |
8762496, | Jul 19 2011 | GOOGLE LLC | Pre-selecting content to be delivered to a user |
9081808, | Jul 19 2011 | GOOGLE LLC | Pre-selecting content to be delivered to a user |
Patent | Priority | Assignee | Title |
5727135, | Mar 23 1995 | Lexmark International, Inc. | Multiple printer status information indication |
6327045, | Sep 18 1997 | Microsoft Technology Licensing, LLC | Computer network |
6452692, | Dec 02 1996 | Sun Microsystems, Inc. | Networked printer server |
20010052995, | |||
EP996055, |
Executed on | Assignor | Assignee | Conveyance | Frame | Reel | Doc |
Oct 19 2001 | LIVINGTON, KRIS R | Hewlett-Packard Company | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012793 | /0284 | |
Oct 22 2001 | SIMPSON, SHELL S | Hewlett-Packard Company | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012793 | /0284 | |
Oct 22 2001 | FOSTER, WARD S | Hewlett-Packard Company | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 012793 | /0284 | |
Oct 23 2001 | Hewlett-Packard Development Company, L.P. | (assignment on the face of the patent) | / | |||
Sep 26 2003 | Hewlett-Packard Company | HEWLETT-PACKARD DEVELOPMENT COMPANY L P | ASSIGNMENT OF ASSIGNORS INTEREST SEE DOCUMENT FOR DETAILS | 014061 | /0492 |
Date | Maintenance Fee Events |
Dec 21 2009 | M1551: Payment of Maintenance Fee, 4th Year, Large Entity. |
Nov 25 2013 | M1552: Payment of Maintenance Fee, 8th Year, Large Entity. |
Jul 08 2017 | M1553: Payment of Maintenance Fee, 12th Year, Large Entity. |
Date | Maintenance Schedule |
Jun 20 2009 | 4 years fee payment window open |
Dec 20 2009 | 6 months grace period start (w surcharge) |
Jun 20 2010 | patent expiry (for year 4) |
Jun 20 2012 | 2 years to revive unintentionally abandoned end. (for year 4) |
Jun 20 2013 | 8 years fee payment window open |
Dec 20 2013 | 6 months grace period start (w surcharge) |
Jun 20 2014 | patent expiry (for year 8) |
Jun 20 2016 | 2 years to revive unintentionally abandoned end. (for year 8) |
Jun 20 2017 | 12 years fee payment window open |
Dec 20 2017 | 6 months grace period start (w surcharge) |
Jun 20 2018 | patent expiry (for year 12) |
Jun 20 2020 | 2 years to revive unintentionally abandoned end. (for year 12) |