This invention relates to networked printing systems. More particularly, this invention relates to methods and apparatus for providing pre-print authorization and post-print notification information for printers used in networked printing systems.
In recent years, the availability and use of mobile computing equipment, such as laptop computers, handheld computers, personal digital assistants and web-enabled wireless telephones (collectively referred to herein as “mobile computers”), has increased at a phenomenal rate. As mobile computer use has become more prevalent, the need for “mobile printing” has also increased. For example, a person editing a document on a laptop computer at a coffee shop may want to print a paper copy of the revised document for final review. Similarly, a person checking email on a handheld computer at an airport may want to obtain a hardcopy print of particular email messages for archival purposes. Likewise, a person browsing the web on a wireless telephone at a hotel may want to print copies of specific web pages for subsequent offline reading.
To meet this growing need, several networked printing systems have been developed in recent years. For example, EFI PrintMe™, by Electronics for Imaging, Inc. (“EFI”), Foster City, Calif., U.S.A., is an Internet printing system that allows anyone with Internet or email access to print documents and web content to any printer coupled to the PrintMe network. In addition, PrinterOn™, by PrinterOn Corporation, Kitchener, Ontario, Canada, also provides an Internet printing system that allows users with Internet access to print documents at printers coupled to the PrinterOn network. Such networked printing systems typically use a networked print server that receives print job requests from client computers, and then forwards print jobs to designated printers coupled to the network (referred to herein as “network printers”).
A networked print system provider (e.g., EFI) typically maintains the networked print server, and third party providers typically maintain the network printers to provide printing services for their end user customers. For example, a hotel may install network printers in guest rooms, at the front desk, or in a hotel business center to provide networked printing services for hotel guests. Similarly, an airline may install network printers in a frequent traveler lounge to provide networked printing services for airline passengers. Likewise, a coffee shop may install network printers in the cafe to provide networked printing services for its customers. As more third parties have installed network printers, a “global” printing network has been developed that allows individual users to print documents at any network printer.
Referring now to
Network printers 18a-18c may be print devices that are operated by third party providers. For example, network printer 18a may be a black-and-white printer operated by Company A at a coffee shop in Los Angeles. Network printer 18b may be a color printer operated by Company B at the front desk of a hotel in Rome. Network printer 18c may be a color printer operated by Company C at a premium frequent flyer lounge in Paris.
Although any user of client computers 12 may submit documents 20 to print server 16 for printing on any of network printers 18, some third party providers that operate network printers 18 may restrict printing to those end users who are the provider's actual customers. For example, Company A may restrict printing on network printer 18a to customers in the coffee shop, Company B may restrict printing on network printer 18b to hotel guests, and Company C may restrict printing on network printer 18c to travelers in the frequent flier lounge.
Additionally, each third party provider typically charges a fee for printing on the provider's network printers 18, according to the provider's own unique fee structure and billing policy. For example, Company A may charge a per-page printing fee for all pages printed on network printer 18a, Company B may charge a flat fee for use of network printer 18b, regardless of the number of printed pages, and Company C may charge a first per-page printing fee for all black-and-white pages printed on network printer 18c, and a second per-page fee for all color pages printed on the printer.
Each third party provider typically uses an accounting server 24 coupled to the provider's network printers 18 to implement such user billing techniques. For example, accounting server 24a may charge the per-page printing fee to a user's credit or debit card. Accounting server 24b, in contrast, may include any printing fee charges in a guest's bill at checkout. Accounting server 24c may allow a user to charge any printing fees either to the user's credit card or frequent flier account. To accomplish such billing processes, each third party provider therefore typically requires user-supplied pre-print information that will be used to charge the user for printing fees, and system-supplied post-print information that describes the resulting printed output.
Examples of pre-print and post-print information for networked printing system 10 are illustrated in
In contrast, for Company B, pre-print information includes the user's name and room number. Accounting server 24b may use this pre-print information to seek approval for the charges from the hotel's billing system. If the billing system approves the charges, accounting server 24b then allows the user to print a document on network printer 18b. For post-print information, Company B requires an indication that any pages were actually printed, so that accounting server 24b may then add the flat rate printing fee to the user's hotel bill.
For Company C, pre-print information includes the user's name, and a selection of credit/debit card or frequent flier account. If the user indicates that printing fees should be charged to a credit/debit card, the user must provide the credit/debit card number and card expiration date. If, however, the user indicates that printing fees should be charged to a frequent flier account, the user must provide the frequent flier account number and personal identification number (“PIN”). Accounting server 24c may then use this pre-print information to seek approval for the charges from the issuing bank or from the frequent flier accounting system. If the charges are approved, accounting server 24c then allows the user to print a document on network printer 18c. For post-print information, Company C requires an indication of the total number of black-and-white and color pages printed, so that accounting server 24c may then calculate the total printing fee to be charged to the user's credit/debit card or frequent flier account.
In these examples, each third party provider requires specific pre-print and post-print information, but the information requirements of each provider differ from that of other providers. In previously known networked printing systems, this has typically required that the networked print system provider develop customized accounting interfaces for each third party provider, with each accounting interface tailored to the third party provider's specific pre-print and post-print information requirements.
Thus, in exemplary networked print system 10, print server 16 may include first, second and third accounting interfaces 26a, 26b and 26c, respectively, for Companies A, B and C, respectively. In such a system, as each third party provider is added to the system, the networked print system provider must develop and maintain an additional accounting interface 26 for that provider. Such customized systems are costly and inefficient, and undercut the goal of providing a truly universal networked printing system.
In view of the foregoing, it would be desirable to provide standardized accounting interfaces for providing pre-print authorization and post-print notification information for printers used in networked printing systems.
In view of the foregoing, it is an object of this invention to provide standardized accounting interfaces for providing pre-print authorization and post-print notification information for printers used in networked printing systems.
These and other objects of this invention are accomplished by systems and methods for use with networked printing systems that include a client computer coupled via a print server to a plurality of network printers, wherein each network printer is coupled to an associated accounting server that requires corresponding pre-print information for billing purposes. In particular, the print server receives a print request from the client computer, wherein the print request designates one of the network printers to print a document. The print server uploads the document, creates a print job based on the document and determines the required pre-print information corresponding to the accounting server associated with the designated network printer. The print server prompts the user of the client computer to provide the required pre-print information, and then creates a pre-print message based on the user's response and in accordance with a pre-print protocol. The print server sends the pre-print message to the associated accounting server.
The accounting server may use the received information to determine if the user is authorized to print, and then sends the print server a message indicating whether the user is so authorized. If so, the print server sends the print job to the designated network printer, which prints the print job. After printing the print job, the designated printer sends print summary information to the print server, which creates a post-print message based on the print summary information, and in accordance with a post-print protocol. The print server sends the post-print message to the associated accounting server, which may use the information in the post-print message to bill the user for printing the print job.
The above-mentioned objects and features of the present invention can be more clearly understood from the following detailed description considered in conjunction with the following drawings, in which the same reference numerals denote the same elements throughout, and in which:
Referring now to
Networks 14a and 14b each may be a local area network, wide area network, wired network, wireless network, satellite network, cellular network, public switched telephone network, public network, the Internet, or combination of such networks. Networks 14a and 14b may be different networks or combination of networks, or may be the same network or combination of networks. For simplicity, the following discussion assumes that networks 14a and 14b are the same network 14, such as the Internet.
Print server 16′ may be a personal computer, laptop computer, computer workstation, or other similar computer device that receives print requests from print job submission interfaces 22, where each print request designates a specific network printer 18 for printing. Network printers 18 may be printers, copiers, plotters, facsimile machines, printing presses, print controllers or other similar print devices, or combinations of such print devices. For example, print device 18a may be a black-and-white printer, print device 18b may be a color printer and print device 18c may be a print controller, such as a Fiery®, EDOX® or Splash® print controller by Electronics for Imaging, Inc., Foster City, Calif., U.S.A. Network printers 18 may include networked printing system hardware and/or software, such as PrintMe hardware and/or software. Such networked printing hardware and/or software may be embedded into a print device, or may be included in a separate standalone device coupled to the print device.
Each network printer 18 is coupled to an associated accounting server 24′, which may be a personal computer, laptop computer, computer workstation, or other similar computer device. For example, network printers 18a-18c are coupled to associated accounting servers 24a′-24c′, respectively. Each accounting server 24′ performs billing functions for the associated network printers 18, and may require specific pre-print information. The required pre-print information may include “billing” pre-print information, such as user name, credit card number, email address and other similar billing information, and “job” pre-print information, such as page count, number of cover pages, and other similar information about the print job that is to be printed. Each accounting server 24′ may be directly coupled to network 14, or may be coupled to network 14 via associated network printers 18.
In accordance with this invention, for each received print request, print server 16′ determines the pre-print information required by the accounting server 24′ associated with the designated network printer 18. Next, print server 16′ prompts the user via print job submission interface 22 to provide any required billing pre-print information, and to select one or more documents 20 to print. After receiving the user's response, print server 16′ uploads the documents 20, converts the uploaded documents to a print job, calculates job pre-print information, creates a pre-print message in accordance with a pre-print protocol, and sends the pre-print message to the associated accounting server 24′. After receiving the pre-print message, the accounting server 24′ may simply store the received information, or may use the information to confirm that the user is authorized to print on the designated network printer 18. The accounting server 24′ then returns an authorization response (e.g., Allow or Deny) to print server 16′, indicating whether the user may print on the designated network printer 18.
If the authorization response indicates that printing is allowed, print server 16′ then forwards the print job to the designated network printer 18 for printing. After printing has completed, the designated network printer 18 sends post-print information to print server 16′, which creates a post-print message in accordance with a post-print protocol, and then sends the post-print message to the associated accounting server 24′. The accounting server 24′ retrieves the post-print information from the received message, and then uses the retrieved information to calculate printing charges in accordance with the server's billing process.
Print server 16′ may include accounting interface 26′ and accounting database 28 to perform pre-print and post-print information processing in accordance with this invention. Accounting database 28 may include information specifying the accounting server 24′ associated with each network printer 18, and the pre-print information requirements corresponding to each accounting server 24′. Accounting interface 26′ may be hardware and/or software that may be used to search accounting database 28 to determine the pre-print information required by the accounting server 24′ associated with the designated network printer 18.
An exemplary accounting database 28 is illustrated in
Referring now to
An exemplary pre-print protocol is illustrated in
For example, referring now to
Thus, the pre-print protocol may be used for all pre-print messages for all accounting servers 24′. By including customizable fields in the pre-print protocol, networked printing system 10′ may accommodate a wide variety of pre-print information requirements of all accounting servers 24′. Persons of ordinary skill in the art will understand that pre-print protocol 32 may include more than or less than ten fields, may include more than or less than five customizable fields, and may include fields other than those shown in
An example of the operation of pre-print information processes in accordance with this invention is now described. Referring again to
For example, if the print job includes eleven pages, including one cover page, eleven black-and-white pages and no color pages, and if the system specifies a Job ID of “IA2N8c7,” accounting interface 26′ will create the following pre-print message:
where each “-” represents a blank field. Accounting interface 26′ then sends this pre-print message (e.g., via an http request) to accounting server 24b′, which reads the received pre-print message in accordance with pre-print message 34b, and therefore determines that the Job ID is “1A2N8c7,” the job includes a total of eleven pages, including one cover page, eleven black-and-white pages and no color pages, the name is “Rita Hayworth,” and the room number is “1227.”
Alternatively, referring to
For example, if the print job includes fifteen pages, including no cover pages, two black-and-white pages and thirteen color pages, and if the system specifies a Job ID of “qt8vP5S,” accounting interface 26′ will create the following pre-print message:
where each “-” represents a blank field. Accounting interface 26′ then sends this pre-print message (e.g., via an http request) to accounting server 24b′, which reads the received pre-print message in accordance with pre-print message 34c, and therefore determines that the Job ID is “qt8vP5S,” the job includes a total of fifteen pages, including no cover page, two black-and-white pages and thirteen color pages, that the name is “Clark Gable,” the billing selection is “Credit Card,” the card number is “1234-5678-9012-3456,” and the expiration date is “02/2007.” Thus, accounting interface 26′, accounting database 28 and the pre-print protocol may be used to create pre-print messages that may be used with all accounting servers 24′.
Referring again to
Exemplary print summary information provided by network printers 18 may include the total number of pages printed, the total number of black-and-white pages printed and the total number of color pages printed. In particular, based on the specific type of network printer 18, some of this information may not be available or relevant. For example, a black-and-white network printer 18 will only be able to provide the total number of black-and-white pages printed. In such cases, inapplicable print summary information may be ignored.
After receiving the print summary information from the designated network printer 18, print server 16′ creates a post-print message in accordance with a post-print protocol, and then sends the post-print message (e.g., via an http request) to the accounting server 24′ associated with the designated network printer 18. In particular, accounting interface 26′ may create the post-print message and then send the post-print message to the associated accounting server 24′.
An exemplary post-print protocol is illustrated in
Each accounting server 24′ may ignore any post-print information that is not required by the specific post-print information requirements of the accounting server 24′. For example, if accounting server 24a′ does not charge a printing fee for cover pages, the accounting server may simply ignore the value in the Cover Pages field. Further, each accounting server 24′ may use the post-print information as a proxy for other information required by the accounting server. For example, if accounting server 24b′ charges a flat rate for printing, regardless of the number of printed pages, the accounting server may use any of the Pages field as a proxy for indicating whether any pages had actually been printed.
An example of the operation of post-print information processes in accordance with this invention is now described. In particular, referring to
Accounting interface 26′ then sends this post-print message (e.g., via an http request) to accounting server 24c′, which reads the received post-print message in accordance with the second protocol, and therefore retrieves the Job ID “qt8vP5S,” the total number of printed pages “6,” the number of cover pages “0,” the total number of black-and-white pages “2,” and the total number of color pages “4.” Accounting server 24c′ may then use this information to calculate printing charges for this print job.
The foregoing merely illustrates the principles of this invention, and persons of ordinary skill in the art can make various modifications without departing from the scope and spirit of this invention. For example, in the exemplary embodiments described above, if a network printer 18 and associated accounting server 24′ are located behind a firewall, and the network printer 18 includes a PrintMe station, print server 16′ and the accounting server 24′ may communicate via the PrintMe station, and thereby overcome any communication restrictions that normally arise in connection with firewalls. Such PrintMe stations are described in U.S. Pat. No. 6,748,471, the disclosure of which is incorporated by reference herein in its entirety.