Method and system to print via e-mail
Abstract
A system that allows users operating outgoing devices such as computers (14), PDAs (16), and telephones (18) to send and print content to be printed via e-mail messages (48). The email message (48) is sent via the virtual printer email address hosted by the email server (50). E-mail messages are searched by the driverless print server (40), separated into main files and attachments, and printed by the printer (32). This system allows documents to be printed without a printer device driver for the target printer (32).

Term
Term ended
Projected expiry passed 8 May 2022, 4.4 years ago.
- Priority
- Filed
- Published
- Projected expiry
- Today
6 claims: 6 independent, 0 dependent
- 1電子メール・メッセージを介してターゲット・プリンタ上でソース・データを印刷する方法であって、 ターゲット・プリンタの仮想電子メール・アドレスを決めること、 仮想電子メール・アドレスに対応する電子メール・アカウントをホストする電子メール・サーバから、ターゲット・プリンタの仮想電子メール・アドレスにアドレスされたソース・データを含む電子メール・メッセージを検索すること、 電子メール・メッセージからソース・データを抽出すること、 ソース・データの印刷元とすることができるプリント・サーバ上で走っている対応するアプリケーションまたはブラウザにソース・データをロードすること、 プリント・サーバ上で実行されているオペレーティング・システムの対応するアプリケーションまたはブラウザと印刷サブシステムを介してソース・データに対応するプリンタ・データを生成すること、および、 プリント・サーバからプリンタ・データをターゲット・プリンタにサブミットすることを含む方法。
- 2複数のマシン語命令が格納されるマシン可読媒体であって、前記のマシン語命令が、コンピューティング・マシンにより実行されたときに、ユーザが電子メール・メッセージを介してターゲット・プリンタでソース・データを印刷するために、 仮想電子メール・アドレスに対応する電子メール・アカウントをホストする電子メール・サーバから、ターゲット・プリンタに対し決められている仮想電子メール・アドレスにアドレスされたソース・データを含む電子メール・メッセージを検索することと、 電子メール・メッセージからソース・データを抽出することと、 ソース・データの印刷元とすることができるプリント・サーバ上で走っている対応するアプリケーションまたはブラウザにソース・データをロードすることと、 対応するアプリケーションまたはブラウザおよびプリント・サーバ上で実行されているオペレーティング・システムの印刷サブシステムを介してソース・データに対応するプリンタ・データを生成することと、 プリント・サーバからプリンタ・データをターゲット・プリンタにサブミットすることとを実行するマシン可読媒体。
- 3電子メール・メッセージを介してターゲット・プリンタ上でソース・データを印刷するシステムであって、 仮想電子メール・アドレスに対応する電子メール・アカウントをホストする電子メール・サーバから、ターゲット・プリンタに対して決められた仮想電子メール・アドレスにアドレスされたソース・データを含む電子メール・メッセージを検索する手段と、 電子メール・メッセージからソース・データを抽出する手段と、 ソース・データの印刷元とすることができるプリント・サーバ上で走っている対応するアプリケーションまたはブラウザにソース・データをロードする手段と、 対応するアプリケーションまたはブラウザ内で印刷アクションを呼び出し、対応するアプリケーションかブラウザと、プリント・サーバ上で走っているオペレーティング・システムの印刷サブシステムとを介してソース・データに対応するプリンタ・データを生成する手段と、 プリント・サーバからプリンタ・データをターゲット・プリンタにサブミットする手段とを備えるシステム。
- 4電子メール・メッセージを介してターゲット・プリンタ上でソース・データを印刷する方法であって、 ターゲット・プリンタの仮想電子メール・アドレスを決めること、 仮想電子メール・アドレスに対応する電子メール・アカウントをホストする電子メール・サーバから、ターゲット・プリンタの仮想電子メール・アドレスにアドレスされたソース・データを含む電子メール・メッセージを検索すること、 電子メール・メッセージからソース・データを抽出すること、 ソース・データがプリンタ・ファイルを含むかどうかを判定し、プリンタ・ファイルを含む場合、 ソース・データをプリンタ・スプーラにサブミットすること、 プリント・スプーラの出力をターゲット・プリンタに送ることを含む方法。
- 5複数のマシン語命令が格納されるマシン可読媒体であって、前記のマシン語命令が、コンピューティング・マシンにより実行されたときに、ユーザが電子メール・メッセージを介してターゲット・プリンタでソース・データを印刷するために、 仮想電子メール・アドレスに対応する電子メール・アカウントをホストする電子メール・サーバから、ターゲット・プリンタに対して決められている仮想電子メール・アドレスにアドレスされたソース・データを含む電子メール・メッセージを検索することと、 電子メール・メッセージからソース・データを抽出することと、 ソース・データがプリンタ・ファイルを含むかどうかを判定し、プリンタ・ファイルを含む場合、 ソース・データをプリンタ・スプーラにサブミットすることと、 プリント・スプーラの出力をターゲット・プリンタに送ることを実行するマシン可読媒体。
- 6電子メール・メッセージを介してターゲット・プリンタ上でソース・データを印刷するシステムであって、 仮想電子メール・アドレスに対応する電子メール・アカウントをホストする電子メール・サーバから、ターゲット・プリンタに対して決められている仮想電子メール・アドレスにアドレスされたソース・データを含む電子メール・メッセージを検索する手段と、 電子メール・メッセージからソース・データを抽出する手段と、 ソース・データがプリンタ・ファイルを含むかどうかを判定する手段と、 ソース・データをプリンタ・スプーラにサブミットする手段と、 プリント・スプーラの出力をターゲット・プリンタに送る手段とを備えるシステム。
Independent claims6
113 paragraphs, as filed
The present invention relates to the printing function of a computer as a whole, and specifically relates to a system and a method used for printing a document or the like with a printer using an e-mail message.
Normally, when printing a document, the printer device driver is loaded on the outgoing device such as a personal computer (PC), laptop computer, personal digital assistant (PDA), or pocket PC before printing. There is a need. The printer device driver provides an abstract interface between the operating system (OS) and a particular printer, and the operating system (and applications running on this OS) has text, graphics, and layout. Allows communication with printers supported by operating systems that use a set of common commands. This allows developers to develop applications without (generally) worrying about the specific behavior of the various printers that can be used with the application. These specific operations are handled in cooperation with the printer device driver by the OS.
In today's mobile business environment, business people are often away from headquarters and can print documents on nearby printers or selected printers near the trading partner to whom the document is sent. is required. In general, printing on a printer requires two things. First, the mobile computing device that contains the document file (or is used to access the document file) needs to be linked to communicate with the destination printer. This can usually be done by connecting to a network to access the printer, or by connecting directly to the printer with a printer cable (eg, serial cable, parallel cable, or USB cable). .. In many cases, neither of these connection solutions may be practical or available. For example, many office printers are designed to connect to a network, and administrators can connect their printers to outgoing mobile computing devices via a printer cable to connect to the network they are using. Do not want to be interrupted. In addition, the network to which the printer is connected may be a private network where the administrator does not allow connections to "external" computers.
<p> The other half of the above issues relate to printer device drivers. As mentioned above, the appropriate printer device driver must be loaded on the mobile computing device in order for the mobile computing device to be able to print through the printer. In general, each unique type of printer requires a specific device driver (even a unique model within a similar group of printer products). These drivers take a long time to load, occupy storage space, and can cause software conflicts with other applications on mobile computing devices. In addition, businessmen may not have access to the required drivers. In some cases, the media you used when you first installed the OS may have the appropriate printer drivers installed, but such media are generally not carried when you leave the office. Printers often include models that were sold after the OS was released, so the only way to load the appropriate drivers is to have the specific device driver that came with the printer. Unless a particular driver can be downloaded over the Internet, businessmen have no way of printing on the destination printer.</p>
<p> The present invention communicates between different outgoing devices running different operating systems over different networks, and the outgoing device is a "driverless" print server without loading the print device driver on the outgoing device. -Provide a system and method that allows documents to be printed through the system. The server system uses a table-driven mechanism to process and handle various printer events generated by various software applications related to the document that the calling device operator wants to print. The output is sent to the selected target printer over various networks. The server system supports not only bidirectional communication between the server and the outgoing device, but also bidirectional communication between the server and the target printer.</p><p> In a typical implementation, a user operating an outgoing device such as a PC, laptop, PDA, pocket PC, or mobile phone would have the source data that the user contained or attached to an email message (eg, a document). A driverless print server (DPS) system by sending an email message to the "virtual" printer email address that corresponds to the "target" printer that you want to use to print the file. To access. The DPS system searches for email sent to one or more virtual printer email addresses corresponding to the printer hosted by the system, processes each email, and processes the source data in it. Print to the printer that corresponds to the virtual printer email address to which the message was sent.</p><p> The task of processing an email includes the task of separating the body and attachment of the email into separate files and the task of submitting a job request for each file. When a job request is processed, the file type of the file is determined and the file is loaded into the appropriate application or browser or sent directly to the printer spooler. The print action is then invoked to work with the print subsystem of the operating system on which the application or browser runs to generate printer data through the application or browser. The printer data is then sent to the target printer for printing.</p>
Many of the aforementioned aspects of the invention and the benefits associated therewith will be easier to understand as they can be better understood by reference to the following detailed description, along with the accompanying drawings.
In the present specification, a user operating an outgoing device documents a document through a "driverless" print server (DPS) system by sending an e-mail message with source data corresponding to the object to be printed. Details the system and method for printing images and web pages. In the following description, a number of specific details are disclosed so that the embodiments of the present invention can be fully understood. However, one of ordinary skill in the art will appreciate that the present invention can be practiced without one or more specific details, or by using other methods, components, and the like. In other examples, well-known structures or behaviors are not detailed or detailed so as not to obscure aspects of various embodiments of the invention.
When referred to as "one embodiment" or "embodiment" throughout the specification, a particular function, structure, or property described in connection with that embodiment is included in at least one embodiment of the invention. Is done. Therefore, the appearance of the phrase "in one embodiment" or "in an embodiment" in various places throughout the specification does not necessarily refer to the same embodiment. In addition, specific functions, structures, or properties can be combined in one or more embodiments in an appropriate manner.
<u style="single">the term</u> The following description discloses an embodiment according to the invention that implements a driverless print service that allows outgoing devices to submit documents to a target printer on both private and public networks. To do. In one disclosed embodiment, the following terms are used:
<u style="single">server</u>: A computer running software that can be accessed over the network.
<u style="single">Web server</u>: A client that sends hypertext markup language (HTML) files, common gateway interface (CGI) data, and data files between a client computer and a server computer using the Hypertext Transmission Protocol (HTTP). A software program running on a computer or server that communicates with the computer.
<u style="single">Web browser</u>: A software application for retrieving and posting resources over the network and for drawing content.
<u style="single">URL (Universal Resource Locator)</u>: HTTP address string for resources on the network. This is usually a web page or document file.
<u style="single">Source data</u>: Source data within this document is any document or medium that can be retrieved and output to the device. Supported input data formats include all types supported by the document processor (eg PDF, PostScript, Microsoft Word), Web URL links, emails, or email attachments. There is no limitation.
<u style="single">Job request</u>: This is a request that the user submits to the system that is processed and sent to the output device.
<u style="single">Job status</u>: This is the status of the job request, which indicates the current progress of the request being processed. This is a mechanism to help users understand the status of job requests and to help system administrators manage them.
<u style="single">Printer</u>: A hardware device that receives an electronic data stream and outputs an image to a medium such as paper (for example, a hard copy output of a document).
<u style="single">Windows printer</u>: In the Microsoft Windows operating system, a "printer" is defined as a name for a combination of printer driver, print processor, language monitor, and port monitor.
<u style="single">Spool file</u>: A printer language file created by the MS Windows printer driver. The contents of this file are sent directly to the printer for printing.
<u style="single">Internet Printing Protocol (IPP)</u>: An HTTP-like protocol for sending spooled files to network-attached printers and getting print job status from network-attached printers.
<u style="single">Line Printer Remote (LPR)</u>: Protocol for submitting spooled files to network-attached printers.
<u style="single">Infrastructure overview</u> An outline of the network infrastructure 10 corresponding to the implementation example of the present invention is shown in FIG. Network infrastructure 10 shows four outgoing devices, including laptop computers 12, 14, PDAs 16, and mobile phones 18. Outgoing devices include PCs, workstations, laptop computers, PDAs, pocket PCs, mobile phones, wireless bidirectional pagers (eg Blackberry devices), the Web. It will be appreciated that it can include any device that can send an email message to an email address, such as a TV appliance. Each outgoing device can access the target printer supported by the driverless print server site through the printer's "virtual" email address. Such target printers shown in Figure 1 include PostScript printers 20, 22, ASCII line printers 24, Hewlett-Packard (HP) laser printers 26, 28, 30, and IBM laser printers 32, 34. , There is a plotter 36. In general, any type of printer or plotter can be used as the target printer. Therefore, the printers and plotters of FIG. 1 are for illustration purposes only and are not intended to limit the types of printers that can be implemented by the present invention.
Each target printer is connected to a driverless print server computer as shown by driverless print server computers 38, 40, 42, 44. A driverless print server computer is a set of DPS software modules 46 (here, a driverless print server) that runs on a computing device such as a PC, workstation, laptop, or computer server. Or with driverless print server software). As described in detail below, the driverless print server software works with the email module 48, so users of outgoing devices can target printers for email messages with optional attachments. By sending to a virtual address in, you can request that the target printer print one or more hard copy output documents associated with the e-mail message and the attachment sent with the message. In general, e-mail messages are enterprise electronically accessed via a LAN or wide area network (WAN), where a driverless print server computer can download the e-mail messages. It can be accessed from an email server such as mail server 50, or the email server is hosted by an Internet Service Provider (ISP) accessed over the Internet, as indicated by ISP Email Server 51. To. Optionally, the email server software can be installed on a driverless print server computer.
Laptop computer 12, driverless print server computer 38, printers 20, 24, 26 are located in normal physical locations such as hotel 54, as indicated by grouping brackets 52. ing. In a typical "hospitality" implementation, a printing service provider such as a hotel, airport, or copy center would allow outgoing devices to send email messages directly to an email server over a local area, such as LAN 56. With a network (LAN), messages are retrieved by a driverless print server and printed by the associated printer on the hospitality site.
As illustrated in Figure 1, regular DPS sites also include office and home sites. If the DSP host computer includes a mobile computer, the DPS site can be located anywhere (or so) as long as it has the appropriate network connection and access to the corresponding email server. E-mail server services are provided by software running on mobile computers).
For wireless devices such as PDAs 16 and mobile phones 18, wireless devices typically provide email support services to wireless service subscribers (users of PDAs 16 and mobile phones 18) Service Provider Data. E-mail messages can be sent and received via the mobile phone network 60 including the center 62. The service provider data center is connected to the Internet 58 and can deliver messages from the service provider data center to the destination email address.
Another detailed description of one embodiment of the software component that implements the invention is shown in FIG. Software components are logically divided into four groups, including setup component 100, email module 48, document processing component 101, and management component 102. Each of these components further includes multiple software applications, scripts, components, and / or modules. Setup component 100 includes a print setup module 103 and an account wizard module 104. Email module 48 includes email account and configuration module 105, email processing component 106, and email trigger common gateway interface (CGI) script 107. Document processing component 100 is DPS It has a CGI script 108, a driverless print server module 46, a port monitor 110, and a status monitor 112. The administrator component 102 includes a system monitor 114, an administrative web page 116, an auto-extension module 118, and an auto-update module 119.
Generally, the management Web server receives the service via the Web server. In one embodiment, the web server comprises a portion of software running on a driverless print server computer, as shown in web server component 120. An option allows the web server to run on another machine linked to a DPS computer in an n-tier configuration, as one of ordinary skill in the art would understand.
In one embodiment, the print settings module 103 includes a Microsoft (MS) Windows application run by a system administrator to change the configuration of a Windows printer used by the system. This application can be used to convert an existing printer, install a new printer, or delete a printer. Converting an existing printer involves installing an existing printer and replacing the operations provided by the MS Windows port monitor with the port monitor 110. The port monitor 110 allows the DPS system to manipulate spooled files and the status monitor 112 to send spooled files to selected target printers.
The print settings module 103 can also be used to install a new printer with the appropriate printer device drivers. For example, an administrator can set up a PostScript printer by using the printer's PostScript Printer Description (PPD) file and installing the Adobe PostScript driver for use with the DPS system. When the administrator provides the PPD, the printer setup module installs the PostScript driver and configures it for use on the DPS system. In other cases, the administrator can provide the appropriate printer device driver software for the new printer.
The print settings module 103 can also be used to delete printers. In such cases, the Windows port monitor can be restored as the system port monitor, or the DPS server support for the selected printer can be completely removed.
Account Wizard Module 104 applies security to a set of Management Control Panel web page files and determines which set of web pages can be accessed by an administrator login. In one embodiment, the system implements three management levels, including a monitor level, a manager level, and a management level. In one embodiment, the Account Wizard creates these three groups as MS Windows user groups. In addition, the Account Wizard creates MS Windows user accounts and puts them in one of the administrative user groups. In one embodiment, Account Wizard Module 104 includes an MS Windows application.
In one embodiment, the operations provided by the email account and printer setup component 105 and the email processing component 106 run on a driverless print server computer, an MS Windows application named MPEmail.exe. Implemented by (MPEmail application 121). MPEmail application 121 includes a Win32 application with a dialog box user interface (UL). Menu items on the main window provide entry points to various dialog boxes for setting up email accounts and configuring email modules. As detailed below, the MPEmail application works by retrieving email from an email account via Post Office Protocol version 3 (POP3). The searched mail is submitted to the driverless print server 46 for printing.
The representation of the main UI 122 of MPEmail application 121 is shown in Figure 3. The main UI 122 provides a menu bar that includes a File pull-down menu 124, an Edit pull-down menu 125, and a Help pull-down menu 126. The UI also includes a status text box 128 that displays the status of the application. Since this UI runs on a driverless print server computer, it can only be accessed by administrators and not by consumer users.
For each target printer to support email printing capabilities, 1) a POP3 accessible email account used as the printer's virtual email address, 2) a driverless print server system. A printer that is configured to print with, 3) A preconfigured MP Email that binds the email address to the target printer must be configured.
In general, the email account may be an email account that supports email access via the POP3 protocol. Those skilled in the art will appreciate that other email protocols can be used as long as the corresponding modifications have been made to email module 48 to support those protocols. Setting up a particular account is outside the scope of the present invention. Target printer settings can be performed using the dialog box provided by the MP Email UI.
To view an existing MPEmail account, edit an existing MPEmail account, or create a new MPEmail account, the administrator activates the Edit pull-down menu 126 and sets the account options (not shown). select. This launches the email account dialog box 130, as shown in FIG. Existing email accounts are displayed in selectable text boxes 132. Activating the Add button 134 will add a new email account. To edit an existing email account, select the desired account in the selectable text box 132 (for example, by clicking the account entry in the list of displayed accounts) and click Activate the Edit button 136. Similarly, to remove an existing email account, select the account and activate the Remove button 138.
Activating the Add button 134 or Edit button 136 launches the Add / Edit dialog box 140, as shown in Figure 5. Enter the MPEmail account name in edit box 142. This account name is used for display in the email account dialog box 130 and is also used as a reference when debugging is activated. Enter the User ID in the edit box 144. The UserID is the account name used during the POP3 login process when MP Email searches for email from an email account.
Enter the password for your email account in edit box 146. Email stored on a given email server is typically accessed by sending the appropriate login credentials. The credentials include the UserID and the corresponding password chosen by the user (in this case, the MPEmail instance) when the email account was first set up.
Specify the input POP3 server in edit box 148. This value includes the DNS (Domain Name System) name of the email server used during the POP3 login process when MPEmail searches for email from an email account. Specify the output SMTP (Simple Mail Transport Protocol) server in the edit box 150. This value includes the DNS name of the email server used by MPEmail to send an email reply to send the status back to the consumer user who submitted the email print request.
The associated port value can be selected via the drop-down control 152. The associated port contains the DNS name or IP address assigned to the target printer. The drop-down list contains the port names of all configured printers for a given installed driverless print server.
The polling frequency value can be entered in edit box 154 or changed with the up and down arrow controls next to the edit box. The polling frequency is specified by the time interval in seconds when trying to search for email via the POP3 protocol. In one embodiment, the minimum acceptable input is 30 seconds and the maximum acceptable input is 3600 seconds.
Select Trigger Check Box 156 to turn on the email trigger method provided by the MPEmail application used to start searching for email. The email trigger method is an alternative to the polling method described above and requires additional configuration for proper operation. The details of the email trigger method are further described below. When the trigger check box 156 is marked for selection, the edit box 154 and the corresponding up and down arrow controls 155 are disabled.
Once the desired value in the Add / Edit dialog box 140 has been entered or selected, the administrator can activate the OK button 158 to save the value. Optionally, the administrator can activate the Cancel button 154 to cancel the Add or Edit operation.
To log email printing activity, activate the optional logging feature provided by the MPEmail application. The application keeps a log file for each account when logging is enabled. To enable logging, as an administrator, activate the Edit pull-down menu 126 and select the Options menu option. This launches an Options dialog box (not shown) that includes an Enable logging check box. Logging is enabled for all accounts when the Enable Logging check box is selected.
The log file is created in the same directory where the MPEmail application is installed. The file name is prefixed with MPEmail_, followed by the MPEmail account name, and .log. For example, if the account name is CopyRoom@MyCompany.com, the log file for that account will be named MPEmail_CopyRoom@MyCompany.com.log. In one embodiment, the log file creates an entry for the failure that appears to have occurred and an entry for a successful search of the email.
If the "Send reply" feature is enabled, the MPEmail application sends an email reply back to the email printing service user. This can be enabled by selecting the Send reply check box in the Options dialog box. In one embodiment, selecting the "Send reply" check box enables the "Send reply" feature for all accounts.
The email server can implement an event trigger that notifies the email module 48 when an email arrives at the email server. When new mail arrives at the e-mail server (for example, on the enterprise e-mail server 50 or ISP e-mail server 51), the e-mail server is stored on the driverless print server computer. Invoke email trigger CGI script 107. Upon successful CGI call, the MPEmail application immediately retrieves the email from the email server.
A trigger script call is a TCP / IP connection between any port on the email server and port 80 on the driverless print server computer. Data is sent using the POST method over the HTTP / 1.1 protocol, as specified in the World Wide Web Consortium (W3C) Request For Comments (RFC) 2068 protocol. The POST is sent to the location of the email trigger script (eg cgi-bin / trigger.cgi) and the data content contains named value pairs as described in Table 1 below. .. The email trigger CGI script checks the POST data and returns the text string status in the data section reply. Possible return strings are shown in Table 1.
<tables num="1"><img file="JP2005521166A_D0001.tif" /></tables>
The data sent by HTTP POST is in name-value pair format in the form AccountName = S. The name-value fields are defined in Table 2 below.
<tables num="2"><img file="JP2005521166A_D0002.tif" /></tables>
The following is an example of a trigger CGI call to the email address printer1@magicprint.net. POST /cgi-bin/trigger.cgi HTTP / 1.1 [CRLF] Content-Type: text / xml [CRLF] Content-Length: 35 [CRLFCRLF] AccountName = printer1@magicprint.net
After searching for the email, the MPEmail application splits the email into multiple document files for submission to the driverless print server. The main content of the email will be the main email content file, and each email file attachment (if any) will be an attachment. If the main email content is both text and HTML, then the HTML content is used.
Email header information is added on top of the main email content before the document file is created. The main email content file and each attachment are submitted to the driverless print server as separate print jobs. For example, when an email with an attachment containing an MS Word document and an Adobe Acrobat document is emailed to an MPEmail account, three print jobs are queued on the driverless print server. This includes print jobs for the main email content file and print jobs for MS Word and Adobe Acrobat documents respectively.
Moving on to document processing component 101, CGI script 108 provides a management panel web page with advanced features. A detailed description of the CGI script is shown in Figure 6. "Cancel Print Job" Use CGI script 160 to delete the print job request from the system. From the Administration Control Panel Web page, you can call a script for a print job that has been submitted to the system but has not yet sent the spooled file to the printer.
The autoextended configuration CGI script 162 searches the installed application in the server computer, finds the document types that the found application can support, and makes the system execute the print job request for the found file type. Configure. Use System Update CGI Script 164 to compare installed system components with the latest available components, download new components (if applicable), and install them on your system.
The print request CGI script 166 receives the file supplied by the MPEmail application and creates the corresponding print job request to the system. The job queue CGI script 168 reads a queue of print job requests from the system and returns the list to the script's calling web page.
Reset CGI script 170 closes the system application and starts it again. This script is used by system administrators as a last resort to resolve any program errors that may have occurred. Status CGI script 172 displays a management control panel web page that shows the progress of print job requests.
The components implemented by the driverless print server 46 are shown in Figure 7. The driverless print server is a major software component of the system. It has an application that runs on a DPS server computer that accepts job requests, queues them, and directs the process of printing documents, images, or URLs from request to final print. The driverless print server includes File Type Configuration List 174, Browser Print Component 176, Auxiliary Application Print Component 178, Shell Extended Print Component 180, Job Request Server Component 182, Job Processing Component 184, Window Processing Component 186, There is a job status component 188.
File type configuration list 178 is maintained by the driverless print server. For each file type, the configuration list describes the extension and the method used to print that file type. If the auxiliary application printing component 178 provides a printing method, the list includes the path to the application used for printing, the menu commands the application uses to print, and the menus the application uses to close the application. Contains commands.
The browser print component 176 includes one of the three methods used by the driverless print server for printing. In one embodiment, this component uses an application programming interface (API) provided by a Microsoft Internet Explorer (IE) web browser. The component uses the IE API to run the browser within a window on the driverless print server application. Browser printing components are typically used to print images and PDF (Portable Document Format) documents.
If the IE browser instance on the DPS server computer is configured with a browser plug-in for the requested type of document or image file, this method can be used to print the document and image file. .. For example, consider an IE plug-in for Adobe Acrobat . Adobe Acrobat document files have a PDF extension. If the Acrobat plug-in is installed on the server, the IE Navigate Programming Interface allows you to load a PDF file into IE and print the file using the IE Print Programming Interface.
Auxiliary application printing component 178 comprises other methods used by driverless print servers for printing. This component uses file type configuration list 174 to find the application associated with that file extension, loads the file into the application, executes the application's print menu command, and after the print operation is complete, the application. Close. The combination of the file type configuration list and the auxiliary application print method allows the system administrator to install the application on the server machine and edit the file type configuration list to add support for additional document or image types. be able to.
Shell Extended Printing Component 180 provides a third method used by driverless print servers for printing. This component prints using the MS Windows Shell Extensions programming interface. The MS Windows Shell Extensions interface is an operating system feature that allows users to print a document type using commands sent to applications that support that document type. If the application supports the Shell Extension interface, the application loads the document, prints it, and closes it automatically. The combination of the file type configuration list and the shell extended print method allows the system administrator to install the application on the server machine and edit the file type configuration list 174 to add support for additional document or image types. can do.
The job request server component 182 receives the print job request from the print request CGI script 166, queues it, and waits for processing.
Job processing component 184 manages print job requests from job queue insertion until the spool file is sent to the printer. This component reads the queued job request, determines one of the three printing methods to use for printing, submits the document, image, or URL to the determined printing method, and of the print command. Process the run and submit the spooled file to the status monitor for printing. At each stage of the print process, the status is tracked and the status CGI script 172 call that can be executed is available.
Window processing component 186 is used for reliable printing. Many applications display message boxes and / or dialogs during the printing process to provide or collect information from users requesting printing services. To support the automatic processing of print requests, you need a mechanism to respond to message boxes or dialogs that appear in the application used to print the request. This mechanism is provided by the window processing component 186. The driverless print server is monitoring the server for message boxes and dialogs during the printing process. When a new message box or dialog appears, the window processing component reads that information, compares it to a known message or statement, and closes the message box or dialog according to its programmed logic. .. The details of the window processing component will be described below with reference to FIG.
Job status component 188 is provided to keep memory-mapped files for all jobs in each driverless print server queue. By periodically writing job status information to a memory-mapped file, the status CGI script can read the status of the job request.
The port monitor contains standard components within the MS Windows printing subsystem. The port monitor receives spooled data from the printer driver through the print subsystem. Traditional port monitors are tasked with receiving spooled data from the printer driver and delivering it to the printer. In a driverless print server system, the port monitor module 110 (Figure 2) writes the spooled data to a file. When the entire spooled file is written to the file, the port monitor module 110 sends a message to the driverless print server with the name and location of the spooled file.
The status monitor 112 includes an application that runs on the DPS server computer. It performs multiple functions, but is primarily responsible for sending spooled files to the printer. After receiving a message from the port monitor 110 indicating the location of the spool file, the driverless print server sends the location of the spool file, the URL of the printer to which the spool file is sent, and the spool file to the printer. Send a message to the status monitor 112 indicating the protocol information to send. Status monitor 112 queues each requested printer URL. Since the printer can only receive one spooled file at a time, it serializes the sending of the spooled file. The status monitor 112 can create and maintain multiple queues at the same time.
After the spooled file has been successfully sent to the printer, Status Monitor 112 notifies the driverless print server with a message that the job is complete. The job history is updated and the job is removed from the driverless print server queue. The status monitor 112 is configured to send a message to an external system before and after the spool file is sent to the printer. An example of an external system is a hotel billing system that can use this information to list billing on a guest's bill.
Moving on to management component 102, system monitor 114 has an application that monitors all other system components, checks for errors, and waits for a particular request. When a print job request arrives from the print request CGI script 166 and the driverless print server application is not running, the print request CGI script causes the system monitor 114 to start the driverless print server and print. You can request that the job request be executed. System Monitor 114 periodically sends a message to the driverless print server to get the status of the program and print jobs in the queue. If System Monitor detects an error, it clears this problem.
System Monitor 114 can also be used to download and install newer system components. Collect version numbers for all components in the system and send them to the system update website. If the update website replies with information about the availability of new components, it will search for those components and install them on your system. System Monitor accepts update requests from the menu or from the "Update System" CGI script 164.
Administrative (panel) Web page 124 allows administrative users to perform remote configuration and monitoring of the system. Security features are used to prevent consumer users from accessing these web pages. An example of Administration Panel Web Page 190 is shown in Figure 8. The management panel web page 190 includes a "print job" tab 192, a "about" tab 194, a "file types" tab 196, a "consumer contact" tab 198, a "printer management" tab 200, and a "configuration" tab 202. It has multiple top-level tabs and navigates to the management web page that corresponds to these tabs.
When "print jobs" tab 192 is activated, the lower tabs are drawn as shown in Figure 8. These include the "view print queue" tab 204, the "list by date" tab 206, the "list by owner" tab 208, the "list by printer" tab 210, the "all jobs" tab 212, and the "advanced search" tab 214. is there. As shown in Figure 8, activating the view print queue tab 204 allows the administrator to view the pending print jobs for the printer selected by pull-down control 216. The pending print jobs are displayed in text box 218, and the number of jobs in the queue is displayed in text box 220. Activating the "more info" button 222 allows the administrator to see the details of the selected print job.
When you activate the list by date tab 206, the list by owner tab 208, the list by printer tab 210, and the all jobs tab 212, the administrator can print jobs related to the particular tab selected. History can be displayed. For example, "list by When date tab 206 is activated, the administrator can perform all of the specified driverless print servers for the selected date range, as shown on admin panel web page 224 shown in Figure 9. Print jobs can be displayed. The administrator then enters the start and end date values via edit boxes 226, 228 to activate the "go" button 230 and request records for all print jobs within the searched date range. To do. The number of results per page can be selected using the pull-down control 232, and navigation between records is enabled by a set of navigation controls 234. Each record contains information about the start time, owner, document name, print status, end time, number of pages printed, total price, owner address, and printer address.
When the list by owner tab 208 is activated, the administrator can view information about all jobs submitted to a particular owner, as shown on admin panel web page 236 in Figure 10. it can. Generally, the owner may be the reply-to email address that corresponds to the personal email account that the consumer user used to send the email print request. If necessary, implement a table that maps email addresses to real people or businesses so that you can access owner information simply by entering the name of the person or company instead of the email address. .. Owner information is placed in edit box 238. The administrator then activates the "go" button 240 to search for records corresponding to its owner. As mentioned above, the number of results per page can be selected by the corresponding control (not shown), and navigation between records is enabled by navigation control set 242. To.
Activating the list by printer tab 210 allows the administrator to view all completed jobs for the selected printer, as shown on page 244 of the Administration Panel in Figure 11. The pull-down control 246 selects the ID of the printer for which print job history is required, and then the corresponding record is searched for in response when the "go" button 248 is activated. The number of results per page can be selected using the pull-down control 250, and navigation between records is enabled by navigation control set 252.
When "all jobs" tab 212 is activated, administrators can view information related to all jobs printed through a particular driverless printer server, as shown on Administration Panel Web page 254 in Figure 12. Can be displayed. As mentioned above, the number of results per page can be selected by the corresponding control (not shown), and navigation between records is enabled by a set of navigation controls 294. Will be done.
"Advanced When the search tab 252 is activated, administrators can view information related to print jobs that are selected based on various input values, as shown on admin panel web page 258 in Figure 13. it can. The search date range is entered using the start date edit box 260 and the end date edit box 262. You can use the pull-down control 264 to select one or more printers. The printer owner can be specified in block 266. If no owner is specified, the search will be performed for all owners. Site identification can be selected using pull-down control 268. You can use the pull-down control 270 to select the number of results per page. The pull-down control 272 is provided so that the administrator can define the columns to be sorted. A pair of radio buttons 274 allows the sort order to be defined as either ascending or descending. After entering and selecting the desired value, the administrator can start the search with the "go" button 276. Activate the PREVIOUS button 278 to search the previous search parameter set, or activate the RESET button 280 to reset the values for various search parameters to their default values.
"File By activating the types tab 234, the administrator can select the file types of document and image files that can be printed by the driverless print server, as shown on web page 282 in Figure 14. Can be viewed and / or edited. Navigation of various file type records is performed by edit control set 284 and edit control set 286. You can use the pull-down control 288 to select the number of records per page. If you want to edit a value for a particular file type, the administrator can edit the value in the value column by activating the "edit" button 290 on that row. These columns include the Extension, Application, and Enabled, Method, ToLaunch, ToPrint, ToClose, and Static columns. Enter the file type extension in the Extension column. Enter the name of the corresponding application or application type (for example, "Imaging") in the Application column. Enter the file path to launch the application in the To Launch column. Internal commands to print from the application and close the application can be entered in the To Print and To Close columns, respectively. The file type mapping information corresponding to the specified row can be deleted by selecting the appropriate check box in the delete column and activating the "delete" button 292.
By activating the "configuration" tab 202, the administrator can update the driverless print server installation and configure its operation. As shown in Figure 15, when the "configuration" tab is activated, a web page 294 with three additional tabs, including the "update" tab 296, the "extensions" tab 298, and the "job accounting server" tab 300. Is loaded. Activating the "extensions" tab 298 launches the "Extensions" web page, which corresponds to web page 294.
When you submit a file for printing, the driverless print server opens the application that corresponds to the file type of the file. For example, if the file has a .doc extension, it will typically open an MS Word application. The application then opens the file and uses the built-in print command to send the submitted file to the selected printer. On the extensions web page (that is, web page 294), the row (entry) that displays the list of file type information (in the Extensions column) and the Application The software application corresponding to the file type (in the Name column) is displayed. Also, each entry contains the extension priority level (which defines the order in which file types with the same extension are evaluated to determine the appropriate application for the submitted file), and the OS registry information about the application. It displays the registry location that identifies the storage location, the application's default path, the application's executable name, and the internal code to print the application and close it. The administrator can activate the "add new entry" button 302 to add a new file type and draw the web page with the corresponding edit control in each column of web page 294 (not shown). "Update file A similar web page is drawn in response to activating the types button 304, and only in this case is the edit control filled with values related to the selected file type to be updated. File type updates can also be started by activating the "edit" button 306. As mentioned above, navigation between records is enabled by a set of navigation controls 308.
The driverless print server uses an extension table that corresponds to the file type value and is installed on the server computer that is used to print the files for each file type listed in the extension table. Determine which application you are using. In addition, the information contained in this table is used to determine the location of executable files on the server computer. In one embodiment, an extension table and various other configurations and print job data are kept in the database. Databases are usually hosted on the same machine that hosts the DPS software, but one of ordinary skill in the art will understand that another machine can be used to host the database.
<u style="single">Processing print requests</u> A data flow diagram illustrating the data flow and operation performed by the e-mail module and DPS system software components in response to an e-mail print request is shown in Figure 16. First, the user of the outgoing device 320 sends an email message 322 to the virtual printer email address corresponding to the email address account hosted by the email server 324. Generally, an e-mail message is sent from an outgoing device to an e-mail server over a computer network 326 such as LAN, WAN, or the Internet. As mentioned above, the email server is provided by an ISP, is an enterprise email server, or is enabled by email server software running on a driverless print server computer 328. can do. Both ISPs and enterprise email servers generally support multiple email accounts, with the email server storing zero or more messages per account. These messages are shown as email message 330 and include email message 322.
As mentioned above, all of the software components shown in Figure 2 are running on a driverless print server that includes email module 48 and document processing component 101, the former including the MPEmail application and the latter. Includes driverless print server software 46. Based on the email notification method selected in the Add / Edit dialog box 140, email module 48 polls email server 324 to address the virtual printer of target printer 334 as described above. Adopt a polling method 332 to check if the corresponding message has been received. Optionally, if trigger check box 156 is selected, email server 324 will be driverless with the appropriate calling mechanism when an email destined for the virtual printer email address is received. Call the email trigger CGI script 106 stored on the print server computer 328. The email trigger CGI script is then executed as described above.
In general, a driverless print server installation or "site" provides support for one or more printers. As shown in FIG. 16, the DPS site corresponding to the embodiment of the present invention includes a PostScript printer 336, an HP laser printer 338, a plotter 340, and a target printer 334. A separate set of configuration parameters is set for each printer and stored in the DPS database 342. Depending on the site where multiple printers are available, it may be necessary to configure the polling method 332 and / or the email trigger CGI script invocation mechanism to support multiple printers. For example, in one embodiment, polling method 332 can check the email corresponding to the virtual printer email address for each of the printers at the DPS site. In other embodiments, the polling method can be called separately for each printer. Similarly, the email trigger invocation mechanism is on the email server so that the email trigger CGI script 107 is invoked whenever an email is received by an email account that corresponds to one of the printers at the DPS site. Can be set with.
If it is determined that an email corresponding to one of the virtual printer email addresses has been received, the email is searched from the email server. This usually involves logging in to the email server using the appropriate login method (eg, provide the POP3 host address, UserID and password for POP3). The method of this logic is shown as login method 344 in FIG.
Upon receipt of the email, each email message is processed individually by the MPEmail application 121. As mentioned above, the content of the email is split into separate main emails and attachments, and the print request CGI script 166 is called to generate the print job request 346. In one embodiment, the print job request includes a document named Tmpdoc.dpsn (where n represents a number) that is sent to job queue 348 via the print request CGI script. In one embodiment, the job queue includes a first-in first-out (FIFO) type job queue. Other types of job queues can optionally be used, but those skilled in the art will understand this. As mentioned above, the job queue operation is performed by job processing component 184.
The job queue submits the job request and the job request is processed by the system. Each request is processed in block 350, where the tmpdoc.dpsn file is parsed and the print job parameters corresponding to the print request stored in the document file 352 are searched. For example, the analyzed information includes printer selection, number of copies, consumer user ID, document name, and so on. Some of the print job parameters are stored in the DPS database 342.
In decision block 354, what kind of file corresponds to the current print job, for example, whether it is a text file, an application file, an image file, or a printer file. It is judged. If the document pertains to a browseable document, image, PDF file, or other type of object that can be drawn on the browser, the logic flow goes to block 356, where the driverless print server The image or PDF document is loaded through the browser. Otherwise, the logic flow goes into block 358, where the document and the appropriate auxiliary application that can be used to print the document are loaded. For example, if the document contains an MS Excel spreadsheet, an instance of the MS Excel application will be loaded with the Excel document.
At block 360, an internal command is generated that calls a print operation that causes the browser or auxiliary application to print the source data. For example, most applications have a File Print menu option that initiates the application's printing process. In this case, the DPS software raises an event that corresponds to the print command, which is handled by the application as if the user had selected the File> Print menu option. Optionally, as mentioned above, the DPS software can use the Shell Extended Print Component 180 to make appropriate operating system API calls to invoke print operations that cause the source data to be printed.
Various print and document information is internally passed to the operating system component that handles the printer operation in response to the print request of the internal application or browser. As mentioned above, in one embodiment, the driverless print server operates in an MS Windows® OS environment. Therefore, this environment is a graphical device that interacts with the printer device driver 364 that corresponds to the target printer that produces the appropriate printer (that is, output device) data that is sent to the target printer to produce the output document. It has an OS printing subsystem 361 that includes an interface (GDI) component 362. The printer data is processed internally by the MS Windows print spooler component 366, which outputs a print spool file containing the printer data received by the port monitor 110.
The example shown in the figure assumes that the target printer 334 contains a PostScript printer. The Windows print spooler then sends the printer data, including the PostScript file 368, to the port monitor 110, then launches the status monitor 112 and submits the PostScript file to the status monitor. The status monitor 112 then submits the PostScript file 368 to the target printer 334. Along with this event, the job history information in the DPS database 342 is updated.
In one embodiment, the driverless print server supports direct printing of printer files. For example, if the print job file contains a printer file, it can be printed directly if it corresponds to the printer file type of the target printer. For example, you can print a PostScript file to a PostScript printer. Similarly, printer files for other types of printers may have already been created by selecting the "save to file" option during the printing process. If decision block 354 determines that the file is a printer file, this logic proceeds to block 357, where the printer file (indicated by printer file 359) is sent directly to the Windows print spooler 366. Will be done.
As mentioned above, the system can be configured to automatically send a reply message back to the email account that sent the original email print request. Therefore, decision block 369 determines if the reply option is selected, and if so, an email reply message 370 containing the status of the print request is generated and submits the email message 322. Sent to the user's email account address. In one embodiment, the MPEmail application 121 calls the status CGI script 172 to find the status of the print job corresponding to the print request, append that status to the email reply message, and the original email print request message ( For example, it parses the header of an email message 322) to extract the sender's email address and sends an email reply message to that address.
The details of the internal operation of the driverless print server software 46 are shown in FIG. As mentioned above, email 322 is retrieved and processed by email module 48, which calls print request CGI script 166 for each main email or attachment. In response, the print request CGI script 166 creates a print job document (ie, tmpdoc.dpsn document 346) for each file. The print request CGI script also pipes a message containing the print request to the new job pipe server 371 and stores the message in message queue 372. For each print request message, Message Queuing Handler 374 spawns a corresponding thread that parses the corresponding print job document, creates a document file 352, and submits the print job to job queue 348.
The following behavior and logic displayed between the ends of these loops is per print job, as shown in "Start Job Queue Loop" block 376 and "End Job Queue Loop" block 377. Is executed. First, in block 378, the next job is searched for in job queue 348. Decision block 380 determines what kind of file type printing method should be used. If the file requires an auxiliary application (eg MS Word, MS Excel, AutoCad, etc.), the logic goes to block 366, where the document and the appropriate auxiliary application are loaded, as described above. When the file is loaded into the auxiliary application, a file print command is generated internally in block 360, submitting the file and letting the OS print it, as described above.
Then, in decision block 382, it is determined whether the "Completed" message arrived from the port monitor 110. This determination is performed periodically or by the software interrupt mechanism until a "Completed" message is received. The status monitor 112 is then activated in block 384, the print document 368 is sent to the target printer 334, and the job history data in the DPS database 342 is updated as described above.
Going back to decision block 380, if the document type is a file type that can be printed directly by the driverless print server computer without an auxiliary application (for example, a PDF document or various types of image files), the logic is block 356. Proceed to, where the DPS computer browser loads the image or document and draws the corresponding image or document. Once drawn, the rest of the print operations are performed as described above, starting at block 360. As mentioned above, if the document type is a printer file, the document will be sent directly to the Windows Print Spooler 366.
Figure 18 shows a flow diagram illustrating the logic and behavior performed by the window processing component 224. As shown in the start block 450 of FIG. 16, the window processing thread is launched at the beginning of decision block 354 and immediately after the print action is called on block 360. As mentioned above, the windowing component can be launched when the application is loaded, when the document is loaded into the application, when a print action is initiated, during the printing process, and so on. Used to process.
Returning to the flow diagram of FIG. 18, the window processing thread determines if there are still desktop windows that must be examined in block 452 after startup. Such windows generally include a dialog box and a message box. If there are no more windows to look at, the thread terminates, as shown in "End Thread" block 454. If there is still a window to look at, the logic goes to block 456 to get the window information for the window. On the MS Windows operating system, window information can be obtained by making the appropriate Windows API calls.
The decision block 458 then determines if the window is a child window of the drawing application (that is, whether it was generated by an auxiliary application or browser). If the decision is "no", the window does not respond to the drawing application and the logic proceeds to decision block 452 to evaluate the next window. If the answer to decision block 458 is "TRUE", the logic goes to block 460, where the window text and control buttons are examined.
Determined by decision block 462, if the text matches the standard message string, the logic goes to block 464, where the "close window" command is given internally and the user "closes the window" on the window. Emulates the behavior of activating the Close button or the Close Window icon within the frame of a window. The logic then returns to decision block 452 and processes the next window.
If the text does not match the standard message string, the answer to decision block 462 is "No" (FALSE) and the logic goes to decision block 466, where the text is stored in windowing table 470 in DPS database 386. It is determined whether it matches the MessageText value of the corresponding entry list. If there is a matching value, the logic goes to block 468, where the table command searches for the data in the row of matching MessageText values and issues the corresponding message to the Windows API based on the parameters given by the data. Will be executed. For example, line 472 of a regular entry list is shown at the top of Figure 18. This line contains the MessagelD, Wparam, and Lparam values for Windows Information related to API is stored. These parameters are used to call the corresponding API to perform the desired action of processing the window. When the table command is executed, or if the answer to decision block 466 is "No" (FALSE), the logic returns to decision block 452 and begins processing the next window.
The above description and accompanying drawings have disclosed embodiments of the invention that implement the software operations provided by the MS Windows operating system components. This is meant to be limiting as the principles and teachings of the present invention are applicable to implementations in which other operating systems are used, such as UNIX®-based operating systems and LINUX-based operating systems. do not do. For example, various UNIX® and LINUX operating systems are graphical user interfaces and application APIs supported by OS kernel components that achieve similar behavior to the MS Windows print support components described above. , Equipped with printing function.
<u style="single">File server computer system example</u> With reference to FIG. 19, a conventional computer server 500 is generally illustrated, but it is suitable for use in connection with the practice of the present invention, and an independent computer operates the Web server. Can be used on the DPS server computer or web server computer used to run. Examples of computer systems that may be suitable for these purposes include computer servers running Microsoft Windows, UNIX®-based, and LINUX-based operating systems.
Computer server 500 is generally equipped with suitable integrated circuits, including one or more processors 504 and memory (eg DIMM or SIMM) 506, as one of ordinary skill in the art will be familiar with. It has a chassis 502 to which the existing motherboard (not shown) is mounted. The monitor 508 displays the graphics and text generated by the software programs and program modules executed by the computer server. The mouse 510 (or other pointing device) is connected to the serial port (or bus port or USB port) on the back of the chassis 502. The signal from the mouse 510 is transmitted to the motherboard, which controls the cursor on the display by software programs and modules running on the computer, selecting the text, menu options, and graphic components displayed on the monitor 508. To. In addition, the keyboard 512 is coupled to the motherboard to allow the user to enter text and commands that affect the execution of software programs running on the computer. The computer server 500 also incorporates a network interface card (NIC) 514 or equivalent circuit within the motherboard that allows the server to send and receive data over network 516.
The storage of the file system corresponding to the present invention is accessed by a plurality of hard disks 518 housed inside the chassis 502 and / or via a SCSI card 522 or an equivalent SCSI circuit built into the motherboard. Can be implemented by multiple hard disks housed within an external disk array 520. Optionally, the disk array 520 can be accessed using Fiber Channel links using a suitable Fiber Channel interface card (not shown) or embedded circuitry.
The computer server 500 typically includes a compact disk read-only memory (CD-ROM) drive 524. By inserting a CD-ROM into this drive, executable files and data on disk can be read and transferred to storage on memory 506 and / or hard disk 518. Similarly, a floppy® drive 526 can be provided for such a purpose. Other mass memory storage devices such as optical recording media or DVD drives can also be provided. Machine language instructions, including software programs, components, and modules that cause processor 204 to perform the operations of the invention described above, are typically floppy (registered trademark) disk 528 or CD-ROM 530 (or other memory medium). Distribute in or store on one or more hard disks 518 and load into memory 506 when executed by processor 504. Optionally, machine instruction can be loaded as a carrier file over network 516.
Although the present invention has been described in relation to preferred embodiments of the present invention and examples of modifications thereof, it is understandable to those skilled in the art that many other modifications can be made to the present invention within the scope of the claims. Will. Therefore, the scope of the present invention is by no means limited by the above description, and shall be determined as a whole by referring to the scope of claims.
<figref num="1">Users of various outgoing devices are sent by a "driverless" print server (DPS) system to a virtual printer email address, retrieved, and processed at the selected target printer via email messages. It is a schematic diagram of an example of an infrastructure according to one embodiment of the present invention that makes it possible to print a document.</figref><figref num="2">It is a schematic block diagram which shows various software components used to realize the operation provided with the DPS system by one Embodiment of this invention.</figref><figref num="3">FIG. 5 represents the main user interface corresponding to the MPEmail application used by the DPS system to configure the system and process email messages sent to the virtual printer email address.</figref><figref num="4">FIG. 5 represents a diagram representing an "E-MAIL Accounts" dialog box that allows you to configure an e-mail account for a virtual printer e-mail address.</figref><figref num="5">An Add / Edit dialog box that allows the administrator to configure various parameters for the target printer, and a print that is drawn through the browser on the outgoing device and has already been submitted by the user through the DPS system. It is a figure which represents the Web page which can display the status information related to a request.</figref><figref num="6">It is a schematic block diagram illustrating various CGI scripts used by the DPS system to enable interaction with consumer and administrator users.</figref><figref num="7">FIG. 6 is a schematic block diagram illustrating various software components corresponding to driverless print server software according to an embodiment of the present invention.</figref><figref num="8">FIG. 6 represents a web page that is rendered through a browser on a DPS server or a client device used by an administrator user and allows an administrator to view print queue information for a given DPS site.</figref><figref num="9">A diagram representing a web page that is rendered through a browser on a DPS server or a client device used by an administrator user and allows the administrator to view completed print jobs for a selected date range for a given DPS site. Is.</figref><figref num="10">Represents a web page that allows an administrator to view completed print jobs for a given owner for a given DPS site, rendered through a browser on a DPS server or a client device used by an administrator user. It is a figure.</figref><figref num="11">A diagram representing a web page that allows an administrator to view completed print jobs for a selected printer for a given DPS site, rendered through a browser on a DPS server or a client device used by an administrator user. Is.</figref><figref num="12">FIG. 6 represents a web page that allows an administrator to view all completed print jobs for a given DPS site, rendered through a browser on a DPS server or a client device used by an administrator user.</figref><figref num="13">Administrators can view various completed print job information based on selectable search information entered by the administrator, rendered through a browser on the DPS server or a client device used by the administrator user. , A diagram representing a web page.</figref><figref num="14">Administrators view and edit file type information related to document file types supported by a given DPS site, rendered through a browser on the DPS server or a client device used by the administrator user. It is a diagram showing a Web page that can be created.</figref><figref num="15">The administrator provides extensions and corresponding application information related to the document file types supported by a given DPS site, rendered through a browser on the DPS server or a client device used by the administrator user. It is a diagram showing a Web page that can be displayed and edited.</figref><figref num="16">It is a schematic diagram illustrating a typical data flow process corresponding to a print request submitted to a driverless print server via e-mail.</figref><figref num="17">FIG. 5 is a combination of a schematic and a flow diagram illustrating other operations and logics realized by driverless print server software.</figref><figref num="18">It is a flow diagram and a schematic diagram illustrating the operation and logic used by the window processing component to handle various dialog boxes and message boxes that are invoked when processing a print job.</figref><figref num="19">It is a schematic diagram of an example of a computer server to host a driverless print server installation.</figref>
22 sheets
Sheet 1 Sheet 2 Sheet 3 Sheet 4 Sheet 5 Sheet 6 Sheet 7 Sheet 8 Sheet 9 Sheet 10 Sheet 11 Sheet 12 Sheet 13 Sheet 14 Sheet 15 Sheet 16 Sheet 17 Sheet 18 Sheet 19 Sheet 20 Sheet 21 Sheet 22
Every citation, both ways
| Document | Relation | Office | Cited during |
|---|---|---|---|
| JP2025138783A | Cited by | Japan | Search report |
38 members in 8 offices
Priority claims3
| Document | Office | Kind | Date |
|---|---|---|---|
| 10104528 | United States of America | – | |
| 10452802 | United States of America | A | |
| 0214859 | United States of America | W |
Members38
| Document | Office | Kind | |
|---|---|---|---|
| US2002138564A1 | United States of America | A1 | |
| WO02076175A2 | World Intellectual Property Organization (WIPO) | A2 | |
| AU2002247382A1 | Australia | A1 | |
| WO02076175A9 | World Intellectual Property Organization (WIPO) | A9 | |
| WO03019389A1 | World Intellectual Property Organization (WIPO) | A1 | |
| WO03019403A2 | World Intellectual Property Organization (WIPO) | A2 | |
| WO02076175A3 | World Intellectual Property Organization (WIPO) | A3 | |
| US2003078965A1 | United States of America | A1 | |
| US2003079030A1 | United States of America | A1 | |
| US2003182378A1 | United States of America | A1 | |
| WO03081524A1 | World Intellectual Property Organization (WIPO) | A1 | |
| AU2002308678A1 | Australia | A1 | |
| WO03019403A3 | World Intellectual Property Organization (WIPO) | A3 | |
| EP1380194A2 | European Patent Office (EPO) | A2 | |
| KR20040029438A | Republic of Korea | A | |
| KR20040039304A | Republic of Korea | A | |
| TW588245B | Taiwan Province of China | B | |
| EP1428129A1 | European Patent Office (EPO) | A1 | |
| EP1428134A2 | European Patent Office (EPO) | A2 | |
| KR20040058105A | Republic of Korea | A | |
| CN1537298A | China | A | |
| JP2004535618A | Japan | A | |
| EP1490829A1 | European Patent Office (EPO) | A1 | |
| JP2005501341A | Japan | A | |
| CN1575458A | China | A | |
| CN1575460A | China | A | |
| JP2005521166AThis record | Japan | A | |
| JP2005523489A | Japan | A | |
| US6993562B2 | United States of America | B2 | |
| US2006294251A1 | United States of America | A1 | |
| US2007022180A1 | United States of America | A1 | |
| CN1307565C | China | C | |
| US2007168514A1 | United States of America | A1 | |
| JP4202272B2 | Japan | B2 | |
| EP1490829A4 | European Patent Office (EPO) | A4 | |
| US8019829B2 | United States of America | B2 | |
| US8024398B2 | United States of America | B2 | |
| US8065357B2 | United States of America | B2 |
26 legal events, as the office reported them to INPADOC
Over the term
Point at a mark for the eventEvents
| Event | Code | |
|---|---|---|
| Cancellation because of no payment of annual feesLAPS | LAPS | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Receipt of annual feesJAPANESE INTERMEDIATE CODE: R250R250 | R250 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Written notification of registration of transferJAPANESE INTERMEDIATE CODE: R350R350 | R350 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Written request for registration of change of nameJAPANESE INTERMEDIATE CODE: R313533S533 | S533 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Written notification of registration of transferJAPANESE INTERMEDIATE CODE: R350R350 | R350 | |
| Request for change of ownership or part of ownershipJAPANESE INTERMEDIATE CODE: R313113S111 | S111 | |
| Renewal fee payment (event date is renewal date of database)FPAY | FPAY | |
| Certificate of patent or registration of utility modelJAPANESE INTERMEDIATE CODE: R150R150 | R150 | |
| First payment of annual fees (during grant procedure)JAPANESE INTERMEDIATE CODE: A61A61 | A61 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Written decision to grant a patent or to grant a registration (utility model)JAPANESE INTERMEDIATE CODE: A01A01 | A01 | |
| Decision of grant or rejection writtenTRDD | TRDD | |
| Transfer to examiner for re-examination before appeal (zenchi)AppealJAPANESE INTERMEDIATE CODE: A911A911 | A911 | |
| Written amendmentJAPANESE INTERMEDIATE CODE: A523A521 | A521 | |
| Decision of refusalJAPANESE INTERMEDIATE CODE: A02A02 | A02 | |
| Notification of reasons for refusalJAPANESE INTERMEDIATE CODE: A131A131 | A131 | |
| Report on retrievalJAPANESE INTERMEDIATE CODE: A971007A977 | A977 | |
| Written request for application examinationJAPANESE INTERMEDIATE CODE: A621A621 | A621 |
Numbers
- Publication
- 2005521166
- Application
- 2003579168
Titles2
- Japanese
- 電子メールを介して印刷する方法とシステム
- English
- How and system to print via email
Classification
- CPC, 29
- H04N1/00416
- H04N1/00424
- H04N1/00432
- H04N1/00466
- H04N1/00474
- H04N1/00482
- H04N1/32767
- H04W4/12
- H04W8/26
- H04L67/306
- H04L67/04
- H04L67/02
- H04L69/329
- G06F3/1204
- G06F3/1205
- G06F3/1228
- G06F3/1288
- G06F3/1292
- H04L67/10015
- H04L67/59
- H04L67/1001
- H04L67/53
- H04L67/51
- H04L67/564
- H04L67/55
- H04L51/08
- H04L51/10
- H04L51/00
- H04L9/40
- IPC, 7
- G06F3 12
- G06F13 00
- H04L12 28
- H04L12 56
- H04L12 58
- H04L29 06
- H04L29 08
Designated states4
- Regional, 4
- Zimbabwe
- Turkmenistan
- Türkiye
- Togo